hunter-mate 0.1.19 → 0.1.20
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/dist/assets/extension/background/{service-worker.20261008011501.js → service-worker.20261015103433.js} +6 -6
- package/dist/assets/extension/background/service-worker.js +6 -6
- package/dist/assets/extension/build-info.json +1 -1
- package/dist/assets/extension/content/index.js +2 -2
- package/dist/assets/extension/manifest.json +3 -3
- package/dist/assets/extension/offscreen/offscreen.html +1 -1
- package/dist/assets/extension/offscreen/offscreen.js +2 -2
- package/dist/assets/extension/package.json +1 -1
- package/dist/assets/server/chunks/{chunk-IXYSL3NT.mjs → chunk-BLXHCSZD.mjs} +8 -10
- package/dist/assets/server/chunks/{script-rule-ANR2J7E6.mjs → script-rule-ZJN6CEYX.mjs} +1 -1
- package/dist/assets/server/main.mjs +4087 -2872
- package/dist/index.js +231 -52
- package/dist/web/dist/404.html +1 -1
- package/dist/web/dist/_next/static/2fPtjfAzNbYkpIoAQOsP3/_buildManifest.js +1 -0
- package/dist/web/dist/_next/static/chunks/105-dcd8f6d5867c8995.js +32 -0
- package/dist/web/dist/_next/static/chunks/166.b263e636ff66212f.js +1 -0
- package/dist/web/dist/_next/static/chunks/1e6d5a0c.75afa2d319272f42.js +15 -0
- package/dist/web/dist/_next/static/chunks/555-e2a871b9d2eccb03.js +12 -0
- package/dist/web/dist/_next/static/chunks/589-f984bff035a1cb85.js +1 -0
- package/dist/web/dist/_next/static/chunks/671.ae431f885d6c7f0c.js +1 -0
- package/dist/web/dist/_next/static/chunks/686-9f419b70feea9470.js +1 -0
- package/dist/web/dist/_next/static/chunks/852-248884963a986600.js +1 -0
- package/dist/web/dist/_next/static/chunks/865-0ed23dd43c0832a2.js +1 -0
- package/dist/web/dist/_next/static/chunks/935-7be3e60dd8bc29d2.js +5 -0
- package/dist/web/dist/_next/static/chunks/954-fb0212fe71f60a52.js +1 -0
- package/dist/web/dist/_next/static/chunks/a7067448-e416655baf443992.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/_not-found/page-5b7249eb3c9a6cb9.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/admin/data/page-14698e9c4ddaa6d9.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/auth/verify/page-05304d5803008d61.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/companies/page-ec27ce9ab3610221.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/company/admin/page-c2584183bc4b34d1.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/entity/page-08755f96102f0565.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/jobs/page-4175a90f1b42f87d.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/layout-af39afc7866e74db.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/logs/page-be50a4e10b1a0024.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/matching/jobs/[id]/talents/page-cf445b0cb8c2cb0a.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/matching/portraits/[id]/jobs/page-c7ff0d79b6a75915.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/page-bd282e1e5f0965f1.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/parselog/page-9814e75d6900a743.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/recordings/page-441016638b43c4f8.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/resource-usage/page-f6fa06bfe21bcd32.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/shared/[token]/page-c9c5042a2d07c0bc.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/snapshots/[id]/agent-prompt/page-f54cf2f0058035ca.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/talents/page-c0a0c250eb5f5459.js +1 -0
- package/dist/web/dist/_next/static/chunks/app/team/insights/page-8b3934df3e292368.js +1 -0
- package/dist/web/dist/_next/static/chunks/framework-8aa939434277315a.js +1 -0
- package/dist/web/dist/_next/static/chunks/main-8a2c75d6c43385dd.js +1 -0
- package/dist/web/dist/_next/static/chunks/main-app-f496bd51a73ef9f3.js +1 -0
- package/dist/web/dist/_next/static/chunks/pages/_app-037e1cd81d653e68.js +4 -0
- package/dist/web/dist/_next/static/chunks/pages/_error-59095d3b83385d1f.js +1 -0
- package/dist/web/dist/_next/static/chunks/{webpack-cf21e951181fd345.js → webpack-54e74ccc9e9451ee.js} +1 -1
- package/dist/web/dist/_next/static/css/bd072fee69ae8474.css +3 -0
- package/dist/web/dist/admin/data.html +1 -1
- package/dist/web/dist/admin/data.txt +8 -6
- package/dist/web/dist/auth/verify.html +1 -1
- package/dist/web/dist/auth/verify.txt +8 -6
- package/dist/web/dist/companies.html +1 -1
- package/dist/web/dist/companies.txt +9 -7
- package/dist/web/dist/company/admin.html +1 -1
- package/dist/web/dist/company/admin.txt +8 -6
- package/dist/web/dist/entity.html +1 -1
- package/dist/web/dist/entity.txt +9 -7
- package/dist/web/dist/index.html +1 -1
- package/dist/web/dist/index.txt +9 -7
- package/dist/web/dist/jobs.html +1 -1
- package/dist/web/dist/jobs.txt +9 -7
- package/dist/web/dist/logs.html +1 -1
- package/dist/web/dist/logs.txt +9 -7
- package/dist/web/dist/matching/jobs/placeholder/talents.html +1 -1
- package/dist/web/dist/matching/jobs/placeholder/talents.txt +8 -6
- package/dist/web/dist/matching/portraits/placeholder/jobs.html +1 -1
- package/dist/web/dist/matching/portraits/placeholder/jobs.txt +8 -6
- package/dist/web/dist/parselog.html +1 -1
- package/dist/web/dist/parselog.txt +9 -7
- package/dist/web/dist/recordings.html +1 -1
- package/dist/web/dist/recordings.txt +9 -7
- package/dist/web/dist/resource-usage.html +1 -1
- package/dist/web/dist/resource-usage.txt +9 -7
- package/dist/web/dist/shared/placeholder.html +1 -1
- package/dist/web/dist/shared/placeholder.txt +8 -6
- package/dist/web/dist/snapshots/placeholder/agent-prompt.html +1 -1
- package/dist/web/dist/snapshots/placeholder/agent-prompt.txt +8 -6
- package/dist/web/dist/talents.html +1 -1
- package/dist/web/dist/talents.txt +8 -6
- package/dist/web/dist/team/insights.html +1 -1
- package/dist/web/dist/team/insights.txt +8 -6
- package/package.json +1 -1
- package/dist/web/dist/_next/static/9Wm8FfXwBJyMk-wYf4l81/_buildManifest.js +0 -1
- package/dist/web/dist/_next/static/chunks/166.f30be223f694f8ee.js +0 -1
- package/dist/web/dist/_next/static/chunks/1e6d5a0c.0488932e17ecdf24.js +0 -15
- package/dist/web/dist/_next/static/chunks/542-4a43545450151f1d.js +0 -1
- package/dist/web/dist/_next/static/chunks/589-5e99e548a0ee6bac.js +0 -1
- package/dist/web/dist/_next/static/chunks/670-750aa43678fb0d30.js +0 -1
- package/dist/web/dist/_next/static/chunks/671.3b8e9cc96b25b6ea.js +0 -1
- package/dist/web/dist/_next/static/chunks/686-ade57c57a1737818.js +0 -1
- package/dist/web/dist/_next/static/chunks/852-5150a7ae95a599fb.js +0 -1
- package/dist/web/dist/_next/static/chunks/935-4058f12c3d405b32.js +0 -5
- package/dist/web/dist/_next/static/chunks/a7067448-d3882c7e74c162bf.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/_not-found/page-cf5ab201496f0914.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/admin/data/page-a566c6b13c61f9d4.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/auth/verify/page-38fa28a48f76defa.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/companies/page-058047767bc162f4.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/company/admin/page-a2088b59c3820800.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/entity/page-dc9664fb628e2d08.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/jobs/page-4fb6a67d044b238d.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/layout-1feb99bf08beb3c8.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/logs/page-ccc6bb863cf77e56.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/matching/jobs/[id]/talents/page-c6714cec1ffd7c5e.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/matching/portraits/[id]/jobs/page-658eca1ae5ca29dc.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/page-291cd145a56bd020.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/parselog/page-b1b7ae9483273ce0.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/recordings/page-c12948f01885099e.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/resource-usage/page-8394e96892688180.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/shared/[token]/page-e859e87f2301b120.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/snapshots/[id]/agent-prompt/page-f519552be54e3bdf.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/talents/page-75af05473ea322d9.js +0 -1
- package/dist/web/dist/_next/static/chunks/app/team/insights/page-7b8769e35cd9987b.js +0 -1
- package/dist/web/dist/_next/static/chunks/framework-b3a558b17a070965.js +0 -1
- package/dist/web/dist/_next/static/chunks/main-8d45182e1c21cb95.js +0 -1
- package/dist/web/dist/_next/static/chunks/main-app-70da092dee991648.js +0 -1
- package/dist/web/dist/_next/static/chunks/pages/_app-8438560f1c1a7980.js +0 -4
- package/dist/web/dist/_next/static/chunks/pages/_error-17756f67e0a11350.js +0 -1
- package/dist/web/dist/_next/static/css/9eaf0c9cc1c24641.css +0 -3
- /package/dist/web/dist/_next/static/{9Wm8FfXwBJyMk-wYf4l81 → 2fPtjfAzNbYkpIoAQOsP3}/_ssgManifest.js +0 -0
package/dist/index.js
CHANGED
|
@@ -4744,14 +4744,14 @@ var require_templates = __commonJS({
|
|
|
4744
4744
|
}
|
|
4745
4745
|
return results;
|
|
4746
4746
|
}
|
|
4747
|
-
function buildStyle(
|
|
4747
|
+
function buildStyle(chalk5, styles) {
|
|
4748
4748
|
const enabled = {};
|
|
4749
4749
|
for (const layer of styles) {
|
|
4750
4750
|
for (const style of layer.styles) {
|
|
4751
4751
|
enabled[style[0]] = layer.inverse ? null : style.slice(1);
|
|
4752
4752
|
}
|
|
4753
4753
|
}
|
|
4754
|
-
let current =
|
|
4754
|
+
let current = chalk5;
|
|
4755
4755
|
for (const [styleName, styles2] of Object.entries(enabled)) {
|
|
4756
4756
|
if (!Array.isArray(styles2)) {
|
|
4757
4757
|
continue;
|
|
@@ -4763,7 +4763,7 @@ var require_templates = __commonJS({
|
|
|
4763
4763
|
}
|
|
4764
4764
|
return current;
|
|
4765
4765
|
}
|
|
4766
|
-
module2.exports = (
|
|
4766
|
+
module2.exports = (chalk5, temporary) => {
|
|
4767
4767
|
const styles = [];
|
|
4768
4768
|
const chunks = [];
|
|
4769
4769
|
let chunk = [];
|
|
@@ -4773,13 +4773,13 @@ var require_templates = __commonJS({
|
|
|
4773
4773
|
} else if (style) {
|
|
4774
4774
|
const string = chunk.join("");
|
|
4775
4775
|
chunk = [];
|
|
4776
|
-
chunks.push(styles.length === 0 ? string : buildStyle(
|
|
4776
|
+
chunks.push(styles.length === 0 ? string : buildStyle(chalk5, styles)(string));
|
|
4777
4777
|
styles.push({ inverse, styles: parseStyle(style) });
|
|
4778
4778
|
} else if (close2) {
|
|
4779
4779
|
if (styles.length === 0) {
|
|
4780
4780
|
throw new Error("Found extraneous } in Chalk template literal");
|
|
4781
4781
|
}
|
|
4782
|
-
chunks.push(buildStyle(
|
|
4782
|
+
chunks.push(buildStyle(chalk5, styles)(chunk.join("")));
|
|
4783
4783
|
chunk = [];
|
|
4784
4784
|
styles.pop();
|
|
4785
4785
|
} else {
|
|
@@ -4827,16 +4827,16 @@ var require_source = __commonJS({
|
|
|
4827
4827
|
}
|
|
4828
4828
|
};
|
|
4829
4829
|
var chalkFactory = (options) => {
|
|
4830
|
-
const
|
|
4831
|
-
applyOptions(
|
|
4832
|
-
|
|
4833
|
-
Object.setPrototypeOf(
|
|
4834
|
-
Object.setPrototypeOf(
|
|
4835
|
-
|
|
4830
|
+
const chalk6 = {};
|
|
4831
|
+
applyOptions(chalk6, options);
|
|
4832
|
+
chalk6.template = (...arguments_) => chalkTag(chalk6.template, ...arguments_);
|
|
4833
|
+
Object.setPrototypeOf(chalk6, Chalk.prototype);
|
|
4834
|
+
Object.setPrototypeOf(chalk6.template, chalk6);
|
|
4835
|
+
chalk6.template.constructor = () => {
|
|
4836
4836
|
throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.");
|
|
4837
4837
|
};
|
|
4838
|
-
|
|
4839
|
-
return
|
|
4838
|
+
chalk6.template.Instance = ChalkClass;
|
|
4839
|
+
return chalk6.template;
|
|
4840
4840
|
};
|
|
4841
4841
|
function Chalk(options) {
|
|
4842
4842
|
return chalkFactory(options);
|
|
@@ -4947,7 +4947,7 @@ var require_source = __commonJS({
|
|
|
4947
4947
|
return openAll + string + closeAll;
|
|
4948
4948
|
};
|
|
4949
4949
|
var template;
|
|
4950
|
-
var chalkTag = (
|
|
4950
|
+
var chalkTag = (chalk6, ...strings) => {
|
|
4951
4951
|
const [firstString] = strings;
|
|
4952
4952
|
if (!isArray2(firstString) || !isArray2(firstString.raw)) {
|
|
4953
4953
|
return strings.join(" ");
|
|
@@ -4963,14 +4963,14 @@ var require_source = __commonJS({
|
|
|
4963
4963
|
if (template === void 0) {
|
|
4964
4964
|
template = require_templates();
|
|
4965
4965
|
}
|
|
4966
|
-
return template(
|
|
4966
|
+
return template(chalk6, parts.join(""));
|
|
4967
4967
|
};
|
|
4968
4968
|
Object.defineProperties(Chalk.prototype, styles);
|
|
4969
|
-
var
|
|
4970
|
-
|
|
4971
|
-
|
|
4972
|
-
|
|
4973
|
-
module2.exports =
|
|
4969
|
+
var chalk5 = Chalk();
|
|
4970
|
+
chalk5.supportsColor = stdoutColor;
|
|
4971
|
+
chalk5.stderr = Chalk({ level: stderrColor ? stderrColor.level : 0 });
|
|
4972
|
+
chalk5.stderr.supportsColor = stderrColor;
|
|
4973
|
+
module2.exports = chalk5;
|
|
4974
4974
|
}
|
|
4975
4975
|
});
|
|
4976
4976
|
|
|
@@ -68795,7 +68795,7 @@ async function ensureRuntimeConsistency(opts = {}) {
|
|
|
68795
68795
|
}
|
|
68796
68796
|
markChecked();
|
|
68797
68797
|
if (opts.verbose && performed.length) {
|
|
68798
|
-
for (const line of performed) console.log(
|
|
68798
|
+
for (const line of performed) console.log(import_chalk2.default.gray(` [auto-update] ${line}`));
|
|
68799
68799
|
}
|
|
68800
68800
|
return { checked: true, actions, performed };
|
|
68801
68801
|
}
|
|
@@ -68814,12 +68814,12 @@ function markChecked() {
|
|
|
68814
68814
|
} catch {
|
|
68815
68815
|
}
|
|
68816
68816
|
}
|
|
68817
|
-
var
|
|
68817
|
+
var import_chalk2, __filename, __dirname5, ROOT, PLUGINS_DIR, EXTENSION_MANIFEST, EXTENSION_DIR, RUNTIME_FILE, LAST_CHECK_FILE, LAST_EXT_RELOAD_BROADCAST_FILE, CHECK_THROTTLE_MS;
|
|
68818
68818
|
var init_version3 = __esm({
|
|
68819
68819
|
"src/version.ts"() {
|
|
68820
68820
|
"use strict";
|
|
68821
68821
|
init_axios2();
|
|
68822
|
-
|
|
68822
|
+
import_chalk2 = __toESM(require_source(), 1);
|
|
68823
68823
|
init_config2();
|
|
68824
68824
|
init_server();
|
|
68825
68825
|
init_extras();
|
|
@@ -69071,7 +69071,7 @@ import { spawnSync as spawnSync3 } from "node:child_process";
|
|
|
69071
69071
|
import { fileURLToPath as fileURLToPath5 } from "node:url";
|
|
69072
69072
|
async function fetchCdnLatestManifest() {
|
|
69073
69073
|
try {
|
|
69074
|
-
const res = await axios_default.get(`${CDN_RELEASES_BASE}/latest.json`, { timeout: 1e4, proxy: false });
|
|
69074
|
+
const res = await axios_default.get(`${CDN_RELEASES_BASE}/latest.json?_=${Date.now()}`, { timeout: 1e4, proxy: false });
|
|
69075
69075
|
const m = res.data;
|
|
69076
69076
|
if (m && typeof m.version === "string" && m.version && typeof m.tgz === "string" && m.tgz) return m;
|
|
69077
69077
|
return null;
|
|
@@ -69385,7 +69385,7 @@ var init_updater2 = __esm({
|
|
|
69385
69385
|
__dirname6 = path18.dirname(fileURLToPath5(import.meta.url));
|
|
69386
69386
|
ROOT2 = resolveDataDir;
|
|
69387
69387
|
CLI_PREFIX = () => path18.join(ROOT2(), "cli");
|
|
69388
|
-
CDN_RELEASES_BASE = process.env.HUNTER_MATE_CDN_BASE || "https://
|
|
69388
|
+
CDN_RELEASES_BASE = process.env.HUNTER_MATE_CDN_BASE || "https://npm.hiredchina.com/packages/hunter-mate-releases";
|
|
69389
69389
|
kitUpdater = createCliUpdater({
|
|
69390
69390
|
npmPackage: "hunter-mate",
|
|
69391
69391
|
envPrefix: "HUNTER_MATE",
|
|
@@ -70289,7 +70289,7 @@ function cleanValue(v) {
|
|
|
70289
70289
|
function looseName(s) {
|
|
70290
70290
|
return s.trim().toLowerCase().replace(/\s+/g, " ");
|
|
70291
70291
|
}
|
|
70292
|
-
async function
|
|
70292
|
+
async function authedHeaders6() {
|
|
70293
70293
|
const token = await getToken().catch(() => void 0);
|
|
70294
70294
|
return token ? { Authorization: `UTOKEN ${token}` } : {};
|
|
70295
70295
|
}
|
|
@@ -70334,7 +70334,7 @@ async function maybeSyncHmhLocal() {
|
|
|
70334
70334
|
const persistState = () => writeState(state);
|
|
70335
70335
|
const config = loadConfig();
|
|
70336
70336
|
const serverUrl = config.serverUrl.replace(/\/$/, "");
|
|
70337
|
-
const headers = await
|
|
70337
|
+
const headers = await authedHeaders6();
|
|
70338
70338
|
const log3 = getCliLogger();
|
|
70339
70339
|
try {
|
|
70340
70340
|
const customersRes = await axios_default.get(`${serverUrl}/customers`, { headers, proxy: false, timeout: HTTP_TIMEOUT_MS });
|
|
@@ -70501,7 +70501,7 @@ var init_hmh_sync = __esm({
|
|
|
70501
70501
|
|
|
70502
70502
|
// src/index.ts
|
|
70503
70503
|
init_esm();
|
|
70504
|
-
var
|
|
70504
|
+
var import_chalk4 = __toESM(require_source(), 1);
|
|
70505
70505
|
|
|
70506
70506
|
// src/sentry.ts
|
|
70507
70507
|
init_dist();
|
|
@@ -70716,6 +70716,51 @@ var logoutCommand = new Command("logout").description(i18n.t("logout.description
|
|
|
70716
70716
|
console.log(i18n.t("logout.success"));
|
|
70717
70717
|
});
|
|
70718
70718
|
|
|
70719
|
+
// src/commands/token.ts
|
|
70720
|
+
init_esm();
|
|
70721
|
+
init_axios2();
|
|
70722
|
+
var import_chalk = __toESM(require_source(), 1);
|
|
70723
|
+
init_keychain();
|
|
70724
|
+
init_config2();
|
|
70725
|
+
var tokenCommand = new Command("token").description("\u8F93\u51FA\u5F53\u524D\u767B\u5F55\u6001\u7684 SaaS \u4EE4\u724C(HMJWT,\u9065\u6D4B/\u540C\u6B65\u4E0A\u62A5 dev-ops \u7684\u51ED\u8BC1)").option("--json", "JSON \u8F93\u51FA {token,email,hmUserId}", false).action(async (opts) => {
|
|
70726
|
+
let out;
|
|
70727
|
+
try {
|
|
70728
|
+
const session = await getSessionStatus();
|
|
70729
|
+
if (session.info && session.via === "server") {
|
|
70730
|
+
const serverUrl = loadConfig().serverUrl;
|
|
70731
|
+
const { data } = await axios_default.get(`${serverUrl}/auth/saas-token`, {
|
|
70732
|
+
headers: { Authorization: `UTOKEN ${session.info.token}` },
|
|
70733
|
+
proxy: false,
|
|
70734
|
+
timeout: 5e3
|
|
70735
|
+
});
|
|
70736
|
+
out = {
|
|
70737
|
+
token: String(data?.token ?? ""),
|
|
70738
|
+
email: String(data?.email ?? session.email ?? ""),
|
|
70739
|
+
hmUserId: typeof data?.hmUserId === "number" ? data.hmUserId : null
|
|
70740
|
+
};
|
|
70741
|
+
if (!out.token) throw new Error("server \u8FD4\u56DE\u7A7A\u4EE4\u724C");
|
|
70742
|
+
} else if (session.info && session.info.issuer === "saas") {
|
|
70743
|
+
out = { token: session.info.token, email: session.email ?? "", hmUserId: null };
|
|
70744
|
+
} else {
|
|
70745
|
+
console.error(import_chalk.default.red("\u672A\u767B\u5F55:\u8BF7\u8FD0\u884C hunter-mate login --email <\u90AE\u7BB1>"));
|
|
70746
|
+
process.exit(1);
|
|
70747
|
+
}
|
|
70748
|
+
} catch (e) {
|
|
70749
|
+
const status = e?.response?.status;
|
|
70750
|
+
console.error(
|
|
70751
|
+
import_chalk.default.red(
|
|
70752
|
+
status === 401 ? "\u767B\u5F55\u5DF2\u8FC7\u671F,\u8BF7\u91CD\u65B0\u8FD0\u884C hunter-mate login --email <\u90AE\u7BB1>" : `\u83B7\u53D6\u4EE4\u724C\u5931\u8D25: ${e?.message ?? e}`
|
|
70753
|
+
)
|
|
70754
|
+
);
|
|
70755
|
+
process.exit(1);
|
|
70756
|
+
}
|
|
70757
|
+
if (opts.json) {
|
|
70758
|
+
console.log(JSON.stringify(out));
|
|
70759
|
+
} else {
|
|
70760
|
+
console.log(out.token);
|
|
70761
|
+
}
|
|
70762
|
+
});
|
|
70763
|
+
|
|
70719
70764
|
// src/commands/status.ts
|
|
70720
70765
|
init_esm();
|
|
70721
70766
|
init_axios2();
|
|
@@ -71158,8 +71203,12 @@ jobCommand.command("create <folder>").description(i18n.t("job.create")).option("
|
|
|
71158
71203
|
process.exit(1);
|
|
71159
71204
|
}
|
|
71160
71205
|
});
|
|
71161
|
-
jobCommand.command("list").description("List JobCases (\u4F18\u5148 server,\u5931\u8D25\u515C\u5E95\u672C\u5730\u7F13\u5B58)").action(async () => {
|
|
71206
|
+
jobCommand.command("list").description("List JobCases (\u4F18\u5148 server,\u5931\u8D25\u515C\u5E95\u672C\u5730\u7F13\u5B58)").option("--json", "JSON \u8F93\u51FA(\u542B externalId,\u4F9B\u811A\u672C/hmh \u95E8\u7981\u53CD\u67E5\u804C\u4F4D id)", false).action(async (opts) => {
|
|
71162
71207
|
const cases = await runJobList();
|
|
71208
|
+
if (opts.json) {
|
|
71209
|
+
console.log(JSON.stringify(cases));
|
|
71210
|
+
return;
|
|
71211
|
+
}
|
|
71163
71212
|
console.table(cases.map((c) => ({ id: c.id, folder: c.parsedFrom?.folderPath ?? c.folderPath, status: c.status, createdAt: c.createdAt })));
|
|
71164
71213
|
});
|
|
71165
71214
|
|
|
@@ -71170,7 +71219,7 @@ init_config2();
|
|
|
71170
71219
|
init_keychain();
|
|
71171
71220
|
init_i18n();
|
|
71172
71221
|
init_logger3();
|
|
71173
|
-
var
|
|
71222
|
+
var import_chalk3 = __toESM(require_source(), 1);
|
|
71174
71223
|
init_version3();
|
|
71175
71224
|
init_updater2();
|
|
71176
71225
|
import * as fs18 from "fs";
|
|
@@ -71217,12 +71266,12 @@ function reportNativeCheck(prefix) {
|
|
|
71217
71266
|
const failed = native.modules.filter((m) => m.status === "fail");
|
|
71218
71267
|
for (const m of native.modules) {
|
|
71219
71268
|
if (m.status === "skip") {
|
|
71220
|
-
console.log(
|
|
71269
|
+
console.log(import_chalk3.default.gray(`${prefix}\u539F\u751F\u6A21\u5757 ${m.module}: \u8DF3\u8FC7(${m.detail})`));
|
|
71221
71270
|
} else if (m.status === "ok") {
|
|
71222
|
-
console.log(
|
|
71271
|
+
console.log(import_chalk3.default.gray(`${prefix}\u539F\u751F\u6A21\u5757 ${m.module}: ${m.detail}`));
|
|
71223
71272
|
} else {
|
|
71224
|
-
console.log(
|
|
71225
|
-
if (m.hint) console.log(
|
|
71273
|
+
console.log(import_chalk3.default.red(`${prefix}\u539F\u751F\u6A21\u5757 ${m.module}: ${m.detail}`));
|
|
71274
|
+
if (m.hint) console.log(import_chalk3.default.red(`${prefix} \u4FEE\u590D: ${m.hint}`));
|
|
71226
71275
|
}
|
|
71227
71276
|
}
|
|
71228
71277
|
return failed.length === 0;
|
|
@@ -71274,16 +71323,16 @@ var updateCommand = new Command("update").description(i18n.t("update.description
|
|
|
71274
71323
|
console.log(i18n.t("update.checking"));
|
|
71275
71324
|
const result = await runUpdate();
|
|
71276
71325
|
if (result.cliVersion) {
|
|
71277
|
-
console.log(
|
|
71326
|
+
console.log(import_chalk3.default.gray(`CLI/Server latest version: ${result.cliVersion}`));
|
|
71278
71327
|
} else {
|
|
71279
71328
|
getCliLogger().warn("update:cli-server-check-failed", {
|
|
71280
71329
|
hint: "Failed to check CLI/Server updates"
|
|
71281
71330
|
});
|
|
71282
71331
|
}
|
|
71283
71332
|
if (result.ruleUpdated) {
|
|
71284
|
-
console.log(
|
|
71333
|
+
console.log(import_chalk3.default.green(`New rule package available: ${result.ruleVersion}`));
|
|
71285
71334
|
} else if (result.ruleVersion) {
|
|
71286
|
-
console.log(
|
|
71335
|
+
console.log(import_chalk3.default.gray(`Rule package is up to date: ${result.ruleVersion}`));
|
|
71287
71336
|
} else {
|
|
71288
71337
|
getCliLogger().warn("update:rule-check-failed", {
|
|
71289
71338
|
hint: "Failed to check rule updates"
|
|
@@ -71296,34 +71345,34 @@ var updateCommand = new Command("update").description(i18n.t("update.description
|
|
|
71296
71345
|
const npmPackage = updateCfg.npmPackage ?? "hunter-mate";
|
|
71297
71346
|
const installed = readInstalledVersions();
|
|
71298
71347
|
if (channel3 === "off") {
|
|
71299
|
-
console.log(
|
|
71348
|
+
console.log(import_chalk3.default.gray(`update.channel=off\uFF0C\u8DF3\u8FC7 CLI \u81EA\u66F4\u65B0`));
|
|
71300
71349
|
} else if (isDevLinked()) {
|
|
71301
|
-
console.log(
|
|
71350
|
+
console.log(import_chalk3.default.gray(`dev \u8F6F\u94FE\u6A21\u5F0F\uFF0C\u8DF3\u8FC7 CLI \u81EA\u66F4\u65B0(\u6539\u4EE3\u7801\u8BF7 pnpm build)\uFF1B\u7EE7\u7EED\u6267\u884C\u4E00\u81F4\u6027\u4FEE\u590D`));
|
|
71302
71351
|
} else if (channel3 === "npm") {
|
|
71303
71352
|
const { version: latest, detail } = await npmLatestVersionRobust(npmPackage);
|
|
71304
71353
|
if (!latest) {
|
|
71305
|
-
console.log(
|
|
71354
|
+
console.log(import_chalk3.default.yellow(`npm registry \u67E5\u8BE2 ${npmPackage} \u5931\u8D25(${detail})\uFF0C\u8DF3\u8FC7\u81EA\u66F4\u65B0`));
|
|
71306
71355
|
} else if (latest === installed.cli) {
|
|
71307
|
-
console.log(
|
|
71356
|
+
console.log(import_chalk3.default.gray(`CLI \u5DF2\u662F\u6700\u65B0: ${installed.cli}`));
|
|
71308
71357
|
if (!reportNativeCheck("")) {
|
|
71309
|
-
console.log(
|
|
71358
|
+
console.log(import_chalk3.default.yellow(" \u7248\u672C\u867D\u6700\u65B0,\u4F46\u539F\u751F\u7ED1\u5B9A\u4E0D\u53EF\u7528 \u2014 \u8BF7\u6309\u4E0A\u65B9\u4FEE\u590D\u63D0\u793A\u5904\u7406,\u7136\u540E\u91CD\u8DD1 hunter-mate doctor \u590D\u6838"));
|
|
71310
71359
|
}
|
|
71311
71360
|
} else {
|
|
71312
|
-
console.log(
|
|
71361
|
+
console.log(import_chalk3.default.cyan(`CLI \u81EA\u66F4\u65B0: ${installed.cli} \u2192 ${latest}`));
|
|
71313
71362
|
const r = await npmSelfUpdate(npmPackage, latest);
|
|
71314
|
-
console.log(r.ok && r.verified !== false ?
|
|
71363
|
+
console.log(r.ok && r.verified !== false ? import_chalk3.default.green(r.msg) : import_chalk3.default.yellow(r.msg));
|
|
71315
71364
|
if (r.ok && !reportNativeCheck("\u88C5\u540E\u9A8C\u8BC1 \u2014 ")) {
|
|
71316
|
-
console.log(
|
|
71365
|
+
console.log(import_chalk3.default.yellow(" \u66F4\u65B0\u5DF2\u5B89\u88C5\u4F46\u539F\u751F\u7ED1\u5B9A\u4E0D\u53EF\u7528 \u2014 server \u5C06\u65E0\u6CD5\u542F\u52A8,\u8BF7\u6309\u4E0A\u65B9\u4FEE\u590D\u63D0\u793A\u5904\u7406"));
|
|
71317
71366
|
}
|
|
71318
71367
|
}
|
|
71319
71368
|
}
|
|
71320
71369
|
const report = await ensureRuntimeConsistency({ force: true, verbose: true });
|
|
71321
71370
|
if (!report.checked) {
|
|
71322
|
-
console.log(
|
|
71371
|
+
console.log(import_chalk3.default.gray(`\u4E00\u81F4\u6027\u68C0\u6D4B\u8DF3\u8FC7: ${report.reason ?? "server not running"}`));
|
|
71323
71372
|
} else if (report.performed.length) {
|
|
71324
|
-
for (const line of report.performed) console.log(
|
|
71373
|
+
for (const line of report.performed) console.log(import_chalk3.default.green(` \u2713 ${line}`));
|
|
71325
71374
|
} else {
|
|
71326
|
-
console.log(
|
|
71375
|
+
console.log(import_chalk3.default.gray("\u8FD0\u884C\u4E2D\u7248\u672C\u4E0E\u78C1\u76D8\u4E00\u81F4\uFF0C\u65E0\u9700 reload/\u91CD\u542F"));
|
|
71327
71376
|
}
|
|
71328
71377
|
}
|
|
71329
71378
|
console.log(i18n.t("update.latest"));
|
|
@@ -72246,12 +72295,14 @@ withFormat(recordingsCommand.command("list").description("\u5217\u51FA\u5F55\u52
|
|
|
72246
72295
|
process.exit(1);
|
|
72247
72296
|
}
|
|
72248
72297
|
});
|
|
72249
|
-
recordingsCommand.command("run <url>").description("\u811A\u672C\u9A71\u52A8\u5F55\u5236:\u6309 adapter.recording.operations \u6267\u884C\u5E76\u81EA\u52A8\u89E3\u6790(\u767D\u540D\u5355\u5916 URL \u62D2\u7EDD)").option("--adapter <file>", "\u6307\u5B9A adapter \u76F8\u5BF9\u8DEF\u5F84(\u9ED8\u8BA4\u53D6\u767D\u540D\u5355\u547D\u4E2D\u7684\u89C4\u5219 externalId)").option("--title <text>", "\u5F55\u5236\u6807\u9898").action(async (url2, opts) => {
|
|
72298
|
+
recordingsCommand.command("run <url>").description("\u811A\u672C\u9A71\u52A8\u5F55\u5236:\u6309 adapter.recording.operations \u6267\u884C\u5E76\u81EA\u52A8\u89E3\u6790(\u767D\u540D\u5355\u5916 URL \u62D2\u7EDD)").option("--adapter <file>", "\u6307\u5B9A adapter \u76F8\u5BF9\u8DEF\u5F84(\u9ED8\u8BA4\u53D6\u767D\u540D\u5355\u547D\u4E2D\u7684\u89C4\u5219 externalId)").option("--title <text>", "\u5F55\u5236\u6807\u9898").option("--ready-selector <css>", "\u76EE\u6807 DOM \u5C31\u7EEA\u9009\u62E9\u5668(\u505C\u5F55\u524D\u8F6E\u8BE2,\u8D85\u65F6 502 \u62D2\u7EDD\u534A\u6210\u54C1)").option("--ready-timeout <ms>", "\u5C31\u7EEA\u8F6E\u8BE2\u8D85\u65F6,\u9ED8\u8BA4 15000").action(async (url2, opts) => {
|
|
72250
72299
|
try {
|
|
72251
72300
|
const r = await http7().post("/api/recordings/run", {
|
|
72252
72301
|
url: url2,
|
|
72253
72302
|
adapter: opts.adapter,
|
|
72254
|
-
title: opts.title
|
|
72303
|
+
title: opts.title,
|
|
72304
|
+
readySelector: opts.readySelector,
|
|
72305
|
+
readyTimeoutMs: opts.readyTimeout ? Number(opts.readyTimeout) : void 0
|
|
72255
72306
|
});
|
|
72256
72307
|
console.log(JSON.stringify(r.data, null, 2));
|
|
72257
72308
|
} catch (e) {
|
|
@@ -73199,6 +73250,130 @@ caseCommand.command("check").requiredOption("--customer <nameOrId>", "\u5BA2\u62
|
|
|
73199
73250
|
}
|
|
73200
73251
|
});
|
|
73201
73252
|
|
|
73253
|
+
// src/commands/recommend.ts
|
|
73254
|
+
init_esm();
|
|
73255
|
+
init_axios2();
|
|
73256
|
+
init_config2();
|
|
73257
|
+
init_keychain();
|
|
73258
|
+
init_command_error();
|
|
73259
|
+
var recommendCommand = new Command("recommend").description(
|
|
73260
|
+
"\u804C\u4F4D\u63A8\u8350\u8BB0\u5F55:\u5BFB\u8BBF\u4EA4\u4ED8\u767B\u8BB0\u4E0E\u9636\u6BB5\u6D41\u8F6C(hm \u670D\u52A1\u7AEF\u534F\u4F5C\u4E8B\u5B9E\u6E90,\u975E\u672C\u673A\u6587\u4EF6)"
|
|
73261
|
+
);
|
|
73262
|
+
async function authedHeaders5() {
|
|
73263
|
+
const token = await getToken().catch(() => void 0);
|
|
73264
|
+
return token ? { Authorization: `UTOKEN ${token}` } : {};
|
|
73265
|
+
}
|
|
73266
|
+
function parseFormPairs(pairs) {
|
|
73267
|
+
if (!pairs) return void 0;
|
|
73268
|
+
const out = {};
|
|
73269
|
+
for (const kv of pairs.split(",")) {
|
|
73270
|
+
const i = kv.indexOf("=");
|
|
73271
|
+
if (i <= 0) throw new Error(`--form \u952E\u503C\u5BF9\u683C\u5F0F\u5E94\u4E3A k=v,\u9017\u53F7\u5206\u9694: \u6536\u5230 "${kv}"`);
|
|
73272
|
+
out[kv.slice(0, i).trim()] = kv.slice(i + 1).trim();
|
|
73273
|
+
}
|
|
73274
|
+
return out;
|
|
73275
|
+
}
|
|
73276
|
+
recommendCommand.command("list").description("\u6309\u804C\u4F4D\u67E5\u63A8\u8350\u8BB0\u5F55(--json \u8F93\u51FA\u5168\u91CF,\u542B snapshot,\u4F9B\u5BFB\u8BBF\u53BB\u91CD\u6838\u5BF9)").argument("<jobCaseId>", "\u804C\u4F4D case id(\u6570\u5B57)").option("--stage <stage>", "\u9636\u6BB5\u8FC7\u6EE4,\u5982 recommended;\u5408\u6CD5\u503C GET /recommendations/meta").option("--json", "JSON \u8F93\u51FA\u5168\u91CF", false).action(async (jobCaseId, opts) => {
|
|
73277
|
+
try {
|
|
73278
|
+
const config = loadConfig();
|
|
73279
|
+
const q = opts.stage ? `?stage=${encodeURIComponent(opts.stage)}` : "";
|
|
73280
|
+
const res = await axios_default.get(
|
|
73281
|
+
`${config.serverUrl}/job-cases/${encodeURIComponent(jobCaseId)}/recommendations${q}`,
|
|
73282
|
+
{ headers: await authedHeaders5(), proxy: false, timeout: 1e4 }
|
|
73283
|
+
);
|
|
73284
|
+
const data = res.data ?? {};
|
|
73285
|
+
if (opts.json) {
|
|
73286
|
+
console.log(JSON.stringify(data));
|
|
73287
|
+
return;
|
|
73288
|
+
}
|
|
73289
|
+
const items = Array.isArray(data.items) ? data.items : [];
|
|
73290
|
+
const counts = data.counts ?? {};
|
|
73291
|
+
const nonzero = Object.entries(counts).filter(([, n]) => Number(n) > 0);
|
|
73292
|
+
console.log(`\u804C\u4F4D #${jobCaseId} \u63A8\u8350\u8BB0\u5F55:\u5171 ${data.total ?? items.length} \u6761`);
|
|
73293
|
+
if (nonzero.length) {
|
|
73294
|
+
console.log(
|
|
73295
|
+
"\u9636\u6BB5\u5206\u5E03: " + nonzero.map(([k2, n]) => `${k2}=${n}`).join(" ")
|
|
73296
|
+
);
|
|
73297
|
+
}
|
|
73298
|
+
for (const r of items) {
|
|
73299
|
+
const name = r.snapshot?.name ?? r.portraitName ?? r.entityId ?? r.portraitId ?? "?";
|
|
73300
|
+
console.log(`- [${r.stage}] ${name} (\u66F4\u65B0 ${r.updatedAt ?? ""})`);
|
|
73301
|
+
}
|
|
73302
|
+
} catch (err) {
|
|
73303
|
+
printCommandError("recommend:list-failed", err);
|
|
73304
|
+
process.exit(1);
|
|
73305
|
+
}
|
|
73306
|
+
});
|
|
73307
|
+
recommendCommand.command("add").description("\u63A8\u8350\u5EFA\u6863(\u5E42\u7B49):\u5BFB\u8BBF\u4EA4\u4ED8\u767B\u8BB0;--stage recommended \u8FDB\u63A8\u8350\u4EBA\u624D\u6C60").argument("<jobCaseId>", "\u804C\u4F4D case id(\u6570\u5B57)").option("--entity <id>", "\u4EBA\u624D\u5B9E\u4F53 id(talent_profiles)").option("--portrait <id>", "\u4EBA\u624D\u7EDF\u4E00\u6863\u6848 id(talent_portraits)").option("--stage <stage>", "\u76EE\u6807\u9636\u6BB5", "recommended").option("--note <text>", "\u5907\u6CE8(\u5982\u53BB\u91CD\u6821\u9A8C\u7ED3\u8BBA)").option("--form <k=v,k=v>", "\u9636\u6BB5\u8868\u5355\u952E\u503C\u5BF9(\u9017\u53F7\u5206\u9694,\u6A21\u677F\u89C1 GET /recommendations/meta)").option("--name <name>", "\u4EBA\u624D\u540D\u5FEB\u7167(\u8DE8\u7AEF\u53EF\u8BFB)").option("--headline <text>", "headline \u5FEB\u7167").option("--source <text>", "\u6765\u6E90\u5FEB\u7167(\u5982 linkedin/liepin)").option("--url <url>", "\u4E3B\u9875 URL:\u672A\u7ED9 --entity/--portrait \u65F6\u5148\u7ECF /ingest/talents \u5EFA\u6863\u4EBA\u624D\u5B9E\u4F53,\u518D\u6302\u63A8\u8350\u8BB0\u5F55").option("--json", "JSON \u8F93\u51FA\u5EFA\u6863\u7ED3\u679C", false).action(async (jobCaseId, opts) => {
|
|
73308
|
+
try {
|
|
73309
|
+
const config = loadConfig();
|
|
73310
|
+
const headers = await authedHeaders5();
|
|
73311
|
+
let entityId = opts.entity ? Number(opts.entity) : void 0;
|
|
73312
|
+
const portraitId = opts.portrait ? String(opts.portrait) : void 0;
|
|
73313
|
+
if (!entityId && !portraitId && opts.url) {
|
|
73314
|
+
const ingest = await axios_default.post(
|
|
73315
|
+
`${config.serverUrl}/ingest/talents`,
|
|
73316
|
+
{
|
|
73317
|
+
runId: `recommend-cli-${Date.now()}`,
|
|
73318
|
+
items: [{ url: opts.url, source: opts.source || "linkedin.com", name: opts.name, headline: opts.headline }]
|
|
73319
|
+
},
|
|
73320
|
+
{ headers, proxy: false, timeout: 15e3 }
|
|
73321
|
+
);
|
|
73322
|
+
const first = ingest.data?.results?.[0];
|
|
73323
|
+
if (!first?.id) {
|
|
73324
|
+
throw new Error(`\u4EBA\u624D\u5B9E\u4F53\u5EFA\u6863\u5931\u8D25: ${first?.error ?? JSON.stringify(ingest.data).slice(0, 200)}`);
|
|
73325
|
+
}
|
|
73326
|
+
entityId = first.id;
|
|
73327
|
+
}
|
|
73328
|
+
if (!entityId && !portraitId) {
|
|
73329
|
+
throw new Error("\u5FC5\u987B\u6307\u5B9A --entity <id> / --portrait <id>,\u6216\u7ED9 --url \u7531 CLI \u81EA\u52A8\u5EFA\u6863\u4EBA\u624D\u5B9E\u4F53");
|
|
73330
|
+
}
|
|
73331
|
+
const formData = parseFormPairs(opts.form);
|
|
73332
|
+
const snapshot = {};
|
|
73333
|
+
if (opts.name) snapshot.name = opts.name;
|
|
73334
|
+
if (opts.headline) snapshot.headline = opts.headline;
|
|
73335
|
+
if (opts.source) snapshot.source = opts.source;
|
|
73336
|
+
if (opts.url) snapshot.contact = { linkedinUrls: [opts.url] };
|
|
73337
|
+
const res = await axios_default.post(
|
|
73338
|
+
`${config.serverUrl}/recommendations`,
|
|
73339
|
+
{
|
|
73340
|
+
jobCaseId: Number(jobCaseId),
|
|
73341
|
+
stage: opts.stage,
|
|
73342
|
+
entityId,
|
|
73343
|
+
portraitId,
|
|
73344
|
+
note: opts.note,
|
|
73345
|
+
formData,
|
|
73346
|
+
snapshot: Object.keys(snapshot).length ? snapshot : void 0
|
|
73347
|
+
},
|
|
73348
|
+
{ headers, proxy: false, timeout: 1e4 }
|
|
73349
|
+
);
|
|
73350
|
+
if (opts.json) console.log(JSON.stringify(res.data));
|
|
73351
|
+
else {
|
|
73352
|
+
const r = res.data ?? {};
|
|
73353
|
+
const name = r.snapshot?.name ?? opts.name ?? (entityId ? `entity#${entityId}` : `portrait#${portraitId}`);
|
|
73354
|
+
console.log(`\u2713 \u63A8\u8350\u5EFA\u6863: ${name} \u2192 ${r.stage ?? opts.stage} (\u804C\u4F4D #${jobCaseId}, id=${r.id ?? "?"})`);
|
|
73355
|
+
}
|
|
73356
|
+
} catch (err) {
|
|
73357
|
+
printCommandError("recommend:add-failed", err);
|
|
73358
|
+
process.exit(1);
|
|
73359
|
+
}
|
|
73360
|
+
});
|
|
73361
|
+
recommendCommand.command("move").description("\u9636\u6BB5\u8FC1\u79FB(\u5199 history):\u5982 recommended \u2192 pending_invite / rejected").argument("<id>", "\u63A8\u8350\u8BB0\u5F55 id(uuid)").requiredOption("--stage <stage>", "\u76EE\u6807\u9636\u6BB5;\u5408\u6CD5\u503C GET /recommendations/meta").option("--note <text>", "\u8FC1\u79FB\u5907\u6CE8(\u5982\u4E0D\u5408\u9002\u539F\u56E0)").option("--json", "JSON \u8F93\u51FA", false).action(async (id, opts) => {
|
|
73362
|
+
try {
|
|
73363
|
+
const config = loadConfig();
|
|
73364
|
+
const res = await axios_default.patch(
|
|
73365
|
+
`${config.serverUrl}/recommendations/${encodeURIComponent(id)}`,
|
|
73366
|
+
{ stage: opts.stage, note: opts.note },
|
|
73367
|
+
{ headers: await authedHeaders5(), proxy: false, timeout: 1e4 }
|
|
73368
|
+
);
|
|
73369
|
+
if (opts.json) console.log(JSON.stringify(res.data));
|
|
73370
|
+
else console.log(`\u2713 \u9636\u6BB5\u8FC1\u79FB: ${id} \u2192 ${opts.stage}`);
|
|
73371
|
+
} catch (err) {
|
|
73372
|
+
printCommandError("recommend:move-failed", err);
|
|
73373
|
+
process.exit(1);
|
|
73374
|
+
}
|
|
73375
|
+
});
|
|
73376
|
+
|
|
73202
73377
|
// src/commands/issue-env.ts
|
|
73203
73378
|
init_esm();
|
|
73204
73379
|
init_axios2();
|
|
@@ -73318,7 +73493,7 @@ function installLocalProxyBypass() {
|
|
|
73318
73493
|
// package.json
|
|
73319
73494
|
var package_default = {
|
|
73320
73495
|
name: "hunter-mate",
|
|
73321
|
-
version: "0.1.
|
|
73496
|
+
version: "0.1.20",
|
|
73322
73497
|
type: "module",
|
|
73323
73498
|
description: "HiredChina \u730E\u5934 Agent \u6570\u636E\u52A9\u624B CLI:\u4EBA\u624D\u5E93/\u5BA2\u6237/\u804C\u4F4D\u6570\u636E\u8BBF\u95EE,\u6D4F\u89C8\u5668\u5F55\u5236\u89E3\u6790\u7B80\u5386,server/\u6269\u5C55\u4E00\u81F4\u6027\u81EA\u6108",
|
|
73324
73499
|
license: "MIT",
|
|
@@ -73427,11 +73602,13 @@ program2.name("hunter-mate").description(i18n.t("cli.description") + "\uFF08\u5D
|
|
|
73427
73602
|
const name = thisCommand.name();
|
|
73428
73603
|
if (name === "update" || name === "start" || name === "stop") return;
|
|
73429
73604
|
if (name === "migrate-data-dir") return;
|
|
73605
|
+
if (name === "token") return;
|
|
73606
|
+
if (name === "recommend") return;
|
|
73430
73607
|
if (name === "doctor" || name === "repair-linkedin-dupes") return;
|
|
73431
73608
|
const argv = process.argv;
|
|
73432
73609
|
const jsonMode = argv.includes("--json") || argv.includes("--format=json") || argv.includes("-f=json") || argv.some((a, i) => (a === "--format" || a === "-f") && argv[i + 1] === "json");
|
|
73433
73610
|
const notify = (line) => {
|
|
73434
|
-
const text =
|
|
73611
|
+
const text = import_chalk4.default.gray(` [auto-update] ${line}`);
|
|
73435
73612
|
if (jsonMode) console.error(text);
|
|
73436
73613
|
else console.log(text);
|
|
73437
73614
|
};
|
|
@@ -73478,6 +73655,7 @@ program2.addCommand(startCommand);
|
|
|
73478
73655
|
program2.addCommand(stopCommand);
|
|
73479
73656
|
program2.addCommand(loginCommand);
|
|
73480
73657
|
program2.addCommand(logoutCommand);
|
|
73658
|
+
program2.addCommand(tokenCommand);
|
|
73481
73659
|
program2.addCommand(statusCommand);
|
|
73482
73660
|
program2.addCommand(configCommand);
|
|
73483
73661
|
program2.addCommand(searchCommand);
|
|
@@ -73505,6 +73683,7 @@ program2.addCommand(noteCommand);
|
|
|
73505
73683
|
program2.addCommand(logsCommand);
|
|
73506
73684
|
program2.addCommand(preferenceCommand);
|
|
73507
73685
|
program2.addCommand(caseCommand);
|
|
73686
|
+
program2.addCommand(recommendCommand);
|
|
73508
73687
|
program2.addCommand(issueEnvCommand);
|
|
73509
73688
|
program2.parse();
|
|
73510
73689
|
/*! Bundled license information:
|
package/dist/web/dist/404.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="zh-CN"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="zh-CN"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/bd072fee69ae8474.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-54e74ccc9e9451ee.js"/><script src="/_next/static/chunks/a7067448-e416655baf443992.js" async=""></script><script src="/_next/static/chunks/935-7be3e60dd8bc29d2.js" async=""></script><script src="/_next/static/chunks/main-app-f496bd51a73ef9f3.js" async=""></script><script src="/_next/static/chunks/589-f984bff035a1cb85.js" async=""></script><script src="/_next/static/chunks/105-dcd8f6d5867c8995.js" async=""></script><script src="/_next/static/chunks/app/layout-af39afc7866e74db.js" async=""></script><meta name="robots" content="noindex"/><title>HunterMate 采集仪表盘</title><meta name="description" content="HunterMate 采集/解析/入库仪表盘"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="flex h-screen overflow-hidden bg-gray-50 text-gray-900"><div class="flex h-screen w-screen flex-col items-center justify-center bg-gray-50"><span class="hm-spinner" aria-label="加载中"></span><div class="mt-4 text-sm text-gray-400">正在加载,请稍候…</div></div><script src="/_next/static/chunks/webpack-54e74ccc9e9451ee.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/css/bd072fee69ae8474.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"2:I[76939,[],\"\"]\n4:I[74268,[],\"\"]\n5:I[81050,[],\"\"]\n6:I[15214,[\"589\",\"static/chunks/589-f984bff035a1cb85.js\",\"105\",\"static/chunks/105-dcd8f6d5867c8995.js\",\"185\",\"static/chunks/app/layout-af39afc7866e74db.js\"],\"AuthGate\"]\n7:I[67188,[\"589\",\"static/chunks/589-f984bff035a1cb85.js\",\"105\",\"static/chunks/105-dcd8f6d5867c8995.js\",\"185\",\"static/chunks/app/layout-af39afc7866e74db.js\"],\"AntdProvider\"]\n8:I[9424,[\"589\",\"static/chunks/589-f984bff035a1cb85.js\",\"105\",\"static/chunks/105-dcd8f6d5867c8995.js\",\"185\",\"static/chunks/app/layout-af39afc7866e74db.js\"],\"SystemSidebar\"]\ne:I[62319,[],\"\"]\n9:{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"}\na:{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"}\nb:{\"display\":\"inline-block\"}\nc:{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0}\nf:[]\n"])</script><script>self.__next_f.push([1,"0:[\"$\",\"$L2\",null,{\"buildId\":\"2fPtjfAzNbYkpIoAQOsP3\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"_not-found\"],\"initialTree\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},[[\"$L3\",[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null],null],null]},[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"/_not-found\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/bd072fee69ae8474.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"zh-CN\",\"children\":[\"$\",\"body\",null,{\"className\":\"flex h-screen overflow-hidden bg-gray-50 text-gray-900\",\"children\":[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$L7\",null,{\"children\":[[\"$\",\"$L8\",null,{}],[\"$\",\"main\",null,{\"className\":\"flex-1 overflow-hidden\",\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$9\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$a\",\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":\"$b\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$c\",\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}]}]]}]}]}]}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],\"$Ld\"],\"globalErrorComponent\":\"$e\",\"missingSlots\":\"$Wf\"}]\n"])</script><script>self.__next_f.push([1,"d:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"2\",{\"children\":\"HunterMate 采集仪表盘\"}],[\"$\",\"meta\",\"3\",{\"name\":\"description\",\"content\":\"HunterMate 采集/解析/入库仪表盘\"}]]\n3:null\n"])</script></body></html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/_error":["static/chunks/pages/_error-59095d3b83385d1f.js"],sortedPages:["/_app","/_error"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|