dce-reactkit 3.2.2-beta.46 → 3.2.2-beta.47
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/cjs/index.js +95 -66
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/types/LogMetadataContextMap.d.ts +11 -0
- package/dist/cjs/types/types/LogMetadataTagMap.d.ts +8 -0
- package/dist/cjs/types/types/LogMetadataTargetMap.d.ts +8 -0
- package/dist/cjs/types/types/LogMetadataType.d.ts +6 -12
- package/dist/esm/index.js +95 -66
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/types/LogMetadataContextMap.d.ts +11 -0
- package/dist/esm/types/types/LogMetadataTagMap.d.ts +8 -0
- package/dist/esm/types/types/LogMetadataTargetMap.d.ts +8 -0
- package/dist/esm/types/types/LogMetadataType.d.ts +6 -12
- package/dist/index.d.ts +30 -12
- package/package.json +1 -1
- package/src/components/LogReviewer.tsx +113 -78
- package/src/types/LogMetadataContextMap.ts +15 -0
- package/src/types/LogMetadataTagMap.ts +9 -0
- package/src/types/LogMetadataTargetMap.ts +9 -0
- package/src/types/LogMetadataType.ts +8 -15
package/dist/cjs/index.js
CHANGED
|
@@ -3131,34 +3131,34 @@ const LogReviewer = (props) => {
|
|
|
3131
3131
|
/*------------------------------------------------------------------------*/
|
|
3132
3132
|
/* Setup */
|
|
3133
3133
|
/*------------------------------------------------------------------------*/
|
|
3134
|
-
var _a, _b, _c, _d, _e, _f
|
|
3134
|
+
var _a, _b, _c, _d, _e, _f;
|
|
3135
3135
|
/* -------------- Props ------------- */
|
|
3136
3136
|
// Destructure props
|
|
3137
3137
|
const { LogMetadata, onClose, } = props;
|
|
3138
|
-
//
|
|
3139
|
-
|
|
3140
|
-
|
|
3141
|
-
|
|
3142
|
-
|
|
3143
|
-
|
|
3144
|
-
|
|
3145
|
-
|
|
3146
|
-
|
|
3147
|
-
|
|
3148
|
-
|
|
3149
|
-
|
|
3150
|
-
|
|
3151
|
-
|
|
3152
|
-
if (LogMetadata.Context) {
|
|
3153
|
-
LogMetadata.Context[context] = context;
|
|
3154
|
-
}
|
|
3138
|
+
// Create complete map of contexts
|
|
3139
|
+
const contextMap = {};
|
|
3140
|
+
[
|
|
3141
|
+
((_a = LogMetadata.Context) !== null && _a !== void 0 ? _a : {}),
|
|
3142
|
+
LogBuiltInMetadata.Context,
|
|
3143
|
+
].forEach((contextMap) => {
|
|
3144
|
+
Object.keys(contextMap).forEach((context) => {
|
|
3145
|
+
// Add context
|
|
3146
|
+
contextMap[context] = context;
|
|
3147
|
+
// If context has children, add an "uncategorized" subcontext
|
|
3148
|
+
if (typeof contextMap[context] !== 'string') {
|
|
3149
|
+
contextMap[context][LogBuiltInMetadata.Context.Uncategorized] = (LogBuiltInMetadata.Context.Uncategorized);
|
|
3150
|
+
}
|
|
3151
|
+
});
|
|
3155
3152
|
});
|
|
3156
|
-
//
|
|
3157
|
-
|
|
3158
|
-
|
|
3159
|
-
|
|
3160
|
-
|
|
3161
|
-
|
|
3153
|
+
// Create complete map of targets
|
|
3154
|
+
const targetMap = {};
|
|
3155
|
+
[
|
|
3156
|
+
((_b = LogMetadata.Target) !== null && _b !== void 0 ? _b : {}),
|
|
3157
|
+
LogBuiltInMetadata.Target,
|
|
3158
|
+
].forEach((targetMap) => {
|
|
3159
|
+
Object.keys(targetMap).forEach((target) => {
|
|
3160
|
+
targetMap[target] = target;
|
|
3161
|
+
});
|
|
3162
3162
|
});
|
|
3163
3163
|
/* -------------- State ------------- */
|
|
3164
3164
|
// Create initial date filter state
|
|
@@ -3179,7 +3179,7 @@ const LogReviewer = (props) => {
|
|
|
3179
3179
|
};
|
|
3180
3180
|
// Create initial context filter state
|
|
3181
3181
|
const initContextFilterState = {};
|
|
3182
|
-
Object.keys((
|
|
3182
|
+
Object.keys((_c = LogMetadata.Context) !== null && _c !== void 0 ? _c : {}).forEach((context) => {
|
|
3183
3183
|
var _a, _b;
|
|
3184
3184
|
const contextValue = ((_a = LogMetadata.Context) !== null && _a !== void 0 ? _a : {})[context];
|
|
3185
3185
|
if (typeof contextValue === 'string') {
|
|
@@ -3201,7 +3201,7 @@ const LogReviewer = (props) => {
|
|
|
3201
3201
|
});
|
|
3202
3202
|
// Create initial tag filter state
|
|
3203
3203
|
const initTagFilterState = {};
|
|
3204
|
-
Object.keys((
|
|
3204
|
+
Object.keys((_d = LogMetadata.Tag) !== null && _d !== void 0 ? _d : {}).forEach((tag) => {
|
|
3205
3205
|
initTagFilterState[tag] = false;
|
|
3206
3206
|
});
|
|
3207
3207
|
// Create advanced filter state
|
|
@@ -3228,7 +3228,7 @@ const LogReviewer = (props) => {
|
|
|
3228
3228
|
target: {},
|
|
3229
3229
|
action: {},
|
|
3230
3230
|
};
|
|
3231
|
-
Object.values((
|
|
3231
|
+
Object.values((_e = LogMetadata.Target) !== null && _e !== void 0 ? _e : {}).forEach((target) => {
|
|
3232
3232
|
initActionErrorFilterState.target[target] = true;
|
|
3233
3233
|
});
|
|
3234
3234
|
Object.values(LogAction$1).forEach((action) => {
|
|
@@ -3422,7 +3422,7 @@ const LogReviewer = (props) => {
|
|
|
3422
3422
|
initDateFilterState,
|
|
3423
3423
|
initTagFilterState,
|
|
3424
3424
|
});
|
|
3425
|
-
} }, "Reset
|
|
3425
|
+
} }, "Reset"))));
|
|
3426
3426
|
// Filter drawer
|
|
3427
3427
|
let filterDrawer;
|
|
3428
3428
|
if (expandedFilterDrawer) {
|
|
@@ -3450,10 +3450,16 @@ const LogReviewer = (props) => {
|
|
|
3450
3450
|
}
|
|
3451
3451
|
else if (expandedFilterDrawer === FilterDrawer.Context) {
|
|
3452
3452
|
// Create item picker items
|
|
3453
|
-
const
|
|
3454
|
-
|
|
3455
|
-
|
|
3456
|
-
|
|
3453
|
+
const builtInPickableItem = {
|
|
3454
|
+
id: '_',
|
|
3455
|
+
name: 'Auto-logged',
|
|
3456
|
+
isGroup: true,
|
|
3457
|
+
children: [],
|
|
3458
|
+
};
|
|
3459
|
+
const pickableItems = [];
|
|
3460
|
+
Object.keys(contextMap)
|
|
3461
|
+
.forEach((context) => {
|
|
3462
|
+
const value = (contextMap)[context];
|
|
3457
3463
|
if (typeof value === 'string') {
|
|
3458
3464
|
// No subcategories
|
|
3459
3465
|
const item = {
|
|
@@ -3462,13 +3468,24 @@ const LogReviewer = (props) => {
|
|
|
3462
3468
|
isGroup: false,
|
|
3463
3469
|
checked: !!contextFilterState[context],
|
|
3464
3470
|
};
|
|
3465
|
-
|
|
3471
|
+
// Add built-in items to its own folder
|
|
3472
|
+
const isBuiltIn = context in LogBuiltInMetadata.Context;
|
|
3473
|
+
if (isBuiltIn) {
|
|
3474
|
+
// Add to built-in pickable item
|
|
3475
|
+
builtInPickableItem.children.push(item);
|
|
3476
|
+
}
|
|
3477
|
+
else {
|
|
3478
|
+
// Add to pickable items list
|
|
3479
|
+
pickableItems.push(item);
|
|
3480
|
+
}
|
|
3466
3481
|
}
|
|
3467
3482
|
// Has subcategories
|
|
3468
3483
|
const children = (Object.keys(value)
|
|
3484
|
+
// Remove parent name
|
|
3469
3485
|
.filter((subcontext) => {
|
|
3470
3486
|
return subcontext !== '_';
|
|
3471
3487
|
})
|
|
3488
|
+
// Create child pickable items
|
|
3472
3489
|
.map((subcontext) => {
|
|
3473
3490
|
return {
|
|
3474
3491
|
id: subcontext,
|
|
@@ -3483,19 +3500,32 @@ const LogReviewer = (props) => {
|
|
|
3483
3500
|
isGroup: true,
|
|
3484
3501
|
children,
|
|
3485
3502
|
};
|
|
3486
|
-
|
|
3487
|
-
})
|
|
3503
|
+
pickableItems.push(item);
|
|
3504
|
+
});
|
|
3505
|
+
// Add built-in contexts to end ofl ist
|
|
3506
|
+
pickableItems.push(builtInPickableItem);
|
|
3488
3507
|
// Create filter UI
|
|
3489
3508
|
filterDrawer = (React__default["default"].createElement(ItemPicker, { title: "Context", items: pickableItems, onChanged: (updatedItems) => {
|
|
3490
3509
|
// Update our state
|
|
3491
3510
|
updatedItems.forEach((pickableItem) => {
|
|
3492
3511
|
if (pickableItem.isGroup) {
|
|
3493
3512
|
// Has subcontexts
|
|
3494
|
-
pickableItem.
|
|
3495
|
-
|
|
3496
|
-
|
|
3497
|
-
|
|
3498
|
-
|
|
3513
|
+
if (pickableItem.id === '_') {
|
|
3514
|
+
// Built-in
|
|
3515
|
+
// Treat as if these were top-level contexts
|
|
3516
|
+
pickableItem.children.forEach((subcontextItem) => {
|
|
3517
|
+
contextFilterState[subcontextItem.id] = ('checked' in subcontextItem
|
|
3518
|
+
&& subcontextItem.checked);
|
|
3519
|
+
});
|
|
3520
|
+
}
|
|
3521
|
+
else {
|
|
3522
|
+
// Not built-in
|
|
3523
|
+
pickableItem.children.forEach((subcontextItem) => {
|
|
3524
|
+
if (!subcontextItem.isGroup) {
|
|
3525
|
+
contextFilterState[pickableItem.id][subcontextItem.id] = (subcontextItem.checked);
|
|
3526
|
+
}
|
|
3527
|
+
});
|
|
3528
|
+
}
|
|
3499
3529
|
}
|
|
3500
3530
|
else {
|
|
3501
3531
|
// No subcontexts
|
|
@@ -3510,17 +3540,19 @@ const LogReviewer = (props) => {
|
|
|
3510
3540
|
}
|
|
3511
3541
|
else if (expandedFilterDrawer === FilterDrawer.Tag) {
|
|
3512
3542
|
// Create filter UI
|
|
3513
|
-
filterDrawer = (React__default["default"].createElement(TabBox, { title: "Tags" },
|
|
3514
|
-
.
|
|
3515
|
-
|
|
3516
|
-
|
|
3517
|
-
|
|
3518
|
-
|
|
3519
|
-
|
|
3520
|
-
|
|
3521
|
-
|
|
3522
|
-
|
|
3523
|
-
|
|
3543
|
+
filterDrawer = (React__default["default"].createElement(TabBox, { title: "Tags" },
|
|
3544
|
+
React__default["default"].createElement("div", null, "If any are selected, logs must contain at least one but not necessarily all of the selected tags."),
|
|
3545
|
+
Object.keys((_f = LogMetadata.Tag) !== null && _f !== void 0 ? _f : {})
|
|
3546
|
+
.map((tag, i) => {
|
|
3547
|
+
const description = genHumanReadableName(tag);
|
|
3548
|
+
return (React__default["default"].createElement(CheckboxButton, { id: `LogReviewer-tag-${tag}-checkbox`, text: description, ariaLabel: `require that logs be tagged with "${description}" or any other selected tag`, noMarginOnRight: i === Object.keys(tagFilterState).length - 1, checked: tagFilterState[tag], onChanged: (checked) => {
|
|
3549
|
+
tagFilterState[tag] = checked;
|
|
3550
|
+
dispatch({
|
|
3551
|
+
type: ActionType.UpdateTagFilterState,
|
|
3552
|
+
tagFilterState,
|
|
3553
|
+
});
|
|
3554
|
+
} }));
|
|
3555
|
+
})));
|
|
3524
3556
|
}
|
|
3525
3557
|
else if (expandedFilterDrawer === FilterDrawer.Action) {
|
|
3526
3558
|
// Create filter UI
|
|
@@ -3561,21 +3593,18 @@ const LogReviewer = (props) => {
|
|
|
3561
3593
|
});
|
|
3562
3594
|
} }));
|
|
3563
3595
|
})),
|
|
3564
|
-
React__default["default"].createElement(ButtonInputGroup, { label: "Target" },
|
|
3565
|
-
|
|
3566
|
-
|
|
3567
|
-
|
|
3568
|
-
|
|
3569
|
-
|
|
3570
|
-
|
|
3571
|
-
|
|
3572
|
-
|
|
3573
|
-
|
|
3574
|
-
|
|
3575
|
-
|
|
3576
|
-
});
|
|
3577
|
-
}, noMarginOnRight: i === Object.keys((_a = LogMetadata.Target) !== null && _a !== void 0 ? _a : {}).length - 1 }));
|
|
3578
|
-
})))),
|
|
3596
|
+
React__default["default"].createElement(ButtonInputGroup, { label: "Target" }, Object.keys(targetMap)
|
|
3597
|
+
.map((target, i) => {
|
|
3598
|
+
const description = genHumanReadableName(target);
|
|
3599
|
+
return (React__default["default"].createElement(CheckboxButton, { key: target, id: `LogReviewer-target-${target}-checkbox`, text: description, ariaLabel: `include logs with target "${description}" in results`, checked: actionErrorFilterState.target[target], onChanged: (checked) => {
|
|
3600
|
+
actionErrorFilterState.target[target] = checked;
|
|
3601
|
+
console.log(actionErrorFilterState, target, checked);
|
|
3602
|
+
dispatch({
|
|
3603
|
+
type: ActionType.UpdateActionErrorFilterState,
|
|
3604
|
+
actionErrorFilterState,
|
|
3605
|
+
});
|
|
3606
|
+
}, noMarginOnRight: i === Object.keys(targetMap).length - 1 }));
|
|
3607
|
+
})))),
|
|
3579
3608
|
(actionErrorFilterState.type === undefined
|
|
3580
3609
|
|| actionErrorFilterState.type === LogType$1.Error) && (React__default["default"].createElement(TabBox, { title: "Error Log Details" },
|
|
3581
3610
|
React__default["default"].createElement("div", { className: "input-group mb-2" },
|