UNPKG

2.8 kBJavaScriptView Raw
1/* eslint-disable max-len */
2const fs = require('fs');
3const PACKAGE_NAME = require('../package.json').name;
4
5module.exports = {
6 PACKAGE_NAME,
7 NAMESPACE: fs.realpathSync(__dirname),
8 EXTRACTABLE_MODULE_ISSUER_PATTERN: /\.(css|sass|scss|less|styl|html)$/i,
9 SPRITE_PLACEHOLDER_PATTERN: /\{\{sprite-filename\|([^}}]*)\}\};?/gi,
10
11 /**
12 * Overridable loader options
13 * @typedef {Object} SVGSpriteLoaderConfig
14 */
15 loader: {
16 /**
17 * How `<symbol id>` should be named.
18 * Full list of supported patterns see at [loader-utils#interpolatename docs](https://github.com/webpack/loader-utils#interpolatename).
19 * @type {string}
20 */
21 symbolId: '[name]',
22
23 /**
24 * Regular expression passed to interpolateName.
25 * Supports the interpolateName [N] pattern inserting the N-th match.
26 * @type {string}
27 */
28 symbolRegExp: '',
29
30 /**
31 * Path to Node.js module which generates client runtime.
32 * @type {string}
33 */
34 runtimeGenerator: require.resolve('./runtime-generator'),
35
36 /**
37 * Arbitrary data passed to runtime generator.
38 * @type {*}
39 */
40 runtimeOptions: undefined,
41
42 /**
43 * Should runtime be compatible with earlier v0.* loader versions.
44 * Will be removed in 3 version.
45 * @type {boolean}
46 * @deprecated
47 */
48 runtimeCompat: false,
49
50 /**
51 * Path to sprite module which will be compiled and executed at runtime.
52 * By default depends on 'target' webpack config option:
53 * - `svg-sprite-loader/runtime/browser-sprite.build` for 'web' target.
54 * - `svg-sprite-loader/runtime/sprite.build` for all other targets.
55 * @type {string}
56 * @autoconfigured
57 */
58 spriteModule: require.resolve('../runtime/browser-sprite.build'),
59
60 /**
61 * Path to symbol module.
62 * By default depends on 'target' webpack config option:
63 * - `svg-baker-runtime/browser-symbol` for 'web' target.
64 * - `svg-baker-runtime/symbol` for all other targets.
65 * @type {string}
66 * @autoconfigured
67 */
68 symbolModule: require.resolve('svg-baker-runtime/browser-symbol'),
69
70 /**
71 * Generated export format:
72 * - when `true` loader will produce `export default ...`.
73 * - when `false` the result is `module.exports = ...`.
74 * By default depends on used webpack version. `true` for Webpack >= 2, `false` otherwise.
75 * @type {boolean}
76 * @autoconfigured
77 */
78 esModule: true,
79
80 /**
81 * Turns loader in extract mode.
82 * Enables automatically if SVG image was imported from css/scss/sass/less/styl/html.
83 * @type {boolean}
84 * @autoconfigured
85 */
86 extract: false,
87
88 /**
89 * Filename for generated sprite. `[chunkname]` placeholder can be used.
90 * @type {string}
91 */
92 spriteFilename: 'sprite.svg'
93 }
94};