create-rsbuild 0.0.0-next-20231108034054 → 0.0.0-next-20231115072032

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 (66) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/dist/index.js +16 -2
  3. package/package.json +2 -2
  4. package/template-lit-js/package.json +14 -0
  5. package/template-lit-js/rsbuild.config.mjs +7 -0
  6. package/template-lit-js/src/index.css +6 -0
  7. package/template-lit-js/src/index.html +5 -0
  8. package/template-lit-js/src/index.js +4 -0
  9. package/template-lit-js/src/my-element.js +34 -0
  10. package/template-lit-ts/package.json +15 -0
  11. package/template-lit-ts/rsbuild.config.ts +7 -0
  12. package/template-lit-ts/src/env.d.ts +1 -0
  13. package/template-lit-ts/src/index.css +6 -0
  14. package/template-lit-ts/src/index.html +5 -0
  15. package/template-lit-ts/src/index.ts +4 -0
  16. package/template-lit-ts/src/my-element.ts +34 -0
  17. package/template-lit-ts/tsconfig.json +13 -0
  18. package/template-react-js/package.json +1 -1
  19. package/template-react-js/src/App.css +26 -0
  20. package/template-react-js/src/App.jsx +6 -16
  21. package/template-react-js/src/index.jsx +0 -1
  22. package/template-react-ts/package.json +1 -1
  23. package/template-react-ts/src/App.css +26 -0
  24. package/template-react-ts/src/App.tsx +6 -16
  25. package/template-react-ts/src/env.d.ts +1 -0
  26. package/template-react-ts/src/index.tsx +0 -1
  27. package/template-svelte-js/package.json +1 -1
  28. package/template-svelte-js/src/App.svelte +21 -26
  29. package/template-svelte-js/src/index.css +6 -0
  30. package/template-svelte-js/src/index.js +1 -2
  31. package/template-svelte-ts/package.json +1 -1
  32. package/template-svelte-ts/src/App.svelte +21 -26
  33. package/template-svelte-ts/src/env.d.ts +2 -0
  34. package/template-svelte-ts/src/index.css +6 -0
  35. package/template-svelte-ts/src/index.ts +1 -2
  36. package/template-vanilla-js/package.json +13 -0
  37. package/template-vanilla-js/rsbuild.config.mjs +3 -0
  38. package/template-vanilla-js/src/index.css +26 -0
  39. package/template-vanilla-js/src/index.js +8 -0
  40. package/template-vanilla-ts/package.json +14 -0
  41. package/template-vanilla-ts/rsbuild.config.ts +3 -0
  42. package/template-vanilla-ts/src/index.css +26 -0
  43. package/template-vanilla-ts/src/index.ts +8 -0
  44. package/template-vanilla-ts/tsconfig.json +13 -0
  45. package/template-vue2-js/package.json +1 -1
  46. package/template-vue2-js/src/App.vue +21 -20
  47. package/template-vue2-js/src/index.css +3 -38
  48. package/template-vue2-js/src/index.js +1 -1
  49. package/template-vue2-ts/package.json +1 -1
  50. package/template-vue2-ts/src/App.vue +20 -21
  51. package/template-vue2-ts/src/env.d.ts +2 -0
  52. package/template-vue2-ts/src/index.css +3 -38
  53. package/template-vue2-ts/src/index.ts +1 -1
  54. package/template-vue3-js/package.json +1 -1
  55. package/template-vue3-js/src/App.vue +21 -22
  56. package/template-vue3-js/src/index.css +3 -38
  57. package/template-vue3-js/src/index.js +1 -1
  58. package/template-vue3-ts/package.json +1 -1
  59. package/template-vue3-ts/src/App.vue +21 -16
  60. package/template-vue3-ts/src/env.d.ts +2 -0
  61. package/template-vue3-ts/src/index.css +3 -38
  62. package/template-vue3-ts/src/index.ts +1 -1
  63. package/template-react-js/src/index.css +0 -41
  64. package/template-react-ts/src/index.css +0 -41
  65. package/template-svelte-js/src/global.css +0 -68
  66. package/template-svelte-ts/src/global.css +0 -68
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "rsbuild-vanilla-ts",
3
+ "private": true,
4
+ "version": "1.0.0",
5
+ "scripts": {
6
+ "dev": "rsbuild dev --open",
7
+ "build": "rsbuild build",
8
+ "preview": "rsbuild preview"
9
+ },
10
+ "devDependencies": {
11
+ "@rsbuild/core": "workspace:*",
12
+ "typescript": "^5.2.2"
13
+ }
14
+ }
@@ -0,0 +1,3 @@
1
+ import { defineConfig } from '@rsbuild/core';
2
+
3
+ export default defineConfig({});
@@ -0,0 +1,26 @@
1
+ body {
2
+ margin: 0;
3
+ color: #fff;
4
+ font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
5
+ background-image: linear-gradient(to bottom, #020917, #101725);
6
+ }
7
+
8
+ .content {
9
+ display: flex;
10
+ min-height: 100vh;
11
+ line-height: 1.1;
12
+ text-align: center;
13
+ flex-direction: column;
14
+ justify-content: center;
15
+ }
16
+
17
+ .content h1 {
18
+ font-size: 3.6rem;
19
+ font-weight: 700;
20
+ }
21
+
22
+ .content p {
23
+ font-size: 1.2rem;
24
+ font-weight: 400;
25
+ opacity: 0.5;
26
+ }
@@ -0,0 +1,8 @@
1
+ import './index.css';
2
+
3
+ document.querySelector('#root')!.innerHTML = `
4
+ <div class="content">
5
+ <h1>Vanilla Rsbuild</h1>
6
+ <p>Start building amazing things with Rsbuild.</p>
7
+ </div>
8
+ `;
@@ -0,0 +1,13 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "lib": ["DOM", "ES2020"],
5
+ "module": "ESNext",
6
+ "strict": true,
7
+ "skipLibCheck": true,
8
+ "isolatedModules": true,
9
+ "resolveJsonModule": true,
10
+ "moduleResolution": "bundler"
11
+ },
12
+ "include": ["src"]
13
+ }
@@ -3,7 +3,7 @@
3
3
  "private": true,
4
4
  "version": "1.0.0",
5
5
  "scripts": {
6
- "dev": "rsbuild dev",
6
+ "dev": "rsbuild dev --open",
7
7
  "build": "rsbuild build",
8
8
  "preview": "rsbuild preview"
9
9
  },
@@ -1,27 +1,28 @@
1
1
  <template>
2
- <div>
3
- <h1>Rsbuild + Vue</h1>
4
-
5
- <div class="card">
6
- <button type="button" @click="count++">count is {{ count }}</button>
7
- <p>
8
- Edit
9
- <code>App.vue</code> to test HMR
10
- </p>
11
- </div>
2
+ <div class="content">
3
+ <h1>Rsbuild with Vue</h1>
4
+ <p>Start building amazing things with Rsbuild.</p>
12
5
  </div>
13
6
  </template>
14
7
 
15
- <script>
16
- export default {
17
- data() {
18
- return { count: 0 };
19
- },
20
- };
21
- </script>
22
-
23
8
  <style scoped>
24
- .card {
25
- padding: 2em;
9
+ .content {
10
+ display: flex;
11
+ min-height: 100vh;
12
+ line-height: 1.1;
13
+ text-align: center;
14
+ flex-direction: column;
15
+ justify-content: center;
16
+ }
17
+
18
+ .content h1 {
19
+ font-size: 3.6rem;
20
+ font-weight: 700;
21
+ }
22
+
23
+ .content p {
24
+ font-size: 1.2rem;
25
+ font-weight: 400;
26
+ opacity: 0.5;
26
27
  }
27
28
  </style>
@@ -1,41 +1,6 @@
1
- :root {
2
- font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
3
- font-size: 16px;
4
- line-height: 24px;
5
- font-weight: 400;
6
- color: #213547;
7
- background-color: #ffffff;
8
- max-width: 1280px;
9
- margin: 0 auto;
10
- padding: 5rem;
11
- text-align: center;
12
- }
13
-
14
1
  body {
15
2
  margin: 0;
16
- min-height: 100vh;
17
- }
18
-
19
- h1 {
20
- font-size: 3.2em;
21
- line-height: 1.1;
22
- }
23
-
24
- button {
25
- border-radius: 8px;
26
- border: 1px solid transparent;
27
- padding: 0.6em 1.2em;
28
- font-size: 1em;
29
- font-weight: 500;
30
- font-family: inherit;
31
- background-color: #f9f9f9;
32
- cursor: pointer;
33
- transition: border-color 0.25s;
34
- }
35
- button:hover {
36
- border-color: #646cff;
37
- }
38
- button:focus,
39
- button:focus-visible {
40
- outline: 4px auto -webkit-focus-ring-color;
3
+ color: #fff;
4
+ font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
5
+ background-image: linear-gradient(to bottom, #020917, #101725);
41
6
  }
@@ -1,5 +1,5 @@
1
- import Vue from 'vue';
2
1
  import './index.css';
2
+ import Vue from 'vue';
3
3
  import App from './App.vue';
4
4
 
5
5
  new Vue({
@@ -3,7 +3,7 @@
3
3
  "private": true,
4
4
  "version": "1.0.0",
5
5
  "scripts": {
6
- "dev": "rsbuild dev",
6
+ "dev": "rsbuild dev --open",
7
7
  "build": "rsbuild build",
8
8
  "preview": "rsbuild preview"
9
9
  },
@@ -1,29 +1,28 @@
1
1
  <template>
2
- <div>
3
- <h1>Rsbuild + Vue</h1>
4
-
5
- <div class="card">
6
- <button type="button" @click="count++">count is {{ count }}</button>
7
- <p>
8
- Edit
9
- <code>App.vue</code> to test HMR
10
- </p>
11
- </div>
2
+ <div class="content">
3
+ <h1>Rsbuild with Vue</h1>
4
+ <p>Start building amazing things with Rsbuild.</p>
12
5
  </div>
13
6
  </template>
14
7
 
15
- <script lang="ts">
16
- import { defineComponent } from 'vue';
8
+ <style scoped>
9
+ .content {
10
+ display: flex;
11
+ min-height: 100vh;
12
+ line-height: 1.1;
13
+ text-align: center;
14
+ flex-direction: column;
15
+ justify-content: center;
16
+ }
17
17
 
18
- export default defineComponent({
19
- data() {
20
- return { count: 0 };
21
- },
22
- });
23
- </script>
18
+ .content h1 {
19
+ font-size: 3.6rem;
20
+ font-weight: 700;
21
+ }
24
22
 
25
- <style scoped>
26
- .card {
27
- padding: 2em;
23
+ .content p {
24
+ font-size: 1.2rem;
25
+ font-weight: 400;
26
+ opacity: 0.5;
28
27
  }
29
28
  </style>
@@ -1,3 +1,5 @@
1
+ /// <reference types="@rsbuild/core/types" />
2
+
1
3
  declare module '*.vue' {
2
4
  import Vue from 'vue';
3
5
 
@@ -1,41 +1,6 @@
1
- :root {
2
- font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
3
- font-size: 16px;
4
- line-height: 24px;
5
- font-weight: 400;
6
- color: #213547;
7
- background-color: #ffffff;
8
- max-width: 1280px;
9
- margin: 0 auto;
10
- padding: 5rem;
11
- text-align: center;
12
- }
13
-
14
1
  body {
15
2
  margin: 0;
16
- min-height: 100vh;
17
- }
18
-
19
- h1 {
20
- font-size: 3.2em;
21
- line-height: 1.1;
22
- }
23
-
24
- button {
25
- border-radius: 8px;
26
- border: 1px solid transparent;
27
- padding: 0.6em 1.2em;
28
- font-size: 1em;
29
- font-weight: 500;
30
- font-family: inherit;
31
- background-color: #f9f9f9;
32
- cursor: pointer;
33
- transition: border-color 0.25s;
34
- }
35
- button:hover {
36
- border-color: #646cff;
37
- }
38
- button:focus,
39
- button:focus-visible {
40
- outline: 4px auto -webkit-focus-ring-color;
3
+ color: #fff;
4
+ font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
5
+ background-image: linear-gradient(to bottom, #020917, #101725);
41
6
  }
@@ -1,5 +1,5 @@
1
- import Vue from 'vue';
2
1
  import './index.css';
2
+ import Vue from 'vue';
3
3
  import App from './App.vue';
4
4
 
5
5
  new Vue({
@@ -3,7 +3,7 @@
3
3
  "private": true,
4
4
  "version": "1.0.0",
5
5
  "scripts": {
6
- "dev": "rsbuild dev",
6
+ "dev": "rsbuild dev --open",
7
7
  "build": "rsbuild build",
8
8
  "preview": "rsbuild preview"
9
9
  },
@@ -1,29 +1,28 @@
1
- <script setup>
2
- import { ref } from 'vue';
3
-
4
- defineProps({
5
- msg: {
6
- type: String,
7
- },
8
- });
9
-
10
- const count = ref(0);
11
- </script>
12
-
13
1
  <template>
14
- <h1>Rsbuild + Vue</h1>
15
-
16
- <div class="card">
17
- <button type="button" @click="count++">count is {{ count }}</button>
18
- <p>
19
- Edit
20
- <code>App.vue</code> to test HMR
21
- </p>
2
+ <div class="content">
3
+ <h1>Rsbuild with Vue</h1>
4
+ <p>Start building amazing things with Rsbuild.</p>
22
5
  </div>
23
6
  </template>
24
7
 
25
8
  <style scoped>
26
- .card {
27
- padding: 2em;
9
+ .content {
10
+ display: flex;
11
+ min-height: 100vh;
12
+ line-height: 1.1;
13
+ text-align: center;
14
+ flex-direction: column;
15
+ justify-content: center;
16
+ }
17
+
18
+ .content h1 {
19
+ font-size: 3.6rem;
20
+ font-weight: 700;
21
+ }
22
+
23
+ .content p {
24
+ font-size: 1.2rem;
25
+ font-weight: 400;
26
+ opacity: 0.5;
28
27
  }
29
28
  </style>
@@ -1,41 +1,6 @@
1
- :root {
2
- font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
3
- font-size: 16px;
4
- line-height: 24px;
5
- font-weight: 400;
6
- color: #213547;
7
- background-color: #ffffff;
8
- max-width: 1280px;
9
- margin: 0 auto;
10
- padding: 5rem;
11
- text-align: center;
12
- }
13
-
14
1
  body {
15
2
  margin: 0;
16
- min-height: 100vh;
17
- }
18
-
19
- h1 {
20
- font-size: 3.2em;
21
- line-height: 1.1;
22
- }
23
-
24
- button {
25
- border-radius: 8px;
26
- border: 1px solid transparent;
27
- padding: 0.6em 1.2em;
28
- font-size: 1em;
29
- font-weight: 500;
30
- font-family: inherit;
31
- background-color: #f9f9f9;
32
- cursor: pointer;
33
- transition: border-color 0.25s;
34
- }
35
- button:hover {
36
- border-color: #646cff;
37
- }
38
- button:focus,
39
- button:focus-visible {
40
- outline: 4px auto -webkit-focus-ring-color;
3
+ color: #fff;
4
+ font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
5
+ background-image: linear-gradient(to bottom, #020917, #101725);
41
6
  }
@@ -1,5 +1,5 @@
1
- import { createApp } from 'vue';
2
1
  import './index.css';
2
+ import { createApp } from 'vue';
3
3
  import App from './App.vue';
4
4
 
5
5
  createApp(App).mount('#root');
@@ -3,7 +3,7 @@
3
3
  "private": true,
4
4
  "version": "1.0.0",
5
5
  "scripts": {
6
- "dev": "rsbuild dev",
6
+ "dev": "rsbuild dev --open",
7
7
  "build": "rsbuild build",
8
8
  "preview": "rsbuild preview"
9
9
  },
@@ -1,23 +1,28 @@
1
- <script setup lang="ts">
2
- import { ref } from 'vue';
3
-
4
- const count = ref(0);
5
- </script>
6
-
7
1
  <template>
8
- <h1>Rsbuild + Vue</h1>
9
-
10
- <div class="card">
11
- <button type="button" @click="count++">count is {{ count }}</button>
12
- <p>
13
- Edit
14
- <code>App.vue</code> to test HMR
15
- </p>
2
+ <div class="content">
3
+ <h1>Rsbuild with Vue</h1>
4
+ <p>Start building amazing things with Rsbuild.</p>
16
5
  </div>
17
6
  </template>
18
7
 
19
8
  <style scoped>
20
- .card {
21
- padding: 2em;
9
+ .content {
10
+ display: flex;
11
+ min-height: 100vh;
12
+ line-height: 1.1;
13
+ text-align: center;
14
+ flex-direction: column;
15
+ justify-content: center;
16
+ }
17
+
18
+ .content h1 {
19
+ font-size: 3.6rem;
20
+ font-weight: 700;
21
+ }
22
+
23
+ .content p {
24
+ font-size: 1.2rem;
25
+ font-weight: 400;
26
+ opacity: 0.5;
22
27
  }
23
28
  </style>
@@ -1,3 +1,5 @@
1
+ /// <reference types="@rsbuild/core/types" />
2
+
1
3
  declare module '*.vue' {
2
4
  import type { DefineComponent } from 'vue';
3
5
 
@@ -1,41 +1,6 @@
1
- :root {
2
- font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
3
- font-size: 16px;
4
- line-height: 24px;
5
- font-weight: 400;
6
- color: #213547;
7
- background-color: #ffffff;
8
- max-width: 1280px;
9
- margin: 0 auto;
10
- padding: 5rem;
11
- text-align: center;
12
- }
13
-
14
1
  body {
15
2
  margin: 0;
16
- min-height: 100vh;
17
- }
18
-
19
- h1 {
20
- font-size: 3.2em;
21
- line-height: 1.1;
22
- }
23
-
24
- button {
25
- border-radius: 8px;
26
- border: 1px solid transparent;
27
- padding: 0.6em 1.2em;
28
- font-size: 1em;
29
- font-weight: 500;
30
- font-family: inherit;
31
- background-color: #f9f9f9;
32
- cursor: pointer;
33
- transition: border-color 0.25s;
34
- }
35
- button:hover {
36
- border-color: #646cff;
37
- }
38
- button:focus,
39
- button:focus-visible {
40
- outline: 4px auto -webkit-focus-ring-color;
3
+ color: #fff;
4
+ font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
5
+ background-image: linear-gradient(to bottom, #020917, #101725);
41
6
  }
@@ -1,5 +1,5 @@
1
- import { createApp } from 'vue';
2
1
  import './index.css';
2
+ import { createApp } from 'vue';
3
3
  import App from './App.vue';
4
4
 
5
5
  createApp(App).mount('#root');
@@ -1,41 +0,0 @@
1
- :root {
2
- font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
3
- font-size: 16px;
4
- line-height: 24px;
5
- font-weight: 400;
6
- color: #213547;
7
- background-color: #ffffff;
8
- max-width: 1280px;
9
- margin: 0 auto;
10
- padding: 5rem;
11
- text-align: center;
12
- }
13
-
14
- body {
15
- margin: 0;
16
- min-height: 100vh;
17
- }
18
-
19
- h1 {
20
- font-size: 3.2em;
21
- line-height: 1.1;
22
- }
23
-
24
- button {
25
- border-radius: 8px;
26
- border: 1px solid transparent;
27
- padding: 0.6em 1.2em;
28
- font-size: 1em;
29
- font-weight: 500;
30
- font-family: inherit;
31
- background-color: #f9f9f9;
32
- cursor: pointer;
33
- transition: border-color 0.25s;
34
- }
35
- button:hover {
36
- border-color: #646cff;
37
- }
38
- button:focus,
39
- button:focus-visible {
40
- outline: 4px auto -webkit-focus-ring-color;
41
- }
@@ -1,41 +0,0 @@
1
- :root {
2
- font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
3
- font-size: 16px;
4
- line-height: 24px;
5
- font-weight: 400;
6
- color: #213547;
7
- background-color: #ffffff;
8
- max-width: 1280px;
9
- margin: 0 auto;
10
- padding: 5rem;
11
- text-align: center;
12
- }
13
-
14
- body {
15
- margin: 0;
16
- min-height: 100vh;
17
- }
18
-
19
- h1 {
20
- font-size: 3.2em;
21
- line-height: 1.1;
22
- }
23
-
24
- button {
25
- border-radius: 8px;
26
- border: 1px solid transparent;
27
- padding: 0.6em 1.2em;
28
- font-size: 1em;
29
- font-weight: 500;
30
- font-family: inherit;
31
- background-color: #f9f9f9;
32
- cursor: pointer;
33
- transition: border-color 0.25s;
34
- }
35
- button:hover {
36
- border-color: #646cff;
37
- }
38
- button:focus,
39
- button:focus-visible {
40
- outline: 4px auto -webkit-focus-ring-color;
41
- }
@@ -1,68 +0,0 @@
1
- html,
2
- body {
3
- position: relative;
4
- width: 100%;
5
- height: 100%;
6
- }
7
-
8
- body {
9
- color: #333;
10
- margin: 0;
11
- padding: 8px;
12
- box-sizing: border-box;
13
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
14
- Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
15
- }
16
-
17
- a {
18
- color: rgb(0, 100, 200);
19
- text-decoration: none;
20
- }
21
-
22
- a:hover {
23
- text-decoration: underline;
24
- }
25
-
26
- a:visited {
27
- color: rgb(0, 80, 160);
28
- }
29
-
30
- label {
31
- display: block;
32
- }
33
-
34
- input,
35
- button,
36
- select,
37
- textarea {
38
- font-family: inherit;
39
- font-size: inherit;
40
- -webkit-padding: 0.4em 0;
41
- padding: 0.4em;
42
- margin: 0 0 0.5em 0;
43
- box-sizing: border-box;
44
- border: 1px solid #ccc;
45
- border-radius: 2px;
46
- }
47
-
48
- input:disabled {
49
- color: #ccc;
50
- }
51
-
52
- button {
53
- color: #333;
54
- background-color: #f4f4f4;
55
- outline: none;
56
- }
57
-
58
- button:disabled {
59
- color: #999;
60
- }
61
-
62
- button:not(:disabled):active {
63
- background-color: #ddd;
64
- }
65
-
66
- button:focus {
67
- border-color: #666;
68
- }