@plumile/backoffice-core 0.1.105 → 0.1.107

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.
Files changed (50) hide show
  1. package/lib/esm/base64.d.ts.map +1 -1
  2. package/lib/esm/base64.js +12 -1
  3. package/lib/esm/billing.d.ts +25 -0
  4. package/lib/esm/billing.d.ts.map +1 -0
  5. package/lib/esm/billing.js +34 -0
  6. package/lib/esm/config/columns.d.ts +15 -0
  7. package/lib/esm/config/columns.d.ts.map +1 -0
  8. package/lib/esm/config/columns.js +163 -0
  9. package/lib/esm/config/detail.d.ts +43 -0
  10. package/lib/esm/config/detail.d.ts.map +1 -0
  11. package/lib/esm/config/detail.js +122 -0
  12. package/lib/esm/config/filters.d.ts +41 -0
  13. package/lib/esm/config/filters.d.ts.map +1 -0
  14. package/lib/esm/config/filters.js +98 -0
  15. package/lib/esm/config/list.d.ts +2 -0
  16. package/lib/esm/config/list.d.ts.map +1 -0
  17. package/lib/esm/config/list.js +14 -0
  18. package/lib/esm/config/record.d.ts +10 -0
  19. package/lib/esm/config/record.d.ts.map +1 -0
  20. package/lib/esm/config/record.js +147 -0
  21. package/lib/esm/config/sorts.d.ts +8 -0
  22. package/lib/esm/config/sorts.d.ts.map +1 -0
  23. package/lib/esm/config/sorts.js +10 -0
  24. package/lib/esm/index.d.ts +8 -0
  25. package/lib/esm/index.d.ts.map +1 -1
  26. package/lib/esm/index.js +9 -1
  27. package/lib/esm/taskState.d.ts +15 -0
  28. package/lib/esm/taskState.d.ts.map +1 -0
  29. package/lib/esm/taskState.js +22 -0
  30. package/lib/tsconfig.esm.tsbuildinfo +1 -1
  31. package/lib/types/base64.d.ts.map +1 -1
  32. package/lib/types/billing.d.ts +25 -0
  33. package/lib/types/billing.d.ts.map +1 -0
  34. package/lib/types/config/columns.d.ts +15 -0
  35. package/lib/types/config/columns.d.ts.map +1 -0
  36. package/lib/types/config/detail.d.ts +43 -0
  37. package/lib/types/config/detail.d.ts.map +1 -0
  38. package/lib/types/config/filters.d.ts +41 -0
  39. package/lib/types/config/filters.d.ts.map +1 -0
  40. package/lib/types/config/list.d.ts +2 -0
  41. package/lib/types/config/list.d.ts.map +1 -0
  42. package/lib/types/config/record.d.ts +10 -0
  43. package/lib/types/config/record.d.ts.map +1 -0
  44. package/lib/types/config/sorts.d.ts +8 -0
  45. package/lib/types/config/sorts.d.ts.map +1 -0
  46. package/lib/types/index.d.ts +8 -0
  47. package/lib/types/index.d.ts.map +1 -1
  48. package/lib/types/taskState.d.ts +15 -0
  49. package/lib/types/taskState.d.ts.map +1 -0
  50. package/package.json +12 -2
@@ -0,0 +1,98 @@
1
+ import { readWhereValue, setWhereValue } from '../filters/where.js';
2
+ const buildWhere = (key, value, path) => {
3
+ const next = setWhereValue(null, key, value, path);
4
+ if (next == null) {
5
+ return {};
6
+ }
7
+ return next;
8
+ };
9
+ const buildPickerScope = (where) => {
10
+ const scope = {};
11
+ const keys = [
12
+ 'organizationId',
13
+ 'groupId',
14
+ 'projectId',
15
+ 'initiativeId',
16
+ ];
17
+ keys.forEach((key) => {
18
+ const whereKey = key;
19
+ const value = readWhereValue(where, whereKey);
20
+ if (typeof value === 'string') {
21
+ scope[whereKey] = value;
22
+ }
23
+ });
24
+ return scope;
25
+ };
26
+ export function mapFilters(filters) {
27
+ return filters.map((filter) => {
28
+ const key = (filter.whereKey ?? filter.id);
29
+ const base = {
30
+ id: filter.id,
31
+ label: filter.label,
32
+ placement: filter.placement,
33
+ whereKey: filter.whereKey,
34
+ path: filter.path,
35
+ toGraphQL: (value) => {
36
+ return buildWhere(key, value, filter.path);
37
+ },
38
+ };
39
+ switch (filter.kind) {
40
+ case 'textContains':
41
+ return {
42
+ ...base,
43
+ kind: 'text',
44
+ placeholderLabel: filter.placeholderLabel,
45
+ placeholderText: filter.placeholderText,
46
+ };
47
+ case 'datetime':
48
+ return {
49
+ ...base,
50
+ kind: 'datetime',
51
+ mode: filter.mode,
52
+ placeholderLabel: filter.placeholderLabel,
53
+ placeholderText: filter.placeholderText,
54
+ };
55
+ case 'number':
56
+ return {
57
+ ...base,
58
+ kind: 'number',
59
+ placeholderLabel: filter.placeholderLabel,
60
+ placeholderText: filter.placeholderText,
61
+ inputMode: filter.inputMode,
62
+ };
63
+ case 'select':
64
+ return {
65
+ ...base,
66
+ kind: 'enum',
67
+ options: filter.options.map((option) => {
68
+ return {
69
+ value: option.value,
70
+ label: option.label,
71
+ };
72
+ }),
73
+ };
74
+ case 'boolean':
75
+ return {
76
+ ...base,
77
+ kind: 'boolean',
78
+ trueLabel: filter.trueLabel,
79
+ falseLabel: filter.falseLabel,
80
+ };
81
+ case 'entityId':
82
+ return {
83
+ ...base,
84
+ kind: 'entityId',
85
+ entity: filter.entity,
86
+ pickerScope: (where) => {
87
+ return buildPickerScope(where);
88
+ },
89
+ };
90
+ default:
91
+ return {
92
+ ...base,
93
+ kind: 'text',
94
+ };
95
+ }
96
+ });
97
+ }
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBZ0RwRSxNQUFNLFVBQVUsR0FBRyxDQUNqQixHQUFpQyxFQUNqQyxLQUFjLEVBQ2QsSUFBd0IsRUFDUixFQUFFO0lBQ2xCLE1BQU0sSUFBSSxHQUFHLGFBQWEsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRCxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNqQixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDRCxPQUFPLElBQXNCLENBQUM7QUFDaEMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxnQkFBZ0IsR0FBRyxDQUN2QixLQUFtQixFQUNXLEVBQUU7SUFDaEMsTUFBTSxLQUFLLEdBQWlDLEVBQUUsQ0FBQztJQUMvQyxNQUFNLElBQUksR0FBRztRQUNYLGdCQUFnQjtRQUNoQixTQUFTO1FBQ1QsV0FBVztRQUNYLGNBQWM7S0FDTixDQUFDO0lBQ1gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ25CLE1BQU0sUUFBUSxHQUFHLEdBQW1DLENBQUM7UUFDckQsTUFBTSxLQUFLLEdBQUcsY0FBYyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM5QyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzlCLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxLQUdqQixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUM7QUFLRixNQUFNLFVBQVUsVUFBVSxDQUN4QixPQUFxRDtJQUVyRCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtRQUM1QixNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLElBQUksTUFBTSxDQUFDLEVBQUUsQ0FBaUMsQ0FBQztRQUMzRSxNQUFNLElBQUksR0FBRztZQUNYLEVBQUUsRUFBRSxNQUFNLENBQUMsRUFBRTtZQUNiLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztZQUNuQixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7WUFDM0IsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO1lBQ3pCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtZQUNqQixTQUFTLEVBQUUsQ0FBQyxLQUFjLEVBQUUsRUFBRTtnQkFDNUIsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0MsQ0FBQztTQUNGLENBQUM7UUFFRixRQUFRLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNwQixLQUFLLGNBQWM7Z0JBQ2pCLE9BQU87b0JBQ0wsR0FBRyxJQUFJO29CQUNQLElBQUksRUFBRSxNQUFNO29CQUNaLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxnQkFBZ0I7b0JBQ3pDLGVBQWUsRUFBRSxNQUFNLENBQUMsZUFBZTtpQkFDeEMsQ0FBQztZQUNKLEtBQUssVUFBVTtnQkFDYixPQUFPO29CQUNMLEdBQUcsSUFBSTtvQkFDUCxJQUFJLEVBQUUsVUFBVTtvQkFDaEIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO29CQUNqQixnQkFBZ0IsRUFBRSxNQUFNLENBQUMsZ0JBQWdCO29CQUN6QyxlQUFlLEVBQUUsTUFBTSxDQUFDLGVBQWU7aUJBQ3hDLENBQUM7WUFDSixLQUFLLFFBQVE7Z0JBQ1gsT0FBTztvQkFDTCxHQUFHLElBQUk7b0JBQ1AsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLGdCQUFnQjtvQkFDekMsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO29CQUN2QyxTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7aUJBQzVCLENBQUM7WUFDSixLQUFLLFFBQVE7Z0JBQ1gsT0FBTztvQkFDTCxHQUFHLElBQUk7b0JBQ1AsSUFBSSxFQUFFLE1BQU07b0JBQ1osT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7d0JBQ3JDLE9BQU87NEJBQ0wsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLOzRCQUNuQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7eUJBQ3BCLENBQUM7b0JBQ0osQ0FBQyxDQUFDO2lCQUNILENBQUM7WUFDSixLQUFLLFNBQVM7Z0JBQ1osT0FBTztvQkFDTCxHQUFHLElBQUk7b0JBQ1AsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO29CQUMzQixVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVU7aUJBQzlCLENBQUM7WUFDSixLQUFLLFVBQVU7Z0JBQ2IsT0FBTztvQkFDTCxHQUFHLElBQUk7b0JBQ1AsSUFBSSxFQUFFLFVBQVU7b0JBQ2hCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtvQkFDckIsV0FBVyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7d0JBQ3JCLE9BQU8sZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2pDLENBQUM7aUJBQ0YsQ0FBQztZQUNKO2dCQUNFLE9BQU87b0JBQ0wsR0FBRyxJQUFJO29CQUNQLElBQUksRUFBRSxNQUFNO2lCQUNiLENBQUM7UUFDTixDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBCYWNrb2ZmaWNlRmlsdGVyU3BlYyxcbiAgQmFja29mZmljZVBpY2tlclNjb3BlLFxuICBJMThuTGFiZWwsXG59IGZyb20gJy4uL3R5cGVzLmpzJztcbmltcG9ydCB7IHJlYWRXaGVyZVZhbHVlLCBzZXRXaGVyZVZhbHVlIH0gZnJvbSAnLi4vZmlsdGVycy93aGVyZS5qcyc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMZWdhY3lGaWx0ZXJPcHRpb24gPSB7XG4gIGlkOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG59O1xuXG50eXBlIEJhY2tvZmZpY2VMZWdhY3lGaWx0ZXJCYXNlPFdoZXJlPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgd2hlcmVLZXk/OiBFeHRyYWN0PGtleW9mIFdoZXJlLCBzdHJpbmc+O1xuICBwYXRoPzogcmVhZG9ubHkgc3RyaW5nW107XG4gIHBsYWNlbWVudD86ICdxdWljaycgfCAnZHJhd2VyJyB8ICdib3RoJztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMZWdhY3lGaWx0ZXJTcGVjPFdoZXJlPiA9XG4gIHwgKEJhY2tvZmZpY2VMZWdhY3lGaWx0ZXJCYXNlPFdoZXJlPiAmIHtcbiAgICAgIGtpbmQ6ICd0ZXh0Q29udGFpbnMnO1xuICAgICAgcGxhY2Vob2xkZXJMYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIHBsYWNlaG9sZGVyVGV4dD86IEkxOG5MYWJlbDtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlTGVnYWN5RmlsdGVyQmFzZTxXaGVyZT4gJiB7XG4gICAgICBraW5kOiAnZGF0ZXRpbWUnO1xuICAgICAgbW9kZT86ICdmcm9tJyB8ICd0bycgfCAnZXhhY3QnO1xuICAgICAgcGxhY2Vob2xkZXJMYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIHBsYWNlaG9sZGVyVGV4dD86IEkxOG5MYWJlbDtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlTGVnYWN5RmlsdGVyQmFzZTxXaGVyZT4gJiB7XG4gICAgICBraW5kOiAnbnVtYmVyJztcbiAgICAgIHBsYWNlaG9sZGVyTGFiZWw/OiBJMThuTGFiZWw7XG4gICAgICBwbGFjZWhvbGRlclRleHQ/OiBJMThuTGFiZWw7XG4gICAgICBpbnB1dE1vZGU/OiAnbnVtZXJpYycgfCAnZGVjaW1hbCc7XG4gICAgfSlcbiAgfCAoQmFja29mZmljZUxlZ2FjeUZpbHRlckJhc2U8V2hlcmU+ICYge1xuICAgICAga2luZDogJ3NlbGVjdCc7XG4gICAgICBvcHRpb25zOiByZWFkb25seSBCYWNrb2ZmaWNlTGVnYWN5RmlsdGVyT3B0aW9uW107XG4gICAgfSlcbiAgfCAoQmFja29mZmljZUxlZ2FjeUZpbHRlckJhc2U8V2hlcmU+ICYge1xuICAgICAga2luZDogJ2Jvb2xlYW4nO1xuICAgICAgdHJ1ZUxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgZmFsc2VMYWJlbD86IEkxOG5MYWJlbDtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlTGVnYWN5RmlsdGVyQmFzZTxXaGVyZT4gJiB7XG4gICAgICBraW5kOiAnZW50aXR5SWQnO1xuICAgICAgZW50aXR5OiBzdHJpbmc7XG4gICAgfSk7XG5cbmNvbnN0IGJ1aWxkV2hlcmUgPSA8V2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4oXG4gIGtleTogRXh0cmFjdDxrZXlvZiBXaGVyZSwgc3RyaW5nPixcbiAgdmFsdWU6IHVua25vd24sXG4gIHBhdGg/OiByZWFkb25seSBzdHJpbmdbXSxcbik6IFBhcnRpYWw8V2hlcmU+ID0+IHtcbiAgY29uc3QgbmV4dCA9IHNldFdoZXJlVmFsdWUobnVsbCwga2V5LCB2YWx1ZSwgcGF0aCk7XG4gIGlmIChuZXh0ID09IG51bGwpIHtcbiAgICByZXR1cm4ge307XG4gIH1cbiAgcmV0dXJuIG5leHQgYXMgUGFydGlhbDxXaGVyZT47XG59O1xuXG5jb25zdCBidWlsZFBpY2tlclNjb3BlID0gPFdoZXJlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4+KFxuICB3aGVyZTogV2hlcmUgfCBudWxsLFxuKTogQmFja29mZmljZVBpY2tlclNjb3BlPFdoZXJlPiA9PiB7XG4gIGNvbnN0IHNjb3BlOiBCYWNrb2ZmaWNlUGlja2VyU2NvcGU8V2hlcmU+ID0ge307XG4gIGNvbnN0IGtleXMgPSBbXG4gICAgJ29yZ2FuaXphdGlvbklkJyxcbiAgICAnZ3JvdXBJZCcsXG4gICAgJ3Byb2plY3RJZCcsXG4gICAgJ2luaXRpYXRpdmVJZCcsXG4gIF0gYXMgY29uc3Q7XG4gIGtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgY29uc3Qgd2hlcmVLZXkgPSBrZXkgYXMgRXh0cmFjdDxrZXlvZiBXaGVyZSwgc3RyaW5nPjtcbiAgICBjb25zdCB2YWx1ZSA9IHJlYWRXaGVyZVZhbHVlKHdoZXJlLCB3aGVyZUtleSk7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHNjb3BlW3doZXJlS2V5XSA9IHZhbHVlIGFzIEV4dHJhY3Q8XG4gICAgICAgIE5vbk51bGxhYmxlPFdoZXJlW3R5cGVvZiB3aGVyZUtleV0+LFxuICAgICAgICBzdHJpbmdcbiAgICAgID47XG4gICAgfVxuICB9KTtcbiAgcmV0dXJuIHNjb3BlO1xufTtcblxuLyoqXG4gKlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFwRmlsdGVyczxXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+PihcbiAgZmlsdGVyczogcmVhZG9ubHkgQmFja29mZmljZUxlZ2FjeUZpbHRlclNwZWM8V2hlcmU+W10sXG4pOiByZWFkb25seSBCYWNrb2ZmaWNlRmlsdGVyU3BlYzxXaGVyZT5bXSB7XG4gIHJldHVybiBmaWx0ZXJzLm1hcCgoZmlsdGVyKSA9PiB7XG4gICAgY29uc3Qga2V5ID0gKGZpbHRlci53aGVyZUtleSA/PyBmaWx0ZXIuaWQpIGFzIEV4dHJhY3Q8a2V5b2YgV2hlcmUsIHN0cmluZz47XG4gICAgY29uc3QgYmFzZSA9IHtcbiAgICAgIGlkOiBmaWx0ZXIuaWQsXG4gICAgICBsYWJlbDogZmlsdGVyLmxhYmVsLFxuICAgICAgcGxhY2VtZW50OiBmaWx0ZXIucGxhY2VtZW50LFxuICAgICAgd2hlcmVLZXk6IGZpbHRlci53aGVyZUtleSxcbiAgICAgIHBhdGg6IGZpbHRlci5wYXRoLFxuICAgICAgdG9HcmFwaFFMOiAodmFsdWU6IHVua25vd24pID0+IHtcbiAgICAgICAgcmV0dXJuIGJ1aWxkV2hlcmUoa2V5LCB2YWx1ZSwgZmlsdGVyLnBhdGgpO1xuICAgICAgfSxcbiAgICB9O1xuXG4gICAgc3dpdGNoIChmaWx0ZXIua2luZCkge1xuICAgICAgY2FzZSAndGV4dENvbnRhaW5zJzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5iYXNlLFxuICAgICAgICAgIGtpbmQ6ICd0ZXh0JyxcbiAgICAgICAgICBwbGFjZWhvbGRlckxhYmVsOiBmaWx0ZXIucGxhY2Vob2xkZXJMYWJlbCxcbiAgICAgICAgICBwbGFjZWhvbGRlclRleHQ6IGZpbHRlci5wbGFjZWhvbGRlclRleHQsXG4gICAgICAgIH07XG4gICAgICBjYXNlICdkYXRldGltZSc6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uYmFzZSxcbiAgICAgICAgICBraW5kOiAnZGF0ZXRpbWUnLFxuICAgICAgICAgIG1vZGU6IGZpbHRlci5tb2RlLFxuICAgICAgICAgIHBsYWNlaG9sZGVyTGFiZWw6IGZpbHRlci5wbGFjZWhvbGRlckxhYmVsLFxuICAgICAgICAgIHBsYWNlaG9sZGVyVGV4dDogZmlsdGVyLnBsYWNlaG9sZGVyVGV4dCxcbiAgICAgICAgfTtcbiAgICAgIGNhc2UgJ251bWJlcic6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uYmFzZSxcbiAgICAgICAgICBraW5kOiAnbnVtYmVyJyxcbiAgICAgICAgICBwbGFjZWhvbGRlckxhYmVsOiBmaWx0ZXIucGxhY2Vob2xkZXJMYWJlbCxcbiAgICAgICAgICBwbGFjZWhvbGRlclRleHQ6IGZpbHRlci5wbGFjZWhvbGRlclRleHQsXG4gICAgICAgICAgaW5wdXRNb2RlOiBmaWx0ZXIuaW5wdXRNb2RlLFxuICAgICAgICB9O1xuICAgICAgY2FzZSAnc2VsZWN0JzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5iYXNlLFxuICAgICAgICAgIGtpbmQ6ICdlbnVtJyxcbiAgICAgICAgICBvcHRpb25zOiBmaWx0ZXIub3B0aW9ucy5tYXAoKG9wdGlvbikgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgdmFsdWU6IG9wdGlvbi52YWx1ZSxcbiAgICAgICAgICAgICAgbGFiZWw6IG9wdGlvbi5sYWJlbCxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfSksXG4gICAgICAgIH07XG4gICAgICBjYXNlICdib29sZWFuJzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5iYXNlLFxuICAgICAgICAgIGtpbmQ6ICdib29sZWFuJyxcbiAgICAgICAgICB0cnVlTGFiZWw6IGZpbHRlci50cnVlTGFiZWwsXG4gICAgICAgICAgZmFsc2VMYWJlbDogZmlsdGVyLmZhbHNlTGFiZWwsXG4gICAgICAgIH07XG4gICAgICBjYXNlICdlbnRpdHlJZCc6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uYmFzZSxcbiAgICAgICAgICBraW5kOiAnZW50aXR5SWQnLFxuICAgICAgICAgIGVudGl0eTogZmlsdGVyLmVudGl0eSxcbiAgICAgICAgICBwaWNrZXJTY29wZTogKHdoZXJlKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYnVpbGRQaWNrZXJTY29wZSh3aGVyZSk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uYmFzZSxcbiAgICAgICAgICBraW5kOiAndGV4dCcsXG4gICAgICAgIH07XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export declare const getRowId: <Row extends object>(row: Row) => string;
2
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/config/list.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,GAAI,GAAG,SAAS,MAAM,EAAE,KAAK,GAAG,KAAG,MAYvD,CAAC"}
@@ -0,0 +1,14 @@
1
+ export const getRowId = (row) => {
2
+ const { id } = row;
3
+ if (typeof id === 'string') {
4
+ if (id.trim() === '') {
5
+ return '';
6
+ }
7
+ return id;
8
+ }
9
+ if (typeof id === 'number') {
10
+ return String(id);
11
+ }
12
+ return '';
13
+ };
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBcUIsR0FBUSxFQUFVLEVBQUU7SUFDL0QsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLEdBQThCLENBQUM7SUFDOUMsSUFBSSxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUMzQixJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNyQixPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDRCxJQUFJLE9BQU8sRUFBRSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzNCLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBnZXRSb3dJZCA9IDxSb3cgZXh0ZW5kcyBvYmplY3Q+KHJvdzogUm93KTogc3RyaW5nID0+IHtcbiAgY29uc3QgeyBpZCB9ID0gcm93IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBpZiAodHlwZW9mIGlkID09PSAnc3RyaW5nJykge1xuICAgIGlmIChpZC50cmltKCkgPT09ICcnKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiBpZDtcbiAgfVxuICBpZiAodHlwZW9mIGlkID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiBTdHJpbmcoaWQpO1xuICB9XG4gIHJldHVybiAnJztcbn07XG4iXX0=
@@ -0,0 +1,10 @@
1
+ export type UnknownRecord = Record<string, unknown>;
2
+ export declare const readRecordValueByKeys: (record: UnknownRecord, keys: readonly string[]) => string | number | null;
3
+ export declare const readRecordValue: <T extends object, K extends keyof T & string>(record: T, key: K) => string | number | null;
4
+ export declare const readRecordRaw: <T extends object, K extends keyof T & string>(record: T, key: K) => T[K];
5
+ export declare const readStringField: <T extends object, K extends keyof T & string>(record: T, key: K) => string | null;
6
+ export declare const readNumberField: <T extends object, K extends keyof T & string>(record: T, key: K) => number | null;
7
+ export declare const readBooleanField: <T extends object, K extends keyof T & string>(record: T, key: K) => boolean | null;
8
+ export declare const readArrayLength: <T extends object, K extends keyof T & string>(record: T, key: K) => number | null;
9
+ export declare const formatJsonValue: (value: unknown) => string | null;
10
+ //# sourceMappingURL=record.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../src/config/record.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAsCpD,eAAO,MAAM,qBAAqB,GAChC,QAAQ,aAAa,EACrB,MAAM,SAAS,MAAM,EAAE,KACtB,MAAM,GAAG,MAAM,GAAG,IAQpB,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EAC1E,QAAQ,CAAC,EACT,KAAK,CAAC,KACL,MAAM,GAAG,MAAM,GAAG,IAqDpB,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EACxE,QAAQ,CAAC,EACT,KAAK,CAAC,KACL,CAAC,CAAC,CAAC,CAEL,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EAC1E,QAAQ,CAAC,EACT,KAAK,CAAC,KACL,MAAM,GAAG,IAMX,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EAC1E,QAAQ,CAAC,EACT,KAAK,CAAC,KACL,MAAM,GAAG,IAMX,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EAC3E,QAAQ,CAAC,EACT,KAAK,CAAC,KACL,OAAO,GAAG,IAMZ,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EAC1E,QAAQ,CAAC,EACT,KAAK,CAAC,KACL,MAAM,GAAG,IAMX,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,KAAG,MAAM,GAAG,IAezD,CAAC"}
@@ -0,0 +1,147 @@
1
+ const LABEL_KEYS = [
2
+ 'name',
3
+ 'title',
4
+ 'label',
5
+ 'slug',
6
+ 'fullSlug',
7
+ 'email',
8
+ 'tokenId',
9
+ 'key',
10
+ 'id',
11
+ ];
12
+ const isRecord = (value) => {
13
+ return typeof value === 'object' && value != null && !Array.isArray(value);
14
+ };
15
+ const normalizePrimitive = (value) => {
16
+ if (typeof value === 'string') {
17
+ const trimmed = value.trim();
18
+ if (trimmed === '') {
19
+ return null;
20
+ }
21
+ return trimmed;
22
+ }
23
+ if (typeof value === 'number') {
24
+ return value;
25
+ }
26
+ if (typeof value === 'boolean') {
27
+ if (value) {
28
+ return 'true';
29
+ }
30
+ return 'false';
31
+ }
32
+ return null;
33
+ };
34
+ export const readRecordValueByKeys = (record, keys) => {
35
+ for (const key of keys) {
36
+ const candidate = normalizePrimitive(record[key]);
37
+ if (candidate != null) {
38
+ return candidate;
39
+ }
40
+ }
41
+ return null;
42
+ };
43
+ export const readRecordValue = (record, key) => {
44
+ const value = record[key];
45
+ const primitive = normalizePrimitive(value);
46
+ if (primitive != null) {
47
+ return primitive;
48
+ }
49
+ const keyString = String(key);
50
+ if (keyString.endsWith('Id')) {
51
+ const nestedKey = keyString.slice(0, -2);
52
+ const nestedValue = record[nestedKey];
53
+ if (isRecord(nestedValue)) {
54
+ const nestedLabel = readRecordValueByKeys(nestedValue, LABEL_KEYS);
55
+ if (nestedLabel != null) {
56
+ return nestedLabel;
57
+ }
58
+ const nestedId = normalizePrimitive(nestedValue.id);
59
+ if (nestedId != null) {
60
+ return nestedId;
61
+ }
62
+ }
63
+ }
64
+ if (Array.isArray(value)) {
65
+ const items = value
66
+ .map((entry) => {
67
+ return normalizePrimitive(entry);
68
+ })
69
+ .filter((entry) => {
70
+ return entry != null;
71
+ });
72
+ if (items.length > 0) {
73
+ return items.join(', ');
74
+ }
75
+ return value.length;
76
+ }
77
+ if (isRecord(value)) {
78
+ const nestedLabel = readRecordValueByKeys(value, LABEL_KEYS);
79
+ if (nestedLabel != null) {
80
+ return nestedLabel;
81
+ }
82
+ try {
83
+ return JSON.stringify(value);
84
+ }
85
+ catch {
86
+ return null;
87
+ }
88
+ }
89
+ if (value != null) {
90
+ try {
91
+ return JSON.stringify(value);
92
+ }
93
+ catch {
94
+ return null;
95
+ }
96
+ }
97
+ return null;
98
+ };
99
+ export const readRecordRaw = (record, key) => {
100
+ return record[key];
101
+ };
102
+ export const readStringField = (record, key) => {
103
+ const value = readRecordValue(record, key);
104
+ if (value == null) {
105
+ return null;
106
+ }
107
+ return String(value);
108
+ };
109
+ export const readNumberField = (record, key) => {
110
+ const value = readRecordRaw(record, key);
111
+ if (typeof value === 'number') {
112
+ return value;
113
+ }
114
+ return null;
115
+ };
116
+ export const readBooleanField = (record, key) => {
117
+ const value = readRecordRaw(record, key);
118
+ if (typeof value === 'boolean') {
119
+ return value;
120
+ }
121
+ return null;
122
+ };
123
+ export const readArrayLength = (record, key) => {
124
+ const value = readRecordRaw(record, key);
125
+ if (Array.isArray(value)) {
126
+ return value.length;
127
+ }
128
+ return null;
129
+ };
130
+ export const formatJsonValue = (value) => {
131
+ if (value == null) {
132
+ return null;
133
+ }
134
+ try {
135
+ return JSON.stringify(value);
136
+ }
137
+ catch {
138
+ if (typeof value === 'string') {
139
+ return value;
140
+ }
141
+ if (typeof value === 'number' || typeof value === 'boolean') {
142
+ return String(value);
143
+ }
144
+ }
145
+ return null;
146
+ };
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbmZpZy9yZWNvcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLEdBQUc7SUFDakIsTUFBTTtJQUNOLE9BQU87SUFDUCxPQUFPO0lBQ1AsTUFBTTtJQUNOLFVBQVU7SUFDVixPQUFPO0lBQ1AsU0FBUztJQUNULEtBQUs7SUFDTCxJQUFJO0NBQ0ksQ0FBQztBQUVYLE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBYyxFQUEwQixFQUFFO0lBQzFELE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzdFLENBQUMsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxLQUFjLEVBQTBCLEVBQUU7SUFDcEUsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxPQUFPLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDbkIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUNELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDOUIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsSUFBSSxPQUFPLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUMvQixJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLENBQ25DLE1BQXFCLEVBQ3JC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QzdCLE1BQVMsRUFDVCxHQUFNLEVBQ1MsRUFBRTtJQUNqQixNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3pCLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUN0QixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxLQUFjLEVBQWlCLEVBQUU7SUFDL0QsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7UUFDbEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsSUFBSSxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzlCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLE9BQU8sS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBVbmtub3duUmVjb3JkID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cbmNvbnN0IExBQkVMX0tFWVMgPSBbXG4gICduYW1lJyxcbiAgJ3RpdGxlJyxcbiAgJ2xhYmVsJyxcbiAgJ3NsdWcnLFxuICAnZnVsbFNsdWcnLFxuICAnZW1haWwnLFxuICAndG9rZW5JZCcsXG4gICdrZXknLFxuICAnaWQnLFxuXSBhcyBjb25zdDtcblxuY29uc3QgaXNSZWNvcmQgPSAodmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBVbmtub3duUmVjb3JkID0+IHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUgIT0gbnVsbCAmJiAhQXJyYXkuaXNBcnJheSh2YWx1ZSk7XG59O1xuXG5jb25zdCBub3JtYWxpemVQcmltaXRpdmUgPSAodmFsdWU6IHVua25vd24pOiBzdHJpbmcgfCBudW1iZXIgfCBudWxsID0+IHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICBjb25zdCB0cmltbWVkID0gdmFsdWUudHJpbSgpO1xuICAgIGlmICh0cmltbWVkID09PSAnJykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiB0cmltbWVkO1xuICB9XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgcmV0dXJuICd0cnVlJztcbiAgICB9XG4gICAgcmV0dXJuICdmYWxzZSc7XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59O1xuXG5leHBvcnQgY29uc3QgcmVhZFJlY29yZFZhbHVlQnlLZXlzID0gKFxuICByZWNvcmQ6IFVua25vd25SZWNvcmQsXG4gIGtleXM6IHJlYWRvbmx5IHN0cmluZ1tdLFxuKTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCA9PiB7XG4gIGZvciAoY29uc3Qga2V5IG9mIGtleXMpIHtcbiAgICBjb25zdCBjYW5kaWRhdGUgPSBub3JtYWxpemVQcmltaXRpdmUocmVjb3JkW2tleV0pO1xuICAgIGlmIChjYW5kaWRhdGUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGNhbmRpZGF0ZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59O1xuXG5leHBvcnQgY29uc3QgcmVhZFJlY29yZFZhbHVlID0gPFQgZXh0ZW5kcyBvYmplY3QsIEsgZXh0ZW5kcyBrZXlvZiBUICYgc3RyaW5nPihcbiAgcmVjb3JkOiBULFxuICBrZXk6IEssXG4pOiBzdHJpbmcgfCBudW1iZXIgfCBudWxsID0+IHtcbiAgY29uc3QgdmFsdWUgPSByZWNvcmRba2V5XTtcbiAgY29uc3QgcHJpbWl0aXZlID0gbm9ybWFsaXplUHJpbWl0aXZlKHZhbHVlKTtcbiAgaWYgKHByaW1pdGl2ZSAhPSBudWxsKSB7XG4gICAgcmV0dXJuIHByaW1pdGl2ZTtcbiAgfVxuICBjb25zdCBrZXlTdHJpbmcgPSBTdHJpbmcoa2V5KTtcbiAgaWYgKGtleVN0cmluZy5lbmRzV2l0aCgnSWQnKSkge1xuICAgIGNvbnN0IG5lc3RlZEtleSA9IGtleVN0cmluZy5zbGljZSgwLCAtMik7XG4gICAgY29uc3QgbmVzdGVkVmFsdWUgPSAocmVjb3JkIGFzIFVua25vd25SZWNvcmQpW25lc3RlZEtleV07XG4gICAgaWYgKGlzUmVjb3JkKG5lc3RlZFZhbHVlKSkge1xuICAgICAgY29uc3QgbmVzdGVkTGFiZWwgPSByZWFkUmVjb3JkVmFsdWVCeUtleXMobmVzdGVkVmFsdWUsIExBQkVMX0tFWVMpO1xuICAgICAgaWYgKG5lc3RlZExhYmVsICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG5lc3RlZExhYmVsO1xuICAgICAgfVxuICAgICAgY29uc3QgbmVzdGVkSWQgPSBub3JtYWxpemVQcmltaXRpdmUobmVzdGVkVmFsdWUuaWQpO1xuICAgICAgaWYgKG5lc3RlZElkICE9IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG5lc3RlZElkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICBjb25zdCBpdGVtcyA9IHZhbHVlXG4gICAgICAubWFwKChlbnRyeSkgPT4ge1xuICAgICAgICByZXR1cm4gbm9ybWFsaXplUHJpbWl0aXZlKGVudHJ5KTtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKChlbnRyeSk6IGVudHJ5IGlzIHN0cmluZyB8IG51bWJlciA9PiB7XG4gICAgICAgIHJldHVybiBlbnRyeSAhPSBudWxsO1xuICAgICAgfSk7XG4gICAgaWYgKGl0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiBpdGVtcy5qb2luKCcsICcpO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWUubGVuZ3RoO1xuICB9XG4gIGlmIChpc1JlY29yZCh2YWx1ZSkpIHtcbiAgICBjb25zdCBuZXN0ZWRMYWJlbCA9IHJlYWRSZWNvcmRWYWx1ZUJ5S2V5cyh2YWx1ZSwgTEFCRUxfS0VZUyk7XG4gICAgaWYgKG5lc3RlZExhYmVsICE9IG51bGwpIHtcbiAgICAgIHJldHVybiBuZXN0ZWRMYWJlbDtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gICAgfSBjYXRjaCB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbDtcbn07XG5cbmV4cG9ydCBjb25zdCByZWFkUmVjb3JkUmF3ID0gPFQgZXh0ZW5kcyBvYmplY3QsIEsgZXh0ZW5kcyBrZXlvZiBUICYgc3RyaW5nPihcbiAgcmVjb3JkOiBULFxuICBrZXk6IEssXG4pOiBUW0tdID0+IHtcbiAgcmV0dXJuIHJlY29yZFtrZXldO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlYWRTdHJpbmdGaWVsZCA9IDxUIGV4dGVuZHMgb2JqZWN0LCBLIGV4dGVuZHMga2V5b2YgVCAmIHN0cmluZz4oXG4gIHJlY29yZDogVCxcbiAga2V5OiBLLFxuKTogc3RyaW5nIHwgbnVsbCA9PiB7XG4gIGNvbnN0IHZhbHVlID0gcmVhZFJlY29yZFZhbHVlKHJlY29yZCwga2V5KTtcbiAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbn07XG5cbmV4cG9ydCBjb25zdCByZWFkTnVtYmVyRmllbGQgPSA8VCBleHRlbmRzIG9iamVjdCwgSyBleHRlbmRzIGtleW9mIFQgJiBzdHJpbmc+KFxuICByZWNvcmQ6IFQsXG4gIGtleTogSyxcbik6IG51bWJlciB8IG51bGwgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHJlYWRSZWNvcmRSYXcocmVjb3JkLCBrZXkpO1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn07XG5cbmV4cG9ydCBjb25zdCByZWFkQm9vbGVhbkZpZWxkID0gPFQgZXh0ZW5kcyBvYmplY3QsIEsgZXh0ZW5kcyBrZXlvZiBUICYgc3RyaW5nPihcbiAgcmVjb3JkOiBULFxuICBrZXk6IEssXG4pOiBib29sZWFuIHwgbnVsbCA9PiB7XG4gIGNvbnN0IHZhbHVlID0gcmVhZFJlY29yZFJhdyhyZWNvcmQsIGtleSk7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn07XG5cbmV4cG9ydCBjb25zdCByZWFkQXJyYXlMZW5ndGggPSA8VCBleHRlbmRzIG9iamVjdCwgSyBleHRlbmRzIGtleW9mIFQgJiBzdHJpbmc+KFxuICByZWNvcmQ6IFQsXG4gIGtleTogSyxcbik6IG51bWJlciB8IG51bGwgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHJlYWRSZWNvcmRSYXcocmVjb3JkLCBrZXkpO1xuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWUubGVuZ3RoO1xuICB9XG4gIHJldHVybiBudWxsO1xufTtcblxuZXhwb3J0IGNvbnN0IGZvcm1hdEpzb25WYWx1ZSA9ICh2YWx1ZTogdW5rbm93bik6IHN0cmluZyB8IG51bGwgPT4ge1xuICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHRyeSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgfSBjYXRjaCB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgfHwgdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicpIHtcbiAgICAgIHJldHVybiBTdHJpbmcodmFsdWUpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbDtcbn07XG4iXX0=
@@ -0,0 +1,8 @@
1
+ import type { BackofficeSortSpec } from '../types.js';
2
+ export type BackofficeLegacySortSpec<Sort extends string> = {
3
+ id: Sort;
4
+ label: BackofficeSortSpec<Sort>['label'];
5
+ };
6
+ export declare function mapSorts<Sort extends string>(sorts: readonly BackofficeLegacySortSpec<Sort>[]): readonly BackofficeSortSpec<Sort>[];
7
+ export default mapSorts;
8
+ //# sourceMappingURL=sorts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sorts.d.ts","sourceRoot":"","sources":["../../../src/config/sorts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,MAAM,wBAAwB,CAAC,IAAI,SAAS,MAAM,IAAI;IAC1D,EAAE,EAAE,IAAI,CAAC;IACT,KAAK,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;CAC1C,CAAC;AAKF,wBAAgB,QAAQ,CAAC,IAAI,SAAS,MAAM,EAC1C,KAAK,EAAE,SAAS,wBAAwB,CAAC,IAAI,CAAC,EAAE,GAC/C,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAOrC;AAED,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,10 @@
1
+ export function mapSorts(sorts) {
2
+ return sorts.map((sort) => {
3
+ return {
4
+ id: sort.id,
5
+ label: sort.label,
6
+ };
7
+ });
8
+ }
9
+ export default mapSorts;
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29uZmlnL3NvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE1BQU0sVUFBVSxRQUFRLENBQ3RCLEtBQWdEO0lBRWhELE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ3hCLE9BQU87WUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDbEIsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELGVBQWUsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCYWNrb2ZmaWNlU29ydFNwZWMgfSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMZWdhY3lTb3J0U3BlYzxTb3J0IGV4dGVuZHMgc3RyaW5nPiA9IHtcbiAgaWQ6IFNvcnQ7XG4gIGxhYmVsOiBCYWNrb2ZmaWNlU29ydFNwZWM8U29ydD5bJ2xhYmVsJ107XG59O1xuXG4vKipcbiAqXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXBTb3J0czxTb3J0IGV4dGVuZHMgc3RyaW5nPihcbiAgc29ydHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VMZWdhY3lTb3J0U3BlYzxTb3J0PltdLFxuKTogcmVhZG9ubHkgQmFja29mZmljZVNvcnRTcGVjPFNvcnQ+W10ge1xuICByZXR1cm4gc29ydHMubWFwKChzb3J0KSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiBzb3J0LmlkLFxuICAgICAgbGFiZWw6IHNvcnQubGFiZWwsXG4gICAgfTtcbiAgfSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IG1hcFNvcnRzO1xuIl19
@@ -1,6 +1,13 @@
1
1
  export * from './base64.js';
2
+ export * from './billing.js';
2
3
  export * from './builders.js';
3
4
  export * from './constants.js';
5
+ export * from './config/columns.js';
6
+ export * from './config/detail.js';
7
+ export * from './config/filters.js';
8
+ export * from './config/list.js';
9
+ export * from './config/record.js';
10
+ export * from './config/sorts.js';
4
11
  export * from './detail/pages.js';
5
12
  export * from './detailParams.js';
6
13
  export * from './filters/schema.js';
@@ -9,5 +16,6 @@ export * from './resolve.js';
9
16
  export * from './state/buildListHref.js';
10
17
  export * from './state/stableKey.js';
11
18
  export * from './state/urlState.js';
19
+ export * from './taskState.js';
12
20
  export * from './types.js';
13
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
package/lib/esm/index.js CHANGED
@@ -1,6 +1,13 @@
1
1
  export * from './base64.js';
2
+ export * from './billing.js';
2
3
  export * from './builders.js';
3
4
  export * from './constants.js';
5
+ export * from './config/columns.js';
6
+ export * from './config/detail.js';
7
+ export * from './config/filters.js';
8
+ export * from './config/list.js';
9
+ export * from './config/record.js';
10
+ export * from './config/sorts.js';
4
11
  export * from './detail/pages.js';
5
12
  export * from './detailParams.js';
6
13
  export * from './filters/schema.js';
@@ -9,5 +16,6 @@ export * from './resolve.js';
9
16
  export * from './state/buildListHref.js';
10
17
  export * from './state/stableKey.js';
11
18
  export * from './state/urlState.js';
19
+ export * from './taskState.js';
12
20
  export * from './types.js';
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iYXNlNjQuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9idWlsZGVycy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2RldGFpbC9wYWdlcy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2RldGFpbFBhcmFtcy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlcnMvc2NoZW1hLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVycy93aGVyZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc29sdmUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZS9idWlsZExpc3RIcmVmLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdGUvc3RhYmxlS2V5LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdGUvdXJsU3RhdGUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy5qcyc7XG4iXX0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Jhc2U2NC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2JpbGxpbmcuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9idWlsZGVycy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9jb2x1bW5zLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL2RldGFpbC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9maWx0ZXJzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL2xpc3QuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25maWcvcmVjb3JkLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL3NvcnRzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vZGV0YWlsL3BhZ2VzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vZGV0YWlsUGFyYW1zLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVycy9zY2hlbWEuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXJzL3doZXJlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vcmVzb2x2ZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3N0YXRlL2J1aWxkTGlzdEhyZWYuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZS9zdGFibGVLZXkuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZS91cmxTdGF0ZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3Rhc2tTdGF0ZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzLmpzJztcbiJdfQ==
@@ -0,0 +1,15 @@
1
+ export type TaskStatusLike<StatusKind extends string = string, ClosureReason extends string = string> = {
2
+ readonly __typename: string;
3
+ readonly kind?: StatusKind | null | undefined;
4
+ readonly closureReason?: ClosureReason | null | undefined;
5
+ } | null | undefined;
6
+ export declare function getTaskStatusKind<StatusKind extends string>(status: TaskStatusLike<StatusKind>): StatusKind | null;
7
+ export declare function getTaskClosureReason<ClosureReason extends string>(status: TaskStatusLike<string, ClosureReason>): ClosureReason | null;
8
+ export declare function isTaskClosed(status: TaskStatusLike, closedKind?: string): boolean;
9
+ export declare function isAgentTask(kind: string | null | undefined, agentKind?: string): boolean;
10
+ export declare function canEditTask(input: {
11
+ canEdit: boolean | null | undefined;
12
+ kind: string | null | undefined;
13
+ agentKind?: string;
14
+ }): boolean;
15
+ //# sourceMappingURL=taskState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taskState.d.ts","sourceRoot":"","sources":["../../src/taskState.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,CACxB,UAAU,SAAS,MAAM,GAAG,MAAM,EAClC,aAAa,SAAS,MAAM,GAAG,MAAM,IAEnC;IACE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3D,GACD,IAAI,GACJ,SAAS,CAAC;AAKd,wBAAgB,iBAAiB,CAAC,UAAU,SAAS,MAAM,EACzD,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GACjC,UAAU,GAAG,IAAI,CAKnB;AAKD,wBAAgB,oBAAoB,CAAC,aAAa,SAAS,MAAM,EAC/D,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,GAC5C,aAAa,GAAG,IAAI,CAKtB;AAKD,wBAAgB,YAAY,CAC1B,MAAM,EAAE,cAAc,EACtB,UAAU,SAAW,GACpB,OAAO,CAET;AAKD,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC/B,SAAS,SAAU,GAClB,OAAO,CAET;AAKD,wBAAgB,WAAW,CAAC,KAAK,EAAE;IACjC,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IACpC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAEV"}
@@ -0,0 +1,22 @@
1
+ export function getTaskStatusKind(status) {
2
+ if (status == null) {
3
+ return null;
4
+ }
5
+ return status.kind ?? null;
6
+ }
7
+ export function getTaskClosureReason(status) {
8
+ if (status?.__typename !== 'TaskStatusClosed') {
9
+ return null;
10
+ }
11
+ return status.closureReason ?? null;
12
+ }
13
+ export function isTaskClosed(status, closedKind = 'CLOSED') {
14
+ return getTaskStatusKind(status) === closedKind;
15
+ }
16
+ export function isAgentTask(kind, agentKind = 'AGENT') {
17
+ return kind === agentKind;
18
+ }
19
+ export function canEditTask(input) {
20
+ return input.canEdit === true && !isAgentTask(input.kind, input.agentKind);
21
+ }
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza1N0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rhc2tTdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQSxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLE1BQWtDO0lBRWxDLElBQUksTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ25CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUM7QUFDN0IsQ0FBQztBQUtELE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsTUFBNkM7SUFFN0MsSUFBSSxNQUFNLEVBQUUsVUFBVSxLQUFLLGtCQUFrQixFQUFFLENBQUM7UUFDOUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQztBQUN0QyxDQUFDO0FBS0QsTUFBTSxVQUFVLFlBQVksQ0FDMUIsTUFBc0IsRUFDdEIsVUFBVSxHQUFHLFFBQVE7SUFFckIsT0FBTyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsS0FBSyxVQUFVLENBQUM7QUFDbEQsQ0FBQztBQUtELE1BQU0sVUFBVSxXQUFXLENBQ3pCLElBQStCLEVBQy9CLFNBQVMsR0FBRyxPQUFPO0lBRW5CLE9BQU8sSUFBSSxLQUFLLFNBQVMsQ0FBQztBQUM1QixDQUFDO0FBS0QsTUFBTSxVQUFVLFdBQVcsQ0FBQyxLQUkzQjtJQUNDLE9BQU8sS0FBSyxDQUFDLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFRhc2tTdGF0dXNMaWtlPFxuICBTdGF0dXNLaW5kIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nLFxuICBDbG9zdXJlUmVhc29uIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nLFxuPiA9XG4gIHwge1xuICAgICAgcmVhZG9ubHkgX190eXBlbmFtZTogc3RyaW5nO1xuICAgICAgcmVhZG9ubHkga2luZD86IFN0YXR1c0tpbmQgfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgICAgcmVhZG9ubHkgY2xvc3VyZVJlYXNvbj86IENsb3N1cmVSZWFzb24gfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgIH1cbiAgfCBudWxsXG4gIHwgdW5kZWZpbmVkO1xuXG4vKipcbiAqXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRUYXNrU3RhdHVzS2luZDxTdGF0dXNLaW5kIGV4dGVuZHMgc3RyaW5nPihcbiAgc3RhdHVzOiBUYXNrU3RhdHVzTGlrZTxTdGF0dXNLaW5kPixcbik6IFN0YXR1c0tpbmQgfCBudWxsIHtcbiAgaWYgKHN0YXR1cyA9PSBudWxsKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIHN0YXR1cy5raW5kID8/IG51bGw7XG59XG5cbi8qKlxuICpcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFRhc2tDbG9zdXJlUmVhc29uPENsb3N1cmVSZWFzb24gZXh0ZW5kcyBzdHJpbmc+KFxuICBzdGF0dXM6IFRhc2tTdGF0dXNMaWtlPHN0cmluZywgQ2xvc3VyZVJlYXNvbj4sXG4pOiBDbG9zdXJlUmVhc29uIHwgbnVsbCB7XG4gIGlmIChzdGF0dXM/Ll9fdHlwZW5hbWUgIT09ICdUYXNrU3RhdHVzQ2xvc2VkJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiBzdGF0dXMuY2xvc3VyZVJlYXNvbiA/PyBudWxsO1xufVxuXG4vKipcbiAqXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1Rhc2tDbG9zZWQoXG4gIHN0YXR1czogVGFza1N0YXR1c0xpa2UsXG4gIGNsb3NlZEtpbmQgPSAnQ0xPU0VEJyxcbik6IGJvb2xlYW4ge1xuICByZXR1cm4gZ2V0VGFza1N0YXR1c0tpbmQoc3RhdHVzKSA9PT0gY2xvc2VkS2luZDtcbn1cblxuLyoqXG4gKlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNBZ2VudFRhc2soXG4gIGtpbmQ6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsXG4gIGFnZW50S2luZCA9ICdBR0VOVCcsXG4pOiBib29sZWFuIHtcbiAgcmV0dXJuIGtpbmQgPT09IGFnZW50S2luZDtcbn1cblxuLyoqXG4gKlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FuRWRpdFRhc2soaW5wdXQ6IHtcbiAgY2FuRWRpdDogYm9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIGtpbmQ6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIGFnZW50S2luZD86IHN0cmluZztcbn0pOiBib29sZWFuIHtcbiAgcmV0dXJuIGlucHV0LmNhbkVkaXQgPT09IHRydWUgJiYgIWlzQWdlbnRUYXNrKGlucHV0LmtpbmQsIGlucHV0LmFnZW50S2luZCk7XG59XG4iXX0=