@azure-tools/typespec-ts 0.55.0-dev.2 → 0.55.0-dev.4
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/README.md +96 -24
- package/dist/src/framework/hooks/binder.d.ts.map +1 -1
- package/dist/src/framework/hooks/binder.js +3 -4
- package/dist/src/framework/hooks/binder.js.map +1 -1
- package/dist/src/framework/load-static-helpers.d.ts +4 -1
- package/dist/src/framework/load-static-helpers.d.ts.map +1 -1
- package/dist/src/framework/load-static-helpers.js +19 -15
- package/dist/src/framework/load-static-helpers.js.map +1 -1
- package/dist/src/framework/sample.js +1 -1
- package/dist/src/framework/sample.js.map +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +47 -28
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib.js +30 -31
- package/dist/src/lib.js.map +1 -1
- package/dist/src/modular/build-project-files.d.ts.map +1 -1
- package/dist/src/modular/build-project-files.js +4 -4
- package/dist/src/modular/build-project-files.js.map +1 -1
- package/dist/src/modular/build-restore-poller.js +2 -2
- package/dist/src/modular/build-restore-poller.js.map +1 -1
- package/dist/src/modular/build-root-index.d.ts.map +1 -1
- package/dist/src/modular/build-root-index.js +5 -6
- package/dist/src/modular/build-root-index.js.map +1 -1
- package/dist/src/modular/build-subpath-index.d.ts.map +1 -1
- package/dist/src/modular/build-subpath-index.js +4 -4
- package/dist/src/modular/build-subpath-index.js.map +1 -1
- package/dist/src/modular/emit-models-options.js +2 -2
- package/dist/src/modular/emit-models-options.js.map +1 -1
- package/dist/src/modular/emit-models.d.ts.map +1 -1
- package/dist/src/modular/emit-models.js +2 -3
- package/dist/src/modular/emit-models.js.map +1 -1
- package/dist/src/modular/emit-samples.d.ts.map +1 -1
- package/dist/src/modular/emit-samples.js +3 -4
- package/dist/src/modular/emit-samples.js.map +1 -1
- package/dist/src/modular/emit-tests.d.ts +2 -1
- package/dist/src/modular/emit-tests.d.ts.map +1 -1
- package/dist/src/modular/emit-tests.js +21 -11
- package/dist/src/modular/emit-tests.js.map +1 -1
- package/dist/src/modular/helpers/example-value-helpers.js +4 -4
- package/dist/src/modular/helpers/example-value-helpers.js.map +1 -1
- package/dist/src/rlc-common/build-client-definitions.js +3 -3
- package/dist/src/rlc-common/build-client-definitions.js.map +1 -1
- package/dist/src/rlc-common/build-client.js +4 -4
- package/dist/src/rlc-common/build-client.js.map +1 -1
- package/dist/src/rlc-common/build-index-file.js +3 -3
- package/dist/src/rlc-common/build-index-file.js.map +1 -1
- package/dist/src/rlc-common/build-is-unexpected-helper.js +3 -3
- package/dist/src/rlc-common/build-is-unexpected-helper.js.map +1 -1
- package/dist/src/rlc-common/build-logger.js +3 -3
- package/dist/src/rlc-common/build-logger.js.map +1 -1
- package/dist/src/rlc-common/build-paginate-helper.js +2 -2
- package/dist/src/rlc-common/build-paginate-helper.js.map +1 -1
- package/dist/src/rlc-common/build-parameter-types.js +3 -3
- package/dist/src/rlc-common/build-parameter-types.js.map +1 -1
- package/dist/src/rlc-common/build-polling-helper.js +2 -2
- package/dist/src/rlc-common/build-polling-helper.js.map +1 -1
- package/dist/src/rlc-common/build-response-types.js +3 -3
- package/dist/src/rlc-common/build-response-types.js.map +1 -1
- package/dist/src/rlc-common/build-samples.js +2 -2
- package/dist/src/rlc-common/build-samples.js.map +1 -1
- package/dist/src/rlc-common/build-schema-type.js +4 -4
- package/dist/src/rlc-common/build-schema-type.js.map +1 -1
- package/dist/src/rlc-common/build-serialize-helper.js +2 -2
- package/dist/src/rlc-common/build-serialize-helper.js.map +1 -1
- package/dist/src/rlc-common/build-top-level-index-file.js +3 -3
- package/dist/src/rlc-common/build-top-level-index-file.js.map +1 -1
- package/dist/src/rlc-common/helpers/path-utils.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/path-utils.js +1 -2
- package/dist/src/rlc-common/helpers/path-utils.js.map +1 -1
- package/dist/src/rlc-common/metadata/build-api-extractor-config.js +1 -1
- package/dist/src/rlc-common/metadata/build-api-extractor-config.js.map +1 -1
- package/dist/src/rlc-common/metadata/build-es-lint-config.js +1 -1
- package/dist/src/rlc-common/metadata/build-es-lint-config.js.map +1 -1
- package/dist/src/rlc-common/metadata/build-package-file.js +1 -1
- package/dist/src/rlc-common/metadata/build-package-file.js.map +1 -1
- package/dist/src/rlc-common/metadata/build-readme-file.d.ts +2 -2
- package/dist/src/rlc-common/metadata/build-readme-file.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/build-readme-file.js +11 -14
- package/dist/src/rlc-common/metadata/build-readme-file.js.map +1 -1
- package/dist/src/rlc-common/metadata/build-rollup-config.js +1 -1
- package/dist/src/rlc-common/metadata/build-rollup-config.js.map +1 -1
- package/dist/src/rlc-common/metadata/build-ts-config.js +1 -1
- package/dist/src/rlc-common/metadata/build-ts-config.js.map +1 -1
- package/dist/src/transform/transform.d.ts.map +1 -1
- package/dist/src/transform/transform.js +2 -3
- package/dist/src/transform/transform.js.map +1 -1
- package/dist/src/utils/emit-util.d.ts.map +1 -1
- package/dist/src/utils/emit-util.js +10 -5
- package/dist/src/utils/emit-util.js.map +1 -1
- package/dist/src/utils/file-system-utils.d.ts +4 -4
- package/dist/src/utils/file-system-utils.d.ts.map +1 -1
- package/dist/src/utils/file-system-utils.js +14 -16
- package/dist/src/utils/file-system-utils.js.map +1 -1
- package/dist/src/utils/import-helper.js +3 -3
- package/dist/src/utils/import-helper.js.map +1 -1
- package/dist/src/utils/resolve-project-root.d.ts +6 -4
- package/dist/src/utils/resolve-project-root.d.ts.map +1 -1
- package/dist/src/utils/resolve-project-root.js +11 -18
- package/dist/src/utils/resolve-project-root.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +26 -26
- package/src/framework/hooks/binder.ts +3 -4
- package/src/framework/load-static-helpers.ts +29 -18
- package/src/framework/sample.ts +1 -1
- package/src/index.ts +61 -28
- package/src/lib.ts +31 -31
- package/src/modular/build-project-files.ts +11 -4
- package/src/modular/build-restore-poller.ts +2 -2
- package/src/modular/build-root-index.ts +5 -6
- package/src/modular/build-subpath-index.ts +4 -4
- package/src/modular/emit-models-options.ts +2 -2
- package/src/modular/emit-models.ts +2 -3
- package/src/modular/emit-samples.ts +3 -4
- package/src/modular/emit-tests.ts +28 -11
- package/src/modular/helpers/example-value-helpers.ts +4 -4
- package/src/rlc-common/build-client-definitions.ts +3 -3
- package/src/rlc-common/build-client.ts +4 -4
- package/src/rlc-common/build-index-file.ts +3 -3
- package/src/rlc-common/build-is-unexpected-helper.ts +3 -3
- package/src/rlc-common/build-logger.ts +3 -3
- package/src/rlc-common/build-paginate-helper.ts +2 -2
- package/src/rlc-common/build-parameter-types.ts +3 -3
- package/src/rlc-common/build-polling-helper.ts +2 -2
- package/src/rlc-common/build-response-types.ts +3 -3
- package/src/rlc-common/build-samples.ts +2 -2
- package/src/rlc-common/build-schema-type.ts +4 -4
- package/src/rlc-common/build-serialize-helper.ts +2 -2
- package/src/rlc-common/build-top-level-index-file.ts +3 -3
- package/src/rlc-common/helpers/path-utils.ts +1 -3
- package/src/rlc-common/metadata/build-api-extractor-config.ts +1 -1
- package/src/rlc-common/metadata/build-es-lint-config.ts +1 -1
- package/src/rlc-common/metadata/build-package-file.ts +1 -1
- package/src/rlc-common/metadata/build-readme-file.ts +12 -15
- package/src/rlc-common/metadata/build-rollup-config.ts +1 -1
- package/src/rlc-common/metadata/build-ts-config.ts +1 -1
- package/src/transform/transform.ts +2 -3
- package/src/utils/emit-util.ts +10 -8
- package/src/utils/file-system-utils.ts +14 -15
- package/src/utils/import-helper.ts +3 -3
- package/src/utils/resolve-project-root.ts +11 -24
- package/dist/src/utils/dirname.d.ts +0 -9
- package/dist/src/utils/dirname.d.ts.map +0 -1
- package/dist/src/utils/dirname.js +0 -12
- package/dist/src/utils/dirname.js.map +0 -1
- package/src/utils/dirname.ts +0 -12
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@ An experimental TypeSpec emitter for TypeScript RLC
|
|
|
8
8
|
npm install @azure-tools/typespec-ts
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## Emitter usage
|
|
12
12
|
|
|
13
13
|
1. Via the command line
|
|
14
14
|
|
|
@@ -42,6 +42,12 @@ options:
|
|
|
42
42
|
Defines the emitter output directory. Defaults to `{output-dir}/@azure-tools/typespec-ts`
|
|
43
43
|
See [Configuring output directory for more info](https://typespec.io/docs/handbook/configuration/configuration/#configuring-output-directory)
|
|
44
44
|
|
|
45
|
+
### `include-headers-in-response`
|
|
46
|
+
|
|
47
|
+
**Type:** `boolean`
|
|
48
|
+
|
|
49
|
+
This option is used to indicate whether to include response headers in the generated response type. When set to true, the generated response type will include response headers as properties.
|
|
50
|
+
|
|
45
51
|
### `include-shortcuts`
|
|
46
52
|
|
|
47
53
|
**Type:** `boolean`
|
|
@@ -56,34 +62,45 @@ Deprecated option for RLC legacy generation.
|
|
|
56
62
|
|
|
57
63
|
### `batch`
|
|
58
64
|
|
|
59
|
-
**Type:** `
|
|
65
|
+
**Type:** `string[]`
|
|
60
66
|
|
|
61
67
|
Deprecated option for RLC legacy generation.
|
|
62
68
|
|
|
63
69
|
### `package-details`
|
|
64
70
|
|
|
65
|
-
**Type:** `object`
|
|
71
|
+
**Type:** `object { name, scopeName, nameWithoutScope, description, version, isVersionUserProvided }`
|
|
66
72
|
|
|
67
73
|
This is to indicate the package information such as package name, package description etc.
|
|
68
74
|
|
|
75
|
+
**Properties:**
|
|
76
|
+
|
|
77
|
+
| Name | Type | Default | Description |
|
|
78
|
+
| ----------------------- | --------- | ------- | ----------- |
|
|
79
|
+
| `name` | `string` | | |
|
|
80
|
+
| `scopeName` | `string` | | |
|
|
81
|
+
| `nameWithoutScope` | `string` | | |
|
|
82
|
+
| `description` | `string` | | |
|
|
83
|
+
| `version` | `string` | | |
|
|
84
|
+
| `isVersionUserProvided` | `boolean` | | |
|
|
85
|
+
|
|
69
86
|
### `add-credentials`
|
|
70
87
|
|
|
71
88
|
**Type:** `boolean`
|
|
72
89
|
|
|
73
|
-
|
|
90
|
+
We support two types of authentication: Azure Key Credential(AzureKey) and Token credential(AADToken), any other will need to be handled manually.
|
|
74
91
|
|
|
75
|
-
|
|
92
|
+
There are two ways to set up our credential details
|
|
76
93
|
|
|
77
|
-
|
|
78
|
-
|
|
94
|
+
- To use `@useAuth` decorator in TypeSpec
|
|
95
|
+
- To config in yaml file
|
|
79
96
|
|
|
80
|
-
|
|
97
|
+
Please notice defining in TypeSpec is recommended and also has higher priority than second one.
|
|
81
98
|
|
|
82
|
-
|
|
99
|
+
To enable credential in `tspconfig.yaml` and we need to provide more details to let codegen know types.
|
|
83
100
|
|
|
84
101
|
### `credential-scopes`
|
|
85
102
|
|
|
86
|
-
**Type:** `
|
|
103
|
+
**Type:** `string[]`
|
|
87
104
|
|
|
88
105
|
If we enable the option `add-credentials` and specify `credential-scopes` the details we would enable the AADToken authentication.
|
|
89
106
|
|
|
@@ -109,17 +126,18 @@ This option is used for special Key Auth, when the key has a shared prefix and t
|
|
|
109
126
|
|
|
110
127
|
**Type:** `boolean`
|
|
111
128
|
|
|
112
|
-
|
|
129
|
+
Whether to generate metadata files which includes package.json, README.md and tsconfig.json etc. Defaults to `undefined`. If there's not a package.json under package-dir, defaults to `true`. but if you'd like to disable this feature you could set it as `false`.
|
|
113
130
|
|
|
114
131
|
### `generate-test`
|
|
115
132
|
|
|
116
133
|
**Type:** `boolean`
|
|
117
134
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
135
|
+
Whether to generate test files, for basic testing of your generated sdks. Defaults to `undefined`.
|
|
136
|
+
other cases:
|
|
137
|
+
|
|
138
|
+
- If azure-sdk-for-js is `false`. Defaults to `false`.
|
|
139
|
+
- If azure-sdk-for-js is `true` but there's a test folder under package-dir. Defaults to `false`.
|
|
140
|
+
- If azure-sdk-for-js is `true` but there's not a test folder under package-dir. Defaults to `true`.
|
|
123
141
|
|
|
124
142
|
### `generate-sample`
|
|
125
143
|
|
|
@@ -153,10 +171,17 @@ Deprecated option for RLC legacy generation.
|
|
|
153
171
|
|
|
154
172
|
### `dependency-info`
|
|
155
173
|
|
|
156
|
-
**Type:** `object`
|
|
174
|
+
**Type:** `object { link, description }`
|
|
157
175
|
|
|
158
176
|
Deprecated option for RLC legacy generation.
|
|
159
177
|
|
|
178
|
+
**Properties:**
|
|
179
|
+
|
|
180
|
+
| Name | Type | Default | Description |
|
|
181
|
+
| ------------- | -------- | ------- | ----------- |
|
|
182
|
+
| `link` | `string` | | |
|
|
183
|
+
| `description` | `string` | | |
|
|
184
|
+
|
|
160
185
|
### `product-doc-link`
|
|
161
186
|
|
|
162
187
|
**Type:** `string`
|
|
@@ -165,10 +190,17 @@ Deprecated option for RLC legacy generation.
|
|
|
165
190
|
|
|
166
191
|
### `service-info`
|
|
167
192
|
|
|
168
|
-
**Type:** `object`
|
|
193
|
+
**Type:** `object { title, description }`
|
|
169
194
|
|
|
170
195
|
Deprecated option for RLC legacy generation.
|
|
171
196
|
|
|
197
|
+
**Properties:**
|
|
198
|
+
|
|
199
|
+
| Name | Type | Default | Description |
|
|
200
|
+
| ------------- | -------- | ------- | ----------- |
|
|
201
|
+
| `title` | `string` | | |
|
|
202
|
+
| `description` | `string` | | |
|
|
203
|
+
|
|
172
204
|
### `azure-arm`
|
|
173
205
|
|
|
174
206
|
**Type:** `boolean`
|
|
@@ -185,6 +217,8 @@ Internal option, the value is default for TypeSpec generation
|
|
|
185
217
|
|
|
186
218
|
**Type:** `boolean`
|
|
187
219
|
|
|
220
|
+
**Default:** `false`
|
|
221
|
+
|
|
188
222
|
Whether to generate a Modular library. Defaults to `false`. Arm packages default to `true`.
|
|
189
223
|
|
|
190
224
|
### `enable-operation-group`
|
|
@@ -219,7 +253,9 @@ The flavor of the SDK.
|
|
|
219
253
|
|
|
220
254
|
### `module-kind`
|
|
221
255
|
|
|
222
|
-
**Type:** `"esm"
|
|
256
|
+
**Type:** `"esm"`
|
|
257
|
+
|
|
258
|
+
**Default:** `"esm"`
|
|
223
259
|
|
|
224
260
|
Internal option for test.
|
|
225
261
|
|
|
@@ -229,6 +265,12 @@ Internal option for test.
|
|
|
229
265
|
|
|
230
266
|
Whether to affect the generation of the additional property feature for the Modular client. Defaults to `false`.
|
|
231
267
|
|
|
268
|
+
### `compatibility-lro`
|
|
269
|
+
|
|
270
|
+
**Type:** `boolean`
|
|
271
|
+
|
|
272
|
+
[deprecated] Whether to generate the legacy LRO interface. When `true`, we will generate legacy beginXXX and beginXXXAndWait LRO methods.
|
|
273
|
+
|
|
232
274
|
### `experimental-extensible-enums`
|
|
233
275
|
|
|
234
276
|
**Type:** `boolean`
|
|
@@ -272,14 +314,44 @@ Deprecated option for RLC legacy generation.
|
|
|
272
314
|
Only for Modular generation
|
|
273
315
|
By default, code generation uses the titles specified in the `@client` and `@service` decorators in TypeSpec to name modular clients. If you need to override these names, you can configure the `typespec-title-map`. The map's keys represent the original client names from TypeSpec, and the values are the desired client names. This configuration supports renaming multiple clients.
|
|
274
316
|
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
317
|
+
```yaml
|
|
318
|
+
typespec-title-map:
|
|
319
|
+
AnomalyDetectorClient: AnomalyDetectorRest
|
|
320
|
+
AnomalyDetectorClient2: AnomalyDetectorRest2
|
|
321
|
+
```
|
|
280
322
|
|
|
281
323
|
### `should-use-pnpm-dep`
|
|
282
324
|
|
|
283
325
|
**Type:** `boolean`
|
|
284
326
|
|
|
285
327
|
Internal option for test.
|
|
328
|
+
|
|
329
|
+
### `ignore-nullable-on-optional`
|
|
330
|
+
|
|
331
|
+
**Type:** `boolean`
|
|
332
|
+
|
|
333
|
+
If an optional property is also marked as nullable, it will be treated as just optional. Defaults to `true` for Azure services.
|
|
334
|
+
|
|
335
|
+
### `wrap-non-model-return`
|
|
336
|
+
|
|
337
|
+
**Type:** `boolean`
|
|
338
|
+
|
|
339
|
+
When set to true (default for Azure services), non-model return types (arrays, scalars, enums, bytes with binary content type) will be wrapped in an XxxResponse type for HLC backward compatibility during TypeSpec migration.
|
|
340
|
+
|
|
341
|
+
### `enable-storage-compat`
|
|
342
|
+
|
|
343
|
+
**Type:** `boolean`
|
|
344
|
+
|
|
345
|
+
When enabled, every regular (non-LRO, non-paging) operation return type is augmented with a `_response` property containing `rawResponse` (PathUncheckedResponse), `parsedBody`, and `parsedHeaders`. Defaults to `false`.
|
|
346
|
+
|
|
347
|
+
### `treat-unknown-as-record`
|
|
348
|
+
|
|
349
|
+
**Type:** `boolean`
|
|
350
|
+
|
|
351
|
+
When set to true, TypeSpec `unknown` type will be translated to `Record<string, unknown>` instead of `any` in the generated Modular SDK. This is useful when migrating from HLC where `unknown` in swagger mapped to `Record<string, unknown>`. (Modular SDK only) Defaults to `false`.
|
|
352
|
+
|
|
353
|
+
### `generate-react-native-target`
|
|
354
|
+
|
|
355
|
+
**Type:** `boolean`
|
|
356
|
+
|
|
357
|
+
When set to true, generates React Native build targets (tsconfig, warp target, package.json exports). Only applicable when azure-sdk-for-js is true. Defaults to `false`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binder.d.ts","sourceRoot":"","sources":["../../../../src/framework/hooks/binder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"binder.d.ts","sourceRoot":"","sources":["../../../../src/framework/hooks/binder.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,OAAO,EACP,UAAU,EAEX,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAoB,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAInF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACnD;qFACiF;IACjF,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,MAAM;IACrB;;;;;;OAMG;IACH,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC;IAChF,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1C,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnE;AA0VD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,aAAkB,GAAG,MAAM,CAInF;AAWD;;;GAGG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { normalizePath } from "@typespec/compiler";
|
|
2
|
-
import path from "path/posix";
|
|
1
|
+
import { joinPaths, normalizePath } from "@typespec/compiler";
|
|
3
2
|
import { StructureKind, } from "ts-morph";
|
|
4
3
|
import { provideContext, useContext } from "../../context-manager.js";
|
|
5
4
|
import { generateLocallyUniqueName } from "../../modular/helpers/naming-helpers.js";
|
|
@@ -258,7 +257,7 @@ class BinderImp {
|
|
|
258
257
|
}
|
|
259
258
|
}
|
|
260
259
|
// Also keep files that are imported by any used helper file
|
|
261
|
-
const helperFiles = this.project.getSourceFiles(normalizePath(
|
|
260
|
+
const helperFiles = this.project.getSourceFiles(normalizePath(joinPaths(sourceRoot, "static-helpers/**/*.*ts")));
|
|
262
261
|
const usedFiles = helperFiles.filter((file) => !isFileUnused(file, usedHelperNames));
|
|
263
262
|
for (const usedFile of usedFiles) {
|
|
264
263
|
for (const importDecl of usedFile.getImportDeclarations()) {
|
|
@@ -279,7 +278,7 @@ class BinderImp {
|
|
|
279
278
|
}
|
|
280
279
|
this.project
|
|
281
280
|
//normalizae the final path to adapt to different systems
|
|
282
|
-
.getSourceFiles(normalizePath(
|
|
281
|
+
.getSourceFiles(normalizePath(joinPaths(testRoot, "test/generated/util/**/*.*ts")))
|
|
283
282
|
.filter((file) => isFileUnused(file, usedHelperNames))
|
|
284
283
|
.forEach((helperFile) => helperFile.delete());
|
|
285
284
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binder.js","sourceRoot":"","sources":["../../../../src/framework/hooks/binder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"binder.js","sourceRoot":"","sources":["../../../../src/framework/hooks/binder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Program } from "@typespec/compiler";
|
|
1
|
+
import { type CompilerHost, Program } from "@typespec/compiler";
|
|
2
2
|
import { Project, SourceFile } from "ts-morph";
|
|
3
3
|
import { ModularEmitterOptions } from "../modular/interfaces.js";
|
|
4
4
|
export declare const SourceFileSymbol: unique symbol;
|
|
@@ -15,6 +15,9 @@ export interface LoadStaticHelpersOptions extends Partial<ModularEmitterOptions>
|
|
|
15
15
|
sourcesDir?: string;
|
|
16
16
|
rootDir?: string;
|
|
17
17
|
program?: Program;
|
|
18
|
+
host?: CompilerHost;
|
|
19
|
+
/** The emitter package root directory (where static/ lives). */
|
|
20
|
+
packageRoot?: string;
|
|
18
21
|
/** When true, also load test helpers from static/test-helpers/ into test/generated/util/ */
|
|
19
22
|
loadTestHelpers?: boolean;
|
|
20
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-static-helpers.d.ts","sourceRoot":"","sources":["../../../src/framework/load-static-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"load-static-helpers.d.ts","sourceRoot":"","sources":["../../../src/framework/load-static-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAuB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAKL,OAAO,EACP,UAAU,EAEX,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAIjE,eAAO,MAAM,gBAAgB,eAAuB,CAAC;AACrD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,CAAC,gBAAgB,CAAC,CAAC,EAAE,UAAU,CAAC;CACjC;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,GAAG,GAAG,QAAQ,IAAI,oBAAoB,CAItF;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;AAKjE,MAAM,WAAW,wBAAyB,SAAQ,OAAO,CAAC,qBAAqB,CAAC;IAC9E,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4FAA4F;IAC5F,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAOD,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,aAAa,EACtB,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CA0F5C"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { NoTarget } from "@typespec/compiler";
|
|
2
|
-
import { readdir, readFile, stat } from "fs/promises";
|
|
3
|
-
import * as path from "path";
|
|
1
|
+
import { joinPaths, NoTarget } from "@typespec/compiler";
|
|
4
2
|
import { reportDiagnostic } from "../lib.js";
|
|
5
3
|
import { isAzurePackage } from "../rlc-common/index.js";
|
|
6
4
|
import { resolveProjectRoot } from "../utils/resolve-project-root.js";
|
|
@@ -13,22 +11,28 @@ const DEFAULT_SOURCES_STATIC_HELPERS_PATH = "static/static-helpers";
|
|
|
13
11
|
const DEFAULT_SOURCES_TESTING_HELPERS_PATH = "static/test-helpers";
|
|
14
12
|
export async function loadStaticHelpers(project, helpers, options = {}) {
|
|
15
13
|
const helpersMap = new Map();
|
|
14
|
+
const host = options.host ?? options.program?.host;
|
|
15
|
+
if (!host) {
|
|
16
|
+
throw new Error("loadStaticHelpers requires either a host or program in options to access the file system.");
|
|
17
|
+
}
|
|
18
|
+
const packageRoot = options.packageRoot ?? resolveProjectRoot();
|
|
16
19
|
// Load static helpers used in sources code
|
|
17
|
-
const defaultStaticHelpersPath =
|
|
18
|
-
const filesInSources = await traverseDirectory(options.helpersAssetDirectory ?? defaultStaticHelpersPath, options.program);
|
|
20
|
+
const defaultStaticHelpersPath = joinPaths(packageRoot, DEFAULT_SOURCES_STATIC_HELPERS_PATH);
|
|
21
|
+
const filesInSources = await traverseDirectory(options.helpersAssetDirectory ?? defaultStaticHelpersPath, host, options.program);
|
|
19
22
|
await loadFiles(filesInSources, options.sourcesDir ?? "");
|
|
20
23
|
// Load static helpers used in testing code (only when loadTestHelpers is enabled)
|
|
21
24
|
if (options.loadTestHelpers ??
|
|
22
25
|
(options.options?.generateTest && isAzurePackage({ options: options.options }))) {
|
|
23
|
-
const defaultTestingHelpersPath =
|
|
24
|
-
const filesInTestings = await traverseDirectory(defaultTestingHelpersPath, options.program, [], "", "test/generated/util");
|
|
26
|
+
const defaultTestingHelpersPath = joinPaths(packageRoot, DEFAULT_SOURCES_TESTING_HELPERS_PATH);
|
|
27
|
+
const filesInTestings = await traverseDirectory(defaultTestingHelpersPath, host, options.program, [], "", "test/generated/util");
|
|
25
28
|
await loadFiles(filesInTestings, options.rootDir ?? "");
|
|
26
29
|
}
|
|
27
30
|
return assertAllHelpersLoadedPresent(helpersMap);
|
|
28
31
|
async function loadFiles(files, generateDir) {
|
|
29
32
|
for (const file of files) {
|
|
30
|
-
const targetPath =
|
|
31
|
-
const
|
|
33
|
+
const targetPath = joinPaths(generateDir, file.target);
|
|
34
|
+
const sourceFile = await host.readFile(file.source);
|
|
35
|
+
const contents = sourceFile.text;
|
|
32
36
|
const addedFile = project.createSourceFile(targetPath, contents, {
|
|
33
37
|
overwrite: true,
|
|
34
38
|
});
|
|
@@ -101,17 +105,17 @@ function getDeclarationByMetadata(file, declaration) {
|
|
|
101
105
|
}
|
|
102
106
|
}
|
|
103
107
|
const _targetStaticHelpersBaseDir = "static-helpers";
|
|
104
|
-
async function traverseDirectory(directory, program, result = [], relativePath = "", targetBaseDir = _targetStaticHelpersBaseDir) {
|
|
108
|
+
async function traverseDirectory(directory, host, program, result = [], relativePath = "", targetBaseDir = _targetStaticHelpersBaseDir) {
|
|
105
109
|
try {
|
|
106
|
-
const files = await
|
|
110
|
+
const files = await host.readDir(directory);
|
|
107
111
|
await Promise.all(files.map(async (file) => {
|
|
108
|
-
const filePath =
|
|
109
|
-
const fileStat = await stat(filePath);
|
|
112
|
+
const filePath = joinPaths(directory, file);
|
|
113
|
+
const fileStat = await host.stat(filePath);
|
|
110
114
|
if (fileStat.isDirectory()) {
|
|
111
|
-
await traverseDirectory(filePath, program, result,
|
|
115
|
+
await traverseDirectory(filePath, host, program, result, joinPaths(relativePath, file), targetBaseDir);
|
|
112
116
|
}
|
|
113
117
|
else if (fileStat.isFile() && !file.endsWith(".d.ts") && /.*\..?ts$/.test(file)) {
|
|
114
|
-
const target =
|
|
118
|
+
const target = joinPaths(targetBaseDir, relativePath, file);
|
|
115
119
|
result.push({ source: filePath, target });
|
|
116
120
|
}
|
|
117
121
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-static-helpers.js","sourceRoot":"","sources":["../../../src/framework/load-static-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAW,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"load-static-helpers.js","sourceRoot":"","sources":["../../../src/framework/load-static-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { addDeclaration } from "./declaration.js";
|
|
|
3
3
|
import { useBinder } from "./hooks/binder.js";
|
|
4
4
|
import { resolveReference } from "./reference.js";
|
|
5
5
|
// Create a new ts-morph project
|
|
6
|
-
const project = new Project();
|
|
6
|
+
const project = new Project({ useInMemoryFileSystem: true });
|
|
7
7
|
// Create a source file
|
|
8
8
|
const sourceFile = project.createSourceFile("test.ts", "", { overwrite: true });
|
|
9
9
|
// Initialize the binder
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sample.js","sourceRoot":"","sources":["../../../src/framework/sample.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,OAAO,EACP,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,gCAAgC;AAChC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"sample.js","sourceRoot":"","sources":["../../../src/framework/sample.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,OAAO,EACP,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,gCAAgC;AAChC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;AAE7D,uBAAuB;AACvB,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAEhF,wBAAwB;AACxB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;AAE3B,mHAAmH;AACnH,+JAA+J;AAC/J,MAAM,SAAS,GAAG;IAChB,IAAI,EAAE,aAAa;IACnB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;CAC7C,CAAC;AAEF,0BAA0B;AAC1B,MAAM,YAAY,GAAG;IACnB,IAAI,EAAE,YAAY;IAClB,UAAU,EAAE,MAAM;IAClB,IAAI,EAAE,6BAA6B;CACpC,CAAC;AAEF,mKAAmK;AACnK,MAAM,oBAAoB,GAAkC;IAC1D,IAAI,EAAE,aAAa,CAAC,SAAS;IAC7B,IAAI,EAAE,SAAS,CAAC,IAAI;IACpB,UAAU,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3C,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;KACb,CAAC,CAAC;CACJ,CAAC;AAEF,0CAA0C;AAC1C,MAAM,mBAAmB,GAAiC;IACxD,IAAI,EAAE,aAAa,CAAC,QAAQ;IAC5B,IAAI,EAAE,YAAY,CAAC,IAAI;IACvB,UAAU,EAAE,YAAY,CAAC,UAAU;IACnC,UAAU,EAAE,YAAY,CAAC,IAAI;CAC9B,CAAC;AAEF,6IAA6I;AAC7I,yIAAyI;AACzI,cAAc,CAAC,UAAU,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAC;AAC5D,cAAc,CAAC,UAAU,EAAE,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAE9D,6BAA6B;AAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,EAAE;IAC3D,SAAS,EAAE,IAAI;CAChB,CAAC,CAAC;AAEH,sDAAsD;AACtD,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;AACzD,MAAM,cAAc,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAEnD,WAAW,CAAC,aAAa,CAAC,GAAG,iBAAiB,KAAK,CAAC,CAAC;AACrD,WAAW,CAAC,aAAa,CAAC,YAAY,cAAc,eAAe,CAAC,CAAC;AAErE,6CAA6C;AAC7C,MAAM,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,CAAC;AAEzD,SAAS;AACT,UAAU;AACV,0BAA0B;AAC1B,kBAAkB;AAClB,IAAI;AAEJ,gCAAgC;AAChC,kCAAkC;AAClC,IAAI;AAEJ,cAAc;AACd,oDAAoD;AAEpD,gBAAgB;AAChB,oCAAoC"}
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,EAOZ,MAAM,oBAAoB,CAAC;AAsE5B,OAAO,EAAuB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EACL,aAAa,EACb,mBAAmB,EAGpB,MAAM,6CAA6C,CAAC;AAoBrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAWhE,cAAc,UAAU,CAAC;AAEzB,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,iBA8kBjD;AAED,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GACxC,OAAO,CAAC,UAAU,CAAC,CA2BrB;AAQD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAC1C,cAAc,EAAE,qBAAqB,iBAQtC"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
|
+
import { getBaseFileName, getDirectoryPath, joinPaths, resolvePath, } from "@typespec/compiler";
|
|
3
4
|
import { provideContext, useContext } from "./context-manager.js";
|
|
4
5
|
import { buildRootIndex, buildSubClientIndexFile } from "./modular/build-root-index.js";
|
|
5
6
|
import { AzureCoreDependencies, AzureIdentityDependencies, AzurePollingDependencies, AzureTestDependencies, DefaultCoreDependencies, } from "./modular/external-dependencies.js";
|
|
@@ -8,8 +9,6 @@ import { buildApiExtractorConfig, buildChangelogFile, buildClient, buildClientDe
|
|
|
8
9
|
import { emitContentByBuilder, emitModels } from "./utils/emit-util.js";
|
|
9
10
|
import { clearDirectory, emptyDir, pathExists } from "./utils/file-system-utils.js";
|
|
10
11
|
import { createSdkContext, listAllServiceNamespaces, } from "@azure-tools/typespec-client-generator-core";
|
|
11
|
-
import { existsSync } from "fs";
|
|
12
|
-
import { basename, join } from "path";
|
|
13
12
|
import { Project } from "ts-morph";
|
|
14
13
|
import { provideBinder } from "./framework/hooks/binder.js";
|
|
15
14
|
import { provideSdkTypes } from "./framework/hooks/sdk-types.js";
|
|
@@ -39,8 +38,15 @@ export async function $onEmit(context) {
|
|
|
39
38
|
return;
|
|
40
39
|
}
|
|
41
40
|
/** Shared status */
|
|
42
|
-
const outputProject = new Project();
|
|
41
|
+
const outputProject = new Project({ useInMemoryFileSystem: true });
|
|
43
42
|
const program = context.program;
|
|
43
|
+
const host = program.host;
|
|
44
|
+
// Derive the emitter package root from the compiler's resolved emitter entry point.
|
|
45
|
+
// This works correctly in both Node.js and the browser playground VFS.
|
|
46
|
+
const emitterRef = program.emitters.find((e) => e.metadata.name === "@azure-tools/typespec-ts");
|
|
47
|
+
const emitterPackageRoot = emitterRef
|
|
48
|
+
? resolvePath(getDirectoryPath(emitterRef.main), "../..")
|
|
49
|
+
: undefined;
|
|
44
50
|
const emitterOptions = context.options;
|
|
45
51
|
const dpgContext = await createContextWithDefaultOptions(context);
|
|
46
52
|
// Report any diagnostics from TCGC
|
|
@@ -76,6 +82,8 @@ export async function $onEmit(context) {
|
|
|
76
82
|
rootDir: dpgContext.generationPathDetail?.rootDir,
|
|
77
83
|
options: rlcOptions,
|
|
78
84
|
program,
|
|
85
|
+
host,
|
|
86
|
+
packageRoot: emitterPackageRoot,
|
|
79
87
|
});
|
|
80
88
|
const extraDependencies = isAzurePackage({ options: rlcOptions })
|
|
81
89
|
? {
|
|
@@ -125,9 +133,9 @@ export async function $onEmit(context) {
|
|
|
125
133
|
// clear output folder if needed
|
|
126
134
|
if (options.clearOutputFolder) {
|
|
127
135
|
// Clear output directory while preserving TempTypeSpecFiles
|
|
128
|
-
await clearDirectory(context.emitterOutputDir, ["TempTypeSpecFiles"], program);
|
|
136
|
+
await clearDirectory(host, context.emitterOutputDir, ["TempTypeSpecFiles"], program);
|
|
129
137
|
}
|
|
130
|
-
const hasTestFolder = await pathExists(
|
|
138
|
+
const hasTestFolder = await pathExists(host, joinPaths(dpgContext.generationPathDetail?.metadataDir ?? "", "test"));
|
|
131
139
|
options.generateTest =
|
|
132
140
|
options.generateTest === true ||
|
|
133
141
|
(options.generateTest === undefined &&
|
|
@@ -137,15 +145,15 @@ export async function $onEmit(context) {
|
|
|
137
145
|
}
|
|
138
146
|
async function calculateGenerationDir() {
|
|
139
147
|
const projectRoot = context.emitterOutputDir ?? "";
|
|
140
|
-
const customizationFolder =
|
|
141
|
-
const srcGeneratedFolder =
|
|
148
|
+
const customizationFolder = joinPaths(projectRoot, "generated");
|
|
149
|
+
const srcGeneratedFolder = joinPaths(projectRoot, "src", "generated");
|
|
142
150
|
// if customization folder exists, use it as sources root
|
|
143
|
-
const finalCustomizationFolder = (await pathExists(srcGeneratedFolder))
|
|
151
|
+
const finalCustomizationFolder = (await pathExists(host, srcGeneratedFolder))
|
|
144
152
|
? srcGeneratedFolder
|
|
145
153
|
: customizationFolder;
|
|
146
|
-
const sourcesRoot = (await pathExists(finalCustomizationFolder))
|
|
154
|
+
const sourcesRoot = (await pathExists(host, finalCustomizationFolder))
|
|
147
155
|
? finalCustomizationFolder
|
|
148
|
-
:
|
|
156
|
+
: joinPaths(projectRoot, "src");
|
|
149
157
|
return {
|
|
150
158
|
rootDir: projectRoot,
|
|
151
159
|
metadataDir: projectRoot,
|
|
@@ -154,15 +162,15 @@ export async function $onEmit(context) {
|
|
|
154
162
|
};
|
|
155
163
|
}
|
|
156
164
|
async function clearSrcFolder() {
|
|
157
|
-
await emptyDir(dpgContext.generationPathDetail?.modularSourcesDir ??
|
|
165
|
+
await emptyDir(host, dpgContext.generationPathDetail?.modularSourcesDir ??
|
|
158
166
|
dpgContext.generationPathDetail?.rlcSourcesDir ??
|
|
159
167
|
"");
|
|
160
168
|
}
|
|
161
169
|
async function clearSamplesDevFolder() {
|
|
162
170
|
if (emitterOptions["generate-sample"] === true) {
|
|
163
|
-
const samplesDevPath =
|
|
164
|
-
if (await pathExists(samplesDevPath)) {
|
|
165
|
-
await emptyDir(samplesDevPath);
|
|
171
|
+
const samplesDevPath = joinPaths(dpgContext.generationPathDetail?.rootDir ?? "", "samples-dev");
|
|
172
|
+
if (await pathExists(host, samplesDevPath)) {
|
|
173
|
+
await emptyDir(host, samplesDevPath);
|
|
166
174
|
}
|
|
167
175
|
}
|
|
168
176
|
}
|
|
@@ -209,7 +217,7 @@ export async function $onEmit(context) {
|
|
|
209
217
|
// platform-types (and its browser/react-native variants); emit those
|
|
210
218
|
// files directly under src/ (strip the static-helpers/ segment) to match
|
|
211
219
|
// the RLC design where all generated output lives in src/.
|
|
212
|
-
if (!
|
|
220
|
+
if (!getBaseFileName(filePath).startsWith("platform-types")) {
|
|
213
221
|
continue;
|
|
214
222
|
}
|
|
215
223
|
const outputPath = filePath.replace(/\/static-helpers\//g, "/");
|
|
@@ -318,18 +326,18 @@ export async function $onEmit(context) {
|
|
|
318
326
|
// to avoid unexpected modifications to files like package.json, README.md,
|
|
319
327
|
// warp.config.yml, and snippets.spec.ts. metadata.json is still updated.
|
|
320
328
|
const sourcesDir = dpgContext.generationPathDetail?.modularSourcesDir ?? "";
|
|
321
|
-
const hasManualConvenienceLayer =
|
|
329
|
+
const hasManualConvenienceLayer = getBaseFileName(sourcesDir) === "generated";
|
|
322
330
|
const isAzureFlavor = isAzurePackage({ options: option });
|
|
323
331
|
// Generate metadata
|
|
324
|
-
const existingPackageFilePath =
|
|
325
|
-
const hasPackageFile = await
|
|
326
|
-
const existingReadmeFilePath =
|
|
327
|
-
const hasReadmeFile = await
|
|
328
|
-
const existingChangelogFilePath =
|
|
329
|
-
const hasChangelogFile = await
|
|
332
|
+
const existingPackageFilePath = joinPaths(dpgContext.generationPathDetail?.metadataDir ?? "", "package.json");
|
|
333
|
+
const hasPackageFile = await pathExists(host, existingPackageFilePath);
|
|
334
|
+
const existingReadmeFilePath = joinPaths(dpgContext.generationPathDetail?.metadataDir ?? "", "README.md");
|
|
335
|
+
const hasReadmeFile = await pathExists(host, existingReadmeFilePath);
|
|
336
|
+
const existingChangelogFilePath = joinPaths(dpgContext.generationPathDetail?.metadataDir ?? "", "CHANGELOG.md");
|
|
337
|
+
const hasChangelogFile = await pathExists(host, existingChangelogFilePath);
|
|
330
338
|
const shouldGenerateMetadata = option.generateMetadata === true || !hasPackageFile;
|
|
331
|
-
const existingTestFolderPath =
|
|
332
|
-
const hasTestFolder = await
|
|
339
|
+
const existingTestFolderPath = joinPaths(dpgContext.generationPathDetail?.metadataDir ?? "", "test");
|
|
340
|
+
const hasTestFolder = await pathExists(host, existingTestFolderPath);
|
|
333
341
|
if (option.generateTest === undefined) {
|
|
334
342
|
if (hasTestFolder) {
|
|
335
343
|
option.generateTest = false;
|
|
@@ -367,7 +375,7 @@ export async function $onEmit(context) {
|
|
|
367
375
|
if (emitterOptions["generate-test"] === true &&
|
|
368
376
|
option.azureSdkForJs === true &&
|
|
369
377
|
emitterOptions["generate-metadata"] === true) {
|
|
370
|
-
await emitTests(dpgContext);
|
|
378
|
+
await emitTests(dpgContext, host);
|
|
371
379
|
}
|
|
372
380
|
let modularPackageInfo = {};
|
|
373
381
|
if (option.isModularLibrary) {
|
|
@@ -454,7 +462,16 @@ export async function $onEmit(context) {
|
|
|
454
462
|
// Always update package.json for monorepo packages (adds #platform/* imports)
|
|
455
463
|
// and for modular packages (adds exports, clientContextPaths, LRO deps)
|
|
456
464
|
if (option.isModularLibrary || option.azureSdkForJs) {
|
|
457
|
-
|
|
465
|
+
// Read package.json content via host and pass parsed object
|
|
466
|
+
const pkgSourceFile = await host.readFile(existingPackageFilePath);
|
|
467
|
+
let packageInfo;
|
|
468
|
+
try {
|
|
469
|
+
packageInfo = JSON.parse(pkgSourceFile.text);
|
|
470
|
+
}
|
|
471
|
+
catch {
|
|
472
|
+
packageInfo = {};
|
|
473
|
+
}
|
|
474
|
+
updateBuilders.push((model) => updatePackageFile(model, packageInfo, modularPackageInfo));
|
|
458
475
|
}
|
|
459
476
|
// Update warp.config.yml for Azure monorepo packages
|
|
460
477
|
if (option.azureSdkForJs) {
|
|
@@ -463,10 +480,12 @@ export async function $onEmit(context) {
|
|
|
463
480
|
// If the client name changed, regenerate the README and snippets completely;
|
|
464
481
|
// otherwise update only the API reference link in-place.
|
|
465
482
|
if (hasReadmeFile) {
|
|
466
|
-
const
|
|
483
|
+
const readmeSourceFile = await host.readFile(existingReadmeFilePath);
|
|
484
|
+
const existingReadmeContent = readmeSourceFile.text;
|
|
485
|
+
const clientNameChanged = hasClientNameChanged(rlcClient, existingReadmeContent);
|
|
467
486
|
updateBuilders.push(clientNameChanged
|
|
468
487
|
? buildReadmeFile
|
|
469
|
-
: (model) => updateReadmeFile(model,
|
|
488
|
+
: (model) => updateReadmeFile(model, existingReadmeContent));
|
|
470
489
|
// Regenerate snippets.spec.ts only when the client name changed
|
|
471
490
|
if (clientNameChanged && option.azureSdkForJs) {
|
|
472
491
|
for (const subClient of dpgContext.sdkPackage.clients) {
|