@videinfra/static-website-builder 2.0.2 → 2.0.4
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/.prettierrc +11 -11
- package/CHANGELOG.md +214 -210
- package/README.md +102 -102
- package/bin/builder.js +40 -40
- package/eslint.config.js +39 -39
- package/gulpfile.js +63 -63
- package/init/default/config/config.js +44 -44
- package/init/default/src/html/data/global.js +9 -9
- package/init/default/src/javascripts/_entries.js +14 -14
- package/init/index.js +63 -63
- package/init/test/.env +6 -6
- package/init/test/.env.local +3 -2
- package/init/test/config/config.js +71 -67
- package/init/test/src/html/404.twig +12 -12
- package/init/test/src/html/data/global.js +10 -10
- package/init/test/src/html/env.twig +21 -21
- package/init/test/src/html/layouts/base.twig +1 -1
- package/init/test/src/html/other.twig +9 -9
- package/init/test/src/html/preposition.twig +4 -4
- package/init/test/src/javascripts/_entries-alt.js +10 -10
- package/init/test/src/javascripts/_entries.js +19 -19
- package/init/test/src/javascripts/common.js +13 -13
- package/init/test/src/javascripts/main.js +8 -8
- package/init/test/src/javascripts/something.ts +9 -9
- package/init/test/src/stylesheets/autoprefixer-test.scss +3 -3
- package/init/test/src/stylesheets/env-test.scss +28 -28
- package/init/test/src/stylesheets/ignore-test.scss +4 -4
- package/init/test/src/stylesheets/nested-calc-test.scss +3 -3
- package/init/test/src/stylesheets/sub-folder/import-test.scss +2 -2
- package/lib/camelize-file-name.js +21 -21
- package/lib/generate-gulp-tasks.js +85 -85
- package/lib/get-config.js +203 -204
- package/lib/get-file-names.js +23 -23
- package/lib/get-path.js +102 -102
- package/lib/globs-helper.js +243 -243
- package/lib/gulp/dynamic-task.js +8 -8
- package/lib/gulp/resolve-dynamic-task.js +11 -11
- package/lib/gulp/task-before-dest.js +8 -8
- package/lib/gulp/task-end.js +10 -10
- package/lib/gulp/task-start.js +12 -12
- package/lib/gulp/task-watch.js +66 -66
- package/lib/init/copy-folder.js +50 -50
- package/lib/init/folder-exists.js +10 -10
- package/lib/init/get-folder-list.js +16 -16
- package/lib/init/merge-package.js +17 -17
- package/lib/init/read-package.js +17 -17
- package/lib/log-error.js +15 -15
- package/lib/merge.js +27 -27
- package/lib/run-preprocess.js +32 -32
- package/lib/task-order.js +19 -19
- package/package.json +68 -68
- package/plugins/example/preprocess-config.js +17 -17
- package/plugins/example/task.js +55 -55
- package/plugins/example.js +38 -38
- package/plugins/sass-engine/preprocess-config.js +59 -59
- package/plugins/sass.js +41 -41
- package/plugins/twig/lodash-filters/filters.js +91 -91
- package/plugins/twig/lodash-filters.js +14 -14
- package/plugins/twig/symfony-filters/filters.js +102 -102
- package/plugins/twig/symfony-filters/preposition_nbsp.js +77 -77
- package/plugins/twig/symfony-filters.js +14 -14
- package/plugins/twig/symfony-functions/functions.js +31 -31
- package/plugins/twig/symfony-functions.js +14 -14
- package/plugins/twig-engine/preprocess-config.js +53 -53
- package/plugins/twig.js +74 -74
- package/tasks/browser-sync/config.js +39 -39
- package/tasks/browser-sync/preprocess-config.js +32 -32
- package/tasks/browser-sync/task.js +9 -9
- package/tasks/clean/config.js +20 -20
- package/tasks/clean/preprocess-config.js +19 -19
- package/tasks/clean/task.js +7 -7
- package/tasks/data/config.js +34 -34
- package/tasks/data/data-loader-js.js +14 -14
- package/tasks/data/data-loader-json.js +5 -5
- package/tasks/data/get-data.js +96 -96
- package/tasks/env/config.js +26 -23
- package/tasks/env/get-env.js +113 -81
- package/tasks/fonts/config.js +24 -24
- package/tasks/fonts/task.js +47 -47
- package/tasks/global/config.js +7 -7
- package/tasks/html/config.js +42 -42
- package/tasks/html/task.js +91 -91
- package/tasks/icons/config.js +47 -47
- package/tasks/icons/preprocess-config.js +60 -60
- package/tasks/icons/task.js +56 -56
- package/tasks/images/config.js +27 -27
- package/tasks/images/task.js +46 -46
- package/tasks/javascripts/config.js +69 -69
- package/tasks/javascripts/preprocess-config.js +109 -109
- package/tasks/javascripts/task.js +86 -86
- package/tasks/sitemap/config.js +48 -48
- package/tasks/sitemap/preprocess-config.js +18 -18
- package/tasks/sitemap/task.js +69 -69
- package/tasks/sizereport/config.js +23 -23
- package/tasks/sizereport/task.js +16 -16
- package/tasks/static/config.js +27 -27
- package/tasks/static/task.js +46 -46
- package/tasks/stylesheets/config.js +85 -85
- package/tasks/stylesheets/preprocess-config.js +41 -41
- package/tasks/stylesheets/task.js +73 -73
- package/tests/build/build.test.js +153 -153
- package/tests/camelize-file-name.test.js +11 -11
- package/tests/generate-gulp-tasks.test.js +78 -78
- package/tests/glob-helper.test.js +99 -99
- package/tests/merge.test.js +10 -10
- package/tests/preposition_nbsp.test.js +50 -50
- package/tests/run-preprocess.test.js +90 -90
- package/tests/sass-stringify.test.js +24 -24
- package/tests/sitemap.test.js +12 -12
- package/vendor/gulp-rolldown/index.js +151 -151
- package/vendor/gulp-rolldown/plugin-raw.js +17 -17
- package/vendor/gulp-rolldown/plugin-virtual-entry.js +30 -30
- package/vendor/gulp-sass/CHANGELOG.md +168 -168
- package/vendor/gulp-sass/LICENSE +20 -20
- package/vendor/gulp-sass/README.md +187 -187
- package/vendor/gulp-sass/index.js +208 -208
- package/vendor/gulp-sass/package.json +61 -61
- package/vendor/gulp-sass/sass-stringify.js +32 -32
- package/vendor/gulp-twig/LICENSE +20 -20
- package/vendor/gulp-twig/README.md +167 -167
- package/vendor/gulp-twig/index.js +138 -138
- package/vendor/gulp-twig/package.json +44 -44
package/lib/get-path.js
CHANGED
|
@@ -1,102 +1,102 @@
|
|
|
1
|
-
import path from 'path';
|
|
2
|
-
import { fileURLToPath } from 'node:url';
|
|
3
|
-
import nanomemoize from 'nano-memoize';
|
|
4
|
-
import { getConfig } from './get-config.js';
|
|
5
|
-
|
|
6
|
-
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Returns builder and project specific path configurations merged
|
|
10
|
-
*
|
|
11
|
-
* @returns {object} Configuration
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
export const getPathConfig = nanomemoize.nanomemoize(function () {
|
|
15
|
-
return getConfig().paths;
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Returns a path relative to the project folder
|
|
20
|
-
*
|
|
21
|
-
* @param {...any} paths List of paths
|
|
22
|
-
* @returns {string} Path
|
|
23
|
-
*/
|
|
24
|
-
export function getProjectPath(...paths) {
|
|
25
|
-
return path.resolve(process.env.INIT_CWD || process.cwd(), ...paths);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Returns a path relative to the builder folder
|
|
30
|
-
*
|
|
31
|
-
* @param {...any} paths List of paths
|
|
32
|
-
* @returns {string} Path
|
|
33
|
-
*/
|
|
34
|
-
export function getBuilderPath(...paths) {
|
|
35
|
-
return path.resolve(__dirname, '../', ...paths);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Returns task source path or paths
|
|
40
|
-
*
|
|
41
|
-
* @param {string} name Task name
|
|
42
|
-
* @param {...string} paths Additional sub paths
|
|
43
|
-
* @returns {string|array} Task source path or list of paths
|
|
44
|
-
*/
|
|
45
|
-
export function getSourcePath(name, ...paths) {
|
|
46
|
-
const pathConfig = getPathConfig();
|
|
47
|
-
const path = pathConfig[name].src;
|
|
48
|
-
|
|
49
|
-
if (typeof path === 'string') {
|
|
50
|
-
return getProjectPath(pathConfig.src, path, ...paths);
|
|
51
|
-
} else if (Array.isArray(path)) {
|
|
52
|
-
return path.map((path) => getProjectPath(pathConfig.src, path, ...paths));
|
|
53
|
-
} else {
|
|
54
|
-
return null;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* Returns task source paths
|
|
60
|
-
*
|
|
61
|
-
* @param {string} name Task name
|
|
62
|
-
* @param {...string} paths Additional sub paths
|
|
63
|
-
* @returns {array} Task source paths
|
|
64
|
-
*/
|
|
65
|
-
export function getSourcePaths(name, ...paths) {
|
|
66
|
-
const path = getSourcePath(name, ...paths);
|
|
67
|
-
|
|
68
|
-
if (typeof path === 'string') {
|
|
69
|
-
return [path];
|
|
70
|
-
} else {
|
|
71
|
-
return path;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Returns task destination path
|
|
77
|
-
*
|
|
78
|
-
* @param {string} [name] Task name
|
|
79
|
-
* @param {...string} paths Additional sub paths
|
|
80
|
-
* @returns {string} Task destination path
|
|
81
|
-
*/
|
|
82
|
-
export function getDestPath(name, ...paths) {
|
|
83
|
-
const pathConfig = getPathConfig();
|
|
84
|
-
|
|
85
|
-
if (name) {
|
|
86
|
-
return getProjectPath(pathConfig.dest, pathConfig[name].dest || '', ...paths);
|
|
87
|
-
} else {
|
|
88
|
-
return getProjectPath(pathConfig.dest);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* Returns public path
|
|
94
|
-
*
|
|
95
|
-
* @param {string} [name] Task name
|
|
96
|
-
* @returns {string} Task public path
|
|
97
|
-
*/
|
|
98
|
-
export function getPublicPath(name) {
|
|
99
|
-
const destFullPath = getDestPath(name);
|
|
100
|
-
const destPath = getDestPath();
|
|
101
|
-
return destFullPath.replace(destPath, '') + '/';
|
|
102
|
-
}
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import { fileURLToPath } from 'node:url';
|
|
3
|
+
import nanomemoize from 'nano-memoize';
|
|
4
|
+
import { getConfig } from './get-config.js';
|
|
5
|
+
|
|
6
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Returns builder and project specific path configurations merged
|
|
10
|
+
*
|
|
11
|
+
* @returns {object} Configuration
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
export const getPathConfig = nanomemoize.nanomemoize(function () {
|
|
15
|
+
return getConfig().paths;
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Returns a path relative to the project folder
|
|
20
|
+
*
|
|
21
|
+
* @param {...any} paths List of paths
|
|
22
|
+
* @returns {string} Path
|
|
23
|
+
*/
|
|
24
|
+
export function getProjectPath(...paths) {
|
|
25
|
+
return path.resolve(process.env.INIT_CWD || process.cwd(), ...paths);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Returns a path relative to the builder folder
|
|
30
|
+
*
|
|
31
|
+
* @param {...any} paths List of paths
|
|
32
|
+
* @returns {string} Path
|
|
33
|
+
*/
|
|
34
|
+
export function getBuilderPath(...paths) {
|
|
35
|
+
return path.resolve(__dirname, '../', ...paths);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Returns task source path or paths
|
|
40
|
+
*
|
|
41
|
+
* @param {string} name Task name
|
|
42
|
+
* @param {...string} paths Additional sub paths
|
|
43
|
+
* @returns {string|array} Task source path or list of paths
|
|
44
|
+
*/
|
|
45
|
+
export function getSourcePath(name, ...paths) {
|
|
46
|
+
const pathConfig = getPathConfig();
|
|
47
|
+
const path = pathConfig[name].src;
|
|
48
|
+
|
|
49
|
+
if (typeof path === 'string') {
|
|
50
|
+
return getProjectPath(pathConfig.src, path, ...paths);
|
|
51
|
+
} else if (Array.isArray(path)) {
|
|
52
|
+
return path.map((path) => getProjectPath(pathConfig.src, path, ...paths));
|
|
53
|
+
} else {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Returns task source paths
|
|
60
|
+
*
|
|
61
|
+
* @param {string} name Task name
|
|
62
|
+
* @param {...string} paths Additional sub paths
|
|
63
|
+
* @returns {array} Task source paths
|
|
64
|
+
*/
|
|
65
|
+
export function getSourcePaths(name, ...paths) {
|
|
66
|
+
const path = getSourcePath(name, ...paths);
|
|
67
|
+
|
|
68
|
+
if (typeof path === 'string') {
|
|
69
|
+
return [path];
|
|
70
|
+
} else {
|
|
71
|
+
return path;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Returns task destination path
|
|
77
|
+
*
|
|
78
|
+
* @param {string} [name] Task name
|
|
79
|
+
* @param {...string} paths Additional sub paths
|
|
80
|
+
* @returns {string} Task destination path
|
|
81
|
+
*/
|
|
82
|
+
export function getDestPath(name, ...paths) {
|
|
83
|
+
const pathConfig = getPathConfig();
|
|
84
|
+
|
|
85
|
+
if (name) {
|
|
86
|
+
return getProjectPath(pathConfig.dest, pathConfig[name].dest || '', ...paths);
|
|
87
|
+
} else {
|
|
88
|
+
return getProjectPath(pathConfig.dest);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Returns public path
|
|
94
|
+
*
|
|
95
|
+
* @param {string} [name] Task name
|
|
96
|
+
* @returns {string} Task public path
|
|
97
|
+
*/
|
|
98
|
+
export function getPublicPath(name) {
|
|
99
|
+
const destFullPath = getDestPath(name);
|
|
100
|
+
const destPath = getDestPath();
|
|
101
|
+
return destFullPath.replace(destPath, '') + '/';
|
|
102
|
+
}
|