@absolu/assets-toolkit 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -91,6 +91,8 @@ Factory qui produit une configuration Vite complète.
91
91
 
92
92
  **Sortie :** `dist/` avec organisation automatique (css, scripts, images, iconfonts, fonts)
93
93
 
94
+ Chaque image de `src/images/` est émise sous son propre chemin dans `dist/images/`, y compris les images homonymes de dossiers différents et les images au contenu identique (que Rollup fusionnerait sinon) : les chemins peuvent donc être construits à la volée sans passer par le manifest.
95
+
94
96
  #### Désactiver des plugins
95
97
 
96
98
  ```ts
@@ -116,6 +118,7 @@ export default createViteConfig({
116
118
  iconClassName: 'icon',
117
119
  fontPath: '@/iconfonts/',
118
120
  iconDisplay: 'block',
121
+ fontDisplay: 'block',
119
122
  },
120
123
  svgstore: {
121
124
  srcDir: 'src/images/icons-sprite',
@@ -149,6 +152,7 @@ Plugin Vite qui convertit des icônes SVG en font (SVG → TTF → WOFF/WOFF2) e
149
152
  | `iconClassName` | `string` | `icon` | Nom de la classe CSS de base |
150
153
  | `fontPath` | `string` | `@/iconfonts/` | Chemin relatif vers la font dans le CSS |
151
154
  | `iconDisplay` | `string` | `block` | Valeur de `display` du placeholder `%icon-base-styles` (`inline-block` pour retrouver le comportement des anciens thèmes Gulp) |
155
+ | `fontDisplay` | `string` | `block` | Valeur de `font-display` de la font d'icônes (`swap` pour l'audit Lighthouse « Le texte reste visible pendant le chargement des polices ») |
152
156
 
153
157
  ### `VitePluginSvgstore(options)`
154
158
 
@@ -1 +1 @@
1
- {"version":3,"file":"create-config.d.ts","sourceRoot":"","sources":["../src/create-config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAwBxD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,sCAgItE"}
1
+ {"version":3,"file":"create-config.d.ts","sourceRoot":"","sources":["../src/create-config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,YAAY,CAAC;AA4DxD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,sCAuItE"}
@@ -1,4 +1,5 @@
1
- import { resolve, dirname } from 'path';
1
+ import { copyFileSync, mkdirSync } from 'fs';
2
+ import { resolve, dirname, join, relative } from 'path';
2
3
  import { globSync } from 'glob';
3
4
  import { defineConfig } from 'vite';
4
5
  import VitePluginIconfont from './plugins/iconfont/VitePluginIconfont.js';
@@ -12,11 +13,49 @@ function getFiles(entries, ignore) {
12
13
  files.forEach((file) => {
13
14
  const nameMatch = file.match(/([^\/]+)\.(js|scss|css|ts|png|jpeg|jpg|gif|svg|webp|woff2|woff)$/);
14
15
  if (nameMatch && nameMatch[0]) {
15
- input[nameMatch[0]] = resolve(cwd, file);
16
+ // Les images sont indexées par leur chemin : deux images homonymes
17
+ // dans des dossiers différents s'écraseraient sinon. Les scripts et
18
+ // feuilles de style gardent leur nom de fichier, qui détermine celui
19
+ // du fichier de sortie.
20
+ const key = /\.(png|jpeg|jpg|gif|svg|webp)$/.test(file) ? relative(cwd, file) : nameMatch[0];
21
+ input[key] = resolve(cwd, file);
16
22
  }
17
23
  });
18
24
  return input;
19
25
  }
26
+ /**
27
+ * Rollup n'émet qu'une fois les assets au contenu identique : seule la
28
+ * première image d'un groupe de doublons arrive dans `dist`. Les projets qui
29
+ * construisent les chemins d'images à la volée, sans passer par le manifest,
30
+ * ont pourtant besoin de chaque image sous son propre chemin. Ce plugin recopie
31
+ * le fichier émis sous chacun des autres noms d'origine.
32
+ */
33
+ function duplicateImages() {
34
+ let outDir = '';
35
+ return {
36
+ name: 'assets-toolkit:duplicate-images',
37
+ apply: 'build',
38
+ configResolved(config) {
39
+ outDir = resolve(config.root, config.build.outDir);
40
+ },
41
+ writeBundle(_options, bundle) {
42
+ for (const output of Object.values(bundle)) {
43
+ if (output.type !== 'asset')
44
+ continue;
45
+ const emitted = join(outDir, output.fileName);
46
+ for (const original of output.originalFileNames ?? []) {
47
+ if (!original.includes('src/images/'))
48
+ continue;
49
+ const target = join(outDir, 'images', original.split('src/images/').pop() || '');
50
+ if (target === emitted)
51
+ continue;
52
+ mkdirSync(dirname(target), { recursive: true });
53
+ copyFileSync(emitted, target);
54
+ }
55
+ }
56
+ },
57
+ };
58
+ }
20
59
  export async function createViteConfig(options) {
21
60
  const cwd = process.cwd();
22
61
  const entries = options.entries ?? [
@@ -63,6 +102,8 @@ export async function createViteConfig(options) {
63
102
  const svgstoreOpts = typeof options.svgstore === 'object' ? options.svgstore : {};
64
103
  plugins.push(VitePluginSvgstore(svgstoreOpts));
65
104
  }
105
+ // Images au contenu identique
106
+ plugins.push(duplicateImages());
66
107
  // Plugins supplémentaires
67
108
  if (options.plugins) {
68
109
  plugins.push(...options.plugins);
@@ -113,11 +154,15 @@ export async function createViteConfig(options) {
113
154
  : '';
114
155
  if (originalPath && originalPath.includes('src/images/')) {
115
156
  const relativePath = originalPath.split('src/images/').pop() || '';
116
- const destPath = dirname(relativePath);
117
157
  if (assetInfo.names[0].includes('sprite')) {
118
158
  return 'images/[name]-[hash].[ext]';
119
159
  }
120
- return `images/${destPath}/[name].[ext]`;
160
+ // Chemin d'origine complet : `names` et
161
+ // `originalFileNames` ne sont pas forcément dans
162
+ // le même ordre quand Rollup fusionne des
163
+ // doublons, `[name]` pourrait venir d'une autre
164
+ // image que le dossier.
165
+ return `images/${relativePath}`;
121
166
  }
122
167
  if (assetInfo.names[0].includes('sprite')) {
123
168
  return 'images/[name]-[hash].[ext]';
@@ -1 +1 @@
1
- {"version":3,"file":"create-config.js","sourceRoot":"","sources":["../src/create-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-config.js","sourceRoot":"","sources":["../src/create-config.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ interface BuildFontOptions {
5
5
  iconClassName?: string;
6
6
  fontPath?: string;
7
7
  iconDisplay?: string;
8
+ fontDisplay?: string;
8
9
  [key: string]: any;
9
10
  }
10
11
  interface BuildConfig {
@@ -1 +1 @@
1
- {"version":3,"file":"BuildFont.d.ts","sourceRoot":"","sources":["../../../src/plugins/iconfont/BuildFont.ts"],"names":[],"mappings":"AAgBA,UAAU,gBAAgB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,UAAU,WAAW;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAWD,qBAAa,SAAS;IAClB,OAAO,CAAC,OAAO,CAAmB;gBAEtB,OAAO,EAAE,gBAAgB;IAI/B,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAqEnD"}
1
+ {"version":3,"file":"BuildFont.d.ts","sourceRoot":"","sources":["../../../src/plugins/iconfont/BuildFont.ts"],"names":[],"mappings":"AAgBA,UAAU,gBAAgB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,UAAU,WAAW;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAWD,qBAAa,SAAS;IAClB,OAAO,CAAC,OAAO,CAAmB;gBAEtB,OAAO,EAAE,gBAAgB;IAI/B,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAsEnD"}
@@ -49,7 +49,8 @@ export class BuildFont {
49
49
  fontName: this.options.fontName,
50
50
  fontPath: this.options.fontPath ?? '@/iconfonts/',
51
51
  className: this.options.iconClassName ?? 'icon',
52
- cacheToken: processConfig.cssCacheToken
52
+ cacheToken: processConfig.cssCacheToken,
53
+ fontDisplay: this.options.fontDisplay ?? 'block',
53
54
  });
54
55
  const cssVars = env.render('iconfonts-vars.njk', {
55
56
  glyphs: glyphsData,
@@ -1 +1 @@
1
- {"version":3,"file":"BuildFont.js","sourceRoot":"","sources":["../../../src/plugins/iconfont/BuildFont.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BuildFont.js","sourceRoot":"","sources":["../../../src/plugins/iconfont/BuildFont.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  url('{{ fontPath ~ fontName }}.woff{% if cacheToken %}?v={{ cacheToken }}&{% else %}?{% endif %}no-inline') format('woff');
6
6
  font-weight: normal;
7
7
  font-style: normal;
8
- font-display: block;
8
+ font-display: {{ fontDisplay }};
9
9
  }
10
10
 
11
11
  {%- for glyph in glyphs %}
package/dist/types.d.ts CHANGED
@@ -18,6 +18,8 @@ export interface IconfontOptions {
18
18
  fontPath?: string;
19
19
  /** Valeur de `display` du placeholder `%icon-base-styles` (défaut : `block`) */
20
20
  iconDisplay?: string;
21
+ /** Valeur de `font-display` de la font d'icônes (défaut : `block`) */
22
+ fontDisplay?: string;
21
23
  }
22
24
  export interface SvgstoreOptions {
23
25
  /** Dossier source des SVG du sprite */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,WAAW;IACxB,0DAA0D;IAC1D,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,aAAa,CAAC;KACzB,CAAC;CACL;AAED,MAAM,WAAW,eAAe;IAC5B,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,8CAA8C;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC5B,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,kCAAkC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACpC,oFAAoF;IACpF,IAAI,EAAE,MAAM,CAAC;IAEb,uGAAuG;IACvG,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,yDAAyD;IACzD,QAAQ,CAAC,EAAE,eAAe,GAAG,KAAK,CAAC;IAEnC,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,eAAe,GAAG,KAAK,CAAC;IAEnC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,8GAA8G;IAC9G,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAE9B,wDAAwD;IACxD,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAElD,mCAAmC;IACnC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,WAAW;IACxB,0DAA0D;IAC1D,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,aAAa,CAAC;KACzB,CAAC;CACL;AAED,MAAM,WAAW,eAAe;IAC5B,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,8CAA8C;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC5B,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,kCAAkC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACpC,oFAAoF;IACpF,IAAI,EAAE,MAAM,CAAC;IAEb,uGAAuG;IACvG,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,yDAAyD;IACzD,QAAQ,CAAC,EAAE,eAAe,GAAG,KAAK,CAAC;IAEnC,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,eAAe,GAAG,KAAK,CAAC;IAEnC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,8GAA8G;IAC9G,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAE9B,wDAAwD;IACxD,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAElD,mCAAmC;IACnC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;CACnB"}
package/package.json CHANGED
@@ -1,55 +1,56 @@
1
1
  {
2
- "name": "@absolu/assets-toolkit",
3
- "version": "1.3.0",
4
- "description": "Toolkit Vite pour les pipelines d'assets front-end : factory de configuration, plugins iconfont et svgstore",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
8
- "exports": {
9
- ".": {
10
- "import": "./dist/index.js",
11
- "types": "./dist/index.d.ts"
12
- }
13
- },
14
- "bin": {
15
- "assets-toolkit": "./bin/cli.js"
16
- },
17
- "files": [
18
- "bin",
19
- "dist"
20
- ],
21
- "dependencies": {
22
- "chalk": "^5.6.2",
23
- "fs-extra": "^11.2.0",
24
- "glob": "^10.4.5",
25
- "nunjucks": "^3.2.4",
26
- "sass": "^1.0.0",
27
- "sharp": "^0.33.5",
28
- "svg2ttf": "^6.0.3",
29
- "svgicons2svgfont": "^13.0.0",
30
- "svgo": "^4.0.1",
31
- "svgstore": "^3.0.1",
32
- "ttf2woff": "^3.0.0",
33
- "ttf2woff2": "^7.0.0",
34
- "vite-plugin-image-optimizer": "^1.1.9",
35
- "vite-plugin-live-reload": "^3.0.0"
36
- },
37
- "peerDependencies": {
38
- "vite": ">=5.0.0"
39
- },
40
- "devDependencies": {
41
- "@types/fs-extra": "^11.0.4",
42
- "@types/node": "^20.11.0",
43
- "@types/nunjucks": "^3.2.6",
44
- "@types/svg2ttf": "^5.0.3",
45
- "@types/ttf2woff": "^2.0.4",
46
- "typescript": "^5.3.3"
47
- },
48
- "engines": {
49
- "node": ">=22"
50
- },
51
- "license": "MIT",
52
- "scripts": {
53
- "build": "tsc && cp -r src/plugins/iconfont/templates dist/plugins/iconfont/"
54
- }
55
- }
2
+ "name": "@absolu/assets-toolkit",
3
+ "version": "1.4.0",
4
+ "description": "Toolkit Vite pour les pipelines d'assets front-end : factory de configuration, plugins iconfont et svgstore",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "types": "./dist/index.d.ts"
12
+ }
13
+ },
14
+ "bin": {
15
+ "assets-toolkit": "./bin/cli.js"
16
+ },
17
+ "files": [
18
+ "bin",
19
+ "dist"
20
+ ],
21
+ "scripts": {
22
+ "build": "tsc && cp -r src/plugins/iconfont/templates dist/plugins/iconfont/",
23
+ "prepublishOnly": "pnpm run build"
24
+ },
25
+ "dependencies": {
26
+ "chalk": "^5.6.2",
27
+ "fs-extra": "^11.2.0",
28
+ "glob": "^10.4.5",
29
+ "nunjucks": "^3.2.4",
30
+ "sass": "^1.0.0",
31
+ "sharp": "^0.33.5",
32
+ "svg2ttf": "^6.0.3",
33
+ "svgicons2svgfont": "^13.0.0",
34
+ "svgo": "^4.0.1",
35
+ "svgstore": "^3.0.1",
36
+ "ttf2woff": "^3.0.0",
37
+ "ttf2woff2": "^7.0.0",
38
+ "vite-plugin-image-optimizer": "^1.1.9",
39
+ "vite-plugin-live-reload": "^3.0.0"
40
+ },
41
+ "peerDependencies": {
42
+ "vite": ">=5.0.0"
43
+ },
44
+ "devDependencies": {
45
+ "@types/fs-extra": "^11.0.4",
46
+ "@types/node": "^20.11.0",
47
+ "@types/nunjucks": "^3.2.6",
48
+ "@types/svg2ttf": "^5.0.3",
49
+ "@types/ttf2woff": "^2.0.4",
50
+ "typescript": "^5.3.3"
51
+ },
52
+ "engines": {
53
+ "node": ">=22"
54
+ },
55
+ "license": "MIT"
56
+ }