@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.
Files changed (165) hide show
  1. package/dist/atoms/components/core/Badge/Badge.d.ts +1 -1
  2. package/dist/atoms/components/data/DataTable/ColumnFilterDropdown.d.ts +32 -0
  3. package/dist/atoms/components/data/DataTable/ColumnFilterDropdown.d.ts.map +1 -0
  4. package/dist/atoms/components/data/DataTable/ColumnVisibilityToggle.d.ts +32 -0
  5. package/dist/atoms/components/data/DataTable/ColumnVisibilityToggle.d.ts.map +1 -0
  6. package/dist/atoms/components/data/DataTable/DataTable.d.ts +5 -2
  7. package/dist/atoms/components/data/DataTable/DataTable.d.ts.map +1 -1
  8. package/dist/atoms/components/data/DataTable/DataTable.expansion.d.ts +91 -0
  9. package/dist/atoms/components/data/DataTable/DataTable.expansion.d.ts.map +1 -0
  10. package/dist/atoms/components/data/DataTable/DataTable.filters.d.ts +271 -0
  11. package/dist/atoms/components/data/DataTable/DataTable.filters.d.ts.map +1 -0
  12. package/dist/atoms/components/data/DataTable/DataTable.types.d.ts +155 -5
  13. package/dist/atoms/components/data/DataTable/DataTable.types.d.ts.map +1 -1
  14. package/dist/atoms/components/data/DataTable/ExpandButton.d.ts +37 -0
  15. package/dist/atoms/components/data/DataTable/ExpandButton.d.ts.map +1 -0
  16. package/dist/atoms/components/data/DataTable/FilterPill.d.ts +25 -0
  17. package/dist/atoms/components/data/DataTable/FilterPill.d.ts.map +1 -0
  18. package/dist/atoms/components/data/DataTable/QuickFilterBar.d.ts +35 -0
  19. package/dist/atoms/components/data/DataTable/QuickFilterBar.d.ts.map +1 -0
  20. package/dist/atoms/components/data/DataTable/filters/BooleanFilterEditor.d.ts +10 -0
  21. package/dist/atoms/components/data/DataTable/filters/BooleanFilterEditor.d.ts.map +1 -0
  22. package/dist/atoms/components/data/DataTable/filters/DateFilterEditor.d.ts +11 -0
  23. package/dist/atoms/components/data/DataTable/filters/DateFilterEditor.d.ts.map +1 -0
  24. package/dist/atoms/components/data/DataTable/filters/MultiSelectFilterEditor.d.ts +10 -0
  25. package/dist/atoms/components/data/DataTable/filters/MultiSelectFilterEditor.d.ts.map +1 -0
  26. package/dist/atoms/components/data/DataTable/filters/NumberFilterEditor.d.ts +10 -0
  27. package/dist/atoms/components/data/DataTable/filters/NumberFilterEditor.d.ts.map +1 -0
  28. package/dist/atoms/components/data/DataTable/filters/SelectFilterEditor.d.ts +10 -0
  29. package/dist/atoms/components/data/DataTable/filters/SelectFilterEditor.d.ts.map +1 -0
  30. package/dist/atoms/components/data/DataTable/filters/TextFilterEditor.d.ts +10 -0
  31. package/dist/atoms/components/data/DataTable/filters/TextFilterEditor.d.ts.map +1 -0
  32. package/dist/atoms/components/data/DataTable/filters/index.d.ts +14 -0
  33. package/dist/atoms/components/data/DataTable/filters/index.d.ts.map +1 -0
  34. package/dist/atoms/components/data/DataTable/index.d.ts +9 -0
  35. package/dist/atoms/components/data/DataTable/index.d.ts.map +1 -1
  36. package/dist/atoms/components/data/ProgressBar/ProgressBar.d.ts +1 -1
  37. package/dist/atoms/components/data/ProgressBar/ProgressBar.d.ts.map +1 -1
  38. package/dist/atoms/components/data/index.d.ts +3 -2
  39. package/dist/atoms/components/data/index.d.ts.map +1 -1
  40. package/dist/atoms/composed/ConnectionStatus/ConnectionStatus.d.ts +16 -0
  41. package/dist/atoms/composed/ConnectionStatus/ConnectionStatus.d.ts.map +1 -0
  42. package/dist/atoms/composed/ConnectionStatus/index.d.ts +3 -0
  43. package/dist/atoms/composed/ConnectionStatus/index.d.ts.map +1 -0
  44. package/dist/atoms/hooks/index.d.ts +9 -0
  45. package/dist/atoms/hooks/index.d.ts.map +1 -1
  46. package/dist/atoms/hooks/useAdaptiveTable.d.ts +49 -0
  47. package/dist/atoms/hooks/useAdaptiveTable.d.ts.map +1 -0
  48. package/dist/atoms/hooks/useApi.d.ts +1 -1
  49. package/dist/atoms/hooks/useApi.d.ts.map +1 -1
  50. package/dist/atoms/hooks/useColumnVisibility.d.ts +75 -0
  51. package/dist/atoms/hooks/useColumnVisibility.d.ts.map +1 -0
  52. package/dist/atoms/hooks/useEntityData.d.ts +36 -0
  53. package/dist/atoms/hooks/useEntityData.d.ts.map +1 -0
  54. package/dist/atoms/hooks/useEntityDetail.d.ts +43 -0
  55. package/dist/atoms/hooks/useEntityDetail.d.ts.map +1 -0
  56. package/dist/atoms/hooks/useExpandedRows.d.ts +66 -0
  57. package/dist/atoms/hooks/useExpandedRows.d.ts.map +1 -0
  58. package/dist/atoms/hooks/useFieldMetadata.d.ts +18 -0
  59. package/dist/atoms/hooks/useFieldMetadata.d.ts.map +1 -0
  60. package/dist/atoms/hooks/useOnlineStatus.d.ts +16 -0
  61. package/dist/atoms/hooks/useOnlineStatus.d.ts.map +1 -0
  62. package/dist/atoms/hooks/useResponsiveTable.d.ts +123 -0
  63. package/dist/atoms/hooks/useResponsiveTable.d.ts.map +1 -0
  64. package/dist/atoms/hooks/useTableFilters.d.ts +92 -0
  65. package/dist/atoms/hooks/useTableFilters.d.ts.map +1 -0
  66. package/dist/atoms/index.d.ts +1 -0
  67. package/dist/atoms/index.d.ts.map +1 -1
  68. package/dist/atoms/primitives/sheet.d.ts +23 -0
  69. package/dist/atoms/primitives/sheet.d.ts.map +1 -0
  70. package/dist/atoms/primitives/table.d.ts.map +1 -1
  71. package/dist/atoms/services/api/client.d.ts +12 -2
  72. package/dist/atoms/services/api/client.d.ts.map +1 -1
  73. package/dist/atoms/services/auth-service.d.ts +15 -0
  74. package/dist/atoms/services/auth-service.d.ts.map +1 -1
  75. package/dist/atoms/services/index.d.ts +2 -2
  76. package/dist/atoms/services/index.d.ts.map +1 -1
  77. package/dist/atoms/shared/config/table-config.d.ts +79 -0
  78. package/dist/atoms/shared/config/table-config.d.ts.map +1 -0
  79. package/dist/atoms/shared/index.d.ts +1 -0
  80. package/dist/atoms/shared/index.d.ts.map +1 -1
  81. package/dist/atoms/types/auth.d.ts +95 -2
  82. package/dist/atoms/types/auth.d.ts.map +1 -1
  83. package/dist/atoms/types/index.d.ts +1 -0
  84. package/dist/atoms/types/index.d.ts.map +1 -1
  85. package/dist/atoms/types/navigation.d.ts +1 -1
  86. package/dist/atoms/types/navigation.d.ts.map +1 -1
  87. package/dist/atoms/types/ui-config.d.ts +46 -11
  88. package/dist/atoms/types/ui-config.d.ts.map +1 -1
  89. package/dist/atoms/types/ui-metadata.d.ts +103 -0
  90. package/dist/atoms/types/ui-metadata.d.ts.map +1 -0
  91. package/dist/atoms/utils/entity-card-mapping.d.ts +105 -0
  92. package/dist/atoms/utils/entity-card-mapping.d.ts.map +1 -0
  93. package/dist/atoms/utils/field-detection.d.ts +2 -2
  94. package/dist/atoms/utils/field-detection.d.ts.map +1 -1
  95. package/dist/atoms/utils/icon-map.d.ts +48 -0
  96. package/dist/atoms/utils/icon-map.d.ts.map +1 -1
  97. package/dist/atoms/utils/index.d.ts +2 -0
  98. package/dist/atoms/utils/index.d.ts.map +1 -1
  99. package/dist/atoms/utils/ui-mapping.d.ts +9 -3
  100. package/dist/atoms/utils/ui-mapping.d.ts.map +1 -1
  101. package/dist/features/auth/components/ProtectedRoute.d.ts +3 -1
  102. package/dist/features/auth/components/ProtectedRoute.d.ts.map +1 -1
  103. package/dist/features/auth/hooks/useAuth.d.ts.map +1 -1
  104. package/dist/features/auth/providers/NoAuthProvider.d.ts +17 -0
  105. package/dist/features/auth/providers/NoAuthProvider.d.ts.map +1 -0
  106. package/dist/features/auth/providers/index.d.ts +1 -0
  107. package/dist/features/auth/providers/index.d.ts.map +1 -1
  108. package/dist/frontend-patterns.css +1 -4554
  109. package/dist/index.d.ts +12 -4
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.es.js +8793 -18275
  112. package/dist/index.es.js.map +1 -1
  113. package/dist/index.js +8790 -18271
  114. package/dist/index.js.map +1 -1
  115. package/dist/molecules/layout/AppHeader/AppHeader.d.ts.map +1 -1
  116. package/dist/molecules/layout/BulkSelectionBar.d.ts +14 -2
  117. package/dist/molecules/layout/BulkSelectionBar.d.ts.map +1 -1
  118. package/dist/molecules/layout/FieldGrid/FieldGrid.d.ts +61 -0
  119. package/dist/molecules/layout/FieldGrid/FieldGrid.d.ts.map +1 -0
  120. package/dist/molecules/layout/FieldGrid/index.d.ts +2 -0
  121. package/dist/molecules/layout/FieldGrid/index.d.ts.map +1 -0
  122. package/dist/molecules/layout/ListToolbar/ListToolbar.d.ts +37 -0
  123. package/dist/molecules/layout/ListToolbar/ListToolbar.d.ts.map +1 -0
  124. package/dist/molecules/layout/ListToolbar/index.d.ts +2 -0
  125. package/dist/molecules/layout/ListToolbar/index.d.ts.map +1 -0
  126. package/dist/molecules/layout/PageTitle/PageTitle.d.ts +17 -0
  127. package/dist/molecules/layout/PageTitle/PageTitle.d.ts.map +1 -0
  128. package/dist/molecules/layout/PageTitle/index.d.ts +2 -0
  129. package/dist/molecules/layout/PageTitle/index.d.ts.map +1 -0
  130. package/dist/molecules/layout/index.d.ts +3 -0
  131. package/dist/molecules/layout/index.d.ts.map +1 -1
  132. package/dist/molecules/layout/navigation-context.d.ts.map +1 -1
  133. package/dist/sync/EntityStoreProvider.d.ts +35 -0
  134. package/dist/sync/EntityStoreProvider.d.ts.map +1 -0
  135. package/dist/sync/createEntityHooks.d.ts +29 -0
  136. package/dist/sync/createEntityHooks.d.ts.map +1 -0
  137. package/dist/sync/createStore.d.ts +65 -0
  138. package/dist/sync/createStore.d.ts.map +1 -0
  139. package/dist/sync/index.d.ts +6 -0
  140. package/dist/sync/index.d.ts.map +1 -0
  141. package/dist/sync/types.d.ts +383 -0
  142. package/dist/sync/types.d.ts.map +1 -0
  143. package/dist/templates/ListPageTemplate.d.ts +21 -0
  144. package/dist/templates/ListPageTemplate.d.ts.map +1 -0
  145. package/dist/templates/admin/AdminCRUDTemplate.d.ts.map +1 -1
  146. package/dist/templates/factory.d.ts +11 -0
  147. package/dist/templates/factory.d.ts.map +1 -1
  148. package/dist/templates/index.d.ts +1 -0
  149. package/dist/templates/index.d.ts.map +1 -1
  150. package/package.json +11 -7
  151. package/cli/commands/generate-hooks.ts +0 -325
  152. package/cli/commands/init.ts +0 -33
  153. package/cli/commands/scaffold.ts +0 -224
  154. package/cli/index.ts +0 -122
  155. package/cli/src/codegen/openapi/__tests__/naming-utils.test.js +0 -367
  156. package/cli/src/codegen/openapi/client-generator.js +0 -727
  157. package/cli/src/codegen/openapi/confidence-scorer.js +0 -93
  158. package/cli/src/codegen/openapi/hook-config.js +0 -48
  159. package/cli/src/codegen/openapi/hook-generator.js +0 -763
  160. package/cli/src/codegen/openapi/naming-constants.js +0 -98
  161. package/cli/src/codegen/openapi/naming-utils.js +0 -149
  162. package/cli/src/codegen/openapi/parser.js +0 -274
  163. package/cli/src/codegen/openapi/type-generator.js +0 -329
  164. package/dist/codegen/openapi/bulk-types.d.ts +0 -142
  165. 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
- }