Skip to content

Commit dbf9282

Browse files
committed
feat(vue-jsx-vapor): update deps
1 parent 5f5f5be commit dbf9282

File tree

16 files changed

+4790
-2619
lines changed

16 files changed

+4790
-2619
lines changed

broken-frameworks/non-keyed/vue-jsx-vapor/package-lock.json

-1,551
This file was deleted.

frameworks/keyed/vue-jsx-vapor/package-lock.json

+1,809-981
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
+5-5
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
11
{
22
"name": "js-framework-benchmark-vue-jsx-vapor",
3-
"version": "1.0.0",
3+
"version": "2.0.1",
44
"private": true,
55
"type": "module",
66
"js-framework-benchmark": {
77
"frameworkVersionFromPackage": "vue",
8-
"frameworkHomeURL": "https://vue.js.org/"
8+
"frameworkHomeURL": "https://github.com/vuejs/vue-jsx-vapor"
99
},
1010
"scripts": {
1111
"dev": "vite --force",
1212
"build-prod": "vite build",
1313
"preview": "vite preview"
1414
},
1515
"dependencies": {
16-
"vue": "npm:@vue-vapor/vue@latest"
16+
"vue": "https://pkg.pr.new/vue@5fdc953"
1717
},
1818
"devDependencies": {
19-
"unplugin-vue-jsx-vapor": "^1.0.6",
20-
"vite": "^5.2.9"
19+
"vue-jsx-vapor": "2.0.1",
20+
"vite": "^6.2.1"
2121
}
2222
}

frameworks/keyed/vue-jsx-vapor/src/App.jsx

+22-30
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,46 @@
1-
import { defineComponent, ref, shallowRef } from "vue/vapor";
1+
import { defineComponent, ref, shallowRef, triggerRef } from "vue";
22
import { buildData } from "./data";
33
export default defineComponent({
44
setup() {
55
const selected = ref();
66
const rows = shallowRef([]);
77

8-
function setRows(update = rows.value.slice()) {
9-
rows.value = update;
10-
}
11-
128
function add() {
13-
rows.value = rows.value.concat(buildData(1000));
9+
rows.value.push(...buildData(1000));
10+
triggerRef(rows);
1411
}
1512

1613
function remove(id) {
1714
rows.value.splice(
1815
rows.value.findIndex((d) => d.id === id),
1916
1
2017
);
21-
setRows();
18+
triggerRef(rows);
2219
}
2320

2421
function select(id) {
2522
selected.value = id;
2623
}
2724

2825
function run() {
29-
setRows(buildData());
26+
rows.value = buildData();
3027
selected.value = undefined;
3128
}
3229

3330
function update() {
3431
const _rows = rows.value;
3532
for (let i = 0; i < _rows.length; i += 10) {
36-
_rows[i].label += " !!!";
33+
_rows[i].label.value += " !!!";
3734
}
38-
setRows();
3935
}
4036

4137
function runLots() {
42-
setRows(buildData(10000));
38+
rows.value=buildData(10000);
4339
selected.value = undefined;
4440
}
4541

4642
function clear() {
47-
setRows([]);
43+
rows.value= [];
4844
selected.value = undefined;
4945
}
5046

@@ -55,7 +51,7 @@ export default defineComponent({
5551
const d998 = _rows[998];
5652
_rows[1] = d998;
5753
_rows[998] = d1;
58-
setRows();
54+
triggerRef(rows);
5955
}
6056
}
6157

@@ -64,7 +60,7 @@ export default defineComponent({
6460
<div class="jumbotron">
6561
<div class="row">
6662
<div class="col-md-6">
67-
<h1>Vue.js JSX Vapor (keyed)</h1>
63+
<h1>Vue JSX Vapor (keyed)</h1>
6864
</div>
6965

7066
<div class="col-md-6">
@@ -110,22 +106,18 @@ export default defineComponent({
110106

111107
<table class="table table-hover table-striped test-data">
112108
<tbody>
113-
{rows.value.map((ctx) => {
114-
return (
115-
<tr key={ctx.id} class={{ danger: ctx.id === selected.value }} data-label={ctx.label}>
116-
<td class="col-md-1">{ctx.id}</td>
117-
<td class="col-md-4">
118-
<a onClick={() => select(ctx.id)}>{ctx.label}</a>
119-
</td>
120-
<td class="col-md-1">
121-
<a onClick={() => remove(ctx.id)}>
122-
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
123-
</a>
124-
</td>
125-
<td class="col-md-6"></td>
126-
</tr>
127-
);
128-
})}
109+
<tr v-for={ctx in rows.value} key={ctx.id} class={{ danger: ctx.id === selected.value }} data-label={ctx.label.value}>
110+
<td class="col-md-1">{ctx.id}</td>
111+
<td class="col-md-4">
112+
<a onClick={() => select(ctx.id)}>{ctx.label.value}</a>
113+
</td>
114+
<td class="col-md-1">
115+
<a onClick={() => remove(ctx.id)}>
116+
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
117+
</a>
118+
</td>
119+
<td class="col-md-6"></td>
120+
</tr>
129121
</tbody>
130122
</table>
131123
<span class="preloadicon glyphicon glyphicon-remove" aria-hidden="true"></span>

frameworks/keyed/vue-jsx-vapor/src/data.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { shallowRef } from "vue";
12
let ID = 1;
23

34
function _random(max) {
@@ -64,12 +65,13 @@ export function buildData(count = 1000) {
6465
for (let i = 0; i < count; i++)
6566
data.push({
6667
id: ID++,
67-
label:
68+
label: shallowRef(
6869
adjectives[_random(adjectives.length)] +
6970
" " +
7071
colours[_random(colours.length)] +
7172
" " +
72-
nouns[_random(nouns.length)],
73+
nouns[_random(nouns.length)]
74+
),
7375
});
7476
return data;
7577
}
+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { createVaporApp } from "vue/vapor";
1+
import { createVaporApp } from "vue";
22
import App from "./App";
33

44
createVaporApp(App).mount("#app");

frameworks/keyed/vue-jsx-vapor/vite.config.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
import { defineConfig } from "vite";
2-
import vueJsxVapor from "unplugin-vue-jsx-vapor/vite";
2+
import vueJsxVapor from "vue-jsx-vapor/vite";
33

44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [
7-
vueJsxVapor({
8-
restructure: true,
9-
}),
7+
vueJsxVapor(),
108
],
119
build: {
1210
rollupOptions: {

broken-frameworks/non-keyed/vue-jsx-vapor/index-dev.html renamed to frameworks/non-keyed/vue-jsx-vapor/index-dev.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="UTF-8" />
55
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
66
<link href="/css/currentStyle.css" rel="stylesheet" />
7-
<title>Vue Vapor</title>
7+
<title>Vue JSX Vapor</title>
88
</head>
99
<body>
1010
<div class="container" id="app"></div>

broken-frameworks/non-keyed/vue-jsx-vapor/index.html renamed to frameworks/non-keyed/vue-jsx-vapor/index.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="UTF-8" />
55
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
66
<link href="/css/currentStyle.css" rel="stylesheet" />
7-
<title>Vite App</title>
7+
<title>Vue JSX Vapor</title>
88
</head>
99
<body>
1010
<div id="app"></div>

0 commit comments

Comments
 (0)