@ahqstore/cli 0.5.2 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Cargo.toml +3 -3
- package/README.md +14 -0
- package/build.rs +8 -8
- package/index.js +182 -182
- package/latest.md +1 -1
- package/package.json +10 -10
- package/src/app/build/config.rs +54 -54
- package/src/app/build/icon.rs +47 -47
- package/src/app/build/macros.rs +2 -1
- package/src/app/build/mod.rs +219 -233
- package/src/app/build/release.rs +50 -50
- package/src/app/create/inquire.rs +114 -142
- package/src/app/create/mod.rs +73 -79
- package/src/app/create/readme.md +13 -80
- package/src/app/help.rs +77 -77
- package/src/app/mod.rs +39 -39
- package/src/app/shared/file_sorter.rs +42 -42
- package/src/app/shared/mod.rs +66 -66
- package/src/app/shared/platforms.rs +44 -44
- package/src/lib.rs +12 -12
- package/src/main.rs +10 -10
- package/src/app/create/readme.es.md +0 -80
- package/src/app/create/readme.hi.md +0 -80
package/src/app/mod.rs
CHANGED
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
use chalk_rs::Chalk;
|
|
2
|
-
use lazy_static::lazy_static;
|
|
3
|
-
|
|
4
|
-
mod build;
|
|
5
|
-
mod create;
|
|
6
|
-
mod help;
|
|
7
|
-
pub mod shared;
|
|
8
|
-
|
|
9
|
-
lazy_static! {
|
|
10
|
-
static ref INFO: Chalk = {
|
|
11
|
-
let mut chalk = Chalk::new();
|
|
12
|
-
chalk.blue().bold();
|
|
13
|
-
chalk
|
|
14
|
-
};
|
|
15
|
-
static ref WARN: Chalk = {
|
|
16
|
-
let mut chalk = Chalk::new();
|
|
17
|
-
chalk.yellow().bold();
|
|
18
|
-
chalk
|
|
19
|
-
};
|
|
20
|
-
static ref ERR: Chalk = {
|
|
21
|
-
let mut chalk = Chalk::new();
|
|
22
|
-
chalk.red().bold();
|
|
23
|
-
chalk
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
pub fn start(args: Vec<String>, gh: bool) {
|
|
28
|
-
if args.len() >= 1 {
|
|
29
|
-
match args[0].as_str() {
|
|
30
|
-
"create" => create::create(args.len() > 1 && (&args[1] == "--force" || &args[1] == "-f")),
|
|
31
|
-
"build" => build::build_config(false, false),
|
|
32
|
-
"upload" => build::build_config(true, gh),
|
|
33
|
-
"help" => println!("{}", help::main_help()),
|
|
34
|
-
a => println!("{}", help::not_found(a)),
|
|
35
|
-
}
|
|
36
|
-
} else {
|
|
37
|
-
println!("{}", help::main_help());
|
|
38
|
-
}
|
|
39
|
-
}
|
|
1
|
+
use chalk_rs::Chalk;
|
|
2
|
+
use lazy_static::lazy_static;
|
|
3
|
+
|
|
4
|
+
mod build;
|
|
5
|
+
mod create;
|
|
6
|
+
mod help;
|
|
7
|
+
pub mod shared;
|
|
8
|
+
|
|
9
|
+
lazy_static! {
|
|
10
|
+
static ref INFO: Chalk = {
|
|
11
|
+
let mut chalk = Chalk::new();
|
|
12
|
+
chalk.blue().bold();
|
|
13
|
+
chalk
|
|
14
|
+
};
|
|
15
|
+
static ref WARN: Chalk = {
|
|
16
|
+
let mut chalk = Chalk::new();
|
|
17
|
+
chalk.yellow().bold();
|
|
18
|
+
chalk
|
|
19
|
+
};
|
|
20
|
+
static ref ERR: Chalk = {
|
|
21
|
+
let mut chalk = Chalk::new();
|
|
22
|
+
chalk.red().bold();
|
|
23
|
+
chalk
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
pub fn start(args: Vec<String>, gh: bool) {
|
|
28
|
+
if args.len() >= 1 {
|
|
29
|
+
match args[0].as_str() {
|
|
30
|
+
"create" => create::create(args.len() > 1 && (&args[1] == "--force" || &args[1] == "-f")),
|
|
31
|
+
"build" => build::build_config(false, false),
|
|
32
|
+
"upload" => build::build_config(true, gh),
|
|
33
|
+
"help" => println!("{}", help::main_help()),
|
|
34
|
+
a => println!("{}", help::not_found(a)),
|
|
35
|
+
}
|
|
36
|
+
} else {
|
|
37
|
+
println!("{}", help::main_help());
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
use serde::{Deserialize, Serialize};
|
|
2
|
-
|
|
3
|
-
#[derive(Debug, Serialize, Deserialize, Default)]
|
|
4
|
-
#[allow(non_snake_case)]
|
|
5
|
-
pub struct FileFinder<'a> {
|
|
6
|
-
#[serde(borrow)]
|
|
7
|
-
pub windowsAmd64Finder: Option<Finder<'a>>,
|
|
8
|
-
#[serde(borrow)]
|
|
9
|
-
pub windowsArm64Finder: Option<Finder<'a>>,
|
|
10
|
-
#[serde(borrow)]
|
|
11
|
-
pub linuxAmd64Finder: Option<Finder<'a>>,
|
|
12
|
-
#[serde(borrow)]
|
|
13
|
-
pub linuxArm64Finder: Option<Finder<'a>>,
|
|
14
|
-
#[serde(borrow)]
|
|
15
|
-
pub linuxArm32Finder: Option<Finder<'a>>,
|
|
16
|
-
#[serde(borrow)]
|
|
17
|
-
pub androidUniversalFinder: Option<Finder<'a>>,
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
#[derive(Debug, Serialize, Deserialize, Default)]
|
|
21
|
-
#[allow(non_snake_case)]
|
|
22
|
-
pub struct Finder<'a> {
|
|
23
|
-
#[serde(borrow)]
|
|
24
|
-
pub startsWith: Option<&'a str>,
|
|
25
|
-
#[serde(borrow)]
|
|
26
|
-
pub contains: Option<&'a str>,
|
|
27
|
-
#[serde(borrow)]
|
|
28
|
-
pub endsWith: Option<&'a str>,
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
impl<'a> FileFinder<'a> {
|
|
32
|
-
pub fn new() -> Self {
|
|
33
|
-
Self {
|
|
34
|
-
windowsAmd64Finder: Some(Finder {
|
|
35
|
-
startsWith: Some("This-is"),
|
|
36
|
-
contains: Some("an"),
|
|
37
|
-
endsWith: Some(".example"),
|
|
38
|
-
}),
|
|
39
|
-
..Default::default()
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
1
|
+
use serde::{Deserialize, Serialize};
|
|
2
|
+
|
|
3
|
+
#[derive(Debug, Serialize, Deserialize, Default)]
|
|
4
|
+
#[allow(non_snake_case)]
|
|
5
|
+
pub struct FileFinder<'a> {
|
|
6
|
+
#[serde(borrow)]
|
|
7
|
+
pub windowsAmd64Finder: Option<Finder<'a>>,
|
|
8
|
+
#[serde(borrow)]
|
|
9
|
+
pub windowsArm64Finder: Option<Finder<'a>>,
|
|
10
|
+
#[serde(borrow)]
|
|
11
|
+
pub linuxAmd64Finder: Option<Finder<'a>>,
|
|
12
|
+
#[serde(borrow)]
|
|
13
|
+
pub linuxArm64Finder: Option<Finder<'a>>,
|
|
14
|
+
#[serde(borrow)]
|
|
15
|
+
pub linuxArm32Finder: Option<Finder<'a>>,
|
|
16
|
+
#[serde(borrow)]
|
|
17
|
+
pub androidUniversalFinder: Option<Finder<'a>>,
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
#[derive(Debug, Serialize, Deserialize, Default)]
|
|
21
|
+
#[allow(non_snake_case)]
|
|
22
|
+
pub struct Finder<'a> {
|
|
23
|
+
#[serde(borrow)]
|
|
24
|
+
pub startsWith: Option<&'a str>,
|
|
25
|
+
#[serde(borrow)]
|
|
26
|
+
pub contains: Option<&'a str>,
|
|
27
|
+
#[serde(borrow)]
|
|
28
|
+
pub endsWith: Option<&'a str>,
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
impl<'a> FileFinder<'a> {
|
|
32
|
+
pub fn new() -> Self {
|
|
33
|
+
Self {
|
|
34
|
+
windowsAmd64Finder: Some(Finder {
|
|
35
|
+
startsWith: Some("This-is"),
|
|
36
|
+
contains: Some("an"),
|
|
37
|
+
endsWith: Some(".example"),
|
|
38
|
+
}),
|
|
39
|
+
..Default::default()
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
package/src/app/shared/mod.rs
CHANGED
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
use serde::{Deserialize, Serialize};
|
|
2
|
-
use std::collections::HashMap;
|
|
3
|
-
|
|
4
|
-
use ahqstore_types::AppRepo;
|
|
5
|
-
|
|
6
|
-
pub type Str = String;
|
|
7
|
-
pub type Config<'a> = HashMap<String, IMetadata<'a>>;
|
|
8
|
-
|
|
9
|
-
mod file_sorter;
|
|
10
|
-
mod platforms;
|
|
11
|
-
pub use file_sorter::*;
|
|
12
|
-
pub use platforms::*;
|
|
13
|
-
|
|
14
|
-
#[derive(Debug, Serialize, Deserialize)]
|
|
15
|
-
#[allow(non_snake_case)]
|
|
16
|
-
pub struct IMetadata<'a> {
|
|
17
|
-
pub appId: Str,
|
|
18
|
-
pub appShortcutName: Str,
|
|
19
|
-
pub appDisplayName: Str,
|
|
20
|
-
pub authorId: Str,
|
|
21
|
-
pub description: Str,
|
|
22
|
-
pub repo: AppRepo,
|
|
23
|
-
#[serde[borrow]]
|
|
24
|
-
pub platform: IPlatform<'a>,
|
|
25
|
-
#[serde[borrow]]
|
|
26
|
-
pub finder: FileFinder<'a>,
|
|
27
|
-
pub site: Option<Str>,
|
|
28
|
-
pub source: Option<Str>,
|
|
29
|
-
pub redistributed: Option<Str>,
|
|
30
|
-
pub license_or_tos: Option<Str>,
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
impl<'a> IMetadata<'a> {
|
|
34
|
-
#[allow(non_snake_case)]
|
|
35
|
-
pub fn new(
|
|
36
|
-
appId: Str,
|
|
37
|
-
appShortcutName: Str,
|
|
38
|
-
appDisplayName: Str,
|
|
39
|
-
authorId: Str,
|
|
40
|
-
description: Str,
|
|
41
|
-
repo: AppRepo,
|
|
42
|
-
platform: IPlatform<'a>,
|
|
43
|
-
) -> Config {
|
|
44
|
-
let mut config = Config::new();
|
|
45
|
-
|
|
46
|
-
config.insert(
|
|
47
|
-
appId.clone(),
|
|
48
|
-
Self {
|
|
49
|
-
appId,
|
|
50
|
-
appShortcutName,
|
|
51
|
-
appDisplayName,
|
|
52
|
-
authorId,
|
|
53
|
-
description,
|
|
54
|
-
repo,
|
|
55
|
-
platform,
|
|
56
|
-
finder: FileFinder::new(),
|
|
57
|
-
site: None,
|
|
58
|
-
source: None,
|
|
59
|
-
redistributed: None,
|
|
60
|
-
license_or_tos: None
|
|
61
|
-
},
|
|
62
|
-
);
|
|
63
|
-
|
|
64
|
-
config
|
|
65
|
-
}
|
|
66
|
-
}
|
|
1
|
+
use serde::{Deserialize, Serialize};
|
|
2
|
+
use std::collections::HashMap;
|
|
3
|
+
|
|
4
|
+
use ahqstore_types::AppRepo;
|
|
5
|
+
|
|
6
|
+
pub type Str = String;
|
|
7
|
+
pub type Config<'a> = HashMap<String, IMetadata<'a>>;
|
|
8
|
+
|
|
9
|
+
mod file_sorter;
|
|
10
|
+
mod platforms;
|
|
11
|
+
pub use file_sorter::*;
|
|
12
|
+
pub use platforms::*;
|
|
13
|
+
|
|
14
|
+
#[derive(Debug, Serialize, Deserialize)]
|
|
15
|
+
#[allow(non_snake_case)]
|
|
16
|
+
pub struct IMetadata<'a> {
|
|
17
|
+
pub appId: Str,
|
|
18
|
+
pub appShortcutName: Str,
|
|
19
|
+
pub appDisplayName: Str,
|
|
20
|
+
pub authorId: Str,
|
|
21
|
+
pub description: Str,
|
|
22
|
+
pub repo: AppRepo,
|
|
23
|
+
#[serde[borrow]]
|
|
24
|
+
pub platform: IPlatform<'a>,
|
|
25
|
+
#[serde[borrow]]
|
|
26
|
+
pub finder: FileFinder<'a>,
|
|
27
|
+
pub site: Option<Str>,
|
|
28
|
+
pub source: Option<Str>,
|
|
29
|
+
pub redistributed: Option<Str>,
|
|
30
|
+
pub license_or_tos: Option<Str>,
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
impl<'a> IMetadata<'a> {
|
|
34
|
+
#[allow(non_snake_case)]
|
|
35
|
+
pub fn new(
|
|
36
|
+
appId: Str,
|
|
37
|
+
appShortcutName: Str,
|
|
38
|
+
appDisplayName: Str,
|
|
39
|
+
authorId: Str,
|
|
40
|
+
description: Str,
|
|
41
|
+
repo: AppRepo,
|
|
42
|
+
platform: IPlatform<'a>,
|
|
43
|
+
) -> Config {
|
|
44
|
+
let mut config = Config::new();
|
|
45
|
+
|
|
46
|
+
config.insert(
|
|
47
|
+
appId.clone(),
|
|
48
|
+
Self {
|
|
49
|
+
appId,
|
|
50
|
+
appShortcutName,
|
|
51
|
+
appDisplayName,
|
|
52
|
+
authorId,
|
|
53
|
+
description,
|
|
54
|
+
repo,
|
|
55
|
+
platform,
|
|
56
|
+
finder: FileFinder::new(),
|
|
57
|
+
site: None,
|
|
58
|
+
source: None,
|
|
59
|
+
redistributed: None,
|
|
60
|
+
license_or_tos: None
|
|
61
|
+
},
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
config
|
|
65
|
+
}
|
|
66
|
+
}
|
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
use ahqstore_types::InstallerFormat;
|
|
2
|
-
use serde::{Deserialize, Serialize};
|
|
3
|
-
|
|
4
|
-
#[derive(Debug, Serialize, Deserialize)]
|
|
5
|
-
#[allow(non_snake_case)]
|
|
6
|
-
pub struct IPlatform<'a> {
|
|
7
|
-
pub winAmd64Platform: Option<InstallerFormat>,
|
|
8
|
-
pub winArm64Platform: Option<InstallerFormat>,
|
|
9
|
-
pub linuxAmd64Platform: Option<InstallerFormat>,
|
|
10
|
-
pub linuxArm64Platform: Option<InstallerFormat>,
|
|
11
|
-
pub linuxArm32Platform: Option<InstallerFormat>,
|
|
12
|
-
pub androidUniversal: Option<InstallerFormat>,
|
|
13
|
-
#[serde(borrow)]
|
|
14
|
-
pub winAmd64Options: Option<IOWin<'a>>,
|
|
15
|
-
#[serde(borrow)]
|
|
16
|
-
pub winArm64Options: Option<IOWin<'a>>,
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
#[derive(Debug, Serialize, Deserialize, Clone)]
|
|
20
|
-
pub struct IOWin<'a> {
|
|
21
|
-
#[serde(borrow)]
|
|
22
|
-
pub zip_file_exec: Option<&'a str>,
|
|
23
|
-
#[serde(borrow)]
|
|
24
|
-
pub exe_installer_args: Option<Vec<&'a str>>,
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
impl<'a> IPlatform<'a> {
|
|
28
|
-
pub fn new() -> Self {
|
|
29
|
-
let io_win = IOWin {
|
|
30
|
-
exe_installer_args: Some(vec![]),
|
|
31
|
-
zip_file_exec: None,
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
Self {
|
|
35
|
-
winAmd64Platform: None,
|
|
36
|
-
winArm64Platform: None,
|
|
37
|
-
linuxAmd64Platform: None,
|
|
38
|
-
linuxArm32Platform: None,
|
|
39
|
-
linuxArm64Platform: None,
|
|
40
|
-
androidUniversal: None,
|
|
41
|
-
winAmd64Options: Some(io_win.clone()),
|
|
42
|
-
winArm64Options: Some(io_win)
|
|
43
|
-
}
|
|
44
|
-
}
|
|
1
|
+
use ahqstore_types::InstallerFormat;
|
|
2
|
+
use serde::{Deserialize, Serialize};
|
|
3
|
+
|
|
4
|
+
#[derive(Debug, Serialize, Deserialize)]
|
|
5
|
+
#[allow(non_snake_case)]
|
|
6
|
+
pub struct IPlatform<'a> {
|
|
7
|
+
pub winAmd64Platform: Option<InstallerFormat>,
|
|
8
|
+
pub winArm64Platform: Option<InstallerFormat>,
|
|
9
|
+
pub linuxAmd64Platform: Option<InstallerFormat>,
|
|
10
|
+
pub linuxArm64Platform: Option<InstallerFormat>,
|
|
11
|
+
pub linuxArm32Platform: Option<InstallerFormat>,
|
|
12
|
+
pub androidUniversal: Option<InstallerFormat>,
|
|
13
|
+
#[serde(borrow)]
|
|
14
|
+
pub winAmd64Options: Option<IOWin<'a>>,
|
|
15
|
+
#[serde(borrow)]
|
|
16
|
+
pub winArm64Options: Option<IOWin<'a>>,
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
#[derive(Debug, Serialize, Deserialize, Clone)]
|
|
20
|
+
pub struct IOWin<'a> {
|
|
21
|
+
#[serde(borrow)]
|
|
22
|
+
pub zip_file_exec: Option<&'a str>,
|
|
23
|
+
#[serde(borrow)]
|
|
24
|
+
pub exe_installer_args: Option<Vec<&'a str>>,
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
impl<'a> IPlatform<'a> {
|
|
28
|
+
pub fn new() -> Self {
|
|
29
|
+
let io_win = IOWin {
|
|
30
|
+
exe_installer_args: Some(vec![]),
|
|
31
|
+
zip_file_exec: None,
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
Self {
|
|
35
|
+
winAmd64Platform: None,
|
|
36
|
+
winArm64Platform: None,
|
|
37
|
+
linuxAmd64Platform: None,
|
|
38
|
+
linuxArm32Platform: None,
|
|
39
|
+
linuxArm64Platform: None,
|
|
40
|
+
androidUniversal: None,
|
|
41
|
+
winAmd64Options: Some(io_win.clone()),
|
|
42
|
+
winArm64Options: Some(io_win)
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
45
|
}
|
package/src/lib.rs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
#[
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
#[napi]
|
|
10
|
-
pub fn node_entrypoint(args: Vec<String>, gh: bool) {
|
|
11
|
-
app::start(args, gh);
|
|
12
|
-
}
|
|
1
|
+
mod app;
|
|
2
|
+
|
|
3
|
+
pub use app::shared;
|
|
4
|
+
|
|
5
|
+
#[cfg(feature = "node")]
|
|
6
|
+
#[macro_use]
|
|
7
|
+
extern crate napi_derive;
|
|
8
|
+
|
|
9
|
+
#[cfg_attr(feature = "node", napi)]
|
|
10
|
+
pub fn node_entrypoint(args: Vec<String>, gh: bool) {
|
|
11
|
+
app::start(args, gh);
|
|
12
|
+
}
|
package/src/main.rs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
use std::env::args;
|
|
2
|
-
|
|
3
|
-
mod app;
|
|
4
|
-
|
|
5
|
-
fn main() {
|
|
6
|
-
let mut arg = args().collect::<Vec<String>>();
|
|
7
|
-
arg.remove(0);
|
|
8
|
-
|
|
9
|
-
app::start(arg, std::env::var("GH_ACTION").is_ok());
|
|
10
|
-
}
|
|
1
|
+
use std::env::args;
|
|
2
|
+
|
|
3
|
+
mod app;
|
|
4
|
+
|
|
5
|
+
fn main() {
|
|
6
|
+
let mut arg = args().collect::<Vec<String>>();
|
|
7
|
+
arg.remove(0);
|
|
8
|
+
|
|
9
|
+
app::start(arg, std::env::var("GH_ACTION").is_ok());
|
|
10
|
+
}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
# AHQ Store Cli
|
|
2
|
-
|
|
3
|
-
Edita el archivo config.json
|
|
4
|
-
|
|
5
|
-
El esquema se muestra a continuación
|
|
6
|
-
|
|
7
|
-
## config.json
|
|
8
|
-
|
|
9
|
-
```ts
|
|
10
|
-
type Platform =
|
|
11
|
-
// Plataformas Windows + Soporte para Actualizador y Desinstalador
|
|
12
|
-
| "WindowsZip"
|
|
13
|
-
| "WindowsInstallerMsi"
|
|
14
|
-
|
|
15
|
-
// No Implementado
|
|
16
|
-
| "WindowsInstallerExe"
|
|
17
|
-
| "WindowsUWPMsix"
|
|
18
|
-
|
|
19
|
-
// Plataforma Linux + Soporte para Actualizador y Desinstalador
|
|
20
|
-
| "LinuxAppImage"
|
|
21
|
-
|
|
22
|
-
// Android (En Desarrollo)
|
|
23
|
-
| "AndroidLinuxZip";
|
|
24
|
-
|
|
25
|
-
interface ConfigJSON {
|
|
26
|
-
[key: string]: {
|
|
27
|
-
appId: string; // ID de la aplicación proporcionado por los desarrolladores de AHQ Store
|
|
28
|
-
appInstalledName: string; // Nombre de la entrada en el menú de inicio + acceso directo en el escritorio
|
|
29
|
-
appDisplayName: string; // Nombre de la aplicación
|
|
30
|
-
authorId: string; // Tu ID de usuario
|
|
31
|
-
shortDesc: string; // Descripción corta (máximo 48 palabras)
|
|
32
|
-
description: string; // Descripción de la aplicación en varias líneas
|
|
33
|
-
repo: {
|
|
34
|
-
author: string; // Tu nombre de usuario en GitHub
|
|
35
|
-
repo: string; // URL del repositorio
|
|
36
|
-
};
|
|
37
|
-
finder: {
|
|
38
|
-
[platform: ""]: {
|
|
39
|
-
startsWith?: string; // ¿Con qué debe comenzar la aplicación empaquetada?
|
|
40
|
-
contains?: string; // ¿Qué debe incluir la aplicación empaquetada?
|
|
41
|
-
endsWith?: string; // ¿Con qué debe terminar la aplicación empaquetada?
|
|
42
|
-
};
|
|
43
|
-
};
|
|
44
|
-
platform: {
|
|
45
|
-
// Debe ser "WindowsZip"| "WindowsInstallerMsi" |"WindowsInstallerExe" | "WindowsUWPMsix"
|
|
46
|
-
winAmd64Platform?: Platform; // ¿Qué tipo de binario proporciona tu aplicación a AHQ Store?
|
|
47
|
-
winArm64Platform?: Platform; // <-- Igual que winAmd64Platform -->
|
|
48
|
-
|
|
49
|
-
linuxAmd64Platform?: Platform; // Debe ser LinuxAppImage
|
|
50
|
-
linuxArm64Platform?: Platform; // Debe ser LinuxAppImage
|
|
51
|
-
linuxArm64Platform?: Platform; // Debe ser LinuxAppImage
|
|
52
|
-
linuxArm32Platform?: Platform; // Debe ser LinuxAppImage
|
|
53
|
-
|
|
54
|
-
androidUniversalPlatform?: Platform; // Debe ser AndroidApkZip
|
|
55
|
-
|
|
56
|
-
winAmd64Options?: {
|
|
57
|
-
zip_file_exec?: string; // Exe para enlazar a través de nuestro instalador (WindowsZIP)
|
|
58
|
-
exe_installer_args?: string[]; // Argumentos para ejecutar tu instalador personalizado (WindowsInstallerExe)
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
winArm64Options?: {
|
|
62
|
-
zip_file_exec?: string; // Exe para enlazar a través de nuestro instalador (WindowsZIP)
|
|
63
|
-
exe_installer_args?: string[]; // Argumentos para ejecutar tu instalador personalizado (WindowsInstallerExe)
|
|
64
|
-
};
|
|
65
|
-
};
|
|
66
|
-
site?: string; // Sitio web de tu aplicación
|
|
67
|
-
source?: string; // Sitio web de tu aplicación (que contiene el código fuente)
|
|
68
|
-
redistributed?: string; // No puedes establecer esto
|
|
69
|
-
license_or_tos?: string; // Nombre de la licencia o sitio de los términos de servicio
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
## images/<app-id>/icon.png
|
|
75
|
-
|
|
76
|
-
El icono de tu aplicación que se incluirá en el archivo de metadatos de la aplicación
|
|
77
|
-
|
|
78
|
-
## images/<app-id>/\*
|
|
79
|
-
|
|
80
|
-
Coloca cualquier imagen (hasta 10) que se colocará en el modal de la aplicación en AHQ Store
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
# AHQ Store Cli
|
|
2
|
-
|
|
3
|
-
config.json को संपादित करें
|
|
4
|
-
|
|
5
|
-
नीचे स्कीमा दिखाया गया है
|
|
6
|
-
|
|
7
|
-
## config.json
|
|
8
|
-
|
|
9
|
-
```ts
|
|
10
|
-
type Platform =
|
|
11
|
-
// विंडोज प्लेटफॉर्म + अपडेटर और अनइंस्टॉलर समर्थन
|
|
12
|
-
| "WindowsZip"
|
|
13
|
-
| "WindowsInstallerMsi"
|
|
14
|
-
|
|
15
|
-
// लागू नहीं किया गया
|
|
16
|
-
| "WindowsInstallerExe"
|
|
17
|
-
| "WindowsUWPMsix"
|
|
18
|
-
|
|
19
|
-
// लिनक्स प्लेटफॉर्म + अपडेटर और अनइंस्टॉलर समर्थन
|
|
20
|
-
| "LinuxAppImage"
|
|
21
|
-
|
|
22
|
-
// एंड्रॉइड (विकासाधीन)
|
|
23
|
-
| "AndroidLinuxZip";
|
|
24
|
-
|
|
25
|
-
interface ConfigJSON {
|
|
26
|
-
[key: string]: {
|
|
27
|
-
appId: string; // AHQ स्टोर DEVS द्वारा प्रदान किया गया एप्लिकेशन आईडी
|
|
28
|
-
appInstalledName: string; // ऐप स्टार्ट मेनू एंट्री + डेस्कटॉप शॉर्टकट नाम
|
|
29
|
-
appDisplayName: string; // ऐप डिस्प्ले नाम
|
|
30
|
-
authorId: string; // आपका यूजर आईडी
|
|
31
|
-
shortDesc: string; // संक्षिप्त विवरण (अधिकतम 48 शब्द)
|
|
32
|
-
description: string; // बहु-लाइन ऐप विवरण
|
|
33
|
-
repo: {
|
|
34
|
-
author: string; // आपका GitHub उपयोगकर्ता नाम
|
|
35
|
-
repo: string; // रिपो URL
|
|
36
|
-
};
|
|
37
|
-
finder: {
|
|
38
|
-
[platform: ""]: {
|
|
39
|
-
startsWith?: string; // बंडल किया गया ऐप किससे शुरू होना चाहिए?
|
|
40
|
-
contains?: string; // बंडल किया गया ऐप क्या शामिल होना चाहिए?
|
|
41
|
-
endsWith?: string; // बंडल किया गया ऐप किससे समाप्त होना चाहिए?
|
|
42
|
-
};
|
|
43
|
-
};
|
|
44
|
-
platform: {
|
|
45
|
-
// "WindowsZip"| "WindowsInstallerMsi" |"WindowsInstallerExe" | "WindowsUWPMsix" होना चाहिए
|
|
46
|
-
winAmd64Platform?: Platform; // आपका ऐप AHQ स्टोर को किस प्रकार का बाइनरी प्रदान करता है
|
|
47
|
-
winArm64Platform?: Platform; // <-- winAmd64Platform के समान -->
|
|
48
|
-
|
|
49
|
-
linuxAmd64Platform?: Platform; // LinuxAppImage होना चाहिए
|
|
50
|
-
linuxArm64Platform?: Platform; // LinuxAppImage होना चाहिए
|
|
51
|
-
linuxArm64Platform?: Platform; // LinuxAppImage होना चाहिए
|
|
52
|
-
linuxArm32Platform?: Platform; // LinuxAppImage होना चाहिए
|
|
53
|
-
|
|
54
|
-
androidUniversalPlatform?: Platform; // AndroidApkZip होना चाहिए
|
|
55
|
-
|
|
56
|
-
winAmd64Options?: {
|
|
57
|
-
zip_file_exec?: string; // हमारे इंस्टॉलर के माध्यम से लिंक करने के लिए Exe (WindowsZIP)
|
|
58
|
-
exe_installer_args?: string[]; // आपके कस्टम इंस्टॉलर को चलाने के लिए Args (WindowsInstallerExe)
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
winArm64Options?: {
|
|
62
|
-
zip_file_exec?: string; // हमारे इंस्टॉलर के माध्यम से लिंक करने के लिए Exe (WindowsZIP)
|
|
63
|
-
exe_installer_args?: string[]; // आपके कस्टम इंस्टॉलर को चलाने के लिए Args (WindowsInstallerExe)
|
|
64
|
-
};
|
|
65
|
-
};
|
|
66
|
-
site?: string; // आपके ऐप की वेबसाइट
|
|
67
|
-
source?: string; // आपके ऐप की वेबसाइट (जिसमें स्रोत कोड शामिल है)
|
|
68
|
-
redistributed?: string; // आप इसे सेट नहीं कर सकते
|
|
69
|
-
license_or_tos?: string; // लाइसेंस का नाम या TOS की साइट
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
## images/<app-id>/icon.png
|
|
75
|
-
|
|
76
|
-
आपका एप्लिकेशन आइकन जो ऐप मेटाडेटा फ़ाइल में बंडल किया जाएगा
|
|
77
|
-
|
|
78
|
-
## images/<app-id>/\*
|
|
79
|
-
|
|
80
|
-
कोई भी छवि (अधिकतम 10) रखें जो AHQ स्टोर में ऐप मोडल में रखी जाएगी
|