ripple 0.3.27 → 0.3.28
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/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# ripple
|
|
2
2
|
|
|
3
|
+
## 0.3.28
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies
|
|
8
|
+
[[`e4b5555`](https://github.com/Ripple-TS/ripple/commit/e4b5555fb5b1651a2bf1bf232565c7e0e40213b8),
|
|
9
|
+
[`e4b5555`](https://github.com/Ripple-TS/ripple/commit/e4b5555fb5b1651a2bf1bf232565c7e0e40213b8)]:
|
|
10
|
+
- @tsrx/ripple@0.0.10
|
|
11
|
+
- ripple@0.3.28
|
|
12
|
+
|
|
3
13
|
## 0.3.27
|
|
4
14
|
|
|
5
15
|
### Patch Changes
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Ripple is an elegant TypeScript UI framework",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": "Dominic Gannaway",
|
|
6
|
-
"version": "0.3.
|
|
6
|
+
"version": "0.3.28",
|
|
7
7
|
"type": "module",
|
|
8
8
|
"module": "src/runtime/index-client.js",
|
|
9
9
|
"main": "src/runtime/index-client.js",
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
"esm-env": "^1.2.2",
|
|
77
77
|
"@types/estree": "^1.0.8",
|
|
78
78
|
"@types/estree-jsx": "^1.0.5",
|
|
79
|
-
"@tsrx/ripple": "0.0.
|
|
79
|
+
"@tsrx/ripple": "0.0.10"
|
|
80
80
|
},
|
|
81
81
|
"devDependencies": {
|
|
82
82
|
"@types/node": "^24.3.0",
|
|
@@ -84,9 +84,9 @@
|
|
|
84
84
|
"typescript": "^5.9.3",
|
|
85
85
|
"@volar/language-core": "~2.4.28",
|
|
86
86
|
"vscode-languageserver-types": "^3.17.5",
|
|
87
|
-
"@tsrx/core": "0.0.
|
|
87
|
+
"@tsrx/core": "0.0.8"
|
|
88
88
|
},
|
|
89
89
|
"peerDependencies": {
|
|
90
|
-
"ripple": "0.3.
|
|
90
|
+
"ripple": "0.3.28"
|
|
91
91
|
}
|
|
92
92
|
}
|
|
@@ -228,6 +228,30 @@ describe('basic client > errors', () => {
|
|
|
228
228
|
}).toThrow('Do...while loops are not supported in components.');
|
|
229
229
|
});
|
|
230
230
|
|
|
231
|
+
it('should allow JSX fragments in TSRX templates as <tsx> shorthand', () => {
|
|
232
|
+
const code = `
|
|
233
|
+
export default component SafeProfile() {
|
|
234
|
+
<b><>{111}</></b>
|
|
235
|
+
}
|
|
236
|
+
`;
|
|
237
|
+
|
|
238
|
+
expect(() => {
|
|
239
|
+
compile(code, 'test.tsrx');
|
|
240
|
+
}).not.toThrow();
|
|
241
|
+
});
|
|
242
|
+
|
|
243
|
+
it('should allow JSX fragments inside tsx blocks', () => {
|
|
244
|
+
const code = `
|
|
245
|
+
export default component SafeProfile() {
|
|
246
|
+
<tsx><>{111}</></tsx>
|
|
247
|
+
}
|
|
248
|
+
`;
|
|
249
|
+
|
|
250
|
+
expect(() => {
|
|
251
|
+
compile(code, 'test.tsrx');
|
|
252
|
+
}).not.toThrow();
|
|
253
|
+
});
|
|
254
|
+
|
|
231
255
|
it('should not throw error for while loop inside a function within a component', () => {
|
|
232
256
|
const code = `
|
|
233
257
|
export default component App() {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { flushSync, track } from 'ripple';
|
|
2
2
|
|
|
3
3
|
describe('tsx expression', () => {
|
|
4
|
-
it('renders a basic
|
|
4
|
+
it('renders a basic fragment shorthand element', () => {
|
|
5
5
|
component App() {
|
|
6
6
|
const el = <tsx><div>hello world</div></tsx>;
|
|
7
7
|
{el}
|
|
@@ -242,7 +242,7 @@ describe('tsx expression', () => {
|
|
|
242
242
|
expect(div.title).toBe('Item 1');
|
|
243
243
|
});
|
|
244
244
|
|
|
245
|
-
it('renders
|
|
245
|
+
it('renders fragment shorthand passed directly as component prop', () => {
|
|
246
246
|
component Wrapper(&{ content }: { content: any }) {
|
|
247
247
|
<div class="wrapper">{content}</div>
|
|
248
248
|
}
|
|
@@ -257,7 +257,7 @@ describe('tsx expression', () => {
|
|
|
257
257
|
expect(wrapper.textContent).toBe('direct prop');
|
|
258
258
|
});
|
|
259
259
|
|
|
260
|
-
it('renders
|
|
260
|
+
it('renders fragment shorthand passed directly as children prop', () => {
|
|
261
261
|
component Card(&{ title, children }: { title: any; children: any }) {
|
|
262
262
|
<div class="card">
|
|
263
263
|
<h2 class="card-title">{title}</h2>
|