@intlayer/swc 9.4.4 β 9.5.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/README.md
CHANGED
|
@@ -24,8 +24,6 @@ An [SWC](https://swc.rs) transform plugin for [Intlayer](https://intlayer.org)
|
|
|
24
24
|
|
|
25
25
|
**Intlayer** is a **modern i18n solution** for web and mobile apps. Itβs framework-agnostic, **AI-powered**, and includes a free **CMS & visual editor**. With **per-locale content files**, **TypeScript autocompletion**, **tree-shakable dictionaries**, and **CI/CD integration**, Intlayer makes internationalization **faster, cleaner, and smarter**.
|
|
26
26
|
|
|
27
|
-
---
|
|
28
|
-
|
|
29
27
|
## π Key Features
|
|
30
28
|
|
|
31
29
|
Intlayer provides a variety of features to help you scale your internationalization efforts.
|
|
@@ -50,8 +48,6 @@ Intlayer provides a variety of features to help you scale your internationalizat
|
|
|
50
48
|
- **Interoperability**: Allow interoperability with react-i18next, next-i18next, next-intl, react-intl, vue-i18n.
|
|
51
49
|
- **Performances & Benchmark**: Uses advanced tree-shaking and dynamic loading to boost performances and keep the solution as light as possible.
|
|
52
50
|
|
|
53
|
-
---
|
|
54
|
-
|
|
55
51
|
## π οΈ How the plugin works
|
|
56
52
|
|
|
57
53
|
The plugin rewrites `useIntlayer` / `getIntlayer` / `useTranslations` call arguments at compile time, replacing string dictionary keys with pre-loaded dictionary imports. This eliminates runtime registry lookups and enables tree-shaking for per-locale bundles.
|
|
@@ -117,8 +113,6 @@ The plugin transforms one file at a time with no cross-file state, so all it can
|
|
|
117
113
|
|
|
118
114
|
With `next-intlayer`, set `INTLAYER_SWC_LOG_LEVEL=info` (or `debug`) to turn it on; `log.mode: "disabled"` silences it regardless.
|
|
119
115
|
|
|
120
|
-
---
|
|
121
|
-
|
|
122
116
|
## Next.js compatibility
|
|
123
117
|
|
|
124
118
|
An SWC Wasm plugin can only be loaded by a host that speaks its `swc_ecma_ast`
|
|
@@ -147,8 +141,6 @@ latest release: `54.x` is the newest `swc_core` still on `swc_ecma_ast` 19, the
|
|
|
147
141
|
schema Next.js 16.1 ships. Moving the pin forward would raise the minimum
|
|
148
142
|
supported Next.js version with it.
|
|
149
143
|
|
|
150
|
-
---
|
|
151
|
-
|
|
152
144
|
## Usage: Next.js / SWC Wasm plugin (recommended)
|
|
153
145
|
|
|
154
146
|
The Wasm binary is distributed via npm as [`@intlayer/swc`](https://www.npmjs.com/package/@intlayer/swc).
|
|
@@ -193,8 +185,6 @@ export default nextConfig;
|
|
|
193
185
|
|
|
194
186
|
In practice you should use the [`@intlayer/webpack`](https://www.npmjs.com/package/@intlayer/webpack) or [`@intlayer/vite`](https://www.npmjs.com/package/@intlayer/vite) plugin, which configures the SWC plugin automatically based on your `intlayer.config.*` file.
|
|
195
187
|
|
|
196
|
-
---
|
|
197
|
-
|
|
198
188
|
## Usage: native Rust library
|
|
199
189
|
|
|
200
190
|
Add to `Cargo.toml`:
|
|
@@ -241,8 +231,6 @@ binary into the forward-compatible ABI. Built without it, the plugin only loads
|
|
|
241
231
|
on hosts sharing its exact `swc_ecma_ast` version, and the first Next.js release
|
|
242
232
|
that adds an AST node breaks every build using it.
|
|
243
233
|
|
|
244
|
-
---
|
|
245
|
-
|
|
246
234
|
## Plugin configuration reference
|
|
247
235
|
|
|
248
236
|
All fields correspond to the JSON object passed as the second element of each `swcPlugins` tuple.
|
|
@@ -264,8 +252,6 @@ All fields correspond to the JSON object passed as the second element of each `s
|
|
|
264
252
|
|
|
265
253
|
`FieldRenameMap` is a recursive object mapping each original field name to `{ shortName: string; children: FieldRenameMap }`.
|
|
266
254
|
|
|
267
|
-
---
|
|
268
|
-
|
|
269
255
|
## Public Rust API
|
|
270
256
|
|
|
271
257
|
The following symbols are exported by this crate:
|
|
@@ -293,8 +279,6 @@ The following symbols are exported by this crate:
|
|
|
293
279
|
| `dictionary_entry` | Emptying of the generated dictionaries entry module |
|
|
294
280
|
| `logger` | Build-time reporting |
|
|
295
281
|
|
|
296
|
-
---
|
|
297
|
-
|
|
298
282
|
## Documentation
|
|
299
283
|
|
|
300
284
|
Explore our comprehensive documentation to get started with Intlayer and learn how to integrate it into your projects.
|
|
@@ -406,8 +390,6 @@ Explore our comprehensive documentation to get started with Intlayer and learn h
|
|
|
406
390
|
</ul>
|
|
407
391
|
</details>
|
|
408
392
|
|
|
409
|
-
---
|
|
410
|
-
|
|
411
393
|
## Related packages
|
|
412
394
|
|
|
413
395
|
| Package | Description |
|
|
@@ -417,8 +399,6 @@ Explore our comprehensive documentation to get started with Intlayer and learn h
|
|
|
417
399
|
| [`react-intlayer`](https://www.npmjs.com/package/react-intlayer) | React hooks |
|
|
418
400
|
| [`next-intlayer`](https://www.npmjs.com/package/next-intlayer) | Next.js integration |
|
|
419
401
|
|
|
420
|
-
---
|
|
421
|
-
|
|
422
402
|
## License
|
|
423
403
|
|
|
424
404
|
Apache-2.0 Β© [Aymeric Pineau](https://github.com/aymericzip)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intlayer/swc",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.5.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A SWC plugin for Intlayer that transforms declaration files and provides internationalization features during the build process according to the Intlayer configuration.",
|
|
6
6
|
"keywords": [
|
|
Binary file
|