Skip to content

Commit 11c26e1

Browse files
authored
fix(cli): parse svelte-kit templates correctly, closes #270 (#271)
1 parent a4fbff2 commit 11c26e1

2 files changed

Lines changed: 59 additions & 54 deletions

File tree

.changes/svelte-kit.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"create-tauri-app": "patch"
3+
---
4+
5+
Fix paring `svelte-kit` and `svelte-kit-ts` from command line.

packages/cli/src/template.rs

Lines changed: 54 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,60 @@ impl Default for Template {
4343
}
4444
}
4545

46+
impl Display for Template {
47+
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
48+
match self {
49+
Template::Vanilla => write!(f, "vanilla"),
50+
Template::VanillaTs => write!(f, "vanilla-ts"),
51+
Template::Angular => write!(f, "angular"),
52+
Template::Vue => write!(f, "vue"),
53+
Template::VueTs => write!(f, "vue-ts"),
54+
Template::Svelte => write!(f, "svelte"),
55+
Template::SvelteTs => write!(f, "svelte-ts"),
56+
Template::React => write!(f, "react"),
57+
Template::ReactTs => write!(f, "react-ts"),
58+
Template::Solid => write!(f, "solid"),
59+
Template::SolidTs => write!(f, "solid-ts"),
60+
Template::Yew => write!(f, "yew"),
61+
Template::Next => write!(f, "next"),
62+
Template::NextTs => write!(f, "next-ts"),
63+
Template::Preact => write!(f, "preact"),
64+
Template::PreactTs => write!(f, "preact-ts"),
65+
Template::ClojureScript => write!(f, "clojurescript"),
66+
Template::SvelteKit => write!(f, "svelte-kit"),
67+
Template::SvelteKitTs => write!(f, "svelte-kit-ts"),
68+
}
69+
}
70+
}
71+
72+
impl FromStr for Template {
73+
type Err = String;
74+
fn from_str(s: &str) -> Result<Self, Self::Err> {
75+
match s {
76+
"vanilla" => Ok(Template::Vanilla),
77+
"angular" => Ok(Template::Angular),
78+
"vue" => Ok(Template::Vue),
79+
"vue-ts" => Ok(Template::VueTs),
80+
"svelte" => Ok(Template::Svelte),
81+
"svelte-ts" => Ok(Template::SvelteTs),
82+
"react" => Ok(Template::React),
83+
"react-ts" => Ok(Template::ReactTs),
84+
"solid" => Ok(Template::Solid),
85+
"solid-ts" => Ok(Template::SolidTs),
86+
"yew" => Ok(Template::Yew),
87+
"next" => Ok(Template::Next),
88+
"next-ts" => Ok(Template::NextTs),
89+
"preact" => Ok(Template::Preact),
90+
"preact-ts" => Ok(Template::PreactTs),
91+
"vanilla-ts" => Ok(Template::VanillaTs),
92+
"clojurescript" => Ok(Template::ClojureScript),
93+
"svelte-kit" => Ok(Template::SvelteKit),
94+
"svelte-kit-ts" => Ok(Template::SvelteKitTs),
95+
_ => Err("Invalid template".to_string()),
96+
}
97+
}
98+
}
99+
46100
impl<'a> Template {
47101
pub const ALL: &'a [Template] = &[
48102
Template::Vanilla,
@@ -244,60 +298,6 @@ impl<'a> Template {
244298
}
245299
}
246300

247-
impl Display for Template {
248-
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
249-
match self {
250-
Template::Vanilla => write!(f, "vanilla"),
251-
Template::VanillaTs => write!(f, "vanilla-ts"),
252-
Template::Angular => write!(f, "angular"),
253-
Template::Vue => write!(f, "vue"),
254-
Template::VueTs => write!(f, "vue-ts"),
255-
Template::Svelte => write!(f, "svelte"),
256-
Template::SvelteTs => write!(f, "svelte-ts"),
257-
Template::React => write!(f, "react"),
258-
Template::ReactTs => write!(f, "react-ts"),
259-
Template::Solid => write!(f, "solid"),
260-
Template::SolidTs => write!(f, "solid-ts"),
261-
Template::Yew => write!(f, "yew"),
262-
Template::Next => write!(f, "next"),
263-
Template::NextTs => write!(f, "next-ts"),
264-
Template::Preact => write!(f, "preact"),
265-
Template::PreactTs => write!(f, "preact-ts"),
266-
Template::ClojureScript => write!(f, "clojurescript"),
267-
Template::SvelteKit => write!(f, "svelte-kit"),
268-
Template::SvelteKitTs => write!(f, "svelte-kit-ts"),
269-
}
270-
}
271-
}
272-
273-
impl FromStr for Template {
274-
type Err = String;
275-
fn from_str(s: &str) -> Result<Self, Self::Err> {
276-
match s {
277-
"vanilla" => Ok(Template::Vanilla),
278-
"angular" => Ok(Template::Angular),
279-
"vue" => Ok(Template::Vue),
280-
"vue-ts" => Ok(Template::VueTs),
281-
"svelte" => Ok(Template::Svelte),
282-
"svelte-ts" => Ok(Template::SvelteTs),
283-
"react" => Ok(Template::React),
284-
"react-ts" => Ok(Template::ReactTs),
285-
"solid" => Ok(Template::Solid),
286-
"solid-ts" => Ok(Template::SolidTs),
287-
"yew" => Ok(Template::Yew),
288-
"next" => Ok(Template::Next),
289-
"next-ts" => Ok(Template::NextTs),
290-
"preact" => Ok(Template::Preact),
291-
"preact-ts" => Ok(Template::PreactTs),
292-
"vanilla-ts" => Ok(Template::VanillaTs),
293-
"clojurescript" => Ok(Template::ClojureScript),
294-
"svelte-kit" => Ok(Template::Svelte),
295-
"svelte-kit-ts" => Ok(Template::SvelteTs),
296-
_ => Err("Invalid template".to_string()),
297-
}
298-
}
299-
}
300-
301301
#[derive(Default, Clone)]
302302
struct Manifest<'a> {
303303
before_dev_command: Option<&'a str>,

0 commit comments

Comments
 (0)