@overmap-ai/core 1.0.78-attachment-model-improvements.5 → 1.0.78-attachment-model-improvements.6
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 +107 -110
- package/dist/overmap-core.umd.cjs +1 -1
- package/package.json +1 -1
package/dist/overmap-core.js
CHANGED
|
@@ -2,7 +2,7 @@ var pr = Object.defineProperty;
|
|
|
2
2
|
var mr = (t, s, e) => s in t ? pr(t, s, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[s] = e;
|
|
3
3
|
var h = (t, s, e) => mr(t, typeof s != "symbol" ? s + "" : s, e);
|
|
4
4
|
import "@redux-offline/redux-offline/lib/types";
|
|
5
|
-
import { createAction as gt, createSelector as p, createSlice as I, isAnyOf as
|
|
5
|
+
import { createAction as gt, createSelector as p, createSlice as I, isAnyOf as F, combineReducers as pn, compose as yr } from "@reduxjs/toolkit";
|
|
6
6
|
import tt from "superagent";
|
|
7
7
|
import { v4 as Xe } from "uuid";
|
|
8
8
|
import { useMemo as fr } from "react";
|
|
@@ -112,7 +112,7 @@ function og() {
|
|
|
112
112
|
})
|
|
113
113
|
};
|
|
114
114
|
}
|
|
115
|
-
const pt = "versioning", O = gt("RESET"), D = gt("RESET_PROJECT_STATE"),
|
|
115
|
+
const pt = "versioning", O = gt("RESET"), D = gt("RESET_PROJECT_STATE"), _ = gt("RESET_ORGANIZATION_STATE");
|
|
116
116
|
function ug(t, s) {
|
|
117
117
|
return fr(t, s);
|
|
118
118
|
}
|
|
@@ -376,7 +376,7 @@ const f = (
|
|
|
376
376
|
name: "agents",
|
|
377
377
|
initialState: Qt,
|
|
378
378
|
extraReducers: (t) => t.addMatcher(
|
|
379
|
-
|
|
379
|
+
F(O, D, _),
|
|
380
380
|
(s) => Object.assign(s, Qt)
|
|
381
381
|
),
|
|
382
382
|
reducers: {
|
|
@@ -414,7 +414,7 @@ const f = (
|
|
|
414
414
|
name: "assetAttachments",
|
|
415
415
|
initialState: es,
|
|
416
416
|
extraReducers: (t) => t.addMatcher(
|
|
417
|
-
|
|
417
|
+
F(O, D, _),
|
|
418
418
|
(s) => Object.assign(s, es)
|
|
419
419
|
),
|
|
420
420
|
reducers: {
|
|
@@ -454,7 +454,7 @@ const f = (
|
|
|
454
454
|
name: "assetProcedureTypeAttachments",
|
|
455
455
|
initialState: ts,
|
|
456
456
|
extraReducers: (t) => t.addMatcher(
|
|
457
|
-
|
|
457
|
+
F(O, _),
|
|
458
458
|
(s) => Object.assign(s, ts)
|
|
459
459
|
),
|
|
460
460
|
reducers: {
|
|
@@ -497,7 +497,7 @@ const f = (
|
|
|
497
497
|
name: "assetProcedureTypeFieldsAttachments",
|
|
498
498
|
initialState: ss,
|
|
499
499
|
extraReducers: (t) => t.addMatcher(
|
|
500
|
-
|
|
500
|
+
F(O, _),
|
|
501
501
|
(s) => Object.assign(s, ss)
|
|
502
502
|
),
|
|
503
503
|
reducers: {
|
|
@@ -543,7 +543,7 @@ const f = (
|
|
|
543
543
|
name: "assetProcedureTypeFields",
|
|
544
544
|
initialState: ns,
|
|
545
545
|
extraReducers: (t) => t.addMatcher(
|
|
546
|
-
|
|
546
|
+
F(O, _),
|
|
547
547
|
(s) => Object.assign(s, ns)
|
|
548
548
|
),
|
|
549
549
|
reducers: {
|
|
@@ -594,7 +594,7 @@ const f = (
|
|
|
594
594
|
name: "assetProcedureTypeFieldValuesAttachments",
|
|
595
595
|
initialState: is,
|
|
596
596
|
extraReducers: (t) => t.addMatcher(
|
|
597
|
-
|
|
597
|
+
F(O, D, _),
|
|
598
598
|
(s) => Object.assign(s, is)
|
|
599
599
|
),
|
|
600
600
|
reducers: {
|
|
@@ -643,7 +643,7 @@ const f = (
|
|
|
643
643
|
name: "assetProcedureTypeFieldValues",
|
|
644
644
|
initialState: as,
|
|
645
645
|
extraReducers: (t) => t.addMatcher(
|
|
646
|
-
|
|
646
|
+
F(O, D, _),
|
|
647
647
|
(s) => Object.assign(s, as)
|
|
648
648
|
),
|
|
649
649
|
reducers: {
|
|
@@ -696,7 +696,7 @@ const f = (
|
|
|
696
696
|
name: "assetProcedures",
|
|
697
697
|
initialState: rs,
|
|
698
698
|
extraReducers: (t) => t.addMatcher(
|
|
699
|
-
|
|
699
|
+
F(O, D, _),
|
|
700
700
|
(s) => Object.assign(s, rs)
|
|
701
701
|
),
|
|
702
702
|
reducers: {
|
|
@@ -740,7 +740,7 @@ const f = (
|
|
|
740
740
|
name: "assetProcedureTypes",
|
|
741
741
|
initialState: cs,
|
|
742
742
|
extraReducers: (t) => t.addMatcher(
|
|
743
|
-
|
|
743
|
+
F(O, _),
|
|
744
744
|
(s) => Object.assign(s, cs)
|
|
745
745
|
),
|
|
746
746
|
reducers: {
|
|
@@ -786,7 +786,7 @@ const f = (
|
|
|
786
786
|
name: "assetProcedureStepFieldsAttachments",
|
|
787
787
|
initialState: ds,
|
|
788
788
|
extraReducers: (t) => t.addMatcher(
|
|
789
|
-
|
|
789
|
+
F(O, _),
|
|
790
790
|
(s) => Object.assign(s, ds)
|
|
791
791
|
),
|
|
792
792
|
reducers: {
|
|
@@ -832,7 +832,7 @@ const f = (
|
|
|
832
832
|
name: "assetProcedureStepFields",
|
|
833
833
|
initialState: os,
|
|
834
834
|
extraReducers: (t) => t.addMatcher(
|
|
835
|
-
|
|
835
|
+
F(O, _),
|
|
836
836
|
(s) => Object.assign(s, os)
|
|
837
837
|
),
|
|
838
838
|
reducers: {
|
|
@@ -893,7 +893,7 @@ const f = (
|
|
|
893
893
|
name: "assetProcedureStepFieldValuesAttachments",
|
|
894
894
|
initialState: us,
|
|
895
895
|
extraReducers: (t) => t.addMatcher(
|
|
896
|
-
|
|
896
|
+
F(O, D, _),
|
|
897
897
|
(s) => Object.assign(s, us)
|
|
898
898
|
),
|
|
899
899
|
reducers: {
|
|
@@ -942,7 +942,7 @@ const f = (
|
|
|
942
942
|
name: "assetProcedureStepFieldValues",
|
|
943
943
|
initialState: ls,
|
|
944
944
|
extraReducers: (t) => t.addMatcher(
|
|
945
|
-
|
|
945
|
+
F(O, D, _),
|
|
946
946
|
(s) => Object.assign(s, ls)
|
|
947
947
|
),
|
|
948
948
|
reducers: {
|
|
@@ -998,7 +998,7 @@ const f = (
|
|
|
998
998
|
name: "assetProcedureSteps",
|
|
999
999
|
initialState: hs,
|
|
1000
1000
|
extraReducers: (t) => t.addMatcher(
|
|
1001
|
-
|
|
1001
|
+
F(O, _),
|
|
1002
1002
|
(s) => Object.assign(s, hs)
|
|
1003
1003
|
),
|
|
1004
1004
|
reducers: {
|
|
@@ -1057,7 +1057,7 @@ const f = (
|
|
|
1057
1057
|
name: "assets",
|
|
1058
1058
|
initialState: ps,
|
|
1059
1059
|
extraReducers: (t) => t.addMatcher(
|
|
1060
|
-
|
|
1060
|
+
F(O, D, _),
|
|
1061
1061
|
(s) => Object.assign(s, ps)
|
|
1062
1062
|
),
|
|
1063
1063
|
reducers: {
|
|
@@ -1096,7 +1096,7 @@ const f = (
|
|
|
1096
1096
|
name: "assetStageCompletions",
|
|
1097
1097
|
initialState: ms,
|
|
1098
1098
|
extraReducers: (t) => t.addMatcher(
|
|
1099
|
-
|
|
1099
|
+
F(O, D, _),
|
|
1100
1100
|
(s) => Object.assign(s, ms)
|
|
1101
1101
|
),
|
|
1102
1102
|
reducers: {
|
|
@@ -1139,7 +1139,7 @@ const f = (
|
|
|
1139
1139
|
name: "assetStages",
|
|
1140
1140
|
initialState: ys,
|
|
1141
1141
|
extraReducers: (t) => t.addMatcher(
|
|
1142
|
-
|
|
1142
|
+
F(O, _),
|
|
1143
1143
|
(s) => Object.assign(s, ys)
|
|
1144
1144
|
),
|
|
1145
1145
|
reducers: {
|
|
@@ -1183,7 +1183,7 @@ const f = (
|
|
|
1183
1183
|
name: "assetTypeAttachments",
|
|
1184
1184
|
initialState: fs,
|
|
1185
1185
|
extraReducers: (t) => t.addMatcher(
|
|
1186
|
-
|
|
1186
|
+
F(O, _),
|
|
1187
1187
|
(s) => Object.assign(s, fs)
|
|
1188
1188
|
),
|
|
1189
1189
|
reducers: {
|
|
@@ -1226,7 +1226,7 @@ const f = (
|
|
|
1226
1226
|
name: "assetTypeFieldsAttachments",
|
|
1227
1227
|
initialState: As,
|
|
1228
1228
|
extraReducers: (t) => t.addMatcher(
|
|
1229
|
-
|
|
1229
|
+
F(O, _),
|
|
1230
1230
|
(s) => Object.assign(s, As)
|
|
1231
1231
|
),
|
|
1232
1232
|
reducers: {
|
|
@@ -1272,7 +1272,7 @@ const f = (
|
|
|
1272
1272
|
name: "assetTypeFields",
|
|
1273
1273
|
initialState: Ss,
|
|
1274
1274
|
extraReducers: (t) => t.addMatcher(
|
|
1275
|
-
|
|
1275
|
+
F(O, _),
|
|
1276
1276
|
(s) => Object.assign(s, Ss)
|
|
1277
1277
|
),
|
|
1278
1278
|
reducers: {
|
|
@@ -1311,7 +1311,7 @@ const f = (
|
|
|
1311
1311
|
name: "assetTypeFieldValuesAttachments",
|
|
1312
1312
|
initialState: Ts,
|
|
1313
1313
|
extraReducers: (t) => t.addMatcher(
|
|
1314
|
-
|
|
1314
|
+
F(O, D, _),
|
|
1315
1315
|
(s) => Object.assign(s, Ts)
|
|
1316
1316
|
),
|
|
1317
1317
|
reducers: {
|
|
@@ -1357,7 +1357,7 @@ const f = (
|
|
|
1357
1357
|
name: "assetTypeFieldValues",
|
|
1358
1358
|
initialState: Os,
|
|
1359
1359
|
extraReducers: (t) => t.addMatcher(
|
|
1360
|
-
|
|
1360
|
+
F(O, D, _),
|
|
1361
1361
|
(s) => Object.assign(s, Os)
|
|
1362
1362
|
),
|
|
1363
1363
|
reducers: {
|
|
@@ -1407,7 +1407,7 @@ const f = (
|
|
|
1407
1407
|
name: "assetTypeIdentifiers",
|
|
1408
1408
|
initialState: Is,
|
|
1409
1409
|
extraReducers: (t) => t.addMatcher(
|
|
1410
|
-
|
|
1410
|
+
F(O, _),
|
|
1411
1411
|
(s) => Object.assign(s, Is)
|
|
1412
1412
|
),
|
|
1413
1413
|
reducers: {
|
|
@@ -1450,7 +1450,7 @@ const f = (
|
|
|
1450
1450
|
name: "assetTypeIdentifierValues",
|
|
1451
1451
|
initialState: gs,
|
|
1452
1452
|
extraReducers: (t) => t.addMatcher(
|
|
1453
|
-
|
|
1453
|
+
F(O, D, _),
|
|
1454
1454
|
(s) => Object.assign(s, gs)
|
|
1455
1455
|
),
|
|
1456
1456
|
reducers: {
|
|
@@ -1502,7 +1502,7 @@ const f = (
|
|
|
1502
1502
|
name: "assetTypes",
|
|
1503
1503
|
initialState: bs,
|
|
1504
1504
|
extraReducers: (t) => t.addMatcher(
|
|
1505
|
-
|
|
1505
|
+
F(O, _),
|
|
1506
1506
|
(s) => Object.assign(s, bs)
|
|
1507
1507
|
),
|
|
1508
1508
|
reducers: {
|
|
@@ -1542,7 +1542,7 @@ const f = (
|
|
|
1542
1542
|
name: "assetTypeStatuses",
|
|
1543
1543
|
initialState: Ps,
|
|
1544
1544
|
extraReducers: (t) => t.addMatcher(
|
|
1545
|
-
|
|
1545
|
+
F(O, _),
|
|
1546
1546
|
(s) => Object.assign(s, Ps)
|
|
1547
1547
|
),
|
|
1548
1548
|
reducers: {
|
|
@@ -1637,7 +1637,7 @@ const f = (
|
|
|
1637
1637
|
}, Mi = I({
|
|
1638
1638
|
name: "documents",
|
|
1639
1639
|
initialState: Fs,
|
|
1640
|
-
extraReducers: (t) => t.addMatcher(
|
|
1640
|
+
extraReducers: (t) => t.addMatcher(F(O, _), (s) => {
|
|
1641
1641
|
Object.assign(s, Fs);
|
|
1642
1642
|
}),
|
|
1643
1643
|
reducers: {
|
|
@@ -1687,7 +1687,7 @@ const f = (
|
|
|
1687
1687
|
name: "emailDomains",
|
|
1688
1688
|
initialState: ws,
|
|
1689
1689
|
extraReducers: (t) => t.addMatcher(
|
|
1690
|
-
|
|
1690
|
+
F(O, _),
|
|
1691
1691
|
(s) => Object.assign(s, ws)
|
|
1692
1692
|
),
|
|
1693
1693
|
reducers: {
|
|
@@ -1749,7 +1749,7 @@ const f = (
|
|
|
1749
1749
|
name: "formIdentifiers",
|
|
1750
1750
|
initialState: Es,
|
|
1751
1751
|
extraReducers: (t) => t.addMatcher(
|
|
1752
|
-
|
|
1752
|
+
F(O, _),
|
|
1753
1753
|
(s) => Object.assign(s, Es)
|
|
1754
1754
|
),
|
|
1755
1755
|
reducers: {
|
|
@@ -1789,7 +1789,7 @@ const f = (
|
|
|
1789
1789
|
name: "formIdentifierValues",
|
|
1790
1790
|
initialState: zs,
|
|
1791
1791
|
extraReducers: (t) => t.addMatcher(
|
|
1792
|
-
|
|
1792
|
+
F(O, _),
|
|
1793
1793
|
(s) => Object.assign(s, zs)
|
|
1794
1794
|
),
|
|
1795
1795
|
reducers: {
|
|
@@ -1844,7 +1844,7 @@ const f = (
|
|
|
1844
1844
|
name: "formRevisionAttachments",
|
|
1845
1845
|
initialState: vs,
|
|
1846
1846
|
extraReducers: (t) => t.addMatcher(
|
|
1847
|
-
|
|
1847
|
+
F(O, _),
|
|
1848
1848
|
(s) => Object.assign(s, vs)
|
|
1849
1849
|
),
|
|
1850
1850
|
reducers: {
|
|
@@ -1896,7 +1896,7 @@ const f = (
|
|
|
1896
1896
|
name: "formRevisions",
|
|
1897
1897
|
initialState: Bs,
|
|
1898
1898
|
extraReducers: (t) => t.addMatcher(
|
|
1899
|
-
|
|
1899
|
+
F(O, _),
|
|
1900
1900
|
(s) => Object.assign(s, Bs)
|
|
1901
1901
|
),
|
|
1902
1902
|
reducers: {
|
|
@@ -1941,7 +1941,7 @@ const f = (
|
|
|
1941
1941
|
name: "forms",
|
|
1942
1942
|
initialState: ks,
|
|
1943
1943
|
extraReducers: (t) => t.addMatcher(
|
|
1944
|
-
|
|
1944
|
+
F(O, _),
|
|
1945
1945
|
(s) => Object.assign(s, ks)
|
|
1946
1946
|
),
|
|
1947
1947
|
reducers: {
|
|
@@ -1978,7 +1978,7 @@ const f = (
|
|
|
1978
1978
|
name: "formSubmissionAttachments",
|
|
1979
1979
|
initialState: qs,
|
|
1980
1980
|
extraReducers: (t) => t.addMatcher(
|
|
1981
|
-
|
|
1981
|
+
F(O, _),
|
|
1982
1982
|
(s) => Object.assign(s, qs)
|
|
1983
1983
|
),
|
|
1984
1984
|
reducers: {
|
|
@@ -2035,7 +2035,7 @@ const f = (
|
|
|
2035
2035
|
name: "formSubmissions",
|
|
2036
2036
|
initialState: Vs,
|
|
2037
2037
|
extraReducers: (t) => t.addMatcher(
|
|
2038
|
-
|
|
2038
|
+
F(O, _),
|
|
2039
2039
|
(s) => Object.assign(s, Vs)
|
|
2040
2040
|
),
|
|
2041
2041
|
reducers: {
|
|
@@ -2087,7 +2087,7 @@ const f = (
|
|
|
2087
2087
|
name: "geoImages",
|
|
2088
2088
|
initialState: Ds,
|
|
2089
2089
|
extraReducers: (t) => t.addMatcher(
|
|
2090
|
-
|
|
2090
|
+
F(O, D, _),
|
|
2091
2091
|
(s) => Object.assign(s, Ds)
|
|
2092
2092
|
),
|
|
2093
2093
|
reducers: {
|
|
@@ -2124,7 +2124,7 @@ const f = (
|
|
|
2124
2124
|
name: "issueAssociations",
|
|
2125
2125
|
initialState: js,
|
|
2126
2126
|
extraReducers: (t) => t.addMatcher(
|
|
2127
|
-
|
|
2127
|
+
F(O, D, _),
|
|
2128
2128
|
(s) => Object.assign(s, js)
|
|
2129
2129
|
),
|
|
2130
2130
|
reducers: {
|
|
@@ -2183,7 +2183,7 @@ const f = (
|
|
|
2183
2183
|
name: "issueAttachments",
|
|
2184
2184
|
initialState: $s,
|
|
2185
2185
|
extraReducers: (t) => t.addMatcher(
|
|
2186
|
-
|
|
2186
|
+
F(O, D, _),
|
|
2187
2187
|
(s) => Object.assign(s, $s)
|
|
2188
2188
|
),
|
|
2189
2189
|
reducers: {
|
|
@@ -2226,7 +2226,7 @@ const f = (
|
|
|
2226
2226
|
name: "issueCommentAttachments",
|
|
2227
2227
|
initialState: xs,
|
|
2228
2228
|
extraReducers: (t) => t.addMatcher(
|
|
2229
|
-
|
|
2229
|
+
F(O, D, _),
|
|
2230
2230
|
(s) => Object.assign(s, xs)
|
|
2231
2231
|
),
|
|
2232
2232
|
reducers: {
|
|
@@ -2271,7 +2271,7 @@ const f = (
|
|
|
2271
2271
|
name: "issueComments",
|
|
2272
2272
|
initialState: Cs,
|
|
2273
2273
|
extraReducers: (t) => t.addMatcher(
|
|
2274
|
-
|
|
2274
|
+
F(O, D, _),
|
|
2275
2275
|
(s) => Object.assign(s, Cs)
|
|
2276
2276
|
),
|
|
2277
2277
|
reducers: {
|
|
@@ -2313,7 +2313,7 @@ const f = (
|
|
|
2313
2313
|
name: "issues",
|
|
2314
2314
|
initialState: Us,
|
|
2315
2315
|
extraReducers: (t) => t.addMatcher(
|
|
2316
|
-
|
|
2316
|
+
F(O, D, _),
|
|
2317
2317
|
(s) => Object.assign(s, Us)
|
|
2318
2318
|
),
|
|
2319
2319
|
reducers: {
|
|
@@ -2355,7 +2355,7 @@ const f = (
|
|
|
2355
2355
|
name: "issueTypeAttachments",
|
|
2356
2356
|
initialState: Ls,
|
|
2357
2357
|
extraReducers: (t) => t.addMatcher(
|
|
2358
|
-
|
|
2358
|
+
F(O, _),
|
|
2359
2359
|
(s) => Object.assign(s, Ls)
|
|
2360
2360
|
),
|
|
2361
2361
|
reducers: {
|
|
@@ -2398,7 +2398,7 @@ const f = (
|
|
|
2398
2398
|
name: "issueTypeFieldsAttachments",
|
|
2399
2399
|
initialState: Ns,
|
|
2400
2400
|
extraReducers: (t) => t.addMatcher(
|
|
2401
|
-
|
|
2401
|
+
F(O, _),
|
|
2402
2402
|
(s) => Object.assign(s, Ns)
|
|
2403
2403
|
),
|
|
2404
2404
|
reducers: {
|
|
@@ -2444,7 +2444,7 @@ const f = (
|
|
|
2444
2444
|
name: "issueTypeFieldValues",
|
|
2445
2445
|
initialState: Hs,
|
|
2446
2446
|
extraReducers: (t) => t.addMatcher(
|
|
2447
|
-
|
|
2447
|
+
F(O, D, _),
|
|
2448
2448
|
(s) => Object.assign(s, Hs)
|
|
2449
2449
|
),
|
|
2450
2450
|
reducers: {
|
|
@@ -2484,7 +2484,7 @@ const f = (
|
|
|
2484
2484
|
name: "issueTypeFields",
|
|
2485
2485
|
initialState: Gs,
|
|
2486
2486
|
extraReducers: (t) => t.addMatcher(
|
|
2487
|
-
|
|
2487
|
+
F(O, _),
|
|
2488
2488
|
(s) => Object.assign(s, Gs)
|
|
2489
2489
|
),
|
|
2490
2490
|
reducers: {
|
|
@@ -2533,7 +2533,7 @@ const f = (
|
|
|
2533
2533
|
name: "issueTypeFieldValuesAttachments",
|
|
2534
2534
|
initialState: Ws,
|
|
2535
2535
|
extraReducers: (t) => t.addMatcher(
|
|
2536
|
-
|
|
2536
|
+
F(O, D, _),
|
|
2537
2537
|
(s) => Object.assign(s, Ws)
|
|
2538
2538
|
),
|
|
2539
2539
|
reducers: {
|
|
@@ -2579,7 +2579,7 @@ const f = (
|
|
|
2579
2579
|
name: "issueTypeIdentifiers",
|
|
2580
2580
|
initialState: Ks,
|
|
2581
2581
|
extraReducers: (t) => t.addMatcher(
|
|
2582
|
-
|
|
2582
|
+
F(O, _),
|
|
2583
2583
|
(s) => Object.assign(s, Ks)
|
|
2584
2584
|
),
|
|
2585
2585
|
reducers: {
|
|
@@ -2622,7 +2622,7 @@ const f = (
|
|
|
2622
2622
|
name: "issueTypeIdentifierValues",
|
|
2623
2623
|
initialState: Ys,
|
|
2624
2624
|
extraReducers: (t) => t.addMatcher(
|
|
2625
|
-
|
|
2625
|
+
F(O, D, _),
|
|
2626
2626
|
(s) => Object.assign(s, Ys)
|
|
2627
2627
|
),
|
|
2628
2628
|
reducers: {
|
|
@@ -2674,7 +2674,7 @@ const f = (
|
|
|
2674
2674
|
name: "issueTypes",
|
|
2675
2675
|
initialState: Zs,
|
|
2676
2676
|
extraReducers: (t) => t.addMatcher(
|
|
2677
|
-
|
|
2677
|
+
F(O, _),
|
|
2678
2678
|
(s) => Object.assign(s, Zs)
|
|
2679
2679
|
),
|
|
2680
2680
|
reducers: {
|
|
@@ -2714,7 +2714,7 @@ const f = (
|
|
|
2714
2714
|
name: "issueTypeStatuses",
|
|
2715
2715
|
initialState: Js,
|
|
2716
2716
|
extraReducers: (t) => t.addMatcher(
|
|
2717
|
-
|
|
2717
|
+
F(O, _),
|
|
2718
2718
|
(s) => Object.assign(s, Js)
|
|
2719
2719
|
),
|
|
2720
2720
|
reducers: {
|
|
@@ -2753,7 +2753,7 @@ const f = (
|
|
|
2753
2753
|
name: "issueUpdates",
|
|
2754
2754
|
initialState: Xs,
|
|
2755
2755
|
extraReducers: (t) => t.addMatcher(
|
|
2756
|
-
|
|
2756
|
+
F(O, D, _),
|
|
2757
2757
|
(s) => Object.assign(s, Xs)
|
|
2758
2758
|
),
|
|
2759
2759
|
reducers: {
|
|
@@ -2801,10 +2801,7 @@ const f = (
|
|
|
2801
2801
|
}, $a = I({
|
|
2802
2802
|
name: "users",
|
|
2803
2803
|
initialState: Qs,
|
|
2804
|
-
extraReducers: (t) => t.
|
|
2805
|
-
_(O, M),
|
|
2806
|
-
(s) => Object.assign(s, Qs)
|
|
2807
|
-
),
|
|
2804
|
+
extraReducers: (t) => t.addCase(O, (s) => Object.assign(s, Qs)).addCase(_, (s) => Object.assign(s, { ...s, instances: [] })),
|
|
2808
2805
|
reducers: {
|
|
2809
2806
|
initializeUsers: Ue.initialize,
|
|
2810
2807
|
setUsers: Ue.setMany,
|
|
@@ -2850,7 +2847,7 @@ const f = (
|
|
|
2850
2847
|
name: "organizationAccess",
|
|
2851
2848
|
initialState: en,
|
|
2852
2849
|
extraReducers: (t) => t.addMatcher(
|
|
2853
|
-
|
|
2850
|
+
F(O, _),
|
|
2854
2851
|
(s) => Object.assign(s, en)
|
|
2855
2852
|
),
|
|
2856
2853
|
reducers: {
|
|
@@ -2908,7 +2905,7 @@ const f = (
|
|
|
2908
2905
|
name: "organizations",
|
|
2909
2906
|
initialState: tn,
|
|
2910
2907
|
extraReducers: (t) => t.addMatcher(
|
|
2911
|
-
|
|
2908
|
+
F(O, _),
|
|
2912
2909
|
(s) => Object.assign(s, tn)
|
|
2913
2910
|
),
|
|
2914
2911
|
reducers: {
|
|
@@ -2991,7 +2988,7 @@ const f = (
|
|
|
2991
2988
|
name: "projectAccess",
|
|
2992
2989
|
initialState: nn,
|
|
2993
2990
|
extraReducers: (t) => t.addMatcher(
|
|
2994
|
-
|
|
2991
|
+
F(O, _),
|
|
2995
2992
|
(s) => Object.assign(s, nn)
|
|
2996
2993
|
),
|
|
2997
2994
|
reducers: {
|
|
@@ -3051,7 +3048,7 @@ const f = (
|
|
|
3051
3048
|
name: "projectAttachments",
|
|
3052
3049
|
initialState: an,
|
|
3053
3050
|
extraReducers: (t) => t.addMatcher(
|
|
3054
|
-
|
|
3051
|
+
F(O, _),
|
|
3055
3052
|
(s) => Object.assign(s, an)
|
|
3056
3053
|
),
|
|
3057
3054
|
reducers: {
|
|
@@ -3093,7 +3090,7 @@ const f = (
|
|
|
3093
3090
|
name: "projectFiles",
|
|
3094
3091
|
initialState: rn,
|
|
3095
3092
|
extraReducers: (t) => t.addMatcher(
|
|
3096
|
-
|
|
3093
|
+
F(O, D, _),
|
|
3097
3094
|
(s) => Object.assign(s, rn)
|
|
3098
3095
|
),
|
|
3099
3096
|
reducers: {
|
|
@@ -3128,7 +3125,7 @@ const f = (
|
|
|
3128
3125
|
name: "projects",
|
|
3129
3126
|
initialState: cn,
|
|
3130
3127
|
extraReducers: (t) => t.addMatcher(
|
|
3131
|
-
|
|
3128
|
+
F(O, _),
|
|
3132
3129
|
(s) => Object.assign(s, cn)
|
|
3133
3130
|
),
|
|
3134
3131
|
reducers: {
|
|
@@ -3183,7 +3180,7 @@ const f = (
|
|
|
3183
3180
|
name: "teamMemberships",
|
|
3184
3181
|
initialState: dn,
|
|
3185
3182
|
extraReducers: (t) => t.addMatcher(
|
|
3186
|
-
|
|
3183
|
+
F(O, _),
|
|
3187
3184
|
(s) => Object.assign(s, dn)
|
|
3188
3185
|
),
|
|
3189
3186
|
reducers: {
|
|
@@ -3236,7 +3233,7 @@ const f = (
|
|
|
3236
3233
|
name: "teams",
|
|
3237
3234
|
initialState: on,
|
|
3238
3235
|
extraReducers: (t) => t.addMatcher(
|
|
3239
|
-
|
|
3236
|
+
F(O, _),
|
|
3240
3237
|
(s) => Object.assign(s, on)
|
|
3241
3238
|
),
|
|
3242
3239
|
reducers: {
|
|
@@ -3696,8 +3693,8 @@ class j extends v {
|
|
|
3696
3693
|
const y = m.then(({ instance: b }) => b), T = m.then(async ({ instance: b, presigned_url: E }) => {
|
|
3697
3694
|
try {
|
|
3698
3695
|
return E && await this.client.files.processPresignedUrl(b.file_sha1, E), b.file_sha1;
|
|
3699
|
-
} catch (
|
|
3700
|
-
throw console.error("Upload to s3 using presigned url failed.",
|
|
3696
|
+
} catch (M) {
|
|
3697
|
+
throw console.error("Upload to s3 using presigned url failed.", M), M;
|
|
3701
3698
|
}
|
|
3702
3699
|
});
|
|
3703
3700
|
return [d, y, T];
|
|
@@ -3705,7 +3702,7 @@ class j extends v {
|
|
|
3705
3702
|
async bulkAdd(e, n) {
|
|
3706
3703
|
const { addMany: i, updateMany: a, deleteMany: r } = this.actions, o = (/* @__PURE__ */ new Date()).toISOString(), c = [], d = /* @__PURE__ */ new Set(), u = et(e, Math.min(n ?? e.length, Qe)), m = [];
|
|
3707
3704
|
for (const E of u) {
|
|
3708
|
-
const
|
|
3705
|
+
const M = [], R = {};
|
|
3709
3706
|
for (const q of E) {
|
|
3710
3707
|
let $;
|
|
3711
3708
|
if ("file" in q) {
|
|
@@ -3725,10 +3722,10 @@ class j extends v {
|
|
|
3725
3722
|
const V = this.buildModel($);
|
|
3726
3723
|
c.push(V);
|
|
3727
3724
|
const Je = this.buildPayload(V);
|
|
3728
|
-
|
|
3725
|
+
M.push(Je);
|
|
3729
3726
|
}
|
|
3730
3727
|
const w = {
|
|
3731
|
-
payloads:
|
|
3728
|
+
payloads: M,
|
|
3732
3729
|
submitted_at: o,
|
|
3733
3730
|
files: Object.values(R)
|
|
3734
3731
|
};
|
|
@@ -3736,7 +3733,7 @@ class j extends v {
|
|
|
3736
3733
|
}
|
|
3737
3734
|
this.dispatch(i(c));
|
|
3738
3735
|
const y = m.map((E) => {
|
|
3739
|
-
const { payloads:
|
|
3736
|
+
const { payloads: M } = E, R = M.flatMap((q) => this.getBlockers(q)), w = [].concat(M.map((q) => q.uuid)).concat(M.map((q) => q.file_sha1));
|
|
3740
3737
|
return this.enqueueRequest({
|
|
3741
3738
|
description: S(l.POST, this.name, !0),
|
|
3742
3739
|
method: l.POST,
|
|
@@ -3747,26 +3744,26 @@ class j extends v {
|
|
|
3747
3744
|
});
|
|
3748
3745
|
});
|
|
3749
3746
|
Promise.all(y).then((E) => {
|
|
3750
|
-
const
|
|
3751
|
-
this.dispatch(a(
|
|
3747
|
+
const M = E.flatMap((R) => R.instances);
|
|
3748
|
+
this.dispatch(a(M));
|
|
3752
3749
|
}).catch((E) => {
|
|
3753
|
-
throw this.dispatch(r(c.map((
|
|
3750
|
+
throw this.dispatch(r(c.map((M) => this.getId(M)))), E;
|
|
3754
3751
|
}).finally(() => {
|
|
3755
3752
|
for (const E of d)
|
|
3756
3753
|
URL.revokeObjectURL(E);
|
|
3757
3754
|
});
|
|
3758
|
-
const T = Promise.all(y).then((E) => E.flatMap(({ instances:
|
|
3759
|
-
const
|
|
3755
|
+
const T = Promise.all(y).then((E) => E.flatMap(({ instances: M }) => M)), b = Promise.all(y).then(async (E) => {
|
|
3756
|
+
const M = [];
|
|
3760
3757
|
for (const { presigned_urls: R } of E) {
|
|
3761
3758
|
const w = this.client.files.processPresignedUrls(R);
|
|
3762
3759
|
for (const [q, $] of Object.entries(w))
|
|
3763
3760
|
try {
|
|
3764
|
-
await $,
|
|
3761
|
+
await $, M.push(q);
|
|
3765
3762
|
} catch (V) {
|
|
3766
3763
|
throw console.error("Upload to s3 using presigned url failed.", V), V;
|
|
3767
3764
|
}
|
|
3768
3765
|
}
|
|
3769
|
-
return
|
|
3766
|
+
return M;
|
|
3770
3767
|
});
|
|
3771
3768
|
return [c, T, b];
|
|
3772
3769
|
}
|
|
@@ -4143,9 +4140,9 @@ class mP extends v {
|
|
|
4143
4140
|
bulkAdd(e, n) {
|
|
4144
4141
|
var E;
|
|
4145
4142
|
const { values: i, payloads: a } = e, { addMany: r, setMany: o, deleteMany: c } = this.actions, d = (/* @__PURE__ */ new Date()).toISOString(), u = ((E = this.client.store.getState().userReducer.currentUser) == null ? void 0 : E.id) ?? null, m = [], y = et(a, Math.min(n ?? a.length, Qe)), T = [];
|
|
4146
|
-
for (const
|
|
4143
|
+
for (const M of y) {
|
|
4147
4144
|
const R = [];
|
|
4148
|
-
for (const w of
|
|
4145
|
+
for (const w of M) {
|
|
4149
4146
|
const q = g({
|
|
4150
4147
|
...w,
|
|
4151
4148
|
values: w.values,
|
|
@@ -4169,19 +4166,19 @@ class mP extends v {
|
|
|
4169
4166
|
}
|
|
4170
4167
|
this.dispatch(r(m));
|
|
4171
4168
|
const b = [];
|
|
4172
|
-
for (const
|
|
4173
|
-
const { field_values: R } =
|
|
4169
|
+
for (const M of T) {
|
|
4170
|
+
const { field_values: R } = M, w = R.map(({ asset: B }) => B), q = R.map(({ fields_revision: B }) => B), $ = R.map(({ asset_procedure: B }) => B), V = R.map(({ uuid: B }) => B), Je = this.enqueueRequest({
|
|
4174
4171
|
description: S(l.POST, this.name, !0),
|
|
4175
4172
|
method: l.POST,
|
|
4176
4173
|
url: `${this.url}/bulk/`,
|
|
4177
|
-
payload:
|
|
4174
|
+
payload: M,
|
|
4178
4175
|
blockers: w.concat(q).concat($),
|
|
4179
4176
|
blocks: V
|
|
4180
4177
|
});
|
|
4181
4178
|
b.push(Je);
|
|
4182
4179
|
}
|
|
4183
|
-
return Promise.all(b).then((
|
|
4184
|
-
this.dispatch(o(
|
|
4180
|
+
return Promise.all(b).then((M) => {
|
|
4181
|
+
this.dispatch(o(M.flat()));
|
|
4185
4182
|
}).catch(() => {
|
|
4186
4183
|
this.dispatch(c(k(m)));
|
|
4187
4184
|
}), [m, b];
|
|
@@ -4709,9 +4706,9 @@ class OP extends v {
|
|
|
4709
4706
|
bulkAdd(e, n) {
|
|
4710
4707
|
var E;
|
|
4711
4708
|
const { payloads: i, values: a } = e, { addMany: r, setMany: o, deleteMany: c } = this.actions, d = (/* @__PURE__ */ new Date()).toISOString(), u = ((E = this.client.store.getState().userReducer.currentUser) == null ? void 0 : E.id) ?? null, m = [], y = et(i, Math.min(n ?? i.length, Qe)), T = [];
|
|
4712
|
-
for (const
|
|
4709
|
+
for (const M of y) {
|
|
4713
4710
|
const R = [];
|
|
4714
|
-
for (const w of
|
|
4711
|
+
for (const w of M) {
|
|
4715
4712
|
const q = g({
|
|
4716
4713
|
...w,
|
|
4717
4714
|
values: w.values,
|
|
@@ -4736,19 +4733,19 @@ class OP extends v {
|
|
|
4736
4733
|
}
|
|
4737
4734
|
this.dispatch(r(m));
|
|
4738
4735
|
const b = [];
|
|
4739
|
-
for (const
|
|
4740
|
-
const { field_values: R } =
|
|
4736
|
+
for (const M of T) {
|
|
4737
|
+
const { field_values: R } = M, w = R.map(({ asset: B }) => B), q = R.map(({ fields_revision: B }) => B), $ = R.map(({ asset_procedure: B }) => B), V = R.map(({ uuid: B }) => B), Je = this.enqueueRequest({
|
|
4741
4738
|
description: S(l.POST, this.name, !0),
|
|
4742
4739
|
method: l.POST,
|
|
4743
4740
|
url: `${this.url}/bulk/`,
|
|
4744
|
-
payload:
|
|
4741
|
+
payload: M,
|
|
4745
4742
|
blockers: w.concat(q).concat($),
|
|
4746
4743
|
blocks: V
|
|
4747
4744
|
});
|
|
4748
4745
|
b.push(Je);
|
|
4749
4746
|
}
|
|
4750
|
-
return Promise.all(b).then((
|
|
4751
|
-
this.dispatch(o(
|
|
4747
|
+
return Promise.all(b).then((M) => {
|
|
4748
|
+
this.dispatch(o(M.flat()));
|
|
4752
4749
|
}).catch(() => {
|
|
4753
4750
|
this.dispatch(c(k(m)));
|
|
4754
4751
|
}), [m, b];
|
|
@@ -5012,12 +5009,12 @@ class gP extends v {
|
|
|
5012
5009
|
}), c = [];
|
|
5013
5010
|
let d = null;
|
|
5014
5011
|
for (const u of o) {
|
|
5015
|
-
const { batchId: m, payload: y } = u, T = y.assets.map(({ uuid: w }) => w), b = y.assets.map(({ asset_type: w }) => w), E = y.assets.map(({ project: w }) => w),
|
|
5012
|
+
const { batchId: m, payload: y } = u, T = y.assets.map(({ uuid: w }) => w), b = y.assets.map(({ asset_type: w }) => w), E = y.assets.map(({ project: w }) => w), M = y.assets.map(({ status: w }) => w), R = this.enqueueRequest({
|
|
5016
5013
|
description: S(l.POST, this.name, !0),
|
|
5017
5014
|
method: l.POST,
|
|
5018
5015
|
url: `${this.url}/bulk/`,
|
|
5019
5016
|
payload: y,
|
|
5020
|
-
blockers: (d ? [d] : []).concat(b).concat(E).concat(
|
|
5017
|
+
blockers: (d ? [d] : []).concat(b).concat(E).concat(M),
|
|
5021
5018
|
blocks: [m].concat(T)
|
|
5022
5019
|
});
|
|
5023
5020
|
d = u.batchId, c.push(R);
|
|
@@ -5046,14 +5043,14 @@ class gP extends v {
|
|
|
5046
5043
|
const u = et(e, Math.min(n ?? e.length, Qe)), m = [];
|
|
5047
5044
|
let y = null;
|
|
5048
5045
|
for (const T of u) {
|
|
5049
|
-
const b = Xe(), E = k(T),
|
|
5046
|
+
const b = Xe(), E = k(T), M = T.map(({ status: w }) => w).filter(Boolean), R = this.enqueueRequest({
|
|
5050
5047
|
description: S(l.PATCH, this.name, !0),
|
|
5051
5048
|
method: l.PATCH,
|
|
5052
5049
|
url: `${this.url}/bulk/`,
|
|
5053
5050
|
payload: {
|
|
5054
5051
|
payloads: T
|
|
5055
5052
|
},
|
|
5056
|
-
blockers: (y ? [y] : []).concat(E).concat(
|
|
5053
|
+
blockers: (y ? [y] : []).concat(E).concat(M),
|
|
5057
5054
|
blocks: [b].concat(E)
|
|
5058
5055
|
});
|
|
5059
5056
|
m.push(R), y = b;
|
|
@@ -5594,7 +5591,7 @@ class RP extends v {
|
|
|
5594
5591
|
var b;
|
|
5595
5592
|
const { payloads: i, values: a } = e, { addMany: r, setMany: o, deleteMany: c } = this.actions, d = (/* @__PURE__ */ new Date()).toISOString(), u = [], m = et(i, Math.min(n ?? i.length, Qe)), y = [];
|
|
5596
5593
|
for (const E of m) {
|
|
5597
|
-
const
|
|
5594
|
+
const M = [];
|
|
5598
5595
|
for (const R of E) {
|
|
5599
5596
|
const w = g({
|
|
5600
5597
|
...R,
|
|
@@ -5602,7 +5599,7 @@ class RP extends v {
|
|
|
5602
5599
|
created_by: ((b = this.client.store.getState().userReducer.currentUser) == null ? void 0 : b.id) ?? null,
|
|
5603
5600
|
submitted_at: d
|
|
5604
5601
|
});
|
|
5605
|
-
u.push(w),
|
|
5602
|
+
u.push(w), M.push({
|
|
5606
5603
|
uuid: w.uuid,
|
|
5607
5604
|
asset: R.asset,
|
|
5608
5605
|
fields_revision: R.fields_revision,
|
|
@@ -5613,13 +5610,13 @@ class RP extends v {
|
|
|
5613
5610
|
y.push({
|
|
5614
5611
|
submitted_at: d,
|
|
5615
5612
|
values: a,
|
|
5616
|
-
field_values:
|
|
5613
|
+
field_values: M
|
|
5617
5614
|
});
|
|
5618
5615
|
}
|
|
5619
5616
|
this.dispatch(r(u));
|
|
5620
5617
|
const T = [];
|
|
5621
5618
|
for (const E of y) {
|
|
5622
|
-
const { field_values:
|
|
5619
|
+
const { field_values: M } = E, R = M.map(({ asset: V }) => V), w = M.map(({ fields_revision: V }) => V), q = M.map(({ uuid: V }) => V), $ = this.enqueueRequest({
|
|
5623
5620
|
description: S(l.POST, this.name, !0),
|
|
5624
5621
|
method: l.POST,
|
|
5625
5622
|
url: `${this.url}/bulk/`,
|
|
@@ -7556,14 +7553,14 @@ class JP extends v {
|
|
|
7556
7553
|
const u = et(e, Math.min(n ?? e.length, Qe)), m = [];
|
|
7557
7554
|
let y = null;
|
|
7558
7555
|
for (const T of u) {
|
|
7559
|
-
const b = Xe(), E = k(T),
|
|
7556
|
+
const b = Xe(), E = k(T), M = T.map(({ status: w }) => w).filter(Boolean), R = this.enqueueRequest({
|
|
7560
7557
|
description: S(l.PATCH, this.name, !0),
|
|
7561
7558
|
method: l.PATCH,
|
|
7562
7559
|
url: `${this.url}/bulk/`,
|
|
7563
7560
|
payload: {
|
|
7564
7561
|
payloads: T
|
|
7565
7562
|
},
|
|
7566
|
-
blockers: (y ? [y] : []).concat(E).concat(
|
|
7563
|
+
blockers: (y ? [y] : []).concat(E).concat(M),
|
|
7567
7564
|
blocks: [b].concat(E)
|
|
7568
7565
|
});
|
|
7569
7566
|
m.push(R), y = b;
|
|
@@ -9150,11 +9147,11 @@ async function or(t, s, e, n, i) {
|
|
|
9150
9147
|
...r,
|
|
9151
9148
|
...s
|
|
9152
9149
|
};
|
|
9153
|
-
let
|
|
9150
|
+
let M = s.url;
|
|
9154
9151
|
const R = y ? await e.files.fetchCache(y) : void 0;
|
|
9155
9152
|
if (y && !R)
|
|
9156
9153
|
throw new Error(`Cannot upload file ${y} because it's not cached.`);
|
|
9157
|
-
!T && !
|
|
9154
|
+
!T && !M.startsWith("http") && (!M.startsWith("/") && !M.startsWith("blob:") && (M = "/" + M), M = t + M);
|
|
9158
9155
|
const w = (B) => {
|
|
9159
9156
|
if (y) {
|
|
9160
9157
|
if (!o) throw new Error(`No S3 URL for file ${y}`);
|
|
@@ -9166,21 +9163,21 @@ async function or(t, s, e, n, i) {
|
|
|
9166
9163
|
}
|
|
9167
9164
|
return B.send(c);
|
|
9168
9165
|
}, $ = {
|
|
9169
|
-
[l.GET]: () => E ? tt.get(
|
|
9166
|
+
[l.GET]: () => E ? tt.get(M.toString()).responseType("blob") : tt.get(M.toString()),
|
|
9170
9167
|
[l.POST]: () => {
|
|
9171
|
-
const B = tt.post(
|
|
9168
|
+
const B = tt.post(M.toString());
|
|
9172
9169
|
return w(B);
|
|
9173
9170
|
},
|
|
9174
9171
|
[l.PATCH]: () => {
|
|
9175
|
-
const B = tt.patch(
|
|
9172
|
+
const B = tt.patch(M.toString());
|
|
9176
9173
|
return w(B);
|
|
9177
9174
|
},
|
|
9178
9175
|
[l.PUT]: () => {
|
|
9179
|
-
const B = tt.put(
|
|
9176
|
+
const B = tt.put(M.toString());
|
|
9180
9177
|
return w(B);
|
|
9181
9178
|
},
|
|
9182
9179
|
[l.DELETE]: () => {
|
|
9183
|
-
const B = tt.delete(
|
|
9180
|
+
const B = tt.delete(M.toString());
|
|
9184
9181
|
return w(B);
|
|
9185
9182
|
}
|
|
9186
9183
|
}[u];
|
|
@@ -9604,7 +9601,7 @@ export {
|
|
|
9604
9601
|
h_ as ProjectAttachmentService,
|
|
9605
9602
|
p_ as ProjectFileService,
|
|
9606
9603
|
m_ as ProjectService,
|
|
9607
|
-
|
|
9604
|
+
_ as RESET_ORGANIZATION_STATE,
|
|
9608
9605
|
D as RESET_PROJECT_STATE,
|
|
9609
9606
|
O as RESET_STATE,
|
|
9610
9607
|
$I as RateLimitingMiddleware,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(i,L){typeof exports=="object"&&typeof module<"u"?L(exports,require("@redux-offline/redux-offline/lib/types"),require("@reduxjs/toolkit"),require("superagent"),require("uuid"),require("react"),require("file-saver"),require("fast-tree-builder"),require("ts-tree-lib"),require("@redux-offline/redux-offline"),require("@redux-offline/redux-offline/lib/defaults"),require("localforage"),require("redux-persist-migrate"),require("buffer"),require("@overmap-ai/forms"),require("idb"),require("jwt-decode"),require("dependency-graph"),require("@tiptap/core")):typeof define=="function"&&define.amd?define(["exports","@redux-offline/redux-offline/lib/types","@reduxjs/toolkit","superagent","uuid","react","file-saver","fast-tree-builder","ts-tree-lib","@redux-offline/redux-offline","@redux-offline/redux-offline/lib/defaults","localforage","redux-persist-migrate","buffer","@overmap-ai/forms","idb","jwt-decode","dependency-graph","@tiptap/core"],L):(i=typeof globalThis<"u"?globalThis:i||self,L(i["overmap-core"]={},null,i.toolkit,i.request,i.uuid,i.react,i.fileSaver,i.buildTree,i.tsTreeLib,i.reduxOffline,i.offlineConfig,i.localforage,i.createMigration,null,null,i.idb,i.jwtDecode,i.dependencyGraph))})(this,function(i,L,o,ct,Xe,rO,uO,$n,ft,lO,Cn,oO,hO,Xg,Qg,mO,yO,pO){"use strict";var Zg=Object.defineProperty;var Jg=(i,L,o)=>L in i?Zg(i,L,{enumerable:!0,configurable:!0,writable:!0,value:o}):i[L]=o;var y=(i,L,o)=>Jg(i,typeof L!="symbol"?L+"":L,o);var cO;const Un=Object.freeze([]),Ln=Object.freeze({});var Nn=(t=>(t[t.GUEST=0]="GUEST",t[t.BASIC=2]="BASIC",t[t.ADMIN=4]="ADMIN",t))(Nn||{}),m=(t=>(t.GET="GET",t.POST="POST",t.PATCH="PATCH",t.PUT="PUT",t.DELETE="DELETE",t))(m||{}),Gn=(t=>(t[t.PLANNED=0]="PLANNED",t[t.ACTIVE=1]="ACTIVE",t[t.MAINTENANCE=2]="MAINTENANCE",t[t.INACTIVE=3]="INACTIVE",t[t.RETIRED=4]="RETIRED",t[t.DISPOSED=5]="DISPOSED",t))(Gn||{}),kn=(t=>(t.Issue="issue",t.Asset="asset",t.AssetType="asset_type",t.Project="project",t.Document="document",t))(kn||{}),Nt=(t=>(t[t.LOWEST=0]="LOWEST",t[t.LOW=2]="LOW",t[t.MEDIUM=4]="MEDIUM",t[t.HIGH=6]="HIGH",t[t.HIGHEST=8]="HIGHEST",t))(Nt||{}),$=(t=>(t.STATUS="status",t.PRIORITY="priority",t.DESCRIPTION="description",t.TITLE="title",t.ASSIGNED_TO="assigned_to",t.DUE_DATE="due_date",t))($||{}),Hn=(t=>(t[t.BACKLOG=0]="BACKLOG",t[t.PLANNED=1]="PLANNED",t[t.IN_PROGRESS=2]="IN_PROGRESS",t[t.COMPLETED=3]="COMPLETED",t[t.CANCELLED=4]="CANCELLED",t))(Hn||{});const AO=Nt.MEDIUM,Kn=6e4;function F(t){return{addOne:(h,p)=>{const A=t(p.payload);h.instances[A]=p.payload},addMany:(h,p)=>{for(const A of p.payload){const I=t(A);h.instances[I]=A}},setOne:(h,p)=>{const A=t(p.payload);h.instances[A]=p.payload},setMany:(h,p)=>{for(const A of p.payload){const I=t(A);h.instances[I]=A}},updateOne:(h,p)=>{const A=t(p.payload);h.instances[A]=p.payload},updateMany:(h,p)=>{for(const A of p.payload){const I=t(A);h.instances[I]=A}},deleteOne:(h,p)=>{delete h.instances[p.payload]},deleteMany:(h,p)=>{for(const A of p.payload)delete h.instances[A]},initialize:(h,p)=>{h.instances={};const A=new Set;for(const I of p.payload){const b=t(I);A.add(b),h.instances[b]=I}A.size!==p.payload.length&&console.warn("duplicate ids detected when initializing model instances.")}}}function fO(){return{initializeSelection:(r,u)=>{r.selection=Array.from(new Set(u.payload))},selectOne:(r,u)=>{new Set(r.selection).has(u.payload)||r.selection.push(u.payload)},selectMany:(r,u)=>{const h=new Set(r.selection);for(const p of u.payload)h.has(p)||h.add(p);r.selection=Array.from(h)},unselectOne:(r,u)=>{const h=new Set(r.selection);h.has(u.payload)&&(h.delete(u.payload),r.selection=Array.from(h))},unselectMany:(r,u)=>{const h=new Set(r.selection);for(const p of u.payload)h.has(p)&&h.delete(p);r.selection=Array.from(h)},toggleOne:(r,u)=>{const h=new Set(r.selection);h.has(u.payload)?h.delete(u.payload):h.add(u.payload),r.selection=Array.from(h)},toggleMany:(r,u)=>{const h=new Set(r.selection);for(const p of u.payload)h.has(p)?h.delete(p):h.add(p);r.selection=Array.from(h)},getInitialState:r=>({...r,selection:[]})}}const ot="versioning",O=o.createAction("RESET"),j=o.createAction("RESET_PROJECT_STATE"),g=o.createAction("RESET_ORGANIZATION_STATE");function SO(t,s){return rO.useMemo(t,s)}cO=Symbol.toStringTag;class Gt{constructor(){y(this,cO,"Promise");y(this,"_promise");y(this,"_resolve");y(this,"_reject");y(this,"_state","pending");this._resolve=null,this._reject=null,this._promise=new Promise((s,e)=>{this._resolve=s,this._reject=e})}get state(){return this._state}then(s,e){return this._promise.then(s,e)}catch(s){return this._promise.catch(s)}resolve(s){if(!this._resolve)throw new Error("No resolve callback");this._resolve(s),this._state="fulfilled"}reject(s){if(!this._reject)throw s;this._reject(s),this._state="rejected"}finally(s){throw new Error("`finally` not implemented")}}let kt=!1;["true","1"].includes("".toLowerCase())&&(kt=!0);function TO(t,s){if(t===s)return!0;if(typeof t!=typeof s)return!1;const e=Object.keys(t),n=Object.keys(s),a=e.length;if(a!==n.length)return!1;for(let c=0;c<a;c++){const d=e[c];if(!Object.prototype.hasOwnProperty.call(s,d)||t[d]!==s[d])return!1}return!0}function Ht(t){const s={};return function(){const e=Array.prototype.slice.call(arguments);return e in s?(kt&&console.debug(`Memoization debug: Using memorized return value for ${t.toString()}(`,e,")"),s[e]):(kt&&console.debug(`Memoization debug: Cache miss! Memoizing ${t.toString()}(`,e,")"),s[e]=t.apply(this,e))}}function IO(t,s){if(t.length!==s.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==s[e])return!1;return!0}const S=t=>t.length===0?Un:t,St=t=>Object.keys(t).length===0?Ln:t,Wn=Ht(t=>{if(!t)return"";const s=new Date(t),e=s.getFullYear()===Kt.getFullYear(),n={day:"numeric",month:"short"};return e||(n.year="numeric"),s.toLocaleDateString([],n)}),OO=new Intl.RelativeTimeFormat([],{style:"long",numeric:"auto"}),PO=1e3*86400,Kt=new Date,FO=t=>new Date(t).toDateString()===Kt.toDateString(),gO=Ht((t,s,e)=>{const n=Math.round((new Date(t).getTime()-Kt.getTime())/PO);return n<s||n>e?Wn(t):OO.format(n,"days")});function bO(t){return new Uint8Array(t).reduce((e,n)=>e+n.toString(16).padStart(2,"0"),"")}function Tt(t){return new Promise((s,e)=>{const n=new FileReader;n.onload=()=>{const a=n.result;if(!a){e(new Error("FileReader did not return a valid ArrayBuffer."));return}crypto.subtle.digest("SHA-1",a).then(c=>{const d=bO(c);s(d)})},n.readAsArrayBuffer(t)})}const Wt=(t,s)=>`${t}${s?`.${s}`:""}`;function MO(t,s){return new File([t],s,{type:t.type})}function Yt(t){const s=t.name;return s.includes(".")?s.split(".").pop():""}const Yn=async t=>(await fetch(t)).blob(),Zn=async(t,s)=>{const e=await Yn(t);return new File([e],s,{type:e.type})};function _O(t){const s=new Blob([t]);uO.saveAs(s,t.name)}function Jn(t){return typeof t=="string"&&t.startsWith("blob:")}const Xn={};function RO(t,s,e,...n){const a=Xn[t];let c=!1;a?a[s]||(a[s]=!0,c=!0):(Xn[t]={[s]:!0},c=!0),c&&console[e](...n)}const Qn=["created_at","updated_at","index","revision"];function P(t){return{...t,uuid:Xe.v4()}}function wO(t){const s={};for(const e of t)s[e.uuid]=e;return s}function B(t){return t.map(({uuid:s})=>s)}function It(t,s){return t.localeCompare(s)}function Zt(t,s){return It(t.uuid,s.uuid)}function EO(t,s=void 0,e=255){let n=t.replace(/[^a-z0-9_\-.]/gi,"_").replace(/_{2,}/g,"_");if(!s){const c=t.split(".");c.length>1&&(s=c[c.length-1])}s&&!s.startsWith(".")&&(s="."+s);const a=s?s.length:0;return n.length+a>e&&(n=n.slice(0,e-a)+(s||"")),n}function VO(t){return t.toLowerCase().replace(" ","-")}function vO(t,s=!1){return t.normalize("NFKD").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,s?"_":"-")}function BO(t,s){if(t.length<=s)return t;const e=t.slice(0,s-1);return e.slice(0,e.lastIndexOf(" "))+"…"}const zO=/^.+@.+\..+$/;function E(t){const s={...t};for(const e of[...Qn,"created_by"])e in s&&delete s[e];return s}const xn=t=>{const s=t.toSorted((e,n)=>e.order-n.order);return $n(s,{id:e=>e.uuid,parentId:e=>e.parent,includeEmptyChildrenArray:!0,valueKey:!1})},jO=t=>{const{roots:s}=xn(t);return s.map(e=>new ft.Tree(e))},ea=(t,s)=>{const{nodes:e}=xn(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in asset procedure step tree.`);return new ft.Tree(n)},ta=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,sa=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,ia=t=>$n(t,{id:s=>s.uuid,parentId:s=>s.parent_document,includeEmptyChildrenArray:!0,valueKey:!1}),DO=t=>{const{roots:s}=ia(t);return s.map(e=>new ft.Tree(e))},na=(t,s)=>{const{nodes:e}=ia(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in document tree.`);return new ft.Tree(n)};class qO{constructor(s){y(this,"operations",[]);y(this,"getData");this.getData=s}performOperations(s){let e=s;for(const n of this.operations)e=n(e);return e}filter(s,e){return this.operations.push(n=>n.filter(a=>a[s]===e)),this}exclude(s,e){return this.operations.push(n=>n.filter(a=>a[s]!==e)),this}orderBy(s){return this.operations.push(e=>[...e].sort((n,a)=>n[s]<=a[s]?1:-1)),this}reverse(){return this.operations.push(s=>[...s].reverse()),this}all(){return this.operations.push(s=>s),this}get(s,e){return o.createSelector([this.getData],n=>this.performOperations(n).find(a=>a[s]===e))}count(){return o.createSelector([this.getData],s=>this.performOperations(s).length)}first(){return o.createSelector([this.getData],s=>this.performOperations(s)[0])}last(){return o.createSelector([this.getData],s=>{const e=this.performOperations(s);return e[e.length-1]})}exists(){return o.createSelector([this.getData],s=>this.performOperations(s).length>0)}toSelector(){return o.createSelector([this.getData],s=>S(this.performOperations(s)))}}const f=t=>(...s)=>e=>t(e,...s),G=F(t=>t.uuid),aa={instances:{}},Jt=o.createSlice({name:"agents",initialState:aa,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,aa)),reducers:{initializeConversations:G.initialize,addConversation:G.addOne,addConversations:G.addMany,setConversation:G.setOne,setConversations:G.setMany,updateConversation:G.updateOne,updateConversations:G.updateMany,deleteConversation:G.deleteOne,deleteConversations:G.deleteMany}}),{initializeConversations:ca,addConversation:da,addConversations:$O,setConversation:ra,setConversations:CO,updateConversation:ua,updateConversations:UO,deleteConversation:LO,deleteConversations:NO}=Jt.actions,Xt=t=>t.agentsReducer.instances,GO=o.createSelector([Xt],t=>Object.values(t)),kO=f(o.createSelector([Xt,(t,s)=>s],(t,s)=>t[s])),la=Jt.reducer,k=F(t=>t.uuid),oa={instances:{}},Qt=o.createSlice({name:"assetAttachments",initialState:oa,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,oa)),reducers:{initializeAssetAttachments:k.initialize,addAssetAttachment:k.addOne,addAssetAttachments:k.addMany,setAssetAttachment:k.setOne,setAssetAttachments:k.setMany,updateAssetAttachment:k.updateOne,updateAssetAttachments:k.updateMany,deleteAssetAttachment:k.deleteOne,deleteAssetAttachments:k.deleteMany}}),{initializeAssetAttachments:ha,addAssetAttachment:ma,addAssetAttachments:xt,setAssetAttachment:ya,setAssetAttachments:pa,updateAssetAttachment:Aa,updateAssetAttachments:fa,deleteAssetAttachment:Sa,deleteAssetAttachments:es}=Qt.actions,Ta=t=>t.assetAttachmentReducer.instances,ts=o.createSelector([Ta],t=>Object.values(t)),Ia=t=>s=>s.assetAttachmentReducer.instances[t],Oa=f(o.createSelector([ts,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Pa=f(o.createSelector([ts,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>s===e)))),Fa=Qt.reducer,H=F(({uuid:t})=>t),ga={instances:{}},ss=o.createSlice({name:"assetProcedureTypeAttachments",initialState:ga,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,ga)),reducers:{initializeAssetProcedureTypeAttachments:H.initialize,addAssetProcedureTypeAttachment:H.addOne,addAssetProcedureTypeAttachments:H.addMany,setAssetProcedureTypeAttachment:H.setOne,setAssetProcedureTypeAttachments:H.setMany,updateAssetProcedureTypeAttachment:H.updateOne,updateAssetProcedureTypeAttachments:H.updateMany,deleteAssetProcedureTypeAttachment:H.deleteOne,deleteAssetProcedureTypeAttachments:H.deleteMany}}),{initializeAssetProcedureTypeAttachments:ba,addAssetProcedureTypeAttachment:Ma,addAssetProcedureTypeAttachments:_a,setAssetProcedureTypeAttachment:Ra,setAssetProcedureTypeAttachments:wa,updateAssetProcedureTypeAttachment:Ea,updateAssetProcedureTypeAttachments:Va,deleteAssetProcedureTypeAttachment:va,deleteAssetProcedureTypeAttachments:Ba}=ss.actions,za=ss.reducer,ja=t=>t.assetProcedureTypeAttachmentReducer.instances,is=o.createSelector([ja],t=>Object.values(t)),Da=t=>s=>s.assetProcedureTypeAttachmentReducer.instances[t],qa=f(o.createSelector([is,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),HO=f(o.createSelector([is,(t,s)=>s],(t,s)=>S(t.filter(({asset_procedure_type:e})=>s===e)))),K=F(({uuid:t})=>t),$a={instances:{}},ns=o.createSlice({name:"assetProcedureTypeFieldsAttachments",initialState:$a,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,$a)),reducers:{initializeAssetProcedureTypeFieldsAttachments:K.initialize,addAssetProcedureTypeFieldsAttachment:K.addOne,addAssetProcedureTypeFieldsAttachments:K.addMany,setAssetProcedureTypeFieldsAttachment:K.setOne,setAssetProcedureTypeFieldsAttachments:K.setMany,updateAssetProcedureTypeFieldsAttachment:K.updateOne,updateAssetProcedureTypeFieldsAttachments:K.updateMany,deleteAssetProcedureTypeFieldsAttachment:K.deleteOne,deleteAssetProcedureTypeFieldsAttachments:K.deleteMany}}),{initializeAssetProcedureTypeFieldsAttachments:Ca,addAssetProcedureTypeFieldsAttachment:Ua,addAssetProcedureTypeFieldsAttachments:La,setAssetProcedureTypeFieldsAttachment:Na,setAssetProcedureTypeFieldsAttachments:Ga,updateAssetProcedureTypeFieldsAttachment:ka,updateAssetProcedureTypeFieldsAttachments:Ha,deleteAssetProcedureTypeFieldsAttachment:Ka,deleteAssetProcedureTypeFieldsAttachments:Wa}=ns.actions,Ya=ns.reducer,Za=t=>t.assetProcedureTypeFieldsAttachmentReducer.instances,as=o.createSelector([Za],t=>Object.values(t)),KO=f(o.createSelector([as,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),Ja=t=>s=>s.assetProcedureTypeFieldsAttachmentReducer.instances[t],Xa=f(o.createSelector([as,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),W=F(({uuid:t})=>t),Qa={instances:{}},cs=o.createSlice({name:"assetProcedureTypeFields",initialState:Qa,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Qa)),reducers:{initializeAssetProcedureTypeFields:W.initialize,addAssetProcedureTypeFields:W.addOne,addAssetProcedureTypeFieldsMany:W.addMany,setAssetProcedureTypeFields:W.setOne,setAssetProcedureTypeFieldsMany:W.setMany,updateAssetProcedureTypeFields:W.updateOne,updateAssetProcedureTypeFieldsMany:W.updateMany,deleteAssetProcedureTypeFields:W.deleteOne,deleteAssetProcedureTypeFieldsMany:W.deleteMany}}),{initializeAssetProcedureTypeFields:xa,addAssetProcedureTypeFields:ec,addAssetProcedureTypeFieldsMany:tc,setAssetProcedureTypeFields:sc,setAssetProcedureTypeFieldsMany:ic,updateAssetProcedureTypeFields:nc,updateAssetProcedureTypeFieldsMany:ac,deleteAssetProcedureTypeFields:cc,deleteAssetProcedureTypeFieldsMany:dc}=cs.actions,rc=cs.reducer,uc=t=>t.assetProcedureTypeFieldsReducer.instances,Ot=o.createSelector([uc],t=>Object.values(t)),WO=f(o.createSelector([Ot,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_type===s)))),YO=f(o.createSelector([Ot,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_procedure_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),lc=t=>s=>s.assetProcedureTypeFieldsReducer.instances[t],oc=f(o.createSelector([Ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Y=F(({uuid:t})=>t),hc={instances:{}},ds=o.createSlice({name:"assetProcedureTypeFieldValuesAttachments",initialState:hc,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,hc)),reducers:{initializeAssetProcedureTypeFieldValuesAttachments:Y.initialize,addAssetProcedureTypeFieldValuesAttachment:Y.addOne,addAssetProcedureTypeFieldValuesAttachments:Y.addMany,setAssetProcedureTypeFieldValuesAttachment:Y.setOne,setAssetProcedureTypeFieldValuesAttachments:Y.setMany,updateAssetProcedureTypeFieldValuesAttachment:Y.updateOne,updateAssetProcedureTypeFieldValuesAttachments:Y.updateMany,deleteAssetProcedureTypeFieldValuesAttachment:Y.deleteOne,deleteAssetProcedureTypeFieldValuesAttachments:Y.deleteMany}}),{initializeAssetProcedureTypeFieldValuesAttachments:mc,addAssetProcedureTypeFieldValuesAttachment:yc,addAssetProcedureTypeFieldValuesAttachments:rs,setAssetProcedureTypeFieldValuesAttachment:pc,setAssetProcedureTypeFieldValuesAttachments:Ac,updateAssetProcedureTypeFieldValuesAttachment:fc,updateAssetProcedureTypeFieldValuesAttachments:Sc,deleteAssetProcedureTypeFieldValuesAttachment:Tc,deleteAssetProcedureTypeFieldValuesAttachments:us}=ds.actions,Ic=ds.reducer,Oc=t=>t.assetProcedureTypeFieldValuesAttachmentReducer.instances,ls=o.createSelector([Oc],t=>Object.values(t)),Pc=t=>s=>s.assetProcedureTypeFieldValuesAttachmentReducer.instances[t],Fc=f(o.createSelector([ls,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),gc=f(o.createSelector([ls,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),Z=F(({uuid:t})=>t),bc={instances:{}},os=o.createSlice({name:"assetProcedureTypeFieldValues",initialState:bc,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,bc)),reducers:{initializeAssetProcedureTypeFieldValues:Z.initialize,addAssetProcedureTypeFieldValues:Z.addOne,addAssetProcedureTypeFieldValuesMany:Z.addMany,setAssetProcedureTypeFieldValues:Z.setOne,setAssetProcedureTypeFieldValuesMany:Z.setMany,updateAssetProcedureTypeFieldValues:Z.updateOne,updateAssetProcedureTypeFieldValuesMany:Z.updateMany,deleteAssetProcedureTypeFieldValues:Z.deleteOne,deleteAssetProcedureTypeFieldValuesMany:Z.deleteMany}}),{initializeAssetProcedureTypeFieldValues:Mc,addAssetProcedureTypeFieldValues:_c,addAssetProcedureTypeFieldValuesMany:Rc,setAssetProcedureTypeFieldValues:wc,setAssetProcedureTypeFieldValuesMany:Ec,updateAssetProcedureTypeFieldValues:Vc,updateAssetProcedureTypeFieldValuesMany:vc,deleteAssetProcedureTypeFieldValues:Bc,deleteAssetProcedureTypeFieldValuesMany:zc}=os.actions,jc=os.reducer,Dc=t=>t.assetProcedureTypeFieldValuesReducer.instances,Pt=o.createSelector([Dc],t=>Object.values(t)),ZO=f(o.createSelector([Pt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),JO=f(o.createSelector([Pt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure===s)))),qc=t=>s=>s.assetProcedureTypeFieldValuesReducer.instances[t],$c=f(o.createSelector([Pt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),J=F(({uuid:t})=>t),Cc={instances:{}},hs=o.createSlice({name:"assetProcedures",initialState:Cc,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Cc)),reducers:{initializeAssetProcedures:J.initialize,addAssetProcedure:J.addOne,addAssetProcedures:J.addMany,setAssetProcedure:J.setOne,setAssetProcedures:J.setMany,updateAssetProcedure:J.updateOne,updateAssetProcedures:J.updateMany,deleteAssetProcedure:J.deleteOne,deleteAssetProcedures:J.deleteMany}}),{initializeAssetProcedures:Uc,addAssetProcedure:Lc,addAssetProcedures:ms,updateAssetProcedure:Nc,updateAssetProcedures:Gc,deleteAssetProcedure:kc,deleteAssetProcedures:ys,setAssetProcedure:Hc,setAssetProcedures:Kc}=hs.actions,Wc=hs.reducer,Yc=t=>t.assetProcedureReducer.instances,Ft=o.createSelector([Yc],t=>Object.values(t)),Zc=f(o.createSelector([Ft,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_type===s)))),XO=f(o.createSelector([Ft,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Jc=t=>s=>s.assetProcedureReducer.instances[t],Xc=f(o.createSelector([Ft,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),X=F(t=>t.uuid),Qc={instances:{}},ps=o.createSlice({name:"assetProcedureTypes",initialState:Qc,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Qc)),reducers:{initializeAssetProcedureTypes:X.initialize,addAssetProcedureType:X.addOne,addAssetProcedureTypes:X.addMany,setAssetProcedureType:X.setOne,setAssetProcedureTypes:X.setMany,updateAssetProcedureType:X.updateOne,updateAssetProcedureTypes:X.updateMany,deleteAssetProcedureType:X.deleteOne,deleteAssetProcedureTypes:X.deleteMany}}),{initializeAssetProcedureTypes:xc,addAssetProcedureType:ed,addAssetProcedureTypes:td,updateAssetProcedureType:sd,updateAssetProcedureTypes:id,deleteAssetProcedureType:nd,deleteAssetProcedureTypes:ad,setAssetProcedureType:cd,setAssetProcedureTypes:dd}=ps.actions,rd=ps.reducer,ud=t=>t.assetProcedureTypeReducer.instances,As=o.createSelector([ud],t=>Object.values(t)),ld=t=>s=>s.assetProcedureTypeReducer.instances[t],od=f(o.createSelector([As,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),QO=f(o.createSelector([As,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Q=F(t=>t.uuid),hd={instances:{}},fs=o.createSlice({name:"assetProcedureStepFieldsAttachments",initialState:hd,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,hd)),reducers:{initializeAssetProcedureStepFieldsAttachments:Q.initialize,addAssetProcedureStepFieldsAttachment:Q.addOne,addAssetProcedureStepFieldsAttachments:Q.addMany,setAssetProcedureStepFieldsAttachment:Q.setOne,setAssetProcedureStepFieldsAttachments:Q.setMany,updateAssetProcedureStepFieldsAttachment:Q.updateOne,updateAssetProcedureStepFieldsAttachments:Q.updateMany,deleteAssetProcedureStepFieldsAttachment:Q.deleteOne,deleteAssetProcedureStepFieldsAttachments:Q.deleteMany}}),{initializeAssetProcedureStepFieldsAttachments:md,addAssetProcedureStepFieldsAttachment:yd,addAssetProcedureStepFieldsAttachments:pd,setAssetProcedureStepFieldsAttachment:Ad,setAssetProcedureStepFieldsAttachments:fd,updateAssetProcedureStepFieldsAttachment:Sd,updateAssetProcedureStepFieldsAttachments:Td,deleteAssetProcedureStepFieldsAttachment:Id,deleteAssetProcedureStepFieldsAttachments:Od}=fs.actions,Pd=t=>t.assetProcedureStepFieldsAttachmentReducer.instances,Ss=o.createSelector([Pd],t=>Object.values(t)),xO=f(o.createSelector([Ss,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),Fd=t=>s=>s.assetProcedureStepFieldsAttachmentReducer.instances[t],gd=f(o.createSelector([Ss,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),bd=fs.reducer,x=F(t=>t.uuid),Md={instances:{}},Ts=o.createSlice({name:"assetProcedureStepFields",initialState:Md,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Md)),reducers:{initializeAssetProcedureStepFields:x.initialize,addAssetProcedureStepFields:x.addOne,addAssetProcedureStepFieldsMany:x.addMany,setAssetProcedureStepFields:x.setOne,setAssetProcedureStepFieldsMany:x.setMany,updateAssetProcedureStepFields:x.updateOne,updateAssetProcedureStepFieldsMany:x.updateMany,deleteAssetProcedureStepFields:x.deleteOne,deleteAssetProcedureStepFieldsMany:x.deleteMany}}),{initializeAssetProcedureStepFields:_d,addAssetProcedureStepFields:Rd,addAssetProcedureStepFieldsMany:wd,setAssetProcedureStepFields:Ed,setAssetProcedureStepFieldsMany:Vd,updateAssetProcedureStepFields:vd,updateAssetProcedureStepFieldsMany:Bd,deleteAssetProcedureStepFields:zd,deleteAssetProcedureStepFieldsMany:jd}=Ts.actions,Is=t=>t.assetProcedureStepFieldsReducer.instances,gt=o.createSelector([Is],t=>Object.values(t)),eP=f(o.createSelector([gt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_step===s)))),tP=f(o.createSelector([gt,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_procedure_step===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),sP=o.createSelector([Is],t=>{const s={};for(const e of Object.values(t)){const n=s[e.asset_procedure_step];(!n||n.submitted_at<e.submitted_at)&&(s[e.asset_procedure_step]=e)}return s}),Dd=t=>s=>s.assetProcedureStepFieldsReducer.instances[t],qd=f(o.createSelector([gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$d=Ts.reducer,ee=F(t=>t.uuid),Cd={instances:{}},Os=o.createSlice({name:"assetProcedureStepFieldValuesAttachments",initialState:Cd,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Cd)),reducers:{initializeAssetProcedureStepFieldValuesAttachments:ee.initialize,addAssetProcedureStepFieldValuesAttachment:ee.addOne,addAssetProcedureStepFieldValuesAttachments:ee.addMany,setAssetProcedureStepFieldValuesAttachment:ee.setOne,setAssetProcedureStepFieldValuesAttachments:ee.setMany,updateAssetProcedureStepFieldValuesAttachment:ee.updateOne,updateAssetProcedureStepFieldValuesAttachments:ee.updateMany,deleteAssetProcedureStepFieldValuesAttachment:ee.deleteOne,deleteAssetProcedureStepFieldValuesAttachments:ee.deleteMany}}),{initializeAssetProcedureStepFieldValuesAttachments:Ud,addAssetProcedureStepFieldValuesAttachment:Ld,addAssetProcedureStepFieldValuesAttachments:Ps,setAssetProcedureStepFieldValuesAttachment:Nd,setAssetProcedureStepFieldValuesAttachments:Gd,updateAssetProcedureStepFieldValuesAttachment:kd,updateAssetProcedureStepFieldValuesAttachments:Hd,deleteAssetProcedureStepFieldValuesAttachment:Kd,deleteAssetProcedureStepFieldValuesAttachments:Fs}=Os.actions,Wd=t=>t.assetProcedureStepFieldValuesAttachmentReducer.instances,gs=o.createSelector([Wd],t=>Object.values(t)),Yd=t=>s=>s.assetProcedureStepFieldValuesAttachmentReducer.instances[t],Zd=f(o.createSelector([gs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Jd=f(o.createSelector([gs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),Xd=Os.reducer,te=F(t=>t.uuid),Qd={instances:{}},bs=o.createSlice({name:"assetProcedureStepFieldValues",initialState:Qd,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Qd)),reducers:{initializeAssetProcedureStepFieldValues:te.initialize,addAssetProcedureStepFieldValues:te.addOne,addAssetProcedureStepFieldValuesMany:te.addMany,setAssetProcedureStepFieldValues:te.setOne,setAssetProcedureStepFieldValuesMany:te.setMany,updateAssetProcedureStepFieldValues:te.updateOne,updateAssetProcedureStepFieldValuesMany:te.updateMany,deleteAssetProcedureStepFieldValues:te.deleteOne,deleteAssetProcedureStepFieldValuesMany:te.deleteMany}}),{initializeAssetProcedureStepFieldValues:xd,addAssetProcedureStepFieldValues:er,addAssetProcedureStepFieldValuesMany:tr,setAssetProcedureStepFieldValues:sr,setAssetProcedureStepFieldValuesMany:ir,updateAssetProcedureStepFieldValues:nr,updateAssetProcedureStepFieldValuesMany:ar,deleteAssetProcedureStepFieldValues:cr,deleteAssetProcedureStepFieldValuesMany:dr}=bs.actions,rr=t=>t.assetProcedureStepFieldValuesReducer.instances,ht=o.createSelector([rr],t=>Object.values(t)),iP=f(o.createSelector([ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),nP=f(o.createSelector([ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure===s)))),aP=f(o.createSelector([ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_step===s)))),ur=t=>s=>s.assetProcedureStepFieldValuesReducer.instances[t],lr=f(o.createSelector([ht,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),or=bs.reducer,se=F(t=>t.uuid),hr={instances:{}},Ms=o.createSlice({name:"assetProcedureSteps",initialState:hr,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,hr)),reducers:{initializeAssetProcedureSteps:se.initialize,setAssetProcedureStep:se.setOne,setAssetProcedureSteps:se.setMany,addAssetProcedureStep:se.addOne,addAssetProcedureSteps:se.addMany,updateAssetProcedureStep:se.updateOne,updateAssetProcedureSteps:se.updateMany,deleteAssetProcedureStep:se.deleteOne,deleteAssetProcedureSteps:se.deleteMany}}),{initializeAssetProcedureSteps:mr,setAssetProcedureStep:yr,setAssetProcedureSteps:pr,addAssetProcedureStep:Ar,addAssetProcedureSteps:fr,updateAssetProcedureStep:Sr,updateAssetProcedureSteps:Tr,deleteAssetProcedureStep:Ir,deleteAssetProcedureSteps:Or}=Ms.actions,Pr=Ms.reducer,bt=t=>t.assetProcedureStepReducer.instances,Fr=t=>s=>s.assetProcedureStepReducer.instances[t],_s=o.createSelector([bt],t=>Object.values(t)),cP=f(o.createSelector([bt,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.asset_procedure_type===s&&(e[n]=a);return St(e)})),dP=f(o.createSelector([_s,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_type===s)))),gr=f(o.createSelector([_s,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),br=f(o.createSelector([bt,(t,s)=>s],(t,s)=>{if(!t[s])return S([]);const a=ea(s,Object.values(t)).all().map(({model:c})=>c);return S(a)})),ie=F(t=>t.uuid),Mr={instances:{}},Rs=o.createSlice({name:"assets",initialState:Mr,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Mr)),reducers:{initializeAssets:ie.initialize,addAsset:ie.addOne,addAssets:ie.addMany,setAsset:ie.setOne,setAssets:ie.setMany,updateAsset:ie.updateOne,updateAssets:ie.updateMany,deleteAsset:ie.deleteOne,deleteAssets:ie.deleteMany}}),{initializeAssets:_r,addAsset:Rr,addAssets:ws,updateAsset:wr,updateAssets:Er,deleteAsset:Vr,deleteAssets:Es,setAsset:vr,setAssets:Br}=Rs.actions,zr=t=>t.assetReducer.instances,Mt=o.createSelector([zr],t=>S(Object.values(t))),rP=f(o.createSelector([Mt,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>e===s)))),jr=f(o.createSelector([Mt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Dr=t=>s=>s.assetReducer.instances[t],qr=f(o.createSelector([Mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$r=Rs.reducer,ne=F(t=>t.uuid),Cr={instances:{}},Vs=o.createSlice({name:"assetStageCompletions",initialState:Cr,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Cr)),reducers:{initializeAssetStageCompletions:ne.initialize,addAssetStageCompletion:ne.addOne,addAssetStageCompletions:ne.addMany,setAssetStageCompletion:ne.setOne,setAssetStageCompletions:ne.setMany,updateAssetStageCompletion:ne.updateOne,updateAssetStageCompletions:ne.updateMany,deleteAssetStageCompletion:ne.deleteOne,deleteAssetStageCompletions:ne.deleteMany}}),{initializeAssetStageCompletions:Ur,addAssetStageCompletion:Lr,addAssetStageCompletions:Nr,setAssetStageCompletion:Gr,setAssetStageCompletions:kr,updateAssetStageCompletion:Hr,updateAssetStageCompletions:Kr,deleteAssetStageCompletion:Wr,deleteAssetStageCompletions:Yr}=Vs.actions,Zr=Vs.reducer,Jr=t=>t.assetStageCompletionReducer.instances,Xr=o.createSelector([Jr],t=>Object.values(t)),Qr=t=>s=>s.assetStageCompletionReducer.instances[t],xr=f(o.createSelector([Xr,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ae=F(t=>t.uuid),eu={instances:{}},vs=o.createSlice({name:"assetStages",initialState:eu,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,eu)),reducers:{initializeAssetStages:ae.initialize,setAssetStage:ae.setOne,setAssetStages:ae.setMany,addAssetStage:ae.addOne,addAssetStages:ae.addMany,updateAssetStage:ae.updateOne,updateAssetStages:ae.updateMany,deleteAssetStage:ae.deleteOne,deleteAssetStages:ae.deleteMany}}),{initializeAssetStages:tu,setAssetStage:su,setAssetStages:iu,addAssetStage:nu,addAssetStages:au,updateAssetStage:cu,updateAssetStages:du,deleteAssetStage:ru,deleteAssetStages:uu}=vs.actions,lu=vs.reducer,Bs=t=>t.assetStageReducer.instances,ou=t=>s=>s.assetStageReducer.instances[t],zs=o.createSelector([Bs],t=>Object.values(t)),uP=f(o.createSelector([Bs,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.asset_procedure_type===s&&(e[n]=a);return St(e)})),lP=f(o.createSelector([zs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_type===s)))),hu=f(o.createSelector([zs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ce=F(t=>t.uuid),mu={instances:{}},js=o.createSlice({name:"assetTypeAttachments",initialState:mu,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,mu)),reducers:{initializeAssetTypeAttachments:ce.initialize,addAssetTypeAttachment:ce.addOne,addAssetTypeAttachments:ce.addMany,setAssetTypeAttachment:ce.setOne,setAssetTypeAttachments:ce.setMany,updateAssetTypeAttachment:ce.updateOne,updateAssetTypeAttachments:ce.updateMany,deleteAssetTypeAttachment:ce.deleteOne,deleteAssetTypeAttachments:ce.deleteMany}}),{initializeAssetTypeAttachments:yu,addAssetTypeAttachment:pu,addAssetTypeAttachments:Ds,setAssetTypeAttachment:Au,setAssetTypeAttachments:fu,updateAssetTypeAttachment:Su,updateAssetTypeAttachments:Tu,deleteAssetTypeAttachment:Iu,deleteAssetTypeAttachments:qs}=js.actions,Ou=t=>t.assetTypeAttachmentReducer.instances,$s=o.createSelector([Ou],t=>Object.values(t)),Pu=t=>s=>s.assetTypeAttachmentReducer.instances[t],Fu=f(o.createSelector([$s,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),gu=f(o.createSelector([$s,(t,s)=>s],(t,s)=>S(t.filter(({asset_type:e})=>s===e)))),bu=js.reducer,de=F(t=>t.uuid),Mu={instances:{}},Cs=o.createSlice({name:"assetTypeFieldsAttachments",initialState:Mu,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Mu)),reducers:{initializeAssetTypeFieldsAttachments:de.initialize,addAssetTypeFieldsAttachment:de.addOne,addAssetTypeFieldsAttachments:de.addMany,setAssetTypeFieldsAttachment:de.setOne,setAssetTypeFieldsAttachments:de.setMany,updateAssetTypeFieldsAttachment:de.updateOne,updateAssetTypeFieldsAttachments:de.updateMany,deleteAssetTypeFieldsAttachment:de.deleteOne,deleteAssetTypeFieldsAttachments:de.deleteMany}}),{initializeAssetTypeFieldsAttachments:_u,addAssetTypeFieldsAttachment:Ru,addAssetTypeFieldsAttachments:wu,setAssetTypeFieldsAttachment:Eu,setAssetTypeFieldsAttachments:Vu,updateAssetTypeFieldsAttachment:vu,updateAssetTypeFieldsAttachments:Bu,deleteAssetTypeFieldsAttachment:zu,deleteAssetTypeFieldsAttachments:ju}=Cs.actions,Du=t=>t.assetTypeFieldsAttachmentReducer.instances,Us=o.createSelector([Du],t=>Object.values(t)),oP=f(o.createSelector([Us,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),qu=t=>s=>s.assetTypeFieldsAttachmentReducer.instances[t],$u=f(o.createSelector([Us,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Cu=Cs.reducer,re=F(t=>t.uuid),Uu={instances:{}},Ls=o.createSlice({name:"assetTypeFields",initialState:Uu,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Uu)),reducers:{initializeAssetTypeFields:re.initialize,addAssetTypeFields:re.addOne,addAssetTypeFieldsMany:re.addMany,setAssetTypeFields:re.setOne,setAssetTypeFieldsMany:re.setMany,updateAssetTypeFields:re.updateOne,updateAssetTypeFieldsMany:re.updateMany,deleteAssetTypeFields:re.deleteOne,deleteAssetTypeFieldsMany:re.deleteMany}}),{initializeAssetTypeFields:Lu,addAssetTypeFields:Nu,addAssetTypeFieldsMany:Gu,setAssetTypeFields:ku,setAssetTypeFieldsMany:Hu,updateAssetTypeFields:Ku,updateAssetTypeFieldsMany:Wu,deleteAssetTypeFields:Yu,deleteAssetTypeFieldsMany:Zu}=Ls.actions,Ju=t=>t.assetTypeFieldsReducer.instances,mt=o.createSelector([Ju],t=>Object.values(t)),hP=f(o.createSelector([mt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),mP=f(o.createSelector([mt,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),Xu=t=>s=>s.assetTypeFieldsReducer.instances[t],Qu=f(o.createSelector([mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),xu=Ls.reducer,ue=F(t=>t.uuid),el={instances:{}},Ns=o.createSlice({name:"assetTypeFieldValuesAttachments",initialState:el,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,el)),reducers:{initializeAssetTypeFieldValuesAttachments:ue.initialize,addAssetTypeFieldValuesAttachment:ue.addOne,addAssetTypeFieldValuesAttachments:ue.addMany,setAssetTypeFieldValuesAttachment:ue.setOne,setAssetTypeFieldValuesAttachments:ue.setMany,updateAssetTypeFieldValuesAttachment:ue.updateOne,updateAssetTypeFieldValuesAttachments:ue.updateMany,deleteAssetTypeFieldValuesAttachment:ue.deleteOne,deleteAssetTypeFieldValuesAttachments:ue.deleteMany}}),{initializeAssetTypeFieldValuesAttachments:tl,addAssetTypeFieldValuesAttachment:sl,addAssetTypeFieldValuesAttachments:Gs,setAssetTypeFieldValuesAttachment:il,setAssetTypeFieldValuesAttachments:nl,updateAssetTypeFieldValuesAttachment:al,updateAssetTypeFieldValuesAttachments:cl,deleteAssetTypeFieldValuesAttachment:dl,deleteAssetTypeFieldValuesAttachments:ks}=Ns.actions,rl=t=>t.assetTypeFieldValuesAttachmentReducer.instances,Hs=o.createSelector([rl],t=>Object.values(t)),ul=t=>s=>s.assetTypeFieldValuesAttachmentReducer.instances[t],ll=f(o.createSelector([Hs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ol=f(o.createSelector([Hs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),hl=Ns.reducer,le=F(t=>t.uuid),ml={instances:{}},Ks=o.createSlice({name:"assetTypeFieldValues",initialState:ml,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,ml)),reducers:{initializeAssetTypeFieldValues:le.initialize,addAssetTypeFieldValues:le.addOne,addAssetTypeFieldValuesMany:le.addMany,setAssetTypeFieldValues:le.setOne,setAssetTypeFieldValuesMany:le.setMany,updateAssetTypeFieldValues:le.updateOne,updateAssetTypeFieldValuesMany:le.updateMany,deleteAssetTypeFieldValues:le.deleteOne,deleteAssetTypeFieldValuesMany:le.deleteMany}}),{initializeAssetTypeFieldValues:yl,addAssetTypeFieldValues:pl,addAssetTypeFieldValuesMany:Al,setAssetTypeFieldValues:fl,setAssetTypeFieldValuesMany:Sl,updateAssetTypeFieldValues:Tl,updateAssetTypeFieldValuesMany:Il,deleteAssetTypeFieldValues:Ol,deleteAssetTypeFieldValuesMany:Pl}=Ks.actions,Fl=t=>t.assetTypeFieldValuesReducer.instances,_t=o.createSelector([Fl],t=>Object.values(t)),yP=f(o.createSelector([_t,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),pP=f(o.createSelector([mt,_t,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.asset_type===e).map(a=>a.uuid));return S(s.filter(a=>n.has(a.fields_revision)))})),gl=t=>s=>s.assetTypeFieldValuesReducer.instances[t],bl=f(o.createSelector([_t,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Ml=Ks.reducer,oe=F(t=>t.uuid),_l={instances:{}},Ws=o.createSlice({name:"assetTypeIdentifiers",initialState:_l,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,_l)),reducers:{initializeAssetTypeIdentifiers:oe.initialize,addAssetTypeIdentifier:oe.addOne,addAssetTypeIdentifiers:oe.addMany,setAssetTypeIdentifier:oe.setOne,setAssetTypeIdentifiers:oe.setMany,updateAssetTypeIdentifier:oe.updateOne,updateAssetTypeIdentifiers:oe.updateMany,deleteAssetTypeIdentifier:oe.deleteOne,deleteAssetTypeIdentifiers:oe.deleteMany}}),{initializeAssetTypeIdentifiers:Rl,addAssetTypeIdentifier:wl,addAssetTypeIdentifiers:El,setAssetTypeIdentifier:Vl,setAssetTypeIdentifiers:vl,updateAssetTypeIdentifier:Bl,updateAssetTypeIdentifiers:zl,deleteAssetTypeIdentifier:jl,deleteAssetTypeIdentifiers:Dl}=Ws.actions,ql=t=>t.assetTypeIdentifierReducer.instances,Ys=o.createSelector([ql],t=>Object.values(t)),$l=t=>s=>s.assetTypeIdentifierReducer.instances[t],Cl=f(o.createSelector([Ys,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),AP=f(o.createSelector([Ys,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Ul=Ws.reducer,he=F(t=>t.uuid),Ll={instances:{}},Zs=o.createSlice({name:"assetTypeIdentifierValues",initialState:Ll,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Ll)),reducers:{initializeAssetTypeIdentifierValues:he.initialize,addAssetTypeIdentifierValue:he.addOne,addAssetTypeIdentifierValues:he.addMany,setAssetTypeIdentifierValue:he.setOne,setAssetTypeIdentifierValues:he.setMany,updateAssetTypeIdentifierValue:he.updateOne,updateAssetTypeIdentifierValues:he.updateMany,deleteAssetTypeIdentifierValue:he.deleteOne,deleteAssetTypeIdentifierValues:he.deleteMany}}),{initializeAssetTypeIdentifierValues:Nl,addAssetTypeIdentifierValue:Gl,addAssetTypeIdentifierValues:kl,setAssetTypeIdentifierValue:Hl,setAssetTypeIdentifierValues:Kl,updateAssetTypeIdentifierValue:Wl,updateAssetTypeIdentifierValues:Yl,deleteAssetTypeIdentifierValue:Zl,deleteAssetTypeIdentifierValues:Jl}=Zs.actions,Xl=t=>t.assetTypeIdentifierValueReducer.instances,Rt=o.createSelector([Xl],t=>Object.values(t)),Ql=t=>s=>s.assetTypeIdentifierValueReducer.instances[t],xl=f(o.createSelector([Rt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),fP=f(o.createSelector([Rt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),SP=f(o.createSelector([Rt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type_identifier===s)))),eo=Zs.reducer,me=F(t=>t.uuid),to={instances:{}},Js=o.createSlice({name:"assetTypes",initialState:to,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,to)),reducers:{initializeAssetTypes:me.initialize,setAssetType:me.setOne,setAssetTypes:me.setMany,addAssetType:me.addOne,addAssetTypes:me.addMany,updateAssetType:me.updateOne,updateAssetTypes:me.updateMany,deleteAssetType:me.deleteOne,deleteAssetTypes:me.deleteMany}}),{initializeAssetTypes:so,setAssetType:io,setAssetTypes:no,addAssetType:ao,addAssetTypes:co,updateAssetType:ro,updateAssetTypes:uo,deleteAssetType:lo,deleteAssetTypes:oo}=Js.actions,ho=t=>t.assetTypeReducer.instances,Xs=o.createSelector([ho],t=>Object.values(t)),mo=t=>s=>s.assetTypeReducer.instances[t],yo=f(o.createSelector([Xs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),TP=f(o.createSelector([Xs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),po=Js.reducer,ye=F(t=>t.uuid),Ao={instances:{}},Qs=o.createSlice({name:"assetTypeStatuses",initialState:Ao,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Ao)),reducers:{initializeAssetTypeStatuses:ye.initialize,addAssetTypeStatus:ye.addOne,addAssetTypeStatuses:ye.addMany,setAssetTypeStatus:ye.setOne,setAssetTypeStatuses:ye.setMany,updateAssetTypeStatus:ye.updateOne,updateAssetTypeStatuses:ye.updateMany,deleteAssetTypeStatus:ye.deleteOne,deleteAssetTypeStatuses:ye.deleteMany}}),{initializeAssetTypeStatuses:fo,addAssetTypeStatus:So,addAssetTypeStatuses:To,setAssetTypeStatus:Io,setAssetTypeStatuses:Oo,updateAssetTypeStatus:Po,updateAssetTypeStatuses:Fo,deleteAssetTypeStatus:go,deleteAssetTypeStatuses:bo}=Qs.actions,Mo=t=>t.assetTypeStatusReducer.instances,xs=o.createSelector([Mo],t=>S(Object.values(t).toSorted(ta))),_o=t=>s=>s.assetTypeStatusReducer.instances[t],Ro=f(o.createSelector([xs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),IP=f(o.createSelector([xs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),wo=Qs.reducer,Eo={accessToken:"",refreshToken:"",isLoggedIn:!1},wt=o.createSlice({name:"auth",initialState:Eo,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Eo)),reducers:{setTokens:(t,s)=>{t.accessToken=s.payload.accessToken,t.refreshToken=s.payload.refreshToken},clearTokens:t=>{t.accessToken="",t.refreshToken=""},setLoggedIn:(t,s)=>{s.payload||wt.caseReducers.clearTokens(t),t.isLoggedIn=s.payload}}}),{setTokens:OP,clearTokens:PP,setLoggedIn:Vo}=wt.actions,FP=t=>t.authReducer.accessToken,gP=t=>t.authReducer.isLoggedIn,vo=wt.reducer,pe=F(t=>t.uuid),Bo={instances:{}},ei=o.createSlice({name:"documentAttachments",initialState:Bo,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Bo)),reducers:{initializeDocumentAttachments:pe.initialize,addDocumentAttachment:pe.addOne,addDocumentAttachments:pe.addMany,setDocumentAttachment:pe.setOne,setDocumentAttachments:pe.setMany,updateDocumentAttachment:pe.updateOne,updateDocumentAttachments:pe.updateMany,deleteDocumentAttachment:pe.deleteOne,deleteDocumentAttachments:pe.deleteMany}}),{initializeDocumentAttachments:zo,addDocumentAttachment:jo,addDocumentAttachments:Do,setDocumentAttachment:qo,setDocumentAttachments:$o,updateDocumentAttachment:Co,updateDocumentAttachments:Uo,deleteDocumentAttachment:Lo,deleteDocumentAttachments:No}=ei.actions,Go=t=>t.documentAttachmentReducer.instances,ti=o.createSelector([Go],t=>Object.values(t)),ko=t=>s=>s.documentAttachmentReducer.instances[t],Ho=f(o.createSelector([ti,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),bP=f(o.createSelector([ti,(t,s)=>s],(t,s)=>S(t.filter(({document:e})=>s===e)))),Ko=ei.reducer,Ae=F(({uuid:t})=>t),Wo={instances:{}},si=o.createSlice({name:"documents",initialState:Wo,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>{Object.assign(s,Wo)}),reducers:{initializeDocuments:Ae.initialize,addDocument:Ae.addOne,addDocuments:Ae.addMany,setDocument:Ae.setOne,setDocuments:Ae.setMany,updateDocument:Ae.updateOne,updateDocuments:Ae.updateMany,deleteDocument:Ae.deleteOne,deleteDocuments:Ae.deleteMany}}),{initializeDocuments:Yo,addDocument:Zo,addDocuments:Jo,setDocument:Xo,setDocuments:Qo,updateDocument:xo,updateDocuments:eh,deleteDocument:th,deleteDocuments:sh}=si.actions,ih=si.reducer,ii=t=>t.documentsReducer.instances,Et=o.createSelector([ii],t=>Object.values(t)),nh=t=>s=>s.documentsReducer.instances[t],ah=f(o.createSelector([Et,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),MP=f(o.createSelector([Et,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),_P=f(o.createSelector([Et,(t,s)=>s],(t,s)=>t.filter(e=>e.organization===s))),ch=f(o.createSelector([ii,(t,s)=>s],(t,s)=>{if(!t[s])return S([]);const a=na(s,Object.values(t)).all().map(({model:c})=>c);return S(a)})),fe=F(t=>t.uuid),dh={instances:{}},ni=o.createSlice({name:"emailDomains",initialState:dh,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,dh)),reducers:{initializeEmailDomains:fe.initialize,addEmailDomain:fe.addOne,addEmailDomains:fe.addMany,setEmailDomain:fe.setOne,setEmailDomains:fe.setMany,updateEmailDomain:fe.updateOne,updateEmailDomains:fe.updateMany,deleteEmailDomain:fe.deleteOne,deleteEmailDomains:fe.deleteMany}}),{initializeEmailDomains:rh,addEmailDomain:uh,addEmailDomains:lh,setEmailDomain:oh,setEmailDomains:hh,updateEmailDomain:mh,updateEmailDomains:yh,deleteEmailDomain:ph,deleteEmailDomains:Ah}=ni.actions,fh=t=>t.emailDomainsReducer.instances,ai=o.createSelector([fh],t=>Object.values(t)),Sh=t=>s=>s.emailDomainsReducer.instances[t],Th=f(o.createSelector([ai,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),RP=f(o.createSelector([ai,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Ih=ni.reducer,Oh={s3Urls:{}},Ph=1e3*60*60,wP=Ph*24*7,ci=o.createSlice({name:"file",initialState:Oh,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Oh)),reducers:{setUploadUrl:(t,s)=>{const{url:e,fields:n,sha1:a}=s.payload,c=new Date,d=new Date(c.getTime()+wP);t.s3Urls[a]={url:e,fields:n,exp:d.getTime()}}}}),{setUploadUrl:EP}=ci.actions,VP=t=>s=>{const e=s.fileReducer.s3Urls[t];if(!e)return;const n=new Date().getTime();if(!((e.exp??n)-n<Ph))return e},Fh=ci.reducer,Se=F(t=>t.uuid),gh={instances:{}},di=o.createSlice({name:"formIdentifiers",initialState:gh,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,gh)),reducers:{initializeFormIdentifiers:Se.initialize,addFormIdentifier:Se.addOne,addFormIdentifiers:Se.addMany,setFormIdentifier:Se.setOne,setFormIdentifiers:Se.setMany,updateFormIdentifier:Se.updateOne,updateFormIdentifiers:Se.updateMany,deleteFormIdentifier:Se.deleteOne,deleteFormIdentifiers:Se.deleteMany}}),{initializeFormIdentifiers:bh,addFormIdentifier:Mh,addFormIdentifiers:_h,setFormIdentifier:Rh,setFormIdentifiers:wh,updateFormIdentifier:Eh,updateFormIdentifiers:Vh,deleteFormIdentifier:vh,deleteFormIdentifiers:Bh}=di.actions,zh=t=>t.formIdentifierReducer.instances,ri=o.createSelector([zh],t=>Object.values(t)),jh=t=>s=>s.formIdentifierReducer.instances[t],Dh=f(o.createSelector([ri,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),vP=f(o.createSelector([ri,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),qh=di.reducer,Te=F(t=>t.uuid),$h={instances:{}},ui=o.createSlice({name:"formIdentifierValues",initialState:$h,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,$h)),reducers:{initializeFormIdentifierValues:Te.initialize,addFormIdentifierValue:Te.addOne,addFormIdentifierValues:Te.addMany,setFormIdentifierValue:Te.setOne,setFormIdentifierValues:Te.setMany,updateFormIdentifierValue:Te.updateOne,updateFormIdentifierValues:Te.updateMany,deleteFormIdentifierValue:Te.deleteOne,deleteFormIdentifierValues:Te.deleteMany}}),{initializeFormIdentifierValues:Ch,addFormIdentifierValue:Uh,addFormIdentifierValues:Lh,setFormIdentifierValue:Nh,setFormIdentifierValues:Gh,updateFormIdentifierValue:kh,updateFormIdentifierValues:Hh,deleteFormIdentifierValue:Kh,deleteFormIdentifierValues:Wh}=ui.actions,Yh=t=>t.formIdentifierValueReducer.instances,Vt=o.createSelector([Yh],t=>Object.values(t)),Zh=t=>s=>s.formIdentifierValueReducer.instances[t],Jh=f(o.createSelector([Vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),BP=f(o.createSelector([Vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_submission===s)))),zP=f(o.createSelector([Vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_identifier===s)))),Xh=ui.reducer,Ie=F(t=>t.uuid),Qh={instances:{}},li=o.createSlice({name:"formRevisionAttachments",initialState:Qh,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Qh)),reducers:{initializeFormRevisionAttachments:Ie.initialize,addFormRevisionAttachment:Ie.addOne,addFormRevisionAttachments:Ie.addMany,setFormRevisionAttachment:Ie.setOne,setFormRevisionAttachments:Ie.setMany,updateFormRevisionAttachment:Ie.updateOne,updateFormRevisionAttachments:Ie.updateMany,deleteFormRevisionAttachment:Ie.deleteOne,deleteFormRevisionAttachments:Ie.deleteMany}}),{initializeFormRevisionAttachments:xh,addFormRevisionAttachment:em,addFormRevisionAttachments:tm,setFormRevisionAttachment:sm,setFormRevisionAttachments:im,updateFormRevisionAttachment:nm,updateFormRevisionAttachments:am,deleteFormRevisionAttachment:cm,deleteFormRevisionAttachments:dm}=li.actions,vt=t=>t.formRevisionAttachmentReducer.instances,rm=o.createSelector([vt],t=>Object.values(t)),um=f(o.createSelector([vt,(t,s)=>s],(t,s)=>t[s])),lm=f(o.createSelector([rm,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),jP=f(o.createSelector([vt,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.form_revision===s)))),om=li.reducer,Oe=F(t=>t.uuid),hm={instances:{}},oi=o.createSlice({name:"formRevisions",initialState:hm,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,hm)),reducers:{initializeFormRevisions:Oe.initialize,addFormRevision:Oe.addOne,addFormRevisions:Oe.addMany,setFormRevision:Oe.setOne,setFormRevisions:Oe.setMany,updateFormRevision:Oe.updateOne,updateFormRevisions:Oe.updateMany,deleteFormRevision:Oe.deleteOne,deleteFormRevisions:Oe.deleteMany}}),{initializeFormRevisions:mm,addFormRevision:hi,addFormRevisions:mi,setFormRevision:ym,setFormRevisions:pm,updateFormRevision:Am,updateFormRevisions:fm,deleteFormRevision:yi,deleteFormRevisions:pi}=oi.actions,Ai=t=>t.formRevisionReducer.instances,Bt=o.createSelector([Ai],t=>Object.values(t)),Sm=t=>s=>s.formRevisionReducer.instances[t],Tm=f(o.createSelector([Bt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),DP=f(o.createSelector([Bt,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),Im=f(o.createSelector([Bt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),Om=oi.reducer,Pe=F(t=>t.uuid),Pm={instances:{}},fi=o.createSlice({name:"forms",initialState:Pm,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Pm)),reducers:{initializeForms:Pe.initialize,addForm:Pe.addOne,addForms:Pe.addMany,setForm:Pe.setOne,setForms:Pe.setMany,updateForm:Pe.updateOne,updateForms:Pe.updateMany,deleteForm:Pe.deleteOne,deleteForms:Pe.deleteMany}}),{initializeForms:Fm,addForm:gm,addForms:bm,setForm:Mm,setForms:_m,updateForm:Rm,updateForms:wm,deleteForm:Em,deleteForms:Vm}=fi.actions,vm=fi.reducer,Bm=t=>t.formReducer.instances,Si=o.createSelector([Bm],t=>Object.values(t)),zm=t=>s=>s.formReducer.instances[t],jm=f(o.createSelector([Si,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),qP=f(o.createSelector([Si,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Fe=F(t=>t.uuid),Dm={instances:{}},Ti=o.createSlice({name:"formSubmissionAttachments",initialState:Dm,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Dm)),reducers:{initializeFormSubmissionAttachments:Fe.initialize,addFormSubmissionAttachment:Fe.addOne,addFormSubmissionAttachments:Fe.addMany,setFormSubmissionAttachment:Fe.setOne,setFormSubmissionAttachments:Fe.setMany,updateFormSubmissionAttachment:Fe.updateOne,updateFormSubmissionAttachments:Fe.updateMany,deleteFormSubmissionAttachment:Fe.deleteOne,deleteFormSubmissionAttachments:Fe.deleteMany}}),{initializeFormSubmissionAttachments:qm,addFormSubmissionAttachment:$m,addFormSubmissionAttachments:Ii,setFormSubmissionAttachment:Cm,setFormSubmissionAttachments:Um,updateFormSubmissionAttachment:Lm,updateFormSubmissionAttachments:Nm,deleteFormSubmissionAttachment:Gm,deleteFormSubmissionAttachments:Oi}=Ti.actions,Pi=t=>t.formSubmissionAttachmentReducer.instances,Fi=o.createSelector([Pi],t=>Object.values(t)),km=f(o.createSelector([Pi,(t,s)=>s],(t,s)=>t[s])),gi=f(o.createSelector([Fi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(n=>e.has(n.uuid)))})),Hm=gi,Km=f(o.createSelector([Fi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_submission===s)))),Wm=Ti.reducer,ge=F(t=>t.uuid),Ym={instances:{}},bi=o.createSlice({name:"formSubmissions",initialState:Ym,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Ym)),reducers:{initializeFormSubmissions:ge.initialize,setFormSubmission:ge.setOne,setFormSubmissions:ge.setMany,addFormSubmission:ge.addOne,addFormSubmissions:ge.addMany,updateFormSubmission:ge.updateOne,updateFormSubmissions:ge.updateMany,deleteFormSubmission:ge.deleteOne,deleteFormSubmissions:ge.deleteMany}}),{initializeFormSubmissions:Zm,setFormSubmission:Jm,setFormSubmissions:Xm,addFormSubmission:Qm,addFormSubmissions:Mi,updateFormSubmission:xm,updateFormSubmissions:ey,deleteFormSubmission:ty,deleteFormSubmissions:_i}=bi.actions,Ri=t=>t.formSubmissionReducer.instances,sy=o.createSelector([Ri],t=>Object.values(t)),iy=t=>s=>s.formSubmissionReducer.instances[t],ny=f(o.createSelector([sy,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ay=f(o.createSelector([Ri,Ai,(t,s)=>s],(t,s,e)=>{const n=new Set;for(const a of Object.values(s))a.form===e&&n.add(a.uuid);return Object.values(t).filter(a=>n.has(a.form_revision))})),cy=bi.reducer,be=F(t=>t.uuid),dy={instances:{}},wi=o.createSlice({name:"geoImages",initialState:dy,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,dy)),reducers:{initializeGeoImages:be.initialize,setGeoImage:be.setOne,setGeoImages:be.setMany,addGeoImage:be.addOne,addGeoImages:be.addMany,updateGeoImage:be.updateOne,updateGeoImages:be.updateMany,deleteGeoImage:be.deleteOne,deleteGeoImages:be.deleteMany}}),{initializeGeoImages:ry,setGeoImage:uy,setGeoImages:ly,addGeoImage:oy,addGeoImages:hy,updateGeoImage:my,updateGeoImages:yy,deleteGeoImage:py,deleteGeoImages:Ay}=wi.actions,fy=t=>t.geoImageReducer.instances,Ei=o.createSelector([fy],t=>Object.values(t)),Sy=t=>s=>s.geoImageReducer.instances[t],Ty=f(o.createSelector([Ei,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$P=f(o.createSelector([Ei,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),Iy=wi.reducer,Me=F(t=>t.uuid),Oy={instances:{}},Vi=o.createSlice({name:"issueAssociations",initialState:Oy,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Oy)),reducers:{initializeIssueAssociations:Me.initialize,addIssueAssociation:Me.addOne,addIssueAssociations:Me.addMany,setIssueAssociation:Me.setOne,setIssueAssociations:Me.setMany,updateIssueAssociation:Me.updateOne,updateIssueAssociations:Me.updateMany,deleteIssueAssociation:Me.deleteOne,deleteIssueAssociations:Me.deleteMany}}),{initializeIssueAssociations:Py,setIssueAssociations:Fy,setIssueAssociation:gy,updateIssueAssociation:by,updateIssueAssociations:My,addIssueAssociation:_y,addIssueAssociations:et,deleteIssueAssociation:Ry,deleteIssueAssociations:tt}=Vi.actions,wy=t=>t.issueAssociationReducer.instances,st=o.createSelector([wy],t=>Object.values(t)),Ey=t=>s=>s.issueAssociationReducer.instances[t],Vy=f(o.createSelector([st,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),vy=f(o.createSelector([st,(t,s)=>s],(t,s)=>S(t.filter(({associated_issue:e})=>e===s)))),By=f(o.createSelector([st,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({associated_issue:n})=>e.has(n)))})),zy=f(o.createSelector([st,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({issue:n})=>n&&e.has(n)))})),jy=f(o.createSelector([st,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>e===s)))),Dy=f(o.createSelector([st,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>e===s)))),qy=Vi.reducer,_e=F(t=>t.uuid),$y={instances:{}},vi=o.createSlice({name:"issueAttachments",initialState:$y,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,$y)),reducers:{initializeIssueAttachments:_e.initialize,addIssueAttachment:_e.addOne,addIssueAttachments:_e.addMany,setIssueAttachment:_e.setOne,setIssueAttachments:_e.setMany,updateIssueAttachment:_e.updateOne,updateIssueAttachments:_e.updateMany,deleteIssueAttachment:_e.deleteOne,deleteIssueAttachments:_e.deleteMany}}),{initializeIssueAttachments:Cy,addIssueAttachment:Uy,addIssueAttachments:Bi,setIssueAttachment:Ly,setIssueAttachments:Ny,updateIssueAttachment:Gy,updateIssueAttachments:ky,deleteIssueAttachment:Hy,deleteIssueAttachments:zi}=vi.actions,Ky=t=>t.issueAttachmentReducer.instances,ji=o.createSelector([Ky],t=>Object.values(t)),Wy=f(o.createSelector([ji,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>s===e)))),Yy=t=>s=>s.issueAttachmentReducer.instances[t],Zy=f(o.createSelector([ji,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Jy=vi.reducer,Re=F(t=>t.uuid),Xy={instances:{}},Di=o.createSlice({name:"issueCommentAttachments",initialState:Xy,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Xy)),reducers:{initializeIssueCommentAttachments:Re.initialize,addIssueCommentAttachment:Re.addOne,addIssueCommentAttachments:Re.addMany,setIssueCommentAttachment:Re.setOne,setIssueCommentAttachments:Re.setMany,updateIssueCommentAttachment:Re.updateOne,updateIssueCommentAttachments:Re.updateMany,deleteIssueCommentAttachment:Re.deleteOne,deleteIssueCommentAttachments:Re.deleteMany}}),{initializeIssueCommentAttachments:Qy,addIssueCommentAttachment:xy,addIssueCommentAttachments:ep,setIssueCommentAttachment:tp,setIssueCommentAttachments:sp,updateIssueCommentAttachment:ip,updateIssueCommentAttachments:np,deleteIssueCommentAttachment:ap,deleteIssueCommentAttachments:cp}=Di.actions,dp=t=>t.issueCommentAttachmentReducer.instances,qi=o.createSelector([dp],t=>Object.values(t)),rp=t=>s=>s.issueCommentAttachmentReducer.instances[t],up=f(o.createSelector([qi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),CP=f(o.createSelector([qi,(t,s)=>s],(t,s)=>S(t.filter(({issue_comment:e})=>s===e)))),lp=Di.reducer,we=F(t=>t.uuid),op={instances:{}},$i=o.createSlice({name:"issueComments",initialState:op,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,op)),reducers:{initializeIssueComments:we.initialize,addIssueComment:we.addOne,addIssueComments:we.addMany,setIssueComment:we.setOne,setIssueComments:we.setMany,updateIssueComment:we.updateOne,updateIssueComments:we.updateMany,deleteIssueComment:we.deleteOne,deleteIssueComments:we.deleteMany}}),{initializeIssueComments:hp,addIssueComment:mp,addIssueComments:yp,setIssueComment:pp,setIssueComments:Ap,updateIssueComment:fp,updateIssueComments:Sp,deleteIssueComment:Tp,deleteIssueComments:Ip}=$i.actions,Ci=t=>t.issueCommentReducer.instances,Op=t=>s=>s.issueCommentReducer.instances[t],Pp=f(o.createSelector([Ci,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(Object.values(t).filter(({uuid:n})=>e.has(n)))})),UP=f(o.createSelector([Ci,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.issue===s)))),Fp=$i.reducer,Ee=F(t=>t.uuid),gp={instances:{}},Ui=o.createSlice({name:"issues",initialState:gp,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,gp)),reducers:{initializeIssues:Ee.initialize,addIssue:Ee.addOne,addIssues:Ee.addMany,setIssue:Ee.setOne,setIssues:Ee.setMany,updateIssue:Ee.updateOne,updateIssues:Ee.updateMany,deleteIssue:Ee.deleteOne,deleteIssues:Ee.deleteMany}}),{initializeIssues:bp,addIssue:Mp,addIssues:Li,setIssue:_p,setIssues:Rp,updateIssue:wp,updateIssues:Ep,deleteIssue:Vp,deleteIssues:Ni}=Ui.actions,vp=t=>t.issueReducer.instances,zt=o.createSelector([vp],t=>Object.values(t)),Bp=t=>s=>s.issueReducer.instances[t],zp=f(o.createSelector([zt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),LP=f(o.createSelector([zt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),jp=f(o.createSelector([zt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s))),Dp=Ui.reducer,Ve=F(t=>t.uuid),qp={instances:{}},Gi=o.createSlice({name:"issueTypeAttachments",initialState:qp,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,qp)),reducers:{initializeIssueTypeAttachments:Ve.initialize,addIssueTypeAttachment:Ve.addOne,addIssueTypeAttachments:Ve.addMany,setIssueTypeAttachment:Ve.setOne,setIssueTypeAttachments:Ve.setMany,updateIssueTypeAttachment:Ve.updateOne,updateIssueTypeAttachments:Ve.updateMany,deleteIssueTypeAttachment:Ve.deleteOne,deleteIssueTypeAttachments:Ve.deleteMany}}),{initializeIssueTypeAttachments:$p,addIssueTypeAttachment:Cp,addIssueTypeAttachments:Up,setIssueTypeAttachment:Lp,setIssueTypeAttachments:Np,updateIssueTypeAttachment:Gp,updateIssueTypeAttachments:kp,deleteIssueTypeAttachment:Hp,deleteIssueTypeAttachments:Kp}=Gi.actions,Wp=t=>t.issueTypeAttachmentReducer.instances,ki=o.createSelector([Wp],t=>Object.values(t)),Yp=t=>s=>s.issueTypeAttachmentReducer.instances[t],Zp=f(o.createSelector([ki,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),NP=f(o.createSelector([ki,(t,s)=>s],(t,s)=>S(t.filter(({issue_type:e})=>s===e)))),Jp=Gi.reducer,ve=F(t=>t.uuid),Xp={instances:{}},Hi=o.createSlice({name:"issueTypeFieldsAttachments",initialState:Xp,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Xp)),reducers:{initializeIssueTypeFieldsAttachments:ve.initialize,addIssueTypeFieldsAttachment:ve.addOne,addIssueTypeFieldsAttachments:ve.addMany,setIssueTypeFieldsAttachment:ve.setOne,setIssueTypeFieldsAttachments:ve.setMany,updateIssueTypeFieldsAttachment:ve.updateOne,updateIssueTypeFieldsAttachments:ve.updateMany,deleteIssueTypeFieldsAttachment:ve.deleteOne,deleteIssueTypeFieldsAttachments:ve.deleteMany}}),{initializeIssueTypeFieldsAttachments:Qp,addIssueTypeFieldsAttachment:xp,addIssueTypeFieldsAttachments:eA,setIssueTypeFieldsAttachment:tA,setIssueTypeFieldsAttachments:sA,updateIssueTypeFieldsAttachment:iA,updateIssueTypeFieldsAttachments:nA,deleteIssueTypeFieldsAttachment:aA,deleteIssueTypeFieldsAttachments:cA}=Hi.actions,dA=t=>t.issueTypeFieldsAttachmentReducer.instances,Ki=o.createSelector([dA],t=>Object.values(t)),GP=f(o.createSelector([Ki,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),rA=t=>s=>s.issueTypeFieldsAttachmentReducer.instances[t],uA=f(o.createSelector([Ki,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),lA=Hi.reducer,Be=F(t=>t.uuid),oA={instances:{}},Wi=o.createSlice({name:"issueTypeFieldValues",initialState:oA,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,oA)),reducers:{initializeIssueTypeFieldValues:Be.initialize,addIssueTypeFieldValues:Be.addOne,addIssueTypeFieldValuesMany:Be.addMany,setIssueTypeFieldValues:Be.setOne,setIssueTypeFieldValuesMany:Be.setMany,updateIssueTypeFieldValues:Be.updateOne,updateIssueTypeFieldValuesMany:Be.updateMany,deleteIssueTypeFieldValues:Be.deleteOne,deleteIssueTypeFieldValuesMany:Be.deleteMany}}),{initializeIssueTypeFieldValues:hA,addIssueTypeFieldValues:mA,addIssueTypeFieldValuesMany:yA,setIssueTypeFieldValues:pA,setIssueTypeFieldValuesMany:AA,updateIssueTypeFieldValues:fA,updateIssueTypeFieldValuesMany:SA,deleteIssueTypeFieldValues:TA,deleteIssueTypeFieldValuesMany:IA}=Wi.actions,OA=t=>t.issueTypeFieldValuesReducer.instances,jt=o.createSelector([OA],t=>Object.values(t)),kP=f(o.createSelector([jt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),PA=t=>s=>s.issueTypeFieldValuesReducer.instances[t],FA=f(o.createSelector([jt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),gA=Wi.reducer,ze=F(t=>t.uuid),bA={instances:{}},Yi=o.createSlice({name:"issueTypeFields",initialState:bA,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,bA)),reducers:{initializeIssueTypeFields:ze.initialize,addIssueTypeFields:ze.addOne,addIssueTypeFieldsMany:ze.addMany,setIssueTypeFields:ze.setOne,setIssueTypeFieldsMany:ze.setMany,updateIssueTypeFields:ze.updateOne,updateIssueTypeFieldsMany:ze.updateMany,deleteIssueTypeFields:ze.deleteOne,deleteIssueTypeFieldsMany:ze.deleteMany}}),{initializeIssueTypeFields:MA,addIssueTypeFields:_A,addIssueTypeFieldsMany:RA,setIssueTypeFields:wA,setIssueTypeFieldsMany:EA,updateIssueTypeFields:VA,updateIssueTypeFieldsMany:vA,deleteIssueTypeFields:BA,deleteIssueTypeFieldsMany:zA}=Yi.actions,jA=t=>t.issueTypeFieldsReducer.instances,yt=o.createSelector([jA],t=>Object.values(t)),HP=f(o.createSelector([yt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),KP=f(o.createSelector([yt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),WP=f(o.createSelector([yt,jt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.issue_type===e).map(a=>a.uuid));return S(s.filter(a=>n.has(a.fields_revision)))})),DA=t=>s=>s.issueTypeFieldsReducer.instances[t],qA=f(o.createSelector([yt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$A=Yi.reducer,je=F(t=>t.uuid),CA={instances:{}},Zi=o.createSlice({name:"issueTypeFieldValuesAttachments",initialState:CA,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,CA)),reducers:{initializeIssueTypeFieldValuesAttachments:je.initialize,addIssueTypeFieldValuesAttachment:je.addOne,addIssueTypeFieldValuesAttachments:je.addMany,setIssueTypeFieldValuesAttachment:je.setOne,setIssueTypeFieldValuesAttachments:je.setMany,updateIssueTypeFieldValuesAttachment:je.updateOne,updateIssueTypeFieldValuesAttachments:je.updateMany,deleteIssueTypeFieldValuesAttachment:je.deleteOne,deleteIssueTypeFieldValuesAttachments:je.deleteMany}}),{initializeIssueTypeFieldValuesAttachments:UA,addIssueTypeFieldValuesAttachment:LA,addIssueTypeFieldValuesAttachments:Ji,setIssueTypeFieldValuesAttachment:NA,setIssueTypeFieldValuesAttachments:GA,updateIssueTypeFieldValuesAttachment:kA,updateIssueTypeFieldValuesAttachments:HA,deleteIssueTypeFieldValuesAttachment:KA,deleteIssueTypeFieldValuesAttachments:Xi}=Zi.actions,WA=t=>t.issueTypeFieldValuesAttachmentReducer.instances,Qi=o.createSelector([WA],t=>Object.values(t)),YA=t=>s=>s.issueTypeFieldValuesAttachmentReducer.instances[t],ZA=f(o.createSelector([Qi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),JA=f(o.createSelector([Qi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),XA=Zi.reducer,De=F(t=>t.uuid),QA={instances:{}},xi=o.createSlice({name:"issueTypeIdentifiers",initialState:QA,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,QA)),reducers:{initializeIssueTypeIdentifiers:De.initialize,addIssueTypeIdentifier:De.addOne,addIssueTypeIdentifiers:De.addMany,setIssueTypeIdentifier:De.setOne,setIssueTypeIdentifiers:De.setMany,updateIssueTypeIdentifier:De.updateOne,updateIssueTypeIdentifiers:De.updateMany,deleteIssueTypeIdentifier:De.deleteOne,deleteIssueTypeIdentifiers:De.deleteMany}}),{initializeIssueTypeIdentifiers:xA,addIssueTypeIdentifier:ef,addIssueTypeIdentifiers:tf,setIssueTypeIdentifier:sf,setIssueTypeIdentifiers:nf,updateIssueTypeIdentifier:af,updateIssueTypeIdentifiers:cf,deleteIssueTypeIdentifier:df,deleteIssueTypeIdentifiers:rf}=xi.actions,uf=t=>t.issueTypeIdentifierReducer.instances,en=o.createSelector([uf],t=>Object.values(t)),lf=t=>s=>s.issueTypeIdentifierReducer.instances[t],of=f(o.createSelector([en,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),YP=f(o.createSelector([en,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),hf=xi.reducer,qe=F(t=>t.uuid),mf={instances:{}},tn=o.createSlice({name:"issueTypeIdentifierValues",initialState:mf,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,mf)),reducers:{initializeIssueTypeIdentifierValues:qe.initialize,addIssueTypeIdentifierValue:qe.addOne,addIssueTypeIdentifierValues:qe.addMany,setIssueTypeIdentifierValue:qe.setOne,setIssueTypeIdentifierValues:qe.setMany,updateIssueTypeIdentifierValue:qe.updateOne,updateIssueTypeIdentifierValues:qe.updateMany,deleteIssueTypeIdentifierValue:qe.deleteOne,deleteIssueTypeIdentifierValues:qe.deleteMany}}),{initializeIssueTypeIdentifierValues:yf,addIssueTypeIdentifierValue:pf,addIssueTypeIdentifierValues:Af,setIssueTypeIdentifierValue:ff,setIssueTypeIdentifierValues:Sf,updateIssueTypeIdentifierValue:Tf,updateIssueTypeIdentifierValues:If,deleteIssueTypeIdentifierValue:Of,deleteIssueTypeIdentifierValues:Pf}=tn.actions,Ff=t=>t.issueTypeIdentifierValueReducer.instances,Dt=o.createSelector([Ff],t=>Object.values(t)),gf=t=>s=>s.issueTypeIdentifierValueReducer.instances[t],bf=f(o.createSelector([Dt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ZP=f(o.createSelector([Dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),JP=f(o.createSelector([Dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type_identifier===s)))),Mf=tn.reducer,$e=F(t=>t.uuid),_f={instances:{}},sn=o.createSlice({name:"issueTypes",initialState:_f,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,_f)),reducers:{initializeIssueTypes:$e.initialize,addIssueType:$e.addOne,addIssueTypes:$e.addMany,setIssueType:$e.setOne,setIssueTypes:$e.setMany,updateIssueType:$e.updateOne,updateIssueTypes:$e.updateMany,deleteIssueType:$e.deleteOne,deleteIssueTypes:$e.deleteMany}}),{initializeIssueTypes:Rf,addIssueType:wf,addIssueTypes:Ef,setIssueType:Vf,setIssueTypes:vf,updateIssueType:Bf,updateIssueTypes:zf,deleteIssueType:jf,deleteIssueTypes:Df}=sn.actions,qf=t=>t.issueTypeReducer.instances,nn=o.createSelector(qf,t=>Object.values(t)),$f=t=>s=>s.issueTypeReducer.instances[t],Cf=f(o.createSelector([nn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),XP=f(o.createSelector([nn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Uf=sn.reducer,Ce=F(t=>t.uuid),Lf={instances:{}},an=o.createSlice({name:"issueTypeStatuses",initialState:Lf,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Lf)),reducers:{initializeIssueTypeStatuses:Ce.initialize,addIssueTypeStatus:Ce.addOne,addIssueTypeStatuses:Ce.addMany,setIssueTypeStatus:Ce.setOne,setIssueTypeStatuses:Ce.setMany,updateIssueTypeStatus:Ce.updateOne,updateIssueTypeStatuses:Ce.updateMany,deleteIssueTypeStatus:Ce.deleteOne,deleteIssueTypeStatuses:Ce.deleteMany}}),{initializeIssueTypeStatuses:Nf,addIssueTypeStatus:Gf,addIssueTypeStatuses:kf,setIssueTypeStatus:Hf,setIssueTypeStatuses:Kf,updateIssueTypeStatus:Wf,updateIssueTypeStatuses:Yf,deleteIssueTypeStatus:Zf,deleteIssueTypeStatuses:Jf}=an.actions,Xf=t=>t.issueTypeStatusReducer.instances,cn=o.createSelector([Xf],t=>S(Object.values(t).toSorted(sa))),dn=t=>s=>s.issueTypeStatusReducer.instances[t],Qf=f(o.createSelector([cn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),QP=f(o.createSelector([cn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),xf=an.reducer,Ue=F(t=>t.uuid),eS={instances:{}},rn=o.createSlice({name:"issueUpdates",initialState:eS,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,eS)),reducers:{initializeIssueUpdates:Ue.initialize,addIssueUpdate:Ue.addOne,addIssueUpdates:Ue.addMany,setIssueUpdate:Ue.setOne,setIssueUpdates:Ue.setMany,updateIssueUpdate:Ue.updateOne,updateIssueUpdates:Ue.updateMany,deleteIssueUpdate:Ue.deleteOne,deleteIssueUpdates:Ue.deleteMany}}),{initializeIssueUpdates:tS,addIssueUpdate:un,addIssueUpdates:ln,setIssueUpdate:sS,setIssueUpdates:iS,updateIssueUpdate:nS,updateIssueUpdates:aS,deleteIssueUpdate:on,deleteIssueUpdates:hn}=rn.actions,mn=t=>t.issueUpdateReducer.instances,yn=o.createSelector([mn],t=>Object.values(t)),cS=f(o.createSelector([mn,(t,s)=>s],(t,s)=>t[s])),dS=f(o.createSelector([yn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),rS=f(o.createSelector([yn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),uS=rn.reducer,Le=F(t=>t.id),lS={instances:{},currentUser:null},pn=o.createSlice({name:"users",initialState:lS,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,lS)),reducers:{initializeUsers:Le.initialize,setUsers:Le.setMany,setUser:Le.setOne,addUsers:Le.addMany,addUser:Le.addOne,updateUsers:Le.updateMany,updateUser:Le.updateOne,deleteUser:Le.deleteOne,deleteUsers:Le.deleteMany,setCurrentUser:(t,s)=>{t.currentUser=s.payload},setProfilePicture:(t,s)=>{if(!t.currentUser)return;t.currentUser.profile.file_url=s.payload.file_url??null,t.currentUser.profile.file_sha1=s.payload.file_sha1??null,t.currentUser.profile.file_extension=s.payload.file_extension??null;const e=t.instances[t.currentUser.id];if(!e)throw new Error("Unable to find current user in users slice");e.profile.file_url=s.payload.file_url??null,e.profile.file_sha1=s.payload.file_sha1??null,t.currentUser.profile.file_extension=s.payload.file_extension??null}}}),{initializeUsers:oS,setUsers:hS,setUser:mS,addUsers:yS,addUser:An,updateUsers:pS,updateUser:AS,deleteUser:fn,deleteUsers:fS,setCurrentUser:xP,setProfilePicture:eF}=pn.actions,SS=pn.reducer,TS=t=>t.userReducer.currentUser,Sn=t=>t.userReducer.instances,qt=o.createSelector([Sn],t=>Object.values(t)),$t=t=>s=>s.userReducer.instances[t],IS=f(o.createSelector([qt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({id:n})=>e.has(n)))})),Ne=F(t=>t.uuid),OS={instances:{}},Tn=o.createSlice({name:"organizationAccess",initialState:OS,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,OS)),reducers:{initializeOrganizationAccesses:Ne.initialize,addOrganizationAccess:Ne.addOne,addOrganizationAccesses:Ne.addMany,setOrganizationAccess:Ne.setOne,setOrganizationAccesses:Ne.setMany,updateOrganizationAccess:Ne.updateOne,updateOrganizationAccesses:Ne.updateMany,deleteOrganizationAccess:Ne.deleteOne,deleteOrganizationAccesses:Ne.deleteMany}}),{initializeOrganizationAccesses:PS,addOrganizationAccess:FS,addOrganizationAccesses:gS,setOrganizationAccess:bS,setOrganizationAccesses:MS,updateOrganizationAccess:_S,updateOrganizationAccesses:RS,deleteOrganizationAccess:wS,deleteOrganizationAccesses:ES}=Tn.actions,VS=Tn.reducer,Ct=t=>t.organizationAccessReducer.instances,vS=t=>s=>s.organizationAccessReducer.instances[t],BS=f(o.createSelector([Ct,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(Object.values(t).filter(({uuid:n})=>e.has(n)))})),tF=o.createSelector([TS,Ct],(t,s)=>Object.values(s).find(n=>n.user===(t==null?void 0:t.id))??null),zS=o.createSelector([Ct],t=>{const s={};for(const e of Object.values(t))s[e.user]=e;return St(s)}),sF=f(o.createSelector([Sn,zS,(t,s)=>s],(t,s,e)=>S(Object.values(t).filter(n=>{const a=s[n.id];return!!a&&a.organization===e})))),Ge=F(t=>t.uuid),jS={instances:{}},In=o.createSlice({name:"organizations",initialState:jS,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,jS)),reducers:{initializeOrganizations:Ge.initialize,setOrganizations:Ge.setMany,setOrganization:Ge.setOne,addOrganizations:Ge.addMany,addOrganization:Ge.addOne,updateOrganizations:Ge.updateMany,updateOrganization:Ge.updateOne,deleteOrganization:Ge.deleteOne,deleteOrganizations:Ge.deleteMany}}),{initializeOrganizations:DS,setOrganizations:qS,setOrganization:$S,addOrganizations:CS,addOrganization:US,updateOrganizations:LS,updateOrganization:NS,deleteOrganization:GS,deleteOrganizations:kS}=In.actions,HS=t=>t.organizationReducer.instances,KS=o.createSelector([HS],t=>Object.values(t)),WS=t=>s=>s.organizationReducer.instances[t],YS=f(o.createSelector([KS,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ZS=In.reducer,JS=(t,s,e)=>{const n=t.uuid?t:{...t,uuid:Xe.v4()};return{payload:n,type:"",meta:{offline:{effect:{timestamp:new Date().toISOString(),request:n,BASE_URL:s,serviceName:e}}}}},XS={deletedRequests:[],latestRetryTime:0},On=o.createSlice({name:"outbox",initialState:XS,extraReducers:t=>t.addCase(O,s=>Object.assign(s,XS)),reducers:{enqueueRequest:{reducer:(t,s)=>t,prepare:t=>{console.debug("Preparing to enqueue request",t.url);const{BASE_URL:s,serviceName:e,...n}=t;return JS(n,s,e)}},markForDeletion(t,s){t.deletedRequests.push(s.payload)},markAsDeleted(t,s){const e=t.deletedRequests.indexOf(s.payload);e!==-1&&t.deletedRequests.splice(e,1)},_setLatestRetryTime:(t,s)=>{t.latestRetryTime=s.payload}}}),iF=t=>t.outboxReducer.deletedRequests,nF=t=>t.outboxReducer.latestRetryTime,{enqueueRequest:QS,markForDeletion:aF,markAsDeleted:xS,_setLatestRetryTime:eT}=On.actions,tT=On.reducer,ke=F(t=>t.uuid),sT={instances:{}},Pn=o.createSlice({name:"projectAccess",initialState:sT,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,sT)),reducers:{initializeProjectAccesses:ke.initialize,addProjectAccess:ke.addOne,addProjectAccesses:ke.addMany,setProjectAccess:ke.setOne,setProjectAccesses:ke.setMany,updateProjectAccess:ke.updateOne,updateProjectAccesses:ke.updateMany,deleteProjectAccess:ke.deleteOne,deleteProjectAccesses:ke.deleteMany}}),{initializeProjectAccesses:iT,addProjectAccess:nT,addProjectAccesses:aT,setProjectAccess:cT,setProjectAccesses:dT,updateProjectAccess:rT,updateProjectAccesses:uT,deleteProjectAccess:lT,deleteProjectAccesses:oT}=Pn.actions,hT=Pn.reducer,Fn=t=>t.projectAccessReducer.instances,pt=o.createSelector(Fn,t=>Object.values(t)),mT=t=>s=>s.projectAccessReducer.instances[t],yT=f(o.createSelector([pt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),cF=f(o.createSelector([Fn,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.project===s)))),dF=f(o.createSelector([pt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.project===s))e[n.user]=n;return e})),rF=f(o.createSelector([qt,pt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.project===e).map(a=>a.user));return S(t.filter(a=>n.has(a.id)))})),He=F(t=>t.uuid),pT={instances:{}},gn=o.createSlice({name:"projectAttachments",initialState:pT,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,pT)),reducers:{initializeProjectAttachments:He.initialize,addProjectAttachment:He.addOne,addProjectAttachments:He.addMany,setProjectAttachment:He.setOne,setProjectAttachments:He.setMany,updateProjectAttachment:He.updateOne,updateProjectAttachments:He.updateMany,deleteProjectAttachment:He.deleteOne,deleteProjectAttachments:He.deleteMany}}),{initializeProjectAttachments:AT,addProjectAttachment:fT,addProjectAttachments:ST,setProjectAttachment:TT,setProjectAttachments:IT,updateProjectAttachment:OT,updateProjectAttachments:PT,deleteProjectAttachment:FT,deleteProjectAttachments:gT}=gn.actions,bT=t=>t.projectAttachmentReducer.instances,bn=o.createSelector([bT],t=>Object.values(t)),MT=t=>s=>s.projectAttachmentReducer.instances[t],_T=f(o.createSelector([bn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),uF=f(o.createSelector([bn,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>s===e)))),RT=gn.reducer,Ke=F(t=>t.uuid),wT={instances:{}},Mn=o.createSlice({name:"projectFiles",initialState:wT,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,wT)),reducers:{initializeProjectFiles:Ke.initialize,setProjectFile:Ke.setOne,setProjectFiles:Ke.setMany,addProjectFile:Ke.addOne,addProjectFiles:Ke.addMany,updateProjectFile:Ke.updateOne,updateProjectFiles:Ke.updateMany,deleteProjectFile:Ke.deleteOne,deleteProjectFiles:Ke.deleteMany}}),{initializeProjectFiles:ET,setProjectFile:VT,setProjectFiles:vT,addProjectFile:BT,addProjectFiles:zT,updateProjectFile:jT,updateProjectFiles:DT,deleteProjectFile:qT,deleteProjectFiles:$T}=Mn.actions,CT=t=>t.projectFileReducer.instances,UT=o.createSelector([CT],t=>S(Object.values(t).sort((s,e)=>s.z_index-e.z_index))),LT=t=>s=>s.projectFileReducer.instances[t],NT=f(o.createSelector([UT,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),GT=Mn.reducer,We=F(t=>t.uuid),kT={instances:{}},_n=o.createSlice({name:"projects",initialState:kT,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,kT)),reducers:{initializeProjects:We.initialize,setProjects:We.setMany,setProject:We.setOne,addProjects:We.addMany,addProject:We.addOne,updateProjects:We.updateMany,updateProject:We.updateOne,deleteProject:We.deleteOne,deleteProjects:We.deleteMany}}),{initializeProjects:HT,setProjects:KT,setProject:WT,addProjects:YT,addProject:ZT,updateProjects:JT,updateProject:XT,deleteProject:QT,deleteProjects:xT}=_n.actions,eI=_n.reducer,tI=t=>t.projectReducer.instances,Ut=o.createSelector([tI],t=>Object.values(t)),sI=t=>s=>s.projectReducer.instances[t],iI=f(o.createSelector([Ut,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),lF=f(o.createSelector([Ut,pt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.user===e).map(a=>a.project));return S(t.filter(a=>n.has(a.uuid)))})),oF=f(o.createSelector([Ut,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),hF={isRehydrated:!1},Rn=o.createSlice({name:"rehydrated",initialState:hF,reducers:{setRehydrated:(t,s)=>{t.isRehydrated=s.payload}}}),{setRehydrated:mF}=Rn.actions,yF=t=>t.rehydratedReducer.isRehydrated,nI=Rn.reducer,Ye=F(t=>t.uuid),aI={instances:{}},wn=o.createSlice({name:"teamMemberships",initialState:aI,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,aI)),reducers:{initializeTeamMemberships:Ye.initialize,addTeamMembership:Ye.addOne,addTeamMemberships:Ye.addMany,setTeamMembership:Ye.setOne,setTeamMemberships:Ye.setMany,updateTeamMembership:Ye.updateOne,updateTeamMemberships:Ye.updateMany,deleteTeamMembership:Ye.deleteOne,deleteTeamMemberships:Ye.deleteMany}}),{initializeTeamMemberships:cI,addTeamMembership:dI,addTeamMemberships:rI,setTeamMembership:uI,setTeamMemberships:lI,updateTeamMembership:oI,updateTeamMemberships:hI,deleteTeamMembership:mI,deleteTeamMemberships:yI}=wn.actions,pI=wn.reducer,AI=t=>t.teamMembershipReducer.instances,Lt=o.createSelector([AI],t=>Object.values(t)),fI=t=>s=>s.teamMembershipReducer.instances[t],SI=f(o.createSelector([Lt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),pF=f(o.createSelector([Lt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.team===s))e[n.user]=n;return e})),AF=f(o.createSelector([qt,Lt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.team===e).map(a=>a.user));return S(t.filter(a=>n.has(a.id)))})),Ze=F(t=>t.uuid),TI={instances:{}},En=o.createSlice({name:"teams",initialState:TI,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,TI)),reducers:{initializeTeams:Ze.initialize,addTeam:Ze.addOne,addTeams:Ze.addMany,setTeam:Ze.setOne,setTeams:Ze.setMany,updateTeam:Ze.updateOne,updateTeams:Ze.updateMany,deleteTeam:Ze.deleteOne,deleteTeams:Ze.deleteMany}}),{initializeTeams:II,addTeam:OI,addTeams:PI,setTeam:FI,setTeams:gI,updateTeam:bI,updateTeams:MI,deleteTeam:_I,deleteTeams:RI}=En.actions,wI=t=>t.teamReducer.instances,Vn=o.createSelector([wI],t=>Object.values(t)),EI=t=>s=>s.teamReducer.instances[t],VI=f(o.createSelector([Vn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),fF=f(o.createSelector([Vn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),vI=En.reducer,SF={version:0},BI=o.createSlice({name:"versioning",initialState:SF,reducers:{}}),zI=BI.reducer,vn={outboxReducer:tT,fileReducer:Fh,authReducer:vo},TF=o.combineReducers(vn),jI={...vn,[ot]:zI,assetReducer:$r,assetAttachmentReducer:Fa,assetStageCompletionReducer:Zr,assetStageReducer:lu,assetTypeReducer:po,assetTypeAttachmentReducer:bu,issueReducer:Dp,issueAttachmentReducer:Jy,issueTypeReducer:Uf,issueTypeAttachmentReducer:Jp,organizationReducer:ZS,projectReducer:eI,projectAttachmentReducer:RT,projectAccessReducer:hT,organizationAccessReducer:VS,projectFileReducer:GT,rehydratedReducer:nI,formReducer:vm,formRevisionReducer:Om,formRevisionAttachmentReducer:om,formSubmissionAttachmentReducer:Wm,formSubmissionReducer:cy,formIdentifierReducer:qh,formIdentifierValueReducer:Xh,userReducer:SS,emailDomainsReducer:Ih,documentsReducer:ih,documentAttachmentReducer:Ko,teamReducer:vI,agentsReducer:la,issueCommentReducer:Fp,issueCommentAttachmentReducer:lp,issueUpdateReducer:uS,geoImageReducer:Iy,issueAssociationReducer:qy,issueTypeFieldsReducer:$A,issueTypeFieldValuesReducer:gA,issueTypeFieldsAttachmentReducer:lA,issueTypeFieldValuesAttachmentReducer:XA,issueTypeIdentifierReducer:hf,issueTypeIdentifierValueReducer:Mf,issueTypeStatusReducer:xf,assetTypeFieldsReducer:xu,assetTypeFieldValuesReducer:Ml,assetTypeFieldsAttachmentReducer:Cu,assetTypeFieldValuesAttachmentReducer:hl,assetTypeIdentifierReducer:Ul,assetTypeIdentifierValueReducer:eo,assetTypeStatusReducer:wo,assetProcedureTypeReducer:rd,assetProcedureReducer:Wc,assetProcedureTypeFieldsReducer:rc,assetProcedureTypeFieldValuesReducer:jc,assetProcedureTypeFieldsAttachmentReducer:Ya,assetProcedureTypeFieldValuesAttachmentReducer:Ic,assetProcedureTypeAttachmentReducer:za,assetProcedureStepFieldsAttachmentReducer:bd,assetProcedureStepFieldsReducer:$d,assetProcedureStepFieldValuesAttachmentReducer:Xd,assetProcedureStepFieldValuesReducer:or,assetProcedureStepReducer:Pr,teamMembershipReducer:pI},IF=o.combineReducers(jI),DI=1e4,qI=200,Bn=[400,409,403,404,405,500],Qe=1e4,$I={};class CI{constructor(s){y(this,"client");y(this,"pageSize",DI);$I[this.constructor.name]=this,this.client=s}async performRequest(s,e){return this.client.performRequest(this.host,s,this,e)}async enqueueRequest(s){return this.client.enqueueRequest(s,this.host,this.constructor.name)}async performPagination(s,e){return this.client.performPagination(this.host,s,this.pageSize,this,e)}dispatch(s){this.client.store.dispatch(s)}}const UI=()=>GI.length-1,LI=t=>(t[ot]={version:UI()},t),NI=()=>LI({}),OF=t=>(t.outboxReducer&&(t.outboxReducer.deletedRequests=[]),t),PF=t=>s=>{var e;return s===void 0&&(s={}),((e=s[ot])==null?void 0:e.version)===UI()?s:t(s)},GI=[LI,NI,NI,OF],FF=Object.fromEntries(GI.map((t,s)=>[s,PF(t)])),gF=t=>{if(t)throw t;const s=lt();s?s.dispatch({type:"rehydrated/setRehydrated",payload:!0}):console.error("Client store not set")},kI=(t,s,e)=>{const n=at();return n?(n.addRequest(s),n.getQueue()):(console.warn("Outbox coordinator not set; cannot enqueue request yet."),[])},HI=(t,s,e)=>{const n=at();if(!n)return console.warn("Outbox coordinator not set; cannot dequeue request yet."),[];const c=s.meta.offlineAction.payload.uuid;return n.remove(c),n.getQueue()};async function bF(t,s){if(!s.payload)throw new Error("Received empty payload");return nO(s)}const MF={...Cn,effect:bF,discard:WI,returnPromises:!0,persistCallback:gF,retry:EF,persistOptions:{storage:oO},queue:{...Cn.queue,enqueue:kI,dequeue:HI,peek:(...t)=>wF(...t)}},_F=hO(FF,ot),RF=o.compose(lO.offline(MF),_F);async function KI(t,s,e){if(s.store.getState().outboxReducer.deletedRequests.includes(t.payload.uuid))throw new Error("Request was marked for deletion");const a=$I[t.meta.offline.effect.serviceName];if(!a)throw new Error(`Service ${t.meta.offline.effect.serviceName} not found`);return jn(t.meta.offline.effect.BASE_URL,t.meta.offline.effect.request,s,a,e)}function WI(t,s,e=0){var u;if(console.debug("Considering discarding request due to error:",t,`(${typeof t})`,`
|
|
1
|
+
(function(i,L){typeof exports=="object"&&typeof module<"u"?L(exports,require("@redux-offline/redux-offline/lib/types"),require("@reduxjs/toolkit"),require("superagent"),require("uuid"),require("react"),require("file-saver"),require("fast-tree-builder"),require("ts-tree-lib"),require("@redux-offline/redux-offline"),require("@redux-offline/redux-offline/lib/defaults"),require("localforage"),require("redux-persist-migrate"),require("buffer"),require("@overmap-ai/forms"),require("idb"),require("jwt-decode"),require("dependency-graph"),require("@tiptap/core")):typeof define=="function"&&define.amd?define(["exports","@redux-offline/redux-offline/lib/types","@reduxjs/toolkit","superagent","uuid","react","file-saver","fast-tree-builder","ts-tree-lib","@redux-offline/redux-offline","@redux-offline/redux-offline/lib/defaults","localforage","redux-persist-migrate","buffer","@overmap-ai/forms","idb","jwt-decode","dependency-graph","@tiptap/core"],L):(i=typeof globalThis<"u"?globalThis:i||self,L(i["overmap-core"]={},null,i.toolkit,i.request,i.uuid,i.react,i.fileSaver,i.buildTree,i.tsTreeLib,i.reduxOffline,i.offlineConfig,i.localforage,i.createMigration,null,null,i.idb,i.jwtDecode,i.dependencyGraph))})(this,function(i,L,o,ct,Xe,rO,uO,$n,ft,lO,Cn,oO,hO,Xg,Qg,mO,yO,pO){"use strict";var Zg=Object.defineProperty;var Jg=(i,L,o)=>L in i?Zg(i,L,{enumerable:!0,configurable:!0,writable:!0,value:o}):i[L]=o;var y=(i,L,o)=>Jg(i,typeof L!="symbol"?L+"":L,o);var cO;const Un=Object.freeze([]),Ln=Object.freeze({});var Nn=(t=>(t[t.GUEST=0]="GUEST",t[t.BASIC=2]="BASIC",t[t.ADMIN=4]="ADMIN",t))(Nn||{}),m=(t=>(t.GET="GET",t.POST="POST",t.PATCH="PATCH",t.PUT="PUT",t.DELETE="DELETE",t))(m||{}),Gn=(t=>(t[t.PLANNED=0]="PLANNED",t[t.ACTIVE=1]="ACTIVE",t[t.MAINTENANCE=2]="MAINTENANCE",t[t.INACTIVE=3]="INACTIVE",t[t.RETIRED=4]="RETIRED",t[t.DISPOSED=5]="DISPOSED",t))(Gn||{}),kn=(t=>(t.Issue="issue",t.Asset="asset",t.AssetType="asset_type",t.Project="project",t.Document="document",t))(kn||{}),Nt=(t=>(t[t.LOWEST=0]="LOWEST",t[t.LOW=2]="LOW",t[t.MEDIUM=4]="MEDIUM",t[t.HIGH=6]="HIGH",t[t.HIGHEST=8]="HIGHEST",t))(Nt||{}),$=(t=>(t.STATUS="status",t.PRIORITY="priority",t.DESCRIPTION="description",t.TITLE="title",t.ASSIGNED_TO="assigned_to",t.DUE_DATE="due_date",t))($||{}),Hn=(t=>(t[t.BACKLOG=0]="BACKLOG",t[t.PLANNED=1]="PLANNED",t[t.IN_PROGRESS=2]="IN_PROGRESS",t[t.COMPLETED=3]="COMPLETED",t[t.CANCELLED=4]="CANCELLED",t))(Hn||{});const AO=Nt.MEDIUM,Kn=6e4;function F(t){return{addOne:(h,p)=>{const A=t(p.payload);h.instances[A]=p.payload},addMany:(h,p)=>{for(const A of p.payload){const I=t(A);h.instances[I]=A}},setOne:(h,p)=>{const A=t(p.payload);h.instances[A]=p.payload},setMany:(h,p)=>{for(const A of p.payload){const I=t(A);h.instances[I]=A}},updateOne:(h,p)=>{const A=t(p.payload);h.instances[A]=p.payload},updateMany:(h,p)=>{for(const A of p.payload){const I=t(A);h.instances[I]=A}},deleteOne:(h,p)=>{delete h.instances[p.payload]},deleteMany:(h,p)=>{for(const A of p.payload)delete h.instances[A]},initialize:(h,p)=>{h.instances={};const A=new Set;for(const I of p.payload){const b=t(I);A.add(b),h.instances[b]=I}A.size!==p.payload.length&&console.warn("duplicate ids detected when initializing model instances.")}}}function fO(){return{initializeSelection:(r,u)=>{r.selection=Array.from(new Set(u.payload))},selectOne:(r,u)=>{new Set(r.selection).has(u.payload)||r.selection.push(u.payload)},selectMany:(r,u)=>{const h=new Set(r.selection);for(const p of u.payload)h.has(p)||h.add(p);r.selection=Array.from(h)},unselectOne:(r,u)=>{const h=new Set(r.selection);h.has(u.payload)&&(h.delete(u.payload),r.selection=Array.from(h))},unselectMany:(r,u)=>{const h=new Set(r.selection);for(const p of u.payload)h.has(p)&&h.delete(p);r.selection=Array.from(h)},toggleOne:(r,u)=>{const h=new Set(r.selection);h.has(u.payload)?h.delete(u.payload):h.add(u.payload),r.selection=Array.from(h)},toggleMany:(r,u)=>{const h=new Set(r.selection);for(const p of u.payload)h.has(p)?h.delete(p):h.add(p);r.selection=Array.from(h)},getInitialState:r=>({...r,selection:[]})}}const ot="versioning",O=o.createAction("RESET"),j=o.createAction("RESET_PROJECT_STATE"),g=o.createAction("RESET_ORGANIZATION_STATE");function SO(t,s){return rO.useMemo(t,s)}cO=Symbol.toStringTag;class Gt{constructor(){y(this,cO,"Promise");y(this,"_promise");y(this,"_resolve");y(this,"_reject");y(this,"_state","pending");this._resolve=null,this._reject=null,this._promise=new Promise((s,e)=>{this._resolve=s,this._reject=e})}get state(){return this._state}then(s,e){return this._promise.then(s,e)}catch(s){return this._promise.catch(s)}resolve(s){if(!this._resolve)throw new Error("No resolve callback");this._resolve(s),this._state="fulfilled"}reject(s){if(!this._reject)throw s;this._reject(s),this._state="rejected"}finally(s){throw new Error("`finally` not implemented")}}let kt=!1;["true","1"].includes("".toLowerCase())&&(kt=!0);function TO(t,s){if(t===s)return!0;if(typeof t!=typeof s)return!1;const e=Object.keys(t),n=Object.keys(s),a=e.length;if(a!==n.length)return!1;for(let c=0;c<a;c++){const d=e[c];if(!Object.prototype.hasOwnProperty.call(s,d)||t[d]!==s[d])return!1}return!0}function Ht(t){const s={};return function(){const e=Array.prototype.slice.call(arguments);return e in s?(kt&&console.debug(`Memoization debug: Using memorized return value for ${t.toString()}(`,e,")"),s[e]):(kt&&console.debug(`Memoization debug: Cache miss! Memoizing ${t.toString()}(`,e,")"),s[e]=t.apply(this,e))}}function IO(t,s){if(t.length!==s.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==s[e])return!1;return!0}const S=t=>t.length===0?Un:t,St=t=>Object.keys(t).length===0?Ln:t,Wn=Ht(t=>{if(!t)return"";const s=new Date(t),e=s.getFullYear()===Kt.getFullYear(),n={day:"numeric",month:"short"};return e||(n.year="numeric"),s.toLocaleDateString([],n)}),OO=new Intl.RelativeTimeFormat([],{style:"long",numeric:"auto"}),PO=1e3*86400,Kt=new Date,FO=t=>new Date(t).toDateString()===Kt.toDateString(),gO=Ht((t,s,e)=>{const n=Math.round((new Date(t).getTime()-Kt.getTime())/PO);return n<s||n>e?Wn(t):OO.format(n,"days")});function bO(t){return new Uint8Array(t).reduce((e,n)=>e+n.toString(16).padStart(2,"0"),"")}function Tt(t){return new Promise((s,e)=>{const n=new FileReader;n.onload=()=>{const a=n.result;if(!a){e(new Error("FileReader did not return a valid ArrayBuffer."));return}crypto.subtle.digest("SHA-1",a).then(c=>{const d=bO(c);s(d)})},n.readAsArrayBuffer(t)})}const Wt=(t,s)=>`${t}${s?`.${s}`:""}`;function MO(t,s){return new File([t],s,{type:t.type})}function Yt(t){const s=t.name;return s.includes(".")?s.split(".").pop():""}const Yn=async t=>(await fetch(t)).blob(),Zn=async(t,s)=>{const e=await Yn(t);return new File([e],s,{type:e.type})};function _O(t){const s=new Blob([t]);uO.saveAs(s,t.name)}function Jn(t){return typeof t=="string"&&t.startsWith("blob:")}const Xn={};function RO(t,s,e,...n){const a=Xn[t];let c=!1;a?a[s]||(a[s]=!0,c=!0):(Xn[t]={[s]:!0},c=!0),c&&console[e](...n)}const Qn=["created_at","updated_at","index","revision"];function P(t){return{...t,uuid:Xe.v4()}}function wO(t){const s={};for(const e of t)s[e.uuid]=e;return s}function B(t){return t.map(({uuid:s})=>s)}function It(t,s){return t.localeCompare(s)}function Zt(t,s){return It(t.uuid,s.uuid)}function EO(t,s=void 0,e=255){let n=t.replace(/[^a-z0-9_\-.]/gi,"_").replace(/_{2,}/g,"_");if(!s){const c=t.split(".");c.length>1&&(s=c[c.length-1])}s&&!s.startsWith(".")&&(s="."+s);const a=s?s.length:0;return n.length+a>e&&(n=n.slice(0,e-a)+(s||"")),n}function VO(t){return t.toLowerCase().replace(" ","-")}function vO(t,s=!1){return t.normalize("NFKD").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,s?"_":"-")}function BO(t,s){if(t.length<=s)return t;const e=t.slice(0,s-1);return e.slice(0,e.lastIndexOf(" "))+"…"}const zO=/^.+@.+\..+$/;function E(t){const s={...t};for(const e of[...Qn,"created_by"])e in s&&delete s[e];return s}const xn=t=>{const s=t.toSorted((e,n)=>e.order-n.order);return $n(s,{id:e=>e.uuid,parentId:e=>e.parent,includeEmptyChildrenArray:!0,valueKey:!1})},jO=t=>{const{roots:s}=xn(t);return s.map(e=>new ft.Tree(e))},ea=(t,s)=>{const{nodes:e}=xn(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in asset procedure step tree.`);return new ft.Tree(n)},ta=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,sa=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,ia=t=>$n(t,{id:s=>s.uuid,parentId:s=>s.parent_document,includeEmptyChildrenArray:!0,valueKey:!1}),DO=t=>{const{roots:s}=ia(t);return s.map(e=>new ft.Tree(e))},na=(t,s)=>{const{nodes:e}=ia(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in document tree.`);return new ft.Tree(n)};class qO{constructor(s){y(this,"operations",[]);y(this,"getData");this.getData=s}performOperations(s){let e=s;for(const n of this.operations)e=n(e);return e}filter(s,e){return this.operations.push(n=>n.filter(a=>a[s]===e)),this}exclude(s,e){return this.operations.push(n=>n.filter(a=>a[s]!==e)),this}orderBy(s){return this.operations.push(e=>[...e].sort((n,a)=>n[s]<=a[s]?1:-1)),this}reverse(){return this.operations.push(s=>[...s].reverse()),this}all(){return this.operations.push(s=>s),this}get(s,e){return o.createSelector([this.getData],n=>this.performOperations(n).find(a=>a[s]===e))}count(){return o.createSelector([this.getData],s=>this.performOperations(s).length)}first(){return o.createSelector([this.getData],s=>this.performOperations(s)[0])}last(){return o.createSelector([this.getData],s=>{const e=this.performOperations(s);return e[e.length-1]})}exists(){return o.createSelector([this.getData],s=>this.performOperations(s).length>0)}toSelector(){return o.createSelector([this.getData],s=>S(this.performOperations(s)))}}const f=t=>(...s)=>e=>t(e,...s),G=F(t=>t.uuid),aa={instances:{}},Jt=o.createSlice({name:"agents",initialState:aa,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,aa)),reducers:{initializeConversations:G.initialize,addConversation:G.addOne,addConversations:G.addMany,setConversation:G.setOne,setConversations:G.setMany,updateConversation:G.updateOne,updateConversations:G.updateMany,deleteConversation:G.deleteOne,deleteConversations:G.deleteMany}}),{initializeConversations:ca,addConversation:da,addConversations:$O,setConversation:ra,setConversations:CO,updateConversation:ua,updateConversations:UO,deleteConversation:LO,deleteConversations:NO}=Jt.actions,Xt=t=>t.agentsReducer.instances,GO=o.createSelector([Xt],t=>Object.values(t)),kO=f(o.createSelector([Xt,(t,s)=>s],(t,s)=>t[s])),la=Jt.reducer,k=F(t=>t.uuid),oa={instances:{}},Qt=o.createSlice({name:"assetAttachments",initialState:oa,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,oa)),reducers:{initializeAssetAttachments:k.initialize,addAssetAttachment:k.addOne,addAssetAttachments:k.addMany,setAssetAttachment:k.setOne,setAssetAttachments:k.setMany,updateAssetAttachment:k.updateOne,updateAssetAttachments:k.updateMany,deleteAssetAttachment:k.deleteOne,deleteAssetAttachments:k.deleteMany}}),{initializeAssetAttachments:ha,addAssetAttachment:ma,addAssetAttachments:xt,setAssetAttachment:ya,setAssetAttachments:pa,updateAssetAttachment:Aa,updateAssetAttachments:fa,deleteAssetAttachment:Sa,deleteAssetAttachments:es}=Qt.actions,Ta=t=>t.assetAttachmentReducer.instances,ts=o.createSelector([Ta],t=>Object.values(t)),Ia=t=>s=>s.assetAttachmentReducer.instances[t],Oa=f(o.createSelector([ts,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Pa=f(o.createSelector([ts,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>s===e)))),Fa=Qt.reducer,H=F(({uuid:t})=>t),ga={instances:{}},ss=o.createSlice({name:"assetProcedureTypeAttachments",initialState:ga,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,ga)),reducers:{initializeAssetProcedureTypeAttachments:H.initialize,addAssetProcedureTypeAttachment:H.addOne,addAssetProcedureTypeAttachments:H.addMany,setAssetProcedureTypeAttachment:H.setOne,setAssetProcedureTypeAttachments:H.setMany,updateAssetProcedureTypeAttachment:H.updateOne,updateAssetProcedureTypeAttachments:H.updateMany,deleteAssetProcedureTypeAttachment:H.deleteOne,deleteAssetProcedureTypeAttachments:H.deleteMany}}),{initializeAssetProcedureTypeAttachments:ba,addAssetProcedureTypeAttachment:Ma,addAssetProcedureTypeAttachments:_a,setAssetProcedureTypeAttachment:Ra,setAssetProcedureTypeAttachments:wa,updateAssetProcedureTypeAttachment:Ea,updateAssetProcedureTypeAttachments:Va,deleteAssetProcedureTypeAttachment:va,deleteAssetProcedureTypeAttachments:Ba}=ss.actions,za=ss.reducer,ja=t=>t.assetProcedureTypeAttachmentReducer.instances,is=o.createSelector([ja],t=>Object.values(t)),Da=t=>s=>s.assetProcedureTypeAttachmentReducer.instances[t],qa=f(o.createSelector([is,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),HO=f(o.createSelector([is,(t,s)=>s],(t,s)=>S(t.filter(({asset_procedure_type:e})=>s===e)))),K=F(({uuid:t})=>t),$a={instances:{}},ns=o.createSlice({name:"assetProcedureTypeFieldsAttachments",initialState:$a,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,$a)),reducers:{initializeAssetProcedureTypeFieldsAttachments:K.initialize,addAssetProcedureTypeFieldsAttachment:K.addOne,addAssetProcedureTypeFieldsAttachments:K.addMany,setAssetProcedureTypeFieldsAttachment:K.setOne,setAssetProcedureTypeFieldsAttachments:K.setMany,updateAssetProcedureTypeFieldsAttachment:K.updateOne,updateAssetProcedureTypeFieldsAttachments:K.updateMany,deleteAssetProcedureTypeFieldsAttachment:K.deleteOne,deleteAssetProcedureTypeFieldsAttachments:K.deleteMany}}),{initializeAssetProcedureTypeFieldsAttachments:Ca,addAssetProcedureTypeFieldsAttachment:Ua,addAssetProcedureTypeFieldsAttachments:La,setAssetProcedureTypeFieldsAttachment:Na,setAssetProcedureTypeFieldsAttachments:Ga,updateAssetProcedureTypeFieldsAttachment:ka,updateAssetProcedureTypeFieldsAttachments:Ha,deleteAssetProcedureTypeFieldsAttachment:Ka,deleteAssetProcedureTypeFieldsAttachments:Wa}=ns.actions,Ya=ns.reducer,Za=t=>t.assetProcedureTypeFieldsAttachmentReducer.instances,as=o.createSelector([Za],t=>Object.values(t)),KO=f(o.createSelector([as,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),Ja=t=>s=>s.assetProcedureTypeFieldsAttachmentReducer.instances[t],Xa=f(o.createSelector([as,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),W=F(({uuid:t})=>t),Qa={instances:{}},cs=o.createSlice({name:"assetProcedureTypeFields",initialState:Qa,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Qa)),reducers:{initializeAssetProcedureTypeFields:W.initialize,addAssetProcedureTypeFields:W.addOne,addAssetProcedureTypeFieldsMany:W.addMany,setAssetProcedureTypeFields:W.setOne,setAssetProcedureTypeFieldsMany:W.setMany,updateAssetProcedureTypeFields:W.updateOne,updateAssetProcedureTypeFieldsMany:W.updateMany,deleteAssetProcedureTypeFields:W.deleteOne,deleteAssetProcedureTypeFieldsMany:W.deleteMany}}),{initializeAssetProcedureTypeFields:xa,addAssetProcedureTypeFields:ec,addAssetProcedureTypeFieldsMany:tc,setAssetProcedureTypeFields:sc,setAssetProcedureTypeFieldsMany:ic,updateAssetProcedureTypeFields:nc,updateAssetProcedureTypeFieldsMany:ac,deleteAssetProcedureTypeFields:cc,deleteAssetProcedureTypeFieldsMany:dc}=cs.actions,rc=cs.reducer,uc=t=>t.assetProcedureTypeFieldsReducer.instances,Ot=o.createSelector([uc],t=>Object.values(t)),WO=f(o.createSelector([Ot,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_type===s)))),YO=f(o.createSelector([Ot,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_procedure_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),lc=t=>s=>s.assetProcedureTypeFieldsReducer.instances[t],oc=f(o.createSelector([Ot,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Y=F(({uuid:t})=>t),hc={instances:{}},ds=o.createSlice({name:"assetProcedureTypeFieldValuesAttachments",initialState:hc,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,hc)),reducers:{initializeAssetProcedureTypeFieldValuesAttachments:Y.initialize,addAssetProcedureTypeFieldValuesAttachment:Y.addOne,addAssetProcedureTypeFieldValuesAttachments:Y.addMany,setAssetProcedureTypeFieldValuesAttachment:Y.setOne,setAssetProcedureTypeFieldValuesAttachments:Y.setMany,updateAssetProcedureTypeFieldValuesAttachment:Y.updateOne,updateAssetProcedureTypeFieldValuesAttachments:Y.updateMany,deleteAssetProcedureTypeFieldValuesAttachment:Y.deleteOne,deleteAssetProcedureTypeFieldValuesAttachments:Y.deleteMany}}),{initializeAssetProcedureTypeFieldValuesAttachments:mc,addAssetProcedureTypeFieldValuesAttachment:yc,addAssetProcedureTypeFieldValuesAttachments:rs,setAssetProcedureTypeFieldValuesAttachment:pc,setAssetProcedureTypeFieldValuesAttachments:Ac,updateAssetProcedureTypeFieldValuesAttachment:fc,updateAssetProcedureTypeFieldValuesAttachments:Sc,deleteAssetProcedureTypeFieldValuesAttachment:Tc,deleteAssetProcedureTypeFieldValuesAttachments:us}=ds.actions,Ic=ds.reducer,Oc=t=>t.assetProcedureTypeFieldValuesAttachmentReducer.instances,ls=o.createSelector([Oc],t=>Object.values(t)),Pc=t=>s=>s.assetProcedureTypeFieldValuesAttachmentReducer.instances[t],Fc=f(o.createSelector([ls,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),gc=f(o.createSelector([ls,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),Z=F(({uuid:t})=>t),bc={instances:{}},os=o.createSlice({name:"assetProcedureTypeFieldValues",initialState:bc,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,bc)),reducers:{initializeAssetProcedureTypeFieldValues:Z.initialize,addAssetProcedureTypeFieldValues:Z.addOne,addAssetProcedureTypeFieldValuesMany:Z.addMany,setAssetProcedureTypeFieldValues:Z.setOne,setAssetProcedureTypeFieldValuesMany:Z.setMany,updateAssetProcedureTypeFieldValues:Z.updateOne,updateAssetProcedureTypeFieldValuesMany:Z.updateMany,deleteAssetProcedureTypeFieldValues:Z.deleteOne,deleteAssetProcedureTypeFieldValuesMany:Z.deleteMany}}),{initializeAssetProcedureTypeFieldValues:Mc,addAssetProcedureTypeFieldValues:_c,addAssetProcedureTypeFieldValuesMany:Rc,setAssetProcedureTypeFieldValues:wc,setAssetProcedureTypeFieldValuesMany:Ec,updateAssetProcedureTypeFieldValues:Vc,updateAssetProcedureTypeFieldValuesMany:vc,deleteAssetProcedureTypeFieldValues:Bc,deleteAssetProcedureTypeFieldValuesMany:zc}=os.actions,jc=os.reducer,Dc=t=>t.assetProcedureTypeFieldValuesReducer.instances,Pt=o.createSelector([Dc],t=>Object.values(t)),ZO=f(o.createSelector([Pt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),JO=f(o.createSelector([Pt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure===s)))),qc=t=>s=>s.assetProcedureTypeFieldValuesReducer.instances[t],$c=f(o.createSelector([Pt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),J=F(({uuid:t})=>t),Cc={instances:{}},hs=o.createSlice({name:"assetProcedures",initialState:Cc,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Cc)),reducers:{initializeAssetProcedures:J.initialize,addAssetProcedure:J.addOne,addAssetProcedures:J.addMany,setAssetProcedure:J.setOne,setAssetProcedures:J.setMany,updateAssetProcedure:J.updateOne,updateAssetProcedures:J.updateMany,deleteAssetProcedure:J.deleteOne,deleteAssetProcedures:J.deleteMany}}),{initializeAssetProcedures:Uc,addAssetProcedure:Lc,addAssetProcedures:ms,updateAssetProcedure:Nc,updateAssetProcedures:Gc,deleteAssetProcedure:kc,deleteAssetProcedures:ys,setAssetProcedure:Hc,setAssetProcedures:Kc}=hs.actions,Wc=hs.reducer,Yc=t=>t.assetProcedureReducer.instances,Ft=o.createSelector([Yc],t=>Object.values(t)),Zc=f(o.createSelector([Ft,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_type===s)))),XO=f(o.createSelector([Ft,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Jc=t=>s=>s.assetProcedureReducer.instances[t],Xc=f(o.createSelector([Ft,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),X=F(t=>t.uuid),Qc={instances:{}},ps=o.createSlice({name:"assetProcedureTypes",initialState:Qc,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Qc)),reducers:{initializeAssetProcedureTypes:X.initialize,addAssetProcedureType:X.addOne,addAssetProcedureTypes:X.addMany,setAssetProcedureType:X.setOne,setAssetProcedureTypes:X.setMany,updateAssetProcedureType:X.updateOne,updateAssetProcedureTypes:X.updateMany,deleteAssetProcedureType:X.deleteOne,deleteAssetProcedureTypes:X.deleteMany}}),{initializeAssetProcedureTypes:xc,addAssetProcedureType:ed,addAssetProcedureTypes:td,updateAssetProcedureType:sd,updateAssetProcedureTypes:id,deleteAssetProcedureType:nd,deleteAssetProcedureTypes:ad,setAssetProcedureType:cd,setAssetProcedureTypes:dd}=ps.actions,rd=ps.reducer,ud=t=>t.assetProcedureTypeReducer.instances,As=o.createSelector([ud],t=>Object.values(t)),ld=t=>s=>s.assetProcedureTypeReducer.instances[t],od=f(o.createSelector([As,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),QO=f(o.createSelector([As,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Q=F(t=>t.uuid),hd={instances:{}},fs=o.createSlice({name:"assetProcedureStepFieldsAttachments",initialState:hd,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,hd)),reducers:{initializeAssetProcedureStepFieldsAttachments:Q.initialize,addAssetProcedureStepFieldsAttachment:Q.addOne,addAssetProcedureStepFieldsAttachments:Q.addMany,setAssetProcedureStepFieldsAttachment:Q.setOne,setAssetProcedureStepFieldsAttachments:Q.setMany,updateAssetProcedureStepFieldsAttachment:Q.updateOne,updateAssetProcedureStepFieldsAttachments:Q.updateMany,deleteAssetProcedureStepFieldsAttachment:Q.deleteOne,deleteAssetProcedureStepFieldsAttachments:Q.deleteMany}}),{initializeAssetProcedureStepFieldsAttachments:md,addAssetProcedureStepFieldsAttachment:yd,addAssetProcedureStepFieldsAttachments:pd,setAssetProcedureStepFieldsAttachment:Ad,setAssetProcedureStepFieldsAttachments:fd,updateAssetProcedureStepFieldsAttachment:Sd,updateAssetProcedureStepFieldsAttachments:Td,deleteAssetProcedureStepFieldsAttachment:Id,deleteAssetProcedureStepFieldsAttachments:Od}=fs.actions,Pd=t=>t.assetProcedureStepFieldsAttachmentReducer.instances,Ss=o.createSelector([Pd],t=>Object.values(t)),xO=f(o.createSelector([Ss,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),Fd=t=>s=>s.assetProcedureStepFieldsAttachmentReducer.instances[t],gd=f(o.createSelector([Ss,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),bd=fs.reducer,x=F(t=>t.uuid),Md={instances:{}},Ts=o.createSlice({name:"assetProcedureStepFields",initialState:Md,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Md)),reducers:{initializeAssetProcedureStepFields:x.initialize,addAssetProcedureStepFields:x.addOne,addAssetProcedureStepFieldsMany:x.addMany,setAssetProcedureStepFields:x.setOne,setAssetProcedureStepFieldsMany:x.setMany,updateAssetProcedureStepFields:x.updateOne,updateAssetProcedureStepFieldsMany:x.updateMany,deleteAssetProcedureStepFields:x.deleteOne,deleteAssetProcedureStepFieldsMany:x.deleteMany}}),{initializeAssetProcedureStepFields:_d,addAssetProcedureStepFields:Rd,addAssetProcedureStepFieldsMany:wd,setAssetProcedureStepFields:Ed,setAssetProcedureStepFieldsMany:Vd,updateAssetProcedureStepFields:vd,updateAssetProcedureStepFieldsMany:Bd,deleteAssetProcedureStepFields:zd,deleteAssetProcedureStepFieldsMany:jd}=Ts.actions,Is=t=>t.assetProcedureStepFieldsReducer.instances,gt=o.createSelector([Is],t=>Object.values(t)),eP=f(o.createSelector([gt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_step===s)))),tP=f(o.createSelector([gt,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_procedure_step===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),sP=o.createSelector([Is],t=>{const s={};for(const e of Object.values(t)){const n=s[e.asset_procedure_step];(!n||n.submitted_at<e.submitted_at)&&(s[e.asset_procedure_step]=e)}return s}),Dd=t=>s=>s.assetProcedureStepFieldsReducer.instances[t],qd=f(o.createSelector([gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$d=Ts.reducer,ee=F(t=>t.uuid),Cd={instances:{}},Os=o.createSlice({name:"assetProcedureStepFieldValuesAttachments",initialState:Cd,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Cd)),reducers:{initializeAssetProcedureStepFieldValuesAttachments:ee.initialize,addAssetProcedureStepFieldValuesAttachment:ee.addOne,addAssetProcedureStepFieldValuesAttachments:ee.addMany,setAssetProcedureStepFieldValuesAttachment:ee.setOne,setAssetProcedureStepFieldValuesAttachments:ee.setMany,updateAssetProcedureStepFieldValuesAttachment:ee.updateOne,updateAssetProcedureStepFieldValuesAttachments:ee.updateMany,deleteAssetProcedureStepFieldValuesAttachment:ee.deleteOne,deleteAssetProcedureStepFieldValuesAttachments:ee.deleteMany}}),{initializeAssetProcedureStepFieldValuesAttachments:Ud,addAssetProcedureStepFieldValuesAttachment:Ld,addAssetProcedureStepFieldValuesAttachments:Ps,setAssetProcedureStepFieldValuesAttachment:Nd,setAssetProcedureStepFieldValuesAttachments:Gd,updateAssetProcedureStepFieldValuesAttachment:kd,updateAssetProcedureStepFieldValuesAttachments:Hd,deleteAssetProcedureStepFieldValuesAttachment:Kd,deleteAssetProcedureStepFieldValuesAttachments:Fs}=Os.actions,Wd=t=>t.assetProcedureStepFieldValuesAttachmentReducer.instances,gs=o.createSelector([Wd],t=>Object.values(t)),Yd=t=>s=>s.assetProcedureStepFieldValuesAttachmentReducer.instances[t],Zd=f(o.createSelector([gs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Jd=f(o.createSelector([gs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),Xd=Os.reducer,te=F(t=>t.uuid),Qd={instances:{}},bs=o.createSlice({name:"assetProcedureStepFieldValues",initialState:Qd,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Qd)),reducers:{initializeAssetProcedureStepFieldValues:te.initialize,addAssetProcedureStepFieldValues:te.addOne,addAssetProcedureStepFieldValuesMany:te.addMany,setAssetProcedureStepFieldValues:te.setOne,setAssetProcedureStepFieldValuesMany:te.setMany,updateAssetProcedureStepFieldValues:te.updateOne,updateAssetProcedureStepFieldValuesMany:te.updateMany,deleteAssetProcedureStepFieldValues:te.deleteOne,deleteAssetProcedureStepFieldValuesMany:te.deleteMany}}),{initializeAssetProcedureStepFieldValues:xd,addAssetProcedureStepFieldValues:er,addAssetProcedureStepFieldValuesMany:tr,setAssetProcedureStepFieldValues:sr,setAssetProcedureStepFieldValuesMany:ir,updateAssetProcedureStepFieldValues:nr,updateAssetProcedureStepFieldValuesMany:ar,deleteAssetProcedureStepFieldValues:cr,deleteAssetProcedureStepFieldValuesMany:dr}=bs.actions,rr=t=>t.assetProcedureStepFieldValuesReducer.instances,ht=o.createSelector([rr],t=>Object.values(t)),iP=f(o.createSelector([ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),nP=f(o.createSelector([ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure===s)))),aP=f(o.createSelector([ht,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_step===s)))),ur=t=>s=>s.assetProcedureStepFieldValuesReducer.instances[t],lr=f(o.createSelector([ht,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),or=bs.reducer,se=F(t=>t.uuid),hr={instances:{}},Ms=o.createSlice({name:"assetProcedureSteps",initialState:hr,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,hr)),reducers:{initializeAssetProcedureSteps:se.initialize,setAssetProcedureStep:se.setOne,setAssetProcedureSteps:se.setMany,addAssetProcedureStep:se.addOne,addAssetProcedureSteps:se.addMany,updateAssetProcedureStep:se.updateOne,updateAssetProcedureSteps:se.updateMany,deleteAssetProcedureStep:se.deleteOne,deleteAssetProcedureSteps:se.deleteMany}}),{initializeAssetProcedureSteps:mr,setAssetProcedureStep:yr,setAssetProcedureSteps:pr,addAssetProcedureStep:Ar,addAssetProcedureSteps:fr,updateAssetProcedureStep:Sr,updateAssetProcedureSteps:Tr,deleteAssetProcedureStep:Ir,deleteAssetProcedureSteps:Or}=Ms.actions,Pr=Ms.reducer,bt=t=>t.assetProcedureStepReducer.instances,Fr=t=>s=>s.assetProcedureStepReducer.instances[t],_s=o.createSelector([bt],t=>Object.values(t)),cP=f(o.createSelector([bt,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.asset_procedure_type===s&&(e[n]=a);return St(e)})),dP=f(o.createSelector([_s,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_type===s)))),gr=f(o.createSelector([_s,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),br=f(o.createSelector([bt,(t,s)=>s],(t,s)=>{if(!t[s])return S([]);const a=ea(s,Object.values(t)).all().map(({model:c})=>c);return S(a)})),ie=F(t=>t.uuid),Mr={instances:{}},Rs=o.createSlice({name:"assets",initialState:Mr,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Mr)),reducers:{initializeAssets:ie.initialize,addAsset:ie.addOne,addAssets:ie.addMany,setAsset:ie.setOne,setAssets:ie.setMany,updateAsset:ie.updateOne,updateAssets:ie.updateMany,deleteAsset:ie.deleteOne,deleteAssets:ie.deleteMany}}),{initializeAssets:_r,addAsset:Rr,addAssets:ws,updateAsset:wr,updateAssets:Er,deleteAsset:Vr,deleteAssets:Es,setAsset:vr,setAssets:Br}=Rs.actions,zr=t=>t.assetReducer.instances,Mt=o.createSelector([zr],t=>S(Object.values(t))),rP=f(o.createSelector([Mt,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>e===s)))),jr=f(o.createSelector([Mt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Dr=t=>s=>s.assetReducer.instances[t],qr=f(o.createSelector([Mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$r=Rs.reducer,ne=F(t=>t.uuid),Cr={instances:{}},Vs=o.createSlice({name:"assetStageCompletions",initialState:Cr,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Cr)),reducers:{initializeAssetStageCompletions:ne.initialize,addAssetStageCompletion:ne.addOne,addAssetStageCompletions:ne.addMany,setAssetStageCompletion:ne.setOne,setAssetStageCompletions:ne.setMany,updateAssetStageCompletion:ne.updateOne,updateAssetStageCompletions:ne.updateMany,deleteAssetStageCompletion:ne.deleteOne,deleteAssetStageCompletions:ne.deleteMany}}),{initializeAssetStageCompletions:Ur,addAssetStageCompletion:Lr,addAssetStageCompletions:Nr,setAssetStageCompletion:Gr,setAssetStageCompletions:kr,updateAssetStageCompletion:Hr,updateAssetStageCompletions:Kr,deleteAssetStageCompletion:Wr,deleteAssetStageCompletions:Yr}=Vs.actions,Zr=Vs.reducer,Jr=t=>t.assetStageCompletionReducer.instances,Xr=o.createSelector([Jr],t=>Object.values(t)),Qr=t=>s=>s.assetStageCompletionReducer.instances[t],xr=f(o.createSelector([Xr,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ae=F(t=>t.uuid),eu={instances:{}},vs=o.createSlice({name:"assetStages",initialState:eu,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,eu)),reducers:{initializeAssetStages:ae.initialize,setAssetStage:ae.setOne,setAssetStages:ae.setMany,addAssetStage:ae.addOne,addAssetStages:ae.addMany,updateAssetStage:ae.updateOne,updateAssetStages:ae.updateMany,deleteAssetStage:ae.deleteOne,deleteAssetStages:ae.deleteMany}}),{initializeAssetStages:tu,setAssetStage:su,setAssetStages:iu,addAssetStage:nu,addAssetStages:au,updateAssetStage:cu,updateAssetStages:du,deleteAssetStage:ru,deleteAssetStages:uu}=vs.actions,lu=vs.reducer,Bs=t=>t.assetStageReducer.instances,ou=t=>s=>s.assetStageReducer.instances[t],zs=o.createSelector([Bs],t=>Object.values(t)),uP=f(o.createSelector([Bs,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.asset_procedure_type===s&&(e[n]=a);return St(e)})),lP=f(o.createSelector([zs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_procedure_type===s)))),hu=f(o.createSelector([zs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ce=F(t=>t.uuid),mu={instances:{}},js=o.createSlice({name:"assetTypeAttachments",initialState:mu,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,mu)),reducers:{initializeAssetTypeAttachments:ce.initialize,addAssetTypeAttachment:ce.addOne,addAssetTypeAttachments:ce.addMany,setAssetTypeAttachment:ce.setOne,setAssetTypeAttachments:ce.setMany,updateAssetTypeAttachment:ce.updateOne,updateAssetTypeAttachments:ce.updateMany,deleteAssetTypeAttachment:ce.deleteOne,deleteAssetTypeAttachments:ce.deleteMany}}),{initializeAssetTypeAttachments:yu,addAssetTypeAttachment:pu,addAssetTypeAttachments:Ds,setAssetTypeAttachment:Au,setAssetTypeAttachments:fu,updateAssetTypeAttachment:Su,updateAssetTypeAttachments:Tu,deleteAssetTypeAttachment:Iu,deleteAssetTypeAttachments:qs}=js.actions,Ou=t=>t.assetTypeAttachmentReducer.instances,$s=o.createSelector([Ou],t=>Object.values(t)),Pu=t=>s=>s.assetTypeAttachmentReducer.instances[t],Fu=f(o.createSelector([$s,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),gu=f(o.createSelector([$s,(t,s)=>s],(t,s)=>S(t.filter(({asset_type:e})=>s===e)))),bu=js.reducer,de=F(t=>t.uuid),Mu={instances:{}},Cs=o.createSlice({name:"assetTypeFieldsAttachments",initialState:Mu,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Mu)),reducers:{initializeAssetTypeFieldsAttachments:de.initialize,addAssetTypeFieldsAttachment:de.addOne,addAssetTypeFieldsAttachments:de.addMany,setAssetTypeFieldsAttachment:de.setOne,setAssetTypeFieldsAttachments:de.setMany,updateAssetTypeFieldsAttachment:de.updateOne,updateAssetTypeFieldsAttachments:de.updateMany,deleteAssetTypeFieldsAttachment:de.deleteOne,deleteAssetTypeFieldsAttachments:de.deleteMany}}),{initializeAssetTypeFieldsAttachments:_u,addAssetTypeFieldsAttachment:Ru,addAssetTypeFieldsAttachments:wu,setAssetTypeFieldsAttachment:Eu,setAssetTypeFieldsAttachments:Vu,updateAssetTypeFieldsAttachment:vu,updateAssetTypeFieldsAttachments:Bu,deleteAssetTypeFieldsAttachment:zu,deleteAssetTypeFieldsAttachments:ju}=Cs.actions,Du=t=>t.assetTypeFieldsAttachmentReducer.instances,Us=o.createSelector([Du],t=>Object.values(t)),oP=f(o.createSelector([Us,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),qu=t=>s=>s.assetTypeFieldsAttachmentReducer.instances[t],$u=f(o.createSelector([Us,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Cu=Cs.reducer,re=F(t=>t.uuid),Uu={instances:{}},Ls=o.createSlice({name:"assetTypeFields",initialState:Uu,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Uu)),reducers:{initializeAssetTypeFields:re.initialize,addAssetTypeFields:re.addOne,addAssetTypeFieldsMany:re.addMany,setAssetTypeFields:re.setOne,setAssetTypeFieldsMany:re.setMany,updateAssetTypeFields:re.updateOne,updateAssetTypeFieldsMany:re.updateMany,deleteAssetTypeFields:re.deleteOne,deleteAssetTypeFieldsMany:re.deleteMany}}),{initializeAssetTypeFields:Lu,addAssetTypeFields:Nu,addAssetTypeFieldsMany:Gu,setAssetTypeFields:ku,setAssetTypeFieldsMany:Hu,updateAssetTypeFields:Ku,updateAssetTypeFieldsMany:Wu,deleteAssetTypeFields:Yu,deleteAssetTypeFieldsMany:Zu}=Ls.actions,Ju=t=>t.assetTypeFieldsReducer.instances,mt=o.createSelector([Ju],t=>Object.values(t)),hP=f(o.createSelector([mt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),mP=f(o.createSelector([mt,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),Xu=t=>s=>s.assetTypeFieldsReducer.instances[t],Qu=f(o.createSelector([mt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),xu=Ls.reducer,ue=F(t=>t.uuid),el={instances:{}},Ns=o.createSlice({name:"assetTypeFieldValuesAttachments",initialState:el,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,el)),reducers:{initializeAssetTypeFieldValuesAttachments:ue.initialize,addAssetTypeFieldValuesAttachment:ue.addOne,addAssetTypeFieldValuesAttachments:ue.addMany,setAssetTypeFieldValuesAttachment:ue.setOne,setAssetTypeFieldValuesAttachments:ue.setMany,updateAssetTypeFieldValuesAttachment:ue.updateOne,updateAssetTypeFieldValuesAttachments:ue.updateMany,deleteAssetTypeFieldValuesAttachment:ue.deleteOne,deleteAssetTypeFieldValuesAttachments:ue.deleteMany}}),{initializeAssetTypeFieldValuesAttachments:tl,addAssetTypeFieldValuesAttachment:sl,addAssetTypeFieldValuesAttachments:Gs,setAssetTypeFieldValuesAttachment:il,setAssetTypeFieldValuesAttachments:nl,updateAssetTypeFieldValuesAttachment:al,updateAssetTypeFieldValuesAttachments:cl,deleteAssetTypeFieldValuesAttachment:dl,deleteAssetTypeFieldValuesAttachments:ks}=Ns.actions,rl=t=>t.assetTypeFieldValuesAttachmentReducer.instances,Hs=o.createSelector([rl],t=>Object.values(t)),ul=t=>s=>s.assetTypeFieldValuesAttachmentReducer.instances[t],ll=f(o.createSelector([Hs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ol=f(o.createSelector([Hs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),hl=Ns.reducer,le=F(t=>t.uuid),ml={instances:{}},Ks=o.createSlice({name:"assetTypeFieldValues",initialState:ml,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,ml)),reducers:{initializeAssetTypeFieldValues:le.initialize,addAssetTypeFieldValues:le.addOne,addAssetTypeFieldValuesMany:le.addMany,setAssetTypeFieldValues:le.setOne,setAssetTypeFieldValuesMany:le.setMany,updateAssetTypeFieldValues:le.updateOne,updateAssetTypeFieldValuesMany:le.updateMany,deleteAssetTypeFieldValues:le.deleteOne,deleteAssetTypeFieldValuesMany:le.deleteMany}}),{initializeAssetTypeFieldValues:yl,addAssetTypeFieldValues:pl,addAssetTypeFieldValuesMany:Al,setAssetTypeFieldValues:fl,setAssetTypeFieldValuesMany:Sl,updateAssetTypeFieldValues:Tl,updateAssetTypeFieldValuesMany:Il,deleteAssetTypeFieldValues:Ol,deleteAssetTypeFieldValuesMany:Pl}=Ks.actions,Fl=t=>t.assetTypeFieldValuesReducer.instances,_t=o.createSelector([Fl],t=>Object.values(t)),yP=f(o.createSelector([_t,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),pP=f(o.createSelector([mt,_t,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.asset_type===e).map(a=>a.uuid));return S(s.filter(a=>n.has(a.fields_revision)))})),gl=t=>s=>s.assetTypeFieldValuesReducer.instances[t],bl=f(o.createSelector([_t,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Ml=Ks.reducer,oe=F(t=>t.uuid),_l={instances:{}},Ws=o.createSlice({name:"assetTypeIdentifiers",initialState:_l,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,_l)),reducers:{initializeAssetTypeIdentifiers:oe.initialize,addAssetTypeIdentifier:oe.addOne,addAssetTypeIdentifiers:oe.addMany,setAssetTypeIdentifier:oe.setOne,setAssetTypeIdentifiers:oe.setMany,updateAssetTypeIdentifier:oe.updateOne,updateAssetTypeIdentifiers:oe.updateMany,deleteAssetTypeIdentifier:oe.deleteOne,deleteAssetTypeIdentifiers:oe.deleteMany}}),{initializeAssetTypeIdentifiers:Rl,addAssetTypeIdentifier:wl,addAssetTypeIdentifiers:El,setAssetTypeIdentifier:Vl,setAssetTypeIdentifiers:vl,updateAssetTypeIdentifier:Bl,updateAssetTypeIdentifiers:zl,deleteAssetTypeIdentifier:jl,deleteAssetTypeIdentifiers:Dl}=Ws.actions,ql=t=>t.assetTypeIdentifierReducer.instances,Ys=o.createSelector([ql],t=>Object.values(t)),$l=t=>s=>s.assetTypeIdentifierReducer.instances[t],Cl=f(o.createSelector([Ys,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),AP=f(o.createSelector([Ys,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),Ul=Ws.reducer,he=F(t=>t.uuid),Ll={instances:{}},Zs=o.createSlice({name:"assetTypeIdentifierValues",initialState:Ll,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Ll)),reducers:{initializeAssetTypeIdentifierValues:he.initialize,addAssetTypeIdentifierValue:he.addOne,addAssetTypeIdentifierValues:he.addMany,setAssetTypeIdentifierValue:he.setOne,setAssetTypeIdentifierValues:he.setMany,updateAssetTypeIdentifierValue:he.updateOne,updateAssetTypeIdentifierValues:he.updateMany,deleteAssetTypeIdentifierValue:he.deleteOne,deleteAssetTypeIdentifierValues:he.deleteMany}}),{initializeAssetTypeIdentifierValues:Nl,addAssetTypeIdentifierValue:Gl,addAssetTypeIdentifierValues:kl,setAssetTypeIdentifierValue:Hl,setAssetTypeIdentifierValues:Kl,updateAssetTypeIdentifierValue:Wl,updateAssetTypeIdentifierValues:Yl,deleteAssetTypeIdentifierValue:Zl,deleteAssetTypeIdentifierValues:Jl}=Zs.actions,Xl=t=>t.assetTypeIdentifierValueReducer.instances,Rt=o.createSelector([Xl],t=>Object.values(t)),Ql=t=>s=>s.assetTypeIdentifierValueReducer.instances[t],xl=f(o.createSelector([Rt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),fP=f(o.createSelector([Rt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset===s)))),SP=f(o.createSelector([Rt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type_identifier===s)))),eo=Zs.reducer,me=F(t=>t.uuid),to={instances:{}},Js=o.createSlice({name:"assetTypes",initialState:to,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,to)),reducers:{initializeAssetTypes:me.initialize,setAssetType:me.setOne,setAssetTypes:me.setMany,addAssetType:me.addOne,addAssetTypes:me.addMany,updateAssetType:me.updateOne,updateAssetTypes:me.updateMany,deleteAssetType:me.deleteOne,deleteAssetTypes:me.deleteMany}}),{initializeAssetTypes:so,setAssetType:io,setAssetTypes:no,addAssetType:ao,addAssetTypes:co,updateAssetType:ro,updateAssetTypes:uo,deleteAssetType:lo,deleteAssetTypes:oo}=Js.actions,ho=t=>t.assetTypeReducer.instances,Xs=o.createSelector([ho],t=>Object.values(t)),mo=t=>s=>s.assetTypeReducer.instances[t],yo=f(o.createSelector([Xs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),TP=f(o.createSelector([Xs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),po=Js.reducer,ye=F(t=>t.uuid),Ao={instances:{}},Qs=o.createSlice({name:"assetTypeStatuses",initialState:Ao,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Ao)),reducers:{initializeAssetTypeStatuses:ye.initialize,addAssetTypeStatus:ye.addOne,addAssetTypeStatuses:ye.addMany,setAssetTypeStatus:ye.setOne,setAssetTypeStatuses:ye.setMany,updateAssetTypeStatus:ye.updateOne,updateAssetTypeStatuses:ye.updateMany,deleteAssetTypeStatus:ye.deleteOne,deleteAssetTypeStatuses:ye.deleteMany}}),{initializeAssetTypeStatuses:fo,addAssetTypeStatus:So,addAssetTypeStatuses:To,setAssetTypeStatus:Io,setAssetTypeStatuses:Oo,updateAssetTypeStatus:Po,updateAssetTypeStatuses:Fo,deleteAssetTypeStatus:go,deleteAssetTypeStatuses:bo}=Qs.actions,Mo=t=>t.assetTypeStatusReducer.instances,xs=o.createSelector([Mo],t=>S(Object.values(t).toSorted(ta))),_o=t=>s=>s.assetTypeStatusReducer.instances[t],Ro=f(o.createSelector([xs,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),IP=f(o.createSelector([xs,(t,s)=>s],(t,s)=>S(t.filter(e=>e.asset_type===s)))),wo=Qs.reducer,Eo={accessToken:"",refreshToken:"",isLoggedIn:!1},wt=o.createSlice({name:"auth",initialState:Eo,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Eo)),reducers:{setTokens:(t,s)=>{t.accessToken=s.payload.accessToken,t.refreshToken=s.payload.refreshToken},clearTokens:t=>{t.accessToken="",t.refreshToken=""},setLoggedIn:(t,s)=>{s.payload||wt.caseReducers.clearTokens(t),t.isLoggedIn=s.payload}}}),{setTokens:OP,clearTokens:PP,setLoggedIn:Vo}=wt.actions,FP=t=>t.authReducer.accessToken,gP=t=>t.authReducer.isLoggedIn,vo=wt.reducer,pe=F(t=>t.uuid),Bo={instances:{}},ei=o.createSlice({name:"documentAttachments",initialState:Bo,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Bo)),reducers:{initializeDocumentAttachments:pe.initialize,addDocumentAttachment:pe.addOne,addDocumentAttachments:pe.addMany,setDocumentAttachment:pe.setOne,setDocumentAttachments:pe.setMany,updateDocumentAttachment:pe.updateOne,updateDocumentAttachments:pe.updateMany,deleteDocumentAttachment:pe.deleteOne,deleteDocumentAttachments:pe.deleteMany}}),{initializeDocumentAttachments:zo,addDocumentAttachment:jo,addDocumentAttachments:Do,setDocumentAttachment:qo,setDocumentAttachments:$o,updateDocumentAttachment:Co,updateDocumentAttachments:Uo,deleteDocumentAttachment:Lo,deleteDocumentAttachments:No}=ei.actions,Go=t=>t.documentAttachmentReducer.instances,ti=o.createSelector([Go],t=>Object.values(t)),ko=t=>s=>s.documentAttachmentReducer.instances[t],Ho=f(o.createSelector([ti,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),bP=f(o.createSelector([ti,(t,s)=>s],(t,s)=>S(t.filter(({document:e})=>s===e)))),Ko=ei.reducer,Ae=F(({uuid:t})=>t),Wo={instances:{}},si=o.createSlice({name:"documents",initialState:Wo,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>{Object.assign(s,Wo)}),reducers:{initializeDocuments:Ae.initialize,addDocument:Ae.addOne,addDocuments:Ae.addMany,setDocument:Ae.setOne,setDocuments:Ae.setMany,updateDocument:Ae.updateOne,updateDocuments:Ae.updateMany,deleteDocument:Ae.deleteOne,deleteDocuments:Ae.deleteMany}}),{initializeDocuments:Yo,addDocument:Zo,addDocuments:Jo,setDocument:Xo,setDocuments:Qo,updateDocument:xo,updateDocuments:eh,deleteDocument:th,deleteDocuments:sh}=si.actions,ih=si.reducer,ii=t=>t.documentsReducer.instances,Et=o.createSelector([ii],t=>Object.values(t)),nh=t=>s=>s.documentsReducer.instances[t],ah=f(o.createSelector([Et,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),MP=f(o.createSelector([Et,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),_P=f(o.createSelector([Et,(t,s)=>s],(t,s)=>t.filter(e=>e.organization===s))),ch=f(o.createSelector([ii,(t,s)=>s],(t,s)=>{if(!t[s])return S([]);const a=na(s,Object.values(t)).all().map(({model:c})=>c);return S(a)})),fe=F(t=>t.uuid),dh={instances:{}},ni=o.createSlice({name:"emailDomains",initialState:dh,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,dh)),reducers:{initializeEmailDomains:fe.initialize,addEmailDomain:fe.addOne,addEmailDomains:fe.addMany,setEmailDomain:fe.setOne,setEmailDomains:fe.setMany,updateEmailDomain:fe.updateOne,updateEmailDomains:fe.updateMany,deleteEmailDomain:fe.deleteOne,deleteEmailDomains:fe.deleteMany}}),{initializeEmailDomains:rh,addEmailDomain:uh,addEmailDomains:lh,setEmailDomain:oh,setEmailDomains:hh,updateEmailDomain:mh,updateEmailDomains:yh,deleteEmailDomain:ph,deleteEmailDomains:Ah}=ni.actions,fh=t=>t.emailDomainsReducer.instances,ai=o.createSelector([fh],t=>Object.values(t)),Sh=t=>s=>s.emailDomainsReducer.instances[t],Th=f(o.createSelector([ai,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),RP=f(o.createSelector([ai,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Ih=ni.reducer,Oh={s3Urls:{}},Ph=1e3*60*60,wP=Ph*24*7,ci=o.createSlice({name:"file",initialState:Oh,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Oh)),reducers:{setUploadUrl:(t,s)=>{const{url:e,fields:n,sha1:a}=s.payload,c=new Date,d=new Date(c.getTime()+wP);t.s3Urls[a]={url:e,fields:n,exp:d.getTime()}}}}),{setUploadUrl:EP}=ci.actions,VP=t=>s=>{const e=s.fileReducer.s3Urls[t];if(!e)return;const n=new Date().getTime();if(!((e.exp??n)-n<Ph))return e},Fh=ci.reducer,Se=F(t=>t.uuid),gh={instances:{}},di=o.createSlice({name:"formIdentifiers",initialState:gh,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,gh)),reducers:{initializeFormIdentifiers:Se.initialize,addFormIdentifier:Se.addOne,addFormIdentifiers:Se.addMany,setFormIdentifier:Se.setOne,setFormIdentifiers:Se.setMany,updateFormIdentifier:Se.updateOne,updateFormIdentifiers:Se.updateMany,deleteFormIdentifier:Se.deleteOne,deleteFormIdentifiers:Se.deleteMany}}),{initializeFormIdentifiers:bh,addFormIdentifier:Mh,addFormIdentifiers:_h,setFormIdentifier:Rh,setFormIdentifiers:wh,updateFormIdentifier:Eh,updateFormIdentifiers:Vh,deleteFormIdentifier:vh,deleteFormIdentifiers:Bh}=di.actions,zh=t=>t.formIdentifierReducer.instances,ri=o.createSelector([zh],t=>Object.values(t)),jh=t=>s=>s.formIdentifierReducer.instances[t],Dh=f(o.createSelector([ri,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),vP=f(o.createSelector([ri,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),qh=di.reducer,Te=F(t=>t.uuid),$h={instances:{}},ui=o.createSlice({name:"formIdentifierValues",initialState:$h,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,$h)),reducers:{initializeFormIdentifierValues:Te.initialize,addFormIdentifierValue:Te.addOne,addFormIdentifierValues:Te.addMany,setFormIdentifierValue:Te.setOne,setFormIdentifierValues:Te.setMany,updateFormIdentifierValue:Te.updateOne,updateFormIdentifierValues:Te.updateMany,deleteFormIdentifierValue:Te.deleteOne,deleteFormIdentifierValues:Te.deleteMany}}),{initializeFormIdentifierValues:Ch,addFormIdentifierValue:Uh,addFormIdentifierValues:Lh,setFormIdentifierValue:Nh,setFormIdentifierValues:Gh,updateFormIdentifierValue:kh,updateFormIdentifierValues:Hh,deleteFormIdentifierValue:Kh,deleteFormIdentifierValues:Wh}=ui.actions,Yh=t=>t.formIdentifierValueReducer.instances,Vt=o.createSelector([Yh],t=>Object.values(t)),Zh=t=>s=>s.formIdentifierValueReducer.instances[t],Jh=f(o.createSelector([Vt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),BP=f(o.createSelector([Vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_submission===s)))),zP=f(o.createSelector([Vt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_identifier===s)))),Xh=ui.reducer,Ie=F(t=>t.uuid),Qh={instances:{}},li=o.createSlice({name:"formRevisionAttachments",initialState:Qh,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Qh)),reducers:{initializeFormRevisionAttachments:Ie.initialize,addFormRevisionAttachment:Ie.addOne,addFormRevisionAttachments:Ie.addMany,setFormRevisionAttachment:Ie.setOne,setFormRevisionAttachments:Ie.setMany,updateFormRevisionAttachment:Ie.updateOne,updateFormRevisionAttachments:Ie.updateMany,deleteFormRevisionAttachment:Ie.deleteOne,deleteFormRevisionAttachments:Ie.deleteMany}}),{initializeFormRevisionAttachments:xh,addFormRevisionAttachment:em,addFormRevisionAttachments:tm,setFormRevisionAttachment:sm,setFormRevisionAttachments:im,updateFormRevisionAttachment:nm,updateFormRevisionAttachments:am,deleteFormRevisionAttachment:cm,deleteFormRevisionAttachments:dm}=li.actions,vt=t=>t.formRevisionAttachmentReducer.instances,rm=o.createSelector([vt],t=>Object.values(t)),um=f(o.createSelector([vt,(t,s)=>s],(t,s)=>t[s])),lm=f(o.createSelector([rm,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),jP=f(o.createSelector([vt,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.form_revision===s)))),om=li.reducer,Oe=F(t=>t.uuid),hm={instances:{}},oi=o.createSlice({name:"formRevisions",initialState:hm,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,hm)),reducers:{initializeFormRevisions:Oe.initialize,addFormRevision:Oe.addOne,addFormRevisions:Oe.addMany,setFormRevision:Oe.setOne,setFormRevisions:Oe.setMany,updateFormRevision:Oe.updateOne,updateFormRevisions:Oe.updateMany,deleteFormRevision:Oe.deleteOne,deleteFormRevisions:Oe.deleteMany}}),{initializeFormRevisions:mm,addFormRevision:hi,addFormRevisions:mi,setFormRevision:ym,setFormRevisions:pm,updateFormRevision:Am,updateFormRevisions:fm,deleteFormRevision:yi,deleteFormRevisions:pi}=oi.actions,Ai=t=>t.formRevisionReducer.instances,Bt=o.createSelector([Ai],t=>Object.values(t)),Sm=t=>s=>s.formRevisionReducer.instances[t],Tm=f(o.createSelector([Bt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),DP=f(o.createSelector([Bt,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),Im=f(o.createSelector([Bt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form===s)))),Om=oi.reducer,Pe=F(t=>t.uuid),Pm={instances:{}},fi=o.createSlice({name:"forms",initialState:Pm,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Pm)),reducers:{initializeForms:Pe.initialize,addForm:Pe.addOne,addForms:Pe.addMany,setForm:Pe.setOne,setForms:Pe.setMany,updateForm:Pe.updateOne,updateForms:Pe.updateMany,deleteForm:Pe.deleteOne,deleteForms:Pe.deleteMany}}),{initializeForms:Fm,addForm:gm,addForms:bm,setForm:Mm,setForms:_m,updateForm:Rm,updateForms:wm,deleteForm:Em,deleteForms:Vm}=fi.actions,vm=fi.reducer,Bm=t=>t.formReducer.instances,Si=o.createSelector([Bm],t=>Object.values(t)),zm=t=>s=>s.formReducer.instances[t],jm=f(o.createSelector([Si,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),qP=f(o.createSelector([Si,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Fe=F(t=>t.uuid),Dm={instances:{}},Ti=o.createSlice({name:"formSubmissionAttachments",initialState:Dm,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Dm)),reducers:{initializeFormSubmissionAttachments:Fe.initialize,addFormSubmissionAttachment:Fe.addOne,addFormSubmissionAttachments:Fe.addMany,setFormSubmissionAttachment:Fe.setOne,setFormSubmissionAttachments:Fe.setMany,updateFormSubmissionAttachment:Fe.updateOne,updateFormSubmissionAttachments:Fe.updateMany,deleteFormSubmissionAttachment:Fe.deleteOne,deleteFormSubmissionAttachments:Fe.deleteMany}}),{initializeFormSubmissionAttachments:qm,addFormSubmissionAttachment:$m,addFormSubmissionAttachments:Ii,setFormSubmissionAttachment:Cm,setFormSubmissionAttachments:Um,updateFormSubmissionAttachment:Lm,updateFormSubmissionAttachments:Nm,deleteFormSubmissionAttachment:Gm,deleteFormSubmissionAttachments:Oi}=Ti.actions,Pi=t=>t.formSubmissionAttachmentReducer.instances,Fi=o.createSelector([Pi],t=>Object.values(t)),km=f(o.createSelector([Pi,(t,s)=>s],(t,s)=>t[s])),gi=f(o.createSelector([Fi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(n=>e.has(n.uuid)))})),Hm=gi,Km=f(o.createSelector([Fi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.form_submission===s)))),Wm=Ti.reducer,ge=F(t=>t.uuid),Ym={instances:{}},bi=o.createSlice({name:"formSubmissions",initialState:Ym,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Ym)),reducers:{initializeFormSubmissions:ge.initialize,setFormSubmission:ge.setOne,setFormSubmissions:ge.setMany,addFormSubmission:ge.addOne,addFormSubmissions:ge.addMany,updateFormSubmission:ge.updateOne,updateFormSubmissions:ge.updateMany,deleteFormSubmission:ge.deleteOne,deleteFormSubmissions:ge.deleteMany}}),{initializeFormSubmissions:Zm,setFormSubmission:Jm,setFormSubmissions:Xm,addFormSubmission:Qm,addFormSubmissions:Mi,updateFormSubmission:xm,updateFormSubmissions:ey,deleteFormSubmission:ty,deleteFormSubmissions:_i}=bi.actions,Ri=t=>t.formSubmissionReducer.instances,sy=o.createSelector([Ri],t=>Object.values(t)),iy=t=>s=>s.formSubmissionReducer.instances[t],ny=f(o.createSelector([sy,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ay=f(o.createSelector([Ri,Ai,(t,s)=>s],(t,s,e)=>{const n=new Set;for(const a of Object.values(s))a.form===e&&n.add(a.uuid);return Object.values(t).filter(a=>n.has(a.form_revision))})),cy=bi.reducer,be=F(t=>t.uuid),dy={instances:{}},wi=o.createSlice({name:"geoImages",initialState:dy,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,dy)),reducers:{initializeGeoImages:be.initialize,setGeoImage:be.setOne,setGeoImages:be.setMany,addGeoImage:be.addOne,addGeoImages:be.addMany,updateGeoImage:be.updateOne,updateGeoImages:be.updateMany,deleteGeoImage:be.deleteOne,deleteGeoImages:be.deleteMany}}),{initializeGeoImages:ry,setGeoImage:uy,setGeoImages:ly,addGeoImage:oy,addGeoImages:hy,updateGeoImage:my,updateGeoImages:yy,deleteGeoImage:py,deleteGeoImages:Ay}=wi.actions,fy=t=>t.geoImageReducer.instances,Ei=o.createSelector([fy],t=>Object.values(t)),Sy=t=>s=>s.geoImageReducer.instances[t],Ty=f(o.createSelector([Ei,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$P=f(o.createSelector([Ei,(t,s)=>s],(t,s)=>S(t.filter(e=>e.project===s)))),Iy=wi.reducer,Me=F(t=>t.uuid),Oy={instances:{}},Vi=o.createSlice({name:"issueAssociations",initialState:Oy,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Oy)),reducers:{initializeIssueAssociations:Me.initialize,addIssueAssociation:Me.addOne,addIssueAssociations:Me.addMany,setIssueAssociation:Me.setOne,setIssueAssociations:Me.setMany,updateIssueAssociation:Me.updateOne,updateIssueAssociations:Me.updateMany,deleteIssueAssociation:Me.deleteOne,deleteIssueAssociations:Me.deleteMany}}),{initializeIssueAssociations:Py,setIssueAssociations:Fy,setIssueAssociation:gy,updateIssueAssociation:by,updateIssueAssociations:My,addIssueAssociation:_y,addIssueAssociations:et,deleteIssueAssociation:Ry,deleteIssueAssociations:tt}=Vi.actions,wy=t=>t.issueAssociationReducer.instances,st=o.createSelector([wy],t=>Object.values(t)),Ey=t=>s=>s.issueAssociationReducer.instances[t],Vy=f(o.createSelector([st,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),vy=f(o.createSelector([st,(t,s)=>s],(t,s)=>S(t.filter(({associated_issue:e})=>e===s)))),By=f(o.createSelector([st,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({associated_issue:n})=>e.has(n)))})),zy=f(o.createSelector([st,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({issue:n})=>n&&e.has(n)))})),jy=f(o.createSelector([st,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>e===s)))),Dy=f(o.createSelector([st,(t,s)=>s],(t,s)=>S(t.filter(({asset:e})=>e===s)))),qy=Vi.reducer,_e=F(t=>t.uuid),$y={instances:{}},vi=o.createSlice({name:"issueAttachments",initialState:$y,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,$y)),reducers:{initializeIssueAttachments:_e.initialize,addIssueAttachment:_e.addOne,addIssueAttachments:_e.addMany,setIssueAttachment:_e.setOne,setIssueAttachments:_e.setMany,updateIssueAttachment:_e.updateOne,updateIssueAttachments:_e.updateMany,deleteIssueAttachment:_e.deleteOne,deleteIssueAttachments:_e.deleteMany}}),{initializeIssueAttachments:Cy,addIssueAttachment:Uy,addIssueAttachments:Bi,setIssueAttachment:Ly,setIssueAttachments:Ny,updateIssueAttachment:Gy,updateIssueAttachments:ky,deleteIssueAttachment:Hy,deleteIssueAttachments:zi}=vi.actions,Ky=t=>t.issueAttachmentReducer.instances,ji=o.createSelector([Ky],t=>Object.values(t)),Wy=f(o.createSelector([ji,(t,s)=>s],(t,s)=>S(t.filter(({issue:e})=>s===e)))),Yy=t=>s=>s.issueAttachmentReducer.instances[t],Zy=f(o.createSelector([ji,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),Jy=vi.reducer,Re=F(t=>t.uuid),Xy={instances:{}},Di=o.createSlice({name:"issueCommentAttachments",initialState:Xy,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,Xy)),reducers:{initializeIssueCommentAttachments:Re.initialize,addIssueCommentAttachment:Re.addOne,addIssueCommentAttachments:Re.addMany,setIssueCommentAttachment:Re.setOne,setIssueCommentAttachments:Re.setMany,updateIssueCommentAttachment:Re.updateOne,updateIssueCommentAttachments:Re.updateMany,deleteIssueCommentAttachment:Re.deleteOne,deleteIssueCommentAttachments:Re.deleteMany}}),{initializeIssueCommentAttachments:Qy,addIssueCommentAttachment:xy,addIssueCommentAttachments:ep,setIssueCommentAttachment:tp,setIssueCommentAttachments:sp,updateIssueCommentAttachment:ip,updateIssueCommentAttachments:np,deleteIssueCommentAttachment:ap,deleteIssueCommentAttachments:cp}=Di.actions,dp=t=>t.issueCommentAttachmentReducer.instances,qi=o.createSelector([dp],t=>Object.values(t)),rp=t=>s=>s.issueCommentAttachmentReducer.instances[t],up=f(o.createSelector([qi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),CP=f(o.createSelector([qi,(t,s)=>s],(t,s)=>S(t.filter(({issue_comment:e})=>s===e)))),lp=Di.reducer,we=F(t=>t.uuid),op={instances:{}},$i=o.createSlice({name:"issueComments",initialState:op,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,op)),reducers:{initializeIssueComments:we.initialize,addIssueComment:we.addOne,addIssueComments:we.addMany,setIssueComment:we.setOne,setIssueComments:we.setMany,updateIssueComment:we.updateOne,updateIssueComments:we.updateMany,deleteIssueComment:we.deleteOne,deleteIssueComments:we.deleteMany}}),{initializeIssueComments:hp,addIssueComment:mp,addIssueComments:yp,setIssueComment:pp,setIssueComments:Ap,updateIssueComment:fp,updateIssueComments:Sp,deleteIssueComment:Tp,deleteIssueComments:Ip}=$i.actions,Ci=t=>t.issueCommentReducer.instances,Op=t=>s=>s.issueCommentReducer.instances[t],Pp=f(o.createSelector([Ci,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(Object.values(t).filter(({uuid:n})=>e.has(n)))})),UP=f(o.createSelector([Ci,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.issue===s)))),Fp=$i.reducer,Ee=F(t=>t.uuid),gp={instances:{}},Ui=o.createSlice({name:"issues",initialState:gp,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,gp)),reducers:{initializeIssues:Ee.initialize,addIssue:Ee.addOne,addIssues:Ee.addMany,setIssue:Ee.setOne,setIssues:Ee.setMany,updateIssue:Ee.updateOne,updateIssues:Ee.updateMany,deleteIssue:Ee.deleteOne,deleteIssues:Ee.deleteMany}}),{initializeIssues:bp,addIssue:Mp,addIssues:Li,setIssue:_p,setIssues:Rp,updateIssue:wp,updateIssues:Ep,deleteIssue:Vp,deleteIssues:Ni}=Ui.actions,vp=t=>t.issueReducer.instances,zt=o.createSelector([vp],t=>Object.values(t)),Bp=t=>s=>s.issueReducer.instances[t],zp=f(o.createSelector([zt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),LP=f(o.createSelector([zt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),jp=f(o.createSelector([zt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s))),Dp=Ui.reducer,Ve=F(t=>t.uuid),qp={instances:{}},Gi=o.createSlice({name:"issueTypeAttachments",initialState:qp,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,qp)),reducers:{initializeIssueTypeAttachments:Ve.initialize,addIssueTypeAttachment:Ve.addOne,addIssueTypeAttachments:Ve.addMany,setIssueTypeAttachment:Ve.setOne,setIssueTypeAttachments:Ve.setMany,updateIssueTypeAttachment:Ve.updateOne,updateIssueTypeAttachments:Ve.updateMany,deleteIssueTypeAttachment:Ve.deleteOne,deleteIssueTypeAttachments:Ve.deleteMany}}),{initializeIssueTypeAttachments:$p,addIssueTypeAttachment:Cp,addIssueTypeAttachments:Up,setIssueTypeAttachment:Lp,setIssueTypeAttachments:Np,updateIssueTypeAttachment:Gp,updateIssueTypeAttachments:kp,deleteIssueTypeAttachment:Hp,deleteIssueTypeAttachments:Kp}=Gi.actions,Wp=t=>t.issueTypeAttachmentReducer.instances,ki=o.createSelector([Wp],t=>Object.values(t)),Yp=t=>s=>s.issueTypeAttachmentReducer.instances[t],Zp=f(o.createSelector([ki,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),NP=f(o.createSelector([ki,(t,s)=>s],(t,s)=>S(t.filter(({issue_type:e})=>s===e)))),Jp=Gi.reducer,ve=F(t=>t.uuid),Xp={instances:{}},Hi=o.createSlice({name:"issueTypeFieldsAttachments",initialState:Xp,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Xp)),reducers:{initializeIssueTypeFieldsAttachments:ve.initialize,addIssueTypeFieldsAttachment:ve.addOne,addIssueTypeFieldsAttachments:ve.addMany,setIssueTypeFieldsAttachment:ve.setOne,setIssueTypeFieldsAttachments:ve.setMany,updateIssueTypeFieldsAttachment:ve.updateOne,updateIssueTypeFieldsAttachments:ve.updateMany,deleteIssueTypeFieldsAttachment:ve.deleteOne,deleteIssueTypeFieldsAttachments:ve.deleteMany}}),{initializeIssueTypeFieldsAttachments:Qp,addIssueTypeFieldsAttachment:xp,addIssueTypeFieldsAttachments:eA,setIssueTypeFieldsAttachment:tA,setIssueTypeFieldsAttachments:sA,updateIssueTypeFieldsAttachment:iA,updateIssueTypeFieldsAttachments:nA,deleteIssueTypeFieldsAttachment:aA,deleteIssueTypeFieldsAttachments:cA}=Hi.actions,dA=t=>t.issueTypeFieldsAttachmentReducer.instances,Ki=o.createSelector([dA],t=>Object.values(t)),GP=f(o.createSelector([Ki,(t,s)=>s],(t,s)=>S(t.filter(e=>e.fields_revision===s)))),rA=t=>s=>s.issueTypeFieldsAttachmentReducer.instances[t],uA=f(o.createSelector([Ki,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),lA=Hi.reducer,Be=F(t=>t.uuid),oA={instances:{}},Wi=o.createSlice({name:"issueTypeFieldValues",initialState:oA,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,oA)),reducers:{initializeIssueTypeFieldValues:Be.initialize,addIssueTypeFieldValues:Be.addOne,addIssueTypeFieldValuesMany:Be.addMany,setIssueTypeFieldValues:Be.setOne,setIssueTypeFieldValuesMany:Be.setMany,updateIssueTypeFieldValues:Be.updateOne,updateIssueTypeFieldValuesMany:Be.updateMany,deleteIssueTypeFieldValues:Be.deleteOne,deleteIssueTypeFieldValuesMany:Be.deleteMany}}),{initializeIssueTypeFieldValues:hA,addIssueTypeFieldValues:mA,addIssueTypeFieldValuesMany:yA,setIssueTypeFieldValues:pA,setIssueTypeFieldValuesMany:AA,updateIssueTypeFieldValues:fA,updateIssueTypeFieldValuesMany:SA,deleteIssueTypeFieldValues:TA,deleteIssueTypeFieldValuesMany:IA}=Wi.actions,OA=t=>t.issueTypeFieldValuesReducer.instances,jt=o.createSelector([OA],t=>Object.values(t)),kP=f(o.createSelector([jt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),PA=t=>s=>s.issueTypeFieldValuesReducer.instances[t],FA=f(o.createSelector([jt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),gA=Wi.reducer,ze=F(t=>t.uuid),bA={instances:{}},Yi=o.createSlice({name:"issueTypeFields",initialState:bA,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,bA)),reducers:{initializeIssueTypeFields:ze.initialize,addIssueTypeFields:ze.addOne,addIssueTypeFieldsMany:ze.addMany,setIssueTypeFields:ze.setOne,setIssueTypeFieldsMany:ze.setMany,updateIssueTypeFields:ze.updateOne,updateIssueTypeFieldsMany:ze.updateMany,deleteIssueTypeFields:ze.deleteOne,deleteIssueTypeFieldsMany:ze.deleteMany}}),{initializeIssueTypeFields:MA,addIssueTypeFields:_A,addIssueTypeFieldsMany:RA,setIssueTypeFields:wA,setIssueTypeFieldsMany:EA,updateIssueTypeFields:VA,updateIssueTypeFieldsMany:vA,deleteIssueTypeFields:BA,deleteIssueTypeFieldsMany:zA}=Yi.actions,jA=t=>t.issueTypeFieldsReducer.instances,yt=o.createSelector([jA],t=>Object.values(t)),HP=f(o.createSelector([yt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),KP=f(o.createSelector([yt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),WP=f(o.createSelector([yt,jt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.issue_type===e).map(a=>a.uuid));return S(s.filter(a=>n.has(a.fields_revision)))})),DA=t=>s=>s.issueTypeFieldsReducer.instances[t],qA=f(o.createSelector([yt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),$A=Yi.reducer,je=F(t=>t.uuid),CA={instances:{}},Zi=o.createSlice({name:"issueTypeFieldValuesAttachments",initialState:CA,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,CA)),reducers:{initializeIssueTypeFieldValuesAttachments:je.initialize,addIssueTypeFieldValuesAttachment:je.addOne,addIssueTypeFieldValuesAttachments:je.addMany,setIssueTypeFieldValuesAttachment:je.setOne,setIssueTypeFieldValuesAttachments:je.setMany,updateIssueTypeFieldValuesAttachment:je.updateOne,updateIssueTypeFieldValuesAttachments:je.updateMany,deleteIssueTypeFieldValuesAttachment:je.deleteOne,deleteIssueTypeFieldValuesAttachments:je.deleteMany}}),{initializeIssueTypeFieldValuesAttachments:UA,addIssueTypeFieldValuesAttachment:LA,addIssueTypeFieldValuesAttachments:Ji,setIssueTypeFieldValuesAttachment:NA,setIssueTypeFieldValuesAttachments:GA,updateIssueTypeFieldValuesAttachment:kA,updateIssueTypeFieldValuesAttachments:HA,deleteIssueTypeFieldValuesAttachment:KA,deleteIssueTypeFieldValuesAttachments:Xi}=Zi.actions,WA=t=>t.issueTypeFieldValuesAttachmentReducer.instances,Qi=o.createSelector([WA],t=>Object.values(t)),YA=t=>s=>s.issueTypeFieldValuesAttachmentReducer.instances[t],ZA=f(o.createSelector([Qi,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),JA=f(o.createSelector([Qi,(t,s)=>s],(t,s)=>S(t.filter(e=>e.field_values===s)))),XA=Zi.reducer,De=F(t=>t.uuid),QA={instances:{}},xi=o.createSlice({name:"issueTypeIdentifiers",initialState:QA,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,QA)),reducers:{initializeIssueTypeIdentifiers:De.initialize,addIssueTypeIdentifier:De.addOne,addIssueTypeIdentifiers:De.addMany,setIssueTypeIdentifier:De.setOne,setIssueTypeIdentifiers:De.setMany,updateIssueTypeIdentifier:De.updateOne,updateIssueTypeIdentifiers:De.updateMany,deleteIssueTypeIdentifier:De.deleteOne,deleteIssueTypeIdentifiers:De.deleteMany}}),{initializeIssueTypeIdentifiers:xA,addIssueTypeIdentifier:ef,addIssueTypeIdentifiers:tf,setIssueTypeIdentifier:sf,setIssueTypeIdentifiers:nf,updateIssueTypeIdentifier:af,updateIssueTypeIdentifiers:cf,deleteIssueTypeIdentifier:df,deleteIssueTypeIdentifiers:rf}=xi.actions,uf=t=>t.issueTypeIdentifierReducer.instances,en=o.createSelector([uf],t=>Object.values(t)),lf=t=>s=>s.issueTypeIdentifierReducer.instances[t],of=f(o.createSelector([en,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),YP=f(o.createSelector([en,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),hf=xi.reducer,qe=F(t=>t.uuid),mf={instances:{}},tn=o.createSlice({name:"issueTypeIdentifierValues",initialState:mf,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,mf)),reducers:{initializeIssueTypeIdentifierValues:qe.initialize,addIssueTypeIdentifierValue:qe.addOne,addIssueTypeIdentifierValues:qe.addMany,setIssueTypeIdentifierValue:qe.setOne,setIssueTypeIdentifierValues:qe.setMany,updateIssueTypeIdentifierValue:qe.updateOne,updateIssueTypeIdentifierValues:qe.updateMany,deleteIssueTypeIdentifierValue:qe.deleteOne,deleteIssueTypeIdentifierValues:qe.deleteMany}}),{initializeIssueTypeIdentifierValues:yf,addIssueTypeIdentifierValue:pf,addIssueTypeIdentifierValues:Af,setIssueTypeIdentifierValue:ff,setIssueTypeIdentifierValues:Sf,updateIssueTypeIdentifierValue:Tf,updateIssueTypeIdentifierValues:If,deleteIssueTypeIdentifierValue:Of,deleteIssueTypeIdentifierValues:Pf}=tn.actions,Ff=t=>t.issueTypeIdentifierValueReducer.instances,Dt=o.createSelector([Ff],t=>Object.values(t)),gf=t=>s=>s.issueTypeIdentifierValueReducer.instances[t],bf=f(o.createSelector([Dt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ZP=f(o.createSelector([Dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),JP=f(o.createSelector([Dt,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type_identifier===s)))),Mf=tn.reducer,$e=F(t=>t.uuid),_f={instances:{}},sn=o.createSlice({name:"issueTypes",initialState:_f,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,_f)),reducers:{initializeIssueTypes:$e.initialize,addIssueType:$e.addOne,addIssueTypes:$e.addMany,setIssueType:$e.setOne,setIssueTypes:$e.setMany,updateIssueType:$e.updateOne,updateIssueTypes:$e.updateMany,deleteIssueType:$e.deleteOne,deleteIssueTypes:$e.deleteMany}}),{initializeIssueTypes:Rf,addIssueType:wf,addIssueTypes:Ef,setIssueType:Vf,setIssueTypes:vf,updateIssueType:Bf,updateIssueTypes:zf,deleteIssueType:jf,deleteIssueTypes:Df}=sn.actions,qf=t=>t.issueTypeReducer.instances,nn=o.createSelector(qf,t=>Object.values(t)),$f=t=>s=>s.issueTypeReducer.instances[t],Cf=f(o.createSelector([nn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),XP=f(o.createSelector([nn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),Uf=sn.reducer,Ce=F(t=>t.uuid),Lf={instances:{}},an=o.createSlice({name:"issueTypeStatuses",initialState:Lf,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,Lf)),reducers:{initializeIssueTypeStatuses:Ce.initialize,addIssueTypeStatus:Ce.addOne,addIssueTypeStatuses:Ce.addMany,setIssueTypeStatus:Ce.setOne,setIssueTypeStatuses:Ce.setMany,updateIssueTypeStatus:Ce.updateOne,updateIssueTypeStatuses:Ce.updateMany,deleteIssueTypeStatus:Ce.deleteOne,deleteIssueTypeStatuses:Ce.deleteMany}}),{initializeIssueTypeStatuses:Nf,addIssueTypeStatus:Gf,addIssueTypeStatuses:kf,setIssueTypeStatus:Hf,setIssueTypeStatuses:Kf,updateIssueTypeStatus:Wf,updateIssueTypeStatuses:Yf,deleteIssueTypeStatus:Zf,deleteIssueTypeStatuses:Jf}=an.actions,Xf=t=>t.issueTypeStatusReducer.instances,cn=o.createSelector([Xf],t=>S(Object.values(t).toSorted(sa))),dn=t=>s=>s.issueTypeStatusReducer.instances[t],Qf=f(o.createSelector([cn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),QP=f(o.createSelector([cn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue_type===s)))),xf=an.reducer,Ue=F(t=>t.uuid),eS={instances:{}},rn=o.createSlice({name:"issueUpdates",initialState:eS,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,eS)),reducers:{initializeIssueUpdates:Ue.initialize,addIssueUpdate:Ue.addOne,addIssueUpdates:Ue.addMany,setIssueUpdate:Ue.setOne,setIssueUpdates:Ue.setMany,updateIssueUpdate:Ue.updateOne,updateIssueUpdates:Ue.updateMany,deleteIssueUpdate:Ue.deleteOne,deleteIssueUpdates:Ue.deleteMany}}),{initializeIssueUpdates:tS,addIssueUpdate:un,addIssueUpdates:ln,setIssueUpdate:sS,setIssueUpdates:iS,updateIssueUpdate:nS,updateIssueUpdates:aS,deleteIssueUpdate:on,deleteIssueUpdates:hn}=rn.actions,mn=t=>t.issueUpdateReducer.instances,yn=o.createSelector([mn],t=>Object.values(t)),cS=f(o.createSelector([mn,(t,s)=>s],(t,s)=>t[s])),dS=f(o.createSelector([yn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),rS=f(o.createSelector([yn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.issue===s)))),uS=rn.reducer,Le=F(t=>t.id),lS={instances:{},currentUser:null},pn=o.createSlice({name:"users",initialState:lS,extraReducers:t=>t.addCase(O,s=>Object.assign(s,lS)).addCase(g,s=>Object.assign(s,{...s,instances:[]})),reducers:{initializeUsers:Le.initialize,setUsers:Le.setMany,setUser:Le.setOne,addUsers:Le.addMany,addUser:Le.addOne,updateUsers:Le.updateMany,updateUser:Le.updateOne,deleteUser:Le.deleteOne,deleteUsers:Le.deleteMany,setCurrentUser:(t,s)=>{t.currentUser=s.payload},setProfilePicture:(t,s)=>{if(!t.currentUser)return;t.currentUser.profile.file_url=s.payload.file_url??null,t.currentUser.profile.file_sha1=s.payload.file_sha1??null,t.currentUser.profile.file_extension=s.payload.file_extension??null;const e=t.instances[t.currentUser.id];if(!e)throw new Error("Unable to find current user in users slice");e.profile.file_url=s.payload.file_url??null,e.profile.file_sha1=s.payload.file_sha1??null,t.currentUser.profile.file_extension=s.payload.file_extension??null}}}),{initializeUsers:oS,setUsers:hS,setUser:mS,addUsers:yS,addUser:An,updateUsers:pS,updateUser:AS,deleteUser:fn,deleteUsers:fS,setCurrentUser:xP,setProfilePicture:eF}=pn.actions,SS=pn.reducer,TS=t=>t.userReducer.currentUser,Sn=t=>t.userReducer.instances,qt=o.createSelector([Sn],t=>Object.values(t)),$t=t=>s=>s.userReducer.instances[t],IS=f(o.createSelector([qt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({id:n})=>e.has(n)))})),Ne=F(t=>t.uuid),OS={instances:{}},Tn=o.createSlice({name:"organizationAccess",initialState:OS,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,OS)),reducers:{initializeOrganizationAccesses:Ne.initialize,addOrganizationAccess:Ne.addOne,addOrganizationAccesses:Ne.addMany,setOrganizationAccess:Ne.setOne,setOrganizationAccesses:Ne.setMany,updateOrganizationAccess:Ne.updateOne,updateOrganizationAccesses:Ne.updateMany,deleteOrganizationAccess:Ne.deleteOne,deleteOrganizationAccesses:Ne.deleteMany}}),{initializeOrganizationAccesses:PS,addOrganizationAccess:FS,addOrganizationAccesses:gS,setOrganizationAccess:bS,setOrganizationAccesses:MS,updateOrganizationAccess:_S,updateOrganizationAccesses:RS,deleteOrganizationAccess:wS,deleteOrganizationAccesses:ES}=Tn.actions,VS=Tn.reducer,Ct=t=>t.organizationAccessReducer.instances,vS=t=>s=>s.organizationAccessReducer.instances[t],BS=f(o.createSelector([Ct,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(Object.values(t).filter(({uuid:n})=>e.has(n)))})),tF=o.createSelector([TS,Ct],(t,s)=>Object.values(s).find(n=>n.user===(t==null?void 0:t.id))??null),zS=o.createSelector([Ct],t=>{const s={};for(const e of Object.values(t))s[e.user]=e;return St(s)}),sF=f(o.createSelector([Sn,zS,(t,s)=>s],(t,s,e)=>S(Object.values(t).filter(n=>{const a=s[n.id];return!!a&&a.organization===e})))),Ge=F(t=>t.uuid),jS={instances:{}},In=o.createSlice({name:"organizations",initialState:jS,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,jS)),reducers:{initializeOrganizations:Ge.initialize,setOrganizations:Ge.setMany,setOrganization:Ge.setOne,addOrganizations:Ge.addMany,addOrganization:Ge.addOne,updateOrganizations:Ge.updateMany,updateOrganization:Ge.updateOne,deleteOrganization:Ge.deleteOne,deleteOrganizations:Ge.deleteMany}}),{initializeOrganizations:DS,setOrganizations:qS,setOrganization:$S,addOrganizations:CS,addOrganization:US,updateOrganizations:LS,updateOrganization:NS,deleteOrganization:GS,deleteOrganizations:kS}=In.actions,HS=t=>t.organizationReducer.instances,KS=o.createSelector([HS],t=>Object.values(t)),WS=t=>s=>s.organizationReducer.instances[t],YS=f(o.createSelector([KS,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),ZS=In.reducer,JS=(t,s,e)=>{const n=t.uuid?t:{...t,uuid:Xe.v4()};return{payload:n,type:"",meta:{offline:{effect:{timestamp:new Date().toISOString(),request:n,BASE_URL:s,serviceName:e}}}}},XS={deletedRequests:[],latestRetryTime:0},On=o.createSlice({name:"outbox",initialState:XS,extraReducers:t=>t.addCase(O,s=>Object.assign(s,XS)),reducers:{enqueueRequest:{reducer:(t,s)=>t,prepare:t=>{console.debug("Preparing to enqueue request",t.url);const{BASE_URL:s,serviceName:e,...n}=t;return JS(n,s,e)}},markForDeletion(t,s){t.deletedRequests.push(s.payload)},markAsDeleted(t,s){const e=t.deletedRequests.indexOf(s.payload);e!==-1&&t.deletedRequests.splice(e,1)},_setLatestRetryTime:(t,s)=>{t.latestRetryTime=s.payload}}}),iF=t=>t.outboxReducer.deletedRequests,nF=t=>t.outboxReducer.latestRetryTime,{enqueueRequest:QS,markForDeletion:aF,markAsDeleted:xS,_setLatestRetryTime:eT}=On.actions,tT=On.reducer,ke=F(t=>t.uuid),sT={instances:{}},Pn=o.createSlice({name:"projectAccess",initialState:sT,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,sT)),reducers:{initializeProjectAccesses:ke.initialize,addProjectAccess:ke.addOne,addProjectAccesses:ke.addMany,setProjectAccess:ke.setOne,setProjectAccesses:ke.setMany,updateProjectAccess:ke.updateOne,updateProjectAccesses:ke.updateMany,deleteProjectAccess:ke.deleteOne,deleteProjectAccesses:ke.deleteMany}}),{initializeProjectAccesses:iT,addProjectAccess:nT,addProjectAccesses:aT,setProjectAccess:cT,setProjectAccesses:dT,updateProjectAccess:rT,updateProjectAccesses:uT,deleteProjectAccess:lT,deleteProjectAccesses:oT}=Pn.actions,hT=Pn.reducer,Fn=t=>t.projectAccessReducer.instances,pt=o.createSelector(Fn,t=>Object.values(t)),mT=t=>s=>s.projectAccessReducer.instances[t],yT=f(o.createSelector([pt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),cF=f(o.createSelector([Fn,(t,s)=>s],(t,s)=>S(Object.values(t).filter(e=>e.project===s)))),dF=f(o.createSelector([pt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.project===s))e[n.user]=n;return e})),rF=f(o.createSelector([qt,pt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.project===e).map(a=>a.user));return S(t.filter(a=>n.has(a.id)))})),He=F(t=>t.uuid),pT={instances:{}},gn=o.createSlice({name:"projectAttachments",initialState:pT,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,pT)),reducers:{initializeProjectAttachments:He.initialize,addProjectAttachment:He.addOne,addProjectAttachments:He.addMany,setProjectAttachment:He.setOne,setProjectAttachments:He.setMany,updateProjectAttachment:He.updateOne,updateProjectAttachments:He.updateMany,deleteProjectAttachment:He.deleteOne,deleteProjectAttachments:He.deleteMany}}),{initializeProjectAttachments:AT,addProjectAttachment:fT,addProjectAttachments:ST,setProjectAttachment:TT,setProjectAttachments:IT,updateProjectAttachment:OT,updateProjectAttachments:PT,deleteProjectAttachment:FT,deleteProjectAttachments:gT}=gn.actions,bT=t=>t.projectAttachmentReducer.instances,bn=o.createSelector([bT],t=>Object.values(t)),MT=t=>s=>s.projectAttachmentReducer.instances[t],_T=f(o.createSelector([bn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),uF=f(o.createSelector([bn,(t,s)=>s],(t,s)=>S(t.filter(({project:e})=>s===e)))),RT=gn.reducer,Ke=F(t=>t.uuid),wT={instances:{}},Mn=o.createSlice({name:"projectFiles",initialState:wT,extraReducers:t=>t.addMatcher(o.isAnyOf(O,j,g),s=>Object.assign(s,wT)),reducers:{initializeProjectFiles:Ke.initialize,setProjectFile:Ke.setOne,setProjectFiles:Ke.setMany,addProjectFile:Ke.addOne,addProjectFiles:Ke.addMany,updateProjectFile:Ke.updateOne,updateProjectFiles:Ke.updateMany,deleteProjectFile:Ke.deleteOne,deleteProjectFiles:Ke.deleteMany}}),{initializeProjectFiles:ET,setProjectFile:VT,setProjectFiles:vT,addProjectFile:BT,addProjectFiles:zT,updateProjectFile:jT,updateProjectFiles:DT,deleteProjectFile:qT,deleteProjectFiles:$T}=Mn.actions,CT=t=>t.projectFileReducer.instances,UT=o.createSelector([CT],t=>S(Object.values(t).sort((s,e)=>s.z_index-e.z_index))),LT=t=>s=>s.projectFileReducer.instances[t],NT=f(o.createSelector([UT,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),GT=Mn.reducer,We=F(t=>t.uuid),kT={instances:{}},_n=o.createSlice({name:"projects",initialState:kT,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,kT)),reducers:{initializeProjects:We.initialize,setProjects:We.setMany,setProject:We.setOne,addProjects:We.addMany,addProject:We.addOne,updateProjects:We.updateMany,updateProject:We.updateOne,deleteProject:We.deleteOne,deleteProjects:We.deleteMany}}),{initializeProjects:HT,setProjects:KT,setProject:WT,addProjects:YT,addProject:ZT,updateProjects:JT,updateProject:XT,deleteProject:QT,deleteProjects:xT}=_n.actions,eI=_n.reducer,tI=t=>t.projectReducer.instances,Ut=o.createSelector([tI],t=>Object.values(t)),sI=t=>s=>s.projectReducer.instances[t],iI=f(o.createSelector([Ut,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),lF=f(o.createSelector([Ut,pt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.user===e).map(a=>a.project));return S(t.filter(a=>n.has(a.uuid)))})),oF=f(o.createSelector([Ut,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),hF={isRehydrated:!1},Rn=o.createSlice({name:"rehydrated",initialState:hF,reducers:{setRehydrated:(t,s)=>{t.isRehydrated=s.payload}}}),{setRehydrated:mF}=Rn.actions,yF=t=>t.rehydratedReducer.isRehydrated,nI=Rn.reducer,Ye=F(t=>t.uuid),aI={instances:{}},wn=o.createSlice({name:"teamMemberships",initialState:aI,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,aI)),reducers:{initializeTeamMemberships:Ye.initialize,addTeamMembership:Ye.addOne,addTeamMemberships:Ye.addMany,setTeamMembership:Ye.setOne,setTeamMemberships:Ye.setMany,updateTeamMembership:Ye.updateOne,updateTeamMemberships:Ye.updateMany,deleteTeamMembership:Ye.deleteOne,deleteTeamMemberships:Ye.deleteMany}}),{initializeTeamMemberships:cI,addTeamMembership:dI,addTeamMemberships:rI,setTeamMembership:uI,setTeamMemberships:lI,updateTeamMembership:oI,updateTeamMemberships:hI,deleteTeamMembership:mI,deleteTeamMemberships:yI}=wn.actions,pI=wn.reducer,AI=t=>t.teamMembershipReducer.instances,Lt=o.createSelector([AI],t=>Object.values(t)),fI=t=>s=>s.teamMembershipReducer.instances[t],SI=f(o.createSelector([Lt,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),pF=f(o.createSelector([Lt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.team===s))e[n.user]=n;return e})),AF=f(o.createSelector([qt,Lt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.team===e).map(a=>a.user));return S(t.filter(a=>n.has(a.id)))})),Ze=F(t=>t.uuid),TI={instances:{}},En=o.createSlice({name:"teams",initialState:TI,extraReducers:t=>t.addMatcher(o.isAnyOf(O,g),s=>Object.assign(s,TI)),reducers:{initializeTeams:Ze.initialize,addTeam:Ze.addOne,addTeams:Ze.addMany,setTeam:Ze.setOne,setTeams:Ze.setMany,updateTeam:Ze.updateOne,updateTeams:Ze.updateMany,deleteTeam:Ze.deleteOne,deleteTeams:Ze.deleteMany}}),{initializeTeams:II,addTeam:OI,addTeams:PI,setTeam:FI,setTeams:gI,updateTeam:bI,updateTeams:MI,deleteTeam:_I,deleteTeams:RI}=En.actions,wI=t=>t.teamReducer.instances,Vn=o.createSelector([wI],t=>Object.values(t)),EI=t=>s=>s.teamReducer.instances[t],VI=f(o.createSelector([Vn,(t,s)=>s],(t,s)=>{const e=new Set(s);return S(t.filter(({uuid:n})=>e.has(n)))})),fF=f(o.createSelector([Vn,(t,s)=>s],(t,s)=>S(t.filter(e=>e.organization===s)))),vI=En.reducer,SF={version:0},BI=o.createSlice({name:"versioning",initialState:SF,reducers:{}}),zI=BI.reducer,vn={outboxReducer:tT,fileReducer:Fh,authReducer:vo},TF=o.combineReducers(vn),jI={...vn,[ot]:zI,assetReducer:$r,assetAttachmentReducer:Fa,assetStageCompletionReducer:Zr,assetStageReducer:lu,assetTypeReducer:po,assetTypeAttachmentReducer:bu,issueReducer:Dp,issueAttachmentReducer:Jy,issueTypeReducer:Uf,issueTypeAttachmentReducer:Jp,organizationReducer:ZS,projectReducer:eI,projectAttachmentReducer:RT,projectAccessReducer:hT,organizationAccessReducer:VS,projectFileReducer:GT,rehydratedReducer:nI,formReducer:vm,formRevisionReducer:Om,formRevisionAttachmentReducer:om,formSubmissionAttachmentReducer:Wm,formSubmissionReducer:cy,formIdentifierReducer:qh,formIdentifierValueReducer:Xh,userReducer:SS,emailDomainsReducer:Ih,documentsReducer:ih,documentAttachmentReducer:Ko,teamReducer:vI,agentsReducer:la,issueCommentReducer:Fp,issueCommentAttachmentReducer:lp,issueUpdateReducer:uS,geoImageReducer:Iy,issueAssociationReducer:qy,issueTypeFieldsReducer:$A,issueTypeFieldValuesReducer:gA,issueTypeFieldsAttachmentReducer:lA,issueTypeFieldValuesAttachmentReducer:XA,issueTypeIdentifierReducer:hf,issueTypeIdentifierValueReducer:Mf,issueTypeStatusReducer:xf,assetTypeFieldsReducer:xu,assetTypeFieldValuesReducer:Ml,assetTypeFieldsAttachmentReducer:Cu,assetTypeFieldValuesAttachmentReducer:hl,assetTypeIdentifierReducer:Ul,assetTypeIdentifierValueReducer:eo,assetTypeStatusReducer:wo,assetProcedureTypeReducer:rd,assetProcedureReducer:Wc,assetProcedureTypeFieldsReducer:rc,assetProcedureTypeFieldValuesReducer:jc,assetProcedureTypeFieldsAttachmentReducer:Ya,assetProcedureTypeFieldValuesAttachmentReducer:Ic,assetProcedureTypeAttachmentReducer:za,assetProcedureStepFieldsAttachmentReducer:bd,assetProcedureStepFieldsReducer:$d,assetProcedureStepFieldValuesAttachmentReducer:Xd,assetProcedureStepFieldValuesReducer:or,assetProcedureStepReducer:Pr,teamMembershipReducer:pI},IF=o.combineReducers(jI),DI=1e4,qI=200,Bn=[400,409,403,404,405,500],Qe=1e4,$I={};class CI{constructor(s){y(this,"client");y(this,"pageSize",DI);$I[this.constructor.name]=this,this.client=s}async performRequest(s,e){return this.client.performRequest(this.host,s,this,e)}async enqueueRequest(s){return this.client.enqueueRequest(s,this.host,this.constructor.name)}async performPagination(s,e){return this.client.performPagination(this.host,s,this.pageSize,this,e)}dispatch(s){this.client.store.dispatch(s)}}const UI=()=>GI.length-1,LI=t=>(t[ot]={version:UI()},t),NI=()=>LI({}),OF=t=>(t.outboxReducer&&(t.outboxReducer.deletedRequests=[]),t),PF=t=>s=>{var e;return s===void 0&&(s={}),((e=s[ot])==null?void 0:e.version)===UI()?s:t(s)},GI=[LI,NI,NI,OF],FF=Object.fromEntries(GI.map((t,s)=>[s,PF(t)])),gF=t=>{if(t)throw t;const s=lt();s?s.dispatch({type:"rehydrated/setRehydrated",payload:!0}):console.error("Client store not set")},kI=(t,s,e)=>{const n=at();return n?(n.addRequest(s),n.getQueue()):(console.warn("Outbox coordinator not set; cannot enqueue request yet."),[])},HI=(t,s,e)=>{const n=at();if(!n)return console.warn("Outbox coordinator not set; cannot dequeue request yet."),[];const c=s.meta.offlineAction.payload.uuid;return n.remove(c),n.getQueue()};async function bF(t,s){if(!s.payload)throw new Error("Received empty payload");return nO(s)}const MF={...Cn,effect:bF,discard:WI,returnPromises:!0,persistCallback:gF,retry:EF,persistOptions:{storage:oO},queue:{...Cn.queue,enqueue:kI,dequeue:HI,peek:(...t)=>wF(...t)}},_F=hO(FF,ot),RF=o.compose(lO.offline(MF),_F);async function KI(t,s,e){if(s.store.getState().outboxReducer.deletedRequests.includes(t.payload.uuid))throw new Error("Request was marked for deletion");const a=$I[t.meta.offline.effect.serviceName];if(!a)throw new Error(`Service ${t.meta.offline.effect.serviceName} not found`);return jn(t.meta.offline.effect.BASE_URL,t.meta.offline.effect.request,s,a,e)}function WI(t,s,e=0){var u;if(console.debug("Considering discarding request due to error:",t,`(${typeof t})`,`
|
|
2
2
|
Url:`,s.payload.url,`
|
|
3
3
|
Retries:`,e),!(t instanceof Error))throw console.error("ENCOUNTERED NON-ERROR ERROR:",t,"(throwing immediately, which may lead to unexpected behavior)"),t;const n=lt(),c=n.getState().outboxReducer.deletedRequests,d=s.payload.uuid;function l(){n.dispatch(xS(d));const h=at();if(!h)throw new Error("Outbox coordinator not set");h.remove(s.payload.uuid);const p=s.meta.offline.rollback;throw p&&(console.warn("Rolling back request due to SDK error:",s),n.dispatch(p)),t}if(t instanceof C&&t.options.discard&&(console.debug("Discarding request due to explicit discard:",s.payload.url),l()),c.includes(d)&&(console.debug("Discarding request due to deletion:",s.payload.url),l()),t instanceof C){const h=t.status||((u=t.response)==null?void 0:u.status);if(h||console.warn("Error has no status code:",t),h!==void 0&&Bn.includes(h)){console.warn("Discarding request due to error:",t,`
|
|
4
4
|
Action:`,s);const p=at();if(!p)throw new Error("Outbox coordinator not set");p.remove(s.payload.uuid),t.options.discard=!0,l()}}console.debug("Registering a retry for request:",s.payload.uuid);const r=at();if(!r)throw new Error("Outbox coordinator not set");return r.registerRetry(s.payload.uuid),!1}function wF(t,s,e){var n;return(n=at())==null?void 0:n.peek()}function EF(t,s){return lt().dispatch(eT(new Date().getTime())),Kn}const dt="An unknown error occurred",VF=500,YI=["non_field_errors","detail"];function vF(t,s){let e;if(t!=null&&t.body)if(typeof t.body=="object"){const n=t.body;if(typeof n.error=="string")e=n.error;else if(typeof n.message=="string")e=n.message;else try{e=Object.entries(n).map(([a,c])=>typeof c=="string"?YI.includes(a)?c:`${a}: ${c}`:Array.isArray(c)?YI.includes(a)?c.join(`
|