@auto-engineer/generate-react-client 1.103.0 → 1.105.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/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,124 @@
|
|
|
1
1
|
# @auto-engineer/generate-react-client
|
|
2
2
|
|
|
3
|
+
## 1.105.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`757b847`](https://github.com/BeOnAuto/auto-engineer/commit/757b847511f6b4a6d3b585bf02a45bce70c6c29c) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **narrative**: add target() builder factory for target-only event items
|
|
8
|
+
|
|
9
|
+
- [`057c6e5`](https://github.com/BeOnAuto/auto-engineer/commit/057c6e56e45e63158708cb05c5dda3b6ca863a92) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **narrative**: generate target().event() calls in flow code generator
|
|
10
|
+
|
|
11
|
+
- [`ae3527b`](https://github.com/BeOnAuto/auto-engineer/commit/ae3527b42a82a794763109082e539681fd0d289a) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: pass flowName/sliceName/sliceType in ServerGenerationFailed bug report
|
|
12
|
+
|
|
13
|
+
- [`0888604`](https://github.com/BeOnAuto/auto-engineer/commit/0888604e72107d5790c7b72eaa5213588e39aa4a) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **generate-react-client**: replace merge with component-parser
|
|
14
|
+
- **component-parser**: parseManifestComponents deduplicates and parses component paths
|
|
15
|
+
- **component-parser**: add Card.tsx tests verifying pure HTML wrappers have empty props
|
|
16
|
+
- **component-parser**: add Carousel.tsx tests for separate type def and custom prop survival
|
|
17
|
+
- **component-parser**: parseComponentFile extracts Button props
|
|
18
|
+
|
|
19
|
+
- [`b3583e3`](https://github.com/BeOnAuto/auto-engineer/commit/b3583e35a52c4d311bd04b3df4a8c34e856b4f3c) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: add error classes with cause chain for scaffold failures
|
|
20
|
+
|
|
21
|
+
- [`048b477`](https://github.com/BeOnAuto/auto-engineer/commit/048b4774960e2e186599ebc1c7654285677fd05b) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: enrich ServerGenerationFailed with cause-chain context
|
|
22
|
+
|
|
23
|
+
- [`81188d6`](https://github.com/BeOnAuto/auto-engineer/commit/81188d6b9bc51761a9bc52eef211bde3cc49fcc9) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **narrative**: add DataTargetSchema for target-only event items
|
|
24
|
+
|
|
25
|
+
### Patch Changes
|
|
26
|
+
|
|
27
|
+
- [`933d724`](https://github.com/BeOnAuto/auto-engineer/commit/933d724c2348048116e173d056ddfe54a9ddfa65) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: fix decide default case + add union narrowing guidance
|
|
28
|
+
|
|
29
|
+
- [`8c6ea86`](https://github.com/BeOnAuto/auto-engineer/commit/8c6ea861fd7c43331de117abca84dff23e3424ff) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: use EntityData indexed access for singleton \_entities typing
|
|
30
|
+
- **server-generator-apollo-emmett**: remove misleading Command targets from react DT test fixtures
|
|
31
|
+
- **server-generator-apollo-emmett**: strengthen evolve template TODO and implementer guidance
|
|
32
|
+
- **server-generator-apollo-emmett**: return 0 for non-numeric values in number type formatter
|
|
33
|
+
- **server-implementer**: add strict array/object typing rules to prompts
|
|
34
|
+
|
|
35
|
+
- [`8dbc585`](https://github.com/BeOnAuto/auto-engineer/commit/8dbc5852bd4a1fa09d3290970a802d17937614ed) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **narrative**: finalize ketchup plan for DataTarget feature
|
|
36
|
+
|
|
37
|
+
- [`767d3d6`](https://github.com/BeOnAuto/auto-engineer/commit/767d3d629dcc889eee15be8922d146f90edc5e8d) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: strengthen evolve template TODO and implementer guidance
|
|
38
|
+
|
|
39
|
+
- [`ee6f943`](https://github.com/BeOnAuto/auto-engineer/commit/ee6f943e8063104b37ad7bb7d566c1bbcd683176) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: move discriminant rules from system prompts to templates
|
|
40
|
+
|
|
41
|
+
- [`049c2be`](https://github.com/BeOnAuto/auto-engineer/commit/049c2bea133f3e180340e617b5cb29044a484043) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **narrative**: ketchup plan for DataTarget schema feature
|
|
42
|
+
|
|
43
|
+
- [`0573d9c`](https://github.com/BeOnAuto/auto-engineer/commit/0573d9c3cadb0644c3763e8ff5a6e93cc097e149) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: mark bursts 29-30 done in ketchup plan
|
|
44
|
+
|
|
45
|
+
- [`61f720c`](https://github.com/BeOnAuto/auto-engineer/commit/61f720cd00902678ef87cc601ba55122a91b1583) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: move discriminant rules from system prompts to templates
|
|
46
|
+
- **server-generator-apollo-emmett**: use EntityData indexed access for singleton \_entities typing
|
|
47
|
+
- **server-generator-apollo-emmett**: remove misleading Command targets from react DT test fixtures
|
|
48
|
+
- **server-generator-apollo-emmett**: strengthen evolve template TODO and implementer guidance
|
|
49
|
+
- **server-generator-apollo-emmett**: return 0 for non-numeric values in number type formatter
|
|
50
|
+
|
|
51
|
+
- [`5a97de3`](https://github.com/BeOnAuto/auto-engineer/commit/5a97de3c314256bb98312c120bca009e8cb4ef22) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: add stream guard for multi-command slices
|
|
52
|
+
|
|
53
|
+
- [`c62ffe2`](https://github.com/BeOnAuto/auto-engineer/commit/c62ffe2636977f552c9147f7be55b8c0e89e5302) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: remove misleading Command targets from react DT test fixtures
|
|
54
|
+
|
|
55
|
+
- [`cb39fea`](https://github.com/BeOnAuto/auto-engineer/commit/cb39fea922ebd6b8b21fdd735daadba04c845372) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: mark bursts 27-28 done in ketchup plan
|
|
56
|
+
|
|
57
|
+
- [`7b21d43`](https://github.com/BeOnAuto/auto-engineer/commit/7b21d43806e395ce5efd558cf0897fe35015f749) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-implementer**: add strict array/object typing rules to prompts
|
|
58
|
+
|
|
59
|
+
- [`db4a3c3`](https://github.com/BeOnAuto/auto-engineer/commit/db4a3c310f15d148ac15a10e8001b17e6c5cfb27) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **component-parser**: memoize buildHtmlPropSet per Project to fix CI timeout
|
|
60
|
+
|
|
61
|
+
- [`472ce61`](https://github.com/BeOnAuto/auto-engineer/commit/472ce619aa8ecb6926316e3232010b8b162112e0) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: bump tsconfig lib for Error.cause support
|
|
62
|
+
|
|
63
|
+
- [`f151090`](https://github.com/BeOnAuto/auto-engineer/commit/f1510900832e08508a319f9f85638c32e7ef86cb) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: return 0 for non-numeric values in number type formatter
|
|
64
|
+
|
|
65
|
+
- Updated dependencies [[`757b847`](https://github.com/BeOnAuto/auto-engineer/commit/757b847511f6b4a6d3b585bf02a45bce70c6c29c), [`057c6e5`](https://github.com/BeOnAuto/auto-engineer/commit/057c6e56e45e63158708cb05c5dda3b6ca863a92), [`ae3527b`](https://github.com/BeOnAuto/auto-engineer/commit/ae3527b42a82a794763109082e539681fd0d289a), [`0888604`](https://github.com/BeOnAuto/auto-engineer/commit/0888604e72107d5790c7b72eaa5213588e39aa4a), [`933d724`](https://github.com/BeOnAuto/auto-engineer/commit/933d724c2348048116e173d056ddfe54a9ddfa65), [`b3583e3`](https://github.com/BeOnAuto/auto-engineer/commit/b3583e35a52c4d311bd04b3df4a8c34e856b4f3c), [`8c6ea86`](https://github.com/BeOnAuto/auto-engineer/commit/8c6ea861fd7c43331de117abca84dff23e3424ff), [`8dbc585`](https://github.com/BeOnAuto/auto-engineer/commit/8dbc5852bd4a1fa09d3290970a802d17937614ed), [`048b477`](https://github.com/BeOnAuto/auto-engineer/commit/048b4774960e2e186599ebc1c7654285677fd05b), [`767d3d6`](https://github.com/BeOnAuto/auto-engineer/commit/767d3d629dcc889eee15be8922d146f90edc5e8d), [`ee6f943`](https://github.com/BeOnAuto/auto-engineer/commit/ee6f943e8063104b37ad7bb7d566c1bbcd683176), [`049c2be`](https://github.com/BeOnAuto/auto-engineer/commit/049c2bea133f3e180340e617b5cb29044a484043), [`0573d9c`](https://github.com/BeOnAuto/auto-engineer/commit/0573d9c3cadb0644c3763e8ff5a6e93cc097e149), [`61f720c`](https://github.com/BeOnAuto/auto-engineer/commit/61f720cd00902678ef87cc601ba55122a91b1583), [`5a97de3`](https://github.com/BeOnAuto/auto-engineer/commit/5a97de3c314256bb98312c120bca009e8cb4ef22), [`c62ffe2`](https://github.com/BeOnAuto/auto-engineer/commit/c62ffe2636977f552c9147f7be55b8c0e89e5302), [`81188d6`](https://github.com/BeOnAuto/auto-engineer/commit/81188d6b9bc51761a9bc52eef211bde3cc49fcc9), [`cb39fea`](https://github.com/BeOnAuto/auto-engineer/commit/cb39fea922ebd6b8b21fdd735daadba04c845372), [`7b21d43`](https://github.com/BeOnAuto/auto-engineer/commit/7b21d43806e395ce5efd558cf0897fe35015f749), [`db4a3c3`](https://github.com/BeOnAuto/auto-engineer/commit/db4a3c310f15d148ac15a10e8001b17e6c5cfb27), [`472ce61`](https://github.com/BeOnAuto/auto-engineer/commit/472ce619aa8ecb6926316e3232010b8b162112e0), [`f151090`](https://github.com/BeOnAuto/auto-engineer/commit/f1510900832e08508a319f9f85638c32e7ef86cb)]:
|
|
66
|
+
- @auto-engineer/file-upload@1.105.0
|
|
67
|
+
- @auto-engineer/message-bus@1.105.0
|
|
68
|
+
|
|
69
|
+
## 1.104.0
|
|
70
|
+
|
|
71
|
+
### Minor Changes
|
|
72
|
+
|
|
73
|
+
- [`78976f5`](https://github.com/BeOnAuto/auto-engineer/commit/78976f5df70cec2320f548f08d4b950bda1c5063) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: extractDefaults extracts destructuring defaults
|
|
74
|
+
|
|
75
|
+
- [`ad74fec`](https://github.com/BeOnAuto/auto-engineer/commit/ad74fecdba40dff69a57c1fb5c0b36e7de40df35) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: buildHtmlPropSet resolves HTML div prop names
|
|
76
|
+
|
|
77
|
+
- [`4ca9d54`](https://github.com/BeOnAuto/auto-engineer/commit/4ca9d5434af53f9bbffa6d8af61082534693cbd2) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: add Card.tsx tests verifying pure HTML wrappers have empty props
|
|
78
|
+
|
|
79
|
+
- [`4ca9d54`](https://github.com/BeOnAuto/auto-engineer/commit/4ca9d5434af53f9bbffa6d8af61082534693cbd2) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: add Card.tsx tests verifying pure HTML wrappers have empty props
|
|
80
|
+
|
|
81
|
+
- [`8d4a3d1`](https://github.com/BeOnAuto/auto-engineer/commit/8d4a3d1c992ce35e390260007e1575052df4bc39) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: resolveCustomProps filters HTML props from component type
|
|
82
|
+
|
|
83
|
+
- [`4ca9d54`](https://github.com/BeOnAuto/auto-engineer/commit/4ca9d5434af53f9bbffa6d8af61082534693cbd2) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: add Card.tsx tests verifying pure HTML wrappers have empty props
|
|
84
|
+
|
|
85
|
+
- [`fb635c1`](https://github.com/BeOnAuto/auto-engineer/commit/fb635c1b23a1ad472e76604ad9ee502c8ebe453e) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: add Carousel.tsx tests for separate type def and custom prop survival
|
|
86
|
+
|
|
87
|
+
- [`21f0490`](https://github.com/BeOnAuto/auto-engineer/commit/21f04909e0378673fe94180d3ff081e222120580) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: parseManifestComponents deduplicates and parses component paths
|
|
88
|
+
|
|
89
|
+
- [`98d70d8`](https://github.com/BeOnAuto/auto-engineer/commit/98d70d8116ec8e87bee34aa1e506ef77fa8ffd37) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: parseComponentFile extracts Button props
|
|
90
|
+
|
|
91
|
+
- [`27df054`](https://github.com/BeOnAuto/auto-engineer/commit/27df054af29a314fdacef7dec2ffb15748d61036) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: createProject returns ts-morph Project from tsconfig
|
|
92
|
+
|
|
93
|
+
- [`4e58f58`](https://github.com/BeOnAuto/auto-engineer/commit/4e58f5859d4df96ff9944ec7411606769aaa38ff) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **component-implementor-react**: add toHaveStyle and ReferenceError fix guidance to test fixer
|
|
94
|
+
- **component-implementor-react**: strengthen mock spy expect.anything() requirement in test rule 16
|
|
95
|
+
- **component-implementor-react**: add mock spy argument count fix to test fixer
|
|
96
|
+
- **component-implementor-react**: add semantic HTML role mapping test rule
|
|
97
|
+
- **component-implementor-react**: add array key rule and strengthen noArrayIndexKey lint fixer
|
|
98
|
+
|
|
99
|
+
- [`8fc425d`](https://github.com/BeOnAuto/auto-engineer/commit/8fc425d6c53ed4bac3739f703edbd788eb1e3397) Thanks [@osamanar](https://github.com/osamanar)! - - Added component-parser package that extracts and deduplicates component props, filtering out standard HTML attributes to surface only custom props
|
|
100
|
+
- Replaced client-side component merging with server-side approach using the new component-parser, simplifying the React client build pipeline
|
|
101
|
+
- Fixed components database not being properly built in generate-react-client
|
|
102
|
+
- Fixed out-of-date package lock
|
|
103
|
+
|
|
104
|
+
- [`48a7155`](https://github.com/BeOnAuto/auto-engineer/commit/48a7155ccdfca8ad58028564d821902e2d1c7b0d) Thanks [@osamanar](https://github.com/osamanar)! - - **generate-react-client**: replace merge with component-parser
|
|
105
|
+
|
|
106
|
+
- [`4ca9d54`](https://github.com/BeOnAuto/auto-engineer/commit/4ca9d5434af53f9bbffa6d8af61082534693cbd2) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: add Accordion.tsx tests for Radix prop survival
|
|
107
|
+
|
|
108
|
+
### Patch Changes
|
|
109
|
+
|
|
110
|
+
- [`f5be819`](https://github.com/BeOnAuto/auto-engineer/commit/f5be8199bbcc358dd2f5d9940e404a55b32ef853) Thanks [@osamanar](https://github.com/osamanar)! - - Fixed an issue where the components database was not being properly built during React client generation
|
|
111
|
+
|
|
112
|
+
- [`6f72c42`](https://github.com/BeOnAuto/auto-engineer/commit/6f72c4259c96da831e72348de005ff6e70140b61) Thanks [@osamanar](https://github.com/osamanar)! - - Fixed failing tests across the project
|
|
113
|
+
|
|
114
|
+
- [`a5615d9`](https://github.com/BeOnAuto/auto-engineer/commit/a5615d944a1836d80722452c50f10c955a664a90) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: mark all bursts complete in ketchup plan
|
|
115
|
+
|
|
116
|
+
- [`47a13ab`](https://github.com/BeOnAuto/auto-engineer/commit/47a13abe754ef572cedb578ef61bb3b1c07961e8) Thanks [@osamanar](https://github.com/osamanar)! - - **component-parser**: scaffold @auto-engineer/component-parser package
|
|
117
|
+
|
|
118
|
+
- Updated dependencies [[`78976f5`](https://github.com/BeOnAuto/auto-engineer/commit/78976f5df70cec2320f548f08d4b950bda1c5063), [`ad74fec`](https://github.com/BeOnAuto/auto-engineer/commit/ad74fecdba40dff69a57c1fb5c0b36e7de40df35), [`4ca9d54`](https://github.com/BeOnAuto/auto-engineer/commit/4ca9d5434af53f9bbffa6d8af61082534693cbd2), [`4ca9d54`](https://github.com/BeOnAuto/auto-engineer/commit/4ca9d5434af53f9bbffa6d8af61082534693cbd2), [`8d4a3d1`](https://github.com/BeOnAuto/auto-engineer/commit/8d4a3d1c992ce35e390260007e1575052df4bc39), [`4ca9d54`](https://github.com/BeOnAuto/auto-engineer/commit/4ca9d5434af53f9bbffa6d8af61082534693cbd2), [`fb635c1`](https://github.com/BeOnAuto/auto-engineer/commit/fb635c1b23a1ad472e76604ad9ee502c8ebe453e), [`21f0490`](https://github.com/BeOnAuto/auto-engineer/commit/21f04909e0378673fe94180d3ff081e222120580), [`f5be819`](https://github.com/BeOnAuto/auto-engineer/commit/f5be8199bbcc358dd2f5d9940e404a55b32ef853), [`6f72c42`](https://github.com/BeOnAuto/auto-engineer/commit/6f72c4259c96da831e72348de005ff6e70140b61), [`98d70d8`](https://github.com/BeOnAuto/auto-engineer/commit/98d70d8116ec8e87bee34aa1e506ef77fa8ffd37), [`27df054`](https://github.com/BeOnAuto/auto-engineer/commit/27df054af29a314fdacef7dec2ffb15748d61036), [`4e58f58`](https://github.com/BeOnAuto/auto-engineer/commit/4e58f5859d4df96ff9944ec7411606769aaa38ff), [`a5615d9`](https://github.com/BeOnAuto/auto-engineer/commit/a5615d944a1836d80722452c50f10c955a664a90), [`8fc425d`](https://github.com/BeOnAuto/auto-engineer/commit/8fc425d6c53ed4bac3739f703edbd788eb1e3397), [`48a7155`](https://github.com/BeOnAuto/auto-engineer/commit/48a7155ccdfca8ad58028564d821902e2d1c7b0d), [`47a13ab`](https://github.com/BeOnAuto/auto-engineer/commit/47a13abe754ef572cedb578ef61bb3b1c07961e8), [`4ca9d54`](https://github.com/BeOnAuto/auto-engineer/commit/4ca9d5434af53f9bbffa6d8af61082534693cbd2)]:
|
|
119
|
+
- @auto-engineer/file-upload@1.104.0
|
|
120
|
+
- @auto-engineer/message-bus@1.104.0
|
|
121
|
+
|
|
3
122
|
## 1.103.0
|
|
4
123
|
|
|
5
124
|
### Minor Changes
|
|
@@ -14,6 +14,9 @@ importers:
|
|
|
14
14
|
'@hookform/resolvers':
|
|
15
15
|
specifier: ^5.2.2
|
|
16
16
|
version: 5.2.2(react-hook-form@7.71.1(react@19.2.4))
|
|
17
|
+
'@react-spring/web':
|
|
18
|
+
specifier: ^10.0.3
|
|
19
|
+
version: 10.0.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
|
17
20
|
'@tanstack/react-query':
|
|
18
21
|
specifier: ^5.90.19
|
|
19
22
|
version: 5.90.21(react@19.2.4)
|
|
@@ -1858,6 +1861,33 @@ packages:
|
|
|
1858
1861
|
'@radix-ui/rect@1.1.1':
|
|
1859
1862
|
resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==}
|
|
1860
1863
|
|
|
1864
|
+
'@react-spring/animated@10.0.3':
|
|
1865
|
+
resolution: {integrity: sha512-7MrxADV3vaUADn2V9iYhaIL6iOWRx9nCJjYrsk2AHD2kwPr6fg7Pt0v+deX5RnCDmCKNnD6W5fasiyM8D+wzJQ==}
|
|
1866
|
+
peerDependencies:
|
|
1867
|
+
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
|
1868
|
+
|
|
1869
|
+
'@react-spring/core@10.0.3':
|
|
1870
|
+
resolution: {integrity: sha512-D4DwNO68oohDf/0HG2G0Uragzb9IA1oXblxrd6MZAcBcUQG2EHUWXewjdECMPLNmQvlYVyyBRH6gPxXM5DX7DQ==}
|
|
1871
|
+
peerDependencies:
|
|
1872
|
+
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
|
1873
|
+
|
|
1874
|
+
'@react-spring/rafz@10.0.3':
|
|
1875
|
+
resolution: {integrity: sha512-Ri2/xqt8OnQ2iFKkxKMSF4Nqv0LSWnxXT4jXFzBDsHgeeH/cHxTLupAWUwmV9hAGgmEhBmh5aONtj3J6R/18wg==}
|
|
1876
|
+
|
|
1877
|
+
'@react-spring/shared@10.0.3':
|
|
1878
|
+
resolution: {integrity: sha512-geCal66nrkaQzUVhPkGomylo+Jpd5VPK8tPMEDevQEfNSWAQP15swHm+MCRG4wVQrQlTi9lOzKzpRoTL3CA84Q==}
|
|
1879
|
+
peerDependencies:
|
|
1880
|
+
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
|
1881
|
+
|
|
1882
|
+
'@react-spring/types@10.0.3':
|
|
1883
|
+
resolution: {integrity: sha512-H5Ixkd2OuSIgHtxuHLTt7aJYfhMXKXT/rK32HPD/kSrOB6q6ooeiWAXkBy7L8F3ZxdkBb9ini9zP9UwnEFzWgQ==}
|
|
1884
|
+
|
|
1885
|
+
'@react-spring/web@10.0.3':
|
|
1886
|
+
resolution: {integrity: sha512-ndU+kWY81rHsT7gTFtCJ6mrVhaJ6grFmgTnENipzmKqot4HGf5smPNK+cZZJqoGeDsj9ZsiWPW4geT/NyD484A==}
|
|
1887
|
+
peerDependencies:
|
|
1888
|
+
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
|
1889
|
+
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
|
|
1890
|
+
|
|
1861
1891
|
'@repeaterjs/repeater@3.0.6':
|
|
1862
1892
|
resolution: {integrity: sha512-Javneu5lsuhwNCryN+pXH93VPQ8g0dBX7wItHFgYiwQmzE1sVdg5tWHiOgHywzL2W21XQopa7IwIEnNbmeUJYA==}
|
|
1863
1893
|
|
|
@@ -6322,6 +6352,38 @@ snapshots:
|
|
|
6322
6352
|
|
|
6323
6353
|
'@radix-ui/rect@1.1.1': {}
|
|
6324
6354
|
|
|
6355
|
+
'@react-spring/animated@10.0.3(react@19.2.4)':
|
|
6356
|
+
dependencies:
|
|
6357
|
+
'@react-spring/shared': 10.0.3(react@19.2.4)
|
|
6358
|
+
'@react-spring/types': 10.0.3
|
|
6359
|
+
react: 19.2.4
|
|
6360
|
+
|
|
6361
|
+
'@react-spring/core@10.0.3(react@19.2.4)':
|
|
6362
|
+
dependencies:
|
|
6363
|
+
'@react-spring/animated': 10.0.3(react@19.2.4)
|
|
6364
|
+
'@react-spring/shared': 10.0.3(react@19.2.4)
|
|
6365
|
+
'@react-spring/types': 10.0.3
|
|
6366
|
+
react: 19.2.4
|
|
6367
|
+
|
|
6368
|
+
'@react-spring/rafz@10.0.3': {}
|
|
6369
|
+
|
|
6370
|
+
'@react-spring/shared@10.0.3(react@19.2.4)':
|
|
6371
|
+
dependencies:
|
|
6372
|
+
'@react-spring/rafz': 10.0.3
|
|
6373
|
+
'@react-spring/types': 10.0.3
|
|
6374
|
+
react: 19.2.4
|
|
6375
|
+
|
|
6376
|
+
'@react-spring/types@10.0.3': {}
|
|
6377
|
+
|
|
6378
|
+
'@react-spring/web@10.0.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
|
6379
|
+
dependencies:
|
|
6380
|
+
'@react-spring/animated': 10.0.3(react@19.2.4)
|
|
6381
|
+
'@react-spring/core': 10.0.3(react@19.2.4)
|
|
6382
|
+
'@react-spring/shared': 10.0.3(react@19.2.4)
|
|
6383
|
+
'@react-spring/types': 10.0.3
|
|
6384
|
+
react: 19.2.4
|
|
6385
|
+
react-dom: 19.2.4(react@19.2.4)
|
|
6386
|
+
|
|
6325
6387
|
'@repeaterjs/repeater@3.0.6': {}
|
|
6326
6388
|
|
|
6327
6389
|
'@rolldown/pluginutils@1.0.0-rc.2': {}
|
|
@@ -2,11 +2,14 @@ import { mkdirSync, writeFileSync } from 'node:fs';
|
|
|
2
2
|
import { dirname, resolve } from 'node:path';
|
|
3
3
|
import { fileURLToPath } from 'node:url';
|
|
4
4
|
import { parseArgs } from 'node:util';
|
|
5
|
+
import { createProject, parseManifestComponents } from '@auto-engineer/component-parser';
|
|
5
6
|
import { uploadToArtifactPath } from './upload-artifact';
|
|
6
7
|
|
|
7
8
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
9
|
+
const PROJECT_ROOT = resolve(__dirname, '..');
|
|
8
10
|
const OUTPUT_DIR = resolve(__dirname, '../../.context');
|
|
9
11
|
const OUTPUT_FILE = resolve(OUTPUT_DIR, 'components-db.json');
|
|
12
|
+
const TSCONFIG_PATH = resolve(PROJECT_ROOT, 'tsconfig.app.json');
|
|
10
13
|
|
|
11
14
|
const { values } = parseArgs({
|
|
12
15
|
options: { port: { type: 'string', default: '6006' } },
|
|
@@ -87,59 +90,6 @@ async function fetchWithRetry<T>(url: string, maxAttempts = 3): Promise<T> {
|
|
|
87
90
|
throw new Error('unreachable');
|
|
88
91
|
}
|
|
89
92
|
|
|
90
|
-
function merge(componentsJson: ComponentsManifest, indexJson: IndexJson) {
|
|
91
|
-
const entries = indexJson.entries ?? {};
|
|
92
|
-
|
|
93
|
-
const storysByComponent = new Map<string, IndexEntry[]>();
|
|
94
|
-
const docsByComponent = new Map<string, IndexEntry>();
|
|
95
|
-
|
|
96
|
-
for (const entry of Object.values(entries)) {
|
|
97
|
-
const componentId = entry.id.replace(/--.*$/, '');
|
|
98
|
-
|
|
99
|
-
if (entry.type === 'docs') {
|
|
100
|
-
docsByComponent.set(componentId, entry);
|
|
101
|
-
} else {
|
|
102
|
-
if (!storysByComponent.has(componentId)) storysByComponent.set(componentId, []);
|
|
103
|
-
storysByComponent.get(componentId)!.push(entry);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
const components = Object.values(componentsJson.components);
|
|
108
|
-
return components.map((component) => {
|
|
109
|
-
const indexStories = storysByComponent.get(component.id) ?? [];
|
|
110
|
-
const docsEntry = docsByComponent.get(component.id);
|
|
111
|
-
|
|
112
|
-
const firstStory = indexStories[0];
|
|
113
|
-
const merged: Record<string, unknown> = { ...component };
|
|
114
|
-
|
|
115
|
-
if (firstStory) {
|
|
116
|
-
merged.componentPath = firstStory.componentPath;
|
|
117
|
-
merged.title = firstStory.title;
|
|
118
|
-
merged.tags = firstStory.tags;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
if (component.stories) {
|
|
122
|
-
merged.stories = component.stories.map((story) => {
|
|
123
|
-
const match = indexStories.find((s) => s.name === story.name);
|
|
124
|
-
if (!match) return story;
|
|
125
|
-
return {
|
|
126
|
-
...story,
|
|
127
|
-
id: match.id,
|
|
128
|
-
exportName: match.exportName,
|
|
129
|
-
type: match.type,
|
|
130
|
-
subtype: match.subtype,
|
|
131
|
-
};
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
if (docsEntry) {
|
|
136
|
-
merged.docs = docsEntry;
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
return merged;
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
|
|
143
93
|
await checkStorybookRunning(PORT);
|
|
144
94
|
|
|
145
95
|
const [componentsJson, indexJson] = await Promise.all([
|
|
@@ -147,14 +97,24 @@ const [componentsJson, indexJson] = await Promise.all([
|
|
|
147
97
|
fetchWithRetry<IndexJson>(`http://localhost:${PORT}/index.json`),
|
|
148
98
|
]);
|
|
149
99
|
|
|
150
|
-
const
|
|
100
|
+
const project = createProject(TSCONFIG_PATH);
|
|
101
|
+
const componentPaths = Object.values(componentsJson.components).map((c) =>
|
|
102
|
+
c.path.replace(/\.stories\.(tsx?|jsx?)$/, '.$1'),
|
|
103
|
+
);
|
|
104
|
+
const parsedProps = parseManifestComponents(project, componentPaths, PROJECT_ROOT);
|
|
105
|
+
|
|
106
|
+
const payload = {
|
|
107
|
+
index: indexJson,
|
|
108
|
+
manifest: componentsJson,
|
|
109
|
+
props: parsedProps,
|
|
110
|
+
};
|
|
151
111
|
|
|
152
|
-
const json = `${JSON.stringify(
|
|
112
|
+
const json = `${JSON.stringify(payload, null, 2)}\n`;
|
|
153
113
|
|
|
154
114
|
mkdirSync(OUTPUT_DIR, { recursive: true });
|
|
155
115
|
writeFileSync(OUTPUT_FILE, json);
|
|
156
116
|
|
|
157
|
-
console.log(`Wrote ${
|
|
117
|
+
console.log(`Wrote ${Object.keys(componentsJson.components).length} components (${parsedProps.length} parsed) to ${OUTPUT_FILE}`);
|
|
158
118
|
|
|
159
119
|
const artifactUrl = await uploadToArtifactPath(json, process.env, { fetch });
|
|
160
120
|
if (artifactUrl) {
|