@trackunit/custom-field-api 1.0.7 → 1.0.9
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/index.cjs.js +23 -37
- package/index.esm.js +23 -37
- package/package.json +3 -3
package/index.cjs.js
CHANGED
|
@@ -2214,7 +2214,6 @@ const getCustomFieldDefinitionFromRelevantNode$1 = (node) => getFragmentData(Cus
|
|
|
2214
2214
|
* @returns {UseAllCustomFieldDefinitionsReturnValue} An object containing a loading state and an array of custom field definitions.
|
|
2215
2215
|
*/
|
|
2216
2216
|
const useAllCustomFieldDefinitions = ({ entityType, filterQuery, owners, systemOfMeasurement, onlyEditable, }) => {
|
|
2217
|
-
var _a;
|
|
2218
2217
|
const { data: definitions, loading } = client.useQuery(GetCustomFieldDefinitionsDocument, {
|
|
2219
2218
|
variables: {
|
|
2220
2219
|
entityType,
|
|
@@ -2227,27 +2226,25 @@ const useAllCustomFieldDefinitions = ({ entityType, filterQuery, owners, systemO
|
|
|
2227
2226
|
},
|
|
2228
2227
|
});
|
|
2229
2228
|
const definitionsArray = react.useMemo(() => {
|
|
2230
|
-
|
|
2231
|
-
return (((_b = (_a = definitions === null || definitions === void 0 ? void 0 : definitions.customFieldDefinitions) === null || _a === void 0 ? void 0 : _a.edges) === null || _b === void 0 ? void 0 : _b.map(edge => getCustomFieldDefinitionFromRelevantNode$1(edge === null || edge === void 0 ? void 0 : edge.node))) ||
|
|
2229
|
+
return (definitions?.customFieldDefinitions?.edges?.map(edge => getCustomFieldDefinitionFromRelevantNode$1(edge?.node)) ||
|
|
2232
2230
|
[]);
|
|
2233
|
-
}, [
|
|
2231
|
+
}, [definitions?.customFieldDefinitions?.edges]);
|
|
2234
2232
|
const filteredDefinitions = react.useMemo(() => {
|
|
2235
2233
|
return definitionsArray
|
|
2236
2234
|
.filter(sharedUtils.nonNullable)
|
|
2237
|
-
.filter(def =>
|
|
2235
|
+
.filter(def => (owners && def.owner?.ownerType ? owners.includes(def.owner.ownerType) : true))
|
|
2238
2236
|
.filter(def => (onlyEditable ? def.uiEditable : true))
|
|
2239
|
-
.filter(def =>
|
|
2237
|
+
.filter(def => (filterQuery ? def.title?.toLowerCase().includes(filterQuery.toLowerCase()) : true));
|
|
2240
2238
|
}, [definitionsArray, filterQuery, owners, onlyEditable]);
|
|
2241
2239
|
const appNameFromId = react.useCallback((appId) => {
|
|
2242
|
-
var _a, _b, _c, _d;
|
|
2243
2240
|
if (!appId) {
|
|
2244
2241
|
return undefined;
|
|
2245
2242
|
}
|
|
2246
|
-
const matching = filteredDefinitions.find(definition =>
|
|
2243
|
+
const matching = filteredDefinitions.find(definition => definition.owner?.irisAppId === appId);
|
|
2247
2244
|
if (!matching) {
|
|
2248
2245
|
return undefined;
|
|
2249
2246
|
}
|
|
2250
|
-
return
|
|
2247
|
+
return matching.owner?.marketplaceEntry?.name ?? matching.owner?.irisAppId;
|
|
2251
2248
|
}, [filteredDefinitions]);
|
|
2252
2249
|
return react.useMemo(() => ({ definitions: filteredDefinitions, loading, appNameFromId }), [filteredDefinitions, loading, appNameFromId]);
|
|
2253
2250
|
};
|
|
@@ -2271,7 +2268,6 @@ const getAllCustomFieldValueAndDefinitionFromRelevantNode = (node) => getFragmen
|
|
|
2271
2268
|
* @returns {UseAllCustomFieldsValueAndDefinitionReturnValue} An object containing a loading state and an array of custom fields and definitions.
|
|
2272
2269
|
*/
|
|
2273
2270
|
const useAllCustomFieldsValueAndDefinition = ({ entityId, entityType, systemOfMeasurement, }) => {
|
|
2274
|
-
var _a, _b, _c, _d;
|
|
2275
2271
|
const { data: assetFields, loading: loadingAssetFields, refetch: refetchAssetFields, } = client.useQuery(GetCustomFieldsForAssetDocument, {
|
|
2276
2272
|
variables: {
|
|
2277
2273
|
// eslint-disable-next-line local-rules/no-typescript-assertion
|
|
@@ -2299,16 +2295,15 @@ const useAllCustomFieldsValueAndDefinition = ({ entityId, entityType, systemOfMe
|
|
|
2299
2295
|
},
|
|
2300
2296
|
});
|
|
2301
2297
|
const fields = react.useMemo(() => {
|
|
2302
|
-
var _a, _b, _c, _d, _e, _f;
|
|
2303
2298
|
switch (entityType) {
|
|
2304
2299
|
case "ASSET":
|
|
2305
|
-
return (
|
|
2300
|
+
return (assetFields?.asset?.customFields?.edges?.map(edge => getAllCustomFieldValueAndDefinitionFromRelevantNode(edge?.node)) || []);
|
|
2306
2301
|
case "SITE":
|
|
2307
|
-
return (
|
|
2302
|
+
return (siteFields?.site?.customFields?.edges?.map(edge => getAllCustomFieldValueAndDefinitionFromRelevantNode(edge?.node)) || []);
|
|
2308
2303
|
default:
|
|
2309
2304
|
return [];
|
|
2310
2305
|
}
|
|
2311
|
-
}, [
|
|
2306
|
+
}, [assetFields?.asset?.customFields?.edges, entityType, siteFields?.site?.customFields?.edges]);
|
|
2312
2307
|
const loading = react.useMemo(() => loadingAssetFields || loadingSiteFields, [loadingAssetFields, loadingSiteFields]);
|
|
2313
2308
|
const noneNullableFields = react.useMemo(() => fields.filter(sharedUtils.nonNullable), [fields]);
|
|
2314
2309
|
const refetch = react.useCallback(async () => {
|
|
@@ -2381,7 +2376,6 @@ const getCustomFieldDefinitionFromRelevantNode = (node) => getFragmentData(Custo
|
|
|
2381
2376
|
* @returns {UseCustomFieldDefinitionsReturnValue} An object containing a loading state and an array of custom field definitions.
|
|
2382
2377
|
*/
|
|
2383
2378
|
const useCustomFieldDefinitions = ({ entityType, filterQuery, owners, systemOfMeasurement, onlyEditable, }) => {
|
|
2384
|
-
var _a;
|
|
2385
2379
|
const { irisAppId } = reactCoreHooks.useIrisAppId();
|
|
2386
2380
|
const { data: definitions, loading } = client.useQuery(GetCustomFieldDefinitionsForIrisAppDocument, {
|
|
2387
2381
|
variables: {
|
|
@@ -2398,32 +2392,27 @@ const useCustomFieldDefinitions = ({ entityType, filterQuery, owners, systemOfMe
|
|
|
2398
2392
|
});
|
|
2399
2393
|
const { language } = reactCoreHooks.useCurrentUserLanguage();
|
|
2400
2394
|
const definitionsArray = react.useMemo(() => {
|
|
2401
|
-
|
|
2402
|
-
return (((_b = (_a = definitions === null || definitions === void 0 ? void 0 : definitions.customFieldDefinitions) === null || _a === void 0 ? void 0 : _a.edges) === null || _b === void 0 ? void 0 : _b.map(edge => getCustomFieldDefinitionFromRelevantNode(edge === null || edge === void 0 ? void 0 : edge.node))) ||
|
|
2395
|
+
return (definitions?.customFieldDefinitions?.edges?.map(edge => getCustomFieldDefinitionFromRelevantNode(edge?.node)) ||
|
|
2403
2396
|
[]);
|
|
2404
|
-
}, [
|
|
2397
|
+
}, [definitions?.customFieldDefinitions?.edges]);
|
|
2405
2398
|
const filteredDefinitions = react.useMemo(() => definitionsArray
|
|
2406
2399
|
.filter(sharedUtils.nonNullable)
|
|
2407
|
-
.filter(def =>
|
|
2400
|
+
.filter(def => (owners && def.owner?.ownerType ? owners.includes(def.owner.ownerType) : true))
|
|
2408
2401
|
.filter(def => (onlyEditable ? def.uiEditable : true))
|
|
2409
|
-
.map(def => {
|
|
2410
|
-
|
|
2411
|
-
|
|
2412
|
-
|
|
2413
|
-
title: (_c = (_b = (_a = def.translations) === null || _a === void 0 ? void 0 : _a.find(t => (t === null || t === void 0 ? void 0 : t.language) === language || (t === null || t === void 0 ? void 0 : t.language) === "en")) === null || _b === void 0 ? void 0 : _b.title) !== null && _c !== void 0 ? _c : "",
|
|
2414
|
-
});
|
|
2415
|
-
})
|
|
2402
|
+
.map(def => ({
|
|
2403
|
+
...def,
|
|
2404
|
+
title: def.translations?.find(t => t?.language === language || t?.language === "en")?.title ?? "",
|
|
2405
|
+
}))
|
|
2416
2406
|
.filter(def => (filterQuery ? def.title.toLowerCase().includes(filterQuery.toLowerCase()) : true)), [definitionsArray, filterQuery, language, owners, onlyEditable]);
|
|
2417
2407
|
const appNameFromId = react.useCallback((appId) => {
|
|
2418
|
-
var _a, _b, _c, _d;
|
|
2419
2408
|
if (!appId) {
|
|
2420
2409
|
return undefined;
|
|
2421
2410
|
}
|
|
2422
|
-
const matching = filteredDefinitions.find(definition =>
|
|
2411
|
+
const matching = filteredDefinitions.find(definition => definition.owner?.irisAppId === appId);
|
|
2423
2412
|
if (!matching) {
|
|
2424
2413
|
return undefined;
|
|
2425
2414
|
}
|
|
2426
|
-
return
|
|
2415
|
+
return matching.owner?.marketplaceEntry?.name ?? matching.owner?.irisAppId;
|
|
2427
2416
|
}, [filteredDefinitions]);
|
|
2428
2417
|
return react.useMemo(() => ({ definitions: filteredDefinitions, loading, appNameFromId }), [filteredDefinitions, loading, appNameFromId]);
|
|
2429
2418
|
};
|
|
@@ -2448,7 +2437,6 @@ const getCustomFieldValueAndDefinitionFromRelevantNode = (node) => getFragmentDa
|
|
|
2448
2437
|
* @returns {UseCustomFieldsValueAndDefinitionReturnValue} An object containing a loading state and an array of custom fields and definitions.
|
|
2449
2438
|
*/
|
|
2450
2439
|
const useCustomFieldsValueAndDefinition = ({ entityId, entityType, systemOfMeasurement, }) => {
|
|
2451
|
-
var _a, _b, _c, _d;
|
|
2452
2440
|
const { irisAppId } = reactCoreHooks.useIrisAppId();
|
|
2453
2441
|
const { data: assetFields, loading: loadingAssetFields } = client.useQuery(GetCustomFieldsForAssetForIrisAppDocument, {
|
|
2454
2442
|
variables: {
|
|
@@ -2481,16 +2469,15 @@ const useCustomFieldsValueAndDefinition = ({ entityId, entityType, systemOfMeasu
|
|
|
2481
2469
|
},
|
|
2482
2470
|
});
|
|
2483
2471
|
const fields = react.useMemo(() => {
|
|
2484
|
-
var _a, _b, _c, _d, _e, _f;
|
|
2485
2472
|
switch (entityType) {
|
|
2486
2473
|
case "ASSET":
|
|
2487
|
-
return (
|
|
2474
|
+
return (assetFields?.asset?.customFields?.edges?.map(edge => getCustomFieldValueAndDefinitionFromRelevantNode(edge?.node)) || []);
|
|
2488
2475
|
case "SITE":
|
|
2489
|
-
return (
|
|
2476
|
+
return (siteFields?.site?.customFields?.edges?.map(edge => getCustomFieldValueAndDefinitionFromRelevantNode(edge?.node)) || []);
|
|
2490
2477
|
default:
|
|
2491
2478
|
return [];
|
|
2492
2479
|
}
|
|
2493
|
-
}, [
|
|
2480
|
+
}, [assetFields?.asset?.customFields?.edges, entityType, siteFields?.site?.customFields?.edges]);
|
|
2494
2481
|
const loading = react.useMemo(() => loadingAssetFields || loadingSiteFields, [loadingAssetFields, loadingSiteFields]);
|
|
2495
2482
|
const noneNullableFields = react.useMemo(() => fields.filter(sharedUtils.nonNullable), [fields]);
|
|
2496
2483
|
return react.useMemo(() => ({ fields: noneNullableFields, loading }), [noneNullableFields, loading]);
|
|
@@ -2551,14 +2538,13 @@ const useUpdateCustomFieldValues = (entityId, entityType, customFields, systemOf
|
|
|
2551
2538
|
// Transform data to custom field updates
|
|
2552
2539
|
const fieldUpdates = sharedUtils.objectKeys(data)
|
|
2553
2540
|
.map(fieldId => {
|
|
2554
|
-
var _a, _b;
|
|
2555
2541
|
const originalField = customFieldsMap[fieldId];
|
|
2556
|
-
const definition = originalField
|
|
2542
|
+
const definition = originalField?.definition;
|
|
2557
2543
|
return {
|
|
2558
2544
|
id: fieldId,
|
|
2559
2545
|
value: data[fieldId],
|
|
2560
2546
|
definition,
|
|
2561
|
-
editable:
|
|
2547
|
+
editable: originalField?.valueEditable ?? definition?.uiEditable ?? true,
|
|
2562
2548
|
};
|
|
2563
2549
|
})
|
|
2564
2550
|
.filter(({ editable }) => editable)
|
package/index.esm.js
CHANGED
|
@@ -2212,7 +2212,6 @@ const getCustomFieldDefinitionFromRelevantNode$1 = (node) => getFragmentData(Cus
|
|
|
2212
2212
|
* @returns {UseAllCustomFieldDefinitionsReturnValue} An object containing a loading state and an array of custom field definitions.
|
|
2213
2213
|
*/
|
|
2214
2214
|
const useAllCustomFieldDefinitions = ({ entityType, filterQuery, owners, systemOfMeasurement, onlyEditable, }) => {
|
|
2215
|
-
var _a;
|
|
2216
2215
|
const { data: definitions, loading } = useQuery(GetCustomFieldDefinitionsDocument, {
|
|
2217
2216
|
variables: {
|
|
2218
2217
|
entityType,
|
|
@@ -2225,27 +2224,25 @@ const useAllCustomFieldDefinitions = ({ entityType, filterQuery, owners, systemO
|
|
|
2225
2224
|
},
|
|
2226
2225
|
});
|
|
2227
2226
|
const definitionsArray = useMemo(() => {
|
|
2228
|
-
|
|
2229
|
-
return (((_b = (_a = definitions === null || definitions === void 0 ? void 0 : definitions.customFieldDefinitions) === null || _a === void 0 ? void 0 : _a.edges) === null || _b === void 0 ? void 0 : _b.map(edge => getCustomFieldDefinitionFromRelevantNode$1(edge === null || edge === void 0 ? void 0 : edge.node))) ||
|
|
2227
|
+
return (definitions?.customFieldDefinitions?.edges?.map(edge => getCustomFieldDefinitionFromRelevantNode$1(edge?.node)) ||
|
|
2230
2228
|
[]);
|
|
2231
|
-
}, [
|
|
2229
|
+
}, [definitions?.customFieldDefinitions?.edges]);
|
|
2232
2230
|
const filteredDefinitions = useMemo(() => {
|
|
2233
2231
|
return definitionsArray
|
|
2234
2232
|
.filter(nonNullable)
|
|
2235
|
-
.filter(def =>
|
|
2233
|
+
.filter(def => (owners && def.owner?.ownerType ? owners.includes(def.owner.ownerType) : true))
|
|
2236
2234
|
.filter(def => (onlyEditable ? def.uiEditable : true))
|
|
2237
|
-
.filter(def =>
|
|
2235
|
+
.filter(def => (filterQuery ? def.title?.toLowerCase().includes(filterQuery.toLowerCase()) : true));
|
|
2238
2236
|
}, [definitionsArray, filterQuery, owners, onlyEditable]);
|
|
2239
2237
|
const appNameFromId = useCallback((appId) => {
|
|
2240
|
-
var _a, _b, _c, _d;
|
|
2241
2238
|
if (!appId) {
|
|
2242
2239
|
return undefined;
|
|
2243
2240
|
}
|
|
2244
|
-
const matching = filteredDefinitions.find(definition =>
|
|
2241
|
+
const matching = filteredDefinitions.find(definition => definition.owner?.irisAppId === appId);
|
|
2245
2242
|
if (!matching) {
|
|
2246
2243
|
return undefined;
|
|
2247
2244
|
}
|
|
2248
|
-
return
|
|
2245
|
+
return matching.owner?.marketplaceEntry?.name ?? matching.owner?.irisAppId;
|
|
2249
2246
|
}, [filteredDefinitions]);
|
|
2250
2247
|
return useMemo(() => ({ definitions: filteredDefinitions, loading, appNameFromId }), [filteredDefinitions, loading, appNameFromId]);
|
|
2251
2248
|
};
|
|
@@ -2269,7 +2266,6 @@ const getAllCustomFieldValueAndDefinitionFromRelevantNode = (node) => getFragmen
|
|
|
2269
2266
|
* @returns {UseAllCustomFieldsValueAndDefinitionReturnValue} An object containing a loading state and an array of custom fields and definitions.
|
|
2270
2267
|
*/
|
|
2271
2268
|
const useAllCustomFieldsValueAndDefinition = ({ entityId, entityType, systemOfMeasurement, }) => {
|
|
2272
|
-
var _a, _b, _c, _d;
|
|
2273
2269
|
const { data: assetFields, loading: loadingAssetFields, refetch: refetchAssetFields, } = useQuery(GetCustomFieldsForAssetDocument, {
|
|
2274
2270
|
variables: {
|
|
2275
2271
|
// eslint-disable-next-line local-rules/no-typescript-assertion
|
|
@@ -2297,16 +2293,15 @@ const useAllCustomFieldsValueAndDefinition = ({ entityId, entityType, systemOfMe
|
|
|
2297
2293
|
},
|
|
2298
2294
|
});
|
|
2299
2295
|
const fields = useMemo(() => {
|
|
2300
|
-
var _a, _b, _c, _d, _e, _f;
|
|
2301
2296
|
switch (entityType) {
|
|
2302
2297
|
case "ASSET":
|
|
2303
|
-
return (
|
|
2298
|
+
return (assetFields?.asset?.customFields?.edges?.map(edge => getAllCustomFieldValueAndDefinitionFromRelevantNode(edge?.node)) || []);
|
|
2304
2299
|
case "SITE":
|
|
2305
|
-
return (
|
|
2300
|
+
return (siteFields?.site?.customFields?.edges?.map(edge => getAllCustomFieldValueAndDefinitionFromRelevantNode(edge?.node)) || []);
|
|
2306
2301
|
default:
|
|
2307
2302
|
return [];
|
|
2308
2303
|
}
|
|
2309
|
-
}, [
|
|
2304
|
+
}, [assetFields?.asset?.customFields?.edges, entityType, siteFields?.site?.customFields?.edges]);
|
|
2310
2305
|
const loading = useMemo(() => loadingAssetFields || loadingSiteFields, [loadingAssetFields, loadingSiteFields]);
|
|
2311
2306
|
const noneNullableFields = useMemo(() => fields.filter(nonNullable), [fields]);
|
|
2312
2307
|
const refetch = useCallback(async () => {
|
|
@@ -2379,7 +2374,6 @@ const getCustomFieldDefinitionFromRelevantNode = (node) => getFragmentData(Custo
|
|
|
2379
2374
|
* @returns {UseCustomFieldDefinitionsReturnValue} An object containing a loading state and an array of custom field definitions.
|
|
2380
2375
|
*/
|
|
2381
2376
|
const useCustomFieldDefinitions = ({ entityType, filterQuery, owners, systemOfMeasurement, onlyEditable, }) => {
|
|
2382
|
-
var _a;
|
|
2383
2377
|
const { irisAppId } = useIrisAppId();
|
|
2384
2378
|
const { data: definitions, loading } = useQuery(GetCustomFieldDefinitionsForIrisAppDocument, {
|
|
2385
2379
|
variables: {
|
|
@@ -2396,32 +2390,27 @@ const useCustomFieldDefinitions = ({ entityType, filterQuery, owners, systemOfMe
|
|
|
2396
2390
|
});
|
|
2397
2391
|
const { language } = useCurrentUserLanguage();
|
|
2398
2392
|
const definitionsArray = useMemo(() => {
|
|
2399
|
-
|
|
2400
|
-
return (((_b = (_a = definitions === null || definitions === void 0 ? void 0 : definitions.customFieldDefinitions) === null || _a === void 0 ? void 0 : _a.edges) === null || _b === void 0 ? void 0 : _b.map(edge => getCustomFieldDefinitionFromRelevantNode(edge === null || edge === void 0 ? void 0 : edge.node))) ||
|
|
2393
|
+
return (definitions?.customFieldDefinitions?.edges?.map(edge => getCustomFieldDefinitionFromRelevantNode(edge?.node)) ||
|
|
2401
2394
|
[]);
|
|
2402
|
-
}, [
|
|
2395
|
+
}, [definitions?.customFieldDefinitions?.edges]);
|
|
2403
2396
|
const filteredDefinitions = useMemo(() => definitionsArray
|
|
2404
2397
|
.filter(nonNullable)
|
|
2405
|
-
.filter(def =>
|
|
2398
|
+
.filter(def => (owners && def.owner?.ownerType ? owners.includes(def.owner.ownerType) : true))
|
|
2406
2399
|
.filter(def => (onlyEditable ? def.uiEditable : true))
|
|
2407
|
-
.map(def => {
|
|
2408
|
-
|
|
2409
|
-
|
|
2410
|
-
|
|
2411
|
-
title: (_c = (_b = (_a = def.translations) === null || _a === void 0 ? void 0 : _a.find(t => (t === null || t === void 0 ? void 0 : t.language) === language || (t === null || t === void 0 ? void 0 : t.language) === "en")) === null || _b === void 0 ? void 0 : _b.title) !== null && _c !== void 0 ? _c : "",
|
|
2412
|
-
});
|
|
2413
|
-
})
|
|
2400
|
+
.map(def => ({
|
|
2401
|
+
...def,
|
|
2402
|
+
title: def.translations?.find(t => t?.language === language || t?.language === "en")?.title ?? "",
|
|
2403
|
+
}))
|
|
2414
2404
|
.filter(def => (filterQuery ? def.title.toLowerCase().includes(filterQuery.toLowerCase()) : true)), [definitionsArray, filterQuery, language, owners, onlyEditable]);
|
|
2415
2405
|
const appNameFromId = useCallback((appId) => {
|
|
2416
|
-
var _a, _b, _c, _d;
|
|
2417
2406
|
if (!appId) {
|
|
2418
2407
|
return undefined;
|
|
2419
2408
|
}
|
|
2420
|
-
const matching = filteredDefinitions.find(definition =>
|
|
2409
|
+
const matching = filteredDefinitions.find(definition => definition.owner?.irisAppId === appId);
|
|
2421
2410
|
if (!matching) {
|
|
2422
2411
|
return undefined;
|
|
2423
2412
|
}
|
|
2424
|
-
return
|
|
2413
|
+
return matching.owner?.marketplaceEntry?.name ?? matching.owner?.irisAppId;
|
|
2425
2414
|
}, [filteredDefinitions]);
|
|
2426
2415
|
return useMemo(() => ({ definitions: filteredDefinitions, loading, appNameFromId }), [filteredDefinitions, loading, appNameFromId]);
|
|
2427
2416
|
};
|
|
@@ -2446,7 +2435,6 @@ const getCustomFieldValueAndDefinitionFromRelevantNode = (node) => getFragmentDa
|
|
|
2446
2435
|
* @returns {UseCustomFieldsValueAndDefinitionReturnValue} An object containing a loading state and an array of custom fields and definitions.
|
|
2447
2436
|
*/
|
|
2448
2437
|
const useCustomFieldsValueAndDefinition = ({ entityId, entityType, systemOfMeasurement, }) => {
|
|
2449
|
-
var _a, _b, _c, _d;
|
|
2450
2438
|
const { irisAppId } = useIrisAppId();
|
|
2451
2439
|
const { data: assetFields, loading: loadingAssetFields } = useQuery(GetCustomFieldsForAssetForIrisAppDocument, {
|
|
2452
2440
|
variables: {
|
|
@@ -2479,16 +2467,15 @@ const useCustomFieldsValueAndDefinition = ({ entityId, entityType, systemOfMeasu
|
|
|
2479
2467
|
},
|
|
2480
2468
|
});
|
|
2481
2469
|
const fields = useMemo(() => {
|
|
2482
|
-
var _a, _b, _c, _d, _e, _f;
|
|
2483
2470
|
switch (entityType) {
|
|
2484
2471
|
case "ASSET":
|
|
2485
|
-
return (
|
|
2472
|
+
return (assetFields?.asset?.customFields?.edges?.map(edge => getCustomFieldValueAndDefinitionFromRelevantNode(edge?.node)) || []);
|
|
2486
2473
|
case "SITE":
|
|
2487
|
-
return (
|
|
2474
|
+
return (siteFields?.site?.customFields?.edges?.map(edge => getCustomFieldValueAndDefinitionFromRelevantNode(edge?.node)) || []);
|
|
2488
2475
|
default:
|
|
2489
2476
|
return [];
|
|
2490
2477
|
}
|
|
2491
|
-
}, [
|
|
2478
|
+
}, [assetFields?.asset?.customFields?.edges, entityType, siteFields?.site?.customFields?.edges]);
|
|
2492
2479
|
const loading = useMemo(() => loadingAssetFields || loadingSiteFields, [loadingAssetFields, loadingSiteFields]);
|
|
2493
2480
|
const noneNullableFields = useMemo(() => fields.filter(nonNullable), [fields]);
|
|
2494
2481
|
return useMemo(() => ({ fields: noneNullableFields, loading }), [noneNullableFields, loading]);
|
|
@@ -2549,14 +2536,13 @@ const useUpdateCustomFieldValues = (entityId, entityType, customFields, systemOf
|
|
|
2549
2536
|
// Transform data to custom field updates
|
|
2550
2537
|
const fieldUpdates = objectKeys(data)
|
|
2551
2538
|
.map(fieldId => {
|
|
2552
|
-
var _a, _b;
|
|
2553
2539
|
const originalField = customFieldsMap[fieldId];
|
|
2554
|
-
const definition = originalField
|
|
2540
|
+
const definition = originalField?.definition;
|
|
2555
2541
|
return {
|
|
2556
2542
|
id: fieldId,
|
|
2557
2543
|
value: data[fieldId],
|
|
2558
2544
|
definition,
|
|
2559
|
-
editable:
|
|
2545
|
+
editable: originalField?.valueEditable ?? definition?.uiEditable ?? true,
|
|
2560
2546
|
};
|
|
2561
2547
|
})
|
|
2562
2548
|
.filter(({ editable }) => editable)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trackunit/custom-field-api",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.9",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": ">=20.x"
|
|
6
6
|
},
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
"graphql": "^16.9.0",
|
|
13
13
|
"@apollo/client": "3.10.4",
|
|
14
14
|
"react": "18.3.1",
|
|
15
|
-
"@trackunit/iris-app-build-utilities": "^1.0.
|
|
16
|
-
"@trackunit/iris-app-api": "^1.0.
|
|
15
|
+
"@trackunit/iris-app-build-utilities": "^1.0.6",
|
|
16
|
+
"@trackunit/iris-app-api": "^1.0.5",
|
|
17
17
|
"@trackunit/react-core-contexts-test": "^1.0.5",
|
|
18
18
|
"@trackunit/shared-utils": "^1.0.3",
|
|
19
19
|
"@trackunit/react-core-hooks": "^1.0.5",
|