react-scripts-intlayer 7.5.11 → 7.5.13

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.
@@ -1,5 +1,4 @@
1
1
  #!/usr/bin/env node
2
- const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
3
2
  let _intlayer_config = require("@intlayer/config");
4
3
  let node_child_process = require("node:child_process");
5
4
 
@@ -1 +1 @@
1
- {"version":3,"file":"react-scripts-intlayer.cjs","names":[],"sources":["../../../src/cli/react-scripts-intlayer.ts"],"sourcesContent":["#!/usr/bin/env node\n\n/**\n * To make the setup easier, we are using craco to override the webpack configuration.\n * This script is used to run the craco scripts with the custom configuration.\n *\n * The script is based on the original craco script from create-react-app.\n */\n\nimport { spawnSync } from 'node:child_process';\nimport { getProjectRequire, logger } from '@intlayer/config';\n\nconst args = process.argv.slice(2);\nconst scriptIndex = args.findIndex(\n (index) => index === 'build' || index === 'start' || index === 'test'\n);\nconst script = scriptIndex === -1 ? args[0] : args[scriptIndex];\n\nswitch (script) {\n case 'build':\n case 'start':\n case 'test': {\n const nodeArgs = scriptIndex > 0 ? args.slice(0, scriptIndex) : [];\n const scriptPath = getProjectRequire().resolve(\n `@craco/craco/dist/scripts/${script}`\n );\n\n const scriptArgs = args.slice(scriptIndex + 1);\n const processArgs = nodeArgs\n .concat(scriptPath)\n .concat([\n ...scriptArgs,\n '--config',\n './node_modules/react-scripts-intlayer/dist/cjs/craco.config.cjs',\n ]);\n\n const child = spawnSync('node', processArgs, {\n stdio: 'inherit',\n });\n\n if (child.signal) {\n if (child.signal === 'SIGKILL') {\n logger(`\n The build failed because the process exited too early.\n This probably means the system ran out of memory or someone called\n \\`kill -9\\` on the process.\n `);\n } else if (child.signal === 'SIGTERM') {\n logger(`\n The build failed because the process exited too early.\n Someone might have called \\`kill\\` or \\`killall\\`, or the system could\n be shutting down.\n `);\n }\n\n process.exit(1);\n }\n\n process.exit(child.status ?? undefined);\n break;\n }\n default:\n logger(`Unknown script \"${script}\".`);\n logger('Perhaps you need to update craco?');\n break;\n}\n"],"mappings":";;;;;;;;;;;;AAYA,MAAM,OAAO,QAAQ,KAAK,MAAM,EAAE;AAClC,MAAM,cAAc,KAAK,WACtB,UAAU,UAAU,WAAW,UAAU,WAAW,UAAU,OAChE;AACD,MAAM,SAAS,gBAAgB,KAAK,KAAK,KAAK,KAAK;AAEnD,QAAQ,QAAR;CACE,KAAK;CACL,KAAK;CACL,KAAK,QAAQ;EACX,MAAM,WAAW,cAAc,IAAI,KAAK,MAAM,GAAG,YAAY,GAAG,EAAE;EAClE,MAAM,sDAAgC,CAAC,QACrC,6BAA6B,SAC9B;EAED,MAAM,aAAa,KAAK,MAAM,cAAc,EAAE;EAS9C,MAAM,0CAAkB,QARJ,SACjB,OAAO,WAAW,CAClB,OAAO;GACN,GAAG;GACH;GACA;GACD,CAAC,EAEyC,EAC3C,OAAO,WACR,CAAC;AAEF,MAAI,MAAM,QAAQ;AAChB,OAAI,MAAM,WAAW,UACnB,8BAAO;;;;cAID;YACG,MAAM,WAAW,UAC1B,8BAAO;;;;cAID;AAGR,WAAQ,KAAK,EAAE;;AAGjB,UAAQ,KAAK,MAAM,UAAU,OAAU;AACvC;;CAEF;AACE,+BAAO,mBAAmB,OAAO,IAAI;AACrC,+BAAO,oCAAoC;AAC3C"}
1
+ {"version":3,"file":"react-scripts-intlayer.cjs","names":[],"sources":["../../../src/cli/react-scripts-intlayer.ts"],"sourcesContent":["#!/usr/bin/env node\n\n/**\n * To make the setup easier, we are using craco to override the webpack configuration.\n * This script is used to run the craco scripts with the custom configuration.\n *\n * The script is based on the original craco script from create-react-app.\n */\n\nimport { spawnSync } from 'node:child_process';\nimport { getProjectRequire, logger } from '@intlayer/config';\n\nconst args = process.argv.slice(2);\nconst scriptIndex = args.findIndex(\n (index) => index === 'build' || index === 'start' || index === 'test'\n);\nconst script = scriptIndex === -1 ? args[0] : args[scriptIndex];\n\nswitch (script) {\n case 'build':\n case 'start':\n case 'test': {\n const nodeArgs = scriptIndex > 0 ? args.slice(0, scriptIndex) : [];\n const scriptPath = getProjectRequire().resolve(\n `@craco/craco/dist/scripts/${script}`\n );\n\n const scriptArgs = args.slice(scriptIndex + 1);\n const processArgs = nodeArgs\n .concat(scriptPath)\n .concat([\n ...scriptArgs,\n '--config',\n './node_modules/react-scripts-intlayer/dist/cjs/craco.config.cjs',\n ]);\n\n const child = spawnSync('node', processArgs, {\n stdio: 'inherit',\n });\n\n if (child.signal) {\n if (child.signal === 'SIGKILL') {\n logger(`\n The build failed because the process exited too early.\n This probably means the system ran out of memory or someone called\n \\`kill -9\\` on the process.\n `);\n } else if (child.signal === 'SIGTERM') {\n logger(`\n The build failed because the process exited too early.\n Someone might have called \\`kill\\` or \\`killall\\`, or the system could\n be shutting down.\n `);\n }\n\n process.exit(1);\n }\n\n process.exit(child.status ?? undefined);\n break;\n }\n default:\n logger(`Unknown script \"${script}\".`);\n logger('Perhaps you need to update craco?');\n break;\n}\n"],"mappings":";;;;;;;;;;;AAYA,MAAM,OAAO,QAAQ,KAAK,MAAM,EAAE;AAClC,MAAM,cAAc,KAAK,WACtB,UAAU,UAAU,WAAW,UAAU,WAAW,UAAU,OAChE;AACD,MAAM,SAAS,gBAAgB,KAAK,KAAK,KAAK,KAAK;AAEnD,QAAQ,QAAR;CACE,KAAK;CACL,KAAK;CACL,KAAK,QAAQ;EACX,MAAM,WAAW,cAAc,IAAI,KAAK,MAAM,GAAG,YAAY,GAAG,EAAE;EAClE,MAAM,sDAAgC,CAAC,QACrC,6BAA6B,SAC9B;EAED,MAAM,aAAa,KAAK,MAAM,cAAc,EAAE;EAS9C,MAAM,0CAAkB,QARJ,SACjB,OAAO,WAAW,CAClB,OAAO;GACN,GAAG;GACH;GACA;GACD,CAAC,EAEyC,EAC3C,OAAO,WACR,CAAC;AAEF,MAAI,MAAM,QAAQ;AAChB,OAAI,MAAM,WAAW,UACnB,8BAAO;;;;cAID;YACG,MAAM,WAAW,UAC1B,8BAAO;;;;cAID;AAGR,WAAQ,KAAK,EAAE;;AAGjB,UAAQ,KAAK,MAAM,UAAU,OAAU;AACvC;;CAEF;AACE,+BAAO,mBAAmB,OAAO,IAAI;AACrC,+BAAO,oCAAoC;AAC3C"}
@@ -1,14 +1,9 @@
1
- const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
2
1
  const require_intlayerCracoPlugin = require('./intlayerCracoPlugin.cjs');
3
2
 
4
3
  //#region src/craco.config.ts
5
- var require_craco_config = /* @__PURE__ */ require_rolldown_runtime.__commonJSMin(((exports, module) => {
6
- require_intlayerCracoPlugin.init_intlayerCracoPlugin();
7
- const cracoConfig = { plugins: [{ plugin: require_intlayerCracoPlugin.intlayerCracoPlugin }] };
8
- module.exports = cracoConfig;
9
- }));
4
+ const cracoConfig = { plugins: [{ plugin: require_intlayerCracoPlugin.intlayerCracoPlugin }] };
5
+ var craco_config_default = cracoConfig;
10
6
 
11
7
  //#endregion
12
- module.exports = require_craco_config();
13
-
8
+ module.exports = craco_config_default;
14
9
  //# sourceMappingURL=craco.config.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"craco.config.cjs","names":["intlayerCracoPlugin"],"sources":["../../src/craco.config.ts"],"sourcesContent":["import type { CracoConfig } from '@craco/types';\nimport { intlayerCracoPlugin } from './intlayerCracoPlugin';\n\n// Usage Example\nconst cracoConfig = {\n plugins: [\n {\n plugin: intlayerCracoPlugin,\n },\n ],\n} satisfies CracoConfig;\n\n// Necessary Exporting as CJS for CRACO to work\nmodule.exports = cracoConfig;\n"],"mappings":";;;;;uDAC4D;CAG5D,MAAM,cAAc,EAClB,SAAS,CACP,EACE,QAAQA,iDACT,CACF,EACF;AAGD,QAAO,UAAU"}
1
+ {"version":3,"file":"craco.config.cjs","names":["intlayerCracoPlugin"],"sources":["../../src/craco.config.ts"],"sourcesContent":["import type { CracoConfig } from '@craco/types';\nimport { intlayerCracoPlugin } from './intlayerCracoPlugin';\n\n// Usage Example\nconst cracoConfig = {\n plugins: [\n {\n plugin: intlayerCracoPlugin,\n },\n ],\n} satisfies CracoConfig;\n\n// Necessary Exporting as CJS for CRACO to work\nexport default cracoConfig;\n"],"mappings":";;;AAIA,MAAM,cAAc,EAClB,SAAS,CACP,EACE,QAAQA,iDACT,CACF,EACF;AAGD,2BAAe"}
@@ -1,12 +1,5 @@
1
- const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
2
1
  const require_intlayerCracoPlugin = require('./intlayerCracoPlugin.cjs');
3
- const require_craco_config$1 = require('./craco.config.cjs');
4
2
 
5
- //#region src/index.ts
6
- init_intlayerCracoPlugin();
7
-
8
- //#endregion
9
3
  exports.intlayerCracoPlugin = require_intlayerCracoPlugin.intlayerCracoPlugin;
10
4
  exports.overrideCracoConfig = require_intlayerCracoPlugin.overrideCracoConfig;
11
- exports.overrideWebpackConfig = require_intlayerCracoPlugin.overrideWebpackConfig;
12
- //# sourceMappingURL=index.cjs.map
5
+ exports.overrideWebpackConfig = require_intlayerCracoPlugin.overrideWebpackConfig;
@@ -1,70 +1,46 @@
1
- const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
1
+ let node_path = require("node:path");
2
2
  let _intlayer_config = require("@intlayer/config");
3
3
  let _intlayer_webpack = require("@intlayer/webpack");
4
+ let defu = require("defu");
4
5
 
5
6
  //#region src/intlayerCracoPlugin.ts
6
- var intlayerConfig, overrideWebpackConfig, overrideCracoConfig, intlayerCracoPlugin;
7
- var init_intlayerCracoPlugin = require_rolldown_runtime.__esmMin((() => {
8
- intlayerConfig = (0, _intlayer_config.getConfiguration)();
9
- overrideWebpackConfig = ({ webpackConfig }) => {
10
- webpackConfig.externals = {
11
- ...typeof webpackConfig.externals === "object" ? webpackConfig.externals : {},
12
- esbuild: "esbuild"
13
- };
14
- webpackConfig.externals.module = void 0;
15
- webpackConfig.externals.fs = void 0;
16
- webpackConfig.externals.path = void 0;
17
- webpackConfig.externals.vm = void 0;
18
- webpackConfig.module.rules.push({
19
- test: /\.node$/,
20
- use: "node-loader"
21
- });
22
- return webpackConfig;
23
- };
24
- overrideCracoConfig = ({ cracoConfig }) => {
25
- return {
26
- ...cracoConfig,
27
- webpack: {
28
- ...cracoConfig.webpack,
29
- plugins: {
30
- ...cracoConfig.webpack?.plugins,
31
- add: [...cracoConfig.webpack?.plugins?.add ?? [], new _intlayer_webpack.IntlayerPlugin(intlayerConfig)]
32
- },
33
- configure: {
34
- ...cracoConfig.webpack?.configure ?? {},
35
- resolve: {
36
- ...cracoConfig.webpack?.configure?.resolve ?? {},
37
- fallback: {
38
- ...cracoConfig.webpack?.configure?.resolve?.fallback ?? {},
39
- process: (0, _intlayer_config.getProjectRequire)().resolve("process/browser"),
40
- fs: false,
41
- module: false,
42
- path: false,
43
- vm: false
44
- }
45
- }
46
- },
47
- alias: {
48
- ...cracoConfig.webpack?.alias,
49
- ...(0, _intlayer_config.getAlias)({ configuration: intlayerConfig })
50
- }
51
- }
52
- };
53
- };
54
- intlayerCracoPlugin = {
55
- overrideCracoConfig,
56
- overrideWebpackConfig
7
+ const intlayerConfig = (0, _intlayer_config.getConfiguration)();
8
+ const alias = (0, _intlayer_config.getAlias)({
9
+ configuration: intlayerConfig,
10
+ formatter: (value) => (0, node_path.join)(process.cwd(), value)
11
+ });
12
+ /**
13
+ * Override the final CRA Webpack config.
14
+ * We explicitely type the return as WebpackConfig to solve TS2742.
15
+ */
16
+ const overrideWebpackConfig = ({ webpackConfig }) => {
17
+ if (typeof webpackConfig.externals === "object") webpackConfig.externals = {
18
+ ...webpackConfig.externals,
19
+ esbuild: "esbuild"
57
20
  };
58
- }));
21
+ webpackConfig.module?.rules?.push({
22
+ test: /\.node$/,
23
+ use: "node-loader"
24
+ });
25
+ return webpackConfig;
26
+ };
27
+ /**
28
+ * Override the CRACO config itself to set up aliases, fallbacks, and plugins.
29
+ */
30
+ const overrideCracoConfig = ({ cracoConfig }) => (0, defu.defu)({ webpack: {
31
+ plugins: { add: [...cracoConfig.webpack?.plugins?.add ?? [], new _intlayer_webpack.IntlayerPlugin(intlayerConfig)] },
32
+ alias
33
+ } }, cracoConfig);
34
+ /**
35
+ * A CRACO plugin that adds the Intlayer configuration to the webpack configuration
36
+ * and sets the environment variables.
37
+ */
38
+ const intlayerCracoPlugin = {
39
+ overrideCracoConfig,
40
+ overrideWebpackConfig
41
+ };
59
42
 
60
43
  //#endregion
61
- init_intlayerCracoPlugin();
62
- Object.defineProperty(exports, 'init_intlayerCracoPlugin', {
63
- enumerable: true,
64
- get: function () {
65
- return init_intlayerCracoPlugin;
66
- }
67
- });
68
44
  exports.intlayerCracoPlugin = intlayerCracoPlugin;
69
45
  exports.overrideCracoConfig = overrideCracoConfig;
70
46
  exports.overrideWebpackConfig = overrideWebpackConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"intlayerCracoPlugin.cjs","names":["IntlayerWebpackPlugin","intlayerCracoPlugin: CracoPlugin"],"sources":["../../src/intlayerCracoPlugin.ts"],"sourcesContent":["// craco-intlayer-plugin.ts\n\n// @ts-nocheck\n\nimport type {\n CracoConfig,\n CracoConfigOverride,\n CracoPlugin,\n WebpackConfigOverride,\n} from '@craco/types';\nimport {\n getAlias,\n getConfiguration,\n getProjectRequire,\n} from '@intlayer/config';\nimport { IntlayerPlugin as IntlayerWebpackPlugin } from '@intlayer/webpack';\nimport type { Configuration as WebpackConfig } from 'webpack';\n\n// Get Intlayer configuration\nconst intlayerConfig = getConfiguration();\n\n/**\n * Override the final CRA Webpack config.\n */\nexport const overrideWebpackConfig = ({\n webpackConfig,\n}: WebpackConfigOverride): WebpackConfig => {\n // 1) Remove `module`, `fs`, `path`, `vm` from externals. In CRA, you usually\n // want these to be bundled (or set to fallbacks).\n webpackConfig.externals = {\n ...(typeof webpackConfig.externals === 'object'\n ? webpackConfig.externals\n : {}),\n esbuild: 'esbuild', // keep only esbuild external\n };\n webpackConfig.externals.module = undefined;\n webpackConfig.externals.fs = undefined;\n webpackConfig.externals.path = undefined;\n webpackConfig.externals.vm = undefined;\n\n // 2) Properly push node-loader rule instead of overwriting.\n webpackConfig.module.rules.push({\n test: /\\.node$/,\n use: 'node-loader',\n });\n\n return webpackConfig;\n};\n\n/**\n * Override the CRACO config itself to set up aliases, fallbacks, and plugins.\n */\nexport const overrideCracoConfig = ({\n cracoConfig,\n}: CracoConfigOverride): CracoConfig => {\n return {\n ...cracoConfig,\n webpack: {\n ...cracoConfig.webpack,\n plugins: {\n ...cracoConfig.webpack?.plugins,\n // Ensure we actually add IntlayerWebpackPlugin\n add: [\n ...(cracoConfig.webpack?.plugins?.add ?? []),\n new IntlayerWebpackPlugin(intlayerConfig),\n ],\n },\n configure: {\n ...(cracoConfig.webpack?.configure ?? {}),\n resolve: {\n ...(cracoConfig.webpack?.configure?.resolve ?? {}),\n // 3) Provide browser fallbacks so these modules won’t error out in the browser.\n fallback: {\n ...(cracoConfig.webpack?.configure?.resolve?.fallback ?? {}),\n process: getProjectRequire().resolve('process/browser'),\n fs: false,\n module: false,\n path: false,\n vm: false,\n },\n },\n },\n // 4) Alias @intlayer/dictionaries-entry so it no longer tries to use the ESM that depends on `fs`, etc.\n alias: {\n ...cracoConfig.webpack?.alias,\n ...getAlias({\n configuration: intlayerConfig,\n }),\n },\n },\n };\n};\n\n/**\n * A CRACO plugin that adds the Intlayer configuration to the webpack configuration and sets the environment variables.\n *\n * Usage:\n *\n * ```ts\n * const cracoConfig: CracoConfig = {\n * plugins: [\n * {\n * plugin: intlayerCracoPlugin,\n * },\n * ],\n * };\n *\n * export default cracoConfig;\n * ```\n */\nexport const intlayerCracoPlugin: CracoPlugin = {\n overrideCracoConfig,\n overrideWebpackConfig,\n};\n"],"mappings":";;;;;;;CAmBM,yDAAmC;CAK5B,yBAAyB,EACpC,oBAC0C;AAG1C,gBAAc,YAAY;GACxB,GAAI,OAAO,cAAc,cAAc,WACnC,cAAc,YACd,EAAE;GACN,SAAS;GACV;AACD,gBAAc,UAAU,SAAS;AACjC,gBAAc,UAAU,KAAK;AAC7B,gBAAc,UAAU,OAAO;AAC/B,gBAAc,UAAU,KAAK;AAG7B,gBAAc,OAAO,MAAM,KAAK;GAC9B,MAAM;GACN,KAAK;GACN,CAAC;AAEF,SAAO;;CAMI,uBAAuB,EAClC,kBACsC;AACtC,SAAO;GACL,GAAG;GACH,SAAS;IACP,GAAG,YAAY;IACf,SAAS;KACP,GAAG,YAAY,SAAS;KAExB,KAAK,CACH,GAAI,YAAY,SAAS,SAAS,OAAO,EAAE,EAC3C,IAAIA,iCAAsB,eAAe,CAC1C;KACF;IACD,WAAW;KACT,GAAI,YAAY,SAAS,aAAa,EAAE;KACxC,SAAS;MACP,GAAI,YAAY,SAAS,WAAW,WAAW,EAAE;MAEjD,UAAU;OACR,GAAI,YAAY,SAAS,WAAW,SAAS,YAAY,EAAE;OAC3D,kDAA4B,CAAC,QAAQ,kBAAkB;OACvD,IAAI;OACJ,QAAQ;OACR,MAAM;OACN,IAAI;OACL;MACF;KACF;IAED,OAAO;KACL,GAAG,YAAY,SAAS;KACxB,kCAAY,EACV,eAAe,gBAChB,CAAC;KACH;IACF;GACF;;CAoBUC,sBAAmC;EAC9C;EACA;EACD"}
1
+ {"version":3,"file":"intlayerCracoPlugin.cjs","names":["IntlayerWebpackPlugin","intlayerCracoPlugin: CracoPlugin"],"sources":["../../src/intlayerCracoPlugin.ts"],"sourcesContent":["import { join } from 'node:path';\nimport type {\n CracoConfig,\n CracoConfigOverride,\n CracoPlugin,\n WebpackConfigOverride,\n} from '@craco/types';\nimport { getAlias, getConfiguration } from '@intlayer/config';\nimport { IntlayerPlugin as IntlayerWebpackPlugin } from '@intlayer/webpack';\nimport { defu } from 'defu';\nimport type { Configuration as WebpackConfig } from 'webpack';\n\n// Get Intlayer configuration\nconst intlayerConfig = getConfiguration();\n\nconst alias = getAlias({\n configuration: intlayerConfig,\n formatter: (value: string) => join(process.cwd(), value),\n});\n\n/**\n * Override the final CRA Webpack config.\n * We explicitely type the return as WebpackConfig to solve TS2742.\n */\nexport const overrideWebpackConfig = ({\n webpackConfig,\n}: WebpackConfigOverride): WebpackConfig => {\n // 1) Remove `module`, `fs`, `path`, `vm` from externals.\n if (typeof webpackConfig.externals === 'object') {\n webpackConfig.externals = {\n ...webpackConfig.externals,\n esbuild: 'esbuild',\n };\n }\n\n // 2) Properly push node-loader rule\n webpackConfig.module?.rules?.push({\n test: /\\.node$/,\n use: 'node-loader',\n });\n\n // We cast here to satisfy the internal function return type if there are minor discrepancies\n return webpackConfig as WebpackConfig;\n};\n\n/**\n * Override the CRACO config itself to set up aliases, fallbacks, and plugins.\n */\nexport const overrideCracoConfig = ({\n cracoConfig,\n}: CracoConfigOverride): CracoConfig =>\n defu(\n {\n webpack: {\n plugins: {\n // defu overwrites arrays by default, so we manually preserve existing plugins\n add: [\n ...(cracoConfig.webpack?.plugins?.add ?? []),\n new IntlayerWebpackPlugin(intlayerConfig),\n ],\n },\n // Automatically merges deeply with existing aliases\n alias,\n },\n },\n cracoConfig\n ) as CracoConfig;\n\n/**\n * A CRACO plugin that adds the Intlayer configuration to the webpack configuration\n * and sets the environment variables.\n */\nexport const intlayerCracoPlugin: CracoPlugin = {\n overrideCracoConfig,\n // We cast to `any` here to bypass the strict version mismatch between\n // the 'webpack' package installed in your node_modules and the one expected by '@craco/types'\n overrideWebpackConfig: overrideWebpackConfig as any,\n};\n"],"mappings":";;;;;;AAaA,MAAM,yDAAmC;AAEzC,MAAM,uCAAiB;CACrB,eAAe;CACf,YAAY,8BAAuB,QAAQ,KAAK,EAAE,MAAM;CACzD,CAAC;;;;;AAMF,MAAa,yBAAyB,EACpC,oBAC0C;AAE1C,KAAI,OAAO,cAAc,cAAc,SACrC,eAAc,YAAY;EACxB,GAAG,cAAc;EACjB,SAAS;EACV;AAIH,eAAc,QAAQ,OAAO,KAAK;EAChC,MAAM;EACN,KAAK;EACN,CAAC;AAGF,QAAO;;;;;AAMT,MAAa,uBAAuB,EAClC,iCAGE,EACE,SAAS;CACP,SAAS,EAEP,KAAK,CACH,GAAI,YAAY,SAAS,SAAS,OAAO,EAAE,EAC3C,IAAIA,iCAAsB,eAAe,CAC1C,EACF;CAED;CACD,EACF,EACD,YACD;;;;;AAMH,MAAaC,sBAAmC;CAC9C;CAGuB;CACxB"}
@@ -1 +1,11 @@
1
- export { };
1
+ import * as _craco_types0 from "@craco/types";
2
+
3
+ //#region src/craco.config.d.ts
4
+ declare const cracoConfig: {
5
+ plugins: {
6
+ plugin: _craco_types0.CracoPlugin;
7
+ }[];
8
+ };
9
+ //#endregion
10
+ export { cracoConfig as default };
11
+ //# sourceMappingURL=craco.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"craco.config.d.ts","names":[],"sources":["../../src/craco.config.ts"],"sourcesContent":[],"mappings":";;;cAIM;;YAMiB,aAAA,CAAA;EANjB,CAAA,EAAA"}
@@ -1,2 +1,3 @@
1
+ import "./craco.config.js";
1
2
  import { intlayerCracoPlugin, overrideCracoConfig, overrideWebpackConfig } from "./intlayerCracoPlugin.js";
2
3
  export { intlayerCracoPlugin, overrideCracoConfig, overrideWebpackConfig };
@@ -5,6 +5,7 @@ import { Configuration } from "webpack";
5
5
 
6
6
  /**
7
7
  * Override the final CRA Webpack config.
8
+ * We explicitely type the return as WebpackConfig to solve TS2742.
8
9
  */
9
10
  declare const overrideWebpackConfig: ({
10
11
  webpackConfig
@@ -16,21 +17,8 @@ declare const overrideCracoConfig: ({
16
17
  cracoConfig
17
18
  }: CracoConfigOverride) => CracoConfig;
18
19
  /**
19
- * A CRACO plugin that adds the Intlayer configuration to the webpack configuration and sets the environment variables.
20
- *
21
- * Usage:
22
- *
23
- * ```ts
24
- * const cracoConfig: CracoConfig = {
25
- * plugins: [
26
- * {
27
- * plugin: intlayerCracoPlugin,
28
- * },
29
- * ],
30
- * };
31
- *
32
- * export default cracoConfig;
33
- * ```
20
+ * A CRACO plugin that adds the Intlayer configuration to the webpack configuration
21
+ * and sets the environment variables.
34
22
  */
35
23
  declare const intlayerCracoPlugin: CracoPlugin;
36
24
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"intlayerCracoPlugin.d.ts","names":[],"sources":["../../src/intlayerCracoPlugin.ts"],"sourcesContent":[],"mappings":";;;;;;;AAwBA;AAAsC,cAAzB,qBAAyB,EAAA,CAAA;EAAA;AAAA,CAAA,EAEnC,qBAFmC,EAAA,GAEX,aAFW;;;;AA4BzB,cAAA,mBAuCZ,EAAA,CAAA;EAAA;AAAA,CAAA,EArCE,mBAqCF,EAAA,GArCwB,WAqCxB;;;;;AAmBD;;;;;;;;;;;;;cAAa,qBAAqB"}
1
+ {"version":3,"file":"intlayerCracoPlugin.d.ts","names":[],"sources":["../../src/intlayerCracoPlugin.ts"],"sourcesContent":[],"mappings":";;;;;;;AAwBA;;AAEG,cAFU,qBAEV,EAAA,CAAA;EAAA;AAAA,CAAA,EAAA,qBAAA,EAAA,GAAwB,aAAxB;;;AAsBH;AAAoC,cAAvB,mBAAuB,EAAA,CAAA;EAAA;AAAA,CAAA,EAEjC,mBAFiC,EAAA,GAEX,WAFW;;;;AAwBpC;cAAa,qBAAqB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-scripts-intlayer",
3
- "version": "7.5.11",
3
+ "version": "7.5.13",
4
4
  "private": false,
5
5
  "description": "Integrate Intlayer with Create React App using custom React scripts for internationalization i18n and advanced Webpack configurations",
6
6
  "keywords": [
@@ -80,12 +80,13 @@
80
80
  },
81
81
  "dependencies": {
82
82
  "@craco/craco": "7.1.0",
83
- "@intlayer/config": "7.5.11",
84
- "@intlayer/types": "7.5.11",
85
- "@intlayer/webpack": "7.5.11",
83
+ "@intlayer/config": "7.5.13",
84
+ "@intlayer/types": "7.5.13",
85
+ "@intlayer/webpack": "7.5.13",
86
+ "defu": "^6.1.4",
86
87
  "node-loader": "2.1.0",
87
88
  "process": "0.11.10",
88
- "webpack": "5.98.0"
89
+ "webpack": "5.104.1"
89
90
  },
90
91
  "devDependencies": {
91
92
  "@craco/types": "7.1.0",
@@ -1,35 +0,0 @@
1
- //#region rolldown:runtime
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __esmMin = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
9
- var __commonJSMin = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
13
- key = keys[i];
14
- if (!__hasOwnProp.call(to, key) && key !== except) {
15
- __defProp(to, key, {
16
- get: ((k) => from[k]).bind(null, key),
17
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
- });
19
- }
20
- }
21
- }
22
- return to;
23
- };
24
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
25
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
- value: mod,
27
- enumerable: true
28
- }) : target, mod));
29
-
30
- //#endregion
31
-
32
- exports.__commonJSMin = __commonJSMin;
33
- exports.__esmMin = __esmMin;
34
- exports.__reExport = __reExport;
35
- exports.__toESM = __toESM;
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","names":[],"sources":["../../src/index.ts"],"sourcesContent":["export * from './craco.config';\nexport * from './intlayerCracoPlugin';\n"],"mappings":""}
@@ -1,31 +0,0 @@
1
- //#region rolldown:runtime
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __esmMin = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
9
- var __commonJSMin = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
13
- key = keys[i];
14
- if (!__hasOwnProp.call(to, key) && key !== except) {
15
- __defProp(to, key, {
16
- get: ((k) => from[k]).bind(null, key),
17
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
- });
19
- }
20
- }
21
- }
22
- return to;
23
- };
24
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
25
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
- value: mod,
27
- enumerable: true
28
- }) : target, mod));
29
-
30
- //#endregion
31
- export { __commonJSMin, __esmMin, __reExport, __toESM };
@@ -1,50 +0,0 @@
1
- #!/usr/bin/env node
2
- import { getProjectRequire, logger } from "@intlayer/config";
3
- import { spawnSync } from "node:child_process";
4
-
5
- //#region src/cli/react-scripts-intlayer.ts
6
- /**
7
- * To make the setup easier, we are using craco to override the webpack configuration.
8
- * This script is used to run the craco scripts with the custom configuration.
9
- *
10
- * The script is based on the original craco script from create-react-app.
11
- */
12
- const args = process.argv.slice(2);
13
- const scriptIndex = args.findIndex((index) => index === "build" || index === "start" || index === "test");
14
- const script = scriptIndex === -1 ? args[0] : args[scriptIndex];
15
- switch (script) {
16
- case "build":
17
- case "start":
18
- case "test": {
19
- const nodeArgs = scriptIndex > 0 ? args.slice(0, scriptIndex) : [];
20
- const scriptPath = getProjectRequire().resolve(`@craco/craco/dist/scripts/${script}`);
21
- const scriptArgs = args.slice(scriptIndex + 1);
22
- const child = spawnSync("node", nodeArgs.concat(scriptPath).concat([
23
- ...scriptArgs,
24
- "--config",
25
- "./node_modules/react-scripts-intlayer/dist/cjs/craco.config.cjs"
26
- ]), { stdio: "inherit" });
27
- if (child.signal) {
28
- if (child.signal === "SIGKILL") logger(`
29
- The build failed because the process exited too early.
30
- This probably means the system ran out of memory or someone called
31
- \`kill -9\` on the process.
32
- `);
33
- else if (child.signal === "SIGTERM") logger(`
34
- The build failed because the process exited too early.
35
- Someone might have called \`kill\` or \`killall\`, or the system could
36
- be shutting down.
37
- `);
38
- process.exit(1);
39
- }
40
- process.exit(child.status ?? void 0);
41
- break;
42
- }
43
- default:
44
- logger(`Unknown script "${script}".`);
45
- logger("Perhaps you need to update craco?");
46
- break;
47
- }
48
-
49
- //#endregion
50
- //# sourceMappingURL=react-scripts-intlayer.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"react-scripts-intlayer.mjs","names":[],"sources":["../../../src/cli/react-scripts-intlayer.ts"],"sourcesContent":["#!/usr/bin/env node\n\n/**\n * To make the setup easier, we are using craco to override the webpack configuration.\n * This script is used to run the craco scripts with the custom configuration.\n *\n * The script is based on the original craco script from create-react-app.\n */\n\nimport { spawnSync } from 'node:child_process';\nimport { getProjectRequire, logger } from '@intlayer/config';\n\nconst args = process.argv.slice(2);\nconst scriptIndex = args.findIndex(\n (index) => index === 'build' || index === 'start' || index === 'test'\n);\nconst script = scriptIndex === -1 ? args[0] : args[scriptIndex];\n\nswitch (script) {\n case 'build':\n case 'start':\n case 'test': {\n const nodeArgs = scriptIndex > 0 ? args.slice(0, scriptIndex) : [];\n const scriptPath = getProjectRequire().resolve(\n `@craco/craco/dist/scripts/${script}`\n );\n\n const scriptArgs = args.slice(scriptIndex + 1);\n const processArgs = nodeArgs\n .concat(scriptPath)\n .concat([\n ...scriptArgs,\n '--config',\n './node_modules/react-scripts-intlayer/dist/cjs/craco.config.cjs',\n ]);\n\n const child = spawnSync('node', processArgs, {\n stdio: 'inherit',\n });\n\n if (child.signal) {\n if (child.signal === 'SIGKILL') {\n logger(`\n The build failed because the process exited too early.\n This probably means the system ran out of memory or someone called\n \\`kill -9\\` on the process.\n `);\n } else if (child.signal === 'SIGTERM') {\n logger(`\n The build failed because the process exited too early.\n Someone might have called \\`kill\\` or \\`killall\\`, or the system could\n be shutting down.\n `);\n }\n\n process.exit(1);\n }\n\n process.exit(child.status ?? undefined);\n break;\n }\n default:\n logger(`Unknown script \"${script}\".`);\n logger('Perhaps you need to update craco?');\n break;\n}\n"],"mappings":";;;;;;;;;;;AAYA,MAAM,OAAO,QAAQ,KAAK,MAAM,EAAE;AAClC,MAAM,cAAc,KAAK,WACtB,UAAU,UAAU,WAAW,UAAU,WAAW,UAAU,OAChE;AACD,MAAM,SAAS,gBAAgB,KAAK,KAAK,KAAK,KAAK;AAEnD,QAAQ,QAAR;CACE,KAAK;CACL,KAAK;CACL,KAAK,QAAQ;EACX,MAAM,WAAW,cAAc,IAAI,KAAK,MAAM,GAAG,YAAY,GAAG,EAAE;EAClE,MAAM,aAAa,mBAAmB,CAAC,QACrC,6BAA6B,SAC9B;EAED,MAAM,aAAa,KAAK,MAAM,cAAc,EAAE;EAS9C,MAAM,QAAQ,UAAU,QARJ,SACjB,OAAO,WAAW,CAClB,OAAO;GACN,GAAG;GACH;GACA;GACD,CAAC,EAEyC,EAC3C,OAAO,WACR,CAAC;AAEF,MAAI,MAAM,QAAQ;AAChB,OAAI,MAAM,WAAW,UACnB,QAAO;;;;cAID;YACG,MAAM,WAAW,UAC1B,QAAO;;;;cAID;AAGR,WAAQ,KAAK,EAAE;;AAGjB,UAAQ,KAAK,MAAM,UAAU,OAAU;AACvC;;CAEF;AACE,SAAO,mBAAmB,OAAO,IAAI;AACrC,SAAO,oCAAoC;AAC3C"}
@@ -1,15 +0,0 @@
1
- import { __commonJSMin } from "./_virtual/rolldown_runtime.mjs";
2
- import { init_intlayerCracoPlugin, intlayerCracoPlugin } from "./intlayerCracoPlugin.mjs";
3
-
4
- //#region src/craco.config.ts
5
- var require_craco_config = /* @__PURE__ */ __commonJSMin(((exports, module) => {
6
- init_intlayerCracoPlugin();
7
- const cracoConfig = { plugins: [{ plugin: intlayerCracoPlugin }] };
8
- module.exports = cracoConfig;
9
- }));
10
-
11
- //#endregion
12
- export default require_craco_config();
13
-
14
- export { require_craco_config };
15
- //# sourceMappingURL=craco.config.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"craco.config.mjs","names":[],"sources":["../../src/craco.config.ts"],"sourcesContent":["import type { CracoConfig } from '@craco/types';\nimport { intlayerCracoPlugin } from './intlayerCracoPlugin';\n\n// Usage Example\nconst cracoConfig = {\n plugins: [\n {\n plugin: intlayerCracoPlugin,\n },\n ],\n} satisfies CracoConfig;\n\n// Necessary Exporting as CJS for CRACO to work\nmodule.exports = cracoConfig;\n"],"mappings":";;;;;2BAC4D;CAG5D,MAAM,cAAc,EAClB,SAAS,CACP,EACE,QAAQ,qBACT,CACF,EACF;AAGD,QAAO,UAAU"}
@@ -1,10 +0,0 @@
1
- import { __reExport, __toESM } from "./_virtual/rolldown_runtime.mjs";
2
- import { init_intlayerCracoPlugin, intlayerCracoPlugin, overrideCracoConfig, overrideWebpackConfig } from "./intlayerCracoPlugin.mjs";
3
- import { require_craco_config } from "./craco.config.mjs";
4
-
5
- //#region src/index.ts
6
- init_intlayerCracoPlugin();
7
-
8
- //#endregion
9
- export { intlayerCracoPlugin, overrideCracoConfig, overrideWebpackConfig };
10
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../../src/index.ts"],"sourcesContent":["export * from './craco.config';\nexport * from './intlayerCracoPlugin';\n"],"mappings":""}
@@ -1,63 +0,0 @@
1
- import { __esmMin } from "./_virtual/rolldown_runtime.mjs";
2
- import { getAlias, getConfiguration, getProjectRequire } from "@intlayer/config";
3
- import { IntlayerPlugin } from "@intlayer/webpack";
4
-
5
- //#region src/intlayerCracoPlugin.ts
6
- var intlayerConfig, overrideWebpackConfig, overrideCracoConfig, intlayerCracoPlugin;
7
- var init_intlayerCracoPlugin = __esmMin((() => {
8
- intlayerConfig = getConfiguration();
9
- overrideWebpackConfig = ({ webpackConfig }) => {
10
- webpackConfig.externals = {
11
- ...typeof webpackConfig.externals === "object" ? webpackConfig.externals : {},
12
- esbuild: "esbuild"
13
- };
14
- webpackConfig.externals.module = void 0;
15
- webpackConfig.externals.fs = void 0;
16
- webpackConfig.externals.path = void 0;
17
- webpackConfig.externals.vm = void 0;
18
- webpackConfig.module.rules.push({
19
- test: /\.node$/,
20
- use: "node-loader"
21
- });
22
- return webpackConfig;
23
- };
24
- overrideCracoConfig = ({ cracoConfig }) => {
25
- return {
26
- ...cracoConfig,
27
- webpack: {
28
- ...cracoConfig.webpack,
29
- plugins: {
30
- ...cracoConfig.webpack?.plugins,
31
- add: [...cracoConfig.webpack?.plugins?.add ?? [], new IntlayerPlugin(intlayerConfig)]
32
- },
33
- configure: {
34
- ...cracoConfig.webpack?.configure ?? {},
35
- resolve: {
36
- ...cracoConfig.webpack?.configure?.resolve ?? {},
37
- fallback: {
38
- ...cracoConfig.webpack?.configure?.resolve?.fallback ?? {},
39
- process: getProjectRequire().resolve("process/browser"),
40
- fs: false,
41
- module: false,
42
- path: false,
43
- vm: false
44
- }
45
- }
46
- },
47
- alias: {
48
- ...cracoConfig.webpack?.alias,
49
- ...getAlias({ configuration: intlayerConfig })
50
- }
51
- }
52
- };
53
- };
54
- intlayerCracoPlugin = {
55
- overrideCracoConfig,
56
- overrideWebpackConfig
57
- };
58
- }));
59
-
60
- //#endregion
61
- init_intlayerCracoPlugin();
62
- export { init_intlayerCracoPlugin, intlayerCracoPlugin, overrideCracoConfig, overrideWebpackConfig };
63
- //# sourceMappingURL=intlayerCracoPlugin.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intlayerCracoPlugin.mjs","names":["IntlayerWebpackPlugin","intlayerCracoPlugin: CracoPlugin"],"sources":["../../src/intlayerCracoPlugin.ts"],"sourcesContent":["// craco-intlayer-plugin.ts\n\n// @ts-nocheck\n\nimport type {\n CracoConfig,\n CracoConfigOverride,\n CracoPlugin,\n WebpackConfigOverride,\n} from '@craco/types';\nimport {\n getAlias,\n getConfiguration,\n getProjectRequire,\n} from '@intlayer/config';\nimport { IntlayerPlugin as IntlayerWebpackPlugin } from '@intlayer/webpack';\nimport type { Configuration as WebpackConfig } from 'webpack';\n\n// Get Intlayer configuration\nconst intlayerConfig = getConfiguration();\n\n/**\n * Override the final CRA Webpack config.\n */\nexport const overrideWebpackConfig = ({\n webpackConfig,\n}: WebpackConfigOverride): WebpackConfig => {\n // 1) Remove `module`, `fs`, `path`, `vm` from externals. In CRA, you usually\n // want these to be bundled (or set to fallbacks).\n webpackConfig.externals = {\n ...(typeof webpackConfig.externals === 'object'\n ? webpackConfig.externals\n : {}),\n esbuild: 'esbuild', // keep only esbuild external\n };\n webpackConfig.externals.module = undefined;\n webpackConfig.externals.fs = undefined;\n webpackConfig.externals.path = undefined;\n webpackConfig.externals.vm = undefined;\n\n // 2) Properly push node-loader rule instead of overwriting.\n webpackConfig.module.rules.push({\n test: /\\.node$/,\n use: 'node-loader',\n });\n\n return webpackConfig;\n};\n\n/**\n * Override the CRACO config itself to set up aliases, fallbacks, and plugins.\n */\nexport const overrideCracoConfig = ({\n cracoConfig,\n}: CracoConfigOverride): CracoConfig => {\n return {\n ...cracoConfig,\n webpack: {\n ...cracoConfig.webpack,\n plugins: {\n ...cracoConfig.webpack?.plugins,\n // Ensure we actually add IntlayerWebpackPlugin\n add: [\n ...(cracoConfig.webpack?.plugins?.add ?? []),\n new IntlayerWebpackPlugin(intlayerConfig),\n ],\n },\n configure: {\n ...(cracoConfig.webpack?.configure ?? {}),\n resolve: {\n ...(cracoConfig.webpack?.configure?.resolve ?? {}),\n // 3) Provide browser fallbacks so these modules won’t error out in the browser.\n fallback: {\n ...(cracoConfig.webpack?.configure?.resolve?.fallback ?? {}),\n process: getProjectRequire().resolve('process/browser'),\n fs: false,\n module: false,\n path: false,\n vm: false,\n },\n },\n },\n // 4) Alias @intlayer/dictionaries-entry so it no longer tries to use the ESM that depends on `fs`, etc.\n alias: {\n ...cracoConfig.webpack?.alias,\n ...getAlias({\n configuration: intlayerConfig,\n }),\n },\n },\n };\n};\n\n/**\n * A CRACO plugin that adds the Intlayer configuration to the webpack configuration and sets the environment variables.\n *\n * Usage:\n *\n * ```ts\n * const cracoConfig: CracoConfig = {\n * plugins: [\n * {\n * plugin: intlayerCracoPlugin,\n * },\n * ],\n * };\n *\n * export default cracoConfig;\n * ```\n */\nexport const intlayerCracoPlugin: CracoPlugin = {\n overrideCracoConfig,\n overrideWebpackConfig,\n};\n"],"mappings":";;;;;;;CAmBM,iBAAiB,kBAAkB;CAK5B,yBAAyB,EACpC,oBAC0C;AAG1C,gBAAc,YAAY;GACxB,GAAI,OAAO,cAAc,cAAc,WACnC,cAAc,YACd,EAAE;GACN,SAAS;GACV;AACD,gBAAc,UAAU,SAAS;AACjC,gBAAc,UAAU,KAAK;AAC7B,gBAAc,UAAU,OAAO;AAC/B,gBAAc,UAAU,KAAK;AAG7B,gBAAc,OAAO,MAAM,KAAK;GAC9B,MAAM;GACN,KAAK;GACN,CAAC;AAEF,SAAO;;CAMI,uBAAuB,EAClC,kBACsC;AACtC,SAAO;GACL,GAAG;GACH,SAAS;IACP,GAAG,YAAY;IACf,SAAS;KACP,GAAG,YAAY,SAAS;KAExB,KAAK,CACH,GAAI,YAAY,SAAS,SAAS,OAAO,EAAE,EAC3C,IAAIA,eAAsB,eAAe,CAC1C;KACF;IACD,WAAW;KACT,GAAI,YAAY,SAAS,aAAa,EAAE;KACxC,SAAS;MACP,GAAI,YAAY,SAAS,WAAW,WAAW,EAAE;MAEjD,UAAU;OACR,GAAI,YAAY,SAAS,WAAW,SAAS,YAAY,EAAE;OAC3D,SAAS,mBAAmB,CAAC,QAAQ,kBAAkB;OACvD,IAAI;OACJ,QAAQ;OACR,MAAM;OACN,IAAI;OACL;MACF;KACF;IAED,OAAO;KACL,GAAG,YAAY,SAAS;KACxB,GAAG,SAAS,EACV,eAAe,gBAChB,CAAC;KACH;IACF;GACF;;CAoBUC,sBAAmC;EAC9C;EACA;EACD"}