create-pixi-vn 2.0.9 → 2.0.11

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 (144) hide show
  1. package/package.json +1 -1
  2. package/template-react-vite-muijoy/.vscode/launch.json +9 -2
  3. package/template-react-vite-muijoy/.vscode/tasks.json +20 -4
  4. package/template-react-vite-muijoy/package-lock.json +100 -81
  5. package/template-react-vite-muijoy/package.json +3 -2
  6. package/template-react-vite-muijoy/src/components/loading.tsx +5 -44
  7. package/template-react-vite-muijoy/src/components/menus/settings/about.tsx +1 -1
  8. package/template-react-vite-muijoy/src/components/quick-tools.tsx +1 -1
  9. package/template-react-vite-muijoy/src/components/screens/narration/narration-cards.tsx +2 -3
  10. package/template-react-vite-muijoy/src/lib/query/narration-query.ts +5 -1
  11. package/template-react-vite-muijoy/src/lib/utils/assets-utility.ts +1 -1
  12. package/template-react-vite-muijoy-ink/.vscode/extensions.json +1 -2
  13. package/template-react-vite-muijoy-ink/.vscode/launch.json +9 -2
  14. package/template-react-vite-muijoy-ink/.vscode/settings.json +1 -6
  15. package/template-react-vite-muijoy-ink/.vscode/tasks.json +20 -4
  16. package/template-react-vite-muijoy-ink/_gitignore +0 -1
  17. package/template-react-vite-muijoy-ink/package-lock.json +104 -311
  18. package/template-react-vite-muijoy-ink/package.json +4 -5
  19. package/template-react-vite-muijoy-ink/src/App.tsx +25 -25
  20. package/template-react-vite-muijoy-ink/src/assets/index.ts +4 -2
  21. package/template-react-vite-muijoy-ink/src/assets/ink-manifest.gen.json +1 -4
  22. package/template-react-vite-muijoy-ink/src/components/loading.tsx +5 -44
  23. package/template-react-vite-muijoy-ink/src/components/menus/settings/about.tsx +1 -1
  24. package/template-react-vite-muijoy-ink/src/components/quick-tools.tsx +1 -1
  25. package/template-react-vite-muijoy-ink/src/components/screens/narration/narration-cards.tsx +2 -3
  26. package/template-react-vite-muijoy-ink/src/content/labels/second.label.ts +1207 -0
  27. package/template-react-vite-muijoy-ink/src/content/labels/start.label.ts +566 -0
  28. package/template-react-vite-muijoy-ink/src/lib/i18n.ts +1 -22
  29. package/template-react-vite-muijoy-ink/src/lib/query/narration-query.ts +5 -1
  30. package/template-react-vite-muijoy-ink/src/lib/utils/assets-utility.ts +1 -1
  31. package/template-react-vite-muijoy-ink/src/pixi-vn-keys.gen.d.ts +0 -2
  32. package/template-react-vite-muijoy-ink/src/routes/__root.tsx +0 -4
  33. package/template-react-vite-muijoy-ink/vite.config.ts +0 -6
  34. package/template-react-vite-muijoy-ink-tauri/.assetpack.ts +0 -9
  35. package/template-react-vite-muijoy-ink-tauri/.vscode/extensions.json +1 -5
  36. package/template-react-vite-muijoy-ink-tauri/.vscode/launch.json +6 -10
  37. package/template-react-vite-muijoy-ink-tauri/.vscode/settings.json +1 -6
  38. package/template-react-vite-muijoy-ink-tauri/.vscode/tasks.json +17 -48
  39. package/template-react-vite-muijoy-ink-tauri/README.md +3 -3
  40. package/template-react-vite-muijoy-ink-tauri/_gitignore +0 -11
  41. package/template-react-vite-muijoy-ink-tauri/package-lock.json +100 -557
  42. package/template-react-vite-muijoy-ink-tauri/package.json +5 -15
  43. package/template-react-vite-muijoy-ink-tauri/src/App.tsx +25 -25
  44. package/template-react-vite-muijoy-ink-tauri/src/assets/index.ts +4 -2
  45. package/template-react-vite-muijoy-ink-tauri/src/assets/ink-manifest.gen.json +1 -4
  46. package/template-react-vite-muijoy-ink-tauri/src/components/loading.tsx +5 -44
  47. package/template-react-vite-muijoy-ink-tauri/src/components/menus/main-menu.tsx +1 -16
  48. package/template-react-vite-muijoy-ink-tauri/src/components/menus/settings/about.tsx +1 -1
  49. package/template-react-vite-muijoy-ink-tauri/src/components/menus/settings/quick-menus.tsx +1 -17
  50. package/template-react-vite-muijoy-ink-tauri/src/components/menus/settings/system-controls.tsx +1 -11
  51. package/template-react-vite-muijoy-ink-tauri/src/components/quick-tools.tsx +1 -1
  52. package/template-react-vite-muijoy-ink-tauri/src/components/screens/narration/narration-cards.tsx +2 -3
  53. package/template-react-vite-muijoy-ink-tauri/src/content/labels/second.label.ts +1207 -0
  54. package/template-react-vite-muijoy-ink-tauri/src/content/labels/start.label.ts +566 -0
  55. package/template-react-vite-muijoy-ink-tauri/src/lib/i18n.ts +1 -22
  56. package/template-react-vite-muijoy-ink-tauri/src/lib/query/narration-query.ts +5 -1
  57. package/template-react-vite-muijoy-ink-tauri/src/lib/query/settings-query.ts +1 -7
  58. package/template-react-vite-muijoy-ink-tauri/src/lib/utils/assets-utility.ts +1 -1
  59. package/template-react-vite-muijoy-ink-tauri/src/pixi-vn-keys.gen.d.ts +0 -2
  60. package/template-react-vite-muijoy-ink-tauri/src/routes/__root.tsx +0 -4
  61. package/template-react-vite-muijoy-ink-tauri/vite.config.ts +0 -30
  62. package/template-react-vite-muijoy-tauri/.assetpack.ts +0 -9
  63. package/template-react-vite-muijoy-tauri/.vscode/extensions.json +1 -4
  64. package/template-react-vite-muijoy-tauri/.vscode/launch.json +6 -10
  65. package/template-react-vite-muijoy-tauri/.vscode/tasks.json +17 -48
  66. package/template-react-vite-muijoy-tauri/README.md +3 -3
  67. package/template-react-vite-muijoy-tauri/_gitignore +0 -10
  68. package/template-react-vite-muijoy-tauri/package-lock.json +100 -331
  69. package/template-react-vite-muijoy-tauri/package.json +4 -12
  70. package/template-react-vite-muijoy-tauri/src/components/loading.tsx +5 -44
  71. package/template-react-vite-muijoy-tauri/src/components/menus/main-menu.tsx +1 -16
  72. package/template-react-vite-muijoy-tauri/src/components/menus/settings/about.tsx +1 -1
  73. package/template-react-vite-muijoy-tauri/src/components/menus/settings/quick-menus.tsx +1 -17
  74. package/template-react-vite-muijoy-tauri/src/components/menus/settings/system-controls.tsx +1 -11
  75. package/template-react-vite-muijoy-tauri/src/components/quick-tools.tsx +1 -1
  76. package/template-react-vite-muijoy-tauri/src/components/screens/narration/narration-cards.tsx +2 -3
  77. package/template-react-vite-muijoy-tauri/src/lib/query/narration-query.ts +5 -1
  78. package/template-react-vite-muijoy-tauri/src/lib/query/settings-query.ts +1 -7
  79. package/template-react-vite-muijoy-tauri/src/lib/utils/assets-utility.ts +1 -1
  80. package/template-react-vite-muijoy-tauri/vite.config.ts +0 -24
  81. package/template-react-vite-muijoy-ink/ink/second_part.ink +0 -571
  82. package/template-react-vite-muijoy-ink/ink/start.ink +0 -214
  83. package/template-react-vite-muijoy-ink/src/content/ink/hashtag-commands.ts +0 -38
  84. package/template-react-vite-muijoy-ink/src/content/ink/text-replaces.ts +0 -19
  85. package/template-react-vite-muijoy-ink/src/lib/hooks/ink-hooks.tsx +0 -12
  86. package/template-react-vite-muijoy-ink-tauri/_github/workflows/desktop.yml +0 -188
  87. package/template-react-vite-muijoy-ink-tauri/_github/workflows/mobile.yml +0 -270
  88. package/template-react-vite-muijoy-ink-tauri/ink/second_part.ink +0 -571
  89. package/template-react-vite-muijoy-ink-tauri/ink/start.ink +0 -214
  90. package/template-react-vite-muijoy-ink-tauri/src/content/ink/hashtag-commands.ts +0 -55
  91. package/template-react-vite-muijoy-ink-tauri/src/content/ink/text-replaces.ts +0 -19
  92. package/template-react-vite-muijoy-ink-tauri/src/lib/hooks/ink-hooks.tsx +0 -12
  93. package/template-react-vite-muijoy-ink-tauri/src/lib/hooks/quit-hooks.ts +0 -24
  94. package/template-react-vite-muijoy-ink-tauri/src/lib/steam.ts +0 -143
  95. package/template-react-vite-muijoy-ink-tauri/src-tauri/Cargo.toml +0 -50
  96. package/template-react-vite-muijoy-ink-tauri/src-tauri/build.rs +0 -46
  97. package/template-react-vite-muijoy-ink-tauri/src-tauri/capabilities/default.json +0 -21
  98. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/128x128.png +0 -0
  99. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/128x128@2x.png +0 -0
  100. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/32x32.png +0 -0
  101. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square107x107Logo.png +0 -0
  102. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square142x142Logo.png +0 -0
  103. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square150x150Logo.png +0 -0
  104. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square284x284Logo.png +0 -0
  105. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square30x30Logo.png +0 -0
  106. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square310x310Logo.png +0 -0
  107. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square44x44Logo.png +0 -0
  108. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square71x71Logo.png +0 -0
  109. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square89x89Logo.png +0 -0
  110. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/StoreLogo.png +0 -0
  111. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/icon.icns +0 -0
  112. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/icon.ico +0 -0
  113. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/icon.png +0 -0
  114. package/template-react-vite-muijoy-ink-tauri/src-tauri/src/lib.rs +0 -64
  115. package/template-react-vite-muijoy-ink-tauri/src-tauri/src/main.rs +0 -6
  116. package/template-react-vite-muijoy-ink-tauri/src-tauri/src/steam.rs +0 -238
  117. package/template-react-vite-muijoy-ink-tauri/src-tauri/tauri.conf.json +0 -50
  118. package/template-react-vite-muijoy-tauri/_github/workflows/desktop.yml +0 -188
  119. package/template-react-vite-muijoy-tauri/_github/workflows/mobile.yml +0 -270
  120. package/template-react-vite-muijoy-tauri/src/lib/hooks/quit-hooks.ts +0 -24
  121. package/template-react-vite-muijoy-tauri/src/lib/steam.ts +0 -143
  122. package/template-react-vite-muijoy-tauri/src-tauri/Cargo.toml +0 -50
  123. package/template-react-vite-muijoy-tauri/src-tauri/build.rs +0 -46
  124. package/template-react-vite-muijoy-tauri/src-tauri/capabilities/default.json +0 -21
  125. package/template-react-vite-muijoy-tauri/src-tauri/icons/128x128.png +0 -0
  126. package/template-react-vite-muijoy-tauri/src-tauri/icons/128x128@2x.png +0 -0
  127. package/template-react-vite-muijoy-tauri/src-tauri/icons/32x32.png +0 -0
  128. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square107x107Logo.png +0 -0
  129. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square142x142Logo.png +0 -0
  130. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square150x150Logo.png +0 -0
  131. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square284x284Logo.png +0 -0
  132. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square30x30Logo.png +0 -0
  133. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square310x310Logo.png +0 -0
  134. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square44x44Logo.png +0 -0
  135. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square71x71Logo.png +0 -0
  136. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square89x89Logo.png +0 -0
  137. package/template-react-vite-muijoy-tauri/src-tauri/icons/StoreLogo.png +0 -0
  138. package/template-react-vite-muijoy-tauri/src-tauri/icons/icon.icns +0 -0
  139. package/template-react-vite-muijoy-tauri/src-tauri/icons/icon.ico +0 -0
  140. package/template-react-vite-muijoy-tauri/src-tauri/icons/icon.png +0 -0
  141. package/template-react-vite-muijoy-tauri/src-tauri/src/lib.rs +0 -64
  142. package/template-react-vite-muijoy-tauri/src-tauri/src/main.rs +0 -6
  143. package/template-react-vite-muijoy-tauri/src-tauri/src/steam.rs +0 -238
  144. package/template-react-vite-muijoy-tauri/src-tauri/tauri.conf.json +0 -50
@@ -1,238 +0,0 @@
1
- use std::sync::Mutex;
2
- use steamworks::{AppId, Client, OverlayToStoreFlag};
3
- use tauri::State;
4
-
5
- pub struct SteamClient {
6
- pub client: Mutex<Option<Client>>,
7
- }
8
-
9
- /// Try to initialise Steam. Returns `None` when Steam is not running or the
10
- /// game is launched outside Steam (e.g. during CI builds).
11
- ///
12
- /// A background thread is spawned to pump Steam callbacks every 100 ms so
13
- /// that overlay notifications, stat uploads, and other async operations work.
14
- pub fn try_init() -> Option<Client> {
15
- match Client::init() {
16
- Ok(client) => {
17
- // Client is Clone + Send + Sync in steamworks 0.13 — safe to move into a thread.
18
- let ticker = client.clone();
19
- std::thread::spawn(move || loop {
20
- ticker.run_callbacks();
21
- std::thread::sleep(std::time::Duration::from_millis(100));
22
- });
23
-
24
- eprintln!("[Steam] Initialised — App ID {}", client.utils().app_id().0);
25
- Some(client)
26
- }
27
- Err(e) => {
28
- eprintln!("[Steam] Not available: {e}");
29
- None
30
- }
31
- }
32
- }
33
-
34
- // ── Commands ──────────────────────────────────────────────────────────────────
35
-
36
- /// Returns `true` when Steam was initialised successfully.
37
- #[tauri::command]
38
- pub fn steam_is_available(state: State<'_, SteamClient>) -> bool {
39
- state.client.lock().map_or(false, |g| g.is_some())
40
- }
41
-
42
- /// Steam display name of the current user (`null` when Steam unavailable).
43
- #[tauri::command]
44
- pub fn steam_get_player_name(state: State<'_, SteamClient>) -> Option<String> {
45
- state
46
- .client
47
- .lock()
48
- .ok()
49
- .and_then(|g| g.as_ref().map(|c| c.friends().name()))
50
- }
51
-
52
- /// Numeric Steam App ID of the running application.
53
- #[tauri::command]
54
- pub fn steam_get_app_id(state: State<'_, SteamClient>) -> Option<u32> {
55
- state
56
- .client
57
- .lock()
58
- .ok()
59
- .and_then(|g| g.as_ref().map(|c| c.utils().app_id().0))
60
- }
61
-
62
- // ── Achievements ──────────────────────────────────────────────────────────────
63
-
64
- /// Unlock an achievement and persist it to Steam immediately.
65
- ///
66
- /// `achievement_id` must match the API Name defined in Steamworks Partner.
67
- #[tauri::command]
68
- pub fn steam_unlock_achievement(
69
- state: State<'_, SteamClient>,
70
- achievement_id: String,
71
- ) -> Result<(), String> {
72
- let guard = state.client.lock().map_err(|e| e.to_string())?;
73
- let client = guard.as_ref().ok_or("Steam not available")?;
74
- let stats = client.user_stats();
75
- stats
76
- .achievement(&achievement_id)
77
- .set()
78
- .map_err(|_| format!("Achievement '{}' not found or stats not ready", achievement_id))?;
79
- stats
80
- .store_stats()
81
- .map_err(|_| "Failed to store stats".to_string())
82
- }
83
-
84
- /// Returns `true` if the current user has already unlocked the achievement.
85
- ///
86
- /// Stats are fetched automatically when Steam initialises. Allow a few seconds
87
- /// after launch before calling this for the most reliable result.
88
- #[tauri::command]
89
- pub fn steam_is_achievement_unlocked(
90
- state: State<'_, SteamClient>,
91
- achievement_id: String,
92
- ) -> Result<bool, String> {
93
- let guard = state.client.lock().map_err(|e| e.to_string())?;
94
- let client = guard.as_ref().ok_or("Steam not available")?;
95
- client
96
- .user_stats()
97
- .achievement(&achievement_id)
98
- .get()
99
- .map_err(|_| format!("Achievement '{}' not found or stats not ready", achievement_id))
100
- }
101
-
102
- /// Reset an achievement (useful during development / QA).
103
- #[tauri::command]
104
- pub fn steam_clear_achievement(
105
- state: State<'_, SteamClient>,
106
- achievement_id: String,
107
- ) -> Result<(), String> {
108
- let guard = state.client.lock().map_err(|e| e.to_string())?;
109
- let client = guard.as_ref().ok_or("Steam not available")?;
110
- let stats = client.user_stats();
111
- stats
112
- .achievement(&achievement_id)
113
- .clear()
114
- .map_err(|_| format!("Achievement '{}' not found or stats not ready", achievement_id))?;
115
- stats
116
- .store_stats()
117
- .map_err(|_| "Failed to store stats".to_string())
118
- }
119
-
120
- // ── Stats ─────────────────────────────────────────────────────────────────────
121
-
122
- /// Set an integer stat. Call `steam_store_stats` to persist.
123
- #[tauri::command]
124
- pub fn steam_set_stat_int(
125
- state: State<'_, SteamClient>,
126
- name: String,
127
- value: i32,
128
- ) -> Result<(), String> {
129
- let guard = state.client.lock().map_err(|e| e.to_string())?;
130
- let client = guard.as_ref().ok_or("Steam not available")?;
131
- client
132
- .user_stats()
133
- .set_stat_i32(&name, value)
134
- .map_err(|_| format!("Failed to set stat '{}'", name))
135
- }
136
-
137
- /// Read an integer stat.
138
- #[tauri::command]
139
- pub fn steam_get_stat_int(
140
- state: State<'_, SteamClient>,
141
- name: String,
142
- ) -> Result<i32, String> {
143
- let guard = state.client.lock().map_err(|e| e.to_string())?;
144
- let client = guard.as_ref().ok_or("Steam not available")?;
145
- client
146
- .user_stats()
147
- .get_stat_i32(&name)
148
- .map_err(|_| format!("Failed to get stat '{}'", name))
149
- }
150
-
151
- /// Set a float stat. Call `steam_store_stats` to persist.
152
- #[tauri::command]
153
- pub fn steam_set_stat_float(
154
- state: State<'_, SteamClient>,
155
- name: String,
156
- value: f32,
157
- ) -> Result<(), String> {
158
- let guard = state.client.lock().map_err(|e| e.to_string())?;
159
- let client = guard.as_ref().ok_or("Steam not available")?;
160
- client
161
- .user_stats()
162
- .set_stat_f32(&name, value)
163
- .map_err(|_| format!("Failed to set stat '{}'", name))
164
- }
165
-
166
- /// Read a float stat.
167
- #[tauri::command]
168
- pub fn steam_get_stat_float(
169
- state: State<'_, SteamClient>,
170
- name: String,
171
- ) -> Result<f32, String> {
172
- let guard = state.client.lock().map_err(|e| e.to_string())?;
173
- let client = guard.as_ref().ok_or("Steam not available")?;
174
- client
175
- .user_stats()
176
- .get_stat_f32(&name)
177
- .map_err(|_| format!("Failed to get stat '{}'", name))
178
- }
179
-
180
- /// Commit all pending stat changes to Steam servers.
181
- /// Achievement commands already call this automatically.
182
- #[tauri::command]
183
- pub fn steam_store_stats(state: State<'_, SteamClient>) -> Result<(), String> {
184
- let guard = state.client.lock().map_err(|e| e.to_string())?;
185
- let client = guard.as_ref().ok_or("Steam not available")?;
186
- client
187
- .user_stats()
188
- .store_stats()
189
- .map_err(|_| "Failed to store stats".to_string())
190
- }
191
-
192
- // ── DLC ───────────────────────────────────────────────────────────────────────
193
-
194
- /// Returns `true` if the user owns and has the specified DLC installed.
195
- #[tauri::command]
196
- pub fn steam_is_dlc_installed(state: State<'_, SteamClient>, app_id: u32) -> bool {
197
- state.client.lock().map_or(false, |g| {
198
- g.as_ref()
199
- .map_or(false, |c| c.apps().is_dlc_installed(AppId(app_id)))
200
- })
201
- }
202
-
203
- // ── Overlay ───────────────────────────────────────────────────────────────────
204
-
205
- /// Open the Steam overlay to a specific dialog.
206
- ///
207
- /// Valid `dialog` values:
208
- /// "achievements", "community", "friends", "players",
209
- /// "settings", "officialgamegroup", "stats"
210
- #[tauri::command]
211
- pub fn steam_open_overlay(state: State<'_, SteamClient>, dialog: String) -> bool {
212
- let Ok(guard) = state.client.lock() else {
213
- return false;
214
- };
215
- let Some(client) = guard.as_ref() else {
216
- return false;
217
- };
218
- client.friends().activate_game_overlay(&dialog);
219
- true
220
- }
221
-
222
- /// Open the Steam store page for this game (or a specific `app_id`).
223
- #[tauri::command]
224
- pub fn steam_open_store(state: State<'_, SteamClient>, app_id: Option<u32>) -> bool {
225
- let Ok(guard) = state.client.lock() else {
226
- return false;
227
- };
228
- let Some(client) = guard.as_ref() else {
229
- return false;
230
- };
231
- let target = app_id
232
- .map(AppId)
233
- .unwrap_or_else(|| client.utils().app_id());
234
- client
235
- .friends()
236
- .activate_game_overlay_to_store(target, OverlayToStoreFlag::None);
237
- true
238
- }
@@ -1,50 +0,0 @@
1
- {
2
- "$schema": "https://schema.tauri.app/config/2",
3
- "productName": "my-app-package-name",
4
- "version": "0.1.0",
5
- "identifier": "com.my-app-identifier.app",
6
- "build": {
7
- "beforeDevCommand": "npm run dev",
8
- "devUrl": "http://localhost:5173",
9
- "beforeBuildCommand": "npm run build",
10
- "frontendDist": "../dist"
11
- },
12
- "app": {
13
- "withGlobalTauri": true,
14
- "windows": [
15
- {
16
- "title": "my-app-project-name",
17
- "backgroundColor": "#303030",
18
- "theme": "Dark",
19
- "width": 1280,
20
- "height": 720,
21
- "minWidth": 640,
22
- "minHeight": 360,
23
- "center": true,
24
- "fullscreen": false,
25
- "resizable": true,
26
- "dragDropEnabled": false,
27
- "zoomHotkeysEnabled": false
28
- }
29
- ],
30
- "security": {
31
- "csp": null
32
- }
33
- },
34
- "bundle": {
35
- "active": true,
36
- "targets": "all",
37
- "icon": [
38
- "icons/32x32.png",
39
- "icons/128x128.png",
40
- "icons/128x128@2x.png",
41
- "icons/icon.icns",
42
- "icons/icon.ico"
43
- ],
44
- "windows": {
45
- "nsis": {
46
- "installerIcon": "icons/icon.ico"
47
- }
48
- }
49
- }
50
- }