@commercetools-frontend/mc-scripts 23.3.0 → 24.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli/dist/commercetools-frontend-mc-scripts-cli.cjs.dev.js +6 -6
- package/cli/dist/commercetools-frontend-mc-scripts-cli.cjs.prod.js +6 -6
- package/cli/dist/commercetools-frontend-mc-scripts-cli.esm.js +6 -6
- package/dist/{build-9769ac85.cjs.prod.js → build-23c60017.cjs.prod.js} +3 -3
- package/dist/{build-546818c0.esm.js → build-69f0a33e.esm.js} +3 -3
- package/dist/{build-09e1a4ca.cjs.dev.js → build-91b64c68.cjs.dev.js} +3 -3
- package/dist/{build-vite-23f6852c.esm.js → build-vite-74a64ec2.esm.js} +12 -3
- package/dist/{build-vite-8131eae2.cjs.dev.js → build-vite-bca3d007.cjs.dev.js} +30 -3
- package/dist/{build-vite-44c5100f.cjs.prod.js → build-vite-fa7d8ddf.cjs.prod.js} +30 -3
- package/dist/commercetools-frontend-mc-scripts.cjs.dev.js +1 -1
- package/dist/commercetools-frontend-mc-scripts.cjs.prod.js +1 -1
- package/dist/commercetools-frontend-mc-scripts.esm.js +1 -1
- package/dist/{config-sync-c1bbadb6.cjs.dev.js → config-sync-073757f2.cjs.dev.js} +3 -3
- package/dist/{config-sync-7061df1e.esm.js → config-sync-39f4519e.esm.js} +3 -3
- package/dist/{config-sync-5e2935d5.cjs.prod.js → config-sync-e334df29.cjs.prod.js} +3 -3
- package/dist/{create-postcss-config-4acd5ac4.esm.js → create-postcss-config-764339b9.esm.js} +1 -1
- package/dist/{create-postcss-config-f72fd52e.cjs.prod.js → create-postcss-config-7a8d5d45.cjs.prod.js} +1 -1
- package/dist/{create-postcss-config-651d3100.cjs.dev.js → create-postcss-config-dc3eb328.cjs.dev.js} +1 -1
- package/dist/{create-webpack-config-for-development-7e765f76.esm.js → create-webpack-config-for-development-83d41498.esm.js} +1 -1
- package/dist/{create-webpack-config-for-development-8fd826a8.cjs.prod.js → create-webpack-config-for-development-8539ce75.cjs.prod.js} +1 -1
- package/dist/{create-webpack-config-for-development-f208f0fe.cjs.dev.js → create-webpack-config-for-development-bb4c99ef.cjs.dev.js} +1 -1
- package/dist/{create-webpack-config-for-production-da7f8955.esm.js → create-webpack-config-for-production-265869db.esm.js} +1 -1
- package/dist/{create-webpack-config-for-production-447ef46f.cjs.dev.js → create-webpack-config-for-production-7ed3643c.cjs.dev.js} +1 -1
- package/dist/{create-webpack-config-for-production-ebfeadd2.cjs.prod.js → create-webpack-config-for-production-a4717f0b.cjs.prod.js} +1 -1
- package/dist/{credentials-storage-0fbc406d.cjs.dev.js → credentials-storage-8d53ea4b.cjs.dev.js} +1 -1
- package/dist/{credentials-storage-fc6877d1.cjs.prod.js → credentials-storage-98185979.cjs.prod.js} +1 -1
- package/dist/{credentials-storage-ddb7968b.esm.js → credentials-storage-c80e29b2.esm.js} +1 -1
- package/dist/declarations/src/utils/optimize-embedded-pngs.d.ts +1 -0
- package/dist/{deployment-previews-set-169a8631.esm.js → deployment-previews-set-111e2838.esm.js} +3 -3
- package/dist/{deployment-previews-set-041582d4.cjs.dev.js → deployment-previews-set-780b3eb3.cjs.dev.js} +3 -3
- package/dist/{deployment-previews-set-f68907fb.cjs.prod.js → deployment-previews-set-a87ac9ed.cjs.prod.js} +3 -3
- package/dist/{graphql-requests-d9467af7.esm.js → graphql-requests-0215800a.esm.js} +1 -1
- package/dist/{graphql-requests-69d5df89.cjs.dev.js → graphql-requests-285f6714.cjs.dev.js} +1 -1
- package/dist/{graphql-requests-55557ef0.cjs.prod.js → graphql-requests-612138f3.cjs.prod.js} +1 -1
- package/dist/{login-f8c52456.esm.js → login-28339422.esm.js} +2 -2
- package/dist/{login-323c3a5c.cjs.prod.js → login-6c9e555c.cjs.prod.js} +2 -2
- package/dist/{login-45be3c5f.cjs.dev.js → login-7b897856.cjs.dev.js} +2 -2
- package/dist/{package-72b551e8.cjs.dev.js → package-99436e80.cjs.dev.js} +11 -9
- package/dist/{package-cc49fdc9.esm.js → package-d649bc71.esm.js} +11 -9
- package/dist/{package-f9fc51fd.cjs.prod.js → package-f8ef2d55.cjs.prod.js} +11 -9
- package/dist/{start-94d0e3b4.cjs.dev.js → start-2feb7c73.cjs.dev.js} +3 -3
- package/dist/{start-113a9222.cjs.prod.js → start-d18af356.cjs.prod.js} +3 -3
- package/dist/{start-fa5a096b.esm.js → start-d2a8a702.esm.js} +3 -3
- package/dist/{start-vite-b93c91c5.cjs.dev.js → start-vite-068e9f73.cjs.dev.js} +2 -1
- package/dist/{start-vite-7b4df74e.cjs.prod.js → start-vite-29078b3a.cjs.prod.js} +2 -1
- package/dist/{start-vite-91fe1256.esm.js → start-vite-7d1161e8.esm.js} +2 -1
- package/dist/{vite-plugin-svgr-b080c510.cjs.prod.js → vite-plugin-svgr-4034a834.cjs.prod.js} +44 -1
- package/dist/{vite-plugin-svgr-7fb42bbf.cjs.dev.js → vite-plugin-svgr-7d06f400.cjs.dev.js} +44 -1
- package/dist/{vite-plugin-svgr-069f402d.esm.js → vite-plugin-svgr-de6ee7da.esm.js} +43 -1
- package/package.json +11 -9
- package/postcss/dist/commercetools-frontend-mc-scripts-postcss.cjs.dev.js +2 -2
- package/postcss/dist/commercetools-frontend-mc-scripts-postcss.cjs.prod.js +2 -2
- package/postcss/dist/commercetools-frontend-mc-scripts-postcss.esm.js +2 -2
- package/webpack/dist/commercetools-frontend-mc-scripts-webpack.cjs.dev.js +4 -4
- package/webpack/dist/commercetools-frontend-mc-scripts-webpack.cjs.prod.js +4 -4
- package/webpack/dist/commercetools-frontend-mc-scripts-webpack.esm.js +4 -4
package/dist/{credentials-storage-fc6877d1.cjs.prod.js → credentials-storage-98185979.cjs.prod.js}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var createHttpUserAgent = require('@commercetools/http-user-agent');
|
|
4
|
-
var _package = require('./package-
|
|
4
|
+
var _package = require('./package-f8ef2d55.cjs.prod.js');
|
|
5
5
|
var _classCallCheck = require('@babel/runtime-corejs3/helpers/classCallCheck');
|
|
6
6
|
var _createClass = require('@babel/runtime-corejs3/helpers/createClass');
|
|
7
7
|
var _JSON$stringify = require('@babel/runtime-corejs3/core-js-stable/json/stringify');
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import createHttpUserAgent from '@commercetools/http-user-agent';
|
|
2
|
-
import { p as pkgJson } from './package-
|
|
2
|
+
import { p as pkgJson } from './package-d649bc71.esm.js';
|
|
3
3
|
import _classCallCheck from '@babel/runtime-corejs3/helpers/esm/classCallCheck';
|
|
4
4
|
import _createClass from '@babel/runtime-corejs3/helpers/esm/createClass';
|
|
5
5
|
import _JSON$stringify from '@babel/runtime-corejs3/core-js-stable/json/stringify';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function optimizeEmbeddedPngs(code: string, id: string): Promise<string>;
|
package/dist/{deployment-previews-set-169a8631.esm.js → deployment-previews-set-111e2838.esm.js}
RENAMED
|
@@ -5,10 +5,10 @@ import _findInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instanc
|
|
|
5
5
|
import chalk from 'chalk';
|
|
6
6
|
import prompts from 'prompts';
|
|
7
7
|
import { processConfig } from '@commercetools-frontend/application-config';
|
|
8
|
-
import { C as CredentialsStorage } from './credentials-storage-
|
|
9
|
-
import { f as fetchCustomApplication, g as updateCustomApplicationDeploymentPreview, h as createCustomApplicationDeploymentPreview } from './graphql-requests-
|
|
8
|
+
import { C as CredentialsStorage } from './credentials-storage-c80e29b2.esm.js';
|
|
9
|
+
import { f as fetchCustomApplication, g as updateCustomApplicationDeploymentPreview, h as createCustomApplicationDeploymentPreview } from './graphql-requests-0215800a.esm.js';
|
|
10
10
|
import '@commercetools/http-user-agent';
|
|
11
|
-
import './package-
|
|
11
|
+
import './package-d649bc71.esm.js';
|
|
12
12
|
import '@babel/runtime-corejs3/helpers/classCallCheck';
|
|
13
13
|
import '@babel/runtime-corejs3/helpers/createClass';
|
|
14
14
|
import '@babel/runtime-corejs3/core-js-stable/json/stringify';
|
|
@@ -7,10 +7,10 @@ var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/insta
|
|
|
7
7
|
var chalk = require('chalk');
|
|
8
8
|
var prompts = require('prompts');
|
|
9
9
|
var applicationConfig = require('@commercetools-frontend/application-config');
|
|
10
|
-
var credentialsStorage$1 = require('./credentials-storage-
|
|
11
|
-
var graphqlRequests = require('./graphql-requests-
|
|
10
|
+
var credentialsStorage$1 = require('./credentials-storage-8d53ea4b.cjs.dev.js');
|
|
11
|
+
var graphqlRequests = require('./graphql-requests-285f6714.cjs.dev.js');
|
|
12
12
|
require('@commercetools/http-user-agent');
|
|
13
|
-
require('./package-
|
|
13
|
+
require('./package-99436e80.cjs.dev.js');
|
|
14
14
|
require('@babel/runtime-corejs3/helpers/classCallCheck');
|
|
15
15
|
require('@babel/runtime-corejs3/helpers/createClass');
|
|
16
16
|
require('@babel/runtime-corejs3/core-js-stable/json/stringify');
|
|
@@ -7,10 +7,10 @@ var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/insta
|
|
|
7
7
|
var chalk = require('chalk');
|
|
8
8
|
var prompts = require('prompts');
|
|
9
9
|
var applicationConfig = require('@commercetools-frontend/application-config');
|
|
10
|
-
var credentialsStorage$1 = require('./credentials-storage-
|
|
11
|
-
var graphqlRequests = require('./graphql-requests-
|
|
10
|
+
var credentialsStorage$1 = require('./credentials-storage-98185979.cjs.prod.js');
|
|
11
|
+
var graphqlRequests = require('./graphql-requests-612138f3.cjs.prod.js');
|
|
12
12
|
require('@commercetools/http-user-agent');
|
|
13
|
-
require('./package-
|
|
13
|
+
require('./package-f8ef2d55.cjs.prod.js');
|
|
14
14
|
require('@babel/runtime-corejs3/helpers/classCallCheck');
|
|
15
15
|
require('@babel/runtime-corejs3/helpers/createClass');
|
|
16
16
|
require('@babel/runtime-corejs3/core-js-stable/json/stringify');
|
|
@@ -12,7 +12,7 @@ import chalk from 'chalk';
|
|
|
12
12
|
import { print } from 'graphql';
|
|
13
13
|
import { GraphQLClient, ClientError } from 'graphql-request';
|
|
14
14
|
import { GRAPHQL_TARGETS, SUPPORTED_HEADERS } from '@commercetools-frontend/constants';
|
|
15
|
-
import { C as CredentialsStorage, u as userAgent } from './credentials-storage-
|
|
15
|
+
import { C as CredentialsStorage, u as userAgent } from './credentials-storage-c80e29b2.esm.js';
|
|
16
16
|
|
|
17
17
|
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
18
18
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context3 = ownKeys(Object(t))).call(_context3, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -14,7 +14,7 @@ var chalk = require('chalk');
|
|
|
14
14
|
var graphql = require('graphql');
|
|
15
15
|
var graphqlRequest = require('graphql-request');
|
|
16
16
|
var constants = require('@commercetools-frontend/constants');
|
|
17
|
-
var credentialsStorage$1 = require('./credentials-storage-
|
|
17
|
+
var credentialsStorage$1 = require('./credentials-storage-8d53ea4b.cjs.dev.js');
|
|
18
18
|
|
|
19
19
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
20
20
|
|
package/dist/{graphql-requests-55557ef0.cjs.prod.js → graphql-requests-612138f3.cjs.prod.js}
RENAMED
|
@@ -14,7 +14,7 @@ var chalk = require('chalk');
|
|
|
14
14
|
var graphql = require('graphql');
|
|
15
15
|
var graphqlRequest = require('graphql-request');
|
|
16
16
|
var constants = require('@commercetools-frontend/constants');
|
|
17
|
-
var credentialsStorage$1 = require('./credentials-storage-
|
|
17
|
+
var credentialsStorage$1 = require('./credentials-storage-98185979.cjs.prod.js');
|
|
18
18
|
|
|
19
19
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
20
20
|
|
|
@@ -5,7 +5,7 @@ import process from 'node:process';
|
|
|
5
5
|
import chalk from 'chalk';
|
|
6
6
|
import prompts from 'prompts';
|
|
7
7
|
import { processConfig } from '@commercetools-frontend/application-config';
|
|
8
|
-
import { p as pkgJson } from './package-
|
|
8
|
+
import { p as pkgJson } from './package-d649bc71.esm.js';
|
|
9
9
|
import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
|
|
10
10
|
import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
|
|
11
11
|
import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
|
|
@@ -17,7 +17,7 @@ import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object
|
|
|
17
17
|
import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty';
|
|
18
18
|
import _JSON$stringify from '@babel/runtime-corejs3/core-js-stable/json/stringify';
|
|
19
19
|
import fetch from 'node-fetch';
|
|
20
|
-
import { u as userAgent, C as CredentialsStorage } from './credentials-storage-
|
|
20
|
+
import { u as userAgent, C as CredentialsStorage } from './credentials-storage-c80e29b2.esm.js';
|
|
21
21
|
import http from 'node:http';
|
|
22
22
|
import jwtDecode from 'jwt-decode';
|
|
23
23
|
import '@commercetools/http-user-agent';
|
|
@@ -7,7 +7,7 @@ var process = require('node:process');
|
|
|
7
7
|
var chalk = require('chalk');
|
|
8
8
|
var prompts = require('prompts');
|
|
9
9
|
var applicationConfig = require('@commercetools-frontend/application-config');
|
|
10
|
-
var _package = require('./package-
|
|
10
|
+
var _package = require('./package-f8ef2d55.cjs.prod.js');
|
|
11
11
|
var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
|
|
12
12
|
var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
|
|
13
13
|
var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
|
|
@@ -19,7 +19,7 @@ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/obje
|
|
|
19
19
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
20
20
|
var _JSON$stringify = require('@babel/runtime-corejs3/core-js-stable/json/stringify');
|
|
21
21
|
var fetch = require('node-fetch');
|
|
22
|
-
var credentialsStorage$1 = require('./credentials-storage-
|
|
22
|
+
var credentialsStorage$1 = require('./credentials-storage-98185979.cjs.prod.js');
|
|
23
23
|
var http = require('node:http');
|
|
24
24
|
var jwtDecode = require('jwt-decode');
|
|
25
25
|
require('@commercetools/http-user-agent');
|
|
@@ -7,7 +7,7 @@ var process = require('node:process');
|
|
|
7
7
|
var chalk = require('chalk');
|
|
8
8
|
var prompts = require('prompts');
|
|
9
9
|
var applicationConfig = require('@commercetools-frontend/application-config');
|
|
10
|
-
var _package = require('./package-
|
|
10
|
+
var _package = require('./package-99436e80.cjs.dev.js');
|
|
11
11
|
var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
|
|
12
12
|
var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
|
|
13
13
|
var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
|
|
@@ -19,7 +19,7 @@ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/obje
|
|
|
19
19
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
20
20
|
var _JSON$stringify = require('@babel/runtime-corejs3/core-js-stable/json/stringify');
|
|
21
21
|
var fetch = require('node-fetch');
|
|
22
|
-
var credentialsStorage$1 = require('./credentials-storage-
|
|
22
|
+
var credentialsStorage$1 = require('./credentials-storage-8d53ea4b.cjs.dev.js');
|
|
23
23
|
var http = require('node:http');
|
|
24
24
|
var jwtDecode = require('jwt-decode');
|
|
25
25
|
require('@commercetools/http-user-agent');
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var pkgJson = {
|
|
4
4
|
name: "@commercetools-frontend/mc-scripts",
|
|
5
|
-
version: "
|
|
5
|
+
version: "24.0.0",
|
|
6
6
|
description: "Configuration and scripts for developing a MC application",
|
|
7
7
|
bugs: "https://github.com/commercetools/merchant-center-application-kit/issues",
|
|
8
8
|
repository: {
|
|
@@ -63,13 +63,13 @@ var pkgJson = {
|
|
|
63
63
|
"@babel/plugin-proposal-do-expressions": "^7.22.5",
|
|
64
64
|
"@babel/runtime": "^7.22.15",
|
|
65
65
|
"@babel/runtime-corejs3": "^7.22.15",
|
|
66
|
-
"@commercetools-frontend/application-components": "
|
|
67
|
-
"@commercetools-frontend/application-config": "
|
|
68
|
-
"@commercetools-frontend/assets": "
|
|
69
|
-
"@commercetools-frontend/babel-preset-mc-app": "
|
|
70
|
-
"@commercetools-frontend/constants": "
|
|
71
|
-
"@commercetools-frontend/mc-dev-authentication": "
|
|
72
|
-
"@commercetools-frontend/mc-html-template": "
|
|
66
|
+
"@commercetools-frontend/application-components": "24.0.0",
|
|
67
|
+
"@commercetools-frontend/application-config": "24.0.0",
|
|
68
|
+
"@commercetools-frontend/assets": "24.0.0",
|
|
69
|
+
"@commercetools-frontend/babel-preset-mc-app": "24.0.0",
|
|
70
|
+
"@commercetools-frontend/constants": "24.0.0",
|
|
71
|
+
"@commercetools-frontend/mc-dev-authentication": "24.0.0",
|
|
72
|
+
"@commercetools-frontend/mc-html-template": "24.0.0",
|
|
73
73
|
"@commercetools/http-user-agent": "3.0.0",
|
|
74
74
|
"@emotion/babel-plugin": "^11.13.5",
|
|
75
75
|
"@formatjs/cli-lib": "^6.3.8",
|
|
@@ -121,6 +121,7 @@ var pkgJson = {
|
|
|
121
121
|
"react-refresh": "0.14.2",
|
|
122
122
|
"rollup-plugin-visualizer": "^5.14.0",
|
|
123
123
|
"serve-handler": "6.1.5",
|
|
124
|
+
sharp: "^0.34.1",
|
|
124
125
|
shelljs: "0.8.5",
|
|
125
126
|
"style-loader": "3.3.4",
|
|
126
127
|
"svg-url-loader": "7.1.1",
|
|
@@ -129,13 +130,14 @@ var pkgJson = {
|
|
|
129
130
|
url: "^0.11.0",
|
|
130
131
|
vite: "~6.1.0",
|
|
131
132
|
"vite-bundle-analyzer": "0.17.0",
|
|
133
|
+
"vite-plugin-clean-build": "^1.4.1",
|
|
132
134
|
webpack: "5.94.0",
|
|
133
135
|
"webpack-bundle-analyzer": "4.10.2",
|
|
134
136
|
"webpack-dev-server": "4.15.2",
|
|
135
137
|
webpackbar: "5.0.2"
|
|
136
138
|
},
|
|
137
139
|
devDependencies: {
|
|
138
|
-
"@commercetools-test-data
|
|
140
|
+
"@commercetools/composable-commerce-test-data": "11.0.0",
|
|
139
141
|
"@tsconfig/node22": "^22.0.0",
|
|
140
142
|
"@types/fs-extra": "^11.0.1",
|
|
141
143
|
"@types/lodash": "^4.14.198",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
var pkgJson = {
|
|
2
2
|
name: "@commercetools-frontend/mc-scripts",
|
|
3
|
-
version: "
|
|
3
|
+
version: "24.0.0",
|
|
4
4
|
description: "Configuration and scripts for developing a MC application",
|
|
5
5
|
bugs: "https://github.com/commercetools/merchant-center-application-kit/issues",
|
|
6
6
|
repository: {
|
|
@@ -61,13 +61,13 @@ var pkgJson = {
|
|
|
61
61
|
"@babel/plugin-proposal-do-expressions": "^7.22.5",
|
|
62
62
|
"@babel/runtime": "^7.22.15",
|
|
63
63
|
"@babel/runtime-corejs3": "^7.22.15",
|
|
64
|
-
"@commercetools-frontend/application-components": "
|
|
65
|
-
"@commercetools-frontend/application-config": "
|
|
66
|
-
"@commercetools-frontend/assets": "
|
|
67
|
-
"@commercetools-frontend/babel-preset-mc-app": "
|
|
68
|
-
"@commercetools-frontend/constants": "
|
|
69
|
-
"@commercetools-frontend/mc-dev-authentication": "
|
|
70
|
-
"@commercetools-frontend/mc-html-template": "
|
|
64
|
+
"@commercetools-frontend/application-components": "24.0.0",
|
|
65
|
+
"@commercetools-frontend/application-config": "24.0.0",
|
|
66
|
+
"@commercetools-frontend/assets": "24.0.0",
|
|
67
|
+
"@commercetools-frontend/babel-preset-mc-app": "24.0.0",
|
|
68
|
+
"@commercetools-frontend/constants": "24.0.0",
|
|
69
|
+
"@commercetools-frontend/mc-dev-authentication": "24.0.0",
|
|
70
|
+
"@commercetools-frontend/mc-html-template": "24.0.0",
|
|
71
71
|
"@commercetools/http-user-agent": "3.0.0",
|
|
72
72
|
"@emotion/babel-plugin": "^11.13.5",
|
|
73
73
|
"@formatjs/cli-lib": "^6.3.8",
|
|
@@ -119,6 +119,7 @@ var pkgJson = {
|
|
|
119
119
|
"react-refresh": "0.14.2",
|
|
120
120
|
"rollup-plugin-visualizer": "^5.14.0",
|
|
121
121
|
"serve-handler": "6.1.5",
|
|
122
|
+
sharp: "^0.34.1",
|
|
122
123
|
shelljs: "0.8.5",
|
|
123
124
|
"style-loader": "3.3.4",
|
|
124
125
|
"svg-url-loader": "7.1.1",
|
|
@@ -127,13 +128,14 @@ var pkgJson = {
|
|
|
127
128
|
url: "^0.11.0",
|
|
128
129
|
vite: "~6.1.0",
|
|
129
130
|
"vite-bundle-analyzer": "0.17.0",
|
|
131
|
+
"vite-plugin-clean-build": "^1.4.1",
|
|
130
132
|
webpack: "5.94.0",
|
|
131
133
|
"webpack-bundle-analyzer": "4.10.2",
|
|
132
134
|
"webpack-dev-server": "4.15.2",
|
|
133
135
|
webpackbar: "5.0.2"
|
|
134
136
|
},
|
|
135
137
|
devDependencies: {
|
|
136
|
-
"@commercetools-test-data
|
|
138
|
+
"@commercetools/composable-commerce-test-data": "11.0.0",
|
|
137
139
|
"@tsconfig/node22": "^22.0.0",
|
|
138
140
|
"@types/fs-extra": "^11.0.1",
|
|
139
141
|
"@types/lodash": "^4.14.198",
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var pkgJson = {
|
|
4
4
|
name: "@commercetools-frontend/mc-scripts",
|
|
5
|
-
version: "
|
|
5
|
+
version: "24.0.0",
|
|
6
6
|
description: "Configuration and scripts for developing a MC application",
|
|
7
7
|
bugs: "https://github.com/commercetools/merchant-center-application-kit/issues",
|
|
8
8
|
repository: {
|
|
@@ -63,13 +63,13 @@ var pkgJson = {
|
|
|
63
63
|
"@babel/plugin-proposal-do-expressions": "^7.22.5",
|
|
64
64
|
"@babel/runtime": "^7.22.15",
|
|
65
65
|
"@babel/runtime-corejs3": "^7.22.15",
|
|
66
|
-
"@commercetools-frontend/application-components": "
|
|
67
|
-
"@commercetools-frontend/application-config": "
|
|
68
|
-
"@commercetools-frontend/assets": "
|
|
69
|
-
"@commercetools-frontend/babel-preset-mc-app": "
|
|
70
|
-
"@commercetools-frontend/constants": "
|
|
71
|
-
"@commercetools-frontend/mc-dev-authentication": "
|
|
72
|
-
"@commercetools-frontend/mc-html-template": "
|
|
66
|
+
"@commercetools-frontend/application-components": "24.0.0",
|
|
67
|
+
"@commercetools-frontend/application-config": "24.0.0",
|
|
68
|
+
"@commercetools-frontend/assets": "24.0.0",
|
|
69
|
+
"@commercetools-frontend/babel-preset-mc-app": "24.0.0",
|
|
70
|
+
"@commercetools-frontend/constants": "24.0.0",
|
|
71
|
+
"@commercetools-frontend/mc-dev-authentication": "24.0.0",
|
|
72
|
+
"@commercetools-frontend/mc-html-template": "24.0.0",
|
|
73
73
|
"@commercetools/http-user-agent": "3.0.0",
|
|
74
74
|
"@emotion/babel-plugin": "^11.13.5",
|
|
75
75
|
"@formatjs/cli-lib": "^6.3.8",
|
|
@@ -121,6 +121,7 @@ var pkgJson = {
|
|
|
121
121
|
"react-refresh": "0.14.2",
|
|
122
122
|
"rollup-plugin-visualizer": "^5.14.0",
|
|
123
123
|
"serve-handler": "6.1.5",
|
|
124
|
+
sharp: "^0.34.1",
|
|
124
125
|
shelljs: "0.8.5",
|
|
125
126
|
"style-loader": "3.3.4",
|
|
126
127
|
"svg-url-loader": "7.1.1",
|
|
@@ -129,13 +130,14 @@ var pkgJson = {
|
|
|
129
130
|
url: "^0.11.0",
|
|
130
131
|
vite: "~6.1.0",
|
|
131
132
|
"vite-bundle-analyzer": "0.17.0",
|
|
133
|
+
"vite-plugin-clean-build": "^1.4.1",
|
|
132
134
|
webpack: "5.94.0",
|
|
133
135
|
"webpack-bundle-analyzer": "4.10.2",
|
|
134
136
|
"webpack-dev-server": "4.15.2",
|
|
135
137
|
webpackbar: "5.0.2"
|
|
136
138
|
},
|
|
137
139
|
devDependencies: {
|
|
138
|
-
"@commercetools-test-data
|
|
140
|
+
"@commercetools/composable-commerce-test-data": "11.0.0",
|
|
139
141
|
"@tsconfig/node22": "^22.0.0",
|
|
140
142
|
"@types/fs-extra": "^11.0.1",
|
|
141
143
|
"@types/lodash": "^4.14.198",
|
|
@@ -9,7 +9,7 @@ var openBrowser = require('react-dev-utils/openBrowser');
|
|
|
9
9
|
var WebpackDevServerUtils = require('react-dev-utils/WebpackDevServerUtils');
|
|
10
10
|
var webpack = require('webpack');
|
|
11
11
|
var WebpackDevServer = require('webpack-dev-server');
|
|
12
|
-
var createWebpackConfigForDevelopment = require('./create-webpack-config-for-development-
|
|
12
|
+
var createWebpackConfigForDevelopment = require('./create-webpack-config-for-development-bb4c99ef.cjs.dev.js');
|
|
13
13
|
var paths = require('./paths-b76fc753.cjs.dev.js');
|
|
14
14
|
var applicationConfig = require('@commercetools-frontend/application-config');
|
|
15
15
|
var mcDevAuthentication = require('@commercetools-frontend/mc-dev-authentication');
|
|
@@ -36,9 +36,9 @@ require('webpackbar');
|
|
|
36
36
|
require('@babel/runtime-corejs3/helpers/classCallCheck');
|
|
37
37
|
require('@babel/runtime-corejs3/helpers/createClass');
|
|
38
38
|
require('@babel/runtime-corejs3/core-js-stable/object/assign');
|
|
39
|
-
require('./create-postcss-config-
|
|
39
|
+
require('./create-postcss-config-dc3eb328.cjs.dev.js');
|
|
40
40
|
require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
41
|
-
require('./package-
|
|
41
|
+
require('./package-99436e80.cjs.dev.js');
|
|
42
42
|
require('./has-jsx-runtime-aa5d21ee.cjs.dev.js');
|
|
43
43
|
require('./optimizations-7789145e.cjs.dev.js');
|
|
44
44
|
require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
|
|
@@ -9,7 +9,7 @@ var openBrowser = require('react-dev-utils/openBrowser');
|
|
|
9
9
|
var WebpackDevServerUtils = require('react-dev-utils/WebpackDevServerUtils');
|
|
10
10
|
var webpack = require('webpack');
|
|
11
11
|
var WebpackDevServer = require('webpack-dev-server');
|
|
12
|
-
var createWebpackConfigForDevelopment = require('./create-webpack-config-for-development-
|
|
12
|
+
var createWebpackConfigForDevelopment = require('./create-webpack-config-for-development-8539ce75.cjs.prod.js');
|
|
13
13
|
var paths = require('./paths-7768b440.cjs.prod.js');
|
|
14
14
|
var applicationConfig = require('@commercetools-frontend/application-config');
|
|
15
15
|
var mcDevAuthentication = require('@commercetools-frontend/mc-dev-authentication');
|
|
@@ -36,9 +36,9 @@ require('webpackbar');
|
|
|
36
36
|
require('@babel/runtime-corejs3/helpers/classCallCheck');
|
|
37
37
|
require('@babel/runtime-corejs3/helpers/createClass');
|
|
38
38
|
require('@babel/runtime-corejs3/core-js-stable/object/assign');
|
|
39
|
-
require('./create-postcss-config-
|
|
39
|
+
require('./create-postcss-config-7a8d5d45.cjs.prod.js');
|
|
40
40
|
require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
41
|
-
require('./package-
|
|
41
|
+
require('./package-f8ef2d55.cjs.prod.js');
|
|
42
42
|
require('./has-jsx-runtime-c3202df5.cjs.prod.js');
|
|
43
43
|
require('./optimizations-fb93514f.cjs.prod.js');
|
|
44
44
|
require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
|
|
@@ -7,7 +7,7 @@ import openBrowser from 'react-dev-utils/openBrowser';
|
|
|
7
7
|
import { choosePort, prepareUrls, createCompiler } from 'react-dev-utils/WebpackDevServerUtils';
|
|
8
8
|
import webpack from 'webpack';
|
|
9
9
|
import WebpackDevServer from 'webpack-dev-server';
|
|
10
|
-
import { c as createWebpackConfigForDevelopment } from './create-webpack-config-for-development-
|
|
10
|
+
import { c as createWebpackConfigForDevelopment } from './create-webpack-config-for-development-83d41498.esm.js';
|
|
11
11
|
import { p as paths } from './paths-39f22b8b.esm.js';
|
|
12
12
|
import { processConfig } from '@commercetools-frontend/application-config';
|
|
13
13
|
import { createMcDevAuthenticationMiddleware } from '@commercetools-frontend/mc-dev-authentication';
|
|
@@ -34,9 +34,9 @@ import 'webpackbar';
|
|
|
34
34
|
import '@babel/runtime-corejs3/helpers/classCallCheck';
|
|
35
35
|
import '@babel/runtime-corejs3/helpers/createClass';
|
|
36
36
|
import '@babel/runtime-corejs3/core-js-stable/object/assign';
|
|
37
|
-
import './create-postcss-config-
|
|
37
|
+
import './create-postcss-config-764339b9.esm.js';
|
|
38
38
|
import '@babel/runtime-corejs3/helpers/slicedToArray';
|
|
39
|
-
import './package-
|
|
39
|
+
import './package-d649bc71.esm.js';
|
|
40
40
|
import './has-jsx-runtime-e3ecb09b.esm.js';
|
|
41
41
|
import './optimizations-bf991634.esm.js';
|
|
42
42
|
import '@babel/runtime-corejs3/core-js-stable/instance/reduce';
|
|
@@ -13,13 +13,14 @@ var mcHtmlTemplate = require('@commercetools-frontend/mc-html-template');
|
|
|
13
13
|
var paths = require('./paths-b76fc753.cjs.dev.js');
|
|
14
14
|
var _Object$assign = require('@babel/runtime-corejs3/core-js-stable/object/assign');
|
|
15
15
|
var mcDevAuthentication = require('@commercetools-frontend/mc-dev-authentication');
|
|
16
|
-
var vitePluginSvgr = require('./vite-plugin-svgr-
|
|
16
|
+
var vitePluginSvgr = require('./vite-plugin-svgr-7d06f400.cjs.dev.js');
|
|
17
17
|
require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
18
18
|
require('fs');
|
|
19
19
|
require('./does-file-exist-eb86baca.cjs.dev.js');
|
|
20
20
|
require('node:fs');
|
|
21
21
|
require('crypto');
|
|
22
22
|
require('@rollup/pluginutils');
|
|
23
|
+
require('@babel/runtime-corejs3/core-js/instance/match-all');
|
|
23
24
|
|
|
24
25
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
25
26
|
|
|
@@ -13,13 +13,14 @@ var mcHtmlTemplate = require('@commercetools-frontend/mc-html-template');
|
|
|
13
13
|
var paths = require('./paths-7768b440.cjs.prod.js');
|
|
14
14
|
var _Object$assign = require('@babel/runtime-corejs3/core-js-stable/object/assign');
|
|
15
15
|
var mcDevAuthentication = require('@commercetools-frontend/mc-dev-authentication');
|
|
16
|
-
var vitePluginSvgr = require('./vite-plugin-svgr-
|
|
16
|
+
var vitePluginSvgr = require('./vite-plugin-svgr-4034a834.cjs.prod.js');
|
|
17
17
|
require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
18
18
|
require('fs');
|
|
19
19
|
require('./does-file-exist-be53305d.cjs.prod.js');
|
|
20
20
|
require('node:fs');
|
|
21
21
|
require('crypto');
|
|
22
22
|
require('@rollup/pluginutils');
|
|
23
|
+
require('@babel/runtime-corejs3/core-js/instance/match-all');
|
|
23
24
|
|
|
24
25
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
25
26
|
|
|
@@ -11,13 +11,14 @@ import { processHeaders, replaceHtmlPlaceholders, generateTemplate } from '@comm
|
|
|
11
11
|
import { p as paths } from './paths-39f22b8b.esm.js';
|
|
12
12
|
import _Object$assign from '@babel/runtime-corejs3/core-js-stable/object/assign';
|
|
13
13
|
import { createMcDevAuthenticationMiddleware } from '@commercetools-frontend/mc-dev-authentication';
|
|
14
|
-
import { v as vitePluginSvgr } from './vite-plugin-svgr-
|
|
14
|
+
import { v as vitePluginSvgr } from './vite-plugin-svgr-de6ee7da.esm.js';
|
|
15
15
|
import '@babel/runtime-corejs3/core-js-stable/instance/find';
|
|
16
16
|
import 'fs';
|
|
17
17
|
import './does-file-exist-32618334.esm.js';
|
|
18
18
|
import 'node:fs';
|
|
19
19
|
import 'crypto';
|
|
20
20
|
import '@rollup/pluginutils';
|
|
21
|
+
import '@babel/runtime-corejs3/core-js/instance/match-all';
|
|
21
22
|
|
|
22
23
|
const vitePluginCustomApplication = applicationConfig => {
|
|
23
24
|
return {
|
package/dist/{vite-plugin-svgr-b080c510.cjs.prod.js → vite-plugin-svgr-4034a834.cjs.prod.js}
RENAMED
|
@@ -4,6 +4,7 @@ var crypto = require('crypto');
|
|
|
4
4
|
var fs = require('fs');
|
|
5
5
|
var pluginutils = require('@rollup/pluginutils');
|
|
6
6
|
var vite = require('vite');
|
|
7
|
+
var _matchAllInstanceProperty = require('@babel/runtime-corejs3/core-js/instance/match-all');
|
|
7
8
|
|
|
8
9
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
9
10
|
|
|
@@ -27,6 +28,40 @@ function _interopNamespace(e) {
|
|
|
27
28
|
|
|
28
29
|
var crypto__default = /*#__PURE__*/_interopDefault(crypto);
|
|
29
30
|
var fs__default = /*#__PURE__*/_interopDefault(fs);
|
|
31
|
+
var _matchAllInstanceProperty__default = /*#__PURE__*/_interopDefault(_matchAllInstanceProperty);
|
|
32
|
+
|
|
33
|
+
async function optimizeEmbeddedPngs(code, id) {
|
|
34
|
+
const pngRegex = /href="data:image\/png;base64,([a-zA-Z0-9+/]+=*)"/gs;
|
|
35
|
+
let modifiedCode = code;
|
|
36
|
+
const matchesIterator = _matchAllInstanceProperty__default["default"](code).call(code, pngRegex);
|
|
37
|
+
for (const match of matchesIterator) {
|
|
38
|
+
const originalBase64 = match[1];
|
|
39
|
+
if (originalBase64) {
|
|
40
|
+
// This length would indicate that the match is greater than ~1mb
|
|
41
|
+
if (originalBase64.length > 1000000) {
|
|
42
|
+
const fileName = id.split('/').pop();
|
|
43
|
+
console.warn(`\n🚨 You have a large png embedded in ${fileName} - consider using an image tag instead 🚨`);
|
|
44
|
+
try {
|
|
45
|
+
const pngBuffer = Buffer.from(originalBase64, 'base64');
|
|
46
|
+
const sharp = (await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('sharp')); })).default;
|
|
47
|
+
const optimizedBuffer = await sharp(pngBuffer).png({
|
|
48
|
+
quality: 10,
|
|
49
|
+
compressionLevel: 9
|
|
50
|
+
}).toBuffer();
|
|
51
|
+
const optimizedPngBase64 = optimizedBuffer.toString('base64');
|
|
52
|
+
// Construct the new href value
|
|
53
|
+
const originalMatch = match[0];
|
|
54
|
+
const optimizedXlinkHref = originalMatch.replace(originalBase64, optimizedPngBase64);
|
|
55
|
+
// Replace the original href with the optimized one
|
|
56
|
+
modifiedCode = modifiedCode.replace(originalMatch, optimizedXlinkHref);
|
|
57
|
+
} catch (error) {
|
|
58
|
+
console.error('Error processing embedded PNG:', error, 'Original Base64:', originalBase64);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return modifiedCode;
|
|
64
|
+
}
|
|
30
65
|
|
|
31
66
|
/**
|
|
32
67
|
* COPIED FROM https://github.com/pd4d10/vite-plugin-svgr
|
|
@@ -40,7 +75,15 @@ function vitePluginSvgr() {
|
|
|
40
75
|
const _await$import = await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@svgr/core')); }),
|
|
41
76
|
transform = _await$import.transform;
|
|
42
77
|
const svgCode = await fs__default["default"].promises.readFile(id, 'utf8');
|
|
43
|
-
|
|
78
|
+
let transformableSVGCode;
|
|
79
|
+
if (process.env.ENABLE_EXPERIMENTAL_SVG_PNG_OPTIMIZATION === 'true') {
|
|
80
|
+
// This is a temporary fix for the issue with large embedded PNGs
|
|
81
|
+
// in SVGs. It will be removed once we have a better solution.
|
|
82
|
+
transformableSVGCode = await optimizeEmbeddedPngs(svgCode, id);
|
|
83
|
+
} else {
|
|
84
|
+
transformableSVGCode = svgCode;
|
|
85
|
+
}
|
|
86
|
+
const componentCode = await transform(transformableSVGCode, {
|
|
44
87
|
icon: false,
|
|
45
88
|
svgoConfig: {
|
|
46
89
|
plugins: [{
|
|
@@ -4,6 +4,7 @@ var crypto = require('crypto');
|
|
|
4
4
|
var fs = require('fs');
|
|
5
5
|
var pluginutils = require('@rollup/pluginutils');
|
|
6
6
|
var vite = require('vite');
|
|
7
|
+
var _matchAllInstanceProperty = require('@babel/runtime-corejs3/core-js/instance/match-all');
|
|
7
8
|
|
|
8
9
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
9
10
|
|
|
@@ -27,6 +28,40 @@ function _interopNamespace(e) {
|
|
|
27
28
|
|
|
28
29
|
var crypto__default = /*#__PURE__*/_interopDefault(crypto);
|
|
29
30
|
var fs__default = /*#__PURE__*/_interopDefault(fs);
|
|
31
|
+
var _matchAllInstanceProperty__default = /*#__PURE__*/_interopDefault(_matchAllInstanceProperty);
|
|
32
|
+
|
|
33
|
+
async function optimizeEmbeddedPngs(code, id) {
|
|
34
|
+
const pngRegex = /href="data:image\/png;base64,([a-zA-Z0-9+/]+=*)"/gs;
|
|
35
|
+
let modifiedCode = code;
|
|
36
|
+
const matchesIterator = _matchAllInstanceProperty__default["default"](code).call(code, pngRegex);
|
|
37
|
+
for (const match of matchesIterator) {
|
|
38
|
+
const originalBase64 = match[1];
|
|
39
|
+
if (originalBase64) {
|
|
40
|
+
// This length would indicate that the match is greater than ~1mb
|
|
41
|
+
if (originalBase64.length > 1000000) {
|
|
42
|
+
const fileName = id.split('/').pop();
|
|
43
|
+
console.warn(`\n🚨 You have a large png embedded in ${fileName} - consider using an image tag instead 🚨`);
|
|
44
|
+
try {
|
|
45
|
+
const pngBuffer = Buffer.from(originalBase64, 'base64');
|
|
46
|
+
const sharp = (await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('sharp')); })).default;
|
|
47
|
+
const optimizedBuffer = await sharp(pngBuffer).png({
|
|
48
|
+
quality: 10,
|
|
49
|
+
compressionLevel: 9
|
|
50
|
+
}).toBuffer();
|
|
51
|
+
const optimizedPngBase64 = optimizedBuffer.toString('base64');
|
|
52
|
+
// Construct the new href value
|
|
53
|
+
const originalMatch = match[0];
|
|
54
|
+
const optimizedXlinkHref = originalMatch.replace(originalBase64, optimizedPngBase64);
|
|
55
|
+
// Replace the original href with the optimized one
|
|
56
|
+
modifiedCode = modifiedCode.replace(originalMatch, optimizedXlinkHref);
|
|
57
|
+
} catch (error) {
|
|
58
|
+
console.error('Error processing embedded PNG:', error, 'Original Base64:', originalBase64);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return modifiedCode;
|
|
64
|
+
}
|
|
30
65
|
|
|
31
66
|
/**
|
|
32
67
|
* COPIED FROM https://github.com/pd4d10/vite-plugin-svgr
|
|
@@ -40,7 +75,15 @@ function vitePluginSvgr() {
|
|
|
40
75
|
const _await$import = await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@svgr/core')); }),
|
|
41
76
|
transform = _await$import.transform;
|
|
42
77
|
const svgCode = await fs__default["default"].promises.readFile(id, 'utf8');
|
|
43
|
-
|
|
78
|
+
let transformableSVGCode;
|
|
79
|
+
if (process.env.ENABLE_EXPERIMENTAL_SVG_PNG_OPTIMIZATION === 'true') {
|
|
80
|
+
// This is a temporary fix for the issue with large embedded PNGs
|
|
81
|
+
// in SVGs. It will be removed once we have a better solution.
|
|
82
|
+
transformableSVGCode = await optimizeEmbeddedPngs(svgCode, id);
|
|
83
|
+
} else {
|
|
84
|
+
transformableSVGCode = svgCode;
|
|
85
|
+
}
|
|
86
|
+
const componentCode = await transform(transformableSVGCode, {
|
|
44
87
|
icon: false,
|
|
45
88
|
svgoConfig: {
|
|
46
89
|
plugins: [{
|
|
@@ -2,6 +2,40 @@ import crypto from 'crypto';
|
|
|
2
2
|
import fs from 'fs';
|
|
3
3
|
import { createFilter } from '@rollup/pluginutils';
|
|
4
4
|
import { transformWithEsbuild } from 'vite';
|
|
5
|
+
import _matchAllInstanceProperty from '@babel/runtime-corejs3/core-js/instance/match-all';
|
|
6
|
+
|
|
7
|
+
async function optimizeEmbeddedPngs(code, id) {
|
|
8
|
+
const pngRegex = /href="data:image\/png;base64,([a-zA-Z0-9+/]+=*)"/gs;
|
|
9
|
+
let modifiedCode = code;
|
|
10
|
+
const matchesIterator = _matchAllInstanceProperty(code).call(code, pngRegex);
|
|
11
|
+
for (const match of matchesIterator) {
|
|
12
|
+
const originalBase64 = match[1];
|
|
13
|
+
if (originalBase64) {
|
|
14
|
+
// This length would indicate that the match is greater than ~1mb
|
|
15
|
+
if (originalBase64.length > 1000000) {
|
|
16
|
+
const fileName = id.split('/').pop();
|
|
17
|
+
console.warn(`\n🚨 You have a large png embedded in ${fileName} - consider using an image tag instead 🚨`);
|
|
18
|
+
try {
|
|
19
|
+
const pngBuffer = Buffer.from(originalBase64, 'base64');
|
|
20
|
+
const sharp = (await import('sharp')).default;
|
|
21
|
+
const optimizedBuffer = await sharp(pngBuffer).png({
|
|
22
|
+
quality: 10,
|
|
23
|
+
compressionLevel: 9
|
|
24
|
+
}).toBuffer();
|
|
25
|
+
const optimizedPngBase64 = optimizedBuffer.toString('base64');
|
|
26
|
+
// Construct the new href value
|
|
27
|
+
const originalMatch = match[0];
|
|
28
|
+
const optimizedXlinkHref = originalMatch.replace(originalBase64, optimizedPngBase64);
|
|
29
|
+
// Replace the original href with the optimized one
|
|
30
|
+
modifiedCode = modifiedCode.replace(originalMatch, optimizedXlinkHref);
|
|
31
|
+
} catch (error) {
|
|
32
|
+
console.error('Error processing embedded PNG:', error, 'Original Base64:', originalBase64);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return modifiedCode;
|
|
38
|
+
}
|
|
5
39
|
|
|
6
40
|
/**
|
|
7
41
|
* COPIED FROM https://github.com/pd4d10/vite-plugin-svgr
|
|
@@ -15,7 +49,15 @@ function vitePluginSvgr() {
|
|
|
15
49
|
const _await$import = await import('@svgr/core'),
|
|
16
50
|
transform = _await$import.transform;
|
|
17
51
|
const svgCode = await fs.promises.readFile(id, 'utf8');
|
|
18
|
-
|
|
52
|
+
let transformableSVGCode;
|
|
53
|
+
if (process.env.ENABLE_EXPERIMENTAL_SVG_PNG_OPTIMIZATION === 'true') {
|
|
54
|
+
// This is a temporary fix for the issue with large embedded PNGs
|
|
55
|
+
// in SVGs. It will be removed once we have a better solution.
|
|
56
|
+
transformableSVGCode = await optimizeEmbeddedPngs(svgCode, id);
|
|
57
|
+
} else {
|
|
58
|
+
transformableSVGCode = svgCode;
|
|
59
|
+
}
|
|
60
|
+
const componentCode = await transform(transformableSVGCode, {
|
|
19
61
|
icon: false,
|
|
20
62
|
svgoConfig: {
|
|
21
63
|
plugins: [{
|