@cloudbase/lowcode-builder 1.8.74 → 1.8.76

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 (40) hide show
  1. package/lib/builder/config/index.d.ts +2 -5
  2. package/lib/builder/config/index.js +3 -6
  3. package/lib/builder/core/index.js +13 -23
  4. package/lib/builder/core/plugin.d.ts +1 -7
  5. package/lib/builder/core/plugin.js +0 -2
  6. package/lib/builder/mp/BuildContext.d.ts +4 -0
  7. package/lib/builder/mp/index.d.ts +2 -2
  8. package/lib/builder/mp/index.js +179 -124
  9. package/lib/builder/mp/materials.d.ts +1 -1
  10. package/lib/builder/mp/materials.js +10 -19
  11. package/lib/builder/mp/mixMode.d.ts +9 -3
  12. package/lib/builder/mp/mixMode.js +70 -137
  13. package/lib/builder/mp/mp_config.d.ts +1 -1
  14. package/lib/builder/mp/mp_config.js +26 -18
  15. package/lib/builder/mp/wxml.js +3 -2
  16. package/lib/builder/util/common.d.ts +1 -0
  17. package/lib/builder/util/common.js +8 -1
  18. package/lib/builder/util/net.d.ts +10 -1
  19. package/lib/builder/util/net.js +47 -8
  20. package/lib/builder.web.js +13 -13
  21. package/package.json +6 -5
  22. package/template/mp/app/weapps-api.js +19 -1
  23. package/template/mp/app.js +3 -120
  24. package/template/mp/common/info/index.js +5 -4
  25. package/template/mp/common/info/index.wxml +2 -2
  26. package/template/mp/common/privacyModal/index.js +3 -2
  27. package/template/mp/common/util.js +24 -12
  28. package/template/mp/common/weapp-page.js +11 -4
  29. package/template/mp/datasources/index.js.tpl +122 -2
  30. package/template/mp/packages/$wd_system/pages/login/components/input/index.js +40 -0
  31. package/template/mp/packages/$wd_system/pages/login/components/input/index.json +4 -0
  32. package/template/mp/packages/$wd_system/pages/login/components/input/index.wxml +11 -0
  33. package/template/mp/packages/$wd_system/pages/login/index.js +160 -0
  34. package/template/mp/packages/$wd_system/pages/login/index.json +14 -0
  35. package/template/mp/packages/$wd_system/pages/login/index.wxml +60 -0
  36. package/template/mp/packages/$wd_system/pages/login/index.wxss +60 -0
  37. package/template/mp/packages/$wd_system/pages/login/methods/loginByPassword.js +55 -0
  38. package/template/mp/packages/$wd_system/pages/login/methods/loginByWXPhone.js +68 -0
  39. package/template/mp/packages/$wd_system/pages/login/methods/loginSuccessCallBack.js +20 -0
  40. package/template/mp/page/index.js +4 -1
@@ -2,22 +2,19 @@ export { REPLACE_SIGN, MP_CONFIG_MODULE_NAME, KBONE_PAGE_KEYS, npmRegistry, remC
2
2
  export declare const sharedMaterialsDir: string;
3
3
  export declare const appTemplateDir: string;
4
4
  export declare const materialsDirName = "materials";
5
- /**
6
- * src/template的代码,在IDE编辑器插件中构建builder
7
- * 存放在大账号:100015939275。访问地址:https://console.cloud.tencent.com/cos/bucket?bucket=comp-public-1303824488&region=ap-shanghai&path=%252Flcap-builder%252F
8
- */
9
- export declare const builderTemplateURL = "https://comp-public-1303824488.file.myqcloud.com/lcap-builder/template.1.8.67.zip";
10
5
  /**
11
6
  * miniprogram的代码,IDE插件后续会提供端功能
12
7
  * 存放在大账号:100015939275。访问地址:https://console.cloud.tencent.com/cos/bucket?bucket=comp-public-1303824488&region=ap-shanghai&path=%252Flcap-builder%252F
13
8
  */
14
9
  export declare const miniprogramURL = "https://comp-public-1303824488.file.myqcloud.com/lcap-builder/miniprogram_npm.1.8.57.zip";
10
+ export declare const cloudbaseMiniprogramURL = "https://comp-public-1303824488.file.myqcloud.com/lcap-builder/cloudbase_miniprogram_npm.1.8.57.zip";
15
11
  export declare const systemSubpackageMiniprogramURL = "https://comp-public-1303824488.cos.ap-shanghai.myqcloud.com/lcap-builder/wd_system_miniprogram_npm.zip";
16
12
  export declare const RUNTIME_CONFIG_URL = "https://comp-public-1303824488.file.myqcloud.com/release_config/runtime/exp_runtime.json";
17
13
  /**
18
14
  * miniprogram_npm存放目录。IDE插件builder用到
19
15
  */
20
16
  export declare const miniprogramDir: string;
17
+ export declare const cloudbaseMiniprogramDir: string;
21
18
  export declare const systemSubpackageMiniprogramDir: string;
22
19
  export interface ICDN_ENDPOINTS_COFIG {
23
20
  common?: string;
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.REPEATER = exports.generateCdnEndpoints = exports.CDN_ENDPONTS_CONFIG = exports.systemSubpackageMiniprogramDir = exports.miniprogramDir = exports.RUNTIME_CONFIG_URL = exports.systemSubpackageMiniprogramURL = exports.miniprogramURL = exports.builderTemplateURL = exports.materialsDirName = exports.appTemplateDir = exports.sharedMaterialsDir = exports.OFFICIAL_LIB_KEY = exports.rpxConfig = exports.remConfig = exports.npmRegistry = exports.KBONE_PAGE_KEYS = exports.MP_CONFIG_MODULE_NAME = exports.REPLACE_SIGN = void 0;
29
+ exports.REPEATER = exports.generateCdnEndpoints = exports.CDN_ENDPONTS_CONFIG = exports.systemSubpackageMiniprogramDir = exports.cloudbaseMiniprogramDir = exports.miniprogramDir = exports.RUNTIME_CONFIG_URL = exports.systemSubpackageMiniprogramURL = exports.cloudbaseMiniprogramURL = exports.miniprogramURL = exports.materialsDirName = exports.appTemplateDir = exports.sharedMaterialsDir = exports.OFFICIAL_LIB_KEY = exports.rpxConfig = exports.remConfig = exports.npmRegistry = exports.KBONE_PAGE_KEYS = exports.MP_CONFIG_MODULE_NAME = exports.REPLACE_SIGN = void 0;
30
30
  const path = __importStar(require("path"));
31
31
  const os_1 = __importDefault(require("os"));
32
32
  const index_1 = require("@cloudbase/lowcode-generator/lib/generator/config/index");
@@ -41,22 +41,19 @@ Object.defineProperty(exports, "OFFICIAL_LIB_KEY", { enumerable: true, get: func
41
41
  exports.sharedMaterialsDir = path.join(os_1.default.homedir(), '.weapps-materials');
42
42
  exports.appTemplateDir = path.resolve(__dirname, '../../../template');
43
43
  exports.materialsDirName = 'materials'; // materials diretory of current project
44
- /**
45
- * src/template的代码,在IDE编辑器插件中构建builder
46
- * 存放在大账号:100015939275。访问地址:https://console.cloud.tencent.com/cos/bucket?bucket=comp-public-1303824488&region=ap-shanghai&path=%252Flcap-builder%252F
47
- */
48
- exports.builderTemplateURL = 'https://comp-public-1303824488.file.myqcloud.com/lcap-builder/template.1.8.67.zip';
49
44
  /**
50
45
  * miniprogram的代码,IDE插件后续会提供端功能
51
46
  * 存放在大账号:100015939275。访问地址:https://console.cloud.tencent.com/cos/bucket?bucket=comp-public-1303824488&region=ap-shanghai&path=%252Flcap-builder%252F
52
47
  */
53
48
  exports.miniprogramURL = 'https://comp-public-1303824488.file.myqcloud.com/lcap-builder/miniprogram_npm.1.8.57.zip';
49
+ exports.cloudbaseMiniprogramURL = 'https://comp-public-1303824488.file.myqcloud.com/lcap-builder/cloudbase_miniprogram_npm.1.8.57.zip';
54
50
  exports.systemSubpackageMiniprogramURL = 'https://comp-public-1303824488.cos.ap-shanghai.myqcloud.com/lcap-builder/wd_system_miniprogram_npm.zip';
55
51
  exports.RUNTIME_CONFIG_URL = `https://comp-public-1303824488.file.myqcloud.com/release_config/runtime/exp_runtime.json`;
56
52
  /**
57
53
  * miniprogram_npm存放目录。IDE插件builder用到
58
54
  */
59
55
  exports.miniprogramDir = path.join(os_1.default.homedir(), exports.sharedMaterialsDir, 'miniprogram_npm');
56
+ exports.cloudbaseMiniprogramDir = path.join(os_1.default.homedir(), exports.sharedMaterialsDir, 'cloudbase_miniprogram_npm');
60
57
  exports.systemSubpackageMiniprogramDir = path.join(os_1.default.homedir(), exports.sharedMaterialsDir, '$wd_system_miniprogram_npm');
61
58
  exports.CDN_ENDPONTS_CONFIG = {
62
59
  common: '',
@@ -5,13 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.normalizeInputs = exports.getCompileDirs = exports.downloadZip = exports.strToBuf = exports.fileToZip = exports.getFiles = exports.version = exports.cleanComponentDir = exports.buildWedaApp = exports.buildWedaConfig = void 0;
7
7
  const fs_extra_1 = __importDefault(require("fs-extra"));
8
- const chalk_1 = __importDefault(require("chalk"));
9
8
  const path_1 = __importDefault(require("path"));
10
9
  const util_1 = require("../util");
11
10
  const common_1 = require("../types/common");
12
11
  const index_1 = require("../mp/index");
13
12
  const types_1 = require("../../types");
14
- const mixMode_1 = require("../mp/mixMode");
15
13
  const common_2 = require("../../utils/common");
16
14
  const postProcess_1 = require("../../utils/postProcess");
17
15
  const cals_1 = require("@cloudbase/cals");
@@ -27,13 +25,13 @@ async function buildWedaConfig({ output, domain = undefined, isPrivateMode = und
27
25
  if (!outDir) {
28
26
  throw new Error('无效的项目输出路径');
29
27
  }
30
- let miniprogramRoot = outDir;
28
+ let wedaRoot = outDir;
31
29
  let projectJsonPath = path_1.default.resolve(outDir, 'project.config.json');
32
30
  if (fs_extra_1.default.existsSync(projectJsonPath)) {
33
31
  const projectConfigJson = await fs_extra_1.default.readJson(projectJsonPath);
34
- miniprogramRoot = path_1.default.join(outDir, projectConfigJson.miniprogramRoot || '/');
32
+ wedaRoot = path_1.default.join(outDir, projectConfigJson.miniprogramRoot || '/', (0, util_1.normalizeWedaRoot)(projectConfigJson.wedaRoot) || '');
35
33
  }
36
- const configPath = path_1.default.resolve(miniprogramRoot, 'common/config.js');
34
+ const configPath = path_1.default.resolve(wedaRoot, 'common/config.js');
37
35
  let data = { domain, isPrivateMode, endpointType };
38
36
  if (fs_extra_1.default.existsSync(configPath)) {
39
37
  try {
@@ -74,10 +72,19 @@ async function buildWedaApp({ cals, subAppCalsList = [], dependencies = [], appK
74
72
  * 刷新正规化 packageName
75
73
  */
76
74
  [cals, ...subAppCalsList].forEach((app) => {
75
+ var _a, _b;
77
76
  if (!app.extra) {
78
77
  app.extra = {};
79
78
  }
80
79
  app.extra.rootPath = (0, util_1.normalizePackageName)(app.extra.rootPath);
80
+ /**
81
+ * 历史登录页清理
82
+ * 使用默认的登录
83
+ */
84
+ app.items = (_b = (_a = app.items) === null || _a === void 0 ? void 0 : _a.filter) === null || _b === void 0 ? void 0 : _b.call(_a, (item) => {
85
+ var _a;
86
+ return !((_a = item.attributes) === null || _a === void 0 ? void 0 : _a.isCustomLoginPage);
87
+ });
81
88
  });
82
89
  let appBuildDir = (output === null || output === void 0 ? void 0 : output.path) || (runtime === types_1.RUNTIME.CI ? (_a = (0, util_1.getCompileDirs)('app')) === null || _a === void 0 ? void 0 : _a.appBuildDir : (_b = (0, util_1.getCompileDirs)(appKey)) === null || _b === void 0 ? void 0 : _b.appBuildDir);
83
90
  let runtimeDynamicConfig = {};
@@ -149,7 +156,7 @@ async function buildWedaApp({ cals, subAppCalsList = [], dependencies = [], appK
149
156
  const calses = [cals, ...subAppCalsList];
150
157
  if (isBrowserMpBuilder) {
151
158
  // 尽早下载物料
152
- await (0, net_1.downloadBrowserMaterial)(output === null || output === void 0 ? void 0 : output.path);
159
+ await (0, net_1.downloadBrowserMaterial)({ runtimeEndpointType: endpointType });
153
160
  }
154
161
  const { enablePageRoot } = (0, cals_1.parseVersion)(cals === null || cals === void 0 ? void 0 : cals.schemaVersion, dependencies);
155
162
  const mpBuildContext = {
@@ -183,18 +190,6 @@ async function buildWedaApp({ cals, subAppCalsList = [], dependencies = [], appK
183
190
  cdnEndpoints: (0, config_1.generateCdnEndpoints)(cdnEndpoints),
184
191
  mpConfig,
185
192
  });
186
- // 如果是混合模式,则将特定的目录复制到工程下
187
- // 针对 app.json / package.json 则采用 merge 的操作
188
- if (buildContext.isMixMode) {
189
- console.log(chalk_1.default.green('【混合模式】'), mpBuildContext.projDir);
190
- await (0, mixMode_1.handleMixMode)({
191
- buildContext: mpBuildContext,
192
- apps,
193
- miniprogramRoot: result.miniprogramRoot,
194
- plugins,
195
- ignoreInstall,
196
- });
197
- }
198
193
  const outDir = mpBuildContext.projDir;
199
194
  let projectJsonPath = path_1.default.resolve(outDir, 'project.config.json');
200
195
  await (0, postProcess_1.postprocessProjectConfig)(projectJsonPath, {
@@ -203,11 +198,6 @@ async function buildWedaApp({ cals, subAppCalsList = [], dependencies = [], appK
203
198
  });
204
199
  // 如果是代开发的模式,则写入ext.json
205
200
  await (0, postProcess_1.postprocessDeployExtraJson)(outDir, deployOptions);
206
- if (!isBrowserMpBuilder && generateMpType === common_1.GenerateMpType.APP && !ignoreInstall) {
207
- // 模板拷入的 miniprogram_npm 有问题,直接删除使用重新构建的版本
208
- // 模板需要占位保证 mp 文件夹存在
209
- fs_extra_1.default.removeSync(path_1.default.resolve(outDir, 'miniprogram_npm'));
210
- }
211
201
  await (cb === null || cb === void 0 ? void 0 : cb(null, {
212
202
  ...result,
213
203
  outDir,
@@ -1,7 +1 @@
1
- import { IPlugin } from '@cloudbase/lowcode-generator/lib/weapps-core';
2
- /**
3
- * 安装小程序插件
4
- * @param appBuildDir
5
- * @param plugins
6
- */
7
- export declare function runHandleMpPlugin(appBuildDir: string, plugins: IPlugin[]): Promise<void>;
1
+ export {};
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.runHandleMpPlugin = void 0;
4
3
  const plugin_1 = require("../mp/plugin");
5
4
  /**
6
5
  * 安装小程序插件
@@ -12,4 +11,3 @@ async function runHandleMpPlugin(appBuildDir, plugins) {
12
11
  await (0, plugin_1.installMpPlugin)(appBuildDir, plugins);
13
12
  console.timeEnd('runHandleMpPlugin');
14
13
  }
15
- exports.runHandleMpPlugin = runHandleMpPlugin;
@@ -69,4 +69,8 @@ export interface IBuildContext extends ICommonBuildContext {
69
69
  * 组件库目录独立子包
70
70
  */
71
71
  enableAsyncMaterials?: boolean;
72
+ /**
73
+ * weda 默认自身root
74
+ */
75
+ wedaRoot?: string;
72
76
  }
@@ -4,8 +4,8 @@ import { IBuildContext } from './BuildContext';
4
4
  import { BuildType } from '../types/common';
5
5
  import { IPlatformApp } from '@cloudbase/cals';
6
6
  import { IBuildWedaApp } from '../core';
7
- export declare function generateWxMp({ buildContext, weapps, calses, plugins, deployOptions, options, buildTypeList, ignoreInstall, cdnEndpoints, mpConfig, }: {
8
- buildContext: IBuildContext;
7
+ export declare function generateWxMp({ buildContext: _buildContext, weapps, calses, deployOptions, options, buildTypeList, ignoreInstall, cdnEndpoints, mpConfig, }: {
8
+ buildContext: Omit<IBuildContext, 'wedaRoot'>;
9
9
  weapps: IWeAppData[];
10
10
  calses: IPlatformApp[];
11
11
  plugins: IPlugin[];