@lingxia/cli 0.0.9 → 0.1.1

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 (173) hide show
  1. package/bin/lingxia.js +207 -32
  2. package/dist/builder/commands/build.d.ts +1 -1
  3. package/dist/builder/commands/build.d.ts.map +1 -1
  4. package/dist/builder/commands/build.js +138 -103
  5. package/dist/builder/commands/build.js.map +1 -1
  6. package/dist/builder/core/builders/logic.d.ts +3 -3
  7. package/dist/builder/core/builders/logic.d.ts.map +1 -1
  8. package/dist/builder/core/builders/logic.js +55 -46
  9. package/dist/builder/core/builders/logic.js.map +1 -1
  10. package/dist/builder/core/builders/page-functions.d.ts.map +1 -1
  11. package/dist/builder/core/builders/page-functions.js +43 -35
  12. package/dist/builder/core/builders/page-functions.js.map +1 -1
  13. package/dist/builder/core/builders/page-path-injector.js +27 -27
  14. package/dist/builder/core/builders/page-path-injector.js.map +1 -1
  15. package/dist/builder/core/builders/page-types.d.ts +22 -0
  16. package/dist/builder/core/builders/page-types.d.ts.map +1 -0
  17. package/dist/builder/core/builders/page-types.js +374 -0
  18. package/dist/builder/core/builders/page-types.js.map +1 -0
  19. package/dist/builder/core/builders/page.d.ts +5 -4
  20. package/dist/builder/core/builders/page.d.ts.map +1 -1
  21. package/dist/builder/core/builders/page.js +54 -52
  22. package/dist/builder/core/builders/page.js.map +1 -1
  23. package/dist/builder/core/builders/view-validator.d.ts +9 -0
  24. package/dist/builder/core/builders/view-validator.d.ts.map +1 -0
  25. package/dist/builder/core/builders/view-validator.js +58 -0
  26. package/dist/builder/core/builders/view-validator.js.map +1 -0
  27. package/dist/builder/core/builders/view.d.ts +40 -3
  28. package/dist/builder/core/builders/view.d.ts.map +1 -1
  29. package/dist/builder/core/builders/view.js +406 -55
  30. package/dist/builder/core/builders/view.js.map +1 -1
  31. package/dist/builder/core/config/alias-config.d.ts +1 -1
  32. package/dist/builder/core/config/alias-config.d.ts.map +1 -1
  33. package/dist/builder/core/config/alias-config.js +8 -8
  34. package/dist/builder/core/config/alias-config.js.map +1 -1
  35. package/dist/builder/core/config/framework.d.ts +1 -1
  36. package/dist/builder/core/config/framework.d.ts.map +1 -1
  37. package/dist/builder/core/config/framework.js +14 -11
  38. package/dist/builder/core/config/framework.js.map +1 -1
  39. package/dist/builder/core/config/lxapp-config.d.ts +74 -0
  40. package/dist/builder/core/config/lxapp-config.d.ts.map +1 -0
  41. package/dist/builder/core/config/lxapp-config.js +195 -0
  42. package/dist/builder/core/config/lxapp-config.js.map +1 -0
  43. package/dist/builder/core/config/view-build-schema.d.ts +2 -2
  44. package/dist/builder/core/config/view-config.d.ts +3 -3
  45. package/dist/builder/core/config/view-config.d.ts.map +1 -1
  46. package/dist/builder/core/config/view-config.js +16 -16
  47. package/dist/builder/core/config/view-config.js.map +1 -1
  48. package/dist/builder/core/config.d.ts +1 -1
  49. package/dist/builder/core/config.js +11 -11
  50. package/dist/builder/core/constants/source-dirs.d.ts +1 -1
  51. package/dist/builder/core/constants/source-dirs.js +9 -9
  52. package/dist/builder/core/constants/source-dirs.js.map +1 -1
  53. package/dist/builder/core/constants/static-dirs.d.ts +1 -1
  54. package/dist/builder/core/constants/static-dirs.d.ts.map +1 -1
  55. package/dist/builder/core/constants/static-dirs.js +11 -11
  56. package/dist/builder/core/constants/static-dirs.js.map +1 -1
  57. package/dist/builder/core/frameworks/base.d.ts +1 -1
  58. package/dist/builder/core/frameworks/base.d.ts.map +1 -1
  59. package/dist/builder/core/frameworks/base.js +13 -11
  60. package/dist/builder/core/frameworks/base.js.map +1 -1
  61. package/dist/builder/core/frameworks/factory.d.ts +1 -1
  62. package/dist/builder/core/frameworks/factory.d.ts.map +1 -1
  63. package/dist/builder/core/frameworks/factory.js +9 -9
  64. package/dist/builder/core/frameworks/factory.js.map +1 -1
  65. package/dist/builder/core/frameworks/html.d.ts +2 -2
  66. package/dist/builder/core/frameworks/html.d.ts.map +1 -1
  67. package/dist/builder/core/frameworks/html.js +10 -10
  68. package/dist/builder/core/frameworks/html.js.map +1 -1
  69. package/dist/builder/core/frameworks/react.d.ts +3 -3
  70. package/dist/builder/core/frameworks/react.d.ts.map +1 -1
  71. package/dist/builder/core/frameworks/react.js +45 -43
  72. package/dist/builder/core/frameworks/react.js.map +1 -1
  73. package/dist/builder/core/frameworks/templates.d.ts +1 -1
  74. package/dist/builder/core/frameworks/templates.d.ts.map +1 -1
  75. package/dist/builder/core/frameworks/templates.js +1 -1
  76. package/dist/builder/core/frameworks/templates.js.map +1 -1
  77. package/dist/builder/core/frameworks/vue.d.ts +3 -3
  78. package/dist/builder/core/frameworks/vue.d.ts.map +1 -1
  79. package/dist/builder/core/frameworks/vue.js +48 -43
  80. package/dist/builder/core/frameworks/vue.js.map +1 -1
  81. package/dist/builder/core/registry.d.ts.map +1 -1
  82. package/dist/builder/core/registry.js +34 -25
  83. package/dist/builder/core/registry.js.map +1 -1
  84. package/dist/builder/core/template.d.ts +1 -1
  85. package/dist/builder/core/template.d.ts.map +1 -1
  86. package/dist/builder/core/template.js +19 -14
  87. package/dist/builder/core/template.js.map +1 -1
  88. package/dist/builder/core/templates/embedded.d.ts +3 -3
  89. package/dist/builder/core/templates/embedded.d.ts.map +1 -1
  90. package/dist/builder/core/templates/embedded.js +62 -31
  91. package/dist/builder/core/templates/embedded.js.map +1 -1
  92. package/dist/builder/core/type-generator.d.ts +17 -0
  93. package/dist/builder/core/type-generator.d.ts.map +1 -0
  94. package/dist/builder/core/type-generator.js +172 -0
  95. package/dist/builder/core/type-generator.js.map +1 -0
  96. package/dist/builder/core/utils/file.js +4 -4
  97. package/dist/builder/core/utils/incremental.d.ts +59 -0
  98. package/dist/builder/core/utils/incremental.d.ts.map +1 -0
  99. package/dist/builder/core/utils/incremental.js +177 -0
  100. package/dist/builder/core/utils/incremental.js.map +1 -0
  101. package/dist/builder/core/utils/page.d.ts +12 -2
  102. package/dist/builder/core/utils/page.d.ts.map +1 -1
  103. package/dist/builder/core/utils/page.js +63 -8
  104. package/dist/builder/core/utils/page.js.map +1 -1
  105. package/dist/builder/index.d.ts +1 -1
  106. package/dist/builder/index.js +1 -1
  107. package/dist/builder/types/index.d.ts +7 -6
  108. package/dist/builder/types/index.d.ts.map +1 -1
  109. package/dist/index.d.ts.map +1 -1
  110. package/dist/index.js +15 -16
  111. package/dist/index.js.map +1 -1
  112. package/package.json +8 -6
  113. package/templates/AppIcon.png +0 -0
  114. package/templates/android-native/app/src/main/java/MainActivity.kt +2 -2
  115. package/templates/android-native/app/src/main/res/values/strings.xml +1 -1
  116. package/templates/android-native/settings.gradle.kts +4 -0
  117. package/templates/harmony-native/AppScope/app.json5 +10 -0
  118. package/templates/harmony-native/AppScope/resources/base/element/string.json +8 -0
  119. package/templates/harmony-native/build-profile.json5 +41 -0
  120. package/templates/harmony-native/entry/build-profile.json5 +8 -0
  121. package/templates/harmony-native/entry/hvigorfile.ts +6 -0
  122. package/templates/harmony-native/entry/oh-package.json5 +11 -0
  123. package/templates/harmony-native/entry/src/main/ets/entryability/EntryAbility.ets +38 -0
  124. package/templates/harmony-native/entry/src/main/ets/pages/Index.ets +15 -0
  125. package/templates/harmony-native/entry/src/main/module.json5 +38 -0
  126. package/templates/harmony-native/entry/src/main/resources/base/element/color.json +8 -0
  127. package/templates/harmony-native/entry/src/main/resources/base/element/string.json +16 -0
  128. package/templates/harmony-native/entry/src/main/resources/base/profile/main_pages.json +5 -0
  129. package/templates/harmony-native/entry/src/main/resources/dark/element/color.json +8 -0
  130. package/templates/harmony-native/hvigor/hvigor-config.json5 +13 -0
  131. package/templates/harmony-native/hvigorfile.ts +6 -0
  132. package/templates/harmony-native/oh-package.json5 +10 -0
  133. package/templates/ios-native/App.entitlements +10 -0
  134. package/templates/ios-native/Info.plist +8 -0
  135. package/templates/ios-native/Package.swift +31 -0
  136. package/templates/ios-native/Sources/App.swift +44 -0
  137. package/templates/lxapp-create/html/global.d.ts +1 -0
  138. package/templates/lxapp-create/html/lxapp.config.ts +5 -0
  139. package/templates/lxapp-create/html/lxapp.json +8 -0
  140. package/templates/lxapp-create/html/lxapp.ts +8 -0
  141. package/templates/lxapp-create/html/package.json +20 -0
  142. package/templates/lxapp-create/html/pages/home/index.html +32 -0
  143. package/templates/lxapp-create/html/pages/home/index.json +3 -0
  144. package/templates/lxapp-create/html/pages/home/index.ts +14 -0
  145. package/templates/lxapp-create/html/tsconfig.json +13 -0
  146. package/templates/lxapp-create/html/view/home.ts +19 -0
  147. package/templates/lxapp-create/react/app.css +20 -0
  148. package/templates/lxapp-create/react/lxapp.config.ts +8 -0
  149. package/templates/lxapp-create/react/lxapp.json +1 -1
  150. package/templates/lxapp-create/react/package.json +2 -0
  151. package/templates/lxapp-create/react/pages/home/index.json +1 -1
  152. package/templates/lxapp-create/react/pages/home/index.ts +8 -3
  153. package/templates/lxapp-create/react/pages/home/index.tsx +113 -42
  154. package/templates/lxapp-create/react/tsconfig.json +5 -2
  155. package/templates/lxapp-create/vue/app.css +20 -0
  156. package/templates/lxapp-create/vue/lxapp.config.ts +8 -0
  157. package/templates/lxapp-create/vue/lxapp.json +1 -1
  158. package/templates/lxapp-create/vue/package.json +2 -0
  159. package/templates/lxapp-create/vue/pages/home/index.json +1 -1
  160. package/templates/lxapp-create/vue/pages/home/index.ts +8 -3
  161. package/templates/lxapp-create/vue/pages/home/index.vue +124 -37
  162. package/templates/lxapp-create/vue/tsconfig.json +5 -2
  163. package/templates/macos-native/Info.plist +40 -0
  164. package/templates/macos-native/Package.swift +30 -0
  165. package/templates/macos-native/Sources/main.swift +23 -0
  166. package/templates/rust-lib/Cargo.toml +16 -1
  167. package/templates/rust-lib/README.md +1 -1
  168. package/templates/rust-lib/src/lib.rs +39 -1
  169. package/vendor/lingxia +0 -0
  170. package/templates/lxapp-create/react/lxapp.config.json +0 -8
  171. package/templates/lxapp-create/react/public/.gitkeep +0 -0
  172. package/templates/lxapp-create/vue/lxapp.config.json +0 -8
  173. package/templates/lxapp-create/vue/public/.gitkeep +0 -0
@@ -1,16 +1,16 @@
1
- import path from 'path';
2
- import { loadLingxiaConfig } from './lingxia-config.js';
1
+ import path from "path";
2
+ import { loadLxappConfig } from "./lxapp-config.js";
3
3
  // Use @/ instead of @lingxia to avoid conflict with npm @lingxia/* packages
4
- const DEFAULT_ROOT_ALIAS = '@';
4
+ const DEFAULT_ROOT_ALIAS = "@";
5
5
  function normalizeAliases(projectPath, config) {
6
- if (!config?.alias || typeof config.alias !== 'object') {
6
+ if (!config?.alias || typeof config.alias !== "object") {
7
7
  return {};
8
8
  }
9
- const entries = Object.entries(config.alias).filter(entry => {
9
+ const entries = Object.entries(config.alias).filter((entry) => {
10
10
  const [key, value] = entry;
11
- return (typeof key === 'string' &&
11
+ return (typeof key === "string" &&
12
12
  key.trim().length > 0 &&
13
- typeof value === 'string' &&
13
+ typeof value === "string" &&
14
14
  value.trim().length > 0);
15
15
  });
16
16
  const alias = {};
@@ -20,7 +20,7 @@ function normalizeAliases(projectPath, config) {
20
20
  return alias;
21
21
  }
22
22
  export function resolveAliasMap(projectPath, config) {
23
- const resolvedConfig = config ?? loadLingxiaConfig(projectPath);
23
+ const resolvedConfig = config ?? loadLxappConfig(projectPath);
24
24
  const alias = normalizeAliases(projectPath, resolvedConfig);
25
25
  if (!alias[DEFAULT_ROOT_ALIAS]) {
26
26
  alias[DEFAULT_ROOT_ALIAS] = projectPath;
@@ -1 +1 @@
1
- {"version":3,"file":"alias-config.js","sourceRoot":"","sources":["../../../../src/builder/core/config/alias-config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,4EAA4E;AAC5E,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B,SAAS,gBAAgB,CACvB,WAAmB,EACnB,MAAgD;IAEhD,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;QAC1D,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC3B,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;YACvB,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YACrB,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CACxB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACnC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,WAAmB,EACnB,MAAoB;IAEpB,MAAM,cAAc,GAAG,MAAM,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,gBAAgB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,kBAAkB,CAAC,GAAG,WAAW,CAAC;IAC1C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"alias-config.js","sourceRoot":"","sources":["../../../../src/builder/core/config/alias-config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD,4EAA4E;AAC5E,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B,SAAS,gBAAgB,CACvB,WAAmB,EACnB,MAAgC;IAEhC,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QAC5D,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC3B,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;YACvB,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YACrB,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CACxB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACnC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,WAAmB,EACnB,MAAoB;IAEpB,MAAM,cAAc,GAAG,MAAM,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,gBAAgB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,kBAAkB,CAAC,GAAG,WAAW,CAAC;IAC1C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,3 +1,3 @@
1
- export type ProjectFramework = 'react' | 'vue';
1
+ export type ProjectFramework = "react" | "vue" | "html";
2
2
  export declare function readProjectFramework(projectPath: string): ProjectFramework;
3
3
  //# sourceMappingURL=framework.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../../../src/builder/core/config/framework.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,KAAK,CAAC;AAE/C,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,CAqB1E"}
1
+ {"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../../../src/builder/core/config/framework.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;AAExD,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,CAqB1E"}
@@ -1,12 +1,12 @@
1
- import fs from 'fs';
2
- import path from 'path';
1
+ import fs from "fs";
2
+ import path from "path";
3
3
  export function readProjectFramework(projectPath) {
4
- const pkgPath = path.join(projectPath, 'package.json');
4
+ const pkgPath = path.join(projectPath, "package.json");
5
5
  if (fs.existsSync(pkgPath)) {
6
6
  try {
7
- const packageJson = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
7
+ const packageJson = JSON.parse(fs.readFileSync(pkgPath, "utf-8"));
8
8
  const framework = packageJson?.lingxia?.framework;
9
- if (framework === 'react' || framework === 'vue') {
9
+ if (framework === "react" || framework === "vue" || framework === "html") {
10
10
  return framework;
11
11
  }
12
12
  }
@@ -18,10 +18,10 @@ export function readProjectFramework(projectPath) {
18
18
  if (detected)
19
19
  return detected;
20
20
  throw new Error(`Cannot determine Lingxia project framework. Please rerun ` +
21
- `'lingxia create' or add {"lingxia":{"framework":"react|vue"}} to package.json.`);
21
+ `'lingxia create' or add {"lingxia":{"framework":"react|vue|html"}} to package.json.`);
22
22
  }
23
23
  function detectFrameworkFromPages(projectPath) {
24
- const pagesDir = path.join(projectPath, 'pages');
24
+ const pagesDir = path.join(projectPath, "pages");
25
25
  if (!fs.existsSync(pagesDir)) {
26
26
  return undefined;
27
27
  }
@@ -30,12 +30,15 @@ function detectFrameworkFromPages(projectPath) {
30
30
  if (!entry.isDirectory())
31
31
  continue;
32
32
  const dir = path.join(pagesDir, entry.name);
33
- const reactEntry = findFirstFileWithExt(dir, ['.tsx', '.jsx']);
33
+ const reactEntry = findFirstFileWithExt(dir, [".tsx", ".jsx"]);
34
34
  if (reactEntry)
35
- return 'react';
36
- const vueEntry = findFirstFileWithExt(dir, ['.vue']);
35
+ return "react";
36
+ const vueEntry = findFirstFileWithExt(dir, [".vue"]);
37
37
  if (vueEntry)
38
- return 'vue';
38
+ return "vue";
39
+ const htmlEntry = findFirstFileWithExt(dir, [".html"]);
40
+ if (htmlEntry)
41
+ return "html";
39
42
  }
40
43
  return undefined;
41
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"framework.js","sourceRoot":"","sources":["../../../../src/builder/core/config/framework.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACvD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC;YAClD,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;gBACjD,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;IACvD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,MAAM,IAAI,KAAK,CACb,2DAA2D;QACzD,gFAAgF,CACnF,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,WAAmB;IACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAAE,SAAS;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,oBAAoB,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,IAAI,UAAU;YAAE,OAAO,OAAO,CAAC;QAC/B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,IAAI,QAAQ;YAAE,OAAO,KAAK,CAAC;IAC7B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAW,EAAE,UAAoB;IAC7D,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;QAChD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"framework.js","sourceRoot":"","sources":["../../../../src/builder/core/config/framework.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACvD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC;YAClD,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACzE,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;IACvD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,MAAM,IAAI,KAAK,CACb,2DAA2D;QACzD,qFAAqF,CACxF,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,WAAmB;IAEnB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAAE,SAAS;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,oBAAoB,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,IAAI,UAAU;YAAE,OAAO,OAAO,CAAC;QAC/B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,IAAI,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC3B,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QACvD,IAAI,SAAS;YAAE,OAAO,MAAM,CAAC;IAC/B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,oBAAoB,CAC3B,GAAW,EACX,UAAoB;IAEpB,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;QAChD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,74 @@
1
+ import type { ViewBuildConfig } from "./view-build-schema.js";
2
+ export type FrameworkName = "react" | "vue" | "html";
3
+ export type PluginDescriptor = string | {
4
+ module: string;
5
+ namedExport?: string;
6
+ options?: any;
7
+ };
8
+ export type PluginEntry = PluginDescriptor | any;
9
+ export interface NormalizedPluginDescriptor {
10
+ module: string;
11
+ namedExport?: string;
12
+ options?: any;
13
+ }
14
+ export type NormalizedPluginSpec = (NormalizedPluginDescriptor & {
15
+ type?: "descriptor";
16
+ }) | {
17
+ plugin: any;
18
+ module?: undefined;
19
+ };
20
+ export type PluginConfig = PluginEntry[] | Partial<Record<FrameworkName, PluginEntry[]>>;
21
+ /**
22
+ * Build configuration for lxapp and lxplugin projects.
23
+ */
24
+ export interface BuildConfig {
25
+ /**
26
+ * Static asset directories copied during build.
27
+ */
28
+ staticDirs?: string[];
29
+ /**
30
+ * Module path aliases shared across logic/view builds.
31
+ */
32
+ alias?: Record<string, string>;
33
+ /**
34
+ * Additional source directories copied into the view build workspace.
35
+ */
36
+ sourceDirs?: string[];
37
+ /**
38
+ * Asset directory name for the view build.
39
+ */
40
+ assetDir?: string;
41
+ /**
42
+ * Framework-specific view build overrides.
43
+ */
44
+ view?: ViewConfigOverrides;
45
+ /**
46
+ * Additional Vite plugins per framework.
47
+ */
48
+ plugins?: PluginConfig;
49
+ }
50
+ export type ViewConfigOverrides = Partial<Record<FrameworkName, Partial<ViewBuildConfig>>>;
51
+ /**
52
+ * Helper function for type-safe config definition.
53
+ */
54
+ export declare function defineConfig(config: BuildConfig): BuildConfig;
55
+ /**
56
+ * Load build config from project directory.
57
+ * Only supports .ts format for consistency.
58
+ *
59
+ * @param projectPath - Project root directory
60
+ * @param configName - Config file name without extension (e.g., 'lxapp.config' or 'lxplugin.config')
61
+ */
62
+ export declare function loadBuildConfig(projectPath: string, configName: string): BuildConfig | undefined;
63
+ /**
64
+ * Load lxapp build config (lxapp.config.ts)
65
+ */
66
+ export declare function loadLxappConfig(projectPath: string): BuildConfig | undefined;
67
+ /**
68
+ * Load lxplugin build config (lxplugin.config.ts)
69
+ */
70
+ export declare function loadLxpluginConfig(projectPath: string): BuildConfig | undefined;
71
+ export declare function extractViewOverrides(config: BuildConfig | undefined, framework?: FrameworkName): Partial<ViewBuildConfig> | undefined;
72
+ export declare function extractPluginSpecs(config?: BuildConfig): Partial<Record<FrameworkName, NormalizedPluginSpec[]>> | undefined;
73
+ export type LxappConfig = BuildConfig;
74
+ //# sourceMappingURL=lxapp-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lxapp-config.d.ts","sourceRoot":"","sources":["../../../../src/builder/core/config/lxapp-config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;AAErD,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN;IACE,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf,CAAC;AAEN,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,GAAG,CAAC;AAEjD,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED,MAAM,MAAM,oBAAoB,GAC5B,CAAC,0BAA0B,GAAG;IAAE,IAAI,CAAC,EAAE,YAAY,CAAA;CAAE,CAAC,GACtD;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAExC,MAAM,MAAM,YAAY,GACpB,WAAW,EAAE,GACb,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAAG,OAAO,CACvC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,CAChD,CAAC;AAIF;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAE7D;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,GACjB,WAAW,GAAG,SAAS,CAQzB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE5E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,GAClB,WAAW,GAAG,SAAS,CAEzB;AAgFD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,SAAS,CAAC,EAAE,aAAa,GACxB,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,CAiCtC;AAED,wBAAgB,kBAAkB,CAChC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,oBAAoB,EAAE,CAAC,CAAC,GAAG,SAAS,CA0EpE;AAGD,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC"}
@@ -0,0 +1,195 @@
1
+ import fs from "fs";
2
+ import path from "path";
3
+ import vm from "vm";
4
+ import { createRequire } from "module";
5
+ const cliRequire = createRequire(import.meta.url);
6
+ /**
7
+ * Helper function for type-safe config definition.
8
+ */
9
+ export function defineConfig(config) {
10
+ return config;
11
+ }
12
+ /**
13
+ * Load build config from project directory.
14
+ * Only supports .ts format for consistency.
15
+ *
16
+ * @param projectPath - Project root directory
17
+ * @param configName - Config file name without extension (e.g., 'lxapp.config' or 'lxplugin.config')
18
+ */
19
+ export function loadBuildConfig(projectPath, configName) {
20
+ const configPath = path.join(projectPath, `${configName}.ts`);
21
+ if (!fs.existsSync(configPath)) {
22
+ return undefined;
23
+ }
24
+ return readTsConfig(configPath);
25
+ }
26
+ /**
27
+ * Load lxapp build config (lxapp.config.ts)
28
+ */
29
+ export function loadLxappConfig(projectPath) {
30
+ return loadBuildConfig(projectPath, "lxapp.config");
31
+ }
32
+ /**
33
+ * Load lxplugin build config (lxplugin.config.ts)
34
+ */
35
+ export function loadLxpluginConfig(projectPath) {
36
+ return loadBuildConfig(projectPath, "lxplugin.config");
37
+ }
38
+ function readTsConfig(filePath) {
39
+ try {
40
+ const source = fs.readFileSync(filePath, "utf-8");
41
+ const ts = loadTypescriptCompiler();
42
+ const result = ts.transpileModule(source, {
43
+ compilerOptions: {
44
+ module: ts.ModuleKind.CommonJS,
45
+ target: ts.ScriptTarget.ES2019,
46
+ esModuleInterop: true,
47
+ },
48
+ fileName: filePath,
49
+ reportDiagnostics: true,
50
+ });
51
+ if (result.diagnostics?.length) {
52
+ const message = ts.formatDiagnosticsWithColorAndContext(result.diagnostics, {
53
+ getCanonicalFileName: (f) => f,
54
+ getCurrentDirectory: () => path.dirname(filePath),
55
+ getNewLine: () => "\n",
56
+ });
57
+ console.warn(`⚠️ Diagnostics while parsing ${filePath}:\n${message}`);
58
+ }
59
+ const exports = executeCommonJsModule(result.outputText, filePath);
60
+ const config = exports?.default ?? exports;
61
+ if (config && typeof config === "object") {
62
+ return config;
63
+ }
64
+ return undefined;
65
+ }
66
+ catch (error) {
67
+ console.warn(`⚠️ Failed to read config from ${filePath}:`, error instanceof Error ? error.message : String(error));
68
+ return undefined;
69
+ }
70
+ }
71
+ function executeCommonJsModule(code, filename) {
72
+ const module = { exports: {} };
73
+ const localRequire = createRequire(filename);
74
+ const context = {
75
+ module,
76
+ exports: module.exports,
77
+ require: localRequire,
78
+ __dirname: path.dirname(filename),
79
+ __filename: filename,
80
+ process,
81
+ console,
82
+ Buffer,
83
+ setTimeout,
84
+ clearTimeout,
85
+ setInterval,
86
+ clearInterval,
87
+ setImmediate,
88
+ clearImmediate,
89
+ };
90
+ context.global = context;
91
+ context.globalThis = context;
92
+ vm.runInNewContext(code, context, { filename });
93
+ return module.exports;
94
+ }
95
+ function loadTypescriptCompiler() {
96
+ try {
97
+ return cliRequire("typescript");
98
+ }
99
+ catch {
100
+ throw new Error("Cannot load 'typescript'. Please add it as a dependency.");
101
+ }
102
+ }
103
+ export function extractViewOverrides(config, framework) {
104
+ const overrides = config?.view;
105
+ if (!overrides || typeof overrides !== "object") {
106
+ return undefined;
107
+ }
108
+ const frameworks = ["react", "vue"];
109
+ const hasFrameworkKeys = frameworks.some((fw) => Object.prototype.hasOwnProperty.call(overrides, fw));
110
+ if (hasFrameworkKeys && framework) {
111
+ const targeted = overrides[framework];
112
+ if (targeted && typeof targeted === "object") {
113
+ return targeted;
114
+ }
115
+ }
116
+ if (!hasFrameworkKeys) {
117
+ return overrides;
118
+ }
119
+ if (framework) {
120
+ for (const fw of frameworks) {
121
+ const block = overrides[fw];
122
+ if (block && typeof block === "object") {
123
+ return block;
124
+ }
125
+ }
126
+ }
127
+ return undefined;
128
+ }
129
+ export function extractPluginSpecs(config) {
130
+ const pluginsConfig = config?.plugins;
131
+ if (!pluginsConfig) {
132
+ return undefined;
133
+ }
134
+ const frameworks = ["react", "vue"];
135
+ const normalized = {};
136
+ let hasPlugins = false;
137
+ const collectEntries = (entries) => {
138
+ if (!entries || entries.length === 0)
139
+ return [];
140
+ const normalizedEntries = [];
141
+ for (const entry of entries) {
142
+ if (typeof entry === "string") {
143
+ const trimmed = entry.trim();
144
+ if (trimmed.length > 0) {
145
+ normalizedEntries.push({ module: trimmed });
146
+ }
147
+ continue;
148
+ }
149
+ if (entry &&
150
+ typeof entry === "object" &&
151
+ typeof entry.module === "string") {
152
+ const moduleName = entry.module;
153
+ if (moduleName.trim().length > 0) {
154
+ normalizedEntries.push({
155
+ module: moduleName,
156
+ namedExport: typeof entry.namedExport === "string"
157
+ ? entry.namedExport
158
+ : undefined,
159
+ options: entry.options,
160
+ });
161
+ }
162
+ continue;
163
+ }
164
+ if (entry !== undefined && entry !== null) {
165
+ normalizedEntries.push({ plugin: entry });
166
+ }
167
+ }
168
+ return normalizedEntries;
169
+ };
170
+ if (Array.isArray(pluginsConfig)) {
171
+ const sharedEntries = collectEntries(pluginsConfig);
172
+ if (sharedEntries.length > 0) {
173
+ for (const framework of frameworks) {
174
+ normalized[framework] = [
175
+ ...(normalized[framework] ?? []),
176
+ ...sharedEntries,
177
+ ];
178
+ }
179
+ hasPlugins = true;
180
+ }
181
+ }
182
+ else if (typeof pluginsConfig === "object") {
183
+ for (const framework of frameworks) {
184
+ const entries = collectEntries(Array.isArray(pluginsConfig[framework])
185
+ ? pluginsConfig[framework]
186
+ : undefined);
187
+ if (entries.length > 0) {
188
+ normalized[framework] = [...(normalized[framework] ?? []), ...entries];
189
+ hasPlugins = true;
190
+ }
191
+ }
192
+ }
193
+ return hasPlugins ? normalized : undefined;
194
+ }
195
+ //# sourceMappingURL=lxapp-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lxapp-config.js","sourceRoot":"","sources":["../../../../src/builder/core/config/lxapp-config.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,8 @@ export interface ViewBuildConfig {
6
6
  cssCodeSplitMulti: boolean;
7
7
  target?: string;
8
8
  esbuild?: Record<string, unknown>;
9
- minifyStrategy?: 'esbuild' | 'terser' | boolean;
10
- resolvePlugins?: (framework: 'react' | 'vue') => Promise<any[]>;
9
+ minifyStrategy?: "esbuild" | "terser" | boolean;
10
+ resolvePlugins?: (framework: "react" | "vue") => Promise<any[]>;
11
11
  cssConfig?: false | ((buildDir: string) => Promise<{
12
12
  postcss?: {
13
13
  plugins?: any[];
@@ -1,11 +1,11 @@
1
- import type { ViewBuildConfig } from './view-build-schema.js';
1
+ import type { ViewBuildConfig } from "./view-build-schema.js";
2
2
  export declare const DEFAULT_ASSET_DIR = "assets";
3
- import { type FrameworkName } from './lingxia-config.js';
3
+ import { type FrameworkName } from "./lxapp-config.js";
4
4
  export declare class ViewConfigManager {
5
5
  private projectPath;
6
6
  private overrides?;
7
7
  constructor(projectPath: string, overrides?: Partial<ViewBuildConfig>);
8
- getFrameworkConfig(framework: 'react' | 'vue'): ViewBuildConfig;
8
+ getFrameworkConfig(framework: "react" | "vue"): ViewBuildConfig;
9
9
  }
10
10
  export declare function resolveUserViewConfig(projectPath: string, framework: FrameworkName): Partial<ViewBuildConfig> | undefined;
11
11
  //# sourceMappingURL=view-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view-config.d.ts","sourceRoot":"","sources":["../../../../src/builder/core/config/view-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAoC1C,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,qBAAqB,CAAC;AAE7B,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAC,CAA2B;gBAEjC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAKrE,kBAAkB,CAAC,SAAS,EAAE,OAAO,GAAG,KAAK,GAAG,eAAe;CAMhE;AAED,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,aAAa,GACvB,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,CAGtC"}
1
+ {"version":3,"file":"view-config.d.ts","sourceRoot":"","sources":["../../../../src/builder/core/config/view-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAoC1C,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAC,CAA2B;gBAEjC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAKrE,kBAAkB,CAAC,SAAS,EAAE,OAAO,GAAG,KAAK,GAAG,eAAe;CAMhE;AAED,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,aAAa,GACvB,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,CAGtC"}
@@ -1,35 +1,35 @@
1
- export const DEFAULT_ASSET_DIR = 'assets';
1
+ export const DEFAULT_ASSET_DIR = "assets";
2
2
  function createDefaultConfig() {
3
3
  const baseMultiOutput = (assetDir) => ({
4
- entryFileNames: 'pages/[name]/[name].js',
4
+ entryFileNames: "pages/[name]/[name].js",
5
5
  chunkFileNames: `${assetDir}/vendor-[hash].js`,
6
6
  assetFileNames: `${assetDir}/[name].[ext]`,
7
- manualChunks: null
7
+ manualChunks: null,
8
8
  });
9
9
  return {
10
10
  react: {
11
11
  output: {
12
- multi: baseMultiOutput(DEFAULT_ASSET_DIR)
12
+ multi: baseMultiOutput(DEFAULT_ASSET_DIR),
13
13
  },
14
14
  assetDir: DEFAULT_ASSET_DIR,
15
15
  cssCodeSplitMulti: true,
16
- target: 'es2020',
17
- esbuild: { jsx: 'automatic' },
18
- minifyStrategy: 'esbuild'
16
+ target: "es2020",
17
+ esbuild: { jsx: "automatic" },
18
+ minifyStrategy: "esbuild",
19
19
  },
20
20
  vue: {
21
21
  output: {
22
- multi: baseMultiOutput(DEFAULT_ASSET_DIR)
22
+ multi: baseMultiOutput(DEFAULT_ASSET_DIR),
23
23
  },
24
24
  assetDir: DEFAULT_ASSET_DIR,
25
25
  cssCodeSplitMulti: true,
26
- target: 'es2020',
27
- minifyStrategy: 'esbuild'
28
- }
26
+ target: "es2020",
27
+ minifyStrategy: "esbuild",
28
+ },
29
29
  };
30
30
  }
31
31
  const defaultConfig = createDefaultConfig();
32
- import { extractViewOverrides, loadLingxiaConfig } from './lingxia-config.js';
32
+ import { extractViewOverrides, loadLxappConfig, } from "./lxapp-config.js";
33
33
  export class ViewConfigManager {
34
34
  projectPath;
35
35
  overrides;
@@ -46,14 +46,14 @@ export class ViewConfigManager {
46
46
  }
47
47
  }
48
48
  export function resolveUserViewConfig(projectPath, framework) {
49
- const config = loadLingxiaConfig(projectPath);
49
+ const config = loadLxappConfig(projectPath);
50
50
  return extractViewOverrides(config, framework);
51
51
  }
52
52
  function mergeViewConfig(base, extra) {
53
53
  const assetDir = extra.assetDir ?? base.assetDir ?? DEFAULT_ASSET_DIR;
54
54
  const multiOutput = {
55
55
  ...base.output.multi,
56
- ...(extra.output?.multi ?? {})
56
+ ...(extra.output?.multi ?? {}),
57
57
  };
58
58
  if (!extra.output?.multi?.assetFileNames) {
59
59
  multiOutput.assetFileNames = `${assetDir}/[name].[ext]`;
@@ -65,7 +65,7 @@ function mergeViewConfig(base, extra) {
65
65
  ...base,
66
66
  ...extra,
67
67
  output: {
68
- multi: multiOutput
68
+ multi: multiOutput,
69
69
  },
70
70
  assetDir,
71
71
  cssCodeSplitMulti: extra.cssCodeSplitMulti ?? base.cssCodeSplitMulti,
@@ -73,7 +73,7 @@ function mergeViewConfig(base, extra) {
73
73
  esbuild: { ...base.esbuild, ...(extra.esbuild ?? {}) },
74
74
  minifyStrategy: extra.minifyStrategy ?? base.minifyStrategy,
75
75
  resolvePlugins: extra.resolvePlugins ?? base.resolvePlugins,
76
- cssConfig: extra.cssConfig ?? base.cssConfig
76
+ cssConfig: extra.cssConfig ?? base.cssConfig,
77
77
  };
78
78
  }
79
79
  //# sourceMappingURL=view-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"view-config.js","sourceRoot":"","sources":["../../../../src/builder/core/config/view-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view-config.js","sourceRoot":"","sources":["../../../../src/builder/core/config/view-config.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { LxPluginConfig } from '../types/index.js';
1
+ import type { LxPluginConfig } from "../types/index.js";
2
2
  /**
3
3
  * Centralized configuration manager for LingXia projects
4
4
  * Handles lxapp.json, lxplugin.json, and other configuration files
@@ -1,5 +1,5 @@
1
- import * as fs from 'fs';
2
- import * as path from 'path';
1
+ import * as fs from "fs";
2
+ import * as path from "path";
3
3
  /**
4
4
  * Centralized configuration manager for LingXia projects
5
5
  * Handles lxapp.json, lxplugin.json, and other configuration files
@@ -16,11 +16,11 @@ export class ConfigManager {
16
16
  */
17
17
  getLxappConfig() {
18
18
  if (this.lxappConfig === null) {
19
- const lxappPath = path.join(this.projectPath, 'lxapp.json');
19
+ const lxappPath = path.join(this.projectPath, "lxapp.json");
20
20
  if (!fs.existsSync(lxappPath)) {
21
- throw new Error('lxapp.json not found in project root');
21
+ throw new Error("lxapp.json not found in project root");
22
22
  }
23
- this.lxappConfig = JSON.parse(fs.readFileSync(lxappPath, 'utf-8'));
23
+ this.lxappConfig = JSON.parse(fs.readFileSync(lxappPath, "utf-8"));
24
24
  }
25
25
  return this.lxappConfig;
26
26
  }
@@ -29,12 +29,12 @@ export class ConfigManager {
29
29
  */
30
30
  getLxpluginConfig() {
31
31
  if (this.lxpluginConfig === undefined) {
32
- const lxpluginPath = path.join(this.projectPath, 'lxplugin.json');
32
+ const lxpluginPath = path.join(this.projectPath, "lxplugin.json");
33
33
  if (!fs.existsSync(lxpluginPath)) {
34
34
  this.lxpluginConfig = null;
35
35
  }
36
36
  else {
37
- this.lxpluginConfig = JSON.parse(fs.readFileSync(lxpluginPath, 'utf-8'));
37
+ this.lxpluginConfig = JSON.parse(fs.readFileSync(lxpluginPath, "utf-8"));
38
38
  }
39
39
  }
40
40
  return this.lxpluginConfig;
@@ -46,7 +46,7 @@ export class ConfigManager {
46
46
  if (options.plugin) {
47
47
  const pluginConfig = this.getLxpluginConfig();
48
48
  if (!pluginConfig) {
49
- throw new Error('lxplugin.json not found in project root');
49
+ throw new Error("lxplugin.json not found in project root");
50
50
  }
51
51
  return Object.values(pluginConfig.pages);
52
52
  }
@@ -57,15 +57,15 @@ export class ConfigManager {
57
57
  * Check if project has package.json
58
58
  */
59
59
  hasPackageJson() {
60
- return fs.existsSync(path.join(this.projectPath, 'package.json'));
60
+ return fs.existsSync(path.join(this.projectPath, "package.json"));
61
61
  }
62
62
  /**
63
63
  * Read package.json if exists
64
64
  */
65
65
  getPackageJson() {
66
- const packagePath = path.join(this.projectPath, 'package.json');
66
+ const packagePath = path.join(this.projectPath, "package.json");
67
67
  if (fs.existsSync(packagePath)) {
68
- return JSON.parse(fs.readFileSync(packagePath, 'utf-8'));
68
+ return JSON.parse(fs.readFileSync(packagePath, "utf-8"));
69
69
  }
70
70
  return null;
71
71
  }
@@ -1,4 +1,4 @@
1
- import type { BuildConfig } from '../config/build-config.js';
1
+ import type { BuildConfig } from "../config/lxapp-config.js";
2
2
  export declare const DEFAULT_SOURCE_DIRS: "shared"[];
3
3
  export declare function resolveSourceDirs(projectPath: string, config?: BuildConfig): string[];
4
4
  //# sourceMappingURL=source-dirs.d.ts.map