diff --git a/dist/css/icon.gl.css b/dist/css/icon.gl.css
new file mode 100644
index 00000000..817d6307
--- /dev/null
+++ b/dist/css/icon.gl.css
@@ -0,0 +1,100 @@
+/**
+* icon.gl
+*
+* @description Icon Library
+* @author Scape Agency (https://www.scape.agency)
+* @version v0.0.1
+* @copyright 2020-2023 Scape Agency (https://www.scape.agency)
+* @website https://www.icon.gl/
+* @repository https://github.com/scape-agency/icon.gl/
+* @license Apache 2.0 License (https://github.com/scape-agency/icon.gl/blob/main/LICENSE)
+*/
+/**
+TABLE OF CONTENTS
+===============================================================================
+1.
+2.
+3.
+*/
+.igl_1x {
+ font-size: 1em;
+}
+
+.igl_2x {
+ font-size: 2em;
+}
+
+.igl_3x {
+ font-size: 3em;
+}
+
+.igl_4x {
+ font-size: 4em;
+}
+
+.igl_5x {
+ font-size: 5em;
+}
+
+.igl_6x {
+ font-size: 6em;
+}
+
+.igl_7x {
+ font-size: 7em;
+}
+
+.igl_8x {
+ font-size: 8em;
+}
+
+.igl_9x {
+ font-size: 9em;
+}
+
+.igl_10x {
+ font-size: 10em;
+}
+
+.igl_icon-interactive:hover {
+ color: #0000cc;
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
+ transform: scale(1.1);
+ transition: all 0.3s ease-in-out;
+}
+.igl_icon-interactive:focus {
+ outline: 2px solid #6666ff;
+}
+.igl_icon-interactive:active {
+ color: #0000e6;
+}
+.igl_icon-interactive:disabled {
+ color: gray;
+ cursor: not-allowed;
+}
+
+.igl_rotate_90 {
+ transform: rotate(90deg);
+}
+
+.igl_rotate_180 {
+ transform: rotate(180deg);
+}
+
+.igl_rotate_270 {
+ transform: rotate(270deg);
+}
+
+.igl_flip-horizontal {
+ transform: scale(-1, 1);
+}
+
+.igl_flip-vertical {
+ transform: scale(1, -1);
+}
+
+.igl_flip-both,
+.igl_flip-horizontal.igl_flip-vertical {
+ transform: scale(1, -1);
+}
+/*# sourceMappingURL=to.css.map */
\ No newline at end of file
diff --git a/dist/css/icon.gl.css.map b/dist/css/icon.gl.css.map
new file mode 100644
index 00000000..5b695ed9
--- /dev/null
+++ b/dist/css/icon.gl.css.map
@@ -0,0 +1 @@
+{"version":3,"sources":["%3Cinput%20css%20-WZD-K%3E"],"names":[],"mappings":"AAAA;;;;;;;;;;CAUC;AACD;;;;;;CAMC;AACD;EACE,cAAc;AAChB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,cAAc;EACd,wCAAwC;EACxC,qBAAqB;EACrB,gCAAgC;AAClC;AACA;EACE,0BAA0B;AAC5B;AACA;EACE,cAAc;AAChB;AACA;EACE,WAAW;EACX,mBAAmB;AACrB;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;;EAEE,uBAAuB;AACzB","file":"to.css","sourcesContent":["/**\n* icon.gl\n*\n* @description Icon Library\n* @author Scape Agency (https://www.scape.agency)\n* @version v0.0.1\n* @copyright 2020-2023 Scape Agency (https://www.scape.agency)\n* @website https://www.icon.gl/\n* @repository https://github.com/scape-agency/icon.gl/\n* @license Apache 2.0 License (https://github.com/scape-agency/icon.gl/blob/main/LICENSE)\n*/\n/**\nTABLE OF CONTENTS\n===============================================================================\n1.\n2.\n3. \n*/\n.igl_1x {\n font-size: 1em;\n}\n\n.igl_2x {\n font-size: 2em;\n}\n\n.igl_3x {\n font-size: 3em;\n}\n\n.igl_4x {\n font-size: 4em;\n}\n\n.igl_5x {\n font-size: 5em;\n}\n\n.igl_6x {\n font-size: 6em;\n}\n\n.igl_7x {\n font-size: 7em;\n}\n\n.igl_8x {\n font-size: 8em;\n}\n\n.igl_9x {\n font-size: 9em;\n}\n\n.igl_10x {\n font-size: 10em;\n}\n\n.igl_icon-interactive:hover {\n color: #0000cc;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n transform: scale(1.1);\n transition: all 0.3s ease-in-out;\n}\n.igl_icon-interactive:focus {\n outline: 2px solid #6666ff;\n}\n.igl_icon-interactive:active {\n color: #0000e6;\n}\n.igl_icon-interactive:disabled {\n color: gray;\n cursor: not-allowed;\n}\n\n.igl_rotate_90 {\n transform: rotate(90deg);\n}\n\n.igl_rotate_180 {\n transform: rotate(180deg);\n}\n\n.igl_rotate_270 {\n transform: rotate(270deg);\n}\n\n.igl_flip-horizontal {\n transform: scale(-1, 1);\n}\n\n.igl_flip-vertical {\n transform: scale(1, -1);\n}\n\n.igl_flip-both,\n.igl_flip-horizontal.igl_flip-vertical {\n transform: scale(1, -1);\n}"]}
\ No newline at end of file
diff --git a/dist/css/icon.gl.min.css b/dist/css/icon.gl.min.css
new file mode 100644
index 00000000..1f83198c
--- /dev/null
+++ b/dist/css/icon.gl.min.css
@@ -0,0 +1,2 @@
+.igl_1x{font-size:1em}.igl_2x{font-size:2em}.igl_3x{font-size:3em}.igl_4x{font-size:4em}.igl_5x{font-size:5em}.igl_6x{font-size:6em}.igl_7x{font-size:7em}.igl_8x{font-size:8em}.igl_9x{font-size:9em}.igl_10x{font-size:10em}.igl_icon-interactive:hover{box-shadow:0 2px 4px rgba(0,0,0,.2);color:#00c;transform:scale(1.1);transition:all .3s ease-in-out}.igl_icon-interactive:focus{outline:2px solid #66f}.igl_icon-interactive:active{color:#0000e6}.igl_icon-interactive:disabled{color:gray;cursor:not-allowed}.igl_rotate_90{transform:rotate(90deg)}.igl_rotate_180{transform:rotate(180deg)}.igl_rotate_270{transform:rotate(270deg)}.igl_flip-horizontal{transform:scaleX(-1)}.igl_flip-both,.igl_flip-horizontal.igl_flip-vertical,.igl_flip-vertical{transform:scaleY(-1)}
+/*# sourceMappingURL=to.css.map */
\ No newline at end of file
diff --git a/dist/css/icon.gl.min.css.map b/dist/css/icon.gl.min.css.map
new file mode 100644
index 00000000..2d42a4db
--- /dev/null
+++ b/dist/css/icon.gl.min.css.map
@@ -0,0 +1 @@
+{"version":3,"sources":["%3Cinput%20css%20y_KT1h%3E"],"names":[],"mappings":"AAAA,QAAQ,aAAa,CAAC,QAAQ,aAAa,CAAC,QAAQ,aAAa,CAAC,QAAQ,aAAa,CAAC,QAAQ,aAAa,CAAC,QAAQ,aAAa,CAAC,QAAQ,aAAa,CAAC,QAAQ,aAAa,CAAC,QAAQ,aAAa,CAAC,SAAS,cAAc,CAAC,4BAAuC,mCAAmC,CAA9C,UAAU,CAAqC,oBAAoB,CAAC,8BAA8B,CAAC,4BAA4B,sBAAsB,CAAC,6BAA6B,aAAa,CAAC,+BAA+B,UAAU,CAAC,kBAAkB,CAAC,eAAe,uBAAuB,CAAC,gBAAgB,wBAAwB,CAAC,gBAAgB,wBAAwB,CAAC,qBAAqB,oBAAsB,CAA2C,yEAAsD,oBAAsB","file":"to.css","sourcesContent":[".igl_1x{font-size:1em}.igl_2x{font-size:2em}.igl_3x{font-size:3em}.igl_4x{font-size:4em}.igl_5x{font-size:5em}.igl_6x{font-size:6em}.igl_7x{font-size:7em}.igl_8x{font-size:8em}.igl_9x{font-size:9em}.igl_10x{font-size:10em}.igl_icon-interactive:hover{color:#00c;box-shadow:0 2px 4px rgba(0,0,0,.2);transform:scale(1.1);transition:all .3s ease-in-out}.igl_icon-interactive:focus{outline:2px solid #66f}.igl_icon-interactive:active{color:#0000e6}.igl_icon-interactive:disabled{color:gray;cursor:not-allowed}.igl_rotate_90{transform:rotate(90deg)}.igl_rotate_180{transform:rotate(180deg)}.igl_rotate_270{transform:rotate(270deg)}.igl_flip-horizontal{transform:scale(-1, 1)}.igl_flip-vertical{transform:scale(1, -1)}.igl_flip-both,.igl_flip-horizontal.igl_flip-vertical{transform:scale(1, -1)}"]}
\ No newline at end of file
diff --git a/dist/scss/_size.scss b/dist/scss/_size.scss
index fe370a92..0c08923f 100644
--- a/dist/scss/_size.scss
+++ b/dist/scss/_size.scss
@@ -70,92 +70,92 @@ $igl_sizes: (
// .icon-round-medium {border-radius: 100%; display: table-cell; height: 90px; margin: 0 auto; text-align: center; vertical-align: middle; width: 90px;}
-@mixin icon_size_00 {
- @include icon;
- @include box_size_00;
- svg { @include box_size_00; }
- img { @include box_size_00; }
-}
+// @mixin icon_size_00 {
+// @include icon;
+// @include box_size_00;
+// svg { @include box_size_00; }
+// img { @include box_size_00; }
+// }
-@mixin icon_size_01 {
- @include icon;
- @include box_size_01;
- svg { @include box_size_01; }
- img { @include box_size_01; }
-}
+// @mixin icon_size_01 {
+// @include icon;
+// @include box_size_01;
+// svg { @include box_size_01; }
+// img { @include box_size_01; }
+// }
-@mixin icon_size_02 {
- @include icon;
- @include box_size_02;
- svg { @include box_size_02; }
- img { @include box_size_02; }
-}
+// @mixin icon_size_02 {
+// @include icon;
+// @include box_size_02;
+// svg { @include box_size_02; }
+// img { @include box_size_02; }
+// }
-@mixin icon_size_03 {
- @include icon;
- @include box_size_03;
- svg { @include box_size_03; }
- img { @include box_size_03; }
-}
+// @mixin icon_size_03 {
+// @include icon;
+// @include box_size_03;
+// svg { @include box_size_03; }
+// img { @include box_size_03; }
+// }
-@mixin icon_size_04 {
- @include icon;
- @include box_size_04;
- svg { @include box_size_04; }
- img { @include box_size_04; }
-}
+// @mixin icon_size_04 {
+// @include icon;
+// @include box_size_04;
+// svg { @include box_size_04; }
+// img { @include box_size_04; }
+// }
-@mixin icon_size_05 {
- @include icon;
- @include box_size_05;
- svg { @include box_size_05; }
- img { @include box_size_05; }
-}
+// @mixin icon_size_05 {
+// @include icon;
+// @include box_size_05;
+// svg { @include box_size_05; }
+// img { @include box_size_05; }
+// }
-@mixin icon_size_06 {
- @include icon;
- @include box_size_06;
- svg { @include box_size_06; }
- img { @include box_size_06; }
-}
+// @mixin icon_size_06 {
+// @include icon;
+// @include box_size_06;
+// svg { @include box_size_06; }
+// img { @include box_size_06; }
+// }
-@mixin icon_size_07 {
- @include icon;
- @include box_size_07;
- svg { @include box_size_07; }
- img { @include box_size_07; }
-}
+// @mixin icon_size_07 {
+// @include icon;
+// @include box_size_07;
+// svg { @include box_size_07; }
+// img { @include box_size_07; }
+// }
-@mixin icon_size_08 {
- @include icon;
- @include box_size_08;
- svg { @include box_size_08; }
- img { @include box_size_08; }
-}
+// @mixin icon_size_08 {
+// @include icon;
+// @include box_size_08;
+// svg { @include box_size_08; }
+// img { @include box_size_08; }
+// }
-@mixin icon_size_09 {
- @include icon;
- @include box_size_09;
- svg { @include box_size_09; }
- img { @include box_size_09; }
-}
+// @mixin icon_size_09 {
+// @include icon;
+// @include box_size_09;
+// svg { @include box_size_09; }
+// img { @include box_size_09; }
+// }
-@mixin icon_size_10 {
- @include icon;
- @include box_size_10;
- svg { @include box_size_10; }
- img { @include box_size_10; }
-}
+// @mixin icon_size_10 {
+// @include icon;
+// @include box_size_10;
+// svg { @include box_size_10; }
+// img { @include box_size_10; }
+// }
-.icon_size_00 { @include icon_size_00; }
-.icon_size_01 { @include icon_size_01; }
-.icon_size_02 { @include icon_size_02; }
-.icon_size_03 { @include icon_size_03; }
-.icon_size_04 { @include icon_size_04; }
-.icon_size_05 { @include icon_size_05; }
-.icon_size_06 { @include icon_size_06; }
-.icon_size_07 { @include icon_size_07; }
-.icon_size_08 { @include icon_size_08; }
-.icon_size_09 { @include icon_size_09; }
-.icon_size_10 { @include icon_size_10; }
+// .icon_size_00 { @include icon_size_00; }
+// .icon_size_01 { @include icon_size_01; }
+// .icon_size_02 { @include icon_size_02; }
+// .icon_size_03 { @include icon_size_03; }
+// .icon_size_04 { @include icon_size_04; }
+// .icon_size_05 { @include icon_size_05; }
+// .icon_size_06 { @include icon_size_06; }
+// .icon_size_07 { @include icon_size_07; }
+// .icon_size_08 { @include icon_size_08; }
+// .icon_size_09 { @include icon_size_09; }
+// .icon_size_10 { @include icon_size_10; }
diff --git a/dist/ts/icons/admin.ts b/dist/ts/icons/admin.ts
new file mode 100644
index 00000000..f94dafc3
--- /dev/null
+++ b/dist/ts/icons/admin.ts
@@ -0,0 +1,3 @@
+export const icon_admin = ``;
diff --git a/dist/ts/icons/api.ts b/dist/ts/icons/api.ts
new file mode 100644
index 00000000..90699b66
--- /dev/null
+++ b/dist/ts/icons/api.ts
@@ -0,0 +1,3 @@
+export const icon_api = ``;
diff --git a/dist/ts/icons/home.ts b/dist/ts/icons/home.ts
new file mode 100644
index 00000000..1f5b323a
--- /dev/null
+++ b/dist/ts/icons/home.ts
@@ -0,0 +1,5 @@
+export const icon_home = ``;
diff --git a/package-lock.json b/package-lock.json
index 2211daed..eb4ab1b5 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -40,6 +40,7 @@
"html-webpack-plugin": "^5.5.3",
"lodash": "^4.17.21",
"mini-css-extract-plugin": "^2.7.6",
+ "pack.gl": "^0.0.9",
"postcss-loader": "^7.3.3",
"postcss-preset-env": "^9.1.2",
"prettier": "^3.0.3",
@@ -10275,6 +10276,12 @@
"node": ">=6"
}
},
+ "node_modules/pack.gl": {
+ "version": "0.0.9",
+ "resolved": "https://registry.npmjs.org/pack.gl/-/pack.gl-0.0.9.tgz",
+ "integrity": "sha512-yJNca12C2Dla6VO+HmD6hMdc+3us1IoXpNRugleucqZuthUTHdiSo9D6puygWhbuwDhEasGwfMOZc0GKtbZG7Q==",
+ "dev": true
+ },
"node_modules/pako": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
diff --git a/package.json b/package.json
index cef042a4..50f91e46 100644
--- a/package.json
+++ b/package.json
@@ -91,6 +91,7 @@
"html-webpack-plugin": "^5.5.3",
"lodash": "^4.17.21",
"mini-css-extract-plugin": "^2.7.6",
+ "pack.gl": "^0.0.9",
"postcss-loader": "^7.3.3",
"postcss-preset-env": "^9.1.2",
"prettier": "^3.0.3",
diff --git a/script/js/index.js b/script/js/index.js
index d89f4dfa..95b47613 100644
--- a/script/js/index.js
+++ b/script/js/index.js
@@ -1,18 +1,6 @@
import { __awaiter } from "tslib";
import path from 'path';
-import FontGenerator from './class/FontGenerator.js';
-import SvgPackager from "./class/SvgPackager.js";
-import StyleProcessor from "./class/StyleProcessor.js";
-import SvgSpriteGenerator from "./class/SvgSpriteGenerator.js";
-import PackageCreator from './class/PackageCreator.js';
-import VersionWriter from './class/VersionWriter.js';
-import FileCopier from './class/FileCopier.js';
-import FileRenamer from './class/FileRenamer.js';
-import DirectoryCreator from './class/DirectoryCreator.js';
-import DirectoryCopier from './class/DirectoryCopier.js';
-import DirectoryCleaner from './class/DirectoryCleaner.js';
-import TypeScriptCompiler from './class/TypeScriptCompiler.js';
-import JavaScriptMinifier from './class/JavaScriptMinifier.js';
+import { DirectoryCleaner, DirectoryCopier, DirectoryCreator, FileCopier, FileRenamer, FontGenerator, StyleProcessor, SvgPackager, SvgSpriteGenerator, PackageCreator, VersionWriter, TypeScriptCompiler, JavaScriptMinifier } from 'pack.gl';
import { CONFIG } from './config/config.js';
import svgspriteConfig from "./config/svgsprite.config.js";
import packageConfig from "./config/package.config.js";
@@ -23,7 +11,7 @@ const spriteGenerator = new SvgSpriteGenerator(svgspriteConfig);
const tsCompiler = new TypeScriptCompiler(tsConfig);
const jsMinifier = new JavaScriptMinifier(tensorConfig);
const packageCreator = new PackageCreator(packageConfig);
-const svgPackager = new SvgPackager("./config/svgo.config.js");
+const svgPackager = new SvgPackager("./script/ts/config/svgo.config.ts");
const fontGenerator = new FontGenerator();
const styleProcessor = new StyleProcessor();
const versionWriter = new VersionWriter();
@@ -40,11 +28,7 @@ function main() {
console.log('Starting Directory creation...');
yield directoryCreator.createDirectories('.', directories);
try {
- const sourceDirectory = 'path/to/source/svg';
- const outputDirectory = 'path/to/output/svg';
- const tsOutputDirectory = 'path/to/output/ts';
- const jsonOutputDirectory = 'path/to/output/json';
- yield svgPackager.processSvgFiles(sourceDirectory, outputDirectory, tsOutputDirectory, jsonOutputDirectory);
+ yield svgPackager.processSvgFiles(CONFIG.path.svg_input, CONFIG.path.svg_output, CONFIG.path.ts_output_icons, CONFIG.path.json_output);
}
catch (error) {
console.error('Failed to process SVG files:', error);
diff --git a/script/js/index.js.map b/script/js/index.js.map
index bfac143b..590980a7 100644
--- a/script/js/index.js.map
+++ b/script/js/index.js.map
@@ -1 +1 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/script/ts/class/DirectoryCleaner.ts b/script/ts/class/DirectoryCleaner.ts
deleted file mode 100644
index 02580d32..00000000
--- a/script/ts/class/DirectoryCleaner.ts
+++ /dev/null
@@ -1,58 +0,0 @@
-// script/class/class/DirectoryCleaner.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import fs from 'fs';
-import path from 'path';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-class DirectoryCleaner {
-
- /**
- * Recursively deletes all contents of the directory.
- * @param dirPath The path to the directory to clean.
- */
- public cleanDirectory(dirPath: string): void {
- if (fs.existsSync(dirPath)) {
- fs.readdirSync(dirPath).forEach(file => {
- const curPath = path.join(dirPath, file);
-
- if (fs.lstatSync(curPath).isDirectory()) { // Recurse
- this.cleanDirectory(curPath);
- } else { // Delete file
- fs.unlinkSync(curPath);
- }
- });
-
- fs.rmdirSync(dirPath);
- }
- }
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default DirectoryCleaner;
diff --git a/script/ts/class/DirectoryCopier.ts b/script/ts/class/DirectoryCopier.ts
deleted file mode 100644
index 4d1cf39c..00000000
--- a/script/ts/class/DirectoryCopier.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-// script/class/class/DirectoryCopier.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import fs from 'fs';
-import path from 'path';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * A class for copying files from one directory to another.
- */
-class DirectoryCopier {
-
- /**
- * Copies all files from a source directory to a destination directory.
- * @param {string} srcDir - The source directory path.
- * @param {string} destDir - The destination directory path.
- * @description This method iterates over all files in the source directory
- * and copies each file to the destination directory. It resolves
- * the absolute paths of the source and destination directories to
- * handle relative paths correctly. This is useful for duplicating
- * files or setting up similar directory structures in different locations.
- * @throws Will throw an error if copying fails for any file.
- */
- async copyFiles(srcDir: string, destDir: string): Promise {
- try {
- const resolvedSrcDir = path.resolve(srcDir);
- const resolvedDestDir = path.resolve(destDir);
-
- const files = fs.readdirSync(resolvedSrcDir);
- console.log("FILES:", files);
-
- files.forEach(file => {
- const srcFile = path.join(resolvedSrcDir, file);
- const destFile = path.join(resolvedDestDir, file);
-
- if (fs.statSync(srcFile).isFile()) {
- console.log("Copying file:", srcFile);
- fs.copyFileSync(srcFile, destFile);
- }
- });
-
- console.log(`Files copied from ${resolvedSrcDir} to ${resolvedDestDir}`);
- } catch (error) {
- console.error('Error copying files:', error);
- throw error;
- }
- }
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default DirectoryCopier;
diff --git a/script/ts/class/DirectoryCreator.ts b/script/ts/class/DirectoryCreator.ts
deleted file mode 100644
index 16adcef0..00000000
--- a/script/ts/class/DirectoryCreator.ts
+++ /dev/null
@@ -1,64 +0,0 @@
-// script/class/DirectoryGenerator.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import fs from 'fs';
-import path from 'path';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * A class for creating directories.
- */
- class DirectoryCreator {
-
- /**
- * Creates directories at the specified locations.
- * @param {string} basePath - The base path where directories will be created.
- * @param {string[]} directories - An array of directory paths to create.
- * @description This method iterates over the provided array of directory paths,
- * creating each directory at the specified location within the base path.
- * If a directory already exists, it skips creation. This is useful for
- * setting up a project structure or ensuring necessary directories are
- * available before performing file operations.
- * @throws Will throw an error if directory creation fails.
- */
- async createDirectories(basePath: string, directories: string[]): Promise {
- directories.forEach(dir => {
- const dirPath = path.join(basePath, dir);
- if (!fs.existsSync(dirPath)) {
- fs.mkdirSync(dirPath, { recursive: true });
- console.log(`Directory created: ${dirPath}`);
- } else {
- console.log(`Directory already exists: ${dirPath}`);
- }
- });
- }
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default DirectoryCreator;
\ No newline at end of file
diff --git a/script/ts/class/FileCopier.ts b/script/ts/class/FileCopier.ts
deleted file mode 100644
index 42a225e9..00000000
--- a/script/ts/class/FileCopier.ts
+++ /dev/null
@@ -1,63 +0,0 @@
-// script/class/class/FileCopier.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import fs from 'fs';
-import path from 'path';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * A class for copying files from one location to another.
- */
- class FileCopier {
-
- /**
- * Copies a single file to a specified destination directory.
- * @param {string} srcFile - The path of the source file to copy.
- * @param {string} destDir - The destination directory where the file should be copied.
- * @throws Will throw an error if the file copy operation fails.
- */
- async copyFileToDirectory(
- srcFile: string,
- destDir: string
- ): Promise {
- try {
- const fileName = path.basename(srcFile);
- const destFilePath = path.join(destDir, fileName);
- await fs.promises.copyFile(srcFile, destFilePath);
- console.log(`File copied from ${srcFile} to ${destFilePath}`);
- } catch (error) {
- console.error('Error copying file:', error);
- throw error;
- }
- }
-
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default FileCopier;
diff --git a/script/ts/class/FileRenamer.ts b/script/ts/class/FileRenamer.ts
deleted file mode 100644
index 49dc0cd6..00000000
--- a/script/ts/class/FileRenamer.ts
+++ /dev/null
@@ -1,58 +0,0 @@
-// script/class/class/FileRenamer.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import fs from 'fs';
-import path from 'path';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * A class for renaming files.
- */
- class FileRenamer {
-
- /**
- * Renames a file from the source path to the target path.
- * @param srcPath The current path of the file.
- * @param targetPath The new path of the file after renaming.
- * @returns Promise
- */
- async renameFile(srcPath: string, targetPath: string): Promise {
- try {
- await fs.promises.rename(srcPath, targetPath);
- console.log(`File renamed from ${srcPath} to ${targetPath}`);
- } catch (error) {
- console.error('Error renaming file:', error);
- throw error;
- }
- }
-
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default FileRenamer;
diff --git a/script/ts/class/FontGenerator.ts b/script/ts/class/FontGenerator.ts
deleted file mode 100644
index f43d3bea..00000000
--- a/script/ts/class/FontGenerator.ts
+++ /dev/null
@@ -1,133 +0,0 @@
-// script/class/FontGenerator.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import { generateFonts, FontAssetType, OtherAssetType } from 'fantasticon';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-class FontGenerator {
-
- async generateFonts(sourceDirectory: string, outputDiectory: string) {
-
- const config = {
-
-
- // RunnerMandatoryOptions
- inputDir: sourceDirectory, // (required)
- outputDir: outputDiectory, // (required)
-
- // RunnerOptionalOptions
- name: 'icon.gl',
- fontTypes: [
- FontAssetType.TTF, // TTF = "ttf"
- FontAssetType.WOFF, // WOFF = "woff"
- FontAssetType.WOFF2, // WOFF2 = "woff2"
- FontAssetType.EOT, // EOT = "eot"
- FontAssetType.SVG, // SVG = "svg"
- ],
- assetTypes: [
- OtherAssetType.CSS, // CSS = "css",
- OtherAssetType.SCSS, // SCSS = "scss",
- OtherAssetType.SASS, // SASS = "sass",
- OtherAssetType.HTML, // HTML = "html",
- OtherAssetType.JSON, // JSON = "json",
- OtherAssetType.TS, // TS = "ts"
- ],
-
-
-
- formatOptions: {
- // woff: {
- // // Woff Extended Metadata Block - see https://www.w3.org/TR/WOFF/#Metadata
- // metadata: '...'
- // },
- // ttf?: TtfOptions; // type TtfOptions = svg2ttf.FontOptions;
- // svg?: SvgOptions; // type SvgOptions = Omit;
- json: { indent: 4 } ,
- // ts: {
- // // select what kind of types you want to generate
- // // (default `['enum', 'constant', 'literalId', 'literalKey']`)
- // types: ['enum', 'constant', 'literalId', 'literalKey'],
- // // render the types with `'` instead of `"` (default is `"`)
- // singleQuotes: false,
- // // customise names used for the generated types and constants
- // enumName: 'icon_gl',
- // constantName: 'MY_CODEPOINTS'
- // // literalIdName: 'IconId',
- // // literalKeyName: 'IconKey'
- // }
- },
- pathOptions: {
- json: './dist/font/icon.gl.json',
- css: './dist/font/icon.gl.css',
- scss: './dist/font/icon.gl.scss',
- woff: './dist/font/icon.gl.woff',
- woff2: './dist/font/icon.gl.woff2',
- },
- // codepoints: {
- // 'chevron-left': 57344, // decimal representation of 0xe000
- // 'chevron-right': 57345,
- // 'thumbs-up': 57358,
- // 'thumbs-down': 57359,
- // },
- // fontHeight: number;
- // descent: number;
- // normalize: boolean;
- // round: number;
- selector: '.igl',
- // tag: string;
- // Use our custom Handlebars templates
- // templates: {
- // css: './build/font/icon.gl.css.hbs',
- // scss: './build/font/icon.gl.scss.hbs'
- // },
- prefix: 'igl',
- fontsUrl: './fonts',
-
- // Customize generated icon IDs (unavailable with `.json` config file)
- // getIconId: ({
- // basename, // `string` - Example: 'foo';
- // relativeDirPath, // `string` - Example: 'sub/dir/foo.svg'
- // absoluteFilePath, // `string` - Example: '/var/icons/sub/dir/foo.svg'
- // relativeFilePath, // `string` - Example: 'foo.svg'
- // index // `number` - Example: `0`
- // }) => [index, basename].join('_') // '0_foo'
-
- };
-
- try {
- await generateFonts(config);
- console.log('Fonts generated successfully.');
- } catch (error) {
- console.error('Error generating fonts:', error);
- }
- }
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default FontGenerator;
diff --git a/script/ts/class/JavaScriptMinifier.ts b/script/ts/class/JavaScriptMinifier.ts
deleted file mode 100644
index 0d69ca2f..00000000
--- a/script/ts/class/JavaScriptMinifier.ts
+++ /dev/null
@@ -1,82 +0,0 @@
-// script/class/class/JavaScriptMinifier.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import { minify } from 'terser';
-import { promises as fs } from 'fs';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * Class to minify JavaScript files using Terser.
- */
- class JavaScriptMinifier {
-
- private config: any;
-
- /**
- * Constructs an instance with the provided configuration.
- * @param {any} config - Configuration object - minification options for Terser.
- */
- constructor(config: any) {
- this.config = config;
- }
-
- /**
- * Minifies a JavaScript file.
- * @param {string} inputPath - Path to the input JavaScript file.
- * @param {string} outputPath - Path to save the minified output file.
- * @returns {Promise} - A promise that resolves when minification is complete.
- */
- async minifyFile(
- inputPath: string,
- outputPath: string,
- // options: object = {}
- ): Promise {
-
- try {
- // Read the input file
- const inputCode = await fs.readFile(inputPath, 'utf8');
- // Minify the file using Terser
- // const result = await minify(inputCode, options);
- const result = await minify(inputCode, this.config);
- // If minification is successful, write the output
- if (result.code) {
- await fs.writeFile(outputPath, result.code);
- } else {
- throw new Error('Minification resulted in empty output.');
- }
- } catch (error) {
- console.error(`Error minifying JavaScript file ${inputPath}:`, error);
- throw error;
- }
- }
-
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default JavaScriptMinifier;
diff --git a/script/ts/class/PackageCreator.ts b/script/ts/class/PackageCreator.ts
deleted file mode 100644
index 4d8be178..00000000
--- a/script/ts/class/PackageCreator.ts
+++ /dev/null
@@ -1,65 +0,0 @@
-// script/class/PackageCreator.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import fs from 'fs';
-import path from 'path';
-// import * as pack from '../../package.json' assert { type: 'json' };
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * A class for creating a package.json file for a project.
- */
- class PackageCreator {
-
- private packageJson: PackageJson;
-
- /**
- * Initializes a new instance of the PackageCreator class.
- * @param {PackageJson} packageJson - The content to be written into package.json.
- */
- constructor(packageJson: PackageJson) {
- this.packageJson = packageJson;
- }
-
- /**
- * Creates a package.json file in the specified directory.
- * @param {string} outputDir - The directory where package.json will be created.
- */
- async createPackageJson(outputDir: string): Promise {
- const filePath = path.join(outputDir, 'package.json');
- const data = JSON.stringify(this.packageJson, null, 2);
-
- fs.writeFileSync(filePath, data, 'utf-8');
- console.log(`package.json created at ${filePath}`);
- }
-
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default PackageCreator;
\ No newline at end of file
diff --git a/script/ts/class/StyleProcessor.ts b/script/ts/class/StyleProcessor.ts
deleted file mode 100644
index eda0779d..00000000
--- a/script/ts/class/StyleProcessor.ts
+++ /dev/null
@@ -1,96 +0,0 @@
-// script/class/StyleProcessor.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import * as sass from 'sass'
-import postcss from 'postcss';
-import fs from 'fs';
-import postcssConfigExpanded from '../config/postcss.config.expanded.js';
-import postcssConfigCompressed from '../config/postcss.config.compressed.js';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * Class responsible for processing styles, including compiling SCSS and
- * applying PostCSS transformations.
- */
-class StyleProcessor {
-
- /**
- * Processes the given CSS with PostCSS based on the provided style option.
- * @param css The CSS string to process.
- * @param styleOption The style option, either 'expanded' or 'compressed'.
- * @returns Processed CSS string.
- */
- async processPostCSS(
- css: string,
- styleOption: 'expanded' | 'compressed'
- ) {
- const config = styleOption === 'expanded' ? postcssConfigExpanded : postcssConfigCompressed;
- return postcss(config.plugins).process(css, { from: undefined, map: { inline: false } });
- }
-
- /**
- * Compiles SCSS to CSS and processes it using PostCSS.
- * @param inputFile Path to the input SCSS file.
- * @param outputFile Path to the output CSS file.
- * @param styleOption Style option for the output.
- */
- async processStyles(
- inputFile: string,
- outputFile: fs.PathOrFileDescriptor,
- styleOption: 'expanded' | 'compressed'
- ) {
- try {
-
- // Compile SCSS to CSS
- const result = await sass.compileAsync(
- inputFile, { style: styleOption }
- );
-
- // Process the compiled CSS with PostCSS and Autoprefixer
- const processed = await this.processPostCSS(
- result.css,
- styleOption
- );
-
- // Write the processed CSS to a file
- fs.writeFileSync(outputFile, processed.css);
-
- // Write the source map file
- if (processed.map) {
- fs.writeFileSync(`${outputFile}.map`, processed.map.toString());
- }
- } catch (err) {
- // Handle errors in the compilation or processing
- console.error(`Error processing styles from ${inputFile}:`, err);
- }
- }
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default StyleProcessor;
diff --git a/script/ts/class/SvgSpriteGenerator.ts b/script/ts/class/SvgSpriteGenerator.ts
deleted file mode 100644
index 2646237c..00000000
--- a/script/ts/class/SvgSpriteGenerator.ts
+++ /dev/null
@@ -1,98 +0,0 @@
-// script/class/SvgSpriteGenerator.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import svgSprite from 'svg-sprite';
-import fs from 'fs';
-import path from 'path';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * A class for generating SVG sprites from individual SVG files.
- */
-class SvgSpriteGenerator {
-
- private config: any;
-
- /**
- * Constructs an instance of SvgSpriteGenerator with the provided configuration.
- * @param {any} config - Configuration object for svg-sprite.
- */
- constructor(config: any) {
- this.config = config;
- }
-
- /**
- * Generates an SVG sprite from SVG files in a specified directory.
- * @param {string} sourceDir - Directory containing source SVG files.
- * @param {string} outputDir - Directory where the generated sprite will be saved.
- */
- async generateSprite(sourceDir: string, outputDir: string) {
- try {
- const files = fs.readdirSync(sourceDir);
- const sprite = new svgSprite(this.config);
-
- files.forEach(file => {
- if (path.extname(file) === '.svg') {
- const svgPath = path.resolve(sourceDir, file);
- const content = fs.readFileSync(svgPath, 'utf8');
- sprite.add(svgPath, null, content);
- }
- });
-
- sprite.compile((error, result) => {
- if (error) {
- throw error;
- }
-
- for (const mode in result) {
- for (const resource in result[mode]) {
- const outputPath = path.resolve(
- outputDir,
- result[mode][resource].path
- );
- fs.mkdirSync(
- path.dirname(outputPath),
- { recursive: true }
- );
- fs.writeFileSync(
- outputPath,
- result[mode][resource].contents
- );
- }
- }
- });
-
- } catch (err) {
- console.error('Error generating SVG sprite:', err);
- }
- }
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default SvgSpriteGenerator;
diff --git a/script/ts/class/TypeScriptCompiler.ts b/script/ts/class/TypeScriptCompiler.ts
deleted file mode 100644
index a422b2e5..00000000
--- a/script/ts/class/TypeScriptCompiler.ts
+++ /dev/null
@@ -1,112 +0,0 @@
-// script/class/TypeScriptCompiler.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-// import * as ts from 'typescript';
-import ts from 'typescript';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * TypeScriptCompiler class for compiling TypeScript files to JavaScript.
- */
- class TypeScriptCompiler {
-
- private config: any;
-
- /**
- * Constructs an instance with the provided configuration.
- * @param {any} config - Configuration object
- */
- constructor(config: any) {
- this.config = config;
- }
-
- /**
- * Compiles TypeScript files to JavaScript.
- *
- * @param {string[]} filePaths - The paths of TypeScript files to be compiled.
- * @param {string} outDir - The directory where the compiled JavaScript files will be saved.
- * @param {ts.CompilerOptions} customOptions - Optional custom TypeScript compiler options.
- *
- * This method sets up a TypeScript program with given file paths and compiler options.
- * It handles the compilation of TypeScript files into JavaScript, considering any provided custom options.
- * Compilation errors and diagnostics are logged for debugging purposes.
- * The method returns a promise that resolves when compilation is successful or rejects in case of errors.
- */
- compile(
- filePaths: string[],
- outDir: string,
- // customOptions: ts.CompilerOptions = {}
- ): Promise {
- return new Promise((resolve, reject) => {
-
- // Merge default options with custom options
- const options: ts.CompilerOptions = {
- module: ts.ModuleKind.CommonJS,
- target: ts.ScriptTarget.ES2015,
- outDir,
- // ...customOptions, // Merges custom compiler options
- ...this.config, // Merges custom compiler options
- };
-
- // Create a TypeScript compiler host
- const host = ts.createCompilerHost(options);
-
- // Create a program with the specified files and options
- const program = ts.createProgram(filePaths, options, host);
-
- // Emit the compiled JavaScript files
- const emitResult = program.emit();
-
- // Check for compilation errors
- const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
- allDiagnostics.forEach(diagnostic => {
- // Handle and print diagnostics
- if (diagnostic.file) {
- const { line, character } = diagnostic.file.getLineAndCharacterOfPosition(diagnostic.start!);
- const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
- console.error(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
- } else {
- console.error(ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n'));
- }
- });
-
- const exitCode = emitResult.emitSkipped ? 1 : 0;
- if (exitCode === 0) {
- console.log('Compilation completed successfully.');
- resolve();
- } else {
- console.error('Compilation failed.');
- reject(new Error('TypeScript compilation failed'));
- }
- });
- }
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default TypeScriptCompiler;
diff --git a/script/ts/class/VersionWriter.ts b/script/ts/class/VersionWriter.ts
deleted file mode 100644
index db113201..00000000
--- a/script/ts/class/VersionWriter.ts
+++ /dev/null
@@ -1,57 +0,0 @@
-// script/class/VersionWriter.ts
-
-// Copyright 2023 Scape Agency BV
-
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-
-// http://www.apache.org/licenses/LICENSE-2.0
-
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// ============================================================================
-// Import
-// ============================================================================
-
-import { promises as fs } from 'fs';
-
-
-// ============================================================================
-// Classes
-// ============================================================================
-
-/**
- * A class for writing version information to a file.
- */
- class VersionWriter {
-
- /**
- * Writes the specified version string to a file.
- * @param {string} filePath - The file path where the version will be written.
- * @param {string} version - The version string to write to the file.
- */
- async writeVersionToFile(
- filePath: string,
- version: string,
- ): Promise {
- try {
- await fs.writeFile(filePath, version, 'utf8');
- console.log(`Version ${version} written to ${filePath}`);
- } catch (error) {
- console.error(`Error writing version to file: ${error}`);
- }
- }
-}
-
-
-// ============================================================================
-// Export
-// ============================================================================
-
-export default VersionWriter;
diff --git a/script/ts/index.ts b/script/ts/index.ts
index accd1d84..9e531333 100644
--- a/script/ts/index.ts
+++ b/script/ts/index.ts
@@ -21,19 +21,25 @@
// Import necessary modules and classes
import path from 'path';
-import FontGenerator from './class/FontGenerator.js';
-import SvgPackager from "./class/SvgPackager.js";
-import StyleProcessor from "./class/StyleProcessor.js";
-import SvgSpriteGenerator from "./class/SvgSpriteGenerator.js";
-import PackageCreator from './class/PackageCreator.js';
-import VersionWriter from './class/VersionWriter.js';
-import FileCopier from './class/FileCopier.js';
-import FileRenamer from './class/FileRenamer.js';
-import DirectoryCreator from './class/DirectoryCreator.js';
-import DirectoryCopier from './class/DirectoryCopier.js';
-import DirectoryCleaner from './class/DirectoryCleaner.js'; // Adjust the path as needed
-import TypeScriptCompiler from './class/TypeScriptCompiler.js';
-import JavaScriptMinifier from './class/JavaScriptMinifier.js';
+
+import {
+ DirectoryCleaner,
+ DirectoryCopier,
+ DirectoryCreator,
+ FileCopier,
+ FileRenamer,
+ FontGenerator,
+ StyleProcessor,
+ SvgPackager,
+ SvgSpriteGenerator,
+ PackageCreator,
+ VersionWriter,
+ TypeScriptCompiler,
+ JavaScriptMinifier
+} from 'pack.gl';
+
+// import SvgPackager from "./class/SvgPackager.js";
+
// Import necessary configurations
import { CONFIG } from './config/config.js';
@@ -53,7 +59,11 @@ const spriteGenerator = new SvgSpriteGenerator(svgspriteConfig);
const tsCompiler = new TypeScriptCompiler(tsConfig);
const jsMinifier = new JavaScriptMinifier(tensorConfig);
const packageCreator = new PackageCreator(packageConfig);
-const svgPackager = new SvgPackager("./config/svgo.config.js");
+const svgPackager = new SvgPackager(
+ "./script/ts/config/svgo.config.ts"
+ // path.join(CONFIG.path.scss_input, 'index.scss'),
+
+ );
const fontGenerator = new FontGenerator();
const styleProcessor = new StyleProcessor();
const versionWriter = new VersionWriter();
@@ -100,16 +110,20 @@ async function main() {
// async function processSvgs() {
try {
- const sourceDirectory = 'path/to/source/svg';
- const outputDirectory = 'path/to/output/svg';
- const tsOutputDirectory = 'path/to/output/ts';
- const jsonOutputDirectory = 'path/to/output/json';
+ // const sourceDirectory = 'path/to/source/svg';
+ // const outputDirectory = 'path/to/output/svg';
+ // const tsOutputDirectory = 'path/to/output/ts';
+ // const jsonOutputDirectory = 'path/to/output/json';
await svgPackager.processSvgFiles(
- sourceDirectory,
- outputDirectory,
- tsOutputDirectory,
- jsonOutputDirectory
+ CONFIG.path.svg_input,
+ CONFIG.path.svg_output,
+ CONFIG.path.ts_output_icons,
+ CONFIG.path.json_output,
+ // sourceDirectory,
+ // outputDirectory,
+ // tsOutputDirectory,
+ // jsonOutputDirectory
);
} catch (error) {
console.error('Failed to process SVG files:', error);
diff --git a/src/scss/_size.scss b/src/scss/_size.scss
index fe370a92..0c08923f 100644
--- a/src/scss/_size.scss
+++ b/src/scss/_size.scss
@@ -70,92 +70,92 @@ $igl_sizes: (
// .icon-round-medium {border-radius: 100%; display: table-cell; height: 90px; margin: 0 auto; text-align: center; vertical-align: middle; width: 90px;}
-@mixin icon_size_00 {
- @include icon;
- @include box_size_00;
- svg { @include box_size_00; }
- img { @include box_size_00; }
-}
+// @mixin icon_size_00 {
+// @include icon;
+// @include box_size_00;
+// svg { @include box_size_00; }
+// img { @include box_size_00; }
+// }
-@mixin icon_size_01 {
- @include icon;
- @include box_size_01;
- svg { @include box_size_01; }
- img { @include box_size_01; }
-}
+// @mixin icon_size_01 {
+// @include icon;
+// @include box_size_01;
+// svg { @include box_size_01; }
+// img { @include box_size_01; }
+// }
-@mixin icon_size_02 {
- @include icon;
- @include box_size_02;
- svg { @include box_size_02; }
- img { @include box_size_02; }
-}
+// @mixin icon_size_02 {
+// @include icon;
+// @include box_size_02;
+// svg { @include box_size_02; }
+// img { @include box_size_02; }
+// }
-@mixin icon_size_03 {
- @include icon;
- @include box_size_03;
- svg { @include box_size_03; }
- img { @include box_size_03; }
-}
+// @mixin icon_size_03 {
+// @include icon;
+// @include box_size_03;
+// svg { @include box_size_03; }
+// img { @include box_size_03; }
+// }
-@mixin icon_size_04 {
- @include icon;
- @include box_size_04;
- svg { @include box_size_04; }
- img { @include box_size_04; }
-}
+// @mixin icon_size_04 {
+// @include icon;
+// @include box_size_04;
+// svg { @include box_size_04; }
+// img { @include box_size_04; }
+// }
-@mixin icon_size_05 {
- @include icon;
- @include box_size_05;
- svg { @include box_size_05; }
- img { @include box_size_05; }
-}
+// @mixin icon_size_05 {
+// @include icon;
+// @include box_size_05;
+// svg { @include box_size_05; }
+// img { @include box_size_05; }
+// }
-@mixin icon_size_06 {
- @include icon;
- @include box_size_06;
- svg { @include box_size_06; }
- img { @include box_size_06; }
-}
+// @mixin icon_size_06 {
+// @include icon;
+// @include box_size_06;
+// svg { @include box_size_06; }
+// img { @include box_size_06; }
+// }
-@mixin icon_size_07 {
- @include icon;
- @include box_size_07;
- svg { @include box_size_07; }
- img { @include box_size_07; }
-}
+// @mixin icon_size_07 {
+// @include icon;
+// @include box_size_07;
+// svg { @include box_size_07; }
+// img { @include box_size_07; }
+// }
-@mixin icon_size_08 {
- @include icon;
- @include box_size_08;
- svg { @include box_size_08; }
- img { @include box_size_08; }
-}
+// @mixin icon_size_08 {
+// @include icon;
+// @include box_size_08;
+// svg { @include box_size_08; }
+// img { @include box_size_08; }
+// }
-@mixin icon_size_09 {
- @include icon;
- @include box_size_09;
- svg { @include box_size_09; }
- img { @include box_size_09; }
-}
+// @mixin icon_size_09 {
+// @include icon;
+// @include box_size_09;
+// svg { @include box_size_09; }
+// img { @include box_size_09; }
+// }
-@mixin icon_size_10 {
- @include icon;
- @include box_size_10;
- svg { @include box_size_10; }
- img { @include box_size_10; }
-}
+// @mixin icon_size_10 {
+// @include icon;
+// @include box_size_10;
+// svg { @include box_size_10; }
+// img { @include box_size_10; }
+// }
-.icon_size_00 { @include icon_size_00; }
-.icon_size_01 { @include icon_size_01; }
-.icon_size_02 { @include icon_size_02; }
-.icon_size_03 { @include icon_size_03; }
-.icon_size_04 { @include icon_size_04; }
-.icon_size_05 { @include icon_size_05; }
-.icon_size_06 { @include icon_size_06; }
-.icon_size_07 { @include icon_size_07; }
-.icon_size_08 { @include icon_size_08; }
-.icon_size_09 { @include icon_size_09; }
-.icon_size_10 { @include icon_size_10; }
+// .icon_size_00 { @include icon_size_00; }
+// .icon_size_01 { @include icon_size_01; }
+// .icon_size_02 { @include icon_size_02; }
+// .icon_size_03 { @include icon_size_03; }
+// .icon_size_04 { @include icon_size_04; }
+// .icon_size_05 { @include icon_size_05; }
+// .icon_size_06 { @include icon_size_06; }
+// .icon_size_07 { @include icon_size_07; }
+// .icon_size_08 { @include icon_size_08; }
+// .icon_size_09 { @include icon_size_09; }
+// .icon_size_10 { @include icon_size_10; }