@commercetools-frontend/mc-scripts 25.0.0 → 25.1.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.
Files changed (76) hide show
  1. package/application-runtime/dist/commercetools-frontend-mc-scripts-application-runtime.cjs.dev.js +1 -1
  2. package/application-runtime/dist/commercetools-frontend-mc-scripts-application-runtime.cjs.prod.js +1 -1
  3. package/application-runtime/dist/commercetools-frontend-mc-scripts-application-runtime.esm.js +1 -1
  4. package/cli/dist/commercetools-frontend-mc-scripts-cli.cjs.dev.js +14 -13
  5. package/cli/dist/commercetools-frontend-mc-scripts-cli.cjs.prod.js +14 -13
  6. package/cli/dist/commercetools-frontend-mc-scripts-cli.esm.js +14 -13
  7. package/dist/{build-1baf8a00.cjs.dev.js → build-0a5986d1.cjs.dev.js} +7 -7
  8. package/dist/{build-0b4c6b04.esm.js → build-dbcd0936.esm.js} +7 -7
  9. package/dist/{build-50f29fb0.cjs.prod.js → build-ec10df64.cjs.prod.js} +7 -7
  10. package/dist/{build-vite-e26f6c9f.cjs.dev.js → build-vite-16b1a575.cjs.dev.js} +8 -9
  11. package/dist/{build-vite-85211835.esm.js → build-vite-59e1f185.esm.js} +8 -9
  12. package/dist/{build-vite-4a6c90c2.cjs.prod.js → build-vite-5d317720.cjs.prod.js} +8 -9
  13. package/dist/commercetools-frontend-mc-scripts.cjs.dev.js +1 -1
  14. package/dist/commercetools-frontend-mc-scripts.cjs.prod.js +1 -1
  15. package/dist/commercetools-frontend-mc-scripts.esm.js +1 -1
  16. package/dist/{compile-html-adfef598.esm.js → compile-html-025cd493.esm.js} +2 -4
  17. package/dist/{compile-html-b80f9651.cjs.prod.js → compile-html-50fd05ec.cjs.prod.js} +2 -5
  18. package/dist/{compile-html-8679f721.cjs.dev.js → compile-html-f4ac88cc.cjs.dev.js} +2 -5
  19. package/dist/{config-sync-87ba9f28.cjs.prod.js → config-sync-ce05c66c.cjs.prod.js} +70 -78
  20. package/dist/{config-sync-27ca0c93.cjs.dev.js → config-sync-dbb43993.cjs.dev.js} +72 -80
  21. package/dist/{config-sync-ff4b1e5b.esm.js → config-sync-e7f53a98.esm.js} +71 -79
  22. package/dist/{create-postcss-config-e6dfba3f.esm.js → create-postcss-config-0a86560d.esm.js} +1 -1
  23. package/dist/{create-postcss-config-0e833724.cjs.dev.js → create-postcss-config-381b636b.cjs.dev.js} +1 -1
  24. package/dist/{create-postcss-config-34bab342.cjs.prod.js → create-postcss-config-91c09596.cjs.prod.js} +1 -1
  25. package/dist/{create-webpack-config-for-development-fe0945ce.cjs.prod.js → create-webpack-config-for-development-37677a49.cjs.prod.js} +6 -6
  26. package/dist/{create-webpack-config-for-development-2ac1d86f.cjs.dev.js → create-webpack-config-for-development-488742b2.cjs.dev.js} +6 -6
  27. package/dist/{create-webpack-config-for-development-be2722d6.esm.js → create-webpack-config-for-development-df3f7f7f.esm.js} +6 -6
  28. package/dist/{create-webpack-config-for-production-d2c41a9d.cjs.dev.js → create-webpack-config-for-production-46d817cc.cjs.dev.js} +7 -7
  29. package/dist/{create-webpack-config-for-production-2200e554.cjs.prod.js → create-webpack-config-for-production-aad64e2a.cjs.prod.js} +7 -7
  30. package/dist/{create-webpack-config-for-production-66c77849.esm.js → create-webpack-config-for-production-e22f78d2.esm.js} +7 -7
  31. package/dist/{credentials-storage-381abf27.cjs.prod.js → credentials-storage-0b89aa0e.cjs.prod.js} +1 -1
  32. package/dist/{credentials-storage-7285d7b4.esm.js → credentials-storage-4464313c.esm.js} +1 -1
  33. package/dist/{credentials-storage-de220814.cjs.dev.js → credentials-storage-cbb5c559.cjs.dev.js} +1 -1
  34. package/dist/{deployment-previews-set-3697be5e.cjs.dev.js → deployment-previews-set-4edd48db.cjs.dev.js} +22 -28
  35. package/dist/{deployment-previews-set-e92403f7.cjs.prod.js → deployment-previews-set-636fb1a3.cjs.prod.js} +22 -28
  36. package/dist/{deployment-previews-set-7f9fbfe5.esm.js → deployment-previews-set-bbef95d2.esm.js} +22 -27
  37. package/dist/{graphql-requests-bab5fcc3.cjs.dev.js → graphql-requests-0a6eeb3a.cjs.prod.js} +5 -8
  38. package/dist/{graphql-requests-d8bc2292.esm.js → graphql-requests-14074b2b.esm.js} +5 -8
  39. package/dist/{graphql-requests-8ef89149.cjs.prod.js → graphql-requests-23f7ddb1.cjs.dev.js} +5 -8
  40. package/dist/{i18n-message-complilation-8aec9d1b.esm.js → i18n-message-complilation-21d3b0aa.esm.js} +1 -1
  41. package/dist/{i18n-message-complilation-3f80e8d6.cjs.dev.js → i18n-message-complilation-7311cb29.cjs.dev.js} +1 -1
  42. package/dist/{i18n-message-complilation-393d344a.cjs.prod.js → i18n-message-complilation-7762da61.cjs.prod.js} +1 -1
  43. package/dist/{login-9ee43381.esm.js → login-1b222f33.esm.js} +27 -30
  44. package/dist/{login-5fd67aac.cjs.prod.js → login-54ebae96.cjs.prod.js} +28 -31
  45. package/dist/{login-9fac9eee.cjs.dev.js → login-a6fd5fbf.cjs.dev.js} +28 -31
  46. package/dist/{optimizations-ea21b802.cjs.prod.js → optimizations-7789145e.cjs.dev.js} +5 -8
  47. package/dist/{optimizations-ea71a24a.esm.js → optimizations-bf991634.esm.js} +5 -7
  48. package/dist/{optimizations-ebbeaf88.cjs.dev.js → optimizations-fb93514f.cjs.prod.js} +5 -8
  49. package/dist/{package-4bdd2ccf.esm.js → package-a34835d9.esm.js} +9 -9
  50. package/dist/{package-ff04bcf7.cjs.dev.js → package-d8b1f4c0.cjs.dev.js} +9 -9
  51. package/dist/{package-428d5001.cjs.prod.js → package-e1f7242c.cjs.prod.js} +9 -9
  52. package/dist/{paths-7bf7e88e.esm.js → paths-39f22b8b.esm.js} +4 -9
  53. package/dist/{paths-af1a725a.cjs.prod.js → paths-7768b440.cjs.prod.js} +4 -10
  54. package/dist/{paths-ec3e3a7d.cjs.dev.js → paths-b76fc753.cjs.dev.js} +4 -10
  55. package/dist/{serve-04a03d5f.cjs.dev.js → serve-38456e1b.cjs.dev.js} +7 -6
  56. package/dist/{serve-fb1a0f5a.esm.js → serve-be1f9439.esm.js} +6 -6
  57. package/dist/{serve-2a863026.cjs.prod.js → serve-cc4a766d.cjs.prod.js} +7 -6
  58. package/dist/{start-84cdf12b.cjs.prod.js → start-0be8a294.cjs.prod.js} +8 -9
  59. package/dist/{start-47ea5e04.cjs.dev.js → start-37ec4a7e.cjs.dev.js} +8 -9
  60. package/dist/{start-643a55bb.esm.js → start-890895df.esm.js} +8 -9
  61. package/dist/{start-vite-eea72ba9.cjs.dev.js → start-vite-068e9f73.cjs.dev.js} +3 -4
  62. package/dist/{start-vite-d548c121.cjs.prod.js → start-vite-29078b3a.cjs.prod.js} +3 -4
  63. package/dist/{start-vite-d649d1f3.esm.js → start-vite-7d1161e8.esm.js} +3 -4
  64. package/dist/{vite-plugin-svgr-53ef97c7.cjs.dev.js → vite-plugin-svgr-4034a834.cjs.prod.js} +4 -4
  65. package/dist/{vite-plugin-svgr-5de1cad9.cjs.prod.js → vite-plugin-svgr-7d06f400.cjs.dev.js} +4 -4
  66. package/dist/{vite-plugin-svgr-22c8d518.esm.js → vite-plugin-svgr-de6ee7da.esm.js} +4 -4
  67. package/package.json +9 -9
  68. package/postcss/dist/commercetools-frontend-mc-scripts-postcss.cjs.dev.js +2 -2
  69. package/postcss/dist/commercetools-frontend-mc-scripts-postcss.cjs.prod.js +2 -2
  70. package/postcss/dist/commercetools-frontend-mc-scripts-postcss.esm.js +2 -2
  71. package/webpack/dist/commercetools-frontend-mc-scripts-webpack.cjs.dev.js +6 -6
  72. package/webpack/dist/commercetools-frontend-mc-scripts-webpack.cjs.prod.js +6 -6
  73. package/webpack/dist/commercetools-frontend-mc-scripts-webpack.esm.js +6 -6
  74. package/webpack-loaders/i18n-message-compilation-loader/dist/commercetools-frontend-mc-scripts-webpack-loaders-i18n-message-compilation-loader.cjs.dev.js +1 -1
  75. package/webpack-loaders/i18n-message-compilation-loader/dist/commercetools-frontend-mc-scripts-webpack-loaders-i18n-message-compilation-loader.cjs.prod.js +1 -1
  76. package/webpack-loaders/i18n-message-compilation-loader/dist/commercetools-frontend-mc-scripts-webpack-loaders-i18n-message-compilation-loader.esm.js +1 -1
@@ -5,7 +5,7 @@ import { transformWithEsbuild } from 'vite';
5
5
  import _matchAllInstanceProperty from '@babel/runtime-corejs3/core-js/instance/match-all';
6
6
 
7
7
  async function optimizeEmbeddedPngs(code, id) {
8
- const pngRegex = /href="data:image\/png;base64,([a-zA-Z0-9+/]+=*)"/g;
8
+ const pngRegex = /href="data:image\/png;base64,([a-zA-Z0-9+/]+=*)"/gs;
9
9
  let modifiedCode = code;
10
10
  const matchesIterator = _matchAllInstanceProperty(code).call(code, pngRegex);
11
11
  for (const match of matchesIterator) {
@@ -14,7 +14,7 @@ async function optimizeEmbeddedPngs(code, id) {
14
14
  // This length would indicate that the match is greater than ~1mb
15
15
  if (originalBase64.length > 1000000) {
16
16
  const fileName = id.split('/').pop();
17
- console.warn("\n\uD83D\uDEA8 You have a large png embedded in ".concat(fileName, " - consider using an image tag instead \uD83D\uDEA8"));
17
+ console.warn(`\n🚨 You have a large png embedded in ${fileName} - consider using an image tag instead 🚨`);
18
18
  try {
19
19
  const pngBuffer = Buffer.from(originalBase64, 'base64');
20
20
  const sharp = (await import('sharp')).default;
@@ -97,9 +97,9 @@ function vitePluginSvgr() {
97
97
  name: 'prefixIds',
98
98
  params: {
99
99
  delim: '',
100
- prefix: (_, info) => "svg".concat(crypto.createHash('shake256', {
100
+ prefix: (_, info) => `svg${crypto.createHash('shake256', {
101
101
  outputLength: 6
102
- }).update(info.path || '').digest('hex'))
102
+ }).update(info.path || '').digest('hex')}`
103
103
  }
104
104
  }]
105
105
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@commercetools-frontend/mc-scripts",
3
- "version": "25.0.0",
3
+ "version": "25.1.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 @@
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": "25.0.0",
65
- "@commercetools-frontend/application-config": "25.0.0",
66
- "@commercetools-frontend/assets": "25.0.0",
67
- "@commercetools-frontend/babel-preset-mc-app": "25.0.0",
68
- "@commercetools-frontend/constants": "25.0.0",
69
- "@commercetools-frontend/mc-dev-authentication": "25.0.0",
70
- "@commercetools-frontend/mc-html-template": "25.0.0",
64
+ "@commercetools-frontend/application-components": "25.1.0",
65
+ "@commercetools-frontend/application-config": "25.1.0",
66
+ "@commercetools-frontend/assets": "25.1.0",
67
+ "@commercetools-frontend/babel-preset-mc-app": "25.1.0",
68
+ "@commercetools-frontend/constants": "25.1.0",
69
+ "@commercetools-frontend/mc-dev-authentication": "25.1.0",
70
+ "@commercetools-frontend/mc-html-template": "25.1.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",
@@ -85,7 +85,7 @@
85
85
  "autoprefixer": "^10.4.15",
86
86
  "babel-loader": "8.4.1",
87
87
  "babel-plugin-formatjs": "^10.5.25",
88
- "browserslist": "^4.21.10",
88
+ "browserslist": "^4.28.1",
89
89
  "chalk": "4.1.2",
90
90
  "commander": "^13.1.0",
91
91
  "core-js": "^3.32.2",
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var createPostcssConfig = require('../../dist/create-postcss-config-0e833724.cjs.dev.js');
5
+ var createPostcssConfig = require('../../dist/create-postcss-config-381b636b.cjs.dev.js');
6
6
  require('@babel/runtime-corejs3/helpers/slicedToArray');
7
7
  require('path');
8
- require('../../dist/package-ff04bcf7.cjs.dev.js');
8
+ require('../../dist/package-d8b1f4c0.cjs.dev.js');
9
9
 
10
10
 
11
11
 
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var createPostcssConfig = require('../../dist/create-postcss-config-34bab342.cjs.prod.js');
5
+ var createPostcssConfig = require('../../dist/create-postcss-config-91c09596.cjs.prod.js');
6
6
  require('@babel/runtime-corejs3/helpers/slicedToArray');
7
7
  require('path');
8
- require('../../dist/package-428d5001.cjs.prod.js');
8
+ require('../../dist/package-e1f7242c.cjs.prod.js');
9
9
 
10
10
 
11
11
 
@@ -1,4 +1,4 @@
1
- export { c as createPostcssConfig } from '../../dist/create-postcss-config-e6dfba3f.esm.js';
1
+ export { c as createPostcssConfig } from '../../dist/create-postcss-config-0a86560d.esm.js';
2
2
  import '@babel/runtime-corejs3/helpers/slicedToArray';
3
3
  import 'path';
4
- import '../../dist/package-4bdd2ccf.esm.js';
4
+ import '../../dist/package-a34835d9.esm.js';
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var createWebpackConfigForDevelopment = require('../../dist/create-webpack-config-for-development-2ac1d86f.cjs.dev.js');
6
- var createWebpackConfigForProduction = require('../../dist/create-webpack-config-for-production-d2c41a9d.cjs.dev.js');
5
+ var createWebpackConfigForDevelopment = require('../../dist/create-webpack-config-for-development-488742b2.cjs.dev.js');
6
+ var createWebpackConfigForProduction = require('../../dist/create-webpack-config-for-production-46d817cc.cjs.dev.js');
7
7
  require('@babel/runtime-corejs3/core-js-stable/object/keys');
8
8
  require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
9
9
  require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
@@ -29,16 +29,16 @@ require('@babel/runtime-corejs3/helpers/createClass');
29
29
  require('@babel/runtime-corejs3/core-js-stable/object/assign');
30
30
  require('@commercetools-frontend/application-config');
31
31
  require('@commercetools-frontend/mc-html-template');
32
- require('../../dist/create-postcss-config-0e833724.cjs.dev.js');
32
+ require('../../dist/create-postcss-config-381b636b.cjs.dev.js');
33
33
  require('@babel/runtime-corejs3/helpers/slicedToArray');
34
- require('../../dist/package-ff04bcf7.cjs.dev.js');
34
+ require('../../dist/package-d8b1f4c0.cjs.dev.js');
35
35
  require('../../dist/has-jsx-runtime-aa5d21ee.cjs.dev.js');
36
- require('../../dist/optimizations-ebbeaf88.cjs.dev.js');
36
+ require('../../dist/optimizations-7789145e.cjs.dev.js');
37
37
  require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
38
38
  require('@babel/runtime-corejs3/core-js-stable/object/entries');
39
39
  require('@babel/runtime-corejs3/core-js-stable/instance/includes');
40
40
  require('chalk');
41
- require('../../dist/paths-ec3e3a7d.cjs.dev.js');
41
+ require('../../dist/paths-b76fc753.cjs.dev.js');
42
42
  require('@babel/runtime-corejs3/core-js-stable/instance/find');
43
43
  require('fs');
44
44
  require('../../dist/does-file-exist-eb86baca.cjs.dev.js');
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var createWebpackConfigForDevelopment = require('../../dist/create-webpack-config-for-development-fe0945ce.cjs.prod.js');
6
- var createWebpackConfigForProduction = require('../../dist/create-webpack-config-for-production-2200e554.cjs.prod.js');
5
+ var createWebpackConfigForDevelopment = require('../../dist/create-webpack-config-for-development-37677a49.cjs.prod.js');
6
+ var createWebpackConfigForProduction = require('../../dist/create-webpack-config-for-production-aad64e2a.cjs.prod.js');
7
7
  require('@babel/runtime-corejs3/core-js-stable/object/keys');
8
8
  require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
9
9
  require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
@@ -29,16 +29,16 @@ require('@babel/runtime-corejs3/helpers/createClass');
29
29
  require('@babel/runtime-corejs3/core-js-stable/object/assign');
30
30
  require('@commercetools-frontend/application-config');
31
31
  require('@commercetools-frontend/mc-html-template');
32
- require('../../dist/create-postcss-config-34bab342.cjs.prod.js');
32
+ require('../../dist/create-postcss-config-91c09596.cjs.prod.js');
33
33
  require('@babel/runtime-corejs3/helpers/slicedToArray');
34
- require('../../dist/package-428d5001.cjs.prod.js');
34
+ require('../../dist/package-e1f7242c.cjs.prod.js');
35
35
  require('../../dist/has-jsx-runtime-c3202df5.cjs.prod.js');
36
- require('../../dist/optimizations-ea21b802.cjs.prod.js');
36
+ require('../../dist/optimizations-fb93514f.cjs.prod.js');
37
37
  require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
38
38
  require('@babel/runtime-corejs3/core-js-stable/object/entries');
39
39
  require('@babel/runtime-corejs3/core-js-stable/instance/includes');
40
40
  require('chalk');
41
- require('../../dist/paths-af1a725a.cjs.prod.js');
41
+ require('../../dist/paths-7768b440.cjs.prod.js');
42
42
  require('@babel/runtime-corejs3/core-js-stable/instance/find');
43
43
  require('fs');
44
44
  require('../../dist/does-file-exist-be53305d.cjs.prod.js');
@@ -1,5 +1,5 @@
1
- export { c as createWebpackConfigForDevelopment } from '../../dist/create-webpack-config-for-development-be2722d6.esm.js';
2
- export { c as createWebpackConfigForProduction } from '../../dist/create-webpack-config-for-production-66c77849.esm.js';
1
+ export { c as createWebpackConfigForDevelopment } from '../../dist/create-webpack-config-for-development-df3f7f7f.esm.js';
2
+ export { c as createWebpackConfigForProduction } from '../../dist/create-webpack-config-for-production-e22f78d2.esm.js';
3
3
  import '@babel/runtime-corejs3/core-js-stable/object/keys';
4
4
  import '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
5
5
  import '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor';
@@ -25,16 +25,16 @@ import '@babel/runtime-corejs3/helpers/createClass';
25
25
  import '@babel/runtime-corejs3/core-js-stable/object/assign';
26
26
  import '@commercetools-frontend/application-config';
27
27
  import '@commercetools-frontend/mc-html-template';
28
- import '../../dist/create-postcss-config-e6dfba3f.esm.js';
28
+ import '../../dist/create-postcss-config-0a86560d.esm.js';
29
29
  import '@babel/runtime-corejs3/helpers/slicedToArray';
30
- import '../../dist/package-4bdd2ccf.esm.js';
30
+ import '../../dist/package-a34835d9.esm.js';
31
31
  import '../../dist/has-jsx-runtime-e3ecb09b.esm.js';
32
- import '../../dist/optimizations-ea71a24a.esm.js';
32
+ import '../../dist/optimizations-bf991634.esm.js';
33
33
  import '@babel/runtime-corejs3/core-js-stable/instance/reduce';
34
34
  import '@babel/runtime-corejs3/core-js-stable/object/entries';
35
35
  import '@babel/runtime-corejs3/core-js-stable/instance/includes';
36
36
  import 'chalk';
37
- import '../../dist/paths-7bf7e88e.esm.js';
37
+ import '../../dist/paths-39f22b8b.esm.js';
38
38
  import '@babel/runtime-corejs3/core-js-stable/instance/find';
39
39
  import 'fs';
40
40
  import '../../dist/does-file-exist-32618334.esm.js';
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var cliLib = require('@formatjs/cli-lib');
6
- var i18nMessageComplilation = require('../../../dist/i18n-message-complilation-3f80e8d6.cjs.dev.js');
6
+ var i18nMessageComplilation = require('../../../dist/i18n-message-complilation-7311cb29.cjs.dev.js');
7
7
  require('@babel/runtime-corejs3/core-js-stable/object/values');
8
8
  require('chalk');
9
9
 
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var cliLib = require('@formatjs/cli-lib');
6
- var i18nMessageComplilation = require('../../../dist/i18n-message-complilation-393d344a.cjs.prod.js');
6
+ var i18nMessageComplilation = require('../../../dist/i18n-message-complilation-7762da61.cjs.prod.js');
7
7
  require('@babel/runtime-corejs3/core-js-stable/object/values');
8
8
  require('chalk');
9
9
 
@@ -1,5 +1,5 @@
1
1
  import { compile } from '@formatjs/cli-lib';
2
- import { g as getI18nMessageFormat, h as handleMessageCompilationError } from '../../../dist/i18n-message-complilation-8aec9d1b.esm.js';
2
+ import { g as getI18nMessageFormat, h as handleMessageCompilationError } from '../../../dist/i18n-message-complilation-21d3b0aa.esm.js';
3
3
  import '@babel/runtime-corejs3/core-js-stable/object/values';
4
4
  import 'chalk';
5
5