miniprogram-ci 1.9.6 → 1.9.7
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/CHANGELOG.md +2 -2
- package/dist/@types/ci/project.d.ts +3 -3
- package/dist/@types/ci/upload.d.ts +2 -2
- package/dist/@types/config.d.ts +1 -1
- package/dist/@types/core/json/projectWithMockBuffer.d.ts +1 -1
- package/dist/@types/core/json/reactiveCache.d.ts +1 -1
- package/dist/@types/core/utils/env.d.ts +2 -2
- package/dist/@types/core/utils/logger.d.ts +2 -2
- package/dist/@types/core/validate/schemaValidate.d.ts +1 -1
- package/dist/@types/core/validate/validate.d.ts +1 -1
- package/dist/@types/summer/devtool.d.ts +12 -12
- package/dist/@types/summer/graph/basegraph.d.ts +2 -2
- package/dist/@types/summer/plugin_driver.d.ts +4 -4
- package/dist/@types/summer/project.d.ts +3 -3
- package/dist/@types/summer/resolver.d.ts +2 -2
- package/dist/@types/summer/types.d.ts +21 -21
- package/dist/@types/summer/worker.d.ts +2 -2
- package/dist/@types/types/index.d.ts +4 -4
- package/dist/@types/utils/interruptibletask.d.ts +1 -1
- package/dist/@types/utils/report.d.ts +1 -1
- package/dist/@types/vendor/cloud-api/src/transaction/contracts/factory.d.ts +2 -2
- package/dist/@types/vendor/cloud-api/src/utils/validator.d.ts +7 -7
- package/dist/ci/code-analyse.js +1 -1
- package/dist/ci/cos-upload.js +1 -1
- package/dist/ci/getCompiledResult.js +1 -1
- package/dist/ci/getDevSourceMap.js +1 -1
- package/dist/ci/getLatestVersion.js +1 -1
- package/dist/ci/jsserver.js +1 -1
- package/dist/ci/preview.js +1 -1
- package/dist/ci/project.js +1 -1
- package/dist/ci/projectattr.js +1 -1
- package/dist/ci/upload.js +1 -1
- package/dist/ci/utils/filterUnusedFile.js +1 -1
- package/dist/ci/utils/packfile.js +1 -1
- package/dist/cli.js +1 -1
- package/dist/cloud/cloudapi.js +1 -1
- package/dist/cloud/createTimeTrigger.js +1 -1
- package/dist/cloud/uploadContainer.js +1 -1
- package/dist/cloud/uploadFile.js +1 -1
- package/dist/cloud/uploadFunction.js +1 -1
- package/dist/cloud/utils.js +1 -1
- package/dist/config.js +1 -1
- package/dist/core/compile/common.js +1 -1
- package/dist/core/compile/game.js +1 -1
- package/dist/core/compile/game_plugin.js +1 -1
- package/dist/core/compile/handler/js.js +1 -1
- package/dist/core/compile/handler/mpjson.js +1 -1
- package/dist/core/compile/handler/wxml.js +1 -1
- package/dist/core/compile/handler/wxss.js +1 -1
- package/dist/core/compile/index.js +1 -1
- package/dist/core/compile/mini_program.js +1 -1
- package/dist/core/compile/mini_program_plugin.js +1 -1
- package/dist/core/js/enhance.js +1 -1
- package/dist/core/js/index.js +1 -1
- package/dist/core/js/minifyjs_after_wrap.js +1 -1
- package/dist/core/json/app/checkAppFields.js +1 -1
- package/dist/core/json/app/getAppJSON.js +1 -1
- package/dist/core/json/app/getExtJSON.js +1 -1
- package/dist/core/json/app/index.js +1 -1
- package/dist/core/json/common.js +1 -1
- package/dist/core/json/game.js +1 -1
- package/dist/core/json/page/checkPageJSON.js +1 -1
- package/dist/core/json/page/getPageJSON.js +1 -1
- package/dist/core/json/plugin/plugin.js +1 -1
- package/dist/core/json/plugin/plugin_page.js +1 -1
- package/dist/core/json/projectWithMockBuffer.js +1 -1
- package/dist/core/json/projectconfig.js +1 -1
- package/dist/core/json/reactiveCache.js +1 -1
- package/dist/core/json/signaturejson.js +1 -1
- package/dist/core/json/sitemap.js +1 -1
- package/dist/core/json/theme.js +1 -1
- package/dist/core/npm/filterdeps.js +1 -1
- package/dist/core/npm/packnpm.js +1 -1
- package/dist/core/protect/file_flatter.js +1 -1
- package/dist/core/protect/uglifyfilenames.js +1 -1
- package/dist/core/validate/validate.js +1 -1
- package/dist/core/worker_thread/childprocess.js +1 -1
- package/dist/core/worker_thread/childprocess_manager.js +1 -1
- package/dist/core/worker_thread/fork.js +1 -1
- package/dist/core/worker_thread/index.js +1 -1
- package/dist/core/worker_thread/task/call_func.js +1 -1
- package/dist/core/worker_thread/task/compilejs.js +1 -1
- package/dist/core/worker_thread/task/compilewxss.js +1 -1
- package/dist/core/worker_thread/task/func.js +1 -1
- package/dist/core/worker_thread/task/minifywxml.js +1 -1
- package/dist/core/worker_thread/worker.js +1 -1
- package/dist/core/worker_thread/worker_manager.js +1 -1
- package/dist/core.js +1 -1
- package/dist/index.js +1 -1
- package/dist/manifest.json +2 -2
- package/dist/summer/devtool.js +1 -1
- package/dist/summer/entry_process.js +1 -1
- package/dist/summer/graph/appconf.js +1 -1
- package/dist/summer/graph/basegraph.js +1 -1
- package/dist/summer/graph/pluginconf.js +1 -1
- package/dist/summer/initPlugin.js +1 -1
- package/dist/summer/persist_cache.js +1 -1
- package/dist/summer/plugins/base/javascript.js +1 -1
- package/dist/summer/plugins/base/wxss.js +1 -1
- package/dist/summer/plugins/enhance.js +1 -1
- package/dist/summer/plugins/less.js +1 -1
- package/dist/summer/plugins/minifywxml.js +1 -1
- package/dist/summer/plugins/sass.js +1 -1
- package/dist/summer/plugins/typescript.js +1 -1
- package/dist/summer/project.js +1 -1
- package/dist/summer/resolver.js +1 -1
- package/dist/summer/summer.js +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/miniprogram-json/index.js +1 -1
- package/dist/utils/babel_helper.js +1 -1
- package/dist/utils/common.js +1 -1
- package/dist/utils/error.js +1 -1
- package/dist/utils/fsagent.js +1 -1
- package/dist/utils/glob.js +1 -1
- package/dist/utils/jsonParse.js +1 -1
- package/dist/utils/locales/locales.js +1 -1
- package/dist/utils/request.js +1 -1
- package/dist/utils/sign.js +1 -1
- package/dist/utils/taskstatus.js +1 -1
- package/dist/utils/tools.js +1 -1
- package/dist/utils/white_ext_list.js +1 -1
- package/dist/vendor/babel_runtime/helpers/AsyncGenerator.js +1 -1
- package/dist/vendor/babel_runtime/helpers/OverloadYield.js +1 -0
- package/dist/vendor/babel_runtime/helpers/applyDecs.js +1 -0
- package/dist/vendor/babel_runtime/helpers/applyDecs2203.js +1 -0
- package/dist/vendor/babel_runtime/helpers/applyDecs2203R.js +1 -0
- package/dist/vendor/babel_runtime/helpers/applyDecs2301.js +1 -0
- package/dist/vendor/babel_runtime/helpers/asyncGeneratorDelegate.js +1 -1
- package/dist/vendor/babel_runtime/helpers/asyncIterator.js +1 -1
- package/dist/vendor/babel_runtime/helpers/awaitAsyncGenerator.js +1 -1
- package/dist/vendor/babel_runtime/helpers/checkInRHS.js +1 -0
- package/dist/vendor/babel_runtime/helpers/checkPrivateRedeclaration.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classApplyDescriptorDestructureSet.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classApplyDescriptorGet.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classApplyDescriptorSet.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classCheckPrivateStaticAccess.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classCheckPrivateStaticFieldDescriptor.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classExtractFieldDescriptor.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classNameTDZError.js +1 -1
- package/dist/vendor/babel_runtime/helpers/classPrivateFieldDestructureSet.js +1 -1
- package/dist/vendor/babel_runtime/helpers/classPrivateFieldGet.js +1 -1
- package/dist/vendor/babel_runtime/helpers/classPrivateFieldInitSpec.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classPrivateFieldSet.js +1 -1
- package/dist/vendor/babel_runtime/helpers/classPrivateMethodInitSpec.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classStaticPrivateFieldDestructureSet.js +1 -0
- package/dist/vendor/babel_runtime/helpers/classStaticPrivateFieldSpecGet.js +1 -1
- package/dist/vendor/babel_runtime/helpers/classStaticPrivateFieldSpecSet.js +1 -1
- package/dist/vendor/babel_runtime/helpers/classStaticPrivateMethodGet.js +1 -1
- package/dist/vendor/babel_runtime/helpers/construct.js +1 -1
- package/dist/vendor/babel_runtime/helpers/createClass.js +1 -1
- package/dist/vendor/babel_runtime/helpers/createForOfIteratorHelper.js +1 -1
- package/dist/vendor/babel_runtime/helpers/createForOfIteratorHelperLoose.js +1 -1
- package/dist/vendor/babel_runtime/helpers/defineAccessor.js +1 -0
- package/dist/vendor/babel_runtime/helpers/defineEnumerableProperties.js +1 -1
- package/dist/vendor/babel_runtime/helpers/defineProperty.js +1 -1
- package/dist/vendor/babel_runtime/helpers/extends.js +1 -1
- package/dist/vendor/babel_runtime/helpers/get.js +1 -1
- package/dist/vendor/babel_runtime/helpers/getPrototypeOf.js +1 -1
- package/dist/vendor/babel_runtime/helpers/identity.js +1 -0
- package/dist/vendor/babel_runtime/helpers/inherits.js +1 -1
- package/dist/vendor/babel_runtime/helpers/inheritsLoose.js +1 -1
- package/dist/vendor/babel_runtime/helpers/interopRequireDefault.js +1 -1
- package/dist/vendor/babel_runtime/helpers/interopRequireWildcard.js +1 -1
- package/dist/vendor/babel_runtime/helpers/isNativeReflectConstruct.js +1 -1
- package/dist/vendor/babel_runtime/helpers/iterableToArray.js +1 -1
- package/dist/vendor/babel_runtime/helpers/iterableToArrayLimit.js +1 -1
- package/dist/vendor/babel_runtime/helpers/iterableToArrayLimitLoose.js +1 -1
- package/dist/vendor/babel_runtime/helpers/objectDestructuringEmpty.js +1 -1
- package/dist/vendor/babel_runtime/helpers/objectSpread.js +1 -1
- package/dist/vendor/babel_runtime/helpers/possibleConstructorReturn.js +1 -1
- package/dist/vendor/babel_runtime/helpers/readOnlyError.js +1 -1
- package/dist/vendor/babel_runtime/helpers/regeneratorRuntime.js +1 -0
- package/dist/vendor/babel_runtime/helpers/set.js +1 -1
- package/dist/vendor/babel_runtime/helpers/setPrototypeOf.js +1 -1
- package/dist/vendor/babel_runtime/helpers/toPrimitive.js +1 -1
- package/dist/vendor/babel_runtime/helpers/toPropertyKey.js +1 -1
- package/dist/vendor/babel_runtime/helpers/typeof.js +1 -1
- package/dist/vendor/babel_runtime/helpers/wrapRegExp.js +1 -1
- package/dist/vendor/babel_runtime/helpers/writeOnlyError.js +1 -0
- package/dist/vendor/cloud-api/src/apis/apis.js +1 -1
- package/dist/vendor/cloud-api/src/apis/cdn/cdn.apis.js +1 -1
- package/dist/vendor/cloud-api/src/apis/cdn/index.js +1 -1
- package/dist/vendor/cloud-api/src/apis/flexdb/flexdb.apis.js +1 -1
- package/dist/vendor/cloud-api/src/apis/flexdb/index.js +1 -1
- package/dist/vendor/cloud-api/src/apis/scf/index.js +1 -1
- package/dist/vendor/cloud-api/src/apis/scf/scf.apis.js +1 -1
- package/dist/vendor/cloud-api/src/apis/ssl/index.js +1 -1
- package/dist/vendor/cloud-api/src/apis/ssl/ssl.apis.js +1 -1
- package/dist/vendor/cloud-api/src/apis/tcb/general.apis.js +1 -1
- package/dist/vendor/cloud-api/src/apis/tcb/index.js +1 -1
- package/dist/vendor/cloud-api/src/apis/tcb/tcb.apis.js +1 -1
- package/dist/vendor/cloud-api/src/index.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/contracts/cdn.contracts.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/contracts/contracts.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/contracts/flexdb.contracts.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/contracts/scf.contracts.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/contracts/ssl.contracts.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/contracts/tcb.contracts.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/validations/cdn.validations.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/validations/common.validations.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/validations/flexdb.validations.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/validations/scf.validations.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/validations/ssl.validations.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/validations/tcb.validations.js +1 -1
- package/dist/vendor/cloud-api/src/transaction/validations/validations.js +1 -1
- package/dist/vendor/cloud-api/src/utils/common.js +1 -1
- package/package.json +23 -22
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { MiniProgramCI } from '../types';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
type IProject = MiniProgramCI.IProject;
|
|
4
|
+
type IStat = MiniProgramCI.IStat;
|
|
5
|
+
type ProjectType = MiniProgramCI.ProjectType;
|
|
6
6
|
export interface ICreateProjectOptions {
|
|
7
7
|
projectPath: string;
|
|
8
8
|
type: ProjectType;
|
|
@@ -20,11 +20,11 @@ export interface IInnerUploadOptions extends IUploadOptions {
|
|
|
20
20
|
searchQuery?: string;
|
|
21
21
|
scene?: number;
|
|
22
22
|
}
|
|
23
|
-
export
|
|
23
|
+
export type TSubPackageInfo = Array<{
|
|
24
24
|
name: string;
|
|
25
25
|
size: number;
|
|
26
26
|
}>;
|
|
27
|
-
export
|
|
27
|
+
export type TPluginInfo = Array<{
|
|
28
28
|
pluginProviderAppid: string;
|
|
29
29
|
version: string;
|
|
30
30
|
size: number;
|
package/dist/@types/config.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { Project } from '../../ci/project';
|
|
3
3
|
import { MiniProgramCI } from '../../types';
|
|
4
|
-
|
|
4
|
+
type IStat = MiniProgramCI.IStat;
|
|
5
5
|
export declare class ProjectWithMockBuffer extends Project {
|
|
6
6
|
private mockBuffer;
|
|
7
7
|
setMockFileCache(mockedProject: object): void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { CACHE_KEY } from '../../utils/cache';
|
|
3
3
|
import { MiniProgramCI, IProject, PageJSON } from '../../types';
|
|
4
|
-
|
|
4
|
+
type IDevtoolProject = IProject & {
|
|
5
5
|
onFileChange?: any;
|
|
6
6
|
};
|
|
7
7
|
export declare class ReactiveProject implements MiniProgramCI.IProject {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
type ProcessEnv = 'main' | 'childprocess' | 'workerthread' | 'workerprocess';
|
|
2
|
+
type HostEnv = 'devtools' | 'ci';
|
|
3
3
|
export declare const processEnv: ProcessEnv;
|
|
4
4
|
export declare const hostEnv: HostEnv;
|
|
5
5
|
export declare const summerProcess: boolean;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
type ILoggerLevel = 'trace' | 'info' | 'log' | 'warn' | 'error';
|
|
2
|
+
type ILoggerOutput = (level: ILoggerLevel, args: any[]) => void;
|
|
3
3
|
declare class Logger {
|
|
4
4
|
private output;
|
|
5
5
|
private enableLevel;
|
|
@@ -2,6 +2,6 @@ import { ISchema, IValidateResult } from '../../../schema/dist';
|
|
|
2
2
|
export declare const config: {
|
|
3
3
|
[key: string]: ISchema;
|
|
4
4
|
};
|
|
5
|
-
export
|
|
5
|
+
export type FILE = 'app' | 'ext' | 'game' | 'page' | 'plugin' | 'pluginpage' | 'projectconfig' | 'sitemap' | 'theme';
|
|
6
6
|
export declare function schemaValidate(file: FILE, instance: any): IValidateResult;
|
|
7
7
|
export declare const NEW_CHECK_JSON_WAY = true;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
type IValidType = 'number' | 'string' | 'object' | 'array' | 'function' | 'boolean' | 'undefined' | 'null' | 'regexp' | 'ignore';
|
|
2
2
|
declare class T {
|
|
3
3
|
value: any;
|
|
4
4
|
private type;
|
|
@@ -5,7 +5,7 @@ interface DevtoolMessageHub {
|
|
|
5
5
|
showStatus: (id: number, message: string) => void;
|
|
6
6
|
hideStatus: (id: number) => void;
|
|
7
7
|
}
|
|
8
|
-
export
|
|
8
|
+
export type ProgressUpdate = (id: number, status: 'doing' | 'done', message: string) => void;
|
|
9
9
|
interface IProject {
|
|
10
10
|
id: string;
|
|
11
11
|
appid: string;
|
|
@@ -42,25 +42,25 @@ interface InitMsg {
|
|
|
42
42
|
type: 'init';
|
|
43
43
|
data: any;
|
|
44
44
|
}
|
|
45
|
-
export
|
|
46
|
-
export
|
|
45
|
+
export type ProcessMessage = InitMsg | RequestMsg | ResponseMsg | EventMsg | ProgressMsg;
|
|
46
|
+
export type IPackageCodeOptions = {
|
|
47
47
|
package: string;
|
|
48
48
|
partialCompilePath?: string[];
|
|
49
49
|
};
|
|
50
50
|
declare const miniprogram = "miniprogram";
|
|
51
51
|
declare const plugin = "plugin";
|
|
52
|
-
export
|
|
53
|
-
export
|
|
52
|
+
export type GraphId = typeof miniprogram | typeof plugin;
|
|
53
|
+
export type IGetConfOptions = {
|
|
54
54
|
graphId: GraphId;
|
|
55
55
|
};
|
|
56
|
-
export
|
|
56
|
+
export type ICompileSingleCodeOptions = {
|
|
57
57
|
graphId: GraphId;
|
|
58
58
|
filePath: string;
|
|
59
59
|
sourceCode?: string;
|
|
60
60
|
};
|
|
61
61
|
export declare const MainPkg = "__APP__";
|
|
62
62
|
export declare const FullPkg = "__FULL__";
|
|
63
|
-
export
|
|
63
|
+
export type IGetCodeOptions = {
|
|
64
64
|
graphId: GraphId;
|
|
65
65
|
cacheMd5: Record<string, string>;
|
|
66
66
|
package?: string;
|
|
@@ -80,8 +80,8 @@ export interface CodeError {
|
|
|
80
80
|
path: string;
|
|
81
81
|
error: any;
|
|
82
82
|
}
|
|
83
|
-
export
|
|
84
|
-
export
|
|
83
|
+
export type CodeFiles = Record<string, CodeFile | CodeError>;
|
|
84
|
+
export type LocalFiles = Record<string, {
|
|
85
85
|
size: number;
|
|
86
86
|
}>;
|
|
87
87
|
export interface ICompilerStatus {
|
|
@@ -96,7 +96,7 @@ export interface ICompilerStatus {
|
|
|
96
96
|
};
|
|
97
97
|
};
|
|
98
98
|
}
|
|
99
|
-
export
|
|
99
|
+
export type ICompileResult = Record<string, string | Buffer>;
|
|
100
100
|
export interface IAppConf {
|
|
101
101
|
app: any;
|
|
102
102
|
packages: Record<string, any>;
|
|
@@ -110,8 +110,8 @@ export interface IPluginConf {
|
|
|
110
110
|
pages: Record<string, any>;
|
|
111
111
|
comps: Record<string, any>;
|
|
112
112
|
}
|
|
113
|
-
|
|
114
|
-
export
|
|
113
|
+
type ISummerPluginConfig = Array<string | [string, SummerPluginOptions]>;
|
|
114
|
+
export type IBabelSetting = {
|
|
115
115
|
outputPath?: string;
|
|
116
116
|
ignore?: any[];
|
|
117
117
|
};
|
|
@@ -7,8 +7,8 @@ import { ResolveFileInfo, Resolver } from '../resolver';
|
|
|
7
7
|
import { Project } from '../project';
|
|
8
8
|
import { Recorder } from '../recorder';
|
|
9
9
|
import PersistCache from '../persist_cache';
|
|
10
|
-
|
|
11
|
-
export
|
|
10
|
+
type GraphType = 'miniprogram' | 'plugin' | 'other';
|
|
11
|
+
export type FileInfo = ResolveFileInfo & {
|
|
12
12
|
independentRoot: string;
|
|
13
13
|
isBabelIgnore: boolean;
|
|
14
14
|
};
|
|
@@ -7,10 +7,10 @@ interface IResolveExt {
|
|
|
7
7
|
js?: string;
|
|
8
8
|
wxs?: string;
|
|
9
9
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
export
|
|
10
|
+
type ResolveValue<T> = T extends Promise<infer K> ? K : T;
|
|
11
|
+
type EnsurePromise<T> = Promise<ResolveValue<T>>;
|
|
12
|
+
type Arg0<H extends Exclude<keyof PluginHooks, 'resolveExt'>> = Parameters<PluginHooks[H]>[0];
|
|
13
|
+
export type ReplaceContext = (context: PluginContext, plugin: SummerPlugin) => PluginContext;
|
|
14
14
|
export interface ICompilerPlugin extends PluginHooks {
|
|
15
15
|
resolveExt?: IResolveExt;
|
|
16
16
|
}
|
|
@@ -7,11 +7,11 @@ export interface IStat {
|
|
|
7
7
|
isDirectory: boolean;
|
|
8
8
|
size?: number;
|
|
9
9
|
}
|
|
10
|
-
export
|
|
11
|
-
|
|
10
|
+
export type FileChange = (type: 'unlink' | 'unlinkDir' | 'add' | 'addDir' | 'change', targetPath: string) => void;
|
|
11
|
+
type ProjectEventEmitter = TypedEventEmitter<{
|
|
12
12
|
fileChange: FileChange;
|
|
13
13
|
}>;
|
|
14
|
-
|
|
14
|
+
type ProjectOptions = Omit<ICompilerOptions, 'summerPlugins'>;
|
|
15
15
|
export declare class Project implements IDevtoolProject {
|
|
16
16
|
projectPath: string;
|
|
17
17
|
appid: string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { IStat } from '@/types';
|
|
2
2
|
import { BaseGraph } from './graph/basegraph';
|
|
3
3
|
declare const targetCodeExts: readonly ["json", "wxml", "wxss", "js", "wxs"];
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
type TargetCodeExt = typeof targetCodeExts[number];
|
|
5
|
+
type ResolveExtConf = Record<TargetCodeExt, string[]>;
|
|
6
6
|
export interface ResolveFileInfo {
|
|
7
7
|
path: string;
|
|
8
8
|
source: string;
|
|
@@ -3,7 +3,7 @@ import { IProject } from '../types';
|
|
|
3
3
|
import type { RawSourceMap } from 'source-map';
|
|
4
4
|
import { IAppConf } from './devtool';
|
|
5
5
|
import * as BabelTypes from '@babel/types';
|
|
6
|
-
export
|
|
6
|
+
export type IBasicCodeExt = 'js' | 'wxml' | 'wxss' | 'json' | 'wxs';
|
|
7
7
|
export declare const BasicCodeExts: readonly ["js", "wxml", "wxss", "json", "wxs"];
|
|
8
8
|
export declare enum FileType {
|
|
9
9
|
JSON = "json",
|
|
@@ -42,53 +42,53 @@ export interface PluginContext {
|
|
|
42
42
|
runWorkerMethod: (method: string, ...args: any[]) => Promise<any>;
|
|
43
43
|
rootPath?: string;
|
|
44
44
|
}
|
|
45
|
-
export
|
|
45
|
+
export type SourceMap = Omit<RawSourceMap, 'version'> & {
|
|
46
46
|
version: number | string;
|
|
47
47
|
};
|
|
48
48
|
export declare enum AstType {
|
|
49
49
|
Babel = "babel",
|
|
50
50
|
Acorn = "acorn"
|
|
51
51
|
}
|
|
52
|
-
|
|
52
|
+
type AstInfo = {
|
|
53
53
|
ast: AcornNode;
|
|
54
54
|
type: AstType.Acorn;
|
|
55
55
|
} | {
|
|
56
56
|
ast: BabelTypes.File;
|
|
57
57
|
type: AstType.Babel;
|
|
58
58
|
};
|
|
59
|
-
export
|
|
59
|
+
export type SourceDescription = {
|
|
60
60
|
sourceCode: string;
|
|
61
61
|
inputMap?: SourceMap;
|
|
62
62
|
astInfo?: AstInfo;
|
|
63
63
|
target?: GenerateDescription;
|
|
64
64
|
largeFile?: boolean;
|
|
65
65
|
};
|
|
66
|
-
export
|
|
66
|
+
export type GenerateDescription = {
|
|
67
67
|
code: string;
|
|
68
68
|
map?: SourceMap;
|
|
69
69
|
helpers?: string[];
|
|
70
70
|
};
|
|
71
|
-
|
|
72
|
-
export
|
|
73
|
-
export
|
|
74
|
-
export
|
|
75
|
-
export
|
|
76
|
-
export
|
|
71
|
+
type LoadResult = SourceDescription | string | null | undefined;
|
|
72
|
+
export type AsyncPluginHooks = 'load' | 'transform' | 'optimize' | 'generate' | 'compress' | 'sealed';
|
|
73
|
+
export type FirstPluginHooks = 'load' | 'generate';
|
|
74
|
+
export type SequentialPluginHooks = 'transform' | 'optimize' | 'compress';
|
|
75
|
+
export type ParallelPluginHooks = 'sealed';
|
|
76
|
+
export type LoadHook = (this: PluginContext, targetPath: string, sourcePath: string, options: {
|
|
77
77
|
independentRoot: string;
|
|
78
78
|
isBabelIgnore: boolean;
|
|
79
79
|
}) => Promise<LoadResult> | LoadResult;
|
|
80
|
-
export
|
|
80
|
+
export type TransformHook = (this: PluginContext, source: SourceDescription, targetPath: string, sourcePath: string, options: {
|
|
81
81
|
independentRoot: string;
|
|
82
82
|
isBabelIgnore: boolean;
|
|
83
83
|
}) => Promise<SourceDescription> | SourceDescription;
|
|
84
|
-
|
|
85
|
-
export
|
|
84
|
+
type GenerateResult = GenerateDescription | string | null | undefined;
|
|
85
|
+
export type GenerateHook = (this: PluginContext, source: SourceDescription, targetPath: string, sourcePath: string, options: {
|
|
86
86
|
independentRoot: string;
|
|
87
87
|
isBabelIgnore: boolean;
|
|
88
88
|
}) => Promise<GenerateResult> | GenerateResult;
|
|
89
|
-
export
|
|
90
|
-
export
|
|
91
|
-
export
|
|
89
|
+
export type OptimizeHook = (this: PluginContext, codes: Record<string, string>, appConf: IAppConf) => Promise<Record<string, string>>;
|
|
90
|
+
export type CompressHook = (this: PluginContext, content: Record<string, string | Buffer>) => Promise<Record<string, string | Buffer>>;
|
|
91
|
+
export type SealedHook = (this: PluginContext, content: Record<string, string | Buffer>) => Promise<void>;
|
|
92
92
|
export interface PluginHooks {
|
|
93
93
|
load: LoadHook;
|
|
94
94
|
transform: TransformHook;
|
|
@@ -110,7 +110,7 @@ export interface SummerPlugin extends Partial<PluginHooks> {
|
|
|
110
110
|
workerMethods?: Record<string, Function>;
|
|
111
111
|
resolveExt?: ResolveExt;
|
|
112
112
|
}
|
|
113
|
-
export
|
|
113
|
+
export type SummerPluginOptions = Record<string, any>;
|
|
114
114
|
export interface TypedEventEmitter<T extends {
|
|
115
115
|
[event: string]: (...args: any) => any;
|
|
116
116
|
}> {
|
|
@@ -130,8 +130,8 @@ export interface TypedEventEmitter<T extends {
|
|
|
130
130
|
removeListener<K extends keyof T>(event: K, listener: T[K]): this;
|
|
131
131
|
setMaxListeners(n: number): this;
|
|
132
132
|
}
|
|
133
|
-
export
|
|
134
|
-
export
|
|
133
|
+
export type ChangeEvent = 'create' | 'update' | 'delete';
|
|
134
|
+
export type SummerWatcherEvent = {
|
|
135
135
|
code: 'START';
|
|
136
136
|
} | {
|
|
137
137
|
code: 'BUILD_END';
|
|
@@ -158,7 +158,7 @@ interface AcornNode {
|
|
|
158
158
|
start: number;
|
|
159
159
|
type: string;
|
|
160
160
|
}
|
|
161
|
-
export
|
|
161
|
+
export type IDevtoolProject = IProject & {
|
|
162
162
|
onFileChange?: any;
|
|
163
163
|
};
|
|
164
164
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SummerPluginOptions } from './types';
|
|
2
|
-
export
|
|
2
|
+
export type IRunSummerPluginHookData = {
|
|
3
3
|
command: 'clear';
|
|
4
4
|
} | {
|
|
5
5
|
command: 'runMethod';
|
|
@@ -9,7 +9,7 @@ export declare type IRunSummerPluginHookData = {
|
|
|
9
9
|
method: string;
|
|
10
10
|
args: any;
|
|
11
11
|
};
|
|
12
|
-
export
|
|
12
|
+
export type IRunSummerPluginHookResult = {
|
|
13
13
|
error?: any;
|
|
14
14
|
result?: any;
|
|
15
15
|
};
|
|
@@ -116,7 +116,7 @@ export declare namespace MiniProgramCI {
|
|
|
116
116
|
endLine?: number;
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
|
-
export
|
|
120
|
-
export
|
|
121
|
-
export
|
|
122
|
-
export
|
|
119
|
+
export type ProjectType = MiniProgramCI.ProjectType;
|
|
120
|
+
export type IProject = MiniProgramCI.IProject;
|
|
121
|
+
export type IStat = MiniProgramCI.IStat;
|
|
122
|
+
export type IAnyObject = MiniProgramCI.IAnyObject;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
|
|
1
|
+
type ReportAction = 'preview' | 'upload' | 'npm' | 'cloud' | 'getDevSourceMap';
|
|
2
2
|
export declare function wrapReport<T extends Function>(action: ReportAction, method: T): T;
|
|
3
3
|
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { JSONValidation } from '../../utils/validator';
|
|
2
2
|
import { TransactType } from '../transactor';
|
|
3
3
|
import { EventEmitter } from 'eventemitter3';
|
|
4
|
-
export
|
|
4
|
+
export type TTransactionContractRecord<I, O> = {
|
|
5
5
|
timestamps: [number, number];
|
|
6
6
|
input: I;
|
|
7
7
|
maybeBrokenOutput: O;
|
|
@@ -28,7 +28,7 @@ export interface ITransactionContractOptions<I, O> {
|
|
|
28
28
|
outputTransformationThrows?(possibleOutput: any, transactType: TransactType): O;
|
|
29
29
|
inputTransformation?(input: I, transactType: TransactType): any;
|
|
30
30
|
}
|
|
31
|
-
export
|
|
31
|
+
export type ReportableRecord = {
|
|
32
32
|
inputName: string;
|
|
33
33
|
} & TTransactionContractRecord<any, any>;
|
|
34
34
|
export declare const allContractsRecords: ReportableRecord[];
|
|
@@ -3,20 +3,20 @@ declare interface IJSONObject {
|
|
|
3
3
|
}
|
|
4
4
|
declare interface IJSONArray extends Array<JSONLike> {
|
|
5
5
|
}
|
|
6
|
-
|
|
6
|
+
type PrimitiveJSONValues = boolean | number | null | string | undefined;
|
|
7
7
|
declare type JSONLike = IJSONObject | IJSONArray | PrimitiveJSONValues;
|
|
8
|
-
|
|
8
|
+
type Primitive = undefined | null | boolean | string | number | (typeof Function);
|
|
9
9
|
interface IDeepImmutableArray<T> extends ReadonlyArray<DeepImmutable<T>> {
|
|
10
10
|
}
|
|
11
11
|
interface IDeepImmutableMap<K, V> extends ReadonlyMap<DeepImmutable<K>, DeepImmutable<V>> {
|
|
12
12
|
}
|
|
13
|
-
|
|
13
|
+
type DeepImmutableObject<T> = {
|
|
14
14
|
readonly [K in keyof T]: DeepImmutable<T[K]>;
|
|
15
15
|
};
|
|
16
|
-
|
|
17
|
-
export
|
|
18
|
-
export
|
|
19
|
-
export
|
|
16
|
+
type DeepImmutable<T> = T extends Primitive ? T : T extends Array<infer U> ? IDeepImmutableArray<U> : T extends Map<infer K, infer V> ? IDeepImmutableMap<K, V> : DeepImmutableObject<T>;
|
|
17
|
+
export type JSONValidationFn = (input: any, path: string, validator: typeof validJSON) => void;
|
|
18
|
+
export type JSONValidation = JSONValidationFn | Record<string, any> | JSONLike;
|
|
19
|
+
export type DeepImmutableJSONValidation = DeepImmutable<JSONValidation>;
|
|
20
20
|
import { EventEmitter } from 'eventemitter3';
|
|
21
21
|
export declare function getType(o: any): string;
|
|
22
22
|
export interface IValidator {
|
package/dist/ci/code-analyse.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.analyseCode=exports.transCompileType=void 0;const tslib_1=require("tslib"),projectconfig_1=require("../core/json/projectconfig"),code_analyse_1=require("../vendor/code-analyse"),path_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.analyseCode=exports.transCompileType=void 0;const tslib_1=require("tslib"),projectconfig_1=require("../core/json/projectconfig"),code_analyse_1=require("../vendor/code-analyse"),path_1=tslib_1.__importDefault(require("path"));function transCompileType(e){if("miniProgram"===e.type)return"miniprogram";if("miniProgramPlugin"===e.type)return"plugin";if("miniGame"===e.type)return"game";if("miniGamePlugin"===e.type)return"gamePlugin";throw new Error("unknown compile type "+e.type)}exports.transCompileType=transCompileType;class LogPlugin{constructor(){this.name="LogPlugin"}onDepResolveFailed(e,o){var n,i;console.warn(`${null===(n=e.originModule)||void 0===n?void 0:n.type} module ${null===(i=e.originModule)||void 0===i?void 0:i.path} resolve dep failed`),console.warn(o)}onModuleBuildFailed(e,o,n){console.warn(`${e.type} module ${e.path} build failed`),console.warn(n)}}async function analyseCode(e,o){const n=(0,projectconfig_1.getProjectConfigJSON)(e),i=transCompileType(e);if("gamePlugin"===i)throw new Error("gamePlugin is not support yet!");let r="plugin"===i?n.pluginRoot:n.miniprogramRoot;r=r?path_1.default.posix.join(e.projectPath,r):e.projectPath;const t=new code_analyse_1.Analyzer({root:r,type:i,plugins:(null==o?void 0:o.silent)?[]:[new LogPlugin]});return await t.analyse(),t.serialize()}exports.analyseCode=analyseCode;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
package/dist/ci/cos-upload.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadByCos=void 0;const tslib_1=require("tslib"),url_config_1=require("../utils/url_config"),tools_1=require("../utils/tools"),request_1=require("../utils/request"),sign_1=require("../utils/sign"),pack_1=require("./utils/pack"),zlib=require("zlib"),crypto=require("crypto"),config_1=require("../config"),upload_1=require("./upload"),log_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadByCos=void 0;const tslib_1=require("tslib"),url_config_1=require("../utils/url_config"),tools_1=require("../utils/tools"),request_1=require("../utils/request"),sign_1=require("../utils/sign"),pack_1=require("./utils/pack"),zlib=require("zlib"),crypto=require("crypto"),config_1=require("../config"),upload_1=require("./upload"),log_1=tslib_1.__importDefault(require("../utils/log")),jsonParse_1=require("../utils/jsonParse"),COS=require("cos-nodejs-sdk-v5");async function putBufferToCos(e,t){const r=new COS({Proxy:(0,request_1.getCiProxy)(),getAuthorization(e,r){r({TmpSecretId:t.secret_id,TmpSecretKey:t.secret_key,XCosSecurityToken:t.token,ExpiredTime:t.expired_time})}});try{return await new Promise((o,i)=>{r.putObject({Bucket:t.bucket,Region:"ap-shanghai",Key:t.object,Body:e,onProgress(e){}},(e,t)=>{if(e)return console.error(e),i(e.error);o(t)})})}catch(e){throw new Error("upload to cos failed: "+e.message)}}async function innerRequest(e,t){const r=await(0,request_1.request)({url:e,method:"post",body:t,headers:{"content-type":"application/json"}});let o;try{o=JSON.parse(r.body)}catch(t){const r=`request ${e} failed: resp body is not a valid json`;throw log_1.default.error(r),new Error(r)}if(0!==o.errCode)throw new Error(`request failed, errCode: ${o.errCode}, errMsg: ${o.errMsg}`);return o.data}async function uploadByCos(e,t,r,o){let i;try{const e=await(0,sign_1.getSignature)(r.privateKey,r.appid);i=await innerRequest(url_config_1.GET_UPLOAD_TOKEN,JSON.stringify({appid:r.appid,signature:e,robot:o}))}catch(e){return console.error("uploadToken error",e),{fallback:!0}}const s=e,a=crypto.randomBytes(12),n=crypto.createCipheriv("aes-256-gcm",Buffer.from(i.crypt_key,"base64"),a),u=Buffer.concat([n.update(s),n.final()]),c=n.getAuthTag(),l=Buffer.alloc(1);l.writeUInt8(c.length+a.length,0);const p=Buffer.concat([l,c,a,u]),d=Date.now();await putBufferToCos(p,i);const _=Date.now()-d,f=(0,tools_1.generateMD5)(s),g=await(0,sign_1.getSignature)(r.privateKey,r.appid),y=`${t}&task_id=${i.task_id}&new_hash=${f}&upload_cos_cost_time=${_}`;log_1.default.info("request url:",y);let w=await(0,request_1.request)({url:y,method:"post",body:zlib.gzipSync((0,pack_1.pack)({[upload_1.SIGNATURE_FILE_NAME]:JSON.stringify({signature:g,version:config_1.CI_VERSION})}).buffer)});if(0!==(0,jsonParse_1.jsonRespParse)(w.body.toString(),t).errCode)throw new Error(w.body.toString());for(;;){const e=await(0,sign_1.getSignature)(r.privateKey,r.appid),t=await innerRequest(`${url_config_1.GET_ASYNC_RESULT}?task_id=${i.task_id}`,JSON.stringify({appid:r.appid,signature:e,robot:o}));if(1!==t.status){if(0===t.status)return{fallback:!1,body:t,uploadCOSCostTime:_};if(3===t.status)throw new Error(`upload failed with status ${t.status}, task not found`);throw new Error("upload failed with status "+t.status)}await new Promise(e=>{setTimeout(e,1e3)})}}exports.uploadByCos=uploadByCos;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCompiledResult=exports.SIGNATURE_FILE_NAME=void 0;const tslib_1=require("tslib"),fs_extra_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCompiledResult=exports.SIGNATURE_FILE_NAME=void 0;const tslib_1=require("tslib"),fs_extra_1=tslib_1.__importDefault(require("fs-extra")),compile_1=require("../core/compile"),config_1=require("../config"),error_1=require("../utils/error"),locales_1=tslib_1.__importDefault(require("../utils/locales/locales")),cache_1=require("../utils/cache"),jszip_1=tslib_1.__importDefault(require("jszip")),path_1=tslib_1.__importDefault(require("path")),filterUnusedFile_1=require("./utils/filterUnusedFile");async function getCompiledResult(e,t){const{test:r,project:i,setting:o={},version:s="",onProgressUpdate:l=function(e){console.log(""+e)},threads:a=0,includedMap:_=!1,allowIgnoreUnusedFiles:n=!0}=e;if(process.env.COMPILE_THREADS=a.toString(),!s)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("upload","version"),config_1.PARAM_ERROR);if(!i)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("upload","project"),config_1.PARAM_ERROR);cache_1.cacheManager.clean();let c=await(0,compile_1.compile)(i,{setting:o,onProgressUpdate:l});!1!==n&&(c=await(0,filterUnusedFile_1.filterUnusedFile)(!!r,i,c));const u={};if(Object.keys(c).sort().forEach(e=>{e.endsWith("js.map")&&!_||(u[e]=c[e])}),t){const e=new jszip_1.default;Object.keys(u).forEach(t=>{e.folder(path_1.default.dirname(t)).file(path_1.default.basename(t),u[t])});const r=await e.generateAsync({type:"nodebuffer"});fs_extra_1.default.ensureDirSync(path_1.default.dirname(t)),fs_extra_1.default.writeFileSync(t,r)}return u}exports.SIGNATURE_FILE_NAME="ci.signature",exports.getCompiledResult=getCompiledResult;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getDevSourceMap=void 0;const tslib_1=require("tslib"),fs_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getDevSourceMap=void 0;const tslib_1=require("tslib"),fs_1=tslib_1.__importDefault(require("fs")),path_1=tslib_1.__importDefault(require("path")),log_1=tslib_1.__importDefault(require("../utils/log")),request_1=require("../utils/request"),url_config_1=require("../utils/url_config"),sign_1=require("../utils/sign"),JsZip=require("jszip"),ERR_MSG_PREFIX="download source map failed:";async function getExtAppId(e){let r,t={};try{r=await e.getFile(e.miniprogramRoot,"ext.json"),t=JSON.parse(r.toString("utf-8"))}catch(e){}if(null==t?void 0:t.extEnable)return t.extAppid}async function getDevSourceMap(e){const{project:r,robot:t,streaming:o}=e;let{sourceMapSavePath:a}=e;if(!r){const e="params project is requried";throw log_1.default.error(e),e}if("number"!=typeof t||Math.round(t)>30||Math.round(t)<=0){const e="params robot is invalid";throw log_1.default.error(e),e}if(!a){const e="params sourceMapSavePath is invalid";throw log_1.default.error(e),e}path_1.default.isAbsolute(a)||(a=path_1.default.join(process.cwd(),a));const i=await(0,sign_1.getSignature)(r.privateKey,r.appid),s=await getExtAppId(r),{body:l}=await(0,request_1.request)({url:url_config_1.GET_DEV_SOURCE_MAP,method:"post",gzip:!0,body:JSON.stringify({appid:r.appid,signature:i,robot:t,extAppId:s,streaming:o}),headers:{"content-type":"application/json"}});let u,p;try{u=JSON.parse(l)}catch(e){const r=ERR_MSG_PREFIX+" resp body is not a valid json";throw log_1.default.error(r),r}if(o)p=u.sourcemap_list;else{if(0!==u.errCode)throw new Error(`request failed, errCode: ${u.errCode}, errMsg: ${u.errMsg}`);const e=u.data;if(!Array.isArray(e.sourcemap_list)){const r=`${ERR_MSG_PREFIX} respData.sourcemap_list, respData: ${JSON.stringify(e)}`;throw log_1.default.error(r),r}p=e.sourcemap_list}const n=p,c=new JsZip;try{n.forEach(e=>{c.folder(path_1.default.dirname(e.fullpath)).file(path_1.default.basename(e.fullpath),e.sourcemap)})}catch(e){const r=ERR_MSG_PREFIX+" source map add folder or add file error";throw log_1.default.error(r),r}let _;try{_=await c.generateAsync({type:"nodebuffer"})}catch(e){const r=ERR_MSG_PREFIX+" source map generate zip error";throw log_1.default.error(r),r}try{fs_1.default.writeFileSync(a,_)}catch(e){const r=`${ERR_MSG_PREFIX} save source map to ${a} failed. Error detail: ${JSON.stringify(e)}`;throw log_1.default.error(r),r}return _}exports.getDevSourceMap=getDevSourceMap;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getLatestVersion=void 0;const tslib_1=require("tslib"),request_1=require("../utils/request"),sign_1=require("../utils/sign"),config_1=require("../config"),error_1=require("../utils/error"),locales_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getLatestVersion=void 0;const tslib_1=require("tslib"),request_1=require("../utils/request"),sign_1=require("../utils/sign"),config_1=require("../config"),error_1=require("../utils/error"),locales_1=tslib_1.__importDefault(require("../utils/locales/locales")),querystring_1=tslib_1.__importDefault(require("querystring")),url_config_1=require("../utils/url_config"),jsonParse_1=require("../utils/jsonParse");async function getLatestVersion(e){const{project:r}=e;if(!r)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("getLatestVersion","project"),config_1.PARAM_ERROR);if("miniProgramPlugin"!==r.type&&"miniGamePlugin"!==r.type)throw new Error("getLatestVersion only support plugin type project");const t=await(0,sign_1.getSignature)(r.privateKey,r.appid),i={appid:r.appid,signature:t};try{const e=`${url_config_1.GET_LATEST_VERSION}?${querystring_1.default.stringify(i)}`,r=(await(0,request_1.request)({url:e,method:"get"})).body.toString(),t=(0,jsonParse_1.jsonRespParse)(r,e);if(0!==t.errCode)throw new Error(r);return t.data}catch(e){throw new error_1.CodeError(e.toString(),config_1.GET_LATEST_VERSION_CGI_ERR)}}exports.getLatestVersion=getLatestVersion;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
package/dist/ci/jsserver.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadJsServer=exports.SIGNATURE_FILE_NAME=void 0;const tslib_1=require("tslib"),path_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadJsServer=exports.SIGNATURE_FILE_NAME=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),request_1=require("../utils/request"),packfile_1=require("./utils/packfile"),zlib_1=tslib_1.__importDefault(require("zlib")),sign_1=require("../utils/sign"),config_1=require("../config"),log_1=tslib_1.__importDefault(require("../utils/log")),error_1=require("../utils/error"),locales_1=tslib_1.__importDefault(require("../utils/locales/locales")),querystring_1=tslib_1.__importDefault(require("querystring")),url_config_1=require("../utils/url_config"),jsonParse_1=require("../utils/jsonParse"),projectconfig_1=require("../core/json/projectconfig");async function uploadJsServer(e){var r;const{project:o,env:t}=e;if(!t||"test"!==t&&"release"!==t)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("uploadJsServer","env"),config_1.PARAM_ERROR);if(!o)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("uploadJsServer","project"),config_1.PARAM_ERROR);const i=(0,projectconfig_1.getProjectConfigJSON)(o);if("string"!=typeof i.jsserverRoot||!(null===(r=o.stat("",i.jsserverRoot))||void 0===r?void 0:r.isDirectory))throw new error_1.CodeError("please set a correct jsserverRoot value in project.config.json",config_1.PARAM_ERROR);const s=await(0,packfile_1.packFiledir)(path_1.default.posix.join(o.projectPath,i.jsserverRoot)),_=await(0,sign_1.getSignature)(o.privateKey,o.appid),l={type:"release"===t?0:1,appid:o.appid,signature:_};try{const e=`${url_config_1.UPLOAD_JS_SERVER}?${querystring_1.default.stringify(l)}`;log_1.default.info("request url:",e);const r=zlib_1.default.gzipSync(s.data),o=(await(0,request_1.request)({url:e,method:"post",body:r})).body.toString();if(0!==(0,jsonParse_1.jsonRespParse)(o,e).errCode)throw new Error(o);return!0}catch(e){throw new error_1.CodeError(e.toString(),config_1.UPLOAD_JS_SERVER_CGI_ERR)}}exports.SIGNATURE_FILE_NAME="ci.signature",exports.uploadJsServer=uploadJsServer;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
package/dist/ci/preview.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.preview=void 0;const tslib_1=require("tslib"),upload_1=require("./upload"),terminalQrcode_1=require("./utils/terminalQrcode"),fs_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.preview=void 0;const tslib_1=require("tslib"),upload_1=require("./upload"),terminalQrcode_1=require("./utils/terminalQrcode"),fs_1=tslib_1.__importDefault(require("fs")),config_1=require("../config"),error_1=require("../utils/error"),locales_1=tslib_1.__importDefault(require("../utils/locales/locales")),log_1=tslib_1.__importDefault(require("../utils/log"));async function preview(e){const r=Object.assign({},e);if(r.test=!0,r.version="0.0.1",r.qrcodeFormat||(r.qrcodeFormat="terminal"),!["base64","image","terminal"].includes(r.qrcodeFormat))throw new error_1.CodeError(locales_1.default.config.INVALID.format("qrcodeFormat"),config_1.PARAM_ERROR);if(["base64","image"].includes(r.qrcodeFormat)&&("string"!=typeof r.qrcodeOutputDest||"."===r.qrcodeOutputDest.trim()))throw new error_1.CodeError(locales_1.default.config.INVALID.format("qrcodeOutputDest"),config_1.PARAM_ERROR);const o=await(0,upload_1.innerUpload)(r);if(!o.respBody.qrcode_img)throw new Error("No `qrcode_img` in response.");if("terminal"===r.qrcodeFormat)try{const e=await(0,terminalQrcode_1.generateTerminalQrcode)(o.respBody.qrcode_img);log_1.default.log(e),log_1.default.log("terminal qrcode shown above")}catch(e){log_1.default.error("Termianl qrcode generate failed, but you can still visit the dev version on your cell phone.")}else if(r.qrcodeOutputDest)if("image"===r.qrcodeFormat)try{fs_1.default.writeFileSync(r.qrcodeOutputDest,Buffer.from(o.respBody.qrcode_img,"base64")),log_1.default.info(`Qrcode image saved, file path: '${r.qrcodeOutputDest}'`)}catch(e){throw new Error("write qrcode image error: "+JSON.stringify(e))}else if("base64"===r.qrcodeFormat)try{fs_1.default.writeFileSync(r.qrcodeOutputDest,"data:image/jpeg;base64,"+o.respBody.qrcode_img,"utf8"),log_1.default.info(`Qrcode base64 file saved, file path: '${r.qrcodeOutputDest}'`)}catch(e){throw new Error("write qrcode base64 error: "+JSON.stringify(e))}return{subPackageInfo:o.subPackageInfo,pluginInfo:o.pluginInfo}}exports.preview=preview;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
package/dist/ci/project.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Project=void 0;const tslib_1=require("tslib"),path_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Project=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),glob_1=tslib_1.__importDefault(require("glob")),fs_1=tslib_1.__importDefault(require("fs")),projectattr_1=require("./projectattr"),tools_1=require("../utils/tools"),config_1=require("../config"),locales_1=tslib_1.__importDefault(require("../utils/locales/locales")),error_1=require("../utils/error"),request_1=require("../utils/request"),projectconfig_1=require("../core/json/projectconfig"),defaultIgnores=["node_modules/**/*","**/node_modules/**","**/.git/**",".git/**/*","**/.svn/**",".svn/**/*",".DS_Store","**/.DS_Store"];class Project{constructor(t){this.miniprogramRoot="",this.pluginRoot="",this._appid="",this._projectPath="",this._dirSet=new Set,this._fileSet=new Set,this._fileBufferCache={},this._privateKey="",this._ignores=[];const{appid:e,type:i,projectPath:r,ignores:s,privateKey:o="",privateKeyPath:a=""}=t;if(!e)throw new error_1.CodeError(locales_1.default.config.SHOULD_NOT_BE_EMPTY.format("appid"),config_1.PARAM_ERROR);if(!r)throw new error_1.CodeError(locales_1.default.config.SHOULD_NOT_BE_EMPTY.format("projectPath"),config_1.PARAM_ERROR);if(o)this._privateKey=o;else{if(!a)throw new error_1.CodeError(locales_1.default.config.SHOULD_NOT_BE_EMPTY.format("privateKeyPath"),config_1.PARAM_ERROR);try{this._privateKey=fs_1.default.readFileSync(a).toString("utf8")}catch(t){throw new error_1.CodeError(t.toString(),config_1.PARAM_ERROR)}}this._appid=e,this._type=i||"miniProgram",this._projectPath=path_1.default.isAbsolute(r)?(0,tools_1.normalizePath)(r):(0,tools_1.normalizePath)(path_1.default.join(process.cwd(),r)),this.init(s)}init(t=[]){(0,request_1.initGlobalProxy)(),this._ignores=t,this.updateFiles()}cacheDirName(t){this._dirSet.has(t)||(this._dirSet.add(t),this.cacheDirName(path_1.default.posix.dirname(t)))}getTargetPath(t,e){return(0,tools_1.normalizePath)(path_1.default.posix.join(t,e)).replace(/\/$/,"").replace(/^\//,"")}updateFiles(){this._fileBufferCache={};const t=glob_1.default.sync("**",{nodir:!1,ignore:[...defaultIgnores,...this._ignores],nosort:!0,strict:!1,silent:!0,cwd:this.projectPath,absolute:!1,mark:!0,dot:!0});for(const e of t){const t=e.replace(/\\/g,path_1.default.posix.sep),i=fs_1.default.statSync(path_1.default.posix.join(this.projectPath,e));i.isDirectory()&&this.cacheDirName(t.replace(/\/$/,"")),i.isFile()&&(this._fileSet.add(t),this.cacheDirName(path_1.default.posix.dirname(t)))}}async attr(){return this._attr||(this._attr=await(0,projectattr_1.getProjectAttr)(this._privateKey,this._appid)),this._attr}get projectPath(){return this._projectPath}get appid(){return this._appid}get type(){return this._type}get privateKey(){return this._privateKey||""}getFilesAndDirs(){return{files:Array.from(this._fileSet),dirs:Array.from(this._dirSet)}}async getExtAppid(){if(this._extAppid)return this._extAppid;if(null!==this._extAppid)try{const t=await(0,projectconfig_1.getProjectConfigJSON)(this),{miniprogramRoot:e=""}=t,i=await this.getFile(e,"ext.json"),r=JSON.parse(i.toString("utf-8"));return r.extEnable&&r.extAppid?this._extAppid=r.extAppid:this._extAppid=null,this._extAppid}catch(t){this._extAppid=null}}stat(t,e){const i=this.getTargetPath(t,e);if(this._fileSet.has(i)){return{isFile:!0,isDirectory:!1,size:fs_1.default.statSync(path_1.default.posix.join(this.projectPath,i)).size}}if(this._dirSet.has(i))return{isFile:!1,isDirectory:!0}}getFile(t,e){const i=this.getTargetPath(t,e),r=(0,tools_1.normalizePath)(path_1.default.posix.join(this.projectPath,i));return this._fileBufferCache[i]?this._fileBufferCache[i]:fs_1.default.readFileSync(r,null)}getFileList(t,e=""){return Array.from(this._fileSet).filter(i=>(!e||path_1.default.posix.extname(i)===e)&&(!t||0===i.indexOf(t)))}async onFileChange(t,e){if(e=(0,tools_1.normalizePath)(e).replace(/\/$/,"").replace(/^\//,""),"add"!==t&&"addDir"!==t||(this.cacheDirName(path_1.default.posix.dirname(e)),this._fileSet.add(e)),"addDir"===t&&this.cacheDirName(e),"unlink"===t&&this._fileSet.has(e)&&this._fileSet.delete(e),"unlinkDir"===t&&this._dirSet.has(e)){this._dirSet.delete(e);const t=e+"/",i=Array.from(this._dirSet);for(const e of i)0===e.indexOf(t)&&this._dirSet.delete(e);const r=Array.from(this._fileSet);for(const e of r)0===e.indexOf(t)&&this._fileSet.delete(e)}"change"===t&&this._fileSet.has(e)&&delete this._fileBufferCache[e]}}exports.Project=Project;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
package/dist/ci/projectattr.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getProjectAttr=void 0;const tslib_1=require("tslib"),request_1=require("../utils/request"),sign_1=require("../utils/sign"),log_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getProjectAttr=void 0;const tslib_1=require("tslib"),request_1=require("../utils/request"),sign_1=require("../utils/sign"),log_1=tslib_1.__importDefault(require("../utils/log")),config_1=require("../config"),url_config_1=require("../utils/url_config"),jsonParse_1=require("../utils/jsonParse"),testCache={};async function getProjectAttr(e,t){try{if(global.useAttrCache&&testCache[t])return testCache[t];const r=await(0,sign_1.getSignature)(e,t),{body:o}=await(0,request_1.request)({url:url_config_1.GET_ATTR_URL,method:"post",body:JSON.stringify({appid:t,signature:r}),headers:{"content-type":"application/json"}}),s=(0,jsonParse_1.jsonRespParse)(o,url_config_1.GET_ATTR_URL);if(0===s.errCode)return global.useAttrCache&&(testCache[t]=s.data),s.data;log_1.default.error(`get ${t} project attr fail errCode: ${s.errCode}, errMsg: ${s.errMsg}`)}catch(e){log_1.default.error(`get ${t} project attr fail ${e}`)}return config_1.DefaultProjectAttr}exports.getProjectAttr=getProjectAttr;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|
package/dist/ci/upload.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
!function(require, directRequire){
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.innerUpload=exports.upload=exports.SIGNATURE_FILE_NAME=void 0;const tslib_1=require("tslib"),request_1=require("../utils/request"),compile_1=require("../core/compile"),pack_1=require("./utils/pack"),zlib_1=
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.innerUpload=exports.upload=exports.SIGNATURE_FILE_NAME=void 0;const tslib_1=require("tslib"),request_1=require("../utils/request"),compile_1=require("../core/compile"),pack_1=require("./utils/pack"),zlib_1=tslib_1.__importDefault(require("zlib")),sign_1=require("../utils/sign"),tools_1=require("../utils/tools"),config_1=require("../config"),taskstatus_1=require("../utils/taskstatus"),log_1=tslib_1.__importDefault(require("../utils/log")),error_1=require("../utils/error"),locales_1=tslib_1.__importDefault(require("../utils/locales/locales")),querystring_1=tslib_1.__importDefault(require("querystring")),url_config_1=require("../utils/url_config"),jsonParse_1=require("../utils/jsonParse"),cache_1=require("../utils/cache"),cos_upload_1=require("./cos-upload"),filterUnusedFile_1=require("./utils/filterUnusedFile");exports.SIGNATURE_FILE_NAME="ci.signature";const MIN_COS_UPLOAD_SIZE=5242880;async function upload(e){var o;const t=await innerUpload(e);return(null===(o=t.respBody)||void 0===o?void 0:o.dev_plugin_id)&&(log_1.default.log("Development Version Plugin ID: "+t.respBody.dev_plugin_id),t.devPluginId=t.respBody.dev_plugin_id),{subPackageInfo:t.subPackageInfo,pluginInfo:t.pluginInfo,devPluginId:t.devPluginId}}async function innerUpload(e){const{project:o,setting:t={},desc:r=`robot ${e.robot||"1"} use miniprogram-ci to upload at ${(0,tools_1.formatTime)(new Date)}`,version:i="",robot:a="1",onProgressUpdate:l=function(e){console.log(""+e)},test:s,pagePath:n,searchQuery:u,threads:p=0,bigPackageSizeSupport:_,allowIgnoreUnusedFiles:d=!0}=e;let{useCOS:c}=e;if(process.env.COMPILE_THREADS=p.toString(),!i)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("upload","version"),config_1.PARAM_ERROR);if(!o)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("upload","project"),config_1.PARAM_ERROR);cache_1.cacheManager.clean();let f=await(0,compile_1.compile)(o,{setting:t,onProgressUpdate:l});!1!==d&&(f=await(0,filterUnusedFile_1.filterUnusedFile)(!!s,o,f));const g=config_1.CI_VERSION,b={codeprotect:t.codeProtect?1:0,type:o.type,appid:o.appid,version:i,desc:r,robot:a},y={scene:e.scene||1011};let S;n&&(y.path=n,b.path=n),u&&(y.query=querystring_1.default.parse(u)),b.debugLaunchInfo=JSON.stringify(y),n&&u&&(b.path+="?"+u),s&&_&&(b.bigPackageSizeSupport=1);let q={};try{S=await o.getFile(o.miniprogramRoot,"ext.json"),q=JSON.parse(S.toString("utf-8"))}catch(e){}if(q&&(q.extEnable&&(b.extAppId=q.extAppid),q.directCommit)){let e="";e=q.extEnable?"The code will be uploaded into the waiting list of extAppid.":"The code will be uploaded into the draft box of the third-party platform.",log_1.default.warn(e)}try{const e=new taskstatus_1.TaskStatus(locales_1.default.config.UPLOAD.toString());l(e);const t=`${s?url_config_1.TEST_SOURCE_URL:url_config_1.UPLOAD_URL}?${querystring_1.default.stringify(b)}`;let r,i=!1,n=0;const u=(0,pack_1.pack)(f),p=zlib_1.default.gzipSync(u.buffer);if(log_1.default.info("useCOS parameter: ",c),log_1.default.info("upload zip buffer size: ",p.length),void 0===c&&(c=p.length>5242880),c){log_1.default.info("upload by COS: ",c);const e=await(0,cos_upload_1.uploadByCos)(p,t,o,a);e.fallback?(i=e.fallback,log_1.default.info("upload by COS failed, fallback to http way")):(r={body:e.body},n=e.uploadCOSCostTime)}if(!c||i){const e=await(0,sign_1.getSignature)(o.privateKey,o.appid);f[exports.SIGNATURE_FILE_NAME]=JSON.stringify({signature:e,version:g});const i=(0,pack_1.pack)(f),a=zlib_1.default.gzipSync(i.buffer);log_1.default.info("request url:",t);let l=(await(0,request_1.request)({url:t,method:"post",body:a})).body.toString();if(r=(0,jsonParse_1.jsonRespParse)(l,t),0!==r.errCode)throw new Error(l)}e.done(),l(e);const _={respBody:r.body};if(Array.isArray(r.body.subpackage_info)){const e=r.body.subpackage_info;_.subPackageInfo=e}if(Array.isArray(r.body.ext_plugin_info)){const e=r.body.ext_plugin_info;_.pluginInfo=e.map(e=>({pluginProviderAppid:e.provider,version:e.version,size:e.size}))}return _}catch(e){throw new error_1.CodeError(e.toString(),config_1.UPLOAD_CGI_ERR)}}exports.upload=upload,exports.innerUpload=innerUpload;
|
|
3
3
|
}(require("licia/lazyImport")(require), require)
|