@auto-engineer/component-implementor-react 1.95.0 → 1.96.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/.turbo/turbo-build.log +1 -1
- package/.turbo/turbo-test.log +6 -6
- package/.turbo/turbo-type-check.log +1 -1
- package/CHANGELOG.md +72 -0
- package/dist/src/commands/implement-component.d.ts.map +1 -1
- package/dist/src/commands/implement-component.js +13 -16
- package/dist/src/commands/implement-component.js.map +1 -1
- package/dist/src/commands/implement-component.test.js +14 -5
- package/dist/src/commands/implement-component.test.js.map +1 -1
- package/dist/src/extract-code-block.d.ts +1 -0
- package/dist/src/extract-code-block.d.ts.map +1 -1
- package/dist/src/extract-code-block.js +12 -0
- package/dist/src/extract-code-block.js.map +1 -1
- package/dist/src/extract-code-block.test.js +28 -1
- package/dist/src/extract-code-block.test.js.map +1 -1
- package/dist/src/generate-component.d.ts +2 -13
- package/dist/src/generate-component.d.ts.map +1 -1
- package/dist/src/generate-component.js +4 -29
- package/dist/src/generate-component.js.map +1 -1
- package/dist/src/generate-component.test.js +18 -22
- package/dist/src/generate-component.test.js.map +1 -1
- package/dist/src/generate-story.d.ts +2 -12
- package/dist/src/generate-story.d.ts.map +1 -1
- package/dist/src/generate-story.js +4 -25
- package/dist/src/generate-story.js.map +1 -1
- package/dist/src/generate-story.test.js +17 -21
- package/dist/src/generate-story.test.js.map +1 -1
- package/dist/src/generate-test.d.ts +2 -12
- package/dist/src/generate-test.d.ts.map +1 -1
- package/dist/src/generate-test.js +4 -28
- package/dist/src/generate-test.js.map +1 -1
- package/dist/src/generate-test.test.js +17 -6
- package/dist/src/generate-test.test.js.map +1 -1
- package/dist/src/prompt.d.ts +64 -0
- package/dist/src/prompt.d.ts.map +1 -0
- package/dist/src/prompt.js +481 -0
- package/dist/src/prompt.js.map +1 -0
- package/dist/src/prompt.test.d.ts +2 -0
- package/dist/src/prompt.test.d.ts.map +1 -0
- package/dist/src/prompt.test.js +136 -0
- package/dist/src/prompt.test.js.map +1 -0
- package/dist/src/reconcile.d.ts +8 -0
- package/dist/src/reconcile.d.ts.map +1 -0
- package/dist/src/reconcile.js +18 -0
- package/dist/src/reconcile.js.map +1 -0
- package/dist/src/reconcile.test.d.ts +2 -0
- package/dist/src/reconcile.test.d.ts.map +1 -0
- package/dist/src/reconcile.test.js +108 -0
- package/dist/src/reconcile.test.js.map +1 -0
- package/dist/src/run.d.ts +2 -0
- package/dist/src/run.d.ts.map +1 -0
- package/dist/src/run.js +86 -0
- package/dist/src/run.js.map +1 -0
- package/dist/src/spec-contract.d.ts +9 -0
- package/dist/src/spec-contract.d.ts.map +1 -0
- package/dist/src/spec-contract.js +16 -0
- package/dist/src/spec-contract.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/improvement-prompt.md +208 -0
- package/inputs/action-button/spec.json +50 -0
- package/inputs/command-palette/spec.json +62 -0
- package/inputs/data-card/spec.json +59 -0
- package/inputs/editable-data-table/spec.json +70 -0
- package/inputs/multi-step-form/spec.json +66 -0
- package/inputs/notification-center/spec.json +67 -0
- package/inputs/search-input/spec.json +62 -0
- package/inputs/status-badge/spec.json +46 -0
- package/package.json +4 -3
- package/scripts/improve.ts +592 -0
- package/src/commands/implement-component.test.ts +14 -5
- package/src/commands/implement-component.ts +13 -17
- package/src/extract-code-block.test.ts +33 -1
- package/src/extract-code-block.ts +13 -0
- package/src/generate-component.test.ts +22 -26
- package/src/generate-component.ts +5 -46
- package/src/generate-story.test.ts +17 -21
- package/src/generate-story.ts +5 -40
- package/src/generate-test.test.ts +22 -7
- package/src/generate-test.ts +5 -44
- package/src/prompt.test.ts +163 -0
- package/src/prompt.ts +581 -0
- package/src/reconcile.test.ts +127 -0
- package/src/reconcile.ts +27 -0
- package/src/run.ts +106 -0
- package/src/spec-contract.ts +22 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"componentName": "SearchInput",
|
|
3
|
+
"specDeltas": {
|
|
4
|
+
"structure": [
|
|
5
|
+
"Renders a container div wrapping the input, icons, and suggestion dropdown",
|
|
6
|
+
"Contains a search icon on the leading side of the input",
|
|
7
|
+
"Contains a text input element with role searchbox for user query entry",
|
|
8
|
+
"Contains a clear button on the trailing side when the input has a value",
|
|
9
|
+
"Contains an optional loading spinner on the trailing side replacing the clear button",
|
|
10
|
+
"Contains a keyboard shortcut hint badge on the trailing side when the input is empty and unfocused",
|
|
11
|
+
"Contains a suggestion dropdown panel below the input that appears when suggestions are available and input is focused"
|
|
12
|
+
],
|
|
13
|
+
"rendering": [
|
|
14
|
+
"Displays the placeholder prop as input placeholder text",
|
|
15
|
+
"Displays the current value in the input field",
|
|
16
|
+
"Shows the clear button when value is non-empty and loading is false",
|
|
17
|
+
"Hides the clear button when value is empty",
|
|
18
|
+
"Shows the loading spinner when loading is true",
|
|
19
|
+
"Hides the loading spinner when loading is false",
|
|
20
|
+
"Replaces the clear button with the spinner when loading is true and value is non-empty",
|
|
21
|
+
"Shows the keyboard shortcut badge displaying the shortcutKey prop when input is empty and not focused",
|
|
22
|
+
"Hides the shortcut badge when input is focused or has a value",
|
|
23
|
+
"Shows the suggestion dropdown when suggestions array is non-empty and input is focused",
|
|
24
|
+
"Hides the suggestion dropdown when suggestions array is empty",
|
|
25
|
+
"Hides the suggestion dropdown when input loses focus after a short delay",
|
|
26
|
+
"Highlights the currently active suggestion with a distinct background",
|
|
27
|
+
"Displays each suggestion with a primary label and optional secondary description",
|
|
28
|
+
"Shows a no-results message in the dropdown when input has value but suggestions is an empty array and loading is false",
|
|
29
|
+
"Shows recent searches section in dropdown when recentSearches prop is provided and input is empty and focused"
|
|
30
|
+
],
|
|
31
|
+
"interaction": [
|
|
32
|
+
"Calls onChange handler with new value when user types",
|
|
33
|
+
"Calls onClear handler when clear button is clicked",
|
|
34
|
+
"Clears the input value visually when clear button is clicked",
|
|
35
|
+
"Calls onSubmit handler with current value when Enter key is pressed and no suggestion is active",
|
|
36
|
+
"Calls onSuggestionSelect handler with the selected suggestion when Enter is pressed on an active suggestion",
|
|
37
|
+
"Calls onSuggestionSelect handler when a suggestion is clicked",
|
|
38
|
+
"Navigates active suggestion down with ArrowDown key",
|
|
39
|
+
"Navigates active suggestion up with ArrowUp key",
|
|
40
|
+
"Wraps active suggestion navigation from last to first and first to last",
|
|
41
|
+
"Closes suggestion dropdown when Escape key is pressed and reopens on next input change",
|
|
42
|
+
"Focuses the input when the keyboard shortcut key is pressed globally",
|
|
43
|
+
"Focuses the input when the container is clicked anywhere",
|
|
44
|
+
"Calls onFocus handler when the input gains focus",
|
|
45
|
+
"Calls onBlur handler when the input loses focus and no suggestion is being clicked"
|
|
46
|
+
],
|
|
47
|
+
"styling": [
|
|
48
|
+
"Applies focused ring style to the container when input is focused",
|
|
49
|
+
"Applies error border and ring style when error is true",
|
|
50
|
+
"Applies disabled opacity and pointer-events-none when disabled is true",
|
|
51
|
+
"Applies compact height when size is sm",
|
|
52
|
+
"Applies standard height when size is md",
|
|
53
|
+
"Applies tall height when size is lg",
|
|
54
|
+
"Applies rounded-lg border to the container",
|
|
55
|
+
"Applies muted text color to the search icon and placeholder",
|
|
56
|
+
"Applies hover background to the clear button",
|
|
57
|
+
"Applies shadow-lg and rounded-lg border to the suggestion dropdown",
|
|
58
|
+
"Active suggestion has a highlighted background distinct from hover",
|
|
59
|
+
"Suggestion dropdown has smooth max-height transition on open and close"
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"componentName": "StatusBadge",
|
|
3
|
+
"specDeltas": {
|
|
4
|
+
"structure": [
|
|
5
|
+
"Renders a <span> element as the root with role status",
|
|
6
|
+
"Contains an animated dot indicator before the label text",
|
|
7
|
+
"Contains the label text as the primary content",
|
|
8
|
+
"Contains an optional dismiss button after the label when dismissible is true",
|
|
9
|
+
"Contains an optional icon slot before the dot indicator"
|
|
10
|
+
],
|
|
11
|
+
"rendering": [
|
|
12
|
+
"Displays the label prop as text content",
|
|
13
|
+
"Shows the animated dot when showDot is true with a pulsing animation",
|
|
14
|
+
"Hides the dot when showDot is false",
|
|
15
|
+
"Shows the dismiss X button when dismissible is true",
|
|
16
|
+
"Hides the dismiss button when dismissible is false",
|
|
17
|
+
"Shows the custom icon when icon prop is provided",
|
|
18
|
+
"Truncates label text with ellipsis when it exceeds maxWidth",
|
|
19
|
+
"Renders screen-reader-only text that includes the status value for accessibility",
|
|
20
|
+
"Shows a count number after the label when count is provided and greater than zero",
|
|
21
|
+
"Displays count as 99+ when count exceeds 99"
|
|
22
|
+
],
|
|
23
|
+
"interaction": [
|
|
24
|
+
"Calls onClick handler when the badge body is clicked if onClick is provided",
|
|
25
|
+
"Calls onDismiss handler when the dismiss button is clicked",
|
|
26
|
+
"Does not propagate dismiss click to the badge onClick handler",
|
|
27
|
+
"Applies cursor-pointer to the body when onClick is provided",
|
|
28
|
+
"Applies cursor-default to the body when onClick is not provided",
|
|
29
|
+
"Supports keyboard activation of dismiss via Enter and Space"
|
|
30
|
+
],
|
|
31
|
+
"styling": [
|
|
32
|
+
"Applies green color scheme with green dot when status is success",
|
|
33
|
+
"Applies amber color scheme with amber dot when status is warning",
|
|
34
|
+
"Applies red color scheme with red dot when status is error",
|
|
35
|
+
"Applies blue color scheme with blue dot when status is info",
|
|
36
|
+
"Applies gray color scheme with gray dot when status is neutral",
|
|
37
|
+
"Applies pill shape with fully rounded corners",
|
|
38
|
+
"Applies compact padding and small text when size is sm",
|
|
39
|
+
"Applies standard padding and base text when size is md",
|
|
40
|
+
"Applies large padding and large text when size is lg",
|
|
41
|
+
"Applies outlined variant with border and transparent background when variant is outlined",
|
|
42
|
+
"Applies filled variant with solid background when variant is filled",
|
|
43
|
+
"Dot pulses with a subtle opacity animation when status is error or warning"
|
|
44
|
+
]
|
|
45
|
+
}
|
|
46
|
+
}
|
package/package.json
CHANGED
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
"dependencies": {
|
|
7
7
|
"ai": "^6.0.0",
|
|
8
8
|
"debug": "^4.4.1",
|
|
9
|
-
"@auto-engineer/message-bus": "1.
|
|
10
|
-
"@auto-engineer/model-factory": "1.
|
|
9
|
+
"@auto-engineer/message-bus": "1.96.0",
|
|
10
|
+
"@auto-engineer/model-factory": "1.96.0"
|
|
11
11
|
},
|
|
12
12
|
"devDependencies": {
|
|
13
13
|
"vitest": "^3.2.1"
|
|
14
14
|
},
|
|
15
|
-
"version": "1.
|
|
15
|
+
"version": "1.96.0",
|
|
16
16
|
"publishConfig": {
|
|
17
17
|
"access": "public"
|
|
18
18
|
},
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"build": "tsc && tsx ../../scripts/fix-esm-imports.ts",
|
|
21
21
|
"test": "vitest run --reporter=dot",
|
|
22
22
|
"type-check": "tsc --noEmit",
|
|
23
|
+
"improve": "tsx scripts/improve.ts",
|
|
23
24
|
"release": "pnpm publish --no-git-checks"
|
|
24
25
|
}
|
|
25
26
|
}
|