@breadstone-infrastructure/nx-tasks 0.0.12-beta.13 → 0.0.12-beta.5
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/Index.d.ts +24 -21
- package/Index.d.ts.map +1 -1
- package/Index.js +39 -43
- package/Index.js.map +1 -1
- package/executors/alias-replace/executor.d.ts +3 -3
- package/executors/alias-replace/executor.d.ts.map +1 -1
- package/executors/alias-replace/executor.js +2 -25
- package/executors/alias-replace/executor.js.map +1 -1
- package/executors/clean/executor.d.ts +3 -3
- package/executors/clean/executor.d.ts.map +1 -1
- package/executors/clean/executor.js +2 -25
- package/executors/clean/executor.js.map +1 -1
- package/executors/copy/executor.d.ts +3 -3
- package/executors/copy/executor.d.ts.map +1 -1
- package/executors/copy/executor.js +2 -25
- package/executors/copy/executor.js.map +1 -1
- package/executors/docs/executor.d.ts +1 -1
- package/executors/docs/executor.d.ts.map +1 -1
- package/executors/docs/executor.js +2 -25
- package/executors/docs/executor.js.map +1 -1
- package/executors/doppler-config-sync/executor.d.ts +1 -1
- package/executors/doppler-config-sync/executor.d.ts.map +1 -1
- package/executors/doppler-config-sync/executor.js +2 -25
- package/executors/doppler-config-sync/executor.js.map +1 -1
- package/executors/icon-collection-builder/executor.d.ts +1 -1
- package/executors/icon-collection-builder/executor.d.ts.map +1 -1
- package/executors/icon-collection-builder/executor.js +2 -25
- package/executors/icon-collection-builder/executor.js.map +1 -1
- package/executors/icon-collection-downloader/executor.d.ts +2 -2
- package/executors/icon-collection-downloader/executor.d.ts.map +1 -1
- package/executors/icon-collection-downloader/executor.js +2 -25
- package/executors/icon-collection-downloader/executor.js.map +1 -1
- package/executors/lit-docs/executor.d.ts +3 -3
- package/executors/lit-docs/executor.d.ts.map +1 -1
- package/executors/lit-docs/executor.js +3 -28
- package/executors/lit-docs/executor.js.map +1 -1
- package/executors/lit-style-transform/executor.d.ts +2 -2
- package/executors/lit-style-transform/executor.d.ts.map +1 -1
- package/executors/lit-style-transform/executor.js +7 -30
- package/executors/lit-style-transform/executor.js.map +1 -1
- package/executors/localizator/executor.d.ts +1 -1
- package/executors/localizator/executor.d.ts.map +1 -1
- package/executors/localizator/executor.js +5 -26
- package/executors/localizator/executor.js.map +1 -1
- package/executors/markdown-to-typescript-transform/executor.d.ts +1 -1
- package/executors/markdown-to-typescript-transform/executor.d.ts.map +1 -1
- package/executors/markdown-to-typescript-transform/executor.js +2 -25
- package/executors/markdown-to-typescript-transform/executor.js.map +1 -1
- package/executors/ng-packagr-build/executor.d.ts +3 -3
- package/executors/ng-packagr-build/executor.d.ts.map +1 -1
- package/executors/ng-packagr-build/executor.js +2 -25
- package/executors/ng-packagr-build/executor.js.map +1 -1
- package/executors/ng-proxy-transform/executor.d.ts +3 -3
- package/executors/ng-proxy-transform/executor.d.ts.map +1 -1
- package/executors/ng-proxy-transform/executor.js +2 -25
- package/executors/ng-proxy-transform/executor.js.map +1 -1
- package/executors/openapi-generator/executor.d.ts +1 -1
- package/executors/openapi-generator/executor.d.ts.map +1 -1
- package/executors/openapi-generator/executor.js +2 -25
- package/executors/openapi-generator/executor.js.map +1 -1
- package/executors/react-proxy-transform/executor.d.ts +3 -3
- package/executors/react-proxy-transform/executor.d.ts.map +1 -1
- package/executors/react-proxy-transform/executor.js +2 -25
- package/executors/react-proxy-transform/executor.js.map +1 -1
- package/executors/release-package/executor.d.ts +3 -3
- package/executors/release-package/executor.d.ts.map +1 -1
- package/executors/release-package/executor.js +2 -25
- package/executors/release-package/executor.js.map +1 -1
- package/executors/release-package-json/executor.d.ts +3 -3
- package/executors/release-package-json/executor.d.ts.map +1 -1
- package/executors/release-package-json/executor.js +2 -25
- package/executors/release-package-json/executor.js.map +1 -1
- package/executors/styles-bundle/executor.d.ts +3 -3
- package/executors/styles-bundle/executor.d.ts.map +1 -1
- package/executors/styles-bundle/executor.js +2 -25
- package/executors/styles-bundle/executor.js.map +1 -1
- package/executors/unrelease-package/executor.d.ts +3 -3
- package/executors/unrelease-package/executor.d.ts.map +1 -1
- package/executors/unrelease-package/executor.js +2 -25
- package/executors/unrelease-package/executor.js.map +1 -1
- package/executors/vercel-edge-config-sync/executor.d.ts +1 -1
- package/executors/vercel-edge-config-sync/executor.d.ts.map +1 -1
- package/executors/vercel-edge-config-sync/executor.js +2 -25
- package/executors/vercel-edge-config-sync/executor.js.map +1 -1
- package/executors/vue-proxy-transform/executor.d.ts +3 -3
- package/executors/vue-proxy-transform/executor.d.ts.map +1 -1
- package/executors/vue-proxy-transform/executor.js +2 -25
- package/executors/vue-proxy-transform/executor.js.map +1 -1
- package/package.json +5 -24
- package/executors/alias-replace/executor.task.d.ts +0 -74
- package/executors/alias-replace/executor.task.d.ts.map +0 -1
- package/executors/alias-replace/executor.task.js +0 -256
- package/executors/alias-replace/executor.task.js.map +0 -1
- package/executors/clean/executor.task.d.ts +0 -17
- package/executors/clean/executor.task.d.ts.map +0 -1
- package/executors/clean/executor.task.js +0 -41
- package/executors/clean/executor.task.js.map +0 -1
- package/executors/copy/executor.task.d.ts +0 -36
- package/executors/copy/executor.task.d.ts.map +0 -1
- package/executors/copy/executor.task.js +0 -53
- package/executors/copy/executor.task.js.map +0 -1
- package/executors/docs/executor.task.d.ts +0 -23
- package/executors/docs/executor.task.d.ts.map +0 -1
- package/executors/docs/executor.task.js +0 -74
- package/executors/docs/executor.task.js.map +0 -1
- package/executors/doppler-config-sync/executor.task.d.ts +0 -23
- package/executors/doppler-config-sync/executor.task.d.ts.map +0 -1
- package/executors/doppler-config-sync/executor.task.js +0 -163
- package/executors/doppler-config-sync/executor.task.js.map +0 -1
- package/executors/icon-collection-builder/executor.task.d.ts +0 -14
- package/executors/icon-collection-builder/executor.task.d.ts.map +0 -1
- package/executors/icon-collection-builder/executor.task.js +0 -69
- package/executors/icon-collection-builder/executor.task.js.map +0 -1
- package/executors/icon-collection-downloader/executor.task.d.ts +0 -10
- package/executors/icon-collection-downloader/executor.task.d.ts.map +0 -1
- package/executors/icon-collection-downloader/executor.task.js +0 -122
- package/executors/icon-collection-downloader/executor.task.js.map +0 -1
- package/executors/lit-docs/JSDocChecker.d.ts +0 -104
- package/executors/lit-docs/JSDocChecker.d.ts.map +0 -1
- package/executors/lit-docs/JSDocChecker.js +0 -240
- package/executors/lit-docs/JSDocChecker.js.map +0 -1
- package/executors/lit-docs/executor.task.d.ts +0 -12
- package/executors/lit-docs/executor.task.d.ts.map +0 -1
- package/executors/lit-docs/executor.task.js +0 -233
- package/executors/lit-docs/executor.task.js.map +0 -1
- package/executors/lit-style-transform/executor.task.d.ts +0 -37
- package/executors/lit-style-transform/executor.task.d.ts.map +0 -1
- package/executors/lit-style-transform/executor.task.js +0 -351
- package/executors/lit-style-transform/executor.task.js.map +0 -1
- package/executors/localizator/executor.task.d.ts +0 -8
- package/executors/localizator/executor.task.d.ts.map +0 -1
- package/executors/localizator/executor.task.js +0 -153
- package/executors/localizator/executor.task.js.map +0 -1
- package/executors/markdown-to-typescript-transform/MarkdownRenderer.d.ts +0 -20
- package/executors/markdown-to-typescript-transform/MarkdownRenderer.d.ts.map +0 -1
- package/executors/markdown-to-typescript-transform/MarkdownRenderer.js +0 -74
- package/executors/markdown-to-typescript-transform/MarkdownRenderer.js.map +0 -1
- package/executors/markdown-to-typescript-transform/executor.task.d.ts +0 -25
- package/executors/markdown-to-typescript-transform/executor.task.d.ts.map +0 -1
- package/executors/markdown-to-typescript-transform/executor.task.js +0 -97
- package/executors/markdown-to-typescript-transform/executor.task.js.map +0 -1
- package/executors/ng-packagr-build/executor.task.d.ts +0 -11
- package/executors/ng-packagr-build/executor.task.d.ts.map +0 -1
- package/executors/ng-packagr-build/executor.task.js +0 -43
- package/executors/ng-packagr-build/executor.task.js.map +0 -1
- package/executors/ng-proxy-transform/executor.task.d.ts +0 -49
- package/executors/ng-proxy-transform/executor.task.d.ts.map +0 -1
- package/executors/ng-proxy-transform/executor.task.js +0 -386
- package/executors/ng-proxy-transform/executor.task.js.map +0 -1
- package/executors/openapi-generator/executor.task.d.ts +0 -20
- package/executors/openapi-generator/executor.task.d.ts.map +0 -1
- package/executors/openapi-generator/executor.task.js +0 -29
- package/executors/openapi-generator/executor.task.js.map +0 -1
- package/executors/react-proxy-transform/executor.task.d.ts +0 -44
- package/executors/react-proxy-transform/executor.task.d.ts.map +0 -1
- package/executors/react-proxy-transform/executor.task.js +0 -217
- package/executors/react-proxy-transform/executor.task.js.map +0 -1
- package/executors/release-package/executor.task.d.ts +0 -17
- package/executors/release-package/executor.task.d.ts.map +0 -1
- package/executors/release-package/executor.task.js +0 -177
- package/executors/release-package/executor.task.js.map +0 -1
- package/executors/release-package-json/executor.task.d.ts +0 -29
- package/executors/release-package-json/executor.task.d.ts.map +0 -1
- package/executors/release-package-json/executor.task.js +0 -167
- package/executors/release-package-json/executor.task.js.map +0 -1
- package/executors/styles-bundle/executor.task.d.ts +0 -20
- package/executors/styles-bundle/executor.task.d.ts.map +0 -1
- package/executors/styles-bundle/executor.task.js +0 -78
- package/executors/styles-bundle/executor.task.js.map +0 -1
- package/executors/unrelease-package/executor.task.d.ts +0 -13
- package/executors/unrelease-package/executor.task.d.ts.map +0 -1
- package/executors/unrelease-package/executor.task.js +0 -101
- package/executors/unrelease-package/executor.task.js.map +0 -1
- package/executors/vercel-edge-config-sync/executor.task.d.ts +0 -7
- package/executors/vercel-edge-config-sync/executor.task.d.ts.map +0 -1
- package/executors/vercel-edge-config-sync/executor.task.js +0 -46
- package/executors/vercel-edge-config-sync/executor.task.js.map +0 -1
- package/executors/vue-proxy-transform/executor.task.d.ts +0 -43
- package/executors/vue-proxy-transform/executor.task.d.ts.map +0 -1
- package/executors/vue-proxy-transform/executor.task.js +0 -201
- package/executors/vue-proxy-transform/executor.task.js.map +0 -1
- package/utils/TaskBase.d.ts +0 -13
- package/utils/TaskBase.d.ts.map +0 -1
- package/utils/TaskBase.js +0 -27
- package/utils/TaskBase.js.map +0 -1
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// #region Imports
|
|
3
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
-
if (k2 === undefined) k2 = k;
|
|
5
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
-
}
|
|
9
|
-
Object.defineProperty(o, k2, desc);
|
|
10
|
-
}) : (function(o, m, k, k2) {
|
|
11
|
-
if (k2 === undefined) k2 = k;
|
|
12
|
-
o[k2] = m[k];
|
|
13
|
-
}));
|
|
14
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
-
}) : function(o, v) {
|
|
17
|
-
o["default"] = v;
|
|
18
|
-
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
-
if (mod && mod.__esModule) return mod;
|
|
21
|
-
var result = {};
|
|
22
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
-
__setModuleDefault(result, mod);
|
|
24
|
-
return result;
|
|
25
|
-
};
|
|
26
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
exports.DopplerConfigSyncTask = void 0;
|
|
28
|
-
const utilities_1 = require("@breadstone-infrastructure/utilities");
|
|
29
|
-
const dotenv = __importStar(require("dotenv"));
|
|
30
|
-
const enquirer_1 = require("enquirer");
|
|
31
|
-
// #endregion
|
|
32
|
-
var DopplerConfigSyncTask;
|
|
33
|
-
(function (DopplerConfigSyncTask) {
|
|
34
|
-
// #region Interfaces
|
|
35
|
-
// #endregion
|
|
36
|
-
// #region Functions
|
|
37
|
-
/**
|
|
38
|
-
* Gets the Doppler API key from the user.
|
|
39
|
-
*
|
|
40
|
-
* @returns The Doppler API key.
|
|
41
|
-
*/
|
|
42
|
-
async function authenticate(token) {
|
|
43
|
-
if (token) {
|
|
44
|
-
return token;
|
|
45
|
-
}
|
|
46
|
-
const credentials = await (0, enquirer_1.prompt)([
|
|
47
|
-
{
|
|
48
|
-
type: 'input',
|
|
49
|
-
name: 'apiKey',
|
|
50
|
-
message: 'Enter your Doppler api key:\nYou can find it in your Doppler account settings.'
|
|
51
|
-
}
|
|
52
|
-
]);
|
|
53
|
-
return credentials.apiKey;
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Fetches secrets from Doppler.
|
|
57
|
-
*
|
|
58
|
-
* @param token The authentication token.
|
|
59
|
-
* @param project The project name in Doppler.
|
|
60
|
-
* @param config The configuration name in Doppler.
|
|
61
|
-
* @returns A record of secrets.
|
|
62
|
-
*/
|
|
63
|
-
async function fetchSecrets(token, project, config, logger) {
|
|
64
|
-
const apiUrl = `https://api.doppler.com/v3/configs/config/secrets?project=${project}&config=${config}&include_dynamic_secrets=false&include_managed_secrets=true`;
|
|
65
|
-
const response = await fetch(apiUrl, {
|
|
66
|
-
headers: { Authorization: `Bearer ${token}` }
|
|
67
|
-
});
|
|
68
|
-
if (!response.ok) {
|
|
69
|
-
throw new Error(`Failed to fetch Doppler secrets: ${response.statusText}`);
|
|
70
|
-
}
|
|
71
|
-
const data = await response.json();
|
|
72
|
-
logger.log(`Fetched ${Object.keys(data.secrets).length} secrets from Doppler.`);
|
|
73
|
-
return Object.fromEntries(Object.entries(data.secrets).map(([key, value]) => [key, value.raw]));
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Loads the existing environment variables from the .env file.
|
|
77
|
-
*
|
|
78
|
-
* @param envFilePath Path to the .env file.
|
|
79
|
-
* @returns A record of environment variables.
|
|
80
|
-
*/
|
|
81
|
-
function loadEnvFile(envFilePath, logger) {
|
|
82
|
-
if (!utilities_1.File.exists(envFilePath)) {
|
|
83
|
-
return {};
|
|
84
|
-
}
|
|
85
|
-
logger.log(`Loading .env file from: ${envFilePath}`);
|
|
86
|
-
const envConfig = dotenv.config({ path: envFilePath });
|
|
87
|
-
if (envConfig.error) {
|
|
88
|
-
throw new Error(`Error loading .env file: ${envConfig.error.message}`);
|
|
89
|
-
}
|
|
90
|
-
return envConfig.parsed ?? {};
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Logs the changes between current env and fetched secrets.
|
|
94
|
-
*
|
|
95
|
-
* @param currentEnv The current environment variables.
|
|
96
|
-
* @param secrets The fetched secrets from Doppler.
|
|
97
|
-
*/
|
|
98
|
-
function logEnvChanges(currentEnv, secrets, logger) {
|
|
99
|
-
const changes = Object.keys(secrets).reduce((acc, key) => {
|
|
100
|
-
if (currentEnv[key] !== secrets[key]) {
|
|
101
|
-
acc[key] = {
|
|
102
|
-
old: currentEnv[key] || 'undefined',
|
|
103
|
-
new: secrets[key]
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
return acc;
|
|
107
|
-
}, {});
|
|
108
|
-
if (Object.keys(changes).length > 0) {
|
|
109
|
-
logger.log('The following ENV variables will be updated:');
|
|
110
|
-
for (const [key, { old, new: newVal }] of Object.entries(changes)) {
|
|
111
|
-
logger.log(` ${key}: [Old: ${old}] -> [New: ${newVal}]`);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
logger.log('No changes detected in ENV variables.');
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Writes updated secrets to the .env file.
|
|
120
|
-
*
|
|
121
|
-
* @param envFilePath Path to the .env file.
|
|
122
|
-
* @param updatedEnv The updated environment variables.
|
|
123
|
-
*/
|
|
124
|
-
function updateEnvFile(envFilePath, updatedEnv) {
|
|
125
|
-
const envContent = Object.entries(updatedEnv)
|
|
126
|
-
.map(([key, value]) => `${key}="${value}"`)
|
|
127
|
-
.join('\n');
|
|
128
|
-
utilities_1.File.writeAllText(envFilePath, envContent);
|
|
129
|
-
}
|
|
130
|
-
// #endregion
|
|
131
|
-
// #region Main Task
|
|
132
|
-
async function run(options) {
|
|
133
|
-
const logger = new utilities_1.ConsoleLogger();
|
|
134
|
-
try {
|
|
135
|
-
// Step 1: Authenticate and get the API token
|
|
136
|
-
logger.log('Authenticating with Doppler...');
|
|
137
|
-
const token = options.apiKey ?? await authenticate(options.apiKey);
|
|
138
|
-
// Step 2: Fetch secrets from Doppler
|
|
139
|
-
logger.log('Fetching secrets from Doppler...');
|
|
140
|
-
const secrets = await fetchSecrets(token, options.project, options.config, logger);
|
|
141
|
-
// Step 3: Load the current environment file
|
|
142
|
-
logger.log('Loading current .env file...');
|
|
143
|
-
const envPath = utilities_1.Path.combine(options.cwd, options.envFile);
|
|
144
|
-
const currentEnv = loadEnvFile(envPath, logger);
|
|
145
|
-
// Step 4: Log the changes between current env and secrets
|
|
146
|
-
logEnvChanges(currentEnv, secrets, logger);
|
|
147
|
-
// Step 5: Merge and update the .env file with new secrets
|
|
148
|
-
const mergedEnv = {
|
|
149
|
-
...currentEnv,
|
|
150
|
-
...secrets
|
|
151
|
-
};
|
|
152
|
-
updateEnvFile(envPath, mergedEnv);
|
|
153
|
-
logger.log('Successfully wrote updated secrets to .env file.');
|
|
154
|
-
}
|
|
155
|
-
catch (error) {
|
|
156
|
-
logger.error(`Error: ${error.message}`);
|
|
157
|
-
throw error;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
DopplerConfigSyncTask.run = run;
|
|
161
|
-
// #endregion
|
|
162
|
-
})(DopplerConfigSyncTask || (exports.DopplerConfigSyncTask = DopplerConfigSyncTask = {}));
|
|
163
|
-
//# sourceMappingURL=executor.task.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.task.js","sourceRoot":"","sources":["../../../src/executors/doppler-config-sync/executor.task.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export declare namespace IconCollectionBuilderTask {
|
|
2
|
-
interface IIconCollectionBuilderTaksOptions {
|
|
3
|
-
sets: Array<{
|
|
4
|
-
name: string;
|
|
5
|
-
cwd: string;
|
|
6
|
-
inDir: string;
|
|
7
|
-
outDir: string;
|
|
8
|
-
types: Array<'filled' | 'regular'>;
|
|
9
|
-
outFileMap?: Record<string, string>;
|
|
10
|
-
}>;
|
|
11
|
-
}
|
|
12
|
-
function run(options: IIconCollectionBuilderTaksOptions): Promise<void>;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=executor.task.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.task.d.ts","sourceRoot":"","sources":["../../../src/executors/icon-collection-builder/executor.task.ts"],"names":[],"mappings":"AAOA,yBAAiB,yBAAyB,CAAC;IAWvC,UAAiB,iCAAiC;QAC9C,IAAI,EAAE,KAAK,CAAC;YACR,IAAI,EAAE,MAAM,CAAC;YACb,GAAG,EAAE,MAAM,CAAC;YACZ,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf,KAAK,EAAE,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;YACnC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SACvC,CAAC,CAAC;KACN;IAED,SAAsB,GAAG,CAAC,OAAO,EAAE,iCAAiC,GAAG,OAAO,CAAC,IAAI,CAAC,CA8CnF;CAkBJ"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// #region Imports
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.IconCollectionBuilderTask = void 0;
|
|
8
|
-
const utilities_1 = require("@breadstone-infrastructure/utilities");
|
|
9
|
-
const path_1 = __importDefault(require("path"));
|
|
10
|
-
// #endregion
|
|
11
|
-
var IconCollectionBuilderTask;
|
|
12
|
-
(function (IconCollectionBuilderTask) {
|
|
13
|
-
async function run(options) {
|
|
14
|
-
const logger = new utilities_1.ConsoleLogger();
|
|
15
|
-
(0, utilities_1.logSeparator)(logger, 'Build icons');
|
|
16
|
-
options.sets.forEach((set) => {
|
|
17
|
-
logger.log(` ${set.name}`, { color: 'magenta' });
|
|
18
|
-
try {
|
|
19
|
-
const p = utilities_1.Path.relative(set.cwd, set.inDir);
|
|
20
|
-
set.types.forEach((type) => {
|
|
21
|
-
const svgDataPaths = new Array();
|
|
22
|
-
for (const svgFilePath of utilities_1.File.glob(utilities_1.Path.combine(p, `**/*_${type}.svg`))) {
|
|
23
|
-
// Extract SVG data path
|
|
24
|
-
const dataPath = extractSVGDataPath(svgFilePath, logger);
|
|
25
|
-
// const name = path.basename(svgFilePath, '.svg').replace()
|
|
26
|
-
svgDataPaths.push({
|
|
27
|
-
name: path_1.default.basename(svgFilePath, '.svg').replace(/^ic_fluent_|_24_filled$/g, ''),
|
|
28
|
-
category: path_1.default.basename(path_1.default.dirname(svgFilePath)),
|
|
29
|
-
componentName: path_1.default.basename(svgFilePath, '.svg').replace(/-([a-z])/g, (g) => g[1].toUpperCase()),
|
|
30
|
-
data: dataPath ?? ''
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
const outFileName = set.outFileMap ? set.outFileMap[type] : '';
|
|
34
|
-
// Save the SVG data paths to a common JSON file
|
|
35
|
-
utilities_1.File.writeAllText(utilities_1.Path.combine(set.cwd, set.outDir, outFileName), JSON.stringify(svgDataPaths, null, 4));
|
|
36
|
-
logger.log(' - SVG data cwd:', set.cwd);
|
|
37
|
-
logger.log(' - SVG data dir:', set.outDir);
|
|
38
|
-
logger.log(` - SVG data paths saved to ${outFileName}`);
|
|
39
|
-
// Logger.instance().logInfo(' Icon download successfully.');
|
|
40
|
-
// Logger.instance().logInfo(' Summary:', { color: 'magenta' })
|
|
41
|
-
// Logger.instance().logInfo(` - ${downloadedCount} icons downloaded.`, { color: 'magenta' });
|
|
42
|
-
// Logger.instance().logInfo(` - ${cachedCount} icons cached.`, { color: 'magenta' });
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
catch (error) {
|
|
46
|
-
logger.error('Error icons:', error);
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
(0, utilities_1.logSeparator)(logger);
|
|
50
|
-
return Promise.resolve();
|
|
51
|
-
}
|
|
52
|
-
IconCollectionBuilderTask.run = run;
|
|
53
|
-
function extractSVGDataPath(svgFilePath, logger) {
|
|
54
|
-
try {
|
|
55
|
-
const svgContent = utilities_1.File.readAllText(svgFilePath, 'utf-8');
|
|
56
|
-
const regex = /<path[^>]*d="([^"]+)"/ig;
|
|
57
|
-
const matches = [...svgContent.matchAll(regex)];
|
|
58
|
-
if (matches.length === 0) {
|
|
59
|
-
return null;
|
|
60
|
-
}
|
|
61
|
-
return matches.map((match) => match[1]).join(' ');
|
|
62
|
-
}
|
|
63
|
-
catch (error) {
|
|
64
|
-
logger.error(`Error parsing SVG ${svgFilePath}:`, error);
|
|
65
|
-
return null;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
})(IconCollectionBuilderTask || (exports.IconCollectionBuilderTask = IconCollectionBuilderTask = {}));
|
|
69
|
-
//# sourceMappingURL=executor.task.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.task.js","sourceRoot":"","sources":["../../../src/executors/icon-collection-builder/executor.task.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { type IFileCacheOptions } from '@breadstone-infrastructure/utilities';
|
|
2
|
-
export declare namespace IconCollectionDownloaderTask {
|
|
3
|
-
interface IIconCollectionDownloaderTaskOptions {
|
|
4
|
-
cwd: string;
|
|
5
|
-
outDir: string;
|
|
6
|
-
cache: IFileCacheOptions;
|
|
7
|
-
}
|
|
8
|
-
function run(options: IIconCollectionDownloaderTaskOptions): Promise<void>;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=executor.task.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.task.d.ts","sourceRoot":"","sources":["../../../src/executors/icon-collection-downloader/executor.task.ts"],"names":[],"mappings":"AAEA,OAAO,EAAwD,KAAK,iBAAiB,EAAiC,MAAM,sCAAsC,CAAC;AAOnK,yBAAiB,4BAA4B,CAAC;IAK1C,UAAiB,oCAAoC;QACjD,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,iBAAiB,CAAC;KAC5B;IAED,SAAsB,GAAG,CAAC,OAAO,EAAE,oCAAoC,GAAG,OAAO,CAAC,IAAI,CAAC,CA+DtF;CA6DJ"}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// #region Imports
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.IconCollectionDownloaderTask = void 0;
|
|
8
|
-
const utilities_1 = require("@breadstone-infrastructure/utilities");
|
|
9
|
-
const fs_1 = __importDefault(require("fs"));
|
|
10
|
-
const https_1 = __importDefault(require("https"));
|
|
11
|
-
const path_1 = __importDefault(require("path"));
|
|
12
|
-
// #endregion
|
|
13
|
-
var IconCollectionDownloaderTask;
|
|
14
|
-
(function (IconCollectionDownloaderTask) {
|
|
15
|
-
const GITHUB_API_URL = 'https://api.github.com/repos/coltongriffith/fluenticons/git/trees/main?recursive=1';
|
|
16
|
-
const RAW_CONTENT_URL = 'https://raw.githubusercontent.com/coltongriffith/fluenticons/main/';
|
|
17
|
-
async function run(options) {
|
|
18
|
-
const logger = new utilities_1.ConsoleLogger();
|
|
19
|
-
(0, utilities_1.logSeparator)(logger, 'Download icons');
|
|
20
|
-
const fileCache = new utilities_1.FileCache(options.cache);
|
|
21
|
-
if (!options.cache.enabled) {
|
|
22
|
-
(0, utilities_1.logBanner)(logger, 'warning', 'Caching is disabled', {
|
|
23
|
-
prefixSpaceLength: 2
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
try {
|
|
27
|
-
const data = await fetchJson(GITHUB_API_URL);
|
|
28
|
-
// Create a directory to store the icons if it doesn't exist
|
|
29
|
-
const p = utilities_1.Path.relative(options.cwd, options.outDir);
|
|
30
|
-
if (!utilities_1.Directory.exists(p)) {
|
|
31
|
-
utilities_1.Directory.create(p);
|
|
32
|
-
}
|
|
33
|
-
// Filter the tree to get only SVG files from the specified directory
|
|
34
|
-
const svgFiles = data.tree.filter((item) => item.path.startsWith('static/icons/fluent') && item.type === 'blob' && item.path.endsWith('.svg'));
|
|
35
|
-
let count = 0;
|
|
36
|
-
let downloadedCount = 0;
|
|
37
|
-
let cachedCount = 0;
|
|
38
|
-
const totalCount = svgFiles.length;
|
|
39
|
-
for (const file of svgFiles) {
|
|
40
|
-
const fileUrl = `${RAW_CONTENT_URL}${file.path}`;
|
|
41
|
-
const destPath = path_1.default.join(p, path_1.default.basename(file.path));
|
|
42
|
-
// eslint-disable-next-line no-await-in-loop
|
|
43
|
-
const cached = await downloadFile(fileUrl, destPath, fileCache);
|
|
44
|
-
count++;
|
|
45
|
-
if (cached) {
|
|
46
|
-
cachedCount++;
|
|
47
|
-
logger.log(`- [${count}/${totalCount}] '${file.path}'`, { color: 'gray' });
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
downloadedCount++;
|
|
51
|
-
logger.log(`- [${count}/${totalCount}] '${file.path}'`, { color: 'magenta' });
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
logger.log(' Icon download successfully.');
|
|
55
|
-
logger.log(' Summary:');
|
|
56
|
-
logger.log(` - ${downloadedCount} icons downloaded.`);
|
|
57
|
-
logger.log(` - ${cachedCount} icons cached.`);
|
|
58
|
-
}
|
|
59
|
-
catch (error) {
|
|
60
|
-
logger.error(`Error downloading icons: ${error}`);
|
|
61
|
-
}
|
|
62
|
-
(0, utilities_1.logSeparator)(logger);
|
|
63
|
-
return Promise.resolve();
|
|
64
|
-
}
|
|
65
|
-
IconCollectionDownloaderTask.run = run;
|
|
66
|
-
async function fetchJson(url) {
|
|
67
|
-
return new Promise((resolve, reject) => {
|
|
68
|
-
https_1.default.get(url, {
|
|
69
|
-
headers: {
|
|
70
|
-
'User-Agent': 'Node.js'
|
|
71
|
-
}
|
|
72
|
-
}, (res) => {
|
|
73
|
-
let data = '';
|
|
74
|
-
res.on('data', (chunk) => {
|
|
75
|
-
data += chunk;
|
|
76
|
-
});
|
|
77
|
-
res.on('end', () => {
|
|
78
|
-
if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
|
|
79
|
-
try {
|
|
80
|
-
resolve(JSON.parse(data));
|
|
81
|
-
}
|
|
82
|
-
catch (error) {
|
|
83
|
-
reject(`Error parsing JSON from ${url}: ${error}`);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
reject(`Request failed with status ${res.statusCode} for ${url}`);
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
}).on('error', (error) => {
|
|
91
|
-
reject(error);
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
async function downloadFile(url, destPath, fileCache) {
|
|
96
|
-
const isFileCached = await fileCache.isFileCached(destPath);
|
|
97
|
-
if (!isFileCached) {
|
|
98
|
-
await new Promise((resolve, reject) => {
|
|
99
|
-
const file = fs_1.default.createWriteStream(destPath);
|
|
100
|
-
https_1.default.get(url, (res) => {
|
|
101
|
-
if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
|
|
102
|
-
res.pipe(file);
|
|
103
|
-
file.on('finish', () => {
|
|
104
|
-
file.close();
|
|
105
|
-
resolve();
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
file.close();
|
|
110
|
-
fs_1.default.unlinkSync(destPath); // Delete partial file
|
|
111
|
-
reject(`Download failed with status ${res.statusCode} for ${url}`);
|
|
112
|
-
}
|
|
113
|
-
}).on('error', (error) => {
|
|
114
|
-
fs_1.default.unlinkSync(destPath); // Delete partial file
|
|
115
|
-
reject(error);
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
|
-
return Promise.resolve(isFileCached);
|
|
120
|
-
}
|
|
121
|
-
})(IconCollectionDownloaderTask || (exports.IconCollectionDownloaderTask = IconCollectionDownloaderTask = {}));
|
|
122
|
-
//# sourceMappingURL=executor.task.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.task.js","sourceRoot":"","sources":["../../../src/executors/icon-collection-downloader/executor.task.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Interface representing the result of a JSDoc check.
|
|
3
|
-
*/
|
|
4
|
-
export interface IJSDocCheckerResult {
|
|
5
|
-
className: string;
|
|
6
|
-
missingTags: Array<'description' | 'name' | 'element' | 'category' | 'example' | 'public' | 'slot' | 'csspart' | 'fires' | 'cssprop' | 'dependency'>;
|
|
7
|
-
missingDetails: {
|
|
8
|
-
slot?: Array<string>;
|
|
9
|
-
csspart?: Array<string>;
|
|
10
|
-
fires?: Array<string>;
|
|
11
|
-
cssprop?: Array<string>;
|
|
12
|
-
dependency?: Array<string>;
|
|
13
|
-
};
|
|
14
|
-
orderDetails: {
|
|
15
|
-
currentOrder: Array<string>;
|
|
16
|
-
correctOrder: Array<string>;
|
|
17
|
-
missingTags: Array<string>;
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* JSDocChecker is responsible for verifying the completeness of JSDoc comments
|
|
22
|
-
* on TypeScript classes decorated with @Component.
|
|
23
|
-
*/
|
|
24
|
-
export declare class JSDocChecker {
|
|
25
|
-
private readonly _correctOrder;
|
|
26
|
-
private readonly _filePath;
|
|
27
|
-
/**
|
|
28
|
-
* Initializes a new instance of the JSDocChecker class.
|
|
29
|
-
* @param filePath The path to the TypeScript file to be checked.
|
|
30
|
-
*/
|
|
31
|
-
constructor(filePath: string);
|
|
32
|
-
/**
|
|
33
|
-
* Validates the JSDoc comments in the TypeScript file against the specified schema.
|
|
34
|
-
* Ensures that all required tags are present and optional tags are checked if relevant arrays are provided.
|
|
35
|
-
* @param slots Optional array of slot names to check for.
|
|
36
|
-
* @param parts Optional array of part names to check for.
|
|
37
|
-
* @param events Optional array of event names to check for.
|
|
38
|
-
* @param props Optional array of CSS properties to check for.
|
|
39
|
-
* @param dependencies Optional array of dependencies to check for.
|
|
40
|
-
* @returns An array of IJSDocCheckerResult containing class names and missing JSDoc tags.
|
|
41
|
-
*/
|
|
42
|
-
validate(slots?: Array<string>, parts?: Array<string>, events?: Array<string>, props?: Array<string>, dependencies?: Array<string>): Array<IJSDocCheckerResult>;
|
|
43
|
-
/**
|
|
44
|
-
* Fixes the JSDoc comment of a class declaration node to match the specified schema.
|
|
45
|
-
*
|
|
46
|
-
* @param name - The name to use in the JSDoc.
|
|
47
|
-
* @param element - The element name to use in the JSDoc.
|
|
48
|
-
* @param category - The category to use in the JSDoc.
|
|
49
|
-
* @param dependencies - An array of dependencies with their descriptions to be included in the JSDoc.
|
|
50
|
-
* @param description - The description to use in the JSDoc.
|
|
51
|
-
* @param slots - An array of slots with their descriptions to be included in the JSDoc.
|
|
52
|
-
* @param cssparts - An array of cssparts with their descriptions to be included in the JSDoc.
|
|
53
|
-
* @param cssprops - An array of cssprops with their descriptions to be included in the JSDoc.
|
|
54
|
-
* @param events - An array of events with their descriptions to be included in the JSDoc.
|
|
55
|
-
*/
|
|
56
|
-
fix(name: string, element: string, category: string, dependencies?: Array<{
|
|
57
|
-
name: string;
|
|
58
|
-
type: string;
|
|
59
|
-
description: string;
|
|
60
|
-
}>, description?: string, slots?: Array<{
|
|
61
|
-
name: string;
|
|
62
|
-
description: string;
|
|
63
|
-
}>, cssparts?: Array<{
|
|
64
|
-
name: string;
|
|
65
|
-
description: string;
|
|
66
|
-
}>, cssprops?: Array<{
|
|
67
|
-
name: string;
|
|
68
|
-
type: string;
|
|
69
|
-
description: string;
|
|
70
|
-
}>, events?: Array<{
|
|
71
|
-
name: string;
|
|
72
|
-
description: string;
|
|
73
|
-
}>): void;
|
|
74
|
-
/**
|
|
75
|
-
* Validates if the tag comment matches a specific format using a regex pattern.
|
|
76
|
-
*
|
|
77
|
-
* @param comment - The tag comment to validate.
|
|
78
|
-
* @param pattern - The regex pattern to match against.
|
|
79
|
-
* @returns True if the comment matches the pattern, false otherwise.
|
|
80
|
-
*/
|
|
81
|
-
private validateTagWithSpecificFormat;
|
|
82
|
-
/**
|
|
83
|
-
* Extracts JSDoc tags from the class declaration node.
|
|
84
|
-
* @param node The class declaration node.
|
|
85
|
-
* @returns An array of JSDoc tags found in the node.
|
|
86
|
-
*/
|
|
87
|
-
private extractJSDocTags;
|
|
88
|
-
/**
|
|
89
|
-
* Generates a correct JSDoc comment with the right order of attributes, including dynamic parts.
|
|
90
|
-
*
|
|
91
|
-
* @param name - The name to use in the JSDoc.
|
|
92
|
-
* @param element - The element name to use in the JSDoc.
|
|
93
|
-
* @param category - The category to use in the JSDoc.
|
|
94
|
-
* @param dependencies - An array of dependencies with their descriptions to be included in the JSDoc.
|
|
95
|
-
* @param description - The description to use in the JSDoc. Defaults to "TBD" if not provided.
|
|
96
|
-
* @param slots - An array of slots with their descriptions to be included in the JSDoc.
|
|
97
|
-
* @param cssparts - An array of cssparts with their descriptions to be included in the JSDoc.
|
|
98
|
-
* @param cssprops - An array of cssprops with their descriptions to be included in the JSDoc.
|
|
99
|
-
* @param events - An array of events with their descriptions to be included in the JSDoc.
|
|
100
|
-
* @returns A string containing the formatted JSDoc comment.
|
|
101
|
-
*/
|
|
102
|
-
private generateCorrectJSDoc;
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=JSDocChecker.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JSDocChecker.d.ts","sourceRoot":"","sources":["../../../src/executors/lit-docs/JSDocChecker.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,KAAK,CAAC,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,YAAY,CAAC,CAAC;IACrJ,cAAc,EAAE;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACrB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACxB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACxB,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;KAC9B,CAAC;IACF,YAAY,EAAE;QACV,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5B,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5B,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;KAC9B,CAAC;CACL;AAED;;;GAGG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC;;;OAGG;gBACgB,QAAQ,EAAE,MAAM;IAKnC;;;;;;;;;OASG;IACI,QAAQ,CACX,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EACrB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EACrB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EACtB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EACrB,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAC7B,KAAK,CAAC,mBAAmB,CAAC;IAoF7B;;;;;;;;;;;;OAYG;IACI,GAAG,CACN,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,YAAY,GAAE,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACvB,CAAM,EACP,WAAW,GAAE,MAAc,EAC3B,KAAK,GAAE,KAAK,CAAC;QACT,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACvB,CAAM,EACP,QAAQ,GAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACvB,CAAM,EACP,QAAQ,GAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACvB,CAAM,EACP,MAAM,GAAE,KAAK,CAAC;QACV,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACvB,CAAM,GACR,IAAI;IA+CP;;;;;;OAMG;IACH,OAAO,CAAC,6BAA6B;IAOrC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,oBAAoB;CAgE/B"}
|