@zlooks.cn/cli 1.0.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.
Files changed (81) hide show
  1. package/dist/command/index.d.ts +3 -0
  2. package/dist/command/index.d.ts.map +1 -0
  3. package/dist/command/index.js +145 -0
  4. package/dist/command/index.js.map +1 -0
  5. package/dist/deploy.d.ts +35 -0
  6. package/dist/deploy.d.ts.map +1 -0
  7. package/dist/deploy.js +312 -0
  8. package/dist/deploy.js.map +1 -0
  9. package/dist/deployment.d.ts +18 -0
  10. package/dist/deployment.d.ts.map +1 -0
  11. package/dist/deployment.js +26 -0
  12. package/dist/deployment.js.map +1 -0
  13. package/dist/doctor.d.ts +24 -0
  14. package/dist/doctor.d.ts.map +1 -0
  15. package/dist/doctor.js +78 -0
  16. package/dist/doctor.js.map +1 -0
  17. package/dist/export/export-operation.d.ts +34 -0
  18. package/dist/export/export-operation.d.ts.map +1 -0
  19. package/dist/export/export-operation.js +69 -0
  20. package/dist/export/export-operation.js.map +1 -0
  21. package/dist/export/legacy-export.d.ts +129 -0
  22. package/dist/export/legacy-export.d.ts.map +1 -0
  23. package/dist/export/legacy-export.js +334 -0
  24. package/dist/export/legacy-export.js.map +1 -0
  25. package/dist/export/legacy-source.d.ts +16 -0
  26. package/dist/export/legacy-source.d.ts.map +1 -0
  27. package/dist/export/legacy-source.js +164 -0
  28. package/dist/export/legacy-source.js.map +1 -0
  29. package/dist/global-packages.d.ts +24 -0
  30. package/dist/global-packages.d.ts.map +1 -0
  31. package/dist/global-packages.js +89 -0
  32. package/dist/global-packages.js.map +1 -0
  33. package/dist/import/import-operation.d.ts +6 -0
  34. package/dist/import/import-operation.d.ts.map +1 -0
  35. package/dist/import/import-operation.js +16 -0
  36. package/dist/import/import-operation.js.map +1 -0
  37. package/dist/npm-registry.d.ts +11 -0
  38. package/dist/npm-registry.d.ts.map +1 -0
  39. package/dist/npm-registry.js +20 -0
  40. package/dist/npm-registry.js.map +1 -0
  41. package/dist/operations.d.ts +33 -0
  42. package/dist/operations.d.ts.map +1 -0
  43. package/dist/operations.js +270 -0
  44. package/dist/operations.js.map +1 -0
  45. package/dist/package-manifest.d.ts +16 -0
  46. package/dist/package-manifest.d.ts.map +1 -0
  47. package/dist/package-manifest.js +72 -0
  48. package/dist/package-manifest.js.map +1 -0
  49. package/dist/package-updates.d.ts +13 -0
  50. package/dist/package-updates.d.ts.map +1 -0
  51. package/dist/package-updates.js +41 -0
  52. package/dist/package-updates.js.map +1 -0
  53. package/dist/pm2.d.ts +28 -0
  54. package/dist/pm2.d.ts.map +1 -0
  55. package/dist/pm2.js +72 -0
  56. package/dist/pm2.js.map +1 -0
  57. package/dist/prompt.d.ts +49 -0
  58. package/dist/prompt.d.ts.map +1 -0
  59. package/dist/prompt.js +25 -0
  60. package/dist/prompt.js.map +1 -0
  61. package/dist/release-environment.d.ts +6 -0
  62. package/dist/release-environment.d.ts.map +1 -0
  63. package/dist/release-environment.js +19 -0
  64. package/dist/release-environment.js.map +1 -0
  65. package/dist/service-catalog.d.ts +10 -0
  66. package/dist/service-catalog.d.ts.map +1 -0
  67. package/dist/service-catalog.js +28 -0
  68. package/dist/service-catalog.js.map +1 -0
  69. package/dist/setup.d.ts +39 -0
  70. package/dist/setup.d.ts.map +1 -0
  71. package/dist/setup.js +413 -0
  72. package/dist/setup.js.map +1 -0
  73. package/dist/system.d.ts +5 -0
  74. package/dist/system.d.ts.map +1 -0
  75. package/dist/system.js +11 -0
  76. package/dist/system.js.map +1 -0
  77. package/dist/topology.d.ts +11 -0
  78. package/dist/topology.d.ts.map +1 -0
  79. package/dist/topology.js +78 -0
  80. package/dist/topology.js.map +1 -0
  81. package/package.json +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy-export.js","sourceRoot":"","sources":["../../src/export/legacy-export.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { type DataSource } from 'typeorm';
2
+ import type { Redis } from 'ioredis';
3
+ import type { LegacyExportSource, LegacySourceConfiguration } from './export-operation.js';
4
+ import type { LegacyExportSnapshot } from './legacy-export.js';
5
+ export declare function createTypeOrmLegacyExportSource(config: LegacySourceConfiguration): Promise<LegacyExportSource>;
6
+ export declare class TypeOrmLegacyExportSource implements LegacyExportSource {
7
+ private readonly database;
8
+ private readonly redis;
9
+ private readonly redisConfigsKey;
10
+ constructor(database: DataSource, redis: Redis, redisConfigsKey: string);
11
+ read(): Promise<LegacyExportSnapshot>;
12
+ close(): Promise<void>;
13
+ private rows;
14
+ private readSiteConfig;
15
+ }
16
+ //# sourceMappingURL=legacy-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy-source.d.ts","sourceRoot":"","sources":["../../src/export/legacy-source.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,UAAU,EAIhB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,KAAK,EAGV,oBAAoB,EAQrB,MAAM,oBAAoB,CAAC;AA2G5B,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,kBAAkB,CAAC,CAe7B;AAED,qBAAa,yBAA0B,YAAW,kBAAkB;IAEhE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAHlC,YACmB,QAAQ,EAAE,UAAU,EACpB,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,MAAM,EACtC;IAES,IAAI,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAiBjD;IAEY,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAGlC;IAED,OAAO,CAAC,IAAI;YAQE,cAAc;CAO7B"}
@@ -0,0 +1,164 @@
1
+ import { createRedis } from '@hile/ioredis';
2
+ import { createDataSource } from '@hile/typeorm';
3
+ import { EntitySchema, } from 'typeorm';
4
+ const UserEntity = new EntitySchema({
5
+ name: 'LegacyExportUser', tableName: 'zlooks_users',
6
+ columns: {
7
+ id: { type: 'integer', primary: true },
8
+ email: { type: 'varchar' },
9
+ forbidden: { name: 'disabled', type: 'boolean' },
10
+ nickname: { type: 'varchar', nullable: true },
11
+ avatarUrl: { name: 'avatar_url', type: 'varchar', nullable: true },
12
+ homepageUrl: { name: 'homepage_url', type: 'varchar', nullable: true },
13
+ createdAt: { name: 'create_time', type: 'timestamp' },
14
+ updatedAt: { name: 'update_time', type: 'timestamp' },
15
+ },
16
+ });
17
+ const CategoryEntity = new EntitySchema({
18
+ name: 'LegacyExportCategory', tableName: 'zlooks_categories',
19
+ columns: {
20
+ id: { type: 'integer', primary: true }, slug: { type: 'varchar' }, name: { type: 'varchar' },
21
+ description: { type: 'text', nullable: true }, sortOrder: { name: 'sort_order', type: 'integer' },
22
+ },
23
+ });
24
+ const TagEntity = new EntitySchema({
25
+ name: 'LegacyExportTag', tableName: 'zlooks_tags',
26
+ columns: { id: { type: 'integer', primary: true }, slug: { type: 'varchar' }, name: { type: 'varchar' } },
27
+ });
28
+ const PostEntity = new EntitySchema({
29
+ name: 'LegacyExportPost', tableName: 'zlooks_posts',
30
+ columns: {
31
+ id: { type: 'integer', primary: true },
32
+ shortId: { name: 'short_id', type: 'varchar' },
33
+ title: { type: 'varchar' },
34
+ excerpt: { type: 'text', nullable: true },
35
+ content: { type: 'text' },
36
+ status: { type: 'varchar' },
37
+ categoryId: { name: 'category_id', type: 'integer' },
38
+ publishedAt: { name: 'published_at', type: 'timestamp', nullable: true },
39
+ createdAt: { name: 'created_at', type: 'timestamp' },
40
+ updatedAt: { name: 'updated_at', type: 'timestamp' },
41
+ },
42
+ });
43
+ const PostTagEntity = new EntitySchema({
44
+ name: 'LegacyExportPostTag', tableName: 'zlooks_post_tags',
45
+ columns: {
46
+ postId: { name: 'post_id', type: 'integer', primary: true },
47
+ tagId: { name: 'tag_id', type: 'integer', primary: true },
48
+ },
49
+ });
50
+ const CommentEntity = new EntitySchema({
51
+ name: 'LegacyExportComment', tableName: 'zlooks_post_comments',
52
+ columns: {
53
+ id: { type: 'integer', primary: true },
54
+ postId: { name: 'post_id', type: 'integer' },
55
+ userId: { name: 'user_id', type: 'integer' },
56
+ content: { type: 'text' },
57
+ reply: { type: 'text', nullable: true },
58
+ status: { type: 'varchar' },
59
+ ip: { type: 'varchar' },
60
+ userAgent: { name: 'user_agent', type: 'varchar' },
61
+ createdAt: { name: 'created_at', type: 'timestamp' },
62
+ },
63
+ });
64
+ const FriendLinkEntity = new EntitySchema({
65
+ name: 'LegacyExportFriendLink', tableName: 'zlooks_friend_links',
66
+ columns: {
67
+ id: { type: 'integer', primary: true }, name: { type: 'varchar' }, url: { type: 'varchar' },
68
+ description: { type: 'text', nullable: true }, logoUrl: { name: 'logo_url', type: 'varchar', nullable: true },
69
+ sortOrder: { name: 'sort_order', type: 'integer' }, status: { type: 'varchar' },
70
+ createdAt: { name: 'created_at', type: 'timestamp' }, updatedAt: { name: 'updated_at', type: 'timestamp' },
71
+ },
72
+ });
73
+ const KeyGroupEntity = new EntitySchema({
74
+ name: 'LegacyExportKeyGroup', tableName: 'zlooks_user_key_groups',
75
+ columns: {
76
+ id: { type: 'integer', primary: true }, ownerUserId: { name: 'owner_user_id', type: 'integer' },
77
+ parentId: { name: 'parent_id', type: 'integer', nullable: true }, name: { type: 'varchar' },
78
+ description: { type: 'text', nullable: true }, sortOrder: { name: 'sort_order', type: 'integer' },
79
+ createdAt: { name: 'created_at', type: 'timestamptz' }, updatedAt: { name: 'updated_at', type: 'timestamptz' },
80
+ },
81
+ });
82
+ const KeyCredentialEntity = new EntitySchema({
83
+ name: 'LegacyExportKeyCredential', tableName: 'zlooks_user_key_credentials',
84
+ columns: {
85
+ id: { type: 'integer', primary: true }, ownerUserId: { name: 'owner_user_id', type: 'integer' },
86
+ groupId: { name: 'group_id', type: 'integer' }, title: { type: 'varchar' },
87
+ account: { type: 'varchar', nullable: true }, remark: { type: 'text', nullable: true },
88
+ publicKeyPem: { name: 'public_key_pem', type: 'text' },
89
+ privateKeyPem: { name: 'private_key_pem', type: 'text' },
90
+ vaultPasswordCipher: { name: 'vault_password_cipher', type: 'text', nullable: true },
91
+ sortOrder: { name: 'sort_order', type: 'integer' },
92
+ createdAt: { name: 'created_at', type: 'timestamptz' }, updatedAt: { name: 'updated_at', type: 'timestamptz' },
93
+ },
94
+ });
95
+ const entities = [
96
+ UserEntity, CategoryEntity, TagEntity, PostEntity, PostTagEntity,
97
+ CommentEntity, FriendLinkEntity, KeyGroupEntity, KeyCredentialEntity,
98
+ ];
99
+ export async function createTypeOrmLegacyExportSource(config) {
100
+ const database = await createDataSource({
101
+ type: 'postgres',
102
+ ...config.postgres,
103
+ entities: [...entities],
104
+ synchronize: false,
105
+ migrationsRun: false,
106
+ });
107
+ try {
108
+ const redis = await createRedis(config.redis);
109
+ return new TypeOrmLegacyExportSource(database, redis, config.redisConfigsKey);
110
+ }
111
+ catch (error) {
112
+ await database.destroy();
113
+ throw error;
114
+ }
115
+ }
116
+ export class TypeOrmLegacyExportSource {
117
+ database;
118
+ redis;
119
+ redisConfigsKey;
120
+ constructor(database, redis, redisConfigsKey) {
121
+ this.database = database;
122
+ this.redis = redis;
123
+ this.redisConfigsKey = redisConfigsKey;
124
+ }
125
+ async read() {
126
+ const [snapshot, siteConfig] = await Promise.all([
127
+ this.database.transaction('REPEATABLE READ', async (manager) => {
128
+ const users = await this.rows(manager, UserEntity, { id: 'ASC' });
129
+ const categories = await this.rows(manager, CategoryEntity, { id: 'ASC' });
130
+ const tags = await this.rows(manager, TagEntity, { id: 'ASC' });
131
+ const posts = await this.rows(manager, PostEntity, { id: 'ASC' });
132
+ const postTags = await this.rows(manager, PostTagEntity, { postId: 'ASC', tagId: 'ASC' });
133
+ const comments = await this.rows(manager, CommentEntity, { id: 'ASC' });
134
+ const friendLinks = await this.rows(manager, FriendLinkEntity, { id: 'ASC' });
135
+ const keyGroups = await this.rows(manager, KeyGroupEntity, { id: 'ASC' });
136
+ const keyCredentials = await this.rows(manager, KeyCredentialEntity, { id: 'ASC' });
137
+ return { users, categories, tags, posts, postTags, comments, friendLinks, keyGroups, keyCredentials };
138
+ }),
139
+ this.readSiteConfig(),
140
+ ]);
141
+ return { ...snapshot, siteConfig };
142
+ }
143
+ async close() {
144
+ this.redis.disconnect();
145
+ if (this.database.isInitialized)
146
+ await this.database.destroy();
147
+ }
148
+ rows(manager, entity, order) {
149
+ return manager.getRepository(entity).find({ order });
150
+ }
151
+ async readSiteConfig() {
152
+ const raw = await this.redis.get(this.redisConfigsKey);
153
+ if (raw === null)
154
+ return {};
155
+ const parsed = JSON.parse(raw);
156
+ if (!isRecord(parsed))
157
+ throw new Error(`旧项目 Redis 配置 ${this.redisConfigsKey} 不是 JSON 对象`);
158
+ return parsed;
159
+ }
160
+ }
161
+ function isRecord(value) {
162
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
163
+ }
164
+ //# sourceMappingURL=legacy-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy-source.js","sourceRoot":"","sources":["../../src/export/legacy-source.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { type ZlooksPackageManifest } from './package-manifest.js';
2
+ import type { ActiveNpmRegistry } from './npm-registry.js';
3
+ export interface NpmRuntime {
4
+ exec(args: readonly string[], options?: {
5
+ readonly silent?: boolean;
6
+ }): string;
7
+ }
8
+ export interface ZlooksExecutableCollision {
9
+ readonly executable: string;
10
+ readonly packages: readonly string[];
11
+ }
12
+ export interface ZlooksPackageInstallRequest {
13
+ readonly name: string;
14
+ readonly version?: string;
15
+ }
16
+ export declare function installGlobalPackage(spec: string, registry: ActiveNpmRegistry, runtime: NpmRuntime): void;
17
+ export declare function parsePackageInstallRequest(spec: string): ZlooksPackageInstallRequest;
18
+ export declare function uninstallGlobalPackage(name: string, runtime: NpmRuntime): void;
19
+ export declare function listGlobalZlooksPackages(runtime: NpmRuntime, options?: {
20
+ readonly allowExecutableCollisions?: boolean;
21
+ }): readonly ZlooksPackageManifest[];
22
+ export declare function findZlooksExecutableCollisions(manifests: readonly ZlooksPackageManifest[]): readonly ZlooksExecutableCollision[];
23
+ export declare function packageNameFromSpec(spec: string): string;
24
+ //# sourceMappingURL=global-packages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-packages.d.ts","sourceRoot":"","sources":["../src/global-packages.ts"],"names":[],"mappings":"AAGA,OAAO,EAAmD,KAAK,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACpH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM,CAAC;CAChF;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI,CAGzG;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,2BAA2B,CASpF;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI,CAG9E;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,UAAU,EACnB,OAAO,GAAE;IAAE,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7D,SAAS,qBAAqB,EAAE,CAclC;AAED,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,SAAS,qBAAqB,EAAE,GAC1C,SAAS,yBAAyB,EAAE,CAUtC;AAWD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIxD"}
@@ -0,0 +1,89 @@
1
+ import { existsSync, readFileSync, readdirSync } from 'node:fs';
2
+ import { resolve } from 'node:path';
3
+ import { valid as validSemver } from 'semver';
4
+ import { isZlooksPackageName, parseZlooksPackageManifest } from './package-manifest.js';
5
+ export function installGlobalPackage(spec, registry, runtime) {
6
+ assertExactPackageSpec(spec);
7
+ runtime.exec(['install', '-g', spec, `--registry=${registry}`]);
8
+ }
9
+ export function parsePackageInstallRequest(spec) {
10
+ const name = packageNameFromSpec(spec);
11
+ if (spec === name)
12
+ return { name };
13
+ const requested = spec.slice(name.length + 1);
14
+ const version = validSemver(requested);
15
+ if (!spec.startsWith(`${name}@`) || version === null) {
16
+ throw new Error(`Zlooks package must be unversioned or use an exact SemVer version: ${spec}`);
17
+ }
18
+ return { name, version };
19
+ }
20
+ export function uninstallGlobalPackage(name, runtime) {
21
+ assertPackageName(name);
22
+ runtime.exec(['uninstall', '-g', name]);
23
+ }
24
+ export function listGlobalZlooksPackages(runtime, options = {}) {
25
+ const root = runtime.exec(['root', '-g'], { silent: true }).trim();
26
+ if (!existsSync(root))
27
+ return [];
28
+ const manifests = globalPackageRoots(root).flatMap((packageRoot) => {
29
+ const path = resolve(packageRoot, 'package.json');
30
+ if (!existsSync(path))
31
+ return [];
32
+ try {
33
+ return [parseZlooksPackageManifest(JSON.parse(readFileSync(path, 'utf8')))];
34
+ }
35
+ catch {
36
+ return [];
37
+ }
38
+ }).sort((left, right) => left.name.localeCompare(right.name));
39
+ if (!options.allowExecutableCollisions)
40
+ assertUniqueExecutables(manifests);
41
+ return manifests;
42
+ }
43
+ export function findZlooksExecutableCollisions(manifests) {
44
+ const owners = new Map();
45
+ for (const manifest of manifests) {
46
+ const current = owners.get(manifest.bin) ?? [];
47
+ current.push(manifest.name);
48
+ owners.set(manifest.bin, current);
49
+ }
50
+ return [...owners.entries()].flatMap(([executable, packages]) => (packages.length > 1 ? [{ executable, packages }] : []));
51
+ }
52
+ function assertUniqueExecutables(manifests) {
53
+ const [collision] = findZlooksExecutableCollisions(manifests);
54
+ if (collision) {
55
+ throw new Error(`Duplicate global Zlooks executable ${collision.executable}: ${collision.packages.join(', ')}`);
56
+ }
57
+ }
58
+ export function packageNameFromSpec(spec) {
59
+ const match = spec.match(/^((?:@zlooks\.cn\/[a-z0-9][a-z0-9-]*-server)|(?:@[a-z0-9][a-z0-9._-]*\/zlooks-[a-z0-9][a-z0-9-]*-server)|(?:zlooks-[a-z0-9][a-z0-9-]*-server))(?:@[a-zA-Z0-9._+-]+)?$/);
60
+ if (!match?.[1])
61
+ throw new Error(`Invalid Zlooks package spec: ${spec}`);
62
+ return match[1];
63
+ }
64
+ function assertExactPackageSpec(spec) {
65
+ const request = parsePackageInstallRequest(spec);
66
+ if (request.version === undefined) {
67
+ throw new Error(`Zlooks installation requires an exact SemVer package spec: ${spec}`);
68
+ }
69
+ }
70
+ function assertPackageName(name) {
71
+ if (!isZlooksPackageName(name))
72
+ throw new Error(`Invalid Zlooks package name: ${name}`);
73
+ }
74
+ function globalPackageRoots(root) {
75
+ return readdirSync(root, { withFileTypes: true }).flatMap((entry) => {
76
+ if (!entry.isDirectory() && !entry.isSymbolicLink())
77
+ return [];
78
+ if (!entry.name.startsWith('@'))
79
+ return [resolve(root, entry.name)];
80
+ const scopeRoot = resolve(root, entry.name);
81
+ try {
82
+ return readdirSync(scopeRoot, { withFileTypes: true }).flatMap((child) => (child.isDirectory() || child.isSymbolicLink() ? [resolve(scopeRoot, child.name)] : []));
83
+ }
84
+ catch {
85
+ return [];
86
+ }
87
+ });
88
+ }
89
+ //# sourceMappingURL=global-packages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-packages.js","sourceRoot":"","sources":["../src/global-packages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAA8B,MAAM,uBAAuB,CAAC;AAiBpH,MAAM,UAAU,oBAAoB,CAAC,IAAY,EAAE,QAA2B,EAAE,OAAmB;IACjG,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,QAAQ,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACrD,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,sEAAsE,IAAI,EAAE,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,OAAmB;IACtE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAAmB,EACnB,OAAO,GAAqD,EAAE;IAE9D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;QACjE,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAClD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,IAAI,CAAC,OAAO,CAAC,yBAAyB;QAAE,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC3E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,SAA2C;IAE3C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAC/D,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CACtD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB,CAAC,SAA2C;IAC1E,MAAM,CAAC,SAAS,CAAC,GAAG,8BAA8B,CAAC,SAAS,CAAC,CAAC;IAC9D,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,sCAAsC,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/F,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,uKAAuK,CAAC,CAAC;IAClM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY;IAC1C,MAAM,OAAO,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,8DAA8D,IAAI,EAAE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,OAAO,WAAW,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAClE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;YAAE,OAAO,EAAE,CAAC;QAC/D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC;YACH,OAAO,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACxE,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CACtF,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { OperationsRuntime } from '../operations.js';
2
+ export declare function legacyImportOperation(options: {
3
+ readonly source: string;
4
+ readonly env: string;
5
+ }, runtime: OperationsRuntime): Promise<void>;
6
+ //# sourceMappingURL=import-operation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-operation.d.ts","sourceRoot":"","sources":["../../src/import/import-operation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,wBAAsB,qBAAqB,CACzC,OAAO,EAAE;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,EAC1D,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAaf"}
@@ -0,0 +1,16 @@
1
+ import { resolve } from 'node:path';
2
+ import { importLegacyExport } from '@zlooks.cn/legacy-import/operation';
3
+ import { listManagedProcesses } from '../pm2.js';
4
+ export async function legacyImportOperation(options, runtime) {
5
+ const running = listManagedProcesses(runtime.pm2).filter((process) => (process.status !== 'stopped' && process.status !== 'errored'));
6
+ if (running.length > 0) {
7
+ throw new Error(`Stop Zlooks services before import: ${running.map((process) => process.name).join(', ')}`);
8
+ }
9
+ const result = await importLegacyExport({
10
+ sourceDirectory: resolve(runtime.cwd, options.source),
11
+ environmentFile: resolve(runtime.cwd, options.env),
12
+ });
13
+ runtime.write(`DONE\tinserted=${result.inserted}\tskipped=${result.skipped}\n`);
14
+ runtime.write('SKIPPED\tkey-vault.json awaits its owning plugin importer\n');
15
+ }
16
+ //# sourceMappingURL=import-operation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-operation.js","sourceRoot":"","sources":["../../src/import/import-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAGjD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAA0D,EAC1D,OAA0B;IAE1B,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CACpE,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,CAC7D,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,uCAAuC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9G,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;QACtC,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC;QACrD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;KACnD,CAAC,CAAC;IACH,OAAO,CAAC,KAAK,CAAC,kBAAkB,MAAM,CAAC,QAAQ,aAAa,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC;IAChF,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,11 @@
1
+ export declare const NPM_REGISTRY_CHOICES: readonly [{
2
+ readonly name: 'NPMMIRROR';
3
+ readonly value: 'https://registry.npmmirror.com/';
4
+ }, {
5
+ readonly name: 'npm 官方';
6
+ readonly value: 'https://registry.npmjs.org/';
7
+ }];
8
+ export type ActiveNpmRegistry = typeof NPM_REGISTRY_CHOICES[number]['value'];
9
+ export declare function parseActiveNpmRegistry(value: unknown): ActiveNpmRegistry;
10
+ export declare function loadActiveNpmRegistry(environmentFile: string): ActiveNpmRegistry;
11
+ //# sourceMappingURL=npm-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"npm-registry.d.ts","sourceRoot":"","sources":["../src/npm-registry.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,oBAAoB;aAC7B,IAAI,EAAE,WAAW;aAAE,KAAK,EAAE,iCAAiC;;aAC3D,IAAI,EAAE,QAAQ;aAAE,KAAK,EAAE,6BAA6B;EAC9C,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;AAE7E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAMxE;AAED,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,MAAM,GAAG,iBAAiB,CAKhF"}
@@ -0,0 +1,20 @@
1
+ import { existsSync, readFileSync } from 'node:fs';
2
+ import { parseEnv } from 'node:util';
3
+ export const NPM_REGISTRY_CHOICES = [
4
+ { name: 'NPMMIRROR', value: 'https://registry.npmmirror.com/' },
5
+ { name: 'npm 官方', value: 'https://registry.npmjs.org/' },
6
+ ];
7
+ export function parseActiveNpmRegistry(value) {
8
+ const registry = NPM_REGISTRY_CHOICES.find((choice) => choice.value === value)?.value;
9
+ if (!registry) {
10
+ throw new Error('ACTIVE_REGISTRY must be one of the npm sources supported by zlooks setup');
11
+ }
12
+ return registry;
13
+ }
14
+ export function loadActiveNpmRegistry(environmentFile) {
15
+ if (!existsSync(environmentFile)) {
16
+ throw new Error(`Environment file not found: ${environmentFile}. Run zlooks setup first.`);
17
+ }
18
+ return parseActiveNpmRegistry(parseEnv(readFileSync(environmentFile, 'utf8')).ACTIVE_REGISTRY);
19
+ }
20
+ //# sourceMappingURL=npm-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"npm-registry.js","sourceRoot":"","sources":["../src/npm-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,iCAAiC,EAAE;IAC/D,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,6BAA6B,EAAE;CAChD,CAAC;AAIX,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,KAAK,CAAC;IACtF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,eAAuB;IAC3D,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,+BAA+B,eAAe,2BAA2B,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,sBAAsB,CAAC,QAAQ,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;AACjG,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { type NpmRuntime } from './global-packages.js';
2
+ import type { ZlooksDatabaseCommand } from './package-manifest.js';
3
+ import { type Pm2CommandRuntime } from './pm2.js';
4
+ export interface OperationsRuntime {
5
+ readonly npm: NpmRuntime;
6
+ readonly pm2: Pm2CommandRuntime;
7
+ readonly service: ServiceCommandRuntime;
8
+ readonly cwd: string;
9
+ readonly environmentFile: string;
10
+ confirm(message: string, defaultValue?: boolean): Promise<boolean>;
11
+ selectMany(message: string, choices: readonly {
12
+ name: string;
13
+ detail: string;
14
+ }[]): Promise<readonly string[]>;
15
+ write(text: string): void;
16
+ }
17
+ export interface ServiceCommandRuntime {
18
+ exec(executable: string, args: readonly string[]): string;
19
+ }
20
+ export declare function installOperation(packageSpec: string | undefined, options: {
21
+ readonly env: string;
22
+ readonly start?: boolean;
23
+ readonly skipStart?: boolean;
24
+ }, runtime: OperationsRuntime): Promise<void>;
25
+ export declare function uninstallOperation(packageName: string | undefined, yes: boolean, runtime: OperationsRuntime): Promise<void>;
26
+ export declare function stopOperation(runtime: OperationsRuntime): Promise<void>;
27
+ export declare function restartOperation(runtime: OperationsRuntime): Promise<void>;
28
+ export declare function updateOperation(runtime: OperationsRuntime): Promise<void>;
29
+ export declare function databaseOperation(operation: ZlooksDatabaseCommand, packageName: string | undefined, options: {
30
+ readonly env: string;
31
+ }, runtime: OperationsRuntime): Promise<void>;
32
+ export declare function serviceListOperation(runtime: OperationsRuntime): void;
33
+ //# sourceMappingURL=operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"AAGA,OAAO,EAML,KAAK,UAAU,EAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,qBAAqB,EAAyB,MAAM,uBAAuB,CAAC;AAO1F,OAAO,EAML,KAAK,iBAAiB,EACvB,MAAM,UAAU,CAAC;AAKlB,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;IAC9G,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAAC;CAC3D;AAED,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,OAAO,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,EACzF,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CA8Cf;AAED,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAmCf;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAe7E;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAYhF;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B/E;AAED,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,OAAO,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,EACjC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAMrE"}