@memberjunction/react-test-harness 2.88.0 → 2.89.0
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/lib/component-linter.d.ts +2 -1
- package/dist/lib/component-linter.d.ts.map +1 -1
- package/dist/lib/component-linter.js +190 -317
- package/dist/lib/component-linter.js.map +1 -1
- package/dist/lib/test-harness.d.ts.map +1 -1
- package/dist/lib/test-harness.js +1 -0
- package/dist/lib/test-harness.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ComponentSpec } from '@memberjunction/interactive-component-types';
|
|
1
2
|
export interface LintResult {
|
|
2
3
|
success: boolean;
|
|
3
4
|
violations: Violation[];
|
|
@@ -22,7 +23,7 @@ export interface FixSuggestion {
|
|
|
22
23
|
}
|
|
23
24
|
export declare class ComponentLinter {
|
|
24
25
|
private static universalComponentRules;
|
|
25
|
-
static lintComponent(code: string, componentName: string, componentSpec?:
|
|
26
|
+
static lintComponent(code: string, componentName: string, componentSpec?: ComponentSpec, isRootComponent?: boolean): Promise<LintResult>;
|
|
26
27
|
private static validateDataRequirements;
|
|
27
28
|
private static getFunctionName;
|
|
28
29
|
private static deduplicateViolations;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-linter.d.ts","sourceRoot":"","sources":["../../src/lib/component-linter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"component-linter.d.ts","sourceRoot":"","sources":["../../src/lib/component-linter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAE5E,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,WAAW,EAAE,aAAa,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAaD,qBAAa,eAAe;IAE1B,OAAO,CAAC,MAAM,CAAC,uBAAuB,CA2pCpC;WAEkB,aAAa,CAC/B,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,aAAa,EAC7B,eAAe,CAAC,EAAE,OAAO,GACxB,OAAO,CAAC,UAAU,CAAC;IAuEtB,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAgQvC,OAAO,CAAC,MAAM,CAAC,eAAe;IA2B9B,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAyBpC,OAAO,CAAC,MAAM,CAAC,sBAAsB;CA6pBtC"}
|
|
@@ -56,7 +56,7 @@ class ComponentLinter {
|
|
|
56
56
|
const violations = [];
|
|
57
57
|
// Run each rule
|
|
58
58
|
for (const rule of rules) {
|
|
59
|
-
const ruleViolations = rule.test(ast, componentName);
|
|
59
|
+
const ruleViolations = rule.test(ast, componentName, componentSpec);
|
|
60
60
|
violations.push(...ruleViolations);
|
|
61
61
|
}
|
|
62
62
|
// Add data requirements validation if componentSpec is provided
|
|
@@ -1003,168 +1003,10 @@ function RootComponent({ utilities, styles, components, callbacks, savedUserSett
|
|
|
1003
1003
|
exports.ComponentLinter = ComponentLinter;
|
|
1004
1004
|
// Universal rules that apply to all components with SavedUserSettings pattern
|
|
1005
1005
|
ComponentLinter.universalComponentRules = [
|
|
1006
|
-
// State Management Rules
|
|
1007
|
-
{
|
|
1008
|
-
name: 'full-state-ownership',
|
|
1009
|
-
appliesTo: 'all',
|
|
1010
|
-
test: (ast, componentName) => {
|
|
1011
|
-
const violations = [];
|
|
1012
|
-
const controlledStateProps = [];
|
|
1013
|
-
const initializationProps = [];
|
|
1014
|
-
const eventHandlers = [];
|
|
1015
|
-
const acceptedProps = new Map();
|
|
1016
|
-
// First pass: collect all props
|
|
1017
|
-
(0, traverse_1.default)(ast, {
|
|
1018
|
-
FunctionDeclaration(path) {
|
|
1019
|
-
if (path.node.id && path.node.id.name === componentName && path.node.params[0]) {
|
|
1020
|
-
const param = path.node.params[0];
|
|
1021
|
-
if (t.isObjectPattern(param)) {
|
|
1022
|
-
for (const prop of param.properties) {
|
|
1023
|
-
if (t.isObjectProperty(prop) && t.isIdentifier(prop.key)) {
|
|
1024
|
-
const propName = prop.key.name;
|
|
1025
|
-
acceptedProps.set(propName, {
|
|
1026
|
-
line: prop.loc?.start.line || 0,
|
|
1027
|
-
column: prop.loc?.start.column || 0
|
|
1028
|
-
});
|
|
1029
|
-
// Categorize props
|
|
1030
|
-
if (/^on[A-Z]/.test(propName) && propName !== 'onSaveUserSettings') {
|
|
1031
|
-
eventHandlers.push(propName);
|
|
1032
|
-
}
|
|
1033
|
-
}
|
|
1034
|
-
}
|
|
1035
|
-
}
|
|
1036
|
-
}
|
|
1037
|
-
},
|
|
1038
|
-
// Also check arrow functions
|
|
1039
|
-
VariableDeclarator(path) {
|
|
1040
|
-
if (t.isIdentifier(path.node.id) && path.node.id.name === componentName) {
|
|
1041
|
-
const init = path.node.init;
|
|
1042
|
-
if (t.isArrowFunctionExpression(init) && init.params[0]) {
|
|
1043
|
-
const param = init.params[0];
|
|
1044
|
-
if (t.isObjectPattern(param)) {
|
|
1045
|
-
for (const prop of param.properties) {
|
|
1046
|
-
if (t.isObjectProperty(prop) && t.isIdentifier(prop.key)) {
|
|
1047
|
-
const propName = prop.key.name;
|
|
1048
|
-
acceptedProps.set(propName, {
|
|
1049
|
-
line: prop.loc?.start.line || 0,
|
|
1050
|
-
column: prop.loc?.start.column || 0
|
|
1051
|
-
});
|
|
1052
|
-
// Categorize props
|
|
1053
|
-
if (/^on[A-Z]/.test(propName) && propName !== 'onSaveUserSettings') {
|
|
1054
|
-
eventHandlers.push(propName);
|
|
1055
|
-
}
|
|
1056
|
-
}
|
|
1057
|
-
}
|
|
1058
|
-
}
|
|
1059
|
-
}
|
|
1060
|
-
}
|
|
1061
|
-
}
|
|
1062
|
-
});
|
|
1063
|
-
// Analyze props for controlled component patterns
|
|
1064
|
-
const controlledPatterns = [
|
|
1065
|
-
{ stateProp: 'value', handler: 'onChange' },
|
|
1066
|
-
{ stateProp: 'checked', handler: 'onChange' },
|
|
1067
|
-
{ stateProp: 'selectedId', handler: 'onSelect' },
|
|
1068
|
-
{ stateProp: 'selectedIds', handler: 'onSelectionChange' },
|
|
1069
|
-
{ stateProp: 'selectedItems', handler: 'onSelectionChange' },
|
|
1070
|
-
{ stateProp: 'activeTab', handler: 'onTabChange' },
|
|
1071
|
-
{ stateProp: 'currentPage', handler: 'onPageChange' },
|
|
1072
|
-
{ stateProp: 'expanded', handler: 'onExpand' },
|
|
1073
|
-
{ stateProp: 'collapsed', handler: 'onCollapse' },
|
|
1074
|
-
{ stateProp: 'open', handler: 'onOpenChange' },
|
|
1075
|
-
{ stateProp: 'visible', handler: 'onVisibilityChange' }
|
|
1076
|
-
];
|
|
1077
|
-
// Check each accepted prop
|
|
1078
|
-
for (const [propName, location] of acceptedProps) {
|
|
1079
|
-
// Skip standard props
|
|
1080
|
-
if (['utilities', 'styles', 'components', 'callbacks', 'savedUserSettings', 'onSaveUserSettings'].includes(propName)) {
|
|
1081
|
-
continue;
|
|
1082
|
-
}
|
|
1083
|
-
// Skip data props (arrays, objects that are clearly data)
|
|
1084
|
-
if (propName.endsWith('Data') || propName === 'items' || propName === 'options' ||
|
|
1085
|
-
propName === 'rows' || propName === 'columns' || propName === 'records') {
|
|
1086
|
-
continue;
|
|
1087
|
-
}
|
|
1088
|
-
// Check if it's an initialization prop (allowed)
|
|
1089
|
-
if (propName.startsWith('initial') || propName.startsWith('default')) {
|
|
1090
|
-
initializationProps.push(propName);
|
|
1091
|
-
continue;
|
|
1092
|
-
}
|
|
1093
|
-
// Check if it's a configuration prop (allowed)
|
|
1094
|
-
// Be generous - configuration props are those that configure behavior, not manage state
|
|
1095
|
-
if (propName.endsWith('Config') || propName.endsWith('Settings') || propName.endsWith('Options') ||
|
|
1096
|
-
propName === 'pageSize' || propName === 'maxItems' || propName === 'minValue' || propName === 'maxValue' ||
|
|
1097
|
-
propName === 'placeholder' || propName === 'label' || propName === 'title' || propName === 'disabled' ||
|
|
1098
|
-
propName === 'readonly' || propName === 'required' || propName === 'className' || propName === 'style' ||
|
|
1099
|
-
// Sort/filter configuration when not paired with state management handlers
|
|
1100
|
-
((propName.includes('sort') || propName.includes('Sort') ||
|
|
1101
|
-
propName.includes('filter') || propName.includes('Filter') ||
|
|
1102
|
-
propName === 'orderBy' || propName === 'groupBy') &&
|
|
1103
|
-
!acceptedProps.has('onSortChange') && !acceptedProps.has('onFilterChange') &&
|
|
1104
|
-
!acceptedProps.has('onChange'))) {
|
|
1105
|
-
continue;
|
|
1106
|
-
}
|
|
1107
|
-
// Check for controlled component pattern (both state prop and handler present)
|
|
1108
|
-
let isControlled = false;
|
|
1109
|
-
for (const pattern of controlledPatterns) {
|
|
1110
|
-
if (propName === pattern.stateProp) {
|
|
1111
|
-
// Check if the corresponding handler exists
|
|
1112
|
-
if (acceptedProps.has(pattern.handler) || eventHandlers.includes(pattern.handler)) {
|
|
1113
|
-
controlledStateProps.push(propName);
|
|
1114
|
-
isControlled = true;
|
|
1115
|
-
break;
|
|
1116
|
-
}
|
|
1117
|
-
// If state prop exists without handler, it's still problematic
|
|
1118
|
-
// unless it's clearly for initialization
|
|
1119
|
-
if (!propName.startsWith('initial') && !propName.startsWith('default')) {
|
|
1120
|
-
controlledStateProps.push(propName);
|
|
1121
|
-
isControlled = true;
|
|
1122
|
-
break;
|
|
1123
|
-
}
|
|
1124
|
-
}
|
|
1125
|
-
}
|
|
1126
|
-
// Check for state-like props that aren't initialization
|
|
1127
|
-
if (!isControlled) {
|
|
1128
|
-
const statePatterns = [
|
|
1129
|
-
'selectedId', 'selectedItemId', 'selectedItem', 'selection',
|
|
1130
|
-
'filters', 'sortBy', 'sortField', 'sortDirection', 'orderBy',
|
|
1131
|
-
'currentPage', 'pageNumber', 'page',
|
|
1132
|
-
'activeTab', 'activeIndex', 'activeKey',
|
|
1133
|
-
'expandedItems', 'collapsedItems',
|
|
1134
|
-
'searchTerm', 'searchQuery', 'query',
|
|
1135
|
-
'formData', 'formValues', 'values'
|
|
1136
|
-
];
|
|
1137
|
-
for (const pattern of statePatterns) {
|
|
1138
|
-
if (propName === pattern || propName.toLowerCase() === pattern.toLowerCase()) {
|
|
1139
|
-
// This is a state prop without proper initialization naming
|
|
1140
|
-
controlledStateProps.push(propName);
|
|
1141
|
-
break;
|
|
1142
|
-
}
|
|
1143
|
-
}
|
|
1144
|
-
}
|
|
1145
|
-
}
|
|
1146
|
-
// Generate violations for controlled state props
|
|
1147
|
-
if (controlledStateProps.length > 0) {
|
|
1148
|
-
violations.push({
|
|
1149
|
-
rule: 'full-state-ownership',
|
|
1150
|
-
severity: 'critical', // This is critical as it breaks the architecture
|
|
1151
|
-
line: 1,
|
|
1152
|
-
column: 0,
|
|
1153
|
-
message: `Component "${componentName}" accepts controlled state props (${controlledStateProps.join(', ')}) instead of managing state internally. Use 'initial*' or 'default*' prefixes for initialization props (e.g., 'initialPage' instead of 'currentPage'). Each component must manage ALL its own state.`
|
|
1154
|
-
});
|
|
1155
|
-
}
|
|
1156
|
-
// Add warning for initialization props (informational)
|
|
1157
|
-
if (initializationProps.length > 0 && violations.length === 0) {
|
|
1158
|
-
// This is actually OK, but we can log it for awareness
|
|
1159
|
-
// Don't create a violation, just note it's using the correct pattern
|
|
1160
|
-
}
|
|
1161
|
-
return violations;
|
|
1162
|
-
}
|
|
1163
|
-
},
|
|
1164
1006
|
{
|
|
1165
1007
|
name: 'no-use-reducer',
|
|
1166
1008
|
appliesTo: 'all',
|
|
1167
|
-
test: (ast, componentName) => {
|
|
1009
|
+
test: (ast, componentName, componentSpec) => {
|
|
1168
1010
|
const violations = [];
|
|
1169
1011
|
(0, traverse_1.default)(ast, {
|
|
1170
1012
|
CallExpression(path) {
|
|
@@ -1191,7 +1033,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1191
1033
|
{
|
|
1192
1034
|
name: 'no-data-prop',
|
|
1193
1035
|
appliesTo: 'all',
|
|
1194
|
-
test: (ast, componentName) => {
|
|
1036
|
+
test: (ast, componentName, componentSpec) => {
|
|
1195
1037
|
const violations = [];
|
|
1196
1038
|
(0, traverse_1.default)(ast, {
|
|
1197
1039
|
// Check function parameters for 'data' prop
|
|
@@ -1244,7 +1086,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1244
1086
|
{
|
|
1245
1087
|
name: 'saved-user-settings-pattern',
|
|
1246
1088
|
appliesTo: 'all',
|
|
1247
|
-
test: (ast, componentName) => {
|
|
1089
|
+
test: (ast, componentName, componentSpec) => {
|
|
1248
1090
|
const violations = [];
|
|
1249
1091
|
// Check for improper onSaveUserSettings usage
|
|
1250
1092
|
(0, traverse_1.default)(ast, {
|
|
@@ -1283,14 +1125,45 @@ ComponentLinter.universalComponentRules = [
|
|
|
1283
1125
|
{
|
|
1284
1126
|
name: 'pass-standard-props',
|
|
1285
1127
|
appliesTo: 'all',
|
|
1286
|
-
test: (ast, componentName) => {
|
|
1128
|
+
test: (ast, componentName, componentSpec) => {
|
|
1287
1129
|
const violations = [];
|
|
1288
1130
|
const requiredProps = ['styles', 'utilities', 'components'];
|
|
1131
|
+
// Build a set of our component names from componentSpec dependencies
|
|
1132
|
+
const ourComponentNames = new Set();
|
|
1133
|
+
// Add components from dependencies array
|
|
1134
|
+
if (componentSpec?.dependencies) {
|
|
1135
|
+
for (const dep of componentSpec.dependencies) {
|
|
1136
|
+
if (dep.name) {
|
|
1137
|
+
ourComponentNames.add(dep.name);
|
|
1138
|
+
}
|
|
1139
|
+
}
|
|
1140
|
+
}
|
|
1141
|
+
// Also find components destructured from the components prop in the code
|
|
1142
|
+
(0, traverse_1.default)(ast, {
|
|
1143
|
+
VariableDeclarator(path) {
|
|
1144
|
+
// Look for: const { ComponentA, ComponentB } = components;
|
|
1145
|
+
if (t.isObjectPattern(path.node.id) &&
|
|
1146
|
+
t.isIdentifier(path.node.init) &&
|
|
1147
|
+
path.node.init.name === 'components') {
|
|
1148
|
+
for (const prop of path.node.id.properties) {
|
|
1149
|
+
if (t.isObjectProperty(prop) && t.isIdentifier(prop.key)) {
|
|
1150
|
+
ourComponentNames.add(prop.key.name);
|
|
1151
|
+
}
|
|
1152
|
+
// Also handle renaming: { ComponentA: RenamedComponent }
|
|
1153
|
+
if (t.isObjectProperty(prop) && t.isIdentifier(prop.value)) {
|
|
1154
|
+
ourComponentNames.add(prop.value.name);
|
|
1155
|
+
}
|
|
1156
|
+
}
|
|
1157
|
+
}
|
|
1158
|
+
}
|
|
1159
|
+
});
|
|
1160
|
+
// Now check only our components for standard props
|
|
1289
1161
|
(0, traverse_1.default)(ast, {
|
|
1290
1162
|
JSXElement(path) {
|
|
1291
1163
|
const openingElement = path.node.openingElement;
|
|
1292
|
-
//
|
|
1293
|
-
if (t.isJSXIdentifier(openingElement.name) &&
|
|
1164
|
+
// Only check if it's one of our components
|
|
1165
|
+
if (t.isJSXIdentifier(openingElement.name) &&
|
|
1166
|
+
ourComponentNames.has(openingElement.name.name)) {
|
|
1294
1167
|
const componentBeingCalled = openingElement.name.name;
|
|
1295
1168
|
const passedProps = new Set();
|
|
1296
1169
|
// Collect all props being passed
|
|
@@ -1301,14 +1174,13 @@ ComponentLinter.universalComponentRules = [
|
|
|
1301
1174
|
}
|
|
1302
1175
|
// Check if required props are missing
|
|
1303
1176
|
const missingProps = requiredProps.filter(prop => !passedProps.has(prop));
|
|
1304
|
-
if (missingProps.length > 0
|
|
1305
|
-
// Only report if some props are passed (to avoid false positives on non-component JSX)
|
|
1177
|
+
if (missingProps.length > 0) {
|
|
1306
1178
|
violations.push({
|
|
1307
1179
|
rule: 'pass-standard-props',
|
|
1308
1180
|
severity: 'critical',
|
|
1309
1181
|
line: openingElement.loc?.start.line || 0,
|
|
1310
1182
|
column: openingElement.loc?.start.column || 0,
|
|
1311
|
-
message: `Component "${componentBeingCalled}" is missing required props: ${missingProps.join(', ')}. All components must receive styles, utilities, and components props.`,
|
|
1183
|
+
message: `Component "${componentBeingCalled}" is missing required props: ${missingProps.join(', ')}. All child components must receive styles, utilities, and components props.`,
|
|
1312
1184
|
code: `<${componentBeingCalled} ... />`
|
|
1313
1185
|
});
|
|
1314
1186
|
}
|
|
@@ -1321,7 +1193,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1321
1193
|
{
|
|
1322
1194
|
name: 'no-child-implementation',
|
|
1323
1195
|
appliesTo: 'root',
|
|
1324
|
-
test: (ast, componentName) => {
|
|
1196
|
+
test: (ast, componentName, componentSpec) => {
|
|
1325
1197
|
const violations = [];
|
|
1326
1198
|
const rootFunctionName = componentName;
|
|
1327
1199
|
const declaredFunctions = [];
|
|
@@ -1351,7 +1223,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1351
1223
|
{
|
|
1352
1224
|
name: 'undefined-component-usage',
|
|
1353
1225
|
appliesTo: 'all',
|
|
1354
|
-
test: (ast, componentName) => {
|
|
1226
|
+
test: (ast, componentName, componentSpec) => {
|
|
1355
1227
|
const violations = [];
|
|
1356
1228
|
const componentsFromProps = new Set();
|
|
1357
1229
|
const componentsUsedInJSX = new Set();
|
|
@@ -1424,7 +1296,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1424
1296
|
{
|
|
1425
1297
|
name: 'unsafe-array-access',
|
|
1426
1298
|
appliesTo: 'all',
|
|
1427
|
-
test: (ast, componentName) => {
|
|
1299
|
+
test: (ast, componentName, componentSpec) => {
|
|
1428
1300
|
const violations = [];
|
|
1429
1301
|
(0, traverse_1.default)(ast, {
|
|
1430
1302
|
MemberExpression(path) {
|
|
@@ -1456,7 +1328,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1456
1328
|
{
|
|
1457
1329
|
name: 'array-reduce-safety',
|
|
1458
1330
|
appliesTo: 'all',
|
|
1459
|
-
test: (ast, componentName) => {
|
|
1331
|
+
test: (ast, componentName, componentSpec) => {
|
|
1460
1332
|
const violations = [];
|
|
1461
1333
|
(0, traverse_1.default)(ast, {
|
|
1462
1334
|
CallExpression(path) {
|
|
@@ -1498,144 +1370,144 @@ ComponentLinter.universalComponentRules = [
|
|
|
1498
1370
|
return violations;
|
|
1499
1371
|
}
|
|
1500
1372
|
},
|
|
1501
|
-
{
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
|
|
1621
|
-
|
|
1622
|
-
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
},
|
|
1373
|
+
// {
|
|
1374
|
+
// name: 'parent-event-callback-usage',
|
|
1375
|
+
// appliesTo: 'child',
|
|
1376
|
+
// test: (ast: t.File, componentName: string) => {
|
|
1377
|
+
// const violations: Violation[] = [];
|
|
1378
|
+
// const eventCallbacks = new Map<string, { line: number; column: number }>();
|
|
1379
|
+
// const callbackInvocations = new Set<string>();
|
|
1380
|
+
// const stateUpdateHandlers = new Map<string, string[]>(); // handler -> state updates
|
|
1381
|
+
// // First pass: collect event callback props (onSelect, onChange, etc.)
|
|
1382
|
+
// traverse(ast, {
|
|
1383
|
+
// FunctionDeclaration(path: NodePath<t.FunctionDeclaration>) {
|
|
1384
|
+
// if (path.node.id && path.node.id.name === componentName && path.node.params[0]) {
|
|
1385
|
+
// const param = path.node.params[0];
|
|
1386
|
+
// if (t.isObjectPattern(param)) {
|
|
1387
|
+
// for (const prop of param.properties) {
|
|
1388
|
+
// if (t.isObjectProperty(prop) && t.isIdentifier(prop.key)) {
|
|
1389
|
+
// const propName = prop.key.name;
|
|
1390
|
+
// // Check for event callback patterns
|
|
1391
|
+
// if (/^on[A-Z]/.test(propName) &&
|
|
1392
|
+
// propName !== 'onSaveUserSettings' &&
|
|
1393
|
+
// !propName.includes('StateChanged')) {
|
|
1394
|
+
// eventCallbacks.set(propName, {
|
|
1395
|
+
// line: prop.loc?.start.line || 0,
|
|
1396
|
+
// column: prop.loc?.start.column || 0
|
|
1397
|
+
// });
|
|
1398
|
+
// }
|
|
1399
|
+
// }
|
|
1400
|
+
// }
|
|
1401
|
+
// }
|
|
1402
|
+
// }
|
|
1403
|
+
// },
|
|
1404
|
+
// // Also check arrow function components
|
|
1405
|
+
// VariableDeclarator(path: NodePath<t.VariableDeclarator>) {
|
|
1406
|
+
// if (t.isIdentifier(path.node.id) && path.node.id.name === componentName) {
|
|
1407
|
+
// const init = path.node.init;
|
|
1408
|
+
// if (t.isArrowFunctionExpression(init) && init.params[0]) {
|
|
1409
|
+
// const param = init.params[0];
|
|
1410
|
+
// if (t.isObjectPattern(param)) {
|
|
1411
|
+
// for (const prop of param.properties) {
|
|
1412
|
+
// if (t.isObjectProperty(prop) && t.isIdentifier(prop.key)) {
|
|
1413
|
+
// const propName = prop.key.name;
|
|
1414
|
+
// if (/^on[A-Z]/.test(propName) &&
|
|
1415
|
+
// propName !== 'onSaveUserSettings' &&
|
|
1416
|
+
// !propName.includes('StateChanged')) {
|
|
1417
|
+
// eventCallbacks.set(propName, {
|
|
1418
|
+
// line: prop.loc?.start.line || 0,
|
|
1419
|
+
// column: prop.loc?.start.column || 0
|
|
1420
|
+
// });
|
|
1421
|
+
// }
|
|
1422
|
+
// }
|
|
1423
|
+
// }
|
|
1424
|
+
// }
|
|
1425
|
+
// }
|
|
1426
|
+
// }
|
|
1427
|
+
// }
|
|
1428
|
+
// });
|
|
1429
|
+
// // Second pass: check if callbacks are invoked in event handlers
|
|
1430
|
+
// traverse(ast, {
|
|
1431
|
+
// CallExpression(path: NodePath<t.CallExpression>) {
|
|
1432
|
+
// // Check for callback invocations
|
|
1433
|
+
// if (t.isIdentifier(path.node.callee)) {
|
|
1434
|
+
// const callbackName = path.node.callee.name;
|
|
1435
|
+
// if (eventCallbacks.has(callbackName)) {
|
|
1436
|
+
// callbackInvocations.add(callbackName);
|
|
1437
|
+
// }
|
|
1438
|
+
// }
|
|
1439
|
+
// // Check for state updates (setSelectedId, setFilters, etc.)
|
|
1440
|
+
// if (t.isIdentifier(path.node.callee) && /^set[A-Z]/.test(path.node.callee.name)) {
|
|
1441
|
+
// // Find the containing function
|
|
1442
|
+
// let containingFunction = path.getFunctionParent();
|
|
1443
|
+
// if (containingFunction) {
|
|
1444
|
+
// const funcName = ComponentLinter.getFunctionName(containingFunction);
|
|
1445
|
+
// if (funcName) {
|
|
1446
|
+
// if (!stateUpdateHandlers.has(funcName)) {
|
|
1447
|
+
// stateUpdateHandlers.set(funcName, []);
|
|
1448
|
+
// }
|
|
1449
|
+
// stateUpdateHandlers.get(funcName)!.push(path.node.callee.name);
|
|
1450
|
+
// }
|
|
1451
|
+
// }
|
|
1452
|
+
// }
|
|
1453
|
+
// },
|
|
1454
|
+
// // Check conditional callback invocations
|
|
1455
|
+
// IfStatement(path: NodePath<t.IfStatement>) {
|
|
1456
|
+
// if (t.isBlockStatement(path.node.consequent)) {
|
|
1457
|
+
// // Check if the condition tests for callback existence
|
|
1458
|
+
// if (t.isIdentifier(path.node.test)) {
|
|
1459
|
+
// const callbackName = path.node.test.name;
|
|
1460
|
+
// if (eventCallbacks.has(callbackName)) {
|
|
1461
|
+
// // Check if callback is invoked in the block
|
|
1462
|
+
// let hasInvocation = false;
|
|
1463
|
+
// path.traverse({
|
|
1464
|
+
// CallExpression(innerPath: NodePath<t.CallExpression>) {
|
|
1465
|
+
// if (t.isIdentifier(innerPath.node.callee) &&
|
|
1466
|
+
// innerPath.node.callee.name === callbackName) {
|
|
1467
|
+
// hasInvocation = true;
|
|
1468
|
+
// callbackInvocations.add(callbackName);
|
|
1469
|
+
// }
|
|
1470
|
+
// }
|
|
1471
|
+
// });
|
|
1472
|
+
// }
|
|
1473
|
+
// }
|
|
1474
|
+
// }
|
|
1475
|
+
// }
|
|
1476
|
+
// });
|
|
1477
|
+
// // Check for unused callbacks that have related state updates
|
|
1478
|
+
// for (const [callbackName, location] of eventCallbacks) {
|
|
1479
|
+
// if (!callbackInvocations.has(callbackName)) {
|
|
1480
|
+
// // Try to find related state update handlers
|
|
1481
|
+
// const relatedHandlers: string[] = [];
|
|
1482
|
+
// const expectedStateName = callbackName.replace(/^on/, '').replace(/Change$|Select$/, '');
|
|
1483
|
+
// for (const [handlerName, stateUpdates] of stateUpdateHandlers) {
|
|
1484
|
+
// for (const stateUpdate of stateUpdates) {
|
|
1485
|
+
// if (stateUpdate.toLowerCase().includes(expectedStateName.toLowerCase()) ||
|
|
1486
|
+
// handlerName.toLowerCase().includes(expectedStateName.toLowerCase())) {
|
|
1487
|
+
// relatedHandlers.push(handlerName);
|
|
1488
|
+
// break;
|
|
1489
|
+
// }
|
|
1490
|
+
// }
|
|
1491
|
+
// }
|
|
1492
|
+
// if (relatedHandlers.length > 0) {
|
|
1493
|
+
// violations.push({
|
|
1494
|
+
// rule: 'parent-event-callback-usage',
|
|
1495
|
+
// severity: 'critical',
|
|
1496
|
+
// line: location.line,
|
|
1497
|
+
// column: location.column,
|
|
1498
|
+
// message: `Component receives '${callbackName}' event callback but never invokes it. Found state updates in ${relatedHandlers.join(', ')} but parent is not notified.`,
|
|
1499
|
+
// code: `Missing: if (${callbackName}) ${callbackName}(...)`
|
|
1500
|
+
// });
|
|
1501
|
+
// }
|
|
1502
|
+
// }
|
|
1503
|
+
// }
|
|
1504
|
+
// return violations;
|
|
1505
|
+
// }
|
|
1506
|
+
// },
|
|
1635
1507
|
{
|
|
1636
1508
|
name: 'property-name-consistency',
|
|
1637
1509
|
appliesTo: 'all',
|
|
1638
|
-
test: (ast, componentName) => {
|
|
1510
|
+
test: (ast, componentName, componentSpec) => {
|
|
1639
1511
|
const violations = [];
|
|
1640
1512
|
const dataTransformations = new Map();
|
|
1641
1513
|
const propertyAccesses = new Map(); // variable -> accessed properties
|
|
@@ -1755,7 +1627,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1755
1627
|
{
|
|
1756
1628
|
name: 'noisy-settings-updates',
|
|
1757
1629
|
appliesTo: 'all',
|
|
1758
|
-
test: (ast, componentName) => {
|
|
1630
|
+
test: (ast, componentName, componentSpec) => {
|
|
1759
1631
|
const violations = [];
|
|
1760
1632
|
(0, traverse_1.default)(ast, {
|
|
1761
1633
|
CallExpression(path) {
|
|
@@ -1793,7 +1665,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1793
1665
|
{
|
|
1794
1666
|
name: 'prop-state-sync',
|
|
1795
1667
|
appliesTo: 'all',
|
|
1796
|
-
test: (ast, componentName) => {
|
|
1668
|
+
test: (ast, componentName, componentSpec) => {
|
|
1797
1669
|
const violations = [];
|
|
1798
1670
|
(0, traverse_1.default)(ast, {
|
|
1799
1671
|
CallExpression(path) {
|
|
@@ -1828,7 +1700,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1828
1700
|
{
|
|
1829
1701
|
name: 'performance-memoization',
|
|
1830
1702
|
appliesTo: 'all',
|
|
1831
|
-
test: (ast, componentName) => {
|
|
1703
|
+
test: (ast, componentName, componentSpec) => {
|
|
1832
1704
|
const violations = [];
|
|
1833
1705
|
const memoizedValues = new Set();
|
|
1834
1706
|
// Collect memoized values
|
|
@@ -1906,7 +1778,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1906
1778
|
{
|
|
1907
1779
|
name: 'child-state-management',
|
|
1908
1780
|
appliesTo: 'all',
|
|
1909
|
-
test: (ast, componentName) => {
|
|
1781
|
+
test: (ast, componentName, componentSpec) => {
|
|
1910
1782
|
const violations = [];
|
|
1911
1783
|
(0, traverse_1.default)(ast, {
|
|
1912
1784
|
CallExpression(path) {
|
|
@@ -1945,7 +1817,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
1945
1817
|
{
|
|
1946
1818
|
name: 'server-reload-on-client-operation',
|
|
1947
1819
|
appliesTo: 'all',
|
|
1948
|
-
test: (ast, componentName) => {
|
|
1820
|
+
test: (ast, componentName, componentSpec) => {
|
|
1949
1821
|
const violations = [];
|
|
1950
1822
|
(0, traverse_1.default)(ast, {
|
|
1951
1823
|
CallExpression(path) {
|
|
@@ -1979,16 +1851,17 @@ ComponentLinter.universalComponentRules = [
|
|
|
1979
1851
|
{
|
|
1980
1852
|
name: 'runview-runquery-valid-properties',
|
|
1981
1853
|
appliesTo: 'all',
|
|
1982
|
-
test: (ast, componentName) => {
|
|
1854
|
+
test: (ast, componentName, componentSpec) => {
|
|
1983
1855
|
const violations = [];
|
|
1984
1856
|
// Valid properties for RunView/RunViews
|
|
1985
1857
|
const validRunViewProps = new Set([
|
|
1986
|
-
'EntityName', 'ExtraFilter', 'OrderBy', 'Fields',
|
|
1987
|
-
'MaxRows', 'StartRow', 'ResultType'
|
|
1858
|
+
'ViewID', 'ViewName', 'EntityName', 'ExtraFilter', 'OrderBy', 'Fields',
|
|
1859
|
+
'MaxRows', 'StartRow', 'ResultType', 'UserSearchString', 'ForceAuditLog', 'AuditLogDescription',
|
|
1860
|
+
'ResultType'
|
|
1988
1861
|
]);
|
|
1989
1862
|
// Valid properties for RunQuery
|
|
1990
1863
|
const validRunQueryProps = new Set([
|
|
1991
|
-
'
|
|
1864
|
+
'QueryID', 'QueryName', 'CategoryID', 'CategoryPath', 'Parameters', 'MaxRows', 'StartRow', 'ForceAuditLog', 'AuditLogDescription'
|
|
1992
1865
|
]);
|
|
1993
1866
|
(0, traverse_1.default)(ast, {
|
|
1994
1867
|
CallExpression(path) {
|
|
@@ -2103,7 +1976,7 @@ ComponentLinter.universalComponentRules = [
|
|
|
2103
1976
|
{
|
|
2104
1977
|
name: 'root-component-props-restriction',
|
|
2105
1978
|
appliesTo: 'root',
|
|
2106
|
-
test: (ast, componentName) => {
|
|
1979
|
+
test: (ast, componentName, componentSpec) => {
|
|
2107
1980
|
const violations = [];
|
|
2108
1981
|
const standardProps = new Set(['utilities', 'styles', 'components', 'callbacks', 'savedUserSettings', 'onSaveUserSettings']);
|
|
2109
1982
|
// This rule applies when testing root components
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-linter.js","sourceRoot":"","sources":["../../src/lib/component-linter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"component-linter.js","sourceRoot":"","sources":["../../src/lib/component-linter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-harness.d.ts","sourceRoot":"","sources":["../../src/lib/test-harness.ts"],"names":[],"mappings":";AAAA,OAAO,EAAkB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAmB,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC1G,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,OAAO,CAAqB;gBAExB,OAAO,GAAE,kBAAuB;IAYtC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,wBAAwB,CAAC;IAmDpC;;;OAGG;IACG,qBAAqB,CACzB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,eAAe,CAAC,GACxD,OAAO,CAAC,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"test-harness.d.ts","sourceRoot":"","sources":["../../src/lib/test-harness.ts"],"names":[],"mappings":";AAAA,OAAO,EAAkB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAmB,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC1G,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,OAAO,CAAqB;gBAExB,OAAO,GAAE,kBAAuB;IAYtC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,wBAAwB,CAAC;IAmDpC;;;OAGG;IACG,qBAAqB,CACzB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,eAAe,CAAC,GACxD,OAAO,CAAC,wBAAwB,CAAC;IAgC9B,OAAO,CACX,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC1B,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAyBzE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC;QAC/E,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACrF,CAAC;IA0BF,mBAAmB;IAInB,aAAa,CAAC,IAAI,EAAE,MAAM;;;;;;IAIpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;CAG/E"}
|
package/dist/lib/test-harness.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-harness.js","sourceRoot":"","sources":["../../src/lib/test-harness.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"test-harness.js","sourceRoot":"","sources":["../../src/lib/test-harness.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/react-test-harness",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.89.0",
|
|
4
4
|
"description": "React component test harness for MemberJunction using Playwright",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"typescript": "^5.4.5"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@memberjunction/react-runtime": "^2.
|
|
26
|
-
"@memberjunction/interactive-component-types": "^2.
|
|
25
|
+
"@memberjunction/react-runtime": "^2.89.0",
|
|
26
|
+
"@memberjunction/interactive-component-types": "^2.89.0",
|
|
27
27
|
"@playwright/test": "^1.40.0",
|
|
28
28
|
"playwright": "^1.40.0",
|
|
29
29
|
"commander": "^11.1.0",
|