@lingxia/cli 0.0.8 → 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 (178) 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 -25
  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/build.gradle.kts +1 -1
  115. package/templates/android-native/app/src/main/java/MainActivity.kt +2 -2
  116. package/templates/android-native/app/src/main/res/values/strings.xml +1 -1
  117. package/templates/android-native/settings.gradle.kts +4 -2
  118. package/templates/harmony-native/AppScope/app.json5 +10 -0
  119. package/templates/harmony-native/AppScope/resources/base/element/string.json +8 -0
  120. package/templates/harmony-native/build-profile.json5 +41 -0
  121. package/templates/harmony-native/entry/build-profile.json5 +8 -0
  122. package/templates/harmony-native/entry/hvigorfile.ts +6 -0
  123. package/templates/harmony-native/entry/oh-package.json5 +11 -0
  124. package/templates/harmony-native/entry/src/main/ets/entryability/EntryAbility.ets +38 -0
  125. package/templates/harmony-native/entry/src/main/ets/pages/Index.ets +15 -0
  126. package/templates/harmony-native/entry/src/main/module.json5 +38 -0
  127. package/templates/harmony-native/entry/src/main/resources/base/element/color.json +8 -0
  128. package/templates/harmony-native/entry/src/main/resources/base/element/string.json +16 -0
  129. package/templates/harmony-native/entry/src/main/resources/base/profile/main_pages.json +5 -0
  130. package/templates/harmony-native/entry/src/main/resources/dark/element/color.json +8 -0
  131. package/templates/harmony-native/hvigor/hvigor-config.json5 +13 -0
  132. package/templates/harmony-native/hvigorfile.ts +6 -0
  133. package/templates/harmony-native/oh-package.json5 +10 -0
  134. package/templates/ios-native/App.entitlements +10 -0
  135. package/templates/ios-native/Info.plist +8 -0
  136. package/templates/ios-native/Package.swift +31 -0
  137. package/templates/ios-native/Sources/App.swift +44 -0
  138. package/templates/lxapp-create/html/global.d.ts +1 -0
  139. package/templates/lxapp-create/html/lxapp.config.ts +5 -0
  140. package/templates/lxapp-create/html/lxapp.json +8 -0
  141. package/templates/lxapp-create/html/lxapp.ts +8 -0
  142. package/templates/lxapp-create/html/package.json +20 -0
  143. package/templates/lxapp-create/html/pages/home/index.html +32 -0
  144. package/templates/lxapp-create/html/pages/home/index.json +3 -0
  145. package/templates/lxapp-create/html/pages/home/index.ts +14 -0
  146. package/templates/lxapp-create/html/tsconfig.json +13 -0
  147. package/templates/lxapp-create/html/view/home.ts +19 -0
  148. package/templates/lxapp-create/react/app.css +20 -0
  149. package/templates/lxapp-create/react/lxapp.config.ts +8 -0
  150. package/templates/lxapp-create/react/lxapp.json +1 -1
  151. package/templates/lxapp-create/react/package.json +6 -4
  152. package/templates/lxapp-create/react/pages/home/index.json +1 -1
  153. package/templates/lxapp-create/react/pages/home/index.ts +8 -3
  154. package/templates/lxapp-create/react/pages/home/index.tsx +113 -42
  155. package/templates/lxapp-create/react/tsconfig.json +5 -2
  156. package/templates/lxapp-create/vue/app.css +20 -0
  157. package/templates/lxapp-create/vue/lxapp.config.ts +8 -0
  158. package/templates/lxapp-create/vue/lxapp.json +1 -1
  159. package/templates/lxapp-create/vue/package.json +5 -3
  160. package/templates/lxapp-create/vue/pages/home/index.json +1 -1
  161. package/templates/lxapp-create/vue/pages/home/index.ts +8 -3
  162. package/templates/lxapp-create/vue/pages/home/index.vue +124 -37
  163. package/templates/lxapp-create/vue/tsconfig.json +5 -2
  164. package/templates/macos-native/Info.plist +40 -0
  165. package/templates/macos-native/Package.swift +30 -0
  166. package/templates/macos-native/Sources/main.swift +23 -0
  167. package/templates/rust-lib/Cargo.toml +17 -2
  168. package/templates/rust-lib/README.md +1 -1
  169. package/templates/rust-lib/src/lib.rs +39 -1
  170. package/vendor/lingxia +0 -0
  171. package/dist/commands/create.d.ts +0 -7
  172. package/dist/commands/create.d.ts.map +0 -1
  173. package/dist/commands/create.js +0 -151
  174. package/dist/commands/create.js.map +0 -1
  175. package/templates/lxapp-create/react/lxapp.config.json +0 -8
  176. package/templates/lxapp-create/react/public/.gitkeep +0 -0
  177. package/templates/lxapp-create/vue/lxapp.config.json +0 -8
  178. package/templates/lxapp-create/vue/public/.gitkeep +0 -0
@@ -0,0 +1,23 @@
1
+ import AppKit
2
+ import lingxia
3
+
4
+ class LingXiaAppDelegate: NSObject, NSApplicationDelegate {
5
+
6
+ func applicationDidFinishLaunching(_ notification: Notification) {
7
+ // Enable WebView debugging BEFORE LxApp.initialize()
8
+ // This ensures debugging is enabled before the first WebView is created
9
+ LxApp.enableWebViewDebugging()
10
+
11
+ LxApp.initialize()
12
+ }
13
+
14
+ func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
15
+ return true
16
+ }
17
+ }
18
+
19
+ // Entry point
20
+ let app = NSApplication.shared
21
+ let delegate = LingXiaAppDelegate()
22
+ app.delegate = delegate
23
+ app.run()
@@ -1,5 +1,5 @@
1
1
  [package]
2
- name = "{{project_name}}"
2
+ name = "{{PROJECT_NAME}}"
3
3
  version = "0.1.0"
4
4
  edition = "2024"
5
5
  description = "Native library for LingXia App (builds to .so/.a)"
@@ -10,4 +10,19 @@ name = "lingxia"
10
10
  crate-type = ["cdylib", "staticlib"]
11
11
 
12
12
  [dependencies]
13
- lingxia = "0.1.1"
13
+ lingxia = "{{CRATE_VERSION}}"
14
+
15
+ # Platform-specific dependencies for FFI
16
+ [target.'cfg(target_os = "android")'.dependencies]
17
+ jni = "0.21"
18
+
19
+ [target.'cfg(target_env = "ohos")'.dependencies]
20
+ napi-ohos = "1.1"
21
+ napi-derive-ohos = "1.1"
22
+
23
+ # Release profile: optimize for size
24
+ [profile.release]
25
+ opt-level = 'z'
26
+ lto = true
27
+ codegen-units = 1
28
+ strip = true
@@ -1,4 +1,4 @@
1
- # {{project_name}}
1
+ # {{PROJECT_NAME}}
2
2
 
3
3
  Native library for your LingXia app.
4
4
 
@@ -1,6 +1,8 @@
1
1
  //! Native library for the example app (builds to .so/.a).
2
2
  //!
3
- //! This crate re-exports platform FFI symbols from lingxia.
3
+ //! This crate:
4
+ //! 1. Re-exports platform FFI symbols from lingxia
5
+ //! 2. Exports extension registration via platform FFI (JNI/NAPI/C)
4
6
 
5
7
  // Re-export platform FFI symbols from lingxia
6
8
  #[cfg(target_os = "android")]
@@ -11,3 +13,39 @@ pub use lingxia::apple::*;
11
13
 
12
14
  #[cfg(target_env = "ohos")]
13
15
  pub use lingxia::harmony::*;
16
+
17
+ // Custom Extensions Registration
18
+ // This function is called from the native host before LxApp initialization.
19
+ fn do_register_extensions() {
20
+ // Register custom extensions here
21
+ // Example: lingxia::register_logic_extension(Box::new(MyExtension));
22
+ }
23
+
24
+ // Android: JNI export
25
+ #[cfg(target_os = "android")]
26
+ mod android {
27
+ use jni::JNIEnv;
28
+ use jni::objects::JClass;
29
+
30
+ #[unsafe(no_mangle)]
31
+ pub extern "system" fn Java_{{PACKAGE_ID_UNDERSCORE}}_MainActivity_registerNativeExtensions(
32
+ _env: JNIEnv,
33
+ _class: JClass,
34
+ ) {
35
+ super::do_register_extensions();
36
+ }
37
+ }
38
+
39
+ // Harmony: NAPI export
40
+ #[cfg(target_env = "ohos")]
41
+ #[napi_derive_ohos::napi]
42
+ pub fn lingxia_register_extensions() {
43
+ do_register_extensions();
44
+ }
45
+
46
+ // iOS/macOS: C export
47
+ #[cfg(any(target_os = "ios", target_os = "macos"))]
48
+ #[unsafe(no_mangle)]
49
+ pub extern "C" fn lingxia_register_extensions() {
50
+ do_register_extensions();
51
+ }
package/vendor/lingxia CHANGED
Binary file
@@ -1,7 +0,0 @@
1
- type Framework = 'react' | 'vue';
2
- type CreateOptions = {
3
- framework?: Framework;
4
- };
5
- export declare function createCommand(projectNameArg?: string, options?: CreateOptions): Promise<void>;
6
- export {};
7
- //# sourceMappingURL=create.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAMA,KAAK,SAAS,GAAG,OAAO,GAAG,KAAK,CAAC;AAEjC,KAAK,aAAa,GAAG;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAoBF,wBAAsB,aAAa,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBvG"}
@@ -1,151 +0,0 @@
1
- import path from 'path';
2
- import { fileURLToPath } from 'url';
3
- import { existsSync, promises as fs } from 'fs';
4
- import { createInterface } from 'readline/promises';
5
- import { stdin as input, stdout as output } from 'process';
6
- const TEMPLATE_ROOT = resolveTemplateRoot();
7
- function resolveTemplateRoot() {
8
- // From npm/dist/commands/create.js → ../../templates/lxapp-create
9
- // Dev fallback → ../../../templates/lxapp-create (repo root templates)
10
- const candidates = [
11
- new URL('../../templates/lxapp-create', import.meta.url),
12
- new URL('../../../templates/lxapp-create', import.meta.url),
13
- ];
14
- for (const candidate of candidates) {
15
- const resolved = fileURLToPath(candidate);
16
- if (existsSync(resolved))
17
- return resolved;
18
- }
19
- return fileURLToPath(candidates[0]);
20
- }
21
- export async function createCommand(projectNameArg, options = {}) {
22
- const prompts = new PromptManager();
23
- try {
24
- const projectName = await resolveProjectName(projectNameArg, prompts);
25
- const framework = await resolveFramework(options.framework, prompts);
26
- const targetDir = path.resolve(process.cwd(), projectName);
27
- await ensureTargetDirectory(targetDir);
28
- const templateDir = path.join(TEMPLATE_ROOT, framework);
29
- await copyTemplate(templateDir, targetDir);
30
- await applyPlaceholders(targetDir, projectName);
31
- await recordFrameworkMetadata(targetDir, framework);
32
- console.log('\n✅ Project scaffolded!');
33
- console.log(`\nNext steps:`);
34
- console.log(` cd ${path.relative(process.cwd(), targetDir) || '.'}`);
35
- console.log(` npm install`);
36
- console.log(` npm run dev # or npm run build`);
37
- }
38
- finally {
39
- prompts.dispose();
40
- }
41
- }
42
- async function resolveProjectName(projectNameArg, prompts) {
43
- const defaultName = 'lingxia-app';
44
- if (projectNameArg && projectNameArg.trim().length > 0) {
45
- return projectNameArg.trim();
46
- }
47
- return prompts.input(`Project name (${defaultName}): `, defaultName);
48
- }
49
- async function resolveFramework(current, prompts) {
50
- if (current === 'react' || current === 'vue') {
51
- return current;
52
- }
53
- const answer = await prompts.select('Choose framework', ['react', 'vue']);
54
- return answer;
55
- }
56
- async function ensureTargetDirectory(targetDir) {
57
- if (existsSync(targetDir)) {
58
- const entries = await fs.readdir(targetDir);
59
- if (entries.length > 0) {
60
- throw new Error(`Target directory "${targetDir}" is not empty. Please choose a different name or empty the folder.`);
61
- }
62
- return;
63
- }
64
- await fs.mkdir(targetDir, { recursive: true });
65
- }
66
- async function copyTemplate(templateDir, targetDir) {
67
- await fs.cp(templateDir, targetDir, { recursive: true });
68
- }
69
- async function applyPlaceholders(targetDir, projectName) {
70
- const pkgPath = path.join(targetDir, 'package.json');
71
- const appPath = path.join(targetDir, 'lxapp.json');
72
- const packageName = slugify(projectName);
73
- const appId = packageName;
74
- const displayName = titleCase(projectName);
75
- const replacements = {
76
- __APP_PACKAGE_NAME__: packageName,
77
- __APP_ID__: appId,
78
- __APP_DISPLAY_NAME__: displayName
79
- };
80
- await replacePlaceholders(pkgPath, replacements);
81
- await replacePlaceholders(appPath, replacements);
82
- }
83
- async function recordFrameworkMetadata(targetDir, framework) {
84
- const pkgPath = path.join(targetDir, 'package.json');
85
- if (!existsSync(pkgPath))
86
- return;
87
- const pkg = JSON.parse(await fs.readFile(pkgPath, 'utf8'));
88
- pkg.lingxia = { ...(pkg.lingxia ?? {}), framework };
89
- await fs.writeFile(pkgPath, JSON.stringify(pkg, null, 2));
90
- }
91
- async function replacePlaceholders(filePath, replacements) {
92
- if (!existsSync(filePath))
93
- return;
94
- let content = await fs.readFile(filePath, 'utf8');
95
- for (const [token, value] of Object.entries(replacements)) {
96
- content = content.replace(new RegExp(token, 'g'), value);
97
- }
98
- await fs.writeFile(filePath, content);
99
- }
100
- class PromptManager {
101
- rl = null;
102
- ensureInterface() {
103
- if (!this.rl) {
104
- this.rl = createInterface({ input, output });
105
- }
106
- return this.rl;
107
- }
108
- async input(message, fallback) {
109
- const answer = await this.ensureInterface().question(message);
110
- return answer.trim().length > 0 ? answer.trim() : fallback;
111
- }
112
- async select(message, options) {
113
- const formatted = options.map((option, index) => `${index + 1}) ${option}`).join('\n');
114
- const prompt = `${message}:\n${formatted}\nEnter choice: `;
115
- const answer = await this.ensureInterface().question(prompt);
116
- const index = Number.parseInt(answer, 10);
117
- if (!Number.isNaN(index) && index >= 1 && index <= options.length) {
118
- return options[index - 1];
119
- }
120
- return options[0];
121
- }
122
- async confirm(message, defaultValue) {
123
- const suffix = defaultValue ? 'Y/n' : 'y/N';
124
- const answer = (await this.ensureInterface().question(message || `Confirm (${suffix}): `)).trim().toLowerCase();
125
- if (answer === '') {
126
- return defaultValue;
127
- }
128
- return ['y', 'yes'].includes(answer);
129
- }
130
- dispose() {
131
- this.rl?.close();
132
- this.rl = null;
133
- }
134
- }
135
- function slugify(value) {
136
- const slug = value
137
- .trim()
138
- .toLowerCase()
139
- .replace(/[^a-z0-9]+/g, '-')
140
- .replace(/^-+|-+$/g, '');
141
- return slug.length > 0 ? slug : 'lingxia-app';
142
- }
143
- function titleCase(value) {
144
- return value
145
- .trim()
146
- .split(/[\s\-_.]+/)
147
- .filter(Boolean)
148
- .map(word => word.charAt(0).toUpperCase() + word.slice(1))
149
- .join(' ') || 'LingXia App';
150
- }
151
- //# sourceMappingURL=create.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- {
2
- "staticDirs": ["public"],
3
- "alias": {
4
- "@shared": "shared"
5
- },
6
- "sourceDirs": ["shared"],
7
- "assetDir": "assets"
8
- }
File without changes
@@ -1,8 +0,0 @@
1
- {
2
- "staticDirs": ["public"],
3
- "alias": {
4
- "@shared": "shared"
5
- },
6
- "sourceDirs": ["shared"],
7
- "assetDir": "assets"
8
- }
File without changes