@intlayer/babel 8.12.2 → 8.12.3
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/dist/cjs/babel-plugin-intlayer-extract.cjs.map +1 -1
- package/dist/cjs/babel-plugin-intlayer-field-rename.cjs +14 -9
- package/dist/cjs/babel-plugin-intlayer-field-rename.cjs.map +1 -1
- package/dist/cjs/babel-plugin-intlayer-minify.cjs +83 -0
- package/dist/cjs/babel-plugin-intlayer-minify.cjs.map +1 -0
- package/dist/cjs/babel-plugin-intlayer-optimize.cjs +1 -0
- package/dist/cjs/babel-plugin-intlayer-optimize.cjs.map +1 -1
- package/dist/cjs/babel-plugin-intlayer-purge.cjs +403 -0
- package/dist/cjs/babel-plugin-intlayer-purge.cjs.map +1 -0
- package/dist/cjs/babel-plugin-intlayer-usage-analyzer.cjs.map +1 -1
- package/dist/cjs/extractContent/babelProcessor.cjs.map +1 -1
- package/dist/cjs/extractContent/contentWriter.cjs.map +1 -1
- package/dist/cjs/extractContent/extractContent.cjs.map +1 -1
- package/dist/cjs/extractContent/processTsxFile.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/constants.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/detectPackageName.cjs +1 -0
- package/dist/cjs/extractContent/utils/detectPackageName.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/extractDictionaryInfo.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/extractDictionaryKey.cjs +1 -0
- package/dist/cjs/extractContent/utils/extractDictionaryKey.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/generateKey.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/getComponentName.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/getExistingIntlayerInfo.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/getOrGenerateKey.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/resolveDictionaryKey.cjs +1 -0
- package/dist/cjs/extractContent/utils/resolveDictionaryKey.cjs.map +1 -1
- package/dist/cjs/extractContent/utils/shouldExtract.cjs.map +1 -1
- package/dist/cjs/extractScriptBlocks.cjs +1 -0
- package/dist/cjs/extractScriptBlocks.cjs.map +1 -1
- package/dist/cjs/getExtractPluginOptions.cjs.map +1 -1
- package/dist/cjs/getOptimizePluginOptions.cjs +1 -0
- package/dist/cjs/getOptimizePluginOptions.cjs.map +1 -1
- package/dist/cjs/getPurgePluginOptions.cjs +108 -0
- package/dist/cjs/getPurgePluginOptions.cjs.map +1 -0
- package/dist/cjs/index.cjs +9 -1
- package/dist/cjs/transformers.cjs +1 -0
- package/dist/cjs/transformers.cjs.map +1 -1
- package/dist/esm/babel-plugin-intlayer-extract.mjs.map +1 -1
- package/dist/esm/babel-plugin-intlayer-field-rename.mjs +14 -9
- package/dist/esm/babel-plugin-intlayer-field-rename.mjs.map +1 -1
- package/dist/esm/babel-plugin-intlayer-minify.mjs +82 -0
- package/dist/esm/babel-plugin-intlayer-minify.mjs.map +1 -0
- package/dist/esm/babel-plugin-intlayer-optimize.mjs.map +1 -1
- package/dist/esm/babel-plugin-intlayer-purge.mjs +400 -0
- package/dist/esm/babel-plugin-intlayer-purge.mjs.map +1 -0
- package/dist/esm/babel-plugin-intlayer-usage-analyzer.mjs.map +1 -1
- package/dist/esm/extractContent/babelProcessor.mjs.map +1 -1
- package/dist/esm/extractContent/contentWriter.mjs.map +1 -1
- package/dist/esm/extractContent/extractContent.mjs.map +1 -1
- package/dist/esm/extractContent/processTsxFile.mjs.map +1 -1
- package/dist/esm/extractContent/utils/constants.mjs.map +1 -1
- package/dist/esm/extractContent/utils/detectPackageName.mjs.map +1 -1
- package/dist/esm/extractContent/utils/extractDictionaryInfo.mjs.map +1 -1
- package/dist/esm/extractContent/utils/extractDictionaryKey.mjs.map +1 -1
- package/dist/esm/extractContent/utils/generateKey.mjs.map +1 -1
- package/dist/esm/extractContent/utils/getComponentName.mjs.map +1 -1
- package/dist/esm/extractContent/utils/getExistingIntlayerInfo.mjs.map +1 -1
- package/dist/esm/extractContent/utils/getOrGenerateKey.mjs.map +1 -1
- package/dist/esm/extractContent/utils/resolveDictionaryKey.mjs.map +1 -1
- package/dist/esm/extractContent/utils/shouldExtract.mjs.map +1 -1
- package/dist/esm/extractScriptBlocks.mjs.map +1 -1
- package/dist/esm/getExtractPluginOptions.mjs.map +1 -1
- package/dist/esm/getOptimizePluginOptions.mjs.map +1 -1
- package/dist/esm/getPurgePluginOptions.mjs +106 -0
- package/dist/esm/getPurgePluginOptions.mjs.map +1 -0
- package/dist/esm/index.mjs +5 -2
- package/dist/esm/transformers.mjs.map +1 -1
- package/dist/types/babel-plugin-intlayer-extract.d.ts.map +1 -1
- package/dist/types/babel-plugin-intlayer-field-rename.d.ts.map +1 -1
- package/dist/types/babel-plugin-intlayer-minify.d.ts +84 -0
- package/dist/types/babel-plugin-intlayer-minify.d.ts.map +1 -0
- package/dist/types/babel-plugin-intlayer-optimize.d.ts.map +1 -1
- package/dist/types/babel-plugin-intlayer-purge.d.ts +127 -0
- package/dist/types/babel-plugin-intlayer-purge.d.ts.map +1 -0
- package/dist/types/babel-plugin-intlayer-usage-analyzer.d.ts.map +1 -1
- package/dist/types/extractContent/babelProcessor.d.ts.map +1 -1
- package/dist/types/extractContent/contentWriter.d.ts.map +1 -1
- package/dist/types/extractContent/extractContent.d.ts.map +1 -1
- package/dist/types/extractContent/utils/constants.d.ts.map +1 -1
- package/dist/types/extractContent/utils/detectPackageName.d.ts.map +1 -1
- package/dist/types/extractContent/utils/extractDictionaryInfo.d.ts.map +1 -1
- package/dist/types/extractContent/utils/extractDictionaryKey.d.ts.map +1 -1
- package/dist/types/extractContent/utils/generateKey.d.ts.map +1 -1
- package/dist/types/extractContent/utils/getComponentName.d.ts.map +1 -1
- package/dist/types/extractContent/utils/getExistingIntlayerInfo.d.ts.map +1 -1
- package/dist/types/extractContent/utils/shouldExtract.d.ts.map +1 -1
- package/dist/types/extractScriptBlocks.d.ts.map +1 -1
- package/dist/types/getExtractPluginOptions.d.ts.map +1 -1
- package/dist/types/getOptimizePluginOptions.d.ts.map +1 -1
- package/dist/types/getPurgePluginOptions.d.ts +83 -0
- package/dist/types/getPurgePluginOptions.d.ts.map +1 -0
- package/dist/types/index.d.ts +4 -1
- package/dist/types/transformers.d.ts.map +1 -1
- package/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformers.mjs","names":[],"sources":["../../src/transformers.ts"],"sourcesContent":["import { type TransformOptions, transformAsync } from '@babel/core';\nimport { makeFieldRenameBabelPlugin } from './babel-plugin-intlayer-field-rename';\nimport {\n intlayerOptimizeBabelPlugin,\n type OptimizePluginOptions,\n} from './babel-plugin-intlayer-optimize';\nimport {\n type CompatCallerConfig,\n makeUsageAnalyzerBabelPlugin,\n type PruneContext,\n} from './babel-plugin-intlayer-usage-analyzer';\nimport { extractScriptBlocks, injectScriptBlocks } from './extractScriptBlocks';\n\n// ── Shared Babel parser configuration ─────────────────────────────────────────\n\n/**\n * Babel parser options covering the superset of syntaxes used across all\n * supported frameworks (React / Vue / Svelte / Angular / …).\n */\nexport const BABEL_PARSER_OPTIONS: NonNullable<TransformOptions['parserOpts']> =\n {\n sourceType: 'module',\n allowImportExportEverywhere: true,\n plugins: [\n 'typescript',\n 'jsx',\n 'decorators-legacy',\n 'classProperties',\n 'objectRestSpread',\n 'asyncGenerators',\n 'functionBind',\n 'exportDefaultFrom',\n 'exportNamespaceFrom',\n 'dynamicImport',\n 'nullishCoalescingOperator',\n 'optionalChaining',\n ],\n };\n\n/**\n * Fast pre-check: matches files that could contain native intlayer calls\n * (`useIntlayer` / `getIntlayer`). Used by the optimize/transform pass, which\n * only rewrites native calls.\n */\nexport const INTLAYER_USAGE_REGEX = /\\b(use|get)Intlayer\\b/;\n\n/**\n * Fast pre-check: matches files that could contain compat-adapter namespace\n * callers (`useTranslation`, `useTranslations`, `getTranslations`, `getFixedT`,\n * `useI18n`). These are analysed for field usage (pruning) but never rewritten.\n */\nexport const COMPAT_USAGE_REGEX =\n /\\b(useTranslation|useTranslations|getTranslations|getFixedT|useI18n)\\b/;\n\n/**\n * Fast pre-check for the usage-analysis phase: matches files containing either\n * native intlayer calls or compat-adapter namespace callers.\n */\nexport const INTLAYER_OR_COMPAT_USAGE_REGEX =\n /\\b(useIntlayer|getIntlayer|useTranslation|useTranslations|getTranslations|getFixedT|useI18n)\\b/;\n\n/**\n * Matches source files that are valid targets for usage analysis and Babel\n * transformation. Excludes sourcemap files, declaration files, and other\n * non-source extensions.\n */\nexport const SOURCE_FILE_REGEX = /\\.(tsx?|[mc]?jsx?|vue|svelte|astro)$/;\n\n// ── High-level transformer functions ──────────────────────────────────────────\n\n/**\n * Runs the usage-analysis Babel plugin on a single JS/TS code string.\n *\n * This is analysis-only: the transformed code output is discarded.\n * Throws if Babel cannot parse the content.\n */\nconst analyzeScriptContent = async (\n scriptContent: string,\n sourceFilePath: string,\n pruneContext: PruneContext,\n compatCallers?: CompatCallerConfig[]\n): Promise<void> => {\n await transformAsync(scriptContent, {\n filename: sourceFilePath,\n plugins: [makeUsageAnalyzerBabelPlugin(pruneContext, { compatCallers })],\n parserOpts: BABEL_PARSER_OPTIONS,\n ast: false,\n code: false, // analysis only – no output needed\n });\n};\n\n/**\n * Runs the usage-analysis Babel plugin on a source file, accumulating\n * field-usage data into `pruneContext`.\n *\n * For Vue / Svelte SFC files, script blocks are extracted before analysis so\n * Babel does not attempt to parse the full SFC syntax (templates, styles, …).\n * For plain JS/TS files, the whole file content is analysed directly.\n *\n * This is analysis-only: the transformed code output is discarded.\n * Throws if Babel cannot parse the file (caller should handle and flag\n * `pruneContext.hasUnparsableSourceFiles`).\n */\nexport const analyzeFieldUsageInFile = async (\n sourceFilePath: string,\n code: string,\n pruneContext: PruneContext,\n compatCallers?: CompatCallerConfig[]\n): Promise<void> => {\n const scriptBlocks = extractScriptBlocks(sourceFilePath, code);\n\n // For SFC files (Vue / Svelte): scriptBlocks[0].contentStartOffset > 0\n // means we extracted actual <script> tags from the file.\n // For plain JS/TS: extractScriptBlocks returns the whole file as a single\n // block with offset 0, so we fall through to the same path.\n for (const block of scriptBlocks) {\n if (!INTLAYER_OR_COMPAT_USAGE_REGEX.test(block.content)) continue;\n await analyzeScriptContent(\n block.content,\n sourceFilePath,\n pruneContext,\n compatCallers\n );\n }\n};\n\n/**\n * Applies field-renaming to a single JS/TS code string (not an SFC).\n *\n * Returns the renamed code string, or `null` if nothing changed or if\n * Babel failed to parse the input (caller should fall back to original code).\n */\nexport const renameFieldsInCode = async (\n code: string,\n sourceFilePath: string,\n pruneContext: PruneContext\n): Promise<string | null> => {\n try {\n const result = await transformAsync(code, {\n filename: sourceFilePath,\n plugins: [makeFieldRenameBabelPlugin(pruneContext)],\n parserOpts: BABEL_PARSER_OPTIONS,\n ast: false,\n });\n return result?.code ?? null;\n } catch {\n return null; // parse failure – caller falls back to original code\n }\n};\n\n/**\n * Applies field-renaming to a source file, correctly handling both plain\n * JS/TS files and SFC files (Vue / Svelte) by operating on each script block\n * individually and injecting the results back into the original source.\n *\n * Returns the renamed code string, or `null` if nothing changed.\n */\nexport const renameFieldsInSourceFile = async (\n sourceFilePath: string,\n code: string,\n pruneContext: PruneContext\n): Promise<string | null> => {\n if (pruneContext.dictionaryKeyToFieldRenameMap.size === 0) return null;\n if (!INTLAYER_USAGE_REGEX.test(code)) return null;\n\n const scriptBlocks = extractScriptBlocks(sourceFilePath, code);\n\n const isSFC =\n scriptBlocks.length > 0 &&\n ((scriptBlocks[0]?.contentStartOffset ?? 0) > 0 || scriptBlocks.length > 1);\n\n if (isSFC) {\n // Raw SFC: rename each script block individually and inject back.\n const modifications: Array<{\n block: (typeof scriptBlocks)[number];\n modifiedContent: string;\n }> = [];\n\n for (const block of scriptBlocks) {\n if (!INTLAYER_USAGE_REGEX.test(block.content)) continue;\n\n const renamedCode = await renameFieldsInCode(\n block.content,\n sourceFilePath,\n pruneContext\n );\n if (renamedCode && renamedCode !== block.content) {\n modifications.push({ block, modifiedContent: renamedCode });\n }\n }\n\n if (modifications.length === 0) return null;\n return injectScriptBlocks(code, modifications);\n }\n\n // Plain JS/TS or compiled SFC (no block delimiters) – rename the whole file.\n return renameFieldsInCode(code, sourceFilePath, pruneContext);\n};\n\n/**\n * Runs the intlayer optimize Babel plugin on a source file, transforming\n * `useIntlayer('key')` / `getIntlayer('key')` calls into `useDictionary(_hash)`\n * / `getDictionary(_hash)` and injecting the corresponding dictionary imports.\n *\n * Returns `{ code, map }` on success, or `null` if the transformation produced\n * no output.\n */\nexport const optimizeSourceFile = async (\n code: string,\n sourceFilePath: string,\n options: OptimizePluginOptions\n): Promise<{\n code: string;\n map: string | object | null | undefined;\n} | null> => {\n const result = await transformAsync(code, {\n filename: sourceFilePath,\n plugins: [[intlayerOptimizeBabelPlugin, options]],\n parserOpts: BABEL_PARSER_OPTIONS,\n });\n\n if (!result?.code) return null;\n\n return { code: result.code, map: result.map };\n};\n"],"mappings":";;;;;;;;;;;AAmBA,MAAa,uBACX;CACE,YAAY;CACZ,6BAA6B;CAC7B,SAAS;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF
|
|
1
|
+
{"version":3,"file":"transformers.mjs","names":[],"sources":["../../src/transformers.ts"],"sourcesContent":["import { type TransformOptions, transformAsync } from '@babel/core';\nimport { makeFieldRenameBabelPlugin } from './babel-plugin-intlayer-field-rename';\nimport {\n intlayerOptimizeBabelPlugin,\n type OptimizePluginOptions,\n} from './babel-plugin-intlayer-optimize';\nimport {\n type CompatCallerConfig,\n makeUsageAnalyzerBabelPlugin,\n type PruneContext,\n} from './babel-plugin-intlayer-usage-analyzer';\nimport { extractScriptBlocks, injectScriptBlocks } from './extractScriptBlocks';\n\n// ── Shared Babel parser configuration ─────────────────────────────────────────\n\n/**\n * Babel parser options covering the superset of syntaxes used across all\n * supported frameworks (React / Vue / Svelte / Angular / …).\n */\nexport const BABEL_PARSER_OPTIONS: NonNullable<TransformOptions['parserOpts']> =\n {\n sourceType: 'module',\n allowImportExportEverywhere: true,\n plugins: [\n 'typescript',\n 'jsx',\n 'decorators-legacy',\n 'classProperties',\n 'objectRestSpread',\n 'asyncGenerators',\n 'functionBind',\n 'exportDefaultFrom',\n 'exportNamespaceFrom',\n 'dynamicImport',\n 'nullishCoalescingOperator',\n 'optionalChaining',\n ],\n };\n\n/**\n * Fast pre-check: matches files that could contain native intlayer calls\n * (`useIntlayer` / `getIntlayer`). Used by the optimize/transform pass, which\n * only rewrites native calls.\n */\nexport const INTLAYER_USAGE_REGEX = /\\b(use|get)Intlayer\\b/;\n\n/**\n * Fast pre-check: matches files that could contain compat-adapter namespace\n * callers (`useTranslation`, `useTranslations`, `getTranslations`, `getFixedT`,\n * `useI18n`). These are analysed for field usage (pruning) but never rewritten.\n */\nexport const COMPAT_USAGE_REGEX =\n /\\b(useTranslation|useTranslations|getTranslations|getFixedT|useI18n)\\b/;\n\n/**\n * Fast pre-check for the usage-analysis phase: matches files containing either\n * native intlayer calls or compat-adapter namespace callers.\n */\nexport const INTLAYER_OR_COMPAT_USAGE_REGEX =\n /\\b(useIntlayer|getIntlayer|useTranslation|useTranslations|getTranslations|getFixedT|useI18n)\\b/;\n\n/**\n * Matches source files that are valid targets for usage analysis and Babel\n * transformation. Excludes sourcemap files, declaration files, and other\n * non-source extensions.\n */\nexport const SOURCE_FILE_REGEX = /\\.(tsx?|[mc]?jsx?|vue|svelte|astro)$/;\n\n// ── High-level transformer functions ──────────────────────────────────────────\n\n/**\n * Runs the usage-analysis Babel plugin on a single JS/TS code string.\n *\n * This is analysis-only: the transformed code output is discarded.\n * Throws if Babel cannot parse the content.\n */\nconst analyzeScriptContent = async (\n scriptContent: string,\n sourceFilePath: string,\n pruneContext: PruneContext,\n compatCallers?: CompatCallerConfig[]\n): Promise<void> => {\n await transformAsync(scriptContent, {\n filename: sourceFilePath,\n plugins: [makeUsageAnalyzerBabelPlugin(pruneContext, { compatCallers })],\n parserOpts: BABEL_PARSER_OPTIONS,\n ast: false,\n code: false, // analysis only – no output needed\n });\n};\n\n/**\n * Runs the usage-analysis Babel plugin on a source file, accumulating\n * field-usage data into `pruneContext`.\n *\n * For Vue / Svelte SFC files, script blocks are extracted before analysis so\n * Babel does not attempt to parse the full SFC syntax (templates, styles, …).\n * For plain JS/TS files, the whole file content is analysed directly.\n *\n * This is analysis-only: the transformed code output is discarded.\n * Throws if Babel cannot parse the file (caller should handle and flag\n * `pruneContext.hasUnparsableSourceFiles`).\n */\nexport const analyzeFieldUsageInFile = async (\n sourceFilePath: string,\n code: string,\n pruneContext: PruneContext,\n compatCallers?: CompatCallerConfig[]\n): Promise<void> => {\n const scriptBlocks = extractScriptBlocks(sourceFilePath, code);\n\n // For SFC files (Vue / Svelte): scriptBlocks[0].contentStartOffset > 0\n // means we extracted actual <script> tags from the file.\n // For plain JS/TS: extractScriptBlocks returns the whole file as a single\n // block with offset 0, so we fall through to the same path.\n for (const block of scriptBlocks) {\n if (!INTLAYER_OR_COMPAT_USAGE_REGEX.test(block.content)) continue;\n await analyzeScriptContent(\n block.content,\n sourceFilePath,\n pruneContext,\n compatCallers\n );\n }\n};\n\n/**\n * Applies field-renaming to a single JS/TS code string (not an SFC).\n *\n * Returns the renamed code string, or `null` if nothing changed or if\n * Babel failed to parse the input (caller should fall back to original code).\n */\nexport const renameFieldsInCode = async (\n code: string,\n sourceFilePath: string,\n pruneContext: PruneContext\n): Promise<string | null> => {\n try {\n const result = await transformAsync(code, {\n filename: sourceFilePath,\n plugins: [makeFieldRenameBabelPlugin(pruneContext)],\n parserOpts: BABEL_PARSER_OPTIONS,\n ast: false,\n });\n return result?.code ?? null;\n } catch {\n return null; // parse failure – caller falls back to original code\n }\n};\n\n/**\n * Applies field-renaming to a source file, correctly handling both plain\n * JS/TS files and SFC files (Vue / Svelte) by operating on each script block\n * individually and injecting the results back into the original source.\n *\n * Returns the renamed code string, or `null` if nothing changed.\n */\nexport const renameFieldsInSourceFile = async (\n sourceFilePath: string,\n code: string,\n pruneContext: PruneContext\n): Promise<string | null> => {\n if (pruneContext.dictionaryKeyToFieldRenameMap.size === 0) return null;\n if (!INTLAYER_USAGE_REGEX.test(code)) return null;\n\n const scriptBlocks = extractScriptBlocks(sourceFilePath, code);\n\n const isSFC =\n scriptBlocks.length > 0 &&\n ((scriptBlocks[0]?.contentStartOffset ?? 0) > 0 || scriptBlocks.length > 1);\n\n if (isSFC) {\n // Raw SFC: rename each script block individually and inject back.\n const modifications: Array<{\n block: (typeof scriptBlocks)[number];\n modifiedContent: string;\n }> = [];\n\n for (const block of scriptBlocks) {\n if (!INTLAYER_USAGE_REGEX.test(block.content)) continue;\n\n const renamedCode = await renameFieldsInCode(\n block.content,\n sourceFilePath,\n pruneContext\n );\n if (renamedCode && renamedCode !== block.content) {\n modifications.push({ block, modifiedContent: renamedCode });\n }\n }\n\n if (modifications.length === 0) return null;\n return injectScriptBlocks(code, modifications);\n }\n\n // Plain JS/TS or compiled SFC (no block delimiters) – rename the whole file.\n return renameFieldsInCode(code, sourceFilePath, pruneContext);\n};\n\n/**\n * Runs the intlayer optimize Babel plugin on a source file, transforming\n * `useIntlayer('key')` / `getIntlayer('key')` calls into `useDictionary(_hash)`\n * / `getDictionary(_hash)` and injecting the corresponding dictionary imports.\n *\n * Returns `{ code, map }` on success, or `null` if the transformation produced\n * no output.\n */\nexport const optimizeSourceFile = async (\n code: string,\n sourceFilePath: string,\n options: OptimizePluginOptions\n): Promise<{\n code: string;\n map: string | object | null | undefined;\n} | null> => {\n const result = await transformAsync(code, {\n filename: sourceFilePath,\n plugins: [[intlayerOptimizeBabelPlugin, options]],\n parserOpts: BABEL_PARSER_OPTIONS,\n });\n\n if (!result?.code) return null;\n\n return { code: result.code, map: result.map };\n};\n"],"mappings":";;;;;;;;;;;AAmBA,MAAa,uBACX;CACE,YAAY;CACZ,6BAA6B;CAC7B,SAAS;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD;CACF;;;;;;AAOH,MAAa,uBAAuB;;;;;;AAOpC,MAAa,qBACX;;;;;AAMF,MAAa,iCACX;;;;;;AAOF,MAAa,oBAAoB;;;;;;;AAUjC,MAAM,uBAAuB,OAC3B,eACA,gBACA,cACA,kBACkB;AAClB,OAAM,eAAe,eAAe;EAClC,UAAU;EACV,SAAS,CAAC,6BAA6B,cAAc,EAAE,eAAe,CAAC,CAAC;EACxE,YAAY;EACZ,KAAK;EACL,MAAM;EACP,CAAC;;;;;;;;;;;;;;AAeJ,MAAa,0BAA0B,OACrC,gBACA,MACA,cACA,kBACkB;CAClB,MAAM,eAAe,oBAAoB,gBAAgB,KAAK;AAM9D,MAAK,MAAM,SAAS,cAAc;AAChC,MAAI,CAAC,+BAA+B,KAAK,MAAM,QAAQ,CAAE;AACzD,QAAM,qBACJ,MAAM,SACN,gBACA,cACA,cACD;;;;;;;;;AAUL,MAAa,qBAAqB,OAChC,MACA,gBACA,iBAC2B;AAC3B,KAAI;AAOF,UAAO,MANc,eAAe,MAAM;GACxC,UAAU;GACV,SAAS,CAAC,2BAA2B,aAAa,CAAC;GACnD,YAAY;GACZ,KAAK;GACN,CAAC,GACa,QAAQ;SACjB;AACN,SAAO;;;;;;;;;;AAWX,MAAa,2BAA2B,OACtC,gBACA,MACA,iBAC2B;AAC3B,KAAI,aAAa,8BAA8B,SAAS,EAAG,QAAO;AAClE,KAAI,CAAC,qBAAqB,KAAK,KAAK,CAAE,QAAO;CAE7C,MAAM,eAAe,oBAAoB,gBAAgB,KAAK;AAM9D,KAHE,aAAa,SAAS,OACpB,aAAa,IAAI,sBAAsB,KAAK,KAAK,aAAa,SAAS,IAEhE;EAET,MAAM,gBAGD,EAAE;AAEP,OAAK,MAAM,SAAS,cAAc;AAChC,OAAI,CAAC,qBAAqB,KAAK,MAAM,QAAQ,CAAE;GAE/C,MAAM,cAAc,MAAM,mBACxB,MAAM,SACN,gBACA,aACD;AACD,OAAI,eAAe,gBAAgB,MAAM,QACvC,eAAc,KAAK;IAAE;IAAO,iBAAiB;IAAa,CAAC;;AAI/D,MAAI,cAAc,WAAW,EAAG,QAAO;AACvC,SAAO,mBAAmB,MAAM,cAAc;;AAIhD,QAAO,mBAAmB,MAAM,gBAAgB,aAAa;;;;;;;;;;AAW/D,MAAa,qBAAqB,OAChC,MACA,gBACA,YAIW;CACX,MAAM,SAAS,MAAM,eAAe,MAAM;EACxC,UAAU;EACV,SAAS,CAAC,CAAC,6BAA6B,QAAQ,CAAC;EACjD,YAAY;EACb,CAAC;AAEF,KAAI,CAAC,QAAQ,KAAM,QAAO;AAE1B,QAAO;EAAE,MAAM,OAAO;EAAM,KAAK,OAAO;EAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin-intlayer-extract.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-extract.ts"],"mappings":";;;;;;;;KAaY,aAAA;EACV,aAAA;EACA,QAAA;EACA,OAAA,EAAS,MAAA;EACT,MAAA,EAAQ,
|
|
1
|
+
{"version":3,"file":"babel-plugin-intlayer-extract.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-extract.ts"],"mappings":";;;;;;;;KAaY,aAAA;EACV,aAAA;EACA,QAAA;EACA,OAAA,EAAS,MAAA;EACT,MAAA,EAAQ,MAAA;AAAA;AAAA,KAGE,oBAAA;EACV,WAAA,GAAc,WAAA;EACd,SAAA;EACA,OAAA;EAEA,aAAA,IAAiB,IAAA;EACjB,aAAA,EAAe,cAAA;EATD;;AAGhB;;;EAYE,SAAA,IAAa,MAAA,EAAQ,aAAA,YAAyB,OAAA;EAN/B;;;EAUf,MAAA,GAAS,eAAA;AAAA;AAAA,KAGN,KAAA,GAAQ,UAAA;EAAe,IAAA,EAAM,oBAAA;AAAA;;;;;;;;;;;;;;;AAFhC;;;cAqBW,0BAAA,GAA8B,MAAA;EACzC,KAAA,SAAc,UAAA;AAAA,MACZ,SAAA,CAAU,KAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin-intlayer-field-rename.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-field-rename.ts"],"mappings":";;;;;;;AAsBA;;cAAa,sBAAA,GAA0B,
|
|
1
|
+
{"version":3,"file":"babel-plugin-intlayer-field-rename.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-field-rename.ts"],"mappings":";;;;;;;AAsBA;;cAAa,sBAAA,GAA0B,KAAA;;;AAqCvC;;;;;AA0QA;;;;;;;;;;;;;;;;;;;;cA1Qa,+BAAA,GACX,YAAA,cACC,eAAA;;;;;;;;;;;;;;;;;;;;;;;;;;cAwQU,0BAAA,GACV,YAAA,EAAc,YAAA;EACd,KAAA,EAAA;AAAA;EAAyB,KAAA,SAAc,UAAA;AAAA,MAAe,SAAA"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { PluginObj } from "@babel/core";
|
|
2
|
+
import * as BabelTypes from "@babel/types";
|
|
3
|
+
|
|
4
|
+
//#region src/babel-plugin-intlayer-minify.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* Pre-resolved options accepted by {@link intlayerMinifyBabelPlugin}.
|
|
7
|
+
*
|
|
8
|
+
* All values are resolved at babel.config.js load time (via
|
|
9
|
+
* {@link getMinifyPluginOptions}) so the plugin does not read the intlayer
|
|
10
|
+
* configuration file on every file transform.
|
|
11
|
+
*/
|
|
12
|
+
type MinifyPluginOptions = {
|
|
13
|
+
/**
|
|
14
|
+
* Absolute path to the project root. Used to look up the shared
|
|
15
|
+
* {@link PruneContext} built by {@link intlayerPurgeBabelPlugin}.
|
|
16
|
+
*/
|
|
17
|
+
baseDir: string;
|
|
18
|
+
/**
|
|
19
|
+
* When `true`, rewrite source-file property accesses to use the short
|
|
20
|
+
* alphabetic aliases assigned during the minification pass
|
|
21
|
+
* (e.g. `content.title` → `content.a`). Mirrors `build.minify`.
|
|
22
|
+
*/
|
|
23
|
+
minify: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Build optimisation toggle. When explicitly `false`, the plugin is a
|
|
26
|
+
* no-op. Mirrors `build.optimize`.
|
|
27
|
+
*/
|
|
28
|
+
optimize: boolean | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* When `true` the plugin is a no-op. Mirrors `editor.enabled`.
|
|
31
|
+
*/
|
|
32
|
+
editorEnabled: boolean;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Babel plugin that rewrites component source files to use the short
|
|
36
|
+
* alphabetic aliases assigned to dictionary content fields during the
|
|
37
|
+
* minification pass (e.g. `content.title` → `content.a`).
|
|
38
|
+
*
|
|
39
|
+
* This plugin relies on the field-rename map built by
|
|
40
|
+
* {@link intlayerPurgeBabelPlugin} during its `pre()` hook. Both plugins
|
|
41
|
+
* share the same module-level {@link PruneContext} via
|
|
42
|
+
* {@link getSharedPruneContext}, so **`intlayerPurgeBabelPlugin` must be
|
|
43
|
+
* listed before this plugin** in `babel.config.js` so that its `pre()` runs
|
|
44
|
+
* first and the shared context is populated before this plugin's
|
|
45
|
+
* `Program.exit` visitor fires.
|
|
46
|
+
*
|
|
47
|
+
* All option values must be pre-resolved via {@link getMinifyPluginOptions}.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```js
|
|
51
|
+
* // babel.config.js
|
|
52
|
+
* const {
|
|
53
|
+
* intlayerPurgeBabelPlugin,
|
|
54
|
+
* intlayerMinifyBabelPlugin,
|
|
55
|
+
* intlayerOptimizeBabelPlugin,
|
|
56
|
+
* getPurgePluginOptions,
|
|
57
|
+
* getMinifyPluginOptions,
|
|
58
|
+
* getOptimizePluginOptions,
|
|
59
|
+
* } = require("@intlayer/babel");
|
|
60
|
+
*
|
|
61
|
+
* module.exports = {
|
|
62
|
+
* presets: ["next/babel"],
|
|
63
|
+
* plugins: [
|
|
64
|
+
* [intlayerPurgeBabelPlugin, getPurgePluginOptions()],
|
|
65
|
+
* [intlayerMinifyBabelPlugin, getMinifyPluginOptions()],
|
|
66
|
+
* [intlayerOptimizeBabelPlugin, getOptimizePluginOptions()],
|
|
67
|
+
* ],
|
|
68
|
+
* };
|
|
69
|
+
* ```
|
|
70
|
+
*
|
|
71
|
+
* @remarks
|
|
72
|
+
* - This plugin is a no-op when `minify` is `false`, `optimize` is `false`,
|
|
73
|
+
* or `editorEnabled` is `true`.
|
|
74
|
+
* - Source-code renames must run **before** {@link intlayerOptimizeBabelPlugin}
|
|
75
|
+
* because the optimize pass replaces `useIntlayer` calls with
|
|
76
|
+
* `useDictionary`, erasing the dictionary-key information needed to look up
|
|
77
|
+
* the rename map.
|
|
78
|
+
*/
|
|
79
|
+
declare const intlayerMinifyBabelPlugin: (babel: {
|
|
80
|
+
types: typeof BabelTypes;
|
|
81
|
+
}) => PluginObj;
|
|
82
|
+
//#endregion
|
|
83
|
+
export { MinifyPluginOptions, intlayerMinifyBabelPlugin };
|
|
84
|
+
//# sourceMappingURL=babel-plugin-intlayer-minify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"babel-plugin-intlayer-minify.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-minify.ts"],"mappings":";;;;;;AAgBA;;;;;KAAY,mBAAA;EAkBV;;;;EAbA,OAAA;EA8ID;;;;;EAvIC,MAAA;EA+DE;;;;EAzDF,QAAA;;;;EAKA,aAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkDW,yBAAA,GAA6B,KAAA;EACxC,KAAA,SAAc,UAAA;AAAA,MACZ,SAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin-intlayer-optimize.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-optimize.ts"],"mappings":";;;;cAwBM,WAAA;;AAtB0C;;KAuDpC,qBAAA;EAjC+C
|
|
1
|
+
{"version":3,"file":"babel-plugin-intlayer-optimize.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-optimize.ts"],"mappings":";;;;cAwBM,WAAA;;AAtB0C;;KAuDpC,qBAAA;EAjC+C;;AAiC3D;EAIE,QAAA;;;;EAIA,eAAA;EAIA;;;EAAA,qBAAA;EAgBA;;;EAZA,6BAAA;EA4BA;;;EAxBA,uBAAA;EAmCS;;AACT;EAhCA,sBAAA;;;;EAIA,4BAAA;EAiCoB;;;EA7BpB,oBAAA;EAmCa;;;EA/Bb,0BAAA;EAuBA;;;EAnBA,sBAAA;EAqBgC;;;EAjBhC,UAAA;EAmBiC;;;EAfjC,iBAAA,GAAoB,MAAA;EAmBP;;;EAZb,SAAA;AAAA;AAAA,KAGG,KAAA,GAAQ,UAAA;EACX,IAAA,EAAM,qBAAA,EA+IK;EA7IX,iBAAA,GAAoB,GAAA,SAAY,UAAA,CAAW,UAAA;EAE3C,kBAAA,GAAqB,GAAA,SAAY,UAAA,CAAW,UAAA,GA6IhC;EA3IZ,eAAA,YA2IW;EAzIX,UAAA,GAAa,GAAA,iBAAoB,WAAA,YAwIjC;EAtIA,YAAA,YAqI0C;EAnI1C,kBAAA,YAqIY;EAnIZ,WAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAiIW,2BAAA,GAA+B,KAAA;EAC1C,KAAA,SAAc,UAAA;AAAA,MACZ,SAAA,CAAU,KAAA"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { PruneContext } from "./babel-plugin-intlayer-usage-analyzer.js";
|
|
2
|
+
import { PluginObj } from "@babel/core";
|
|
3
|
+
import * as BabelTypes from "@babel/types";
|
|
4
|
+
|
|
5
|
+
//#region src/babel-plugin-intlayer-purge.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Pre-resolved options accepted by {@link intlayerPurgeBabelPlugin}.
|
|
8
|
+
*
|
|
9
|
+
* All values are resolved at babel.config.js load time (via
|
|
10
|
+
* {@link getPurgePluginOptions}) so the plugin itself does not need to read
|
|
11
|
+
* the configuration file on every file transform.
|
|
12
|
+
*/
|
|
13
|
+
type PurgePluginOptions = {
|
|
14
|
+
/**
|
|
15
|
+
* Absolute path to the project root. Used as the cache key for the shared
|
|
16
|
+
* {@link PruneContext} so two Babel transform pipelines for different
|
|
17
|
+
* workspaces in the same process do not share state.
|
|
18
|
+
*/
|
|
19
|
+
baseDir: string;
|
|
20
|
+
/**
|
|
21
|
+
* When `true`, remove unused content fields from compiled dictionary JSON
|
|
22
|
+
* files. Mirrors `build.purge` in `intlayer.config.ts`.
|
|
23
|
+
*/
|
|
24
|
+
purge: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* When `true`, rename content fields to short alphabetic aliases
|
|
27
|
+
* (`title` → `a`, etc.) and strip top-level metadata from compiled
|
|
28
|
+
* dictionaries. Mirrors `build.minify` in `intlayer.config.ts`.
|
|
29
|
+
*/
|
|
30
|
+
minify: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Build optimisation toggle. `undefined` means "auto" (active for
|
|
33
|
+
* production builds). When explicitly `false`, the plugin is a no-op.
|
|
34
|
+
* Mirrors `build.optimize`.
|
|
35
|
+
*/
|
|
36
|
+
optimize: boolean | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* When `true` the plugin skips all processing to preserve full dictionary
|
|
39
|
+
* content for the visual editor. Mirrors `editor.enabled`.
|
|
40
|
+
*/
|
|
41
|
+
editorEnabled: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Absolute path to the compiled static dictionaries directory
|
|
44
|
+
* (`.intlayer/dictionaries/` by default).
|
|
45
|
+
*/
|
|
46
|
+
dictionariesDir: string;
|
|
47
|
+
/**
|
|
48
|
+
* Absolute path to the compiled per-locale dynamic dictionaries directory
|
|
49
|
+
* (`.intlayer/dynamic_dictionaries/` by default).
|
|
50
|
+
*/
|
|
51
|
+
dynamicDictionariesDir: string;
|
|
52
|
+
/**
|
|
53
|
+
* Pre-built list of component source file paths to analyse for field-usage.
|
|
54
|
+
* Populated by {@link getPurgePluginOptions} from the intlayer config's
|
|
55
|
+
* `content` glob patterns.
|
|
56
|
+
*/
|
|
57
|
+
componentFilesList: string[];
|
|
58
|
+
/**
|
|
59
|
+
* Per-dictionary import-mode overrides, keyed by dictionary `key`.
|
|
60
|
+
* Dictionaries with mode `'fetch'` are excluded from field renaming because
|
|
61
|
+
* their JSON is served from a remote API using the original field names.
|
|
62
|
+
*/
|
|
63
|
+
dictionaryKeyToImportModeMap: Record<string, 'static' | 'dynamic' | 'fetch' | undefined>;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Returns the shared {@link PruneContext} for the given base directory, or
|
|
67
|
+
* `null` if {@link intlayerPurgeBabelPlugin} has not yet been initialised for
|
|
68
|
+
* that directory.
|
|
69
|
+
*
|
|
70
|
+
* Used by {@link intlayerMinifyBabelPlugin} to read the rename map without
|
|
71
|
+
* creating a circular dependency.
|
|
72
|
+
*/
|
|
73
|
+
declare const getSharedPruneContext: (baseDir: string) => PruneContext | null;
|
|
74
|
+
/**
|
|
75
|
+
* Babel plugin that analyses all project source files and rewrites compiled
|
|
76
|
+
* dictionary JSON files in-place to remove unused content fields
|
|
77
|
+
* (`build.purge`) and/or rename them to short alphabetic aliases
|
|
78
|
+
* (`build.minify`).
|
|
79
|
+
*
|
|
80
|
+
* All option values must be pre-resolved via {@link getPurgePluginOptions}
|
|
81
|
+
* before being passed here — the plugin does not load the intlayer
|
|
82
|
+
* configuration itself.
|
|
83
|
+
*
|
|
84
|
+
* This plugin performs **file I/O as a side effect**: on the very first Babel
|
|
85
|
+
* transform in a given Node.js process it synchronously scans the component
|
|
86
|
+
* files listed in `options.componentFilesList`, builds field-usage data, and
|
|
87
|
+
* writes the processed dictionaries to disk. Subsequent transforms are
|
|
88
|
+
* no-ops.
|
|
89
|
+
*
|
|
90
|
+
* Source-code field renames (rewriting `content.title` → `content.a`) are
|
|
91
|
+
* handled by the companion {@link intlayerMinifyBabelPlugin}.
|
|
92
|
+
*
|
|
93
|
+
* @example
|
|
94
|
+
* ```js
|
|
95
|
+
* // babel.config.js
|
|
96
|
+
* const {
|
|
97
|
+
* intlayerPurgeBabelPlugin,
|
|
98
|
+
* intlayerMinifyBabelPlugin,
|
|
99
|
+
* intlayerOptimizeBabelPlugin,
|
|
100
|
+
* getPurgePluginOptions,
|
|
101
|
+
* getMinifyPluginOptions,
|
|
102
|
+
* getOptimizePluginOptions,
|
|
103
|
+
* } = require("@intlayer/babel");
|
|
104
|
+
*
|
|
105
|
+
* module.exports = {
|
|
106
|
+
* presets: ["next/babel"],
|
|
107
|
+
* plugins: [
|
|
108
|
+
* [intlayerPurgeBabelPlugin, getPurgePluginOptions()],
|
|
109
|
+
* [intlayerMinifyBabelPlugin, getMinifyPluginOptions()],
|
|
110
|
+
* [intlayerOptimizeBabelPlugin, getOptimizePluginOptions()],
|
|
111
|
+
* ],
|
|
112
|
+
* };
|
|
113
|
+
* ```
|
|
114
|
+
*
|
|
115
|
+
* @remarks
|
|
116
|
+
* - Intended for **production builds** only. Dictionary JSON files are
|
|
117
|
+
* overwritten in-place; running `intlayer build` afterwards restores the
|
|
118
|
+
* originals.
|
|
119
|
+
* - The plugin is a no-op when `optimize` is `false` or `editorEnabled` is
|
|
120
|
+
* `true`.
|
|
121
|
+
*/
|
|
122
|
+
declare const intlayerPurgeBabelPlugin: (_babel: {
|
|
123
|
+
types: typeof BabelTypes;
|
|
124
|
+
}) => PluginObj;
|
|
125
|
+
//#endregion
|
|
126
|
+
export { PurgePluginOptions, getSharedPruneContext, intlayerPurgeBabelPlugin };
|
|
127
|
+
//# sourceMappingURL=babel-plugin-intlayer-purge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"babel-plugin-intlayer-purge.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-purge.ts"],"mappings":";;;;;;;AA4BA;;;;;KAAY,kBAAA;EAmBV;;;;;EAbA,OAAA;EAoDA;;;;EA9CA,KAAA;EA2EuC;;;;AA4mBzC;EAhrBE,MAAA;;;;;;EAOA,QAAA;EA0rBA;;;;EAprBA,aAAA;;;;;EAMA,eAAA;;;;;EAMA,sBAAA;;;;;;EAOA,kBAAA;;;;;;EAOA,4BAAA,EAA8B,MAAA;AAAA;;;;;;;;;cA4BnB,qBAAA,GAAyB,OAAA,aAAkB,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6mB3C,wBAAA,GAA4B,MAAA;EACvC,KAAA,SAAc,UAAA;AAAA,MACZ,SAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin-intlayer-usage-analyzer.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-usage-analyzer.ts"],"mappings":";;;;;;AAYA
|
|
1
|
+
{"version":3,"file":"babel-plugin-intlayer-usage-analyzer.d.ts","names":[],"sources":["../../src/babel-plugin-intlayer-usage-analyzer.ts"],"mappings":";;;;;;AAYA;;;;;KAAY,oBAAA,GAAuB,GAAA;;;;;;;;KASvB,iBAAA;EACV,SAAA;EACA,QAAA,EAAU,eAAA;AAAA;;KAIA,eAAA,GAAkB,GAAA,SAAY,iBAAA;AAS1C;;;;;;;AAAA,KAAY,YAAA;EAiCqB;;;;;EA3B/B,4BAAA,EAA8B,GAAA,SAAY,oBAAA;EA+Db;;;;EAzD7B,yBAAA,EAA2B,GAAA;EAAA;;;;;EAO3B,wBAAA;EAc2C;;;;;EAP3C,mCAAA,EAAqC,GAAA;EA2CrC;;;;;EApCA,6BAAA,EAA+B,GAAA,SAAY,eAAA;EA0ChC;;;;;AAiBb;;;EAjDE,sCAAA,EAAwC,GAAA,SAAY,GAAA;EAiDsB;AAC5E;;;;;AAsBA;;;;;;EA1DE,+BAAA,EAAiC,GAAA;EA8Db;;;;AAKtB;;;;;;EAvDE,wBAAA,EAA0B,GAAA;IAEtB,YAAA;IAAsB,aAAA;EAAA;AAAA;AAAA,cAIf,kBAAA,QAAyB,YAAA;;cAiBzB,qBAAA;AAAA,KACD,kBAAA,WAA6B,qBAAA;;;;;AA4zBzC;;;;;;;;;;;;;;KAtyBY,qBAAA;EAEN,IAAA;EAAkB,KAAA;AAAA;EAElB,IAAA;EAAgB,aAAA;EAAuB,QAAA;AAAA;;;;KAKjC,kBAAA;yEAEV,UAAA;;;;;;;;;EASA,aAAA;;;;;;EAMA,aAAA;EAEA,SAAA,EAAW,qBAAA;;;;;;EAMX,SAAA,GAAY,qBAAA;EAEZ,mBAAA;AAAA;;;;;cAOW,sBAAA,EAAwB,kBAAA;;;;;;;;;;;;;;;cA2vBxB,4BAAA,GAET,YAAA,EAAc,YAAA,EACd,OAAA;EAAY,aAAA,GAAgB,kBAAA;AAAA;EAE7B,KAAA,EAAA;AAAA;EAAyB,KAAA,SAAc,UAAA;AAAA,MAAe,SAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babelProcessor.d.ts","names":[],"sources":["../../../src/extractContent/babelProcessor.ts"],"mappings":";;;;;KAYY,gBAAA;EACV,IAAA,EAAM,QAAA;EACN,GAAA;EACA,IAAA;EAOA,YAAA;EACA,iBAAA,GAAoB,CAAA,CAAE,
|
|
1
|
+
{"version":3,"file":"babelProcessor.d.ts","names":[],"sources":["../../../src/extractContent/babelProcessor.ts"],"mappings":";;;;;KAYY,gBAAA;EACV,IAAA,EAAM,QAAA;EACN,GAAA;EACA,IAAA;EAOA,YAAA;EACA,iBAAA,GAAoB,CAAA,CAAE,IAAA;EACtB,SAAA;AAAA;;;;;cAYW,uBAAA,GACX,IAAA,EAAM,QAAA,CAAS,CAAA,CAAE,UAAA,GAAa,CAAA,CAAE,WAAA,GAChC,QAAA,UACA,YAAA,EAAc,GAAA,UACd,sBAAA,GAAyB,IAAA,EAAM,QAAA,aAC/B,gBAAA,EAAkB,MAAA,SAAe,MAAA,mBACjC,YAAA,EAAc,gBAAA,IACd,YAAA,EAAc,GAAA,CAAI,CAAA,CAAE,IAAA;;;;;cAwIT,gCAAA,GACX,GAAA,EAAK,CAAA,CAAE,IAAA,EACP,QAAA,UACA,YAAA,EAAc,GAAA,UACd,UAAA,UACA,aAAA,EAAe,cAAA,EACf,QAAA,UACA,oBAAA,GAAsB,MAAA;EAEtB,gBAAA,EAAkB,MAAA,SAAe,MAAA;EACjC,YAAA,EAAc,gBAAA;EACd,sBAAA,EAAwB,GAAA,CAAI,QAAA;EAC5B,eAAA,EAAiB,GAAA,CAAI,CAAA,CAAE,IAAA;EACvB,cAAA,EAAgB,QAAA;EAChB,OAAA,EAAS,GAAA,CAAI,CAAA,CAAE,IAAA;EACf,OAAA;AAAA;;;;cAobW,gBAAA,GACX,GAAA,EAAK,CAAA,CAAE,IAAA,EACP,QAAA,UACA,YAAA,EAAc,GAAA,UACd,aAAA,EAAe,cAAA,EACf,QAAA,UACA,oBAAA,GAAsB,MAAA;EAEtB,gBAAA,EAAkB,MAAA;EAClB,YAAA,EAAc,gBAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contentWriter.d.ts","names":[],"sources":["../../../src/extractContent/contentWriter.ts"],"mappings":";;;;;;AAY4E;KA2BvE,eAAA;EACH,QAAA;EACA,WAAA,EAAa,
|
|
1
|
+
{"version":3,"file":"contentWriter.d.ts","names":[],"sources":["../../../src/extractContent/contentWriter.ts"],"mappings":";;;;;;AAY4E;KA2BvE,eAAA;EACH,QAAA;EACA,WAAA,EAAa,MAAA;AAAA;;;;KAMV,oBAAA,GAAuB,MAAA,SAAe,eAAA;AANtB;;;;;AAmBrB;AAnBqB,cAmBR,uCAAA,GACX,gBAAA,EAAkB,MAAA,kBAClB,kBAAA,EAAoB,UAAA,SACpB,aAAA,aACC,oBAAA;;;;;;;cAkDU,oCAAA,GACX,gBAAA,EAAkB,MAAA,kBAClB,kBAAA,EAAoB,UAAA,YACnB,MAAA;;;;cA8CU,kBAAA,GACX,gBAAA,EAAkB,MAAA,kBAClB,aAAA,EAAe,aAAA,EACf,QAAA,UACA,aAAA,EAAe,cAAA,KACd,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractContent.d.ts","names":[],"sources":["../../../src/extractContent/extractContent.ts"],"mappings":";;;;;KA0BY,sBAAA;EACV,aAAA,GAAgB,uBAAA;EAChB,QAAA;EACA,eAAA;EACA,oBAAA,GAAuB,MAAA;EACvB,aAAA,GAAgB,cAAA;EAChB,IAAA;EACA,SAAA,IAAa,MAAA;IACX,GAAA;IACA,OAAA,EAAS,MAAA;IACT,QAAA;EAAA,aACW,OAAA;AAAA;AAAA,KAsRV,aAAA;EACH,eAAA;EACA,mBAAA,EAAqB,
|
|
1
|
+
{"version":3,"file":"extractContent.d.ts","names":[],"sources":["../../../src/extractContent/extractContent.ts"],"mappings":";;;;;KA0BY,sBAAA;EACV,aAAA,GAAgB,uBAAA;EAChB,QAAA;EACA,eAAA;EACA,oBAAA,GAAuB,MAAA;EACvB,aAAA,GAAgB,cAAA;EAChB,IAAA;EACA,SAAA,IAAa,MAAA;IACX,GAAA;IACA,OAAA,EAAS,MAAA;IACT,QAAA;EAAA,aACW,OAAA;AAAA;AAAA,KAsRV,aAAA;EACH,eAAA;EACA,mBAAA,EAAqB,MAAA,SAAe,MAAA;AAAA;AAAA,cAmCzB,cAAA,GACX,QAAA,UACA,WAAA,EAAa,WAAA,EACb,OAAA,GAAU,sBAAA,KACT,OAAA,CAAQ,aAAA;;;;;;;;;;;cA8EE,kBAAA,GACX,QAAA,UACA,WAAA,EAAa,WAAA,EACb,OAAA,GAAU,sBAAA,KACT,aAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","names":[],"sources":["../../../../src/extractContent/utils/constants.ts"],"mappings":";;AAKA;;;;cAAa,qBAAA;AAcb
|
|
1
|
+
{"version":3,"file":"constants.d.ts","names":[],"sources":["../../../../src/extractContent/utils/constants.ts"],"mappings":";;AAKA;;;;cAAa,qBAAA;AAcb;;;;;AAiBA;AAjBA,cAAa,WAAA;;cAiBA,uBAAA,EAAyB,WAAA;AAAA,KAI1B,WAAA,WAAsB,WAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detectPackageName.d.ts","names":[],"sources":["../../../../src/extractContent/utils/detectPackageName.ts"],"mappings":";;;;;AAOA;cAAa,iBAAA,GAAqB,SAAA,aAAoB,
|
|
1
|
+
{"version":3,"file":"detectPackageName.d.ts","names":[],"sources":["../../../../src/extractContent/utils/detectPackageName.ts"],"mappings":";;;;;AAOA;cAAa,iBAAA,GAAqB,SAAA,aAAoB,WAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractDictionaryInfo.d.ts","names":[],"sources":["../../../../src/extractContent/utils/extractDictionaryInfo.ts"],"mappings":";;;;;cAmBa,SAAA,GACX,aAAA,EAAe,cAAA,EACf,MAAA,GAAS,MAAA,KACR,uBAAA;AAAA,KA0CS,uBAAA;EACV,YAAA;EACA,YAAA;EACA,WAAA;AAAA;;;;;cAOW,uBAAA,GACX,QAAA,UACA,YAAA,UACA,aAAA,EAAe,cAAA,EACf,MAAA,GAAS,MAAA,KACR,OAAA,CAAQ,uBAAA;AAAA,KA+GC,4BAAA;EACV,aAAA,GAAgB,
|
|
1
|
+
{"version":3,"file":"extractDictionaryInfo.d.ts","names":[],"sources":["../../../../src/extractContent/utils/extractDictionaryInfo.ts"],"mappings":";;;;;cAmBa,SAAA,GACX,aAAA,EAAe,cAAA,EACf,MAAA,GAAS,MAAA,KACR,uBAAA;AAAA,KA0CS,uBAAA;EACV,YAAA;EACA,YAAA;EACA,WAAA;AAAA;;;;;cAOW,uBAAA,GACX,QAAA,UACA,YAAA,UACA,aAAA,EAAe,cAAA,EACf,MAAA,GAAS,MAAA,KACR,OAAA,CAAQ,uBAAA;AAAA,KA+GC,4BAAA;EACV,aAAA,GAAgB,cAAA;AAAA;;;;cAML,qBAAA,GACX,QAAA,UACA,QAAA,UACA,aAAA,EAAe,cAAA,KACd,OAAA;EAEC,aAAA;AAAA,IACE,uBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractDictionaryKey.d.ts","names":[],"sources":["../../../../src/extractContent/utils/extractDictionaryKey.ts"],"mappings":";;AASA;;;;cAAa,4BAAA,GACX,QAAA,UACA,
|
|
1
|
+
{"version":3,"file":"extractDictionaryKey.d.ts","names":[],"sources":["../../../../src/extractContent/utils/extractDictionaryKey.ts"],"mappings":";;AASA;;;;cAAa,4BAAA,GACX,QAAA,UACA,MAAA;AAAA,cAiBW,oBAAA,GACX,QAAA,UACA,QAAA,UACA,MAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateKey.d.ts","names":[],"sources":["../../../../src/extractContent/utils/generateKey.ts"],"mappings":";cAAa,WAAA,GACX,IAAA,UACA,YAAA,EAAc,
|
|
1
|
+
{"version":3,"file":"generateKey.d.ts","names":[],"sources":["../../../../src/extractContent/utils/generateKey.ts"],"mappings":";cAAa,WAAA,GACX,IAAA,UACA,YAAA,EAAc,GAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getComponentName.d.ts","names":[],"sources":["../../../../src/extractContent/utils/getComponentName.ts"],"mappings":";;;;;AAMA;cAAa,gBAAA,GAAoB,
|
|
1
|
+
{"version":3,"file":"getComponentName.d.ts","names":[],"sources":["../../../../src/extractContent/utils/getComponentName.ts"],"mappings":";;;;;AAMA;cAAa,gBAAA,GAAoB,IAAA,EAAM,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getExistingIntlayerInfo.d.ts","names":[],"sources":["../../../../src/extractContent/utils/getExistingIntlayerInfo.ts"],"mappings":";;;;KAGY,oBAAA;EACV,GAAA;EACA,IAAA,iCAF8B;EAI9B,YAAA,UAMmC;EAJnC,cAAA,WAJA;EAMA,wBAAA,YAFA;EAIA,iBAAA,GAAoB,CAAA,CAAE,
|
|
1
|
+
{"version":3,"file":"getExistingIntlayerInfo.d.ts","names":[],"sources":["../../../../src/extractContent/utils/getExistingIntlayerInfo.ts"],"mappings":";;;;KAGY,oBAAA;EACV,GAAA;EACA,IAAA,iCAF8B;EAI9B,YAAA,UAMmC;EAJnC,cAAA,WAJA;EAMA,wBAAA,YAFA;EAIA,iBAAA,GAAoB,CAAA,CAAE,aAAA;AAAA;;;;cAMX,uBAAA,GACX,IAAA,EAAM,QAAA,KACL,oBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shouldExtract.d.ts","names":[],"sources":["../../../../src/extractContent/utils/shouldExtract.ts"],"mappings":";;AASA
|
|
1
|
+
{"version":3,"file":"shouldExtract.d.ts","names":[],"sources":["../../../../src/extractContent/utils/shouldExtract.ts"],"mappings":";;AASA;;;;;;;;cAAa,aAAA,GAAiB,IAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractScriptBlocks.d.ts","names":[],"sources":["../../src/extractScriptBlocks.ts"],"mappings":";;AAWA;;;;;;;;KAAY,WAAA;EACV,OAAA;EACA,kBAAA;EACA,gBAAA;AAAA
|
|
1
|
+
{"version":3,"file":"extractScriptBlocks.d.ts","names":[],"sources":["../../src/extractScriptBlocks.ts"],"mappings":";;AAWA;;;;;;;;KAAY,WAAA;EACV,OAAA;EACA,kBAAA;EACA,gBAAA;AAAA;;;;;;AAgIF;;;;;;;;;cAlCa,mBAAA,GACX,QAAA,UACA,IAAA,aACC,WAAA;;;;;;;;;;;cA+BU,kBAAA,GACX,YAAA,UACA,aAAA,EAAe,aAAA;EACb,KAAA,EAAO,WAAA;EACP,eAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getExtractPluginOptions.d.ts","names":[],"sources":["../../src/getExtractPluginOptions.ts"],"mappings":";;;;;;AAcA;;;KAAY,YAAA
|
|
1
|
+
{"version":3,"file":"getExtractPluginOptions.d.ts","names":[],"sources":["../../src/getExtractPluginOptions.ts"],"mappings":";;;;;;AAcA;;;KAAY,YAAA;;AAOZ;;;;cAAa,uBAAA,GACX,aAAA,GAAe,cAAA,EACf,KAAA,GAAO,YAAA,0BACN,oBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOptimizePluginOptions.d.ts","names":[],"sources":["../../src/getOptimizePluginOptions.ts"],"mappings":";;;;;KAUK,8BAAA;;AAFyE;;EAM5E,aAAA,GAAgB,uBAAA;EAAA;;;EAIhB,YAAA,GAAe,UAAA;EAII;;;EAAnB,SAAA,GAAY,OAAA,CAAQ,qBAAA;AAAA;;;;;;cAyBT,wBAAA,GACX,MAAA,GAAS,8BAAA,KACR,
|
|
1
|
+
{"version":3,"file":"getOptimizePluginOptions.d.ts","names":[],"sources":["../../src/getOptimizePluginOptions.ts"],"mappings":";;;;;KAUK,8BAAA;;AAFyE;;EAM5E,aAAA,GAAgB,uBAAA;EAAA;;;EAIhB,YAAA,GAAe,UAAA;EAII;;;EAAnB,SAAA,GAAY,OAAA,CAAQ,qBAAA;AAAA;;;;;;cAyBT,wBAAA,GACX,MAAA,GAAS,8BAAA,KACR,qBAAA"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { MinifyPluginOptions } from "./babel-plugin-intlayer-minify.js";
|
|
2
|
+
import { PurgePluginOptions } from "./babel-plugin-intlayer-purge.js";
|
|
3
|
+
import { Dictionary } from "@intlayer/types/dictionary";
|
|
4
|
+
import { GetConfigurationOptions } from "@intlayer/config/node";
|
|
5
|
+
|
|
6
|
+
//#region src/getPurgePluginOptions.d.ts
|
|
7
|
+
type GetPurgePluginOptionsParams = {
|
|
8
|
+
/**
|
|
9
|
+
* Options forwarded to the intlayer configuration loader.
|
|
10
|
+
* Pass this when `intlayer.config.ts` lives outside the default search path
|
|
11
|
+
* (e.g. in a monorepo workspace root).
|
|
12
|
+
*/
|
|
13
|
+
configOptions?: GetConfigurationOptions;
|
|
14
|
+
/**
|
|
15
|
+
* Pre-loaded dictionaries (optional – loaded automatically when omitted).
|
|
16
|
+
* Providing them avoids a second `getDictionaries` call when you already
|
|
17
|
+
* have them at hand.
|
|
18
|
+
*/
|
|
19
|
+
dictionaries?: Dictionary[];
|
|
20
|
+
/**
|
|
21
|
+
* Override specific resolved option values after the defaults are computed.
|
|
22
|
+
*/
|
|
23
|
+
overrides?: Partial<PurgePluginOptions>;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Returns fully-resolved options for {@link intlayerPurgeBabelPlugin}.
|
|
27
|
+
*
|
|
28
|
+
* Loads the intlayer configuration once at babel.config.js evaluation time so
|
|
29
|
+
* the plugin itself does not need to re-read the config on every file
|
|
30
|
+
* transform.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```js
|
|
34
|
+
* // babel.config.js
|
|
35
|
+
* const {
|
|
36
|
+
* intlayerPurgeBabelPlugin,
|
|
37
|
+
* getPurgePluginOptions,
|
|
38
|
+
* } = require("@intlayer/babel");
|
|
39
|
+
*
|
|
40
|
+
* module.exports = {
|
|
41
|
+
* presets: ["next/babel"],
|
|
42
|
+
* plugins: [
|
|
43
|
+
* [intlayerPurgeBabelPlugin, getPurgePluginOptions()],
|
|
44
|
+
* ],
|
|
45
|
+
* };
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
declare const getPurgePluginOptions: (params?: GetPurgePluginOptionsParams) => PurgePluginOptions;
|
|
49
|
+
type GetMinifyPluginOptionsParams = {
|
|
50
|
+
/**
|
|
51
|
+
* Options forwarded to the intlayer configuration loader.
|
|
52
|
+
*/
|
|
53
|
+
configOptions?: GetConfigurationOptions;
|
|
54
|
+
/**
|
|
55
|
+
* Override specific resolved option values after the defaults are computed.
|
|
56
|
+
*/
|
|
57
|
+
overrides?: Partial<MinifyPluginOptions>;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Returns fully-resolved options for {@link intlayerMinifyBabelPlugin}.
|
|
61
|
+
*
|
|
62
|
+
* Loads the intlayer configuration once at babel.config.js evaluation time.
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* ```js
|
|
66
|
+
* // babel.config.js
|
|
67
|
+
* const {
|
|
68
|
+
* intlayerMinifyBabelPlugin,
|
|
69
|
+
* getMinifyPluginOptions,
|
|
70
|
+
* } = require("@intlayer/babel");
|
|
71
|
+
*
|
|
72
|
+
* module.exports = {
|
|
73
|
+
* presets: ["next/babel"],
|
|
74
|
+
* plugins: [
|
|
75
|
+
* [intlayerMinifyBabelPlugin, getMinifyPluginOptions()],
|
|
76
|
+
* ],
|
|
77
|
+
* };
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
declare const getMinifyPluginOptions: (params?: GetMinifyPluginOptionsParams) => MinifyPluginOptions;
|
|
81
|
+
//#endregion
|
|
82
|
+
export { getMinifyPluginOptions, getPurgePluginOptions };
|
|
83
|
+
//# sourceMappingURL=getPurgePluginOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getPurgePluginOptions.d.ts","names":[],"sources":["../../src/getPurgePluginOptions.ts"],"mappings":";;;;;;KAkCK,2BAAA;;AAzBmE;;;;EA+BtE,aAAA,GAAgB,uBAAA;EAYI;;;;;EALpB,YAAA,GAAe,UAAA;EAAf;;;EAKA,SAAA,GAAY,OAAA,CAAQ,kBAAA;AAAA;;;AA0BtB;;;;;;;;;AA0CE;;;;;;;;;;;;cA1CW,qBAAA,GACX,MAAA,GAAS,2BAAA,KACR,kBAAA;AAAA,KA4CE,4BAAA;EASoC;AAwBzC;;EA7BE,aAAA,GAAgB,uBAAA;EA+CjB;;;EA1CC,SAAA,GAAY,OAAA,CAAQ,mBAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;cAwBT,sBAAA,GACX,MAAA,GAAS,4BAAA,KACR,mBAAA"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -2,7 +2,9 @@ import { ATTRIBUTES_TO_EXTRACT, PackageName, SERVER_CAPABLE_PACKAGES, packageLis
|
|
|
2
2
|
import { ExtractPluginOptions, ExtractResult, intlayerExtractBabelPlugin } from "./babel-plugin-intlayer-extract.js";
|
|
3
3
|
import { CompatCallerConfig, CompatNamespaceSource, DEFAULT_COMPAT_CALLERS, DictionaryFieldUsage, INTLAYER_CALLER_NAMES, IntlayerCallerName, NestedRenameEntry, NestedRenameMap, PruneContext, createPruneContext, makeUsageAnalyzerBabelPlugin } from "./babel-plugin-intlayer-usage-analyzer.js";
|
|
4
4
|
import { buildNestedRenameMapFromContent, generateShortFieldName, makeFieldRenameBabelPlugin } from "./babel-plugin-intlayer-field-rename.js";
|
|
5
|
+
import { MinifyPluginOptions, intlayerMinifyBabelPlugin } from "./babel-plugin-intlayer-minify.js";
|
|
5
6
|
import { OptimizePluginOptions, intlayerOptimizeBabelPlugin } from "./babel-plugin-intlayer-optimize.js";
|
|
7
|
+
import { PurgePluginOptions, getSharedPruneContext, intlayerPurgeBabelPlugin } from "./babel-plugin-intlayer-purge.js";
|
|
6
8
|
import { mergeWithExistingMultilingualDictionary, mergeWithExistingPerLocaleDictionary, writeContentHelper } from "./extractContent/contentWriter.js";
|
|
7
9
|
import { detectPackageName } from "./extractContent/utils/detectPackageName.js";
|
|
8
10
|
import { ExtractDictionaryInfoOptions, ResolveContentFilePaths, extractDictionaryInfo, getOutput, resolveContentFilePaths } from "./extractContent/utils/extractDictionaryInfo.js";
|
|
@@ -13,5 +15,6 @@ import { ExtractIntlayerOptions, extractContent, extractContentSync } from "./ex
|
|
|
13
15
|
import { ScriptBlock, extractScriptBlocks, injectScriptBlocks } from "./extractScriptBlocks.js";
|
|
14
16
|
import { CompilerMode, getExtractPluginOptions } from "./getExtractPluginOptions.js";
|
|
15
17
|
import { getOptimizePluginOptions } from "./getOptimizePluginOptions.js";
|
|
18
|
+
import { getMinifyPluginOptions, getPurgePluginOptions } from "./getPurgePluginOptions.js";
|
|
16
19
|
import { BABEL_PARSER_OPTIONS, COMPAT_USAGE_REGEX, INTLAYER_OR_COMPAT_USAGE_REGEX, INTLAYER_USAGE_REGEX, SOURCE_FILE_REGEX, analyzeFieldUsageInFile, optimizeSourceFile, renameFieldsInCode, renameFieldsInSourceFile } from "./transformers.js";
|
|
17
|
-
export { ATTRIBUTES_TO_EXTRACT, BABEL_PARSER_OPTIONS, COMPAT_USAGE_REGEX, CompatCallerConfig, CompatNamespaceSource, CompilerMode, DEFAULT_COMPAT_CALLERS, DictionaryFieldUsage, ExtractDictionaryInfoOptions, ExtractIntlayerOptions, ExtractPluginOptions, ExtractResult, INTLAYER_CALLER_NAMES, INTLAYER_OR_COMPAT_USAGE_REGEX, INTLAYER_USAGE_REGEX, IntlayerCallerName, NestedRenameEntry, NestedRenameMap, OptimizePluginOptions, PackageName, PruneContext, ResolveContentFilePaths, SERVER_CAPABLE_PACKAGES, SOURCE_FILE_REGEX, ScriptBlock, analyzeFieldUsageInFile, buildNestedRenameMapFromContent, createPruneContext, detectPackageName, extractContent, extractContentSync, extractDictionaryInfo, extractDictionaryKey, extractDictionaryKeyFromPath, extractScriptBlocks, generateKey, generateShortFieldName, getComponentName, getExtractPluginOptions, getOptimizePluginOptions, getOutput, injectScriptBlocks, intlayerExtractBabelPlugin, intlayerOptimizeBabelPlugin, makeFieldRenameBabelPlugin, makeUsageAnalyzerBabelPlugin, mergeWithExistingMultilingualDictionary, mergeWithExistingPerLocaleDictionary, optimizeSourceFile, packageList, renameFieldsInCode, renameFieldsInSourceFile, resolveContentFilePaths, writeContentHelper };
|
|
20
|
+
export { ATTRIBUTES_TO_EXTRACT, BABEL_PARSER_OPTIONS, COMPAT_USAGE_REGEX, CompatCallerConfig, CompatNamespaceSource, type CompilerMode, DEFAULT_COMPAT_CALLERS, DictionaryFieldUsage, ExtractDictionaryInfoOptions, ExtractIntlayerOptions, ExtractPluginOptions, ExtractResult, INTLAYER_CALLER_NAMES, INTLAYER_OR_COMPAT_USAGE_REGEX, INTLAYER_USAGE_REGEX, IntlayerCallerName, MinifyPluginOptions, NestedRenameEntry, NestedRenameMap, OptimizePluginOptions, PackageName, PruneContext, PurgePluginOptions, ResolveContentFilePaths, SERVER_CAPABLE_PACKAGES, SOURCE_FILE_REGEX, ScriptBlock, analyzeFieldUsageInFile, buildNestedRenameMapFromContent, createPruneContext, detectPackageName, extractContent, extractContentSync, extractDictionaryInfo, extractDictionaryKey, extractDictionaryKeyFromPath, extractScriptBlocks, generateKey, generateShortFieldName, getComponentName, getExtractPluginOptions, getMinifyPluginOptions, getOptimizePluginOptions, getOutput, getPurgePluginOptions, getSharedPruneContext, injectScriptBlocks, intlayerExtractBabelPlugin, intlayerMinifyBabelPlugin, intlayerOptimizeBabelPlugin, intlayerPurgeBabelPlugin, makeFieldRenameBabelPlugin, makeUsageAnalyzerBabelPlugin, mergeWithExistingMultilingualDictionary, mergeWithExistingPerLocaleDictionary, optimizeSourceFile, packageList, renameFieldsInCode, renameFieldsInSourceFile, resolveContentFilePaths, writeContentHelper };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformers.d.ts","names":[],"sources":["../../src/transformers.ts"],"mappings":";;;;;;;AAmBA;;cAAa,oBAAA,EAAsB,
|
|
1
|
+
{"version":3,"file":"transformers.d.ts","names":[],"sources":["../../src/transformers.ts"],"mappings":";;;;;;;AAmBA;;cAAa,oBAAA,EAAsB,WAAA,CAAY,gBAAA;;;AAyB/C;;;cAAa,oBAAA,EAAoB,MAAA;;AAOjC;;;;cAAa,kBAAA,EAAkB,MAAA;AAO/B;;;;AAAA,cAAa,8BAAA,EAA8B,MAAA;AAQ3C;;;;;AAAA,cAAa,iBAAA,EAAiB,MAAA;;;;;;;;;;;;;cAqCjB,uBAAA,GACX,cAAA,UACA,IAAA,UACA,YAAA,EAAc,YAAA,EACd,aAAA,GAAgB,kBAAA,OACf,OAAA;;;;AAwBH;;;cAAa,kBAAA,GACX,IAAA,UACA,cAAA,UACA,YAAA,EAAc,YAAA,KACb,OAAA;;;;;;;;cAqBU,wBAAA,GACX,cAAA,UACA,IAAA,UACA,YAAA,EAAc,YAAA,KACb,OAAA;;;;;;;;;cA8CU,kBAAA,GACX,IAAA,UACA,cAAA,UACA,OAAA,EAAS,qBAAA,KACR,OAAA;EACD,IAAA;EACA,GAAA;AAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intlayer/babel",
|
|
3
|
-
"version": "8.12.
|
|
3
|
+
"version": "8.12.3",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A Babel plugin for Intlayer that transforms declaration files and provides internationalization features during the build process according to the Intlayer configuration.",
|
|
6
6
|
"keywords": [
|
|
@@ -81,31 +81,31 @@
|
|
|
81
81
|
"@babel/plugin-syntax-jsx": "7.29.7",
|
|
82
82
|
"@babel/traverse": "7.29.7",
|
|
83
83
|
"@babel/types": "7.29.7",
|
|
84
|
-
"@intlayer/chokidar": "8.12.
|
|
85
|
-
"@intlayer/config": "8.12.
|
|
86
|
-
"@intlayer/core": "8.12.
|
|
87
|
-
"@intlayer/dictionaries-entry": "8.12.
|
|
88
|
-
"@intlayer/types": "8.12.
|
|
89
|
-
"@intlayer/unmerged-dictionaries-entry": "8.12.
|
|
84
|
+
"@intlayer/chokidar": "8.12.3",
|
|
85
|
+
"@intlayer/config": "8.12.3",
|
|
86
|
+
"@intlayer/core": "8.12.3",
|
|
87
|
+
"@intlayer/dictionaries-entry": "8.12.3",
|
|
88
|
+
"@intlayer/types": "8.12.3",
|
|
89
|
+
"@intlayer/unmerged-dictionaries-entry": "8.12.3",
|
|
90
90
|
"@types/babel__core": "7.20.5",
|
|
91
91
|
"@types/babel__generator": "7.27.0",
|
|
92
92
|
"@types/babel__traverse": "7.28.0"
|
|
93
93
|
},
|
|
94
94
|
"devDependencies": {
|
|
95
95
|
"@babel/plugin-syntax-jsx": "7.29.7",
|
|
96
|
-
"@types/node": "25.9.
|
|
96
|
+
"@types/node": "25.9.2",
|
|
97
97
|
"@utils/ts-config": "1.0.4",
|
|
98
98
|
"@utils/ts-config-types": "1.0.4",
|
|
99
99
|
"@utils/tsdown-config": "1.0.4",
|
|
100
100
|
"@vitejs/plugin-react": "6.0.2",
|
|
101
101
|
"rimraf": "6.1.3",
|
|
102
|
-
"tsdown": "0.
|
|
102
|
+
"tsdown": "0.21.10",
|
|
103
103
|
"typescript": "6.0.3",
|
|
104
104
|
"vitest": "4.1.8"
|
|
105
105
|
},
|
|
106
106
|
"peerDependencies": {
|
|
107
|
-
"@intlayer/svelte-compiler": "8.12.
|
|
108
|
-
"@intlayer/vue-compiler": "8.12.
|
|
107
|
+
"@intlayer/svelte-compiler": "8.12.3",
|
|
108
|
+
"@intlayer/vue-compiler": "8.12.3"
|
|
109
109
|
},
|
|
110
110
|
"peerDependenciesMeta": {
|
|
111
111
|
"@intlayer/svelte-compiler": {
|