@pattern-stack/frontend-patterns 0.2.0-alpha.1 → 0.2.0-alpha.11
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/atoms/components/core/Badge/Badge.d.ts +1 -1
- package/dist/atoms/components/data/DataTable/ColumnFilterDropdown.d.ts +32 -0
- package/dist/atoms/components/data/DataTable/ColumnFilterDropdown.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/ColumnVisibilityToggle.d.ts +32 -0
- package/dist/atoms/components/data/DataTable/ColumnVisibilityToggle.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/DataTable.d.ts +5 -2
- package/dist/atoms/components/data/DataTable/DataTable.d.ts.map +1 -1
- package/dist/atoms/components/data/DataTable/DataTable.expansion.d.ts +91 -0
- package/dist/atoms/components/data/DataTable/DataTable.expansion.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/DataTable.filters.d.ts +271 -0
- package/dist/atoms/components/data/DataTable/DataTable.filters.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/DataTable.types.d.ts +155 -5
- package/dist/atoms/components/data/DataTable/DataTable.types.d.ts.map +1 -1
- package/dist/atoms/components/data/DataTable/ExpandButton.d.ts +37 -0
- package/dist/atoms/components/data/DataTable/ExpandButton.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/FilterPill.d.ts +25 -0
- package/dist/atoms/components/data/DataTable/FilterPill.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/QuickFilterBar.d.ts +35 -0
- package/dist/atoms/components/data/DataTable/QuickFilterBar.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/filters/BooleanFilterEditor.d.ts +10 -0
- package/dist/atoms/components/data/DataTable/filters/BooleanFilterEditor.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/filters/DateFilterEditor.d.ts +11 -0
- package/dist/atoms/components/data/DataTable/filters/DateFilterEditor.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/filters/MultiSelectFilterEditor.d.ts +10 -0
- package/dist/atoms/components/data/DataTable/filters/MultiSelectFilterEditor.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/filters/NumberFilterEditor.d.ts +10 -0
- package/dist/atoms/components/data/DataTable/filters/NumberFilterEditor.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/filters/SelectFilterEditor.d.ts +10 -0
- package/dist/atoms/components/data/DataTable/filters/SelectFilterEditor.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/filters/TextFilterEditor.d.ts +10 -0
- package/dist/atoms/components/data/DataTable/filters/TextFilterEditor.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/filters/index.d.ts +14 -0
- package/dist/atoms/components/data/DataTable/filters/index.d.ts.map +1 -0
- package/dist/atoms/components/data/DataTable/index.d.ts +9 -0
- package/dist/atoms/components/data/DataTable/index.d.ts.map +1 -1
- package/dist/atoms/components/data/ProgressBar/ProgressBar.d.ts +1 -1
- package/dist/atoms/components/data/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/atoms/components/data/index.d.ts +3 -2
- package/dist/atoms/components/data/index.d.ts.map +1 -1
- package/dist/atoms/composed/ConnectionStatus/ConnectionStatus.d.ts +16 -0
- package/dist/atoms/composed/ConnectionStatus/ConnectionStatus.d.ts.map +1 -0
- package/dist/atoms/composed/ConnectionStatus/index.d.ts +3 -0
- package/dist/atoms/composed/ConnectionStatus/index.d.ts.map +1 -0
- package/dist/atoms/hooks/index.d.ts +9 -0
- package/dist/atoms/hooks/index.d.ts.map +1 -1
- package/dist/atoms/hooks/useAdaptiveTable.d.ts +49 -0
- package/dist/atoms/hooks/useAdaptiveTable.d.ts.map +1 -0
- package/dist/atoms/hooks/useApi.d.ts +1 -1
- package/dist/atoms/hooks/useApi.d.ts.map +1 -1
- package/dist/atoms/hooks/useColumnVisibility.d.ts +75 -0
- package/dist/atoms/hooks/useColumnVisibility.d.ts.map +1 -0
- package/dist/atoms/hooks/useEntityData.d.ts +36 -0
- package/dist/atoms/hooks/useEntityData.d.ts.map +1 -0
- package/dist/atoms/hooks/useEntityDetail.d.ts +43 -0
- package/dist/atoms/hooks/useEntityDetail.d.ts.map +1 -0
- package/dist/atoms/hooks/useExpandedRows.d.ts +66 -0
- package/dist/atoms/hooks/useExpandedRows.d.ts.map +1 -0
- package/dist/atoms/hooks/useFieldMetadata.d.ts +18 -0
- package/dist/atoms/hooks/useFieldMetadata.d.ts.map +1 -0
- package/dist/atoms/hooks/useOnlineStatus.d.ts +16 -0
- package/dist/atoms/hooks/useOnlineStatus.d.ts.map +1 -0
- package/dist/atoms/hooks/useResponsiveTable.d.ts +123 -0
- package/dist/atoms/hooks/useResponsiveTable.d.ts.map +1 -0
- package/dist/atoms/hooks/useTableFilters.d.ts +92 -0
- package/dist/atoms/hooks/useTableFilters.d.ts.map +1 -0
- package/dist/atoms/index.d.ts +1 -0
- package/dist/atoms/index.d.ts.map +1 -1
- package/dist/atoms/primitives/sheet.d.ts +23 -0
- package/dist/atoms/primitives/sheet.d.ts.map +1 -0
- package/dist/atoms/primitives/table.d.ts.map +1 -1
- package/dist/atoms/services/api/client.d.ts +12 -2
- package/dist/atoms/services/api/client.d.ts.map +1 -1
- package/dist/atoms/services/auth-service.d.ts +15 -0
- package/dist/atoms/services/auth-service.d.ts.map +1 -1
- package/dist/atoms/services/index.d.ts +2 -2
- package/dist/atoms/services/index.d.ts.map +1 -1
- package/dist/atoms/shared/config/table-config.d.ts +79 -0
- package/dist/atoms/shared/config/table-config.d.ts.map +1 -0
- package/dist/atoms/shared/index.d.ts +1 -0
- package/dist/atoms/shared/index.d.ts.map +1 -1
- package/dist/atoms/types/auth.d.ts +95 -2
- package/dist/atoms/types/auth.d.ts.map +1 -1
- package/dist/atoms/types/index.d.ts +1 -0
- package/dist/atoms/types/index.d.ts.map +1 -1
- package/dist/atoms/types/navigation.d.ts +1 -1
- package/dist/atoms/types/navigation.d.ts.map +1 -1
- package/dist/atoms/types/ui-config.d.ts +46 -11
- package/dist/atoms/types/ui-config.d.ts.map +1 -1
- package/dist/atoms/types/ui-metadata.d.ts +103 -0
- package/dist/atoms/types/ui-metadata.d.ts.map +1 -0
- package/dist/atoms/utils/entity-card-mapping.d.ts +105 -0
- package/dist/atoms/utils/entity-card-mapping.d.ts.map +1 -0
- package/dist/atoms/utils/field-detection.d.ts +2 -2
- package/dist/atoms/utils/field-detection.d.ts.map +1 -1
- package/dist/atoms/utils/icon-map.d.ts +48 -0
- package/dist/atoms/utils/icon-map.d.ts.map +1 -1
- package/dist/atoms/utils/index.d.ts +2 -0
- package/dist/atoms/utils/index.d.ts.map +1 -1
- package/dist/atoms/utils/ui-mapping.d.ts +9 -3
- package/dist/atoms/utils/ui-mapping.d.ts.map +1 -1
- package/dist/features/auth/components/ProtectedRoute.d.ts +3 -1
- package/dist/features/auth/components/ProtectedRoute.d.ts.map +1 -1
- package/dist/features/auth/hooks/useAuth.d.ts.map +1 -1
- package/dist/features/auth/providers/NoAuthProvider.d.ts +17 -0
- package/dist/features/auth/providers/NoAuthProvider.d.ts.map +1 -0
- package/dist/features/auth/providers/index.d.ts +1 -0
- package/dist/features/auth/providers/index.d.ts.map +1 -1
- package/dist/frontend-patterns.css +1 -4554
- package/dist/index.d.ts +12 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +8793 -18275
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +8790 -18271
- package/dist/index.js.map +1 -1
- package/dist/molecules/layout/AppHeader/AppHeader.d.ts.map +1 -1
- package/dist/molecules/layout/BulkSelectionBar.d.ts +14 -2
- package/dist/molecules/layout/BulkSelectionBar.d.ts.map +1 -1
- package/dist/molecules/layout/FieldGrid/FieldGrid.d.ts +61 -0
- package/dist/molecules/layout/FieldGrid/FieldGrid.d.ts.map +1 -0
- package/dist/molecules/layout/FieldGrid/index.d.ts +2 -0
- package/dist/molecules/layout/FieldGrid/index.d.ts.map +1 -0
- package/dist/molecules/layout/ListToolbar/ListToolbar.d.ts +37 -0
- package/dist/molecules/layout/ListToolbar/ListToolbar.d.ts.map +1 -0
- package/dist/molecules/layout/ListToolbar/index.d.ts +2 -0
- package/dist/molecules/layout/ListToolbar/index.d.ts.map +1 -0
- package/dist/molecules/layout/PageTitle/PageTitle.d.ts +17 -0
- package/dist/molecules/layout/PageTitle/PageTitle.d.ts.map +1 -0
- package/dist/molecules/layout/PageTitle/index.d.ts +2 -0
- package/dist/molecules/layout/PageTitle/index.d.ts.map +1 -0
- package/dist/molecules/layout/index.d.ts +3 -0
- package/dist/molecules/layout/index.d.ts.map +1 -1
- package/dist/molecules/layout/navigation-context.d.ts.map +1 -1
- package/dist/sync/EntityStoreProvider.d.ts +35 -0
- package/dist/sync/EntityStoreProvider.d.ts.map +1 -0
- package/dist/sync/createEntityHooks.d.ts +29 -0
- package/dist/sync/createEntityHooks.d.ts.map +1 -0
- package/dist/sync/createStore.d.ts +65 -0
- package/dist/sync/createStore.d.ts.map +1 -0
- package/dist/sync/index.d.ts +6 -0
- package/dist/sync/index.d.ts.map +1 -0
- package/dist/sync/types.d.ts +383 -0
- package/dist/sync/types.d.ts.map +1 -0
- package/dist/templates/ListPageTemplate.d.ts +21 -0
- package/dist/templates/ListPageTemplate.d.ts.map +1 -0
- package/dist/templates/admin/AdminCRUDTemplate.d.ts.map +1 -1
- package/dist/templates/factory.d.ts +11 -0
- package/dist/templates/factory.d.ts.map +1 -1
- package/dist/templates/index.d.ts +1 -0
- package/dist/templates/index.d.ts.map +1 -1
- package/package.json +11 -7
- package/cli/commands/generate-hooks.ts +0 -325
- package/cli/commands/init.ts +0 -33
- package/cli/commands/scaffold.ts +0 -224
- package/cli/index.ts +0 -122
- package/cli/src/codegen/openapi/__tests__/naming-utils.test.js +0 -367
- package/cli/src/codegen/openapi/client-generator.js +0 -727
- package/cli/src/codegen/openapi/confidence-scorer.js +0 -93
- package/cli/src/codegen/openapi/hook-config.js +0 -48
- package/cli/src/codegen/openapi/hook-generator.js +0 -763
- package/cli/src/codegen/openapi/naming-constants.js +0 -98
- package/cli/src/codegen/openapi/naming-utils.js +0 -149
- package/cli/src/codegen/openapi/parser.js +0 -274
- package/cli/src/codegen/openapi/type-generator.js +0 -329
- package/dist/codegen/openapi/bulk-types.d.ts +0 -142
- package/dist/codegen/openapi/bulk-types.d.ts.map +0 -1
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Confidence Scorer (Stub)
|
|
3
|
-
*
|
|
4
|
-
* Scores generated hook names for quality/confidence.
|
|
5
|
-
* This is a minimal stub that returns high confidence for all names.
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
export class ConfidenceScorer {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.scoringRules = [];
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Score a generated hook name
|
|
15
|
-
* @returns {{ hookName: string, operationId: string, confidence: string, score: number, suggestions: string[] }}
|
|
16
|
-
*/
|
|
17
|
-
scoreHookName(hookName, operationId, path, method) {
|
|
18
|
-
// Simple heuristic: shorter names are better
|
|
19
|
-
const lengthScore = Math.max(0, 100 - hookName.length);
|
|
20
|
-
|
|
21
|
-
// Check for common anti-patterns
|
|
22
|
-
const hasApiV1 = hookName.toLowerCase().includes('apiv1');
|
|
23
|
-
const hasUnderscore = hookName.includes('_');
|
|
24
|
-
const isVeryLong = hookName.length > 40;
|
|
25
|
-
|
|
26
|
-
let score = lengthScore;
|
|
27
|
-
if (hasApiV1) score -= 30;
|
|
28
|
-
if (hasUnderscore) score -= 10;
|
|
29
|
-
if (isVeryLong) score -= 20;
|
|
30
|
-
|
|
31
|
-
// Normalize to 0-100
|
|
32
|
-
score = Math.max(0, Math.min(100, score));
|
|
33
|
-
|
|
34
|
-
// Determine confidence level
|
|
35
|
-
let confidence;
|
|
36
|
-
if (score >= 70) confidence = 'high';
|
|
37
|
-
else if (score >= 40) confidence = 'medium';
|
|
38
|
-
else confidence = 'low';
|
|
39
|
-
|
|
40
|
-
return {
|
|
41
|
-
hookName,
|
|
42
|
-
operationId,
|
|
43
|
-
path,
|
|
44
|
-
method,
|
|
45
|
-
confidence,
|
|
46
|
-
score,
|
|
47
|
-
suggestions: confidence === 'low' ? [this.suggestBetterName(path, method)] : []
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
suggestBetterName(path, method) {
|
|
52
|
-
// Extract resource from path
|
|
53
|
-
const segments = path.split('/').filter(s => s && !s.startsWith('{') && !['api', 'v1'].includes(s));
|
|
54
|
-
const resource = segments[segments.length - 1]?.replace(/-/g, '') || 'resource';
|
|
55
|
-
|
|
56
|
-
// Capitalize first letter
|
|
57
|
-
const capitalizedResource = resource.charAt(0).toUpperCase() + resource.slice(1);
|
|
58
|
-
|
|
59
|
-
switch (method) {
|
|
60
|
-
case 'get':
|
|
61
|
-
return path.includes('{') ? `useGet${capitalizedResource}` : `use${capitalizedResource}`;
|
|
62
|
-
case 'post':
|
|
63
|
-
return `useCreate${capitalizedResource}`;
|
|
64
|
-
case 'put':
|
|
65
|
-
case 'patch':
|
|
66
|
-
return `useUpdate${capitalizedResource}`;
|
|
67
|
-
case 'delete':
|
|
68
|
-
return `useDelete${capitalizedResource}`;
|
|
69
|
-
default:
|
|
70
|
-
return `use${capitalizedResource}`;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
generateReport(scoredNames) {
|
|
75
|
-
const high = scoredNames.filter(s => s.confidence === 'high').length;
|
|
76
|
-
const medium = scoredNames.filter(s => s.confidence === 'medium').length;
|
|
77
|
-
const low = scoredNames.filter(s => s.confidence === 'low').length;
|
|
78
|
-
|
|
79
|
-
return `
|
|
80
|
-
Hook Name Quality Report
|
|
81
|
-
========================
|
|
82
|
-
Total hooks: ${scoredNames.length}
|
|
83
|
-
High confidence: ${high} (${Math.round(high/scoredNames.length*100)}%)
|
|
84
|
-
Medium confidence: ${medium} (${Math.round(medium/scoredNames.length*100)}%)
|
|
85
|
-
Low confidence: ${low} (${Math.round(low/scoredNames.length*100)}%)
|
|
86
|
-
|
|
87
|
-
${low > 0 ? 'Low confidence hooks that may need review:\n' +
|
|
88
|
-
scoredNames.filter(s => s.confidence === 'low')
|
|
89
|
-
.map(s => ` - ${s.hookName} → suggested: ${s.suggestions[0]}`)
|
|
90
|
-
.join('\n') : 'All hooks have acceptable names!'}
|
|
91
|
-
`;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Hook Configuration Manager (Stub)
|
|
3
|
-
*
|
|
4
|
-
* Provides name overrides and pattern configuration for hook generation.
|
|
5
|
-
* This is a minimal stub to unblock the hook generator.
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
export class HookConfigManager {
|
|
9
|
-
constructor(configPath) {
|
|
10
|
-
this.configPath = configPath;
|
|
11
|
-
this.overrides = {};
|
|
12
|
-
this.patterns = {
|
|
13
|
-
deduplicateSegments: true
|
|
14
|
-
};
|
|
15
|
-
this.reviewedNames = [];
|
|
16
|
-
this.statistics = {};
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
async load() {
|
|
20
|
-
// No-op for stub - would load from config file
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
async save() {
|
|
25
|
-
// No-op for stub - would save to config file
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
getOverride(operationId) {
|
|
30
|
-
return this.overrides[operationId] || null;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
getPatterns() {
|
|
34
|
-
return this.patterns;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
getReviewedNames() {
|
|
38
|
-
return this.reviewedNames;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
updateStatistics(stats) {
|
|
42
|
-
this.statistics = { ...this.statistics, ...stats };
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
setOverride(operationId, hookName) {
|
|
46
|
-
this.overrides[operationId] = hookName;
|
|
47
|
-
}
|
|
48
|
-
}
|