@lmcuong29/lublue-cli 1.1.0-beta.3

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.
Files changed (77) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +10 -0
  3. package/dist/commands/login.d.ts +3 -0
  4. package/dist/commands/login.d.ts.map +1 -0
  5. package/dist/commands/login.js +5 -0
  6. package/dist/commands/login.js.map +1 -0
  7. package/dist/commands/logout.d.ts +3 -0
  8. package/dist/commands/logout.d.ts.map +1 -0
  9. package/dist/commands/logout.js +51 -0
  10. package/dist/commands/logout.js.map +1 -0
  11. package/dist/commands/select.d.ts +3 -0
  12. package/dist/commands/select.d.ts.map +1 -0
  13. package/dist/commands/select.js +19 -0
  14. package/dist/commands/select.js.map +1 -0
  15. package/dist/commands/theme.d.ts +3 -0
  16. package/dist/commands/theme.d.ts.map +1 -0
  17. package/dist/commands/theme.js +222 -0
  18. package/dist/commands/theme.js.map +1 -0
  19. package/dist/commands/whoiam.d.ts +3 -0
  20. package/dist/commands/whoiam.d.ts.map +1 -0
  21. package/dist/commands/whoiam.js +64 -0
  22. package/dist/commands/whoiam.js.map +1 -0
  23. package/dist/config/app-config.d.ts +3 -0
  24. package/dist/config/app-config.d.ts.map +1 -0
  25. package/dist/config/app-config.js +7 -0
  26. package/dist/config/app-config.js.map +1 -0
  27. package/dist/config/config.json +63 -0
  28. package/dist/helper/auth.d.ts +6 -0
  29. package/dist/helper/auth.d.ts.map +1 -0
  30. package/dist/helper/auth.js +146 -0
  31. package/dist/helper/auth.js.map +1 -0
  32. package/dist/helper/axios_hrv.d.ts +3 -0
  33. package/dist/helper/axios_hrv.d.ts.map +1 -0
  34. package/dist/helper/axios_hrv.js +82 -0
  35. package/dist/helper/axios_hrv.js.map +1 -0
  36. package/dist/helper/check_version.d.ts +8 -0
  37. package/dist/helper/check_version.d.ts.map +1 -0
  38. package/dist/helper/check_version.js +55 -0
  39. package/dist/helper/check_version.js.map +1 -0
  40. package/dist/helper/conf.d.ts +30 -0
  41. package/dist/helper/conf.d.ts.map +1 -0
  42. package/dist/helper/conf.js +93 -0
  43. package/dist/helper/conf.js.map +1 -0
  44. package/dist/helper/constants.d.ts +5 -0
  45. package/dist/helper/constants.d.ts.map +1 -0
  46. package/dist/helper/constants.js +5 -0
  47. package/dist/helper/constants.js.map +1 -0
  48. package/dist/helper/dotfile.d.ts +14 -0
  49. package/dist/helper/dotfile.d.ts.map +1 -0
  50. package/dist/helper/dotfile.js +53 -0
  51. package/dist/helper/dotfile.js.map +1 -0
  52. package/dist/helper/files.d.ts +14 -0
  53. package/dist/helper/files.d.ts.map +1 -0
  54. package/dist/helper/files.js +431 -0
  55. package/dist/helper/files.js.map +1 -0
  56. package/dist/helper/haravan-cli-error.d.ts +4 -0
  57. package/dist/helper/haravan-cli-error.d.ts.map +1 -0
  58. package/dist/helper/haravan-cli-error.js +10 -0
  59. package/dist/helper/haravan-cli-error.js.map +1 -0
  60. package/dist/helper/haravan_api.d.ts +9 -0
  61. package/dist/helper/haravan_api.d.ts.map +1 -0
  62. package/dist/helper/haravan_api.js +192 -0
  63. package/dist/helper/haravan_api.js.map +1 -0
  64. package/dist/helper/messages.d.ts +21 -0
  65. package/dist/helper/messages.d.ts.map +1 -0
  66. package/dist/helper/messages.js +29 -0
  67. package/dist/helper/messages.js.map +1 -0
  68. package/dist/helper/utils.d.ts +9 -0
  69. package/dist/helper/utils.d.ts.map +1 -0
  70. package/dist/helper/utils.js +86 -0
  71. package/dist/helper/utils.js.map +1 -0
  72. package/dist/index.d.ts +3 -0
  73. package/dist/index.d.ts.map +1 -0
  74. package/dist/index.js +72 -0
  75. package/dist/index.js.map +1 -0
  76. package/package.json +74 -0
  77. package/tsconfig.json +34 -0
@@ -0,0 +1,146 @@
1
+ import { createServer } from "http";
2
+ import { HaravanCliError } from "./haravan-cli-error.js";
3
+ import { DOTFILE } from "./dotfile.js";
4
+ import { ERROR, LOG } from "./messages.js";
5
+ import { Issuer, custom, generators } from "openid-client";
6
+ import open from "open";
7
+ import enableDestroy from "server-destroy";
8
+ import config from "../config/app-config.js";
9
+ import { getProjectSettings } from "./utils.js";
10
+ export const authorize = async () => {
11
+ try {
12
+ // Grab a token from the credentials.
13
+ const dataParseCode = await authorizeWithLocalhost();
14
+ console.log(`${LOG.AUTH_SUCCESSFUL}\n`);
15
+ if (dataParseCode) {
16
+ let isExistFileAuth = await DOTFILE.AUTH(false).exists();
17
+ let readFileAuth;
18
+ if (isExistFileAuth) {
19
+ readFileAuth = await DOTFILE.AUTH(false).read();
20
+ readFileAuth[dataParseCode.orgid] = dataParseCode;
21
+ }
22
+ else {
23
+ readFileAuth = { [dataParseCode.orgid]: dataParseCode };
24
+ }
25
+ await DOTFILE.AUTH(false).write(readFileAuth);
26
+ await DOTFILE.PROJECT().write({
27
+ ...(await getProjectSettings()),
28
+ ...{ org_id: dataParseCode.orgid },
29
+ });
30
+ }
31
+ // console.log(LOG.SAVED_CREDS(Boolean(true)));
32
+ }
33
+ catch (error) {
34
+ if (error instanceof HaravanCliError) {
35
+ throw error;
36
+ }
37
+ throw new HaravanCliError(`${ERROR.UNAUTHORIZED}${error}`);
38
+ }
39
+ };
40
+ export const authorizeWithLocalhost = async () => {
41
+ const server = await new Promise((resolve) => {
42
+ const s = createServer();
43
+ enableDestroy(s);
44
+ s.listen(3300, () => resolve(s));
45
+ });
46
+ const authCode = await new Promise(async (resolve, reject) => {
47
+ server.on("request", (request, response) => {
48
+ var _a;
49
+ const urlParts = new URL((_a = request.url) !== null && _a !== void 0 ? _a : "", "http://localhost").searchParams;
50
+ const code = urlParts.get("code");
51
+ const error = urlParts.get("error");
52
+ if (code) {
53
+ resolve(code);
54
+ }
55
+ else {
56
+ reject(error);
57
+ }
58
+ response.end(LOG.AUTH_PAGE_SUCCESSFUL);
59
+ });
60
+ const authUrl = await getInstallURL();
61
+ console.log(LOG.AUTHORIZE(authUrl));
62
+ (async () => open(authUrl))();
63
+ });
64
+ server.destroy();
65
+ return await parseCode(authCode);
66
+ };
67
+ export const getOpenID = async (retry = 5) => {
68
+ try {
69
+ if (retry < 1)
70
+ return null;
71
+ const { client_id, client_secret } = config;
72
+ custom.setHttpOptionsDefaults({
73
+ timeout: 30000,
74
+ });
75
+ let _issuerURI = config.openid.issuer;
76
+ const issuer = await Issuer.discover(_issuerURI);
77
+ const client = new issuer.Client({
78
+ client_id: client_id,
79
+ client_secret: client_secret,
80
+ });
81
+ client[custom.clock_tolerance] = 30;
82
+ let nonce = config.nonce || generators.nonce();
83
+ if (issuer && client && nonce) {
84
+ return {
85
+ issuer,
86
+ client,
87
+ nonce,
88
+ };
89
+ }
90
+ return await getOpenID(retry - 1);
91
+ }
92
+ catch (err) {
93
+ return await getOpenID(retry - 1);
94
+ }
95
+ };
96
+ export const getInstallURL = async () => {
97
+ try {
98
+ const openID = await getOpenID();
99
+ let installURL = "";
100
+ if (openID) {
101
+ if (config) {
102
+ const { scope_install, response_types, response_mode } = config;
103
+ installURL = await openID.client.authorizationUrl({
104
+ scope: scope_install.join(" ").toString(),
105
+ redirect_uri: config.install_callback_url,
106
+ response_mode: response_mode?.join(" ").toString(),
107
+ response_type: response_types?.join(" ").toString(),
108
+ nonce: openID.nonce,
109
+ prompt: "login",
110
+ });
111
+ }
112
+ }
113
+ return installURL;
114
+ }
115
+ catch (err) {
116
+ return "";
117
+ }
118
+ };
119
+ export const parseCode = async (code) => {
120
+ try {
121
+ let tokenSet = null;
122
+ const openID = await getOpenID();
123
+ if (openID) {
124
+ tokenSet = await openID.client.callback(config.install_callback_url, {
125
+ code: String(code),
126
+ }, {
127
+ nonce: config.nonce,
128
+ });
129
+ if (tokenSet && tokenSet.access_token) {
130
+ return {
131
+ access_token: tokenSet.access_token,
132
+ refresh_token: tokenSet.refresh_token,
133
+ ...tokenSet.claims(),
134
+ };
135
+ }
136
+ else {
137
+ console.error("Token is not found!!!");
138
+ }
139
+ return null;
140
+ }
141
+ }
142
+ catch (error) {
143
+ console.error("Server is error", error);
144
+ }
145
+ };
146
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/helper/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare const httpHrvAxios: import("axios").AxiosInstance;
2
+ export default httpHrvAxios;
3
+ //# sourceMappingURL=axios_hrv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axios_hrv.d.ts","sourceRoot":"","sources":["../../src/helper/axios_hrv.ts"],"names":[],"mappings":"AAiBA,QAAA,MAAM,YAAY,+BAAmB,CAAC;AAkFtC,eAAe,YAAY,CAAC"}
@@ -0,0 +1,82 @@
1
+ import axios from "axios";
2
+ import { createRequire } from "node:module";
3
+ import http from "node:http";
4
+ import https from "node:https";
5
+ import config from "../config/app-config.js";
6
+ import { getOAuthSettings } from "./utils.js";
7
+ import { DOTFILE } from "./dotfile.js";
8
+ import { getOpenID } from "./auth.js";
9
+ import _ from "lodash";
10
+ const require = createRequire(import.meta.url);
11
+ const authRefreshMod = require("axios-auth-refresh");
12
+ const createAuthRefreshInterceptor = authRefreshMod.default ?? authRefreshMod;
13
+ axios.defaults.httpAgent = new http.Agent({ family: 4 });
14
+ axios.defaults.httpsAgent = new https.Agent({ family: 4 });
15
+ const httpHrvAxios = axios.create({});
16
+ // httpHrvAxios.interceptors.request.use(async (request) => {
17
+ // let getSettingLocal = await DOTFILE.PROJECT().read();
18
+ // let getToken: any = await getOAuthSettings(false, getSettingLocal?.org_id);
19
+ // request.headers["Authorization"] = `Bearer ${getToken.access_token}`;
20
+ // request.headers["User-Agent"] = `onapp_${config.appslug}`;
21
+ // request.timeout = 2 * 1000;
22
+ // return request;
23
+ // });
24
+ httpHrvAxios.interceptors.response.use((response) => response, (error) => {
25
+ const status = error.response ? error.response.status : null;
26
+ if (error && error.config) {
27
+ error.config.retryConfig ??= _.cloneDeep(config.api_retries);
28
+ let _index = -1;
29
+ error.config.retryConfig = error.config.retryConfig.map((value, index) => {
30
+ if (value.httpStatusCode === status) {
31
+ value.limit -= 1;
32
+ _index = index;
33
+ }
34
+ else if (value.httpStatusCode === error.code) {
35
+ if (error.config.method.toLowerCase() === "get") {
36
+ value.limit -= 1;
37
+ _index = index;
38
+ }
39
+ }
40
+ return value;
41
+ });
42
+ if (_index !== -1) {
43
+ let retry = error.config.retryConfig[_index];
44
+ if (retry.limit > 0) {
45
+ return new Promise((resolve) => setTimeout(() => resolve(httpHrvAxios.request(error.config)), Number(retry.delay) * 300));
46
+ }
47
+ }
48
+ }
49
+ return Promise.reject(error);
50
+ });
51
+ const getRefreshedTokens = async (failedRequest) => {
52
+ const openID = await getOpenID();
53
+ let getSettingLocal = await DOTFILE.PROJECT().read();
54
+ let getToken = await getOAuthSettings(false, getSettingLocal?.org_id);
55
+ if (getToken && getToken.refresh_token) {
56
+ const tokenSet = await openID.client.refresh(`${getToken.refresh_token}`);
57
+ let readFileAuth = await DOTFILE.AUTH(false).read();
58
+ readFileAuth[getSettingLocal.org_id].access_token = tokenSet.access_token;
59
+ await DOTFILE.AUTH(false).write(readFileAuth);
60
+ failedRequest.response.config.headers["Authorization"] = "Bearer " + tokenSet.access_token;
61
+ }
62
+ else {
63
+ console.log("You need to login again");
64
+ }
65
+ return;
66
+ };
67
+ // axiosRetry(httpHrvAxios, {
68
+ // retries: 3,
69
+ // retryDelay: (retryCount) => {
70
+ // console.log(`retry attempt: ${retryCount}`);
71
+ // return 500;
72
+ // },
73
+ // retryCondition: (error: any) => {
74
+ // if (error.response.status === 429) {
75
+ // return true;
76
+ // }
77
+ // return true;
78
+ // },
79
+ // });
80
+ createAuthRefreshInterceptor(httpHrvAxios, getRefreshedTokens);
81
+ export default httpHrvAxios;
82
+ //# sourceMappingURL=axios_hrv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axios_hrv.js","sourceRoot":"","sources":["../../src/helper/axios_hrv.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,MAAM,MAAM,yBAAyB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,cAAc,GAAG,OAAO,CAAC,oBAAoB,CAA2C,CAAC;AAC/F,MAAM,4BAA4B,GAAG,cAAc,CAAC,OAAO,IAAK,cAAsB,CAAC;AAEvF,KAAK,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AACzD,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AAE3D,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEtC,6DAA6D;AAC7D,yDAAyD;AACzD,+EAA+E;AAC/E,yEAAyE;AACzE,8DAA8D;AAC9D,+BAA+B;AAC/B,mBAAmB;AACnB,MAAM;AAEN,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CACrC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EACtB,CAAC,KAAK,EAAE,EAAE;IACT,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7D,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,MAAM,CAAC,WAAW,KAAK,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAE7D,IAAI,MAAM,GAAW,CAAC,CAAC,CAAC;QACxB,KAAK,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,KAAU,EAAE,EAAE;YAClF,IAAI,KAAK,CAAC,cAAc,KAAK,MAAM,EAAE,CAAC;gBACrC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;gBACjB,MAAM,GAAG,KAAK,CAAC;YAChB,CAAC;iBAAM,IAAI,KAAK,CAAC,cAAc,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;gBAChD,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE,CAAC;oBACjD,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;oBACjB,MAAM,GAAG,KAAK,CAAC;gBAChB,CAAC;YACF,CAAC;YACD,OAAO,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YACnB,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;gBACrB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC9B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CACxF,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC,CACD,CAAC;AAEF,MAAM,kBAAkB,GAAG,KAAK,EAAE,aAAkB,EAAE,EAAE;IACvD,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,IAAI,eAAe,GAAQ,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;IAC1D,IAAI,QAAQ,GAAQ,MAAM,gBAAgB,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;IAE3E,IAAI,QAAQ,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;QAE1E,IAAI,YAAY,GAAQ,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QACzD,YAAY,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC1E,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAE9C,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC;IAC5F,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACxC,CAAC;IACD,OAAO;AACR,CAAC,CAAC;AAEF,6BAA6B;AAC7B,eAAe;AACf,iCAAiC;AACjC,iDAAiD;AACjD,gBAAgB;AAChB,MAAM;AACN,qCAAqC;AACrC,yCAAyC;AACzC,kBAAkB;AAClB,MAAM;AACN,iBAAiB;AACjB,MAAM;AACN,MAAM;AAEN,4BAA4B,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;AAE/D,eAAe,YAAY,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare const COLORS: {
2
+ Reset: string;
3
+ FgRed: string;
4
+ FgGreen: string;
5
+ };
6
+ declare function checkVersionPackage(): Promise<void>;
7
+ export default checkVersionPackage;
8
+ //# sourceMappingURL=check_version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check_version.d.ts","sourceRoot":"","sources":["../../src/helper/check_version.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,MAAM;;;;CAIlB,CAAC;AAeF,iBAAe,mBAAmB,kBAgCjC;AAED,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { fileURLToPath } from "node:url";
2
+ import { dirname } from "node:path";
3
+ import HaravanAPI from "./haravan_api.js";
4
+ import fs from "fs";
5
+ import path from "path";
6
+ const __dirname = dirname(fileURLToPath(import.meta.url));
7
+ export const COLORS = {
8
+ Reset: "\x1b[0m",
9
+ FgRed: "\x1b[31m",
10
+ FgGreen: "\x1b[32m",
11
+ };
12
+ function showLogUpgrade(pakName, verNew, verOld) {
13
+ let logVersion = ` ${pakName} ${verOld} → ${COLORS.FgRed}${verNew}${COLORS.Reset}`;
14
+ let logUpgrade = `Run ${COLORS.FgGreen}npm i -g ${pakName + "@latest"}${COLORS.Reset} to upgrade`;
15
+ let length = logVersion.length > logUpgrade.length ? logVersion.length - 5 : logUpgrade.length - 5;
16
+ console.log();
17
+ console.log("-".repeat(length));
18
+ console.log(COLORS.Reset, logVersion);
19
+ console.log();
20
+ console.log(COLORS.Reset, logUpgrade);
21
+ console.log("-".repeat(length));
22
+ console.log();
23
+ }
24
+ async function checkVersionPackage() {
25
+ try {
26
+ let selectNumberRandom = 1;
27
+ let min = 1;
28
+ let max = 10;
29
+ var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min;
30
+ if (randomNumber === selectNumberRandom) {
31
+ let jsonPackage = JSON.parse(fs.readFileSync(path.join(__dirname, "../../package.json"), "utf8"));
32
+ let pakName = String(jsonPackage.name);
33
+ let version = String(jsonPackage.version);
34
+ let result = await HaravanAPI.get(`https://registry.npmjs.org/${pakName}/latest`, "json", false);
35
+ if (result && result.version) {
36
+ let verNew = String(result.version)
37
+ .split(".")
38
+ .map((v) => Number(v));
39
+ let verOld = version.split(".").map((v) => Number(v));
40
+ if (verNew[0] > verOld[0]) {
41
+ return showLogUpgrade(pakName, String(result.version), version);
42
+ }
43
+ if (verNew[0] === verOld[0] && verNew[1] > verOld[1]) {
44
+ return showLogUpgrade(pakName, String(result.version), version);
45
+ }
46
+ if (verNew[0] === verOld[0] && verNew[1] === verOld[1] && verNew[2] > verOld[2]) {
47
+ return showLogUpgrade(pakName, String(result.version), version);
48
+ }
49
+ }
50
+ }
51
+ }
52
+ catch (error) { }
53
+ }
54
+ export default checkVersionPackage;
55
+ //# sourceMappingURL=check_version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check_version.js","sourceRoot":"","sources":["../../src/helper/check_version.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ export declare class Conf {
2
+ /**
3
+ * Private to prevent direct construction calls with the `new` operator.
4
+ */
5
+ _root: any;
6
+ _projectConfig: any;
7
+ _ignore: any;
8
+ _auth: any;
9
+ _authLocal: any;
10
+ static _instance: any;
11
+ constructor();
12
+ set projectRootDirectory(path: any);
13
+ get projectRootDirectory(): any;
14
+ set projectConfig(filePath: any);
15
+ get projectConfig(): any;
16
+ set ignore(path: any);
17
+ get ignore(): any;
18
+ set auth(path: any);
19
+ get auth(): any;
20
+ set authLocal(path: any);
21
+ get authLocal(): any;
22
+ buildPathOrUseEnv(filename: any, root: any, envName: any): string;
23
+ /**
24
+ * The static method that controls the access to the Conf singleton instance.
25
+ *
26
+ * @returns {Conf}
27
+ */
28
+ static get(): any;
29
+ }
30
+ //# sourceMappingURL=conf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conf.d.ts","sourceRoot":"","sources":["../../src/helper/conf.ts"],"names":[],"mappings":"AAaA,qBAAa,IAAI;IAChB;;OAEG;IACH,KAAK,EAAE,GAAG,CAAC;IACX,cAAc,EAAE,GAAG,CAAC;IACpB,OAAO,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,GAAG,CAAC;IACX,UAAU,EAAE,GAAG,CAAC;IAChB,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC;;IAGtB,IAAI,oBAAoB,CAAC,IAAI,KAAA,EAG5B;IACD,IAAI,oBAAoB,QAQvB;IACD,IAAI,aAAa,CAAC,QAAQ,KAAA,EAKzB;IACD,IAAI,aAAa,QAShB;IACD,IAAI,MAAM,CAAC,IAAI,KAAA,EAEd;IACD,IAAI,MAAM,QAKT;IACD,IAAI,IAAI,CAAC,IAAI,KAAA,EAEZ;IACD,IAAI,IAAI,QAKP;IACD,IAAI,SAAS,CAAC,IAAI,KAAA,EAEjB;IACD,IAAI,SAAS,QAKZ;IACD,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG;IAMxD;;;;OAIG;IACH,MAAM,CAAC,GAAG;CAMV"}
@@ -0,0 +1,93 @@
1
+ import os from "os";
2
+ import path from "path";
3
+ import { PROJECT_NAME } from "./constants.js";
4
+ /**
5
+ * Supported environment variables
6
+ */
7
+ var ENV;
8
+ (function (ENV) {
9
+ ENV["DOT_CLASP_AUTH"] = "haravan-cli_config_auth";
10
+ ENV["DOT_CLASP_IGNORE"] = "haravan-cli_config_ignore";
11
+ ENV["DOT_CLASP_PROJECT"] = "haravan-cli_config_project";
12
+ })(ENV || (ENV = {}));
13
+ export class Conf {
14
+ /**
15
+ * Private to prevent direct construction calls with the `new` operator.
16
+ */
17
+ _root;
18
+ _projectConfig;
19
+ _ignore;
20
+ _auth;
21
+ _authLocal;
22
+ static _instance;
23
+ constructor() { }
24
+ set projectRootDirectory(path) {
25
+ this._root = path;
26
+ this._projectConfig = undefined; // Force recalculation of path if root chanaged
27
+ }
28
+ get projectRootDirectory() {
29
+ if (this._root === undefined) {
30
+ // const configPath: any = findUp.sync(`.${PROJECT_NAME}_local.json`);
31
+ // this._root = configPath ? path.dirname(configPath) : process.cwd();
32
+ this._root = process.cwd();
33
+ }
34
+ return this._root;
35
+ }
36
+ set projectConfig(filePath) {
37
+ this._projectConfig = filePath;
38
+ if (filePath) {
39
+ this._root = path.dirname(filePath); // Root dir must be same dir as config
40
+ }
41
+ }
42
+ get projectConfig() {
43
+ if (this._projectConfig === undefined && this.projectRootDirectory) {
44
+ this._projectConfig = this.buildPathOrUseEnv(`.${PROJECT_NAME}_local.json`, this.projectRootDirectory, ENV.DOT_CLASP_PROJECT);
45
+ }
46
+ return this._projectConfig;
47
+ }
48
+ set ignore(path) {
49
+ this._ignore = path;
50
+ }
51
+ get ignore() {
52
+ if (this._ignore === undefined && this.projectRootDirectory) {
53
+ this._ignore = this.buildPathOrUseEnv(`.${PROJECT_NAME}ignore`, this.projectRootDirectory, ENV.DOT_CLASP_IGNORE);
54
+ }
55
+ return this._ignore;
56
+ }
57
+ set auth(path) {
58
+ this._auth = path;
59
+ }
60
+ get auth() {
61
+ if (this._auth === undefined) {
62
+ this._auth = this.buildPathOrUseEnv(`.${PROJECT_NAME}.json`, os.homedir(), ENV.DOT_CLASP_AUTH);
63
+ }
64
+ return this._auth;
65
+ }
66
+ set authLocal(path) {
67
+ this._authLocal = path;
68
+ }
69
+ get authLocal() {
70
+ if (this._authLocal === undefined && this.projectRootDirectory) {
71
+ this._authLocal = this.buildPathOrUseEnv(`.${PROJECT_NAME}.json`, this.projectRootDirectory, ENV.DOT_CLASP_AUTH);
72
+ }
73
+ return this._authLocal;
74
+ }
75
+ buildPathOrUseEnv(filename, root, envName) {
76
+ if (envName && process.env[envName] !== undefined) {
77
+ return process.env[envName];
78
+ }
79
+ return path.join(root, filename);
80
+ }
81
+ /**
82
+ * The static method that controls the access to the Conf singleton instance.
83
+ *
84
+ * @returns {Conf}
85
+ */
86
+ static get() {
87
+ if (!Conf._instance) {
88
+ Conf._instance = new Conf();
89
+ }
90
+ return Conf._instance;
91
+ }
92
+ }
93
+ //# sourceMappingURL=conf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conf.js","sourceRoot":"","sources":["../../src/helper/conf.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare const FS_OPTIONS: {
2
+ encoding: string;
3
+ };
4
+ export declare const PROJECT_NAME = "haravan-cli";
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/helper/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU;;CAAuB,CAAC;AAE/C,eAAO,MAAM,YAAY,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ // @see https://nodejs.org/api/fs.html#fs_fs_readfilesync_path_options
2
+ export const FS_OPTIONS = { encoding: "utf8" };
3
+ // Names / Paths
4
+ export const PROJECT_NAME = "haravan-cli";
5
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/helper/constants.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC/C,gBAAgB;AAChB,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC"}
@@ -0,0 +1,14 @@
1
+ export declare const DOTFILE: {
2
+ /**
3
+ * Gets the closest DOT.PROJECT.NAME in the parent directory of the directory
4
+ * that the command was run in.
5
+ * @return {Dotf} A dotf with that dotfile. Null if there is no file
6
+ */
7
+ PROJECT: () => any;
8
+ AUTH: (local: any) => any;
9
+ PATH_PROJECT: () => {
10
+ dir: string;
11
+ base: string;
12
+ } | undefined;
13
+ };
14
+ //# sourceMappingURL=dotfile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dotfile.d.ts","sourceRoot":"","sources":["../../src/helper/dotfile.ts"],"names":[],"mappings":"AAuBA,eAAO,MAAM,OAAO;IACnB;;;;OAIG;;kBAUW,GAAG;;;;;CAgBjB,CAAC"}
@@ -0,0 +1,53 @@
1
+ import { createRequire } from "node:module";
2
+ import path from "path";
3
+ import { Conf } from "./conf.js";
4
+ const require = createRequire(import.meta.url);
5
+ const dotf = require("dotf");
6
+ const config = Conf.get();
7
+ const defaultClaspignore = `# ignore all files…
8
+ **/**
9
+
10
+ # except the extensions…
11
+ !appsscript.json
12
+ !**/*.gs
13
+ !**/*.js
14
+ !**/*.ts
15
+ !**/*.html
16
+
17
+ # ignore even valid files if in…
18
+ .git/**
19
+ node_modules/**
20
+ `;
21
+ // Methods for retrieving dotfiles.
22
+ export const DOTFILE = {
23
+ /**
24
+ * Gets the closest DOT.PROJECT.NAME in the parent directory of the directory
25
+ * that the command was run in.
26
+ * @return {Dotf} A dotf with that dotfile. Null if there is no file
27
+ */
28
+ PROJECT: () => {
29
+ // ! TODO: currently limited if filename doesn't start with a dot '.'
30
+ const { dir, base } = path.parse(config.projectConfig);
31
+ if (base.startsWith(".")) {
32
+ return dotf(dir || ".", base.slice(1));
33
+ }
34
+ throw new Error("Project file must start with a dot (i.e. .clasp.json)");
35
+ },
36
+ // Stores {ClaspCredentials}
37
+ AUTH: (local) => {
38
+ const configPath = local ? config.authLocal : config.auth;
39
+ // ! TODO: currently limited if filename doesn't start with a dot '.'
40
+ const { dir, base } = path.parse(configPath);
41
+ if (base.startsWith(".")) {
42
+ return dotf(dir || ".", base.slice(1));
43
+ }
44
+ throw new Error("Auth file must start with a dot (i.e. .clasp.json)");
45
+ },
46
+ PATH_PROJECT: () => {
47
+ const { dir, base } = path.parse(config.projectConfig);
48
+ if (base.startsWith(".")) {
49
+ return { dir, base };
50
+ }
51
+ },
52
+ };
53
+ //# sourceMappingURL=dotfile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dotfile.js","sourceRoot":"","sources":["../../src/helper/dotfile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAQ,CAAC;AAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AAC1B,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;CAa1B,CAAC;AACF,mCAAmC;AACnC,MAAM,CAAC,MAAM,OAAO,GAAG;IACtB;;;;OAIG;IACH,OAAO,EAAE,GAAG,EAAE;QACb,qEAAqE;QACrE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC1E,CAAC;IACD,4BAA4B;IAC5B,IAAI,EAAE,CAAC,KAAU,EAAE,EAAE;QACpB,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QAC1D,qEAAqE;QACrE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACvE,CAAC;IAED,YAAY,EAAE,GAAG,EAAE;QAClB,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;QACtB,CAAC;IACF,CAAC;CACD,CAAC"}
@@ -0,0 +1,14 @@
1
+ export declare const writeProjectFilesToTmp: (files: any, rootDir?: string) => Promise<void>;
2
+ export declare const logFileList: (files: any) => void;
3
+ export declare const processingPullThemesAsync: (id: any, token: any) => Promise<any>;
4
+ export declare const processingPullThemes: (id: any, token: any) => Promise<any>;
5
+ export declare const compressZipFolder: (tmpPathZip: string, fullPathZip: string) => Promise<unknown>;
6
+ export declare const removeFolder: (path: string) => Promise<unknown>;
7
+ export declare const processCompressZipFile: (fileName?: string) => Promise<void>;
8
+ export declare const processPullFile: (listAssets: any) => Promise<void>;
9
+ export declare const deleteFolderTheme: (path: string) => Promise<unknown>;
10
+ export declare const copyThemeToFolder: (path: string, toPath: string) => Promise<unknown>;
11
+ export declare const checkFilePush: (filePath: string) => Promise<boolean>;
12
+ export declare const processingPushFile: (filePath: string, token: any) => Promise<boolean>;
13
+ export declare const compareFileAndRemove: (tmpPathPull: string, pathProject: string, listAssets: any) => Promise<unknown>;
14
+ //# sourceMappingURL=files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/helper/files.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,sBAAsB,UAAiB,GAAG,oCAgCtD,CAAC;AAEF,eAAO,MAAM,WAAW,UAAW,GAAG,SAAmE,CAAC;AAE1G,eAAO,MAAM,yBAAyB,OAAc,GAAG,SAAS,GAAG,iBAiGlE,CAAC;AAEF,eAAO,MAAM,oBAAoB,OAAc,GAAG,SAAS,GAAG,iBAwH7D,CAAC;AAEF,eAAO,MAAM,iBAAiB,eAAsB,MAAM,eAAe,MAAM,qBAO9E,CAAC;AAEF,eAAO,MAAM,YAAY,SAAgB,MAAM,qBAM9C,CAAC;AAEF,eAAO,MAAM,sBAAsB,cAAoB,MAAM,kBA0B5D,CAAC;AAEF,eAAO,MAAM,eAAe,eAAsB,GAAG,kBAapD,CAAC;AAEF,eAAO,MAAM,iBAAiB,SAAgB,MAAM,qBAenD,CAAC;AAEF,eAAO,MAAM,iBAAiB,SAAgB,MAAM,UAAU,MAAM,qBAsBnE,CAAC;AAEF,eAAO,MAAM,aAAa,aAAoB,MAAM,qBAanD,CAAC;AAEF,eAAO,MAAM,kBAAkB,aAAoB,MAAM,SAAS,GAAG,qBAsBpE,CAAC;AAcF,eAAO,MAAM,oBAAoB,gBAAuB,MAAM,eAAe,MAAM,cAAc,GAAG,qBAmDnG,CAAC"}