vasille 2.3.7 → 2.3.9
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/README.md +82 -77
- package/cdn/es2015.js +2 -5
- package/lib/core/core.js +0 -3
- package/lib/node/node.js +2 -2
- package/lib/tsconfig-build.tsbuildinfo +1 -0
- package/lib-node/core/core.js +3 -6
- package/lib-node/core/errors.js +4 -5
- package/lib-node/node/node.js +2 -2
- package/lib-node/tsconfig-build-node.tsbuildinfo +1 -0
- package/package.json +21 -26
- package/types/tsconfig-types.tsbuildinfo +1 -0
- package/LICENSE.md +0 -21
- package/cdn/es5.js +0 -3458
package/README.md
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
# Vasille
|
|
1
|
+
# Vasille
|
|
2
2
|
|
|
3
|
-

|
|
3
|
+

|
|
4
4
|
|
|
5
|
-
`Vasille` core library is frontend solution for `safe`, `
|
|
5
|
+
`Vasille` core library is frontend solution for `safe`, `performant` & `powerful` applications.
|
|
6
6
|
|
|
7
|
-
[](https://gitlab.com/vasille-js/vasille-js)
|
|
8
7
|
[](https://www.npmjs.com/package/vasille)
|
|
9
8
|
|
|
10
9
|
## Table of content
|
|
@@ -12,7 +11,7 @@
|
|
|
12
11
|
* [Installation](#installation)
|
|
13
12
|
* [How to use Vasille](#how-to-use-vasille)
|
|
14
13
|
* [How SAFE is Vasille](#how-safe-is-vasille)
|
|
15
|
-
* [How
|
|
14
|
+
* [How SIMPLE is Vasille](#how-fast-is-vasille)
|
|
16
15
|
* [How POWERFUL is Vasille](#how-powerful-is-vasille)
|
|
17
16
|
* [Best Practices](#best-practices)
|
|
18
17
|
|
|
@@ -32,19 +31,18 @@ npm install vasille-magic --save
|
|
|
32
31
|
There are several modes to use Vasille.
|
|
33
32
|
|
|
34
33
|
### Documentation for beginners (how to create the first project step by step):
|
|
35
|
-
* [`Vasille
|
|
36
|
-
* [`Vasille Less Library` -
|
|
37
|
-
* [`Vasille
|
|
34
|
+
* [`Vasille Magic` - perfect for you - `highest-level`](https://gitlab.com/vasille-js/vasille-js/-/blob/v2/doc/magic/GetStarted.md)
|
|
35
|
+
* [`Vasille Less Library` - no transcriber usage - `high-level`](https://gitlab.com/vasille-js/vasille-js/-/blob/v2/doc/less/GetStarted.md)
|
|
36
|
+
* [`Vasille Core Library` - the hard way - `low-level`](https://gitlab.com/vasille-js/vasille-js/-/blob/v2/doc/core/GetStarted.md)
|
|
38
37
|
|
|
39
38
|
### Full documentation:
|
|
40
|
-
* [`Vasille
|
|
41
|
-
* [`Vasille Less Library API`- write less do more - `high-level`](https://gitlab.com/vasille-js/vasille-
|
|
42
|
-
* [`Vasille
|
|
39
|
+
* [`Vasille Magic API`- compiler writes for you - `highest-level`](https://gitlab.com/vasille-js/vasille-js/-/blob/v2/doc/magic/Vasille-Magic-API.md)
|
|
40
|
+
* [`Vasille Less Library API`- write less do more - `high-level`](https://gitlab.com/vasille-js/vasille-js/-/blob/v2/doc/less/Vasille-Less-Library-API.md)
|
|
41
|
+
* [`Vasille Core Library API`- write anything - `low-level`](https://gitlab.com/vasille-js/vasille-js/-/blob/v2/doc/core/Vasille-Core-Library-API.md)
|
|
43
42
|
|
|
44
43
|
### Getting ready be example
|
|
45
44
|
* [TypeScript Example](https://gitlab.com/vasille-js/learning/vasille-ts-example)
|
|
46
45
|
* [JavaScript Example (Vasille Magic not supported)](https://gitlab.com/vasille-js/learning/vasille-js-example)
|
|
47
|
-
* [Flow.js Example (Vasille Magic not supported)](https://gitlab.com/vasille-js/learning/vasille-flow-js-example)
|
|
48
46
|
|
|
49
47
|
<hr>
|
|
50
48
|
|
|
@@ -52,9 +50,9 @@ There are several modes to use Vasille.
|
|
|
52
50
|
|
|
53
51
|
The safe of your application is ensured by
|
|
54
52
|
* `100%` coverage of `vasille` code by unit tests.
|
|
55
|
-
Each function, each branch
|
|
53
|
+
Each function, each branch is working as designed.
|
|
56
54
|
* `strong typing` makes your javascript/typescript code safe as C++ code.
|
|
57
|
-
All entities of `vasille` core library are
|
|
55
|
+
All entities of `vasille` core library are strongly typed, including:
|
|
58
56
|
* data fields & properties.
|
|
59
57
|
* computed properties (function parameters & result).
|
|
60
58
|
* methods.
|
|
@@ -62,62 +60,82 @@ All entities of `vasille` core library are strong typed, including:
|
|
|
62
60
|
* DOM events & DOM operation (attributing, styling, etc.).
|
|
63
61
|
* slots of component.
|
|
64
62
|
* references to children.
|
|
65
|
-
* What you write is what you get
|
|
63
|
+
* What you write is what you get. There are no hidden operations, you can control everything.
|
|
66
64
|
* No asynchronous code, when the line of code is executed, the DOM and reactive things are already synced.
|
|
67
65
|
|
|
68
|
-
## How
|
|
69
|
-
|
|
70
|
-
The test project was coded using the next frameworks:
|
|
71
|
-
* Angular /
|
|
72
|
-
[Try Initial](https://vasille-js.gitlab.io/project-x32/angular/) /
|
|
73
|
-
[Try Optimized](https://vasille-js.gitlab.io/project-x32-if/angular/).
|
|
74
|
-
* React /
|
|
75
|
-
[Try Initial](https://vasille-js.gitlab.io/project-x32/react/) /
|
|
76
|
-
[Try Optimized](https://vasille-js.gitlab.io/project-x32-if/react/).
|
|
77
|
-
* Vue 2 /
|
|
78
|
-
[Try Initial](https://vasille-js.gitlab.io/project-x32/vue-2/) /
|
|
79
|
-
[Try Optimized](https://vasille-js.gitlab.io/project-x32-if/vue-2/).
|
|
80
|
-
* Vue 3 /
|
|
81
|
-
[Try Initial](https://vasille-js.gitlab.io/project-x32/vue-3/) /
|
|
82
|
-
[Try Optimized](https://vasille-js.gitlab.io/project-x32-if/vue-3/).
|
|
83
|
-
* Svelte /
|
|
84
|
-
[Try Initial](https://vasille-js.gitlab.io/project-x32/svelte/) /
|
|
85
|
-
[Try Optimized](https://vasille-js.gitlab.io/project-x32-if/svelte/).
|
|
86
|
-
* Vasille /
|
|
87
|
-
[Try Initial](https://vasille-js.gitlab.io/project-x32/vasille-js/) /
|
|
88
|
-
[Try Optimized](https://vasille-js.gitlab.io/project-x32-if/vasille-js/).
|
|
89
|
-
|
|
90
|
-
The result of test are demonstrated in figures 1 & 2.
|
|
91
|
-
The test result are measured in FPS (frames per second), which is calculated as `1000 / ft`,
|
|
92
|
-
where `ft` is an average frame time in ms of 20 frames. All values are absolute. Higher is better.
|
|
93
|
-
|
|
94
|
-
The initial version is updating all the page content in each frame.
|
|
95
|
-
The page reactivity connections are very complex, and we get poor results in Angular, React, Vue & Svelte.
|
|
96
|
-
|
|
97
|
-
The optimized version disables the offscreen & non-actual content, which simplifies the
|
|
98
|
-
reactivity complexity in time. Angular & Svelte give result similar to Vasille.
|
|
99
|
-
React & Vue continue to be slow in the beginning of test.
|
|
100
|
-
|
|
101
|
-
**Conclusion:** The reactivity system of Vasille is very fast
|
|
102
|
-
and its complexity is not slowing down the application.
|
|
66
|
+
## How SIMPLE is Vasille
|
|
103
67
|
|
|
104
|
-
|
|
68
|
+
Can you detect the correct order of console logs in the next code snippet:
|
|
69
|
+
```javascript
|
|
70
|
+
import logo from './logo.svg';
|
|
71
|
+
import './App.css';
|
|
72
|
+
import {useEffect} from 'react';
|
|
105
73
|
|
|
106
|
-
|
|
74
|
+
function C1 ({children}) {
|
|
75
|
+
console.log(1);
|
|
107
76
|
|
|
108
|
-
|
|
77
|
+
useEffect(() => {
|
|
78
|
+
console.log(2);
|
|
79
|
+
});
|
|
109
80
|
|
|
110
|
-
|
|
81
|
+
return <div>{children}</div>;
|
|
82
|
+
}
|
|
111
83
|
|
|
112
|
-
|
|
84
|
+
function C2 () {
|
|
85
|
+
console.log(3);
|
|
113
86
|
|
|
114
|
-
|
|
87
|
+
useEffect(() => {
|
|
88
|
+
console.log(4);
|
|
89
|
+
});
|
|
115
90
|
|
|
116
|
-
|
|
91
|
+
return <div></div>;
|
|
92
|
+
}
|
|
117
93
|
|
|
118
|
-
|
|
94
|
+
function App() {
|
|
95
|
+
return <C1>
|
|
96
|
+
<C2/>
|
|
97
|
+
</C1>;
|
|
98
|
+
}
|
|
119
99
|
|
|
120
|
-
|
|
100
|
+
export default App;
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
So let's see the same example using Vasille:
|
|
104
|
+
```typescript jsx
|
|
105
|
+
interface Options extends FragmentOptions {
|
|
106
|
+
slot?: () => void;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
const C1 : VFragment<Options> = ({slot}) => {
|
|
110
|
+
console.log(1);
|
|
111
|
+
|
|
112
|
+
<div>
|
|
113
|
+
<vxSlot model={slot} />
|
|
114
|
+
</div>;
|
|
115
|
+
|
|
116
|
+
console.log(2);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
const C2: VFragment = () => {
|
|
120
|
+
console.log(3);
|
|
121
|
+
|
|
122
|
+
<div></div>;
|
|
123
|
+
|
|
124
|
+
console.log(4);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
const App: VApp = () => {
|
|
128
|
+
<C1>
|
|
129
|
+
<C2/>
|
|
130
|
+
</C1>
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
The `C2` function is sent to `C1` as function,
|
|
135
|
+
so it will be called after `console.log(1)` and before `console.log(2)`.
|
|
136
|
+
No return is present in this case,
|
|
137
|
+
then construction like `for` & `if` can be used in place of `[].map()` and ternary operator.
|
|
138
|
+
The component function is called once, no recalls on component update.
|
|
121
139
|
|
|
122
140
|
## How POWERFUL is Vasille
|
|
123
141
|
|
|
@@ -131,7 +149,7 @@ an effective reactive module and a DOM generation engine based on it.
|
|
|
131
149
|
Reactivity module is used to create a model of data. It can contain self-updating values,
|
|
132
150
|
forward-only shared data. Reactivity of objects/fields can be disabled/enabled manually.
|
|
133
151
|
|
|
134
|
-

|
|
152
|
+

|
|
135
153
|
|
|
136
154
|
* `Destroyable` is an entity which has a custom destructor.
|
|
137
155
|
* `IValue<T>` is a common interface for any value container, with next members:
|
|
@@ -152,7 +170,7 @@ forward-only shared data. Reactivity of objects/fields can be disabled/enabled m
|
|
|
152
170
|
DOM Generation Engine is used to describe a virtual DOM of reactive fragments,
|
|
153
171
|
which will be reflected into a browser DOM and keep up to date it.
|
|
154
172
|
|
|
155
|
-

|
|
173
|
+

|
|
156
174
|
|
|
157
175
|
* `Fragment` describes a virtual DOM node, which has siblings, children, parent & slots.
|
|
158
176
|
* `TextNode` reflects a `Text` node.
|
|
@@ -176,25 +194,14 @@ which will be reflected into a browser DOM and keep up to date it.
|
|
|
176
194
|
### CDN
|
|
177
195
|
|
|
178
196
|
```html
|
|
179
|
-
ES2015 version
|
|
180
197
|
<script src="https://unpkg.com/vasille"></script>
|
|
181
|
-
ES5 Compatible version
|
|
182
|
-
<script src="https://unpkg.com/vasille/cdn/es5.js"></script>
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
### Flow.js typedef
|
|
186
|
-
Add the next lines to `[libs]` section in your `.flowconfig` file
|
|
187
|
-
```
|
|
188
|
-
node_modules/vasille/flow-typed
|
|
189
|
-
node_modules/vasille-less/flow-typed
|
|
190
|
-
node_modules/vasille-magic/flow-typed
|
|
191
198
|
```
|
|
192
199
|
|
|
193
200
|
## Best Practices applicable to Vasille Core Library
|
|
194
201
|
|
|
195
202
|
* [Reactive Object Practice](https://gitlab.com/vasille-js/vasille-practices/-/blob/main/practices/reactive-object.ts)
|
|
196
203
|
* [Application](https://gitlab.com/vasille-js/vasille-practices/-/blob/main/practices/application.ts)
|
|
197
|
-
* [Application in Application](https://gitlab.com/vasille-js/vasille-practices/-/blob/main/practices/application-in-application.ts)
|
|
204
|
+
* [Application in Application (Micro frontends)](https://gitlab.com/vasille-js/vasille-practices/-/blob/main/practices/application-in-application.ts)
|
|
198
205
|
* [Signaling](https://gitlab.com/vasille-js/vasille-practices/-/blob/main/practices/signaling.ts)
|
|
199
206
|
* [Forward Only Data Exchange](https://gitlab.com/vasille-js/vasille-practices/-/blob/main/practices/forward-only.ts)
|
|
200
207
|
* [Absolute, Relative & Auto Values](https://gitlab.com/vasille-js/vasille-practices/-/blob/main/practices/auto-value.ts)
|
|
@@ -206,10 +213,8 @@ node_modules/vasille-magic/flow-typed
|
|
|
206
213
|
|
|
207
214
|
## Questions
|
|
208
215
|
|
|
209
|
-
If you have questions,
|
|
216
|
+
If you have questions, feel free to contact the maintainer of the project:
|
|
210
217
|
|
|
211
|
-
* [Author's Email](mailto:lixcode@
|
|
212
|
-
* [Project Discord Server](https://discord.gg/SNcXNZxz)
|
|
218
|
+
* [Author's Email](mailto:vas.lixcode@gmail.com)
|
|
213
219
|
* [Author's Telegram](https://t.me/lixcode)
|
|
214
|
-
* [Author's VK](https://vk.com/lixcode)
|
|
215
220
|
|
package/cdn/es2015.js
CHANGED
|
@@ -349,9 +349,6 @@ class Reactive extends Destroyable {
|
|
|
349
349
|
}
|
|
350
350
|
runFunctional(f, ...args) {
|
|
351
351
|
stack(this);
|
|
352
|
-
// yet another ts bug
|
|
353
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
354
|
-
// @ts-ignore
|
|
355
352
|
const result = f(...args);
|
|
356
353
|
unstack();
|
|
357
354
|
return result;
|
|
@@ -1480,7 +1477,7 @@ class Fragment extends Reactive {
|
|
|
1480
1477
|
* @param cb {function(Tag, *)} callback
|
|
1481
1478
|
*/
|
|
1482
1479
|
tag(tagName, input, cb
|
|
1483
|
-
// @ts-
|
|
1480
|
+
// @ts-expect-error
|
|
1484
1481
|
) {
|
|
1485
1482
|
const $ = this.$;
|
|
1486
1483
|
const node = new Tag(input);
|
|
@@ -1489,7 +1486,7 @@ class Fragment extends Reactive {
|
|
|
1489
1486
|
node.init();
|
|
1490
1487
|
this.pushNode(node);
|
|
1491
1488
|
node.ready();
|
|
1492
|
-
// @ts-
|
|
1489
|
+
// @ts-expect-error
|
|
1493
1490
|
return node.node;
|
|
1494
1491
|
}
|
|
1495
1492
|
/**
|
package/lib/core/core.js
CHANGED
|
@@ -220,9 +220,6 @@ export class Reactive extends Destroyable {
|
|
|
220
220
|
}
|
|
221
221
|
runFunctional(f, ...args) {
|
|
222
222
|
stack(this);
|
|
223
|
-
// yet another ts bug
|
|
224
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
225
|
-
// @ts-ignore
|
|
226
223
|
const result = f(...args);
|
|
227
224
|
unstack();
|
|
228
225
|
return result;
|
package/lib/node/node.js
CHANGED
|
@@ -163,7 +163,7 @@ export class Fragment extends Reactive {
|
|
|
163
163
|
* @param cb {function(Tag, *)} callback
|
|
164
164
|
*/
|
|
165
165
|
tag(tagName, input, cb
|
|
166
|
-
// @ts-
|
|
166
|
+
// @ts-expect-error
|
|
167
167
|
) {
|
|
168
168
|
const $ = this.$;
|
|
169
169
|
const node = new Tag(input);
|
|
@@ -172,7 +172,7 @@ export class Fragment extends Reactive {
|
|
|
172
172
|
node.init();
|
|
173
173
|
this.pushNode(node);
|
|
174
174
|
node.ready();
|
|
175
|
-
// @ts-
|
|
175
|
+
// @ts-expect-error
|
|
176
176
|
return node.node;
|
|
177
177
|
}
|
|
178
178
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"root":["../src/index.ts","../src/binding/attribute.ts","../src/binding/binding.ts","../src/binding/class.ts","../src/binding/style.ts","../src/core/core.ts","../src/core/destroyable.ts","../src/core/errors.ts","../src/core/ivalue.ts","../src/functional/options.ts","../src/models/array-model.ts","../src/models/listener.ts","../src/models/map-model.ts","../src/models/model.ts","../src/models/object-model.ts","../src/models/set-model.ts","../src/node/app.ts","../src/node/node.ts","../src/node/watch.ts","../src/spec/html.ts","../src/spec/react.ts","../src/spec/svg.ts","../src/value/expression.ts","../src/value/mirror.ts","../src/value/pointer.ts","../src/value/reference.ts","../src/views/array-view.ts","../src/views/base-view.ts","../src/views/map-view.ts","../src/views/object-view.ts","../src/views/repeat-node.ts","../src/views/set-view.ts"],"version":"5.6.2"}
|
package/lib-node/core/core.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Reactive = exports.ReactivePrivate = exports.
|
|
3
|
+
exports.Reactive = exports.ReactivePrivate = exports.current = void 0;
|
|
4
|
+
exports.stack = stack;
|
|
5
|
+
exports.unstack = unstack;
|
|
4
6
|
const destroyable_js_1 = require("./destroyable.js");
|
|
5
7
|
const errors_1 = require("./errors");
|
|
6
8
|
const expression_1 = require("../value/expression");
|
|
@@ -13,11 +15,9 @@ function stack(node) {
|
|
|
13
15
|
currentStack.push(exports.current);
|
|
14
16
|
exports.current = node;
|
|
15
17
|
}
|
|
16
|
-
exports.stack = stack;
|
|
17
18
|
function unstack() {
|
|
18
19
|
exports.current = currentStack.pop();
|
|
19
20
|
}
|
|
20
|
-
exports.unstack = unstack;
|
|
21
21
|
/**
|
|
22
22
|
* Private stuff of a reactive object
|
|
23
23
|
* @class ReactivePrivate
|
|
@@ -226,9 +226,6 @@ class Reactive extends destroyable_js_1.Destroyable {
|
|
|
226
226
|
}
|
|
227
227
|
runFunctional(f, ...args) {
|
|
228
228
|
stack(this);
|
|
229
|
-
// yet another ts bug
|
|
230
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
231
|
-
// @ts-ignore
|
|
232
229
|
const result = f(...args);
|
|
233
230
|
unstack();
|
|
234
231
|
return result;
|
package/lib-node/core/errors.js
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.notOverwritten = notOverwritten;
|
|
4
|
+
exports.internalError = internalError;
|
|
5
|
+
exports.userError = userError;
|
|
6
|
+
exports.wrongBinding = wrongBinding;
|
|
4
7
|
const reportIt = "Report it here: https://gitlab.com/vasille-js/vasille-js/-/issues";
|
|
5
8
|
function notOverwritten() {
|
|
6
9
|
console.error("Vasille-SFP: Internal error", "Must be overwritten", reportIt);
|
|
7
10
|
return "not-overwritten";
|
|
8
11
|
}
|
|
9
|
-
exports.notOverwritten = notOverwritten;
|
|
10
12
|
function internalError(msg) {
|
|
11
13
|
console.error("Vasille-SFP: Internal error", msg, reportIt);
|
|
12
14
|
return "internal-error";
|
|
13
15
|
}
|
|
14
|
-
exports.internalError = internalError;
|
|
15
16
|
function userError(msg, err) {
|
|
16
17
|
console.error("Vasille-SFP: User error", msg);
|
|
17
18
|
return err;
|
|
18
19
|
}
|
|
19
|
-
exports.userError = userError;
|
|
20
20
|
function wrongBinding(msg) {
|
|
21
21
|
return userError(msg, "wrong-binding");
|
|
22
22
|
}
|
|
23
|
-
exports.wrongBinding = wrongBinding;
|
package/lib-node/node/node.js
CHANGED
|
@@ -167,7 +167,7 @@ class Fragment extends core_1.Reactive {
|
|
|
167
167
|
* @param cb {function(Tag, *)} callback
|
|
168
168
|
*/
|
|
169
169
|
tag(tagName, input, cb
|
|
170
|
-
// @ts-
|
|
170
|
+
// @ts-expect-error
|
|
171
171
|
) {
|
|
172
172
|
const $ = this.$;
|
|
173
173
|
const node = new Tag(input);
|
|
@@ -176,7 +176,7 @@ class Fragment extends core_1.Reactive {
|
|
|
176
176
|
node.init();
|
|
177
177
|
this.pushNode(node);
|
|
178
178
|
node.ready();
|
|
179
|
-
// @ts-
|
|
179
|
+
// @ts-expect-error
|
|
180
180
|
return node.node;
|
|
181
181
|
}
|
|
182
182
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"root":["../src/index.ts","../src/binding/attribute.ts","../src/binding/binding.ts","../src/binding/class.ts","../src/binding/style.ts","../src/core/core.ts","../src/core/destroyable.ts","../src/core/errors.ts","../src/core/ivalue.ts","../src/functional/options.ts","../src/models/array-model.ts","../src/models/listener.ts","../src/models/map-model.ts","../src/models/model.ts","../src/models/object-model.ts","../src/models/set-model.ts","../src/node/app.ts","../src/node/node.ts","../src/node/watch.ts","../src/spec/html.ts","../src/spec/react.ts","../src/spec/svg.ts","../src/value/expression.ts","../src/value/mirror.ts","../src/value/pointer.ts","../src/value/reference.ts","../src/views/array-view.ts","../src/views/base-view.ts","../src/views/map-view.ts","../src/views/object-view.ts","../src/views/repeat-node.ts","../src/views/set-view.ts"],"version":"5.6.2"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vasille",
|
|
3
|
-
"description": "Vasille - Safe.
|
|
3
|
+
"description": "Vasille - Safe. Simple. Powerful.",
|
|
4
4
|
"main": "lib/index.js",
|
|
5
5
|
"types": "types/index.d.ts",
|
|
6
|
-
"version": "2.3.
|
|
6
|
+
"version": "2.3.9",
|
|
7
7
|
"exports": {
|
|
8
8
|
"import": "./lib/index.js",
|
|
9
9
|
"browser": "./lib/index.js",
|
|
@@ -12,16 +12,14 @@
|
|
|
12
12
|
},
|
|
13
13
|
"unpkg": "./cdn/es2015.js",
|
|
14
14
|
"scripts": {
|
|
15
|
+
"prepack": "cp -f ../README.md ./README.md",
|
|
15
16
|
"prettier": "npx prettier src test --check",
|
|
16
17
|
"build": "tsc --build tsconfig-build.json",
|
|
17
|
-
"build-es5": "tsc --build tsconfig-build-es5.json",
|
|
18
18
|
"build-node": "tsc --build tsconfig-build-node.json",
|
|
19
19
|
"test": "jest",
|
|
20
20
|
"test-coverage": "jest --coverage",
|
|
21
21
|
"update-types": "tsc --build tsconfig-types.json",
|
|
22
|
-
"
|
|
23
|
-
"cdn-create": "node cdn/create.cjs",
|
|
24
|
-
"es5-check": "es-check es5 cdn/*es5.js"
|
|
22
|
+
"cdn-create": "node cdn/create.cjs"
|
|
25
23
|
},
|
|
26
24
|
"repository": {
|
|
27
25
|
"type": "git",
|
|
@@ -33,30 +31,27 @@
|
|
|
33
31
|
"web",
|
|
34
32
|
"app",
|
|
35
33
|
"safe",
|
|
36
|
-
"
|
|
34
|
+
"simple",
|
|
37
35
|
"poweful"
|
|
38
36
|
],
|
|
39
37
|
"author": "Vasile Lixcode <lixcode@vivaldi.net> (https://t.me/lixcode)",
|
|
40
38
|
"license": "MIT",
|
|
41
39
|
"devDependencies": {
|
|
42
|
-
"@types/debug": "4.1.
|
|
43
|
-
"@types/eslint": "
|
|
44
|
-
"@types/eslint-scope": "3.7.
|
|
45
|
-
"@types/estree": "
|
|
46
|
-
"@types/events": "3.0.
|
|
47
|
-
"@types/jest": "
|
|
48
|
-
"@types/jsdom": "
|
|
49
|
-
"@
|
|
50
|
-
"@typescript-eslint/
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"jest": "
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"ts-jest": "27.1.4",
|
|
59
|
-
"tslint-config-prettier": "^1.18.0",
|
|
60
|
-
"typescript": "^4.9.5"
|
|
40
|
+
"@types/debug": "4.1.12",
|
|
41
|
+
"@types/eslint": "9.6.1",
|
|
42
|
+
"@types/eslint-scope": "3.7.7",
|
|
43
|
+
"@types/estree": "1.0.6",
|
|
44
|
+
"@types/events": "3.0.3",
|
|
45
|
+
"@types/jest": "29.5.13",
|
|
46
|
+
"@types/jsdom": "21.1.7",
|
|
47
|
+
"@typescript-eslint/eslint-plugin": "8.8.0",
|
|
48
|
+
"@typescript-eslint/parser": "8.8.0",
|
|
49
|
+
"eslint": "9.0.0",
|
|
50
|
+
"jest": "29.7.0",
|
|
51
|
+
"jsdom": "25.0.1",
|
|
52
|
+
"prettier": "3.3.3",
|
|
53
|
+
"ts-jest": "29.2.5",
|
|
54
|
+
"tslint-config-prettier": "1.18.0",
|
|
55
|
+
"typescript": "5.6.2"
|
|
61
56
|
}
|
|
62
57
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"root":["../src/index.ts","../src/binding/attribute.ts","../src/binding/binding.ts","../src/binding/class.ts","../src/binding/style.ts","../src/core/core.ts","../src/core/destroyable.ts","../src/core/errors.ts","../src/core/ivalue.ts","../src/functional/options.ts","../src/models/array-model.ts","../src/models/listener.ts","../src/models/map-model.ts","../src/models/model.ts","../src/models/object-model.ts","../src/models/set-model.ts","../src/node/app.ts","../src/node/node.ts","../src/node/watch.ts","../src/spec/html.ts","../src/spec/react.ts","../src/spec/svg.ts","../src/value/expression.ts","../src/value/mirror.ts","../src/value/pointer.ts","../src/value/reference.ts","../src/views/array-view.ts","../src/views/base-view.ts","../src/views/map-view.ts","../src/views/object-view.ts","../src/views/repeat-node.ts","../src/views/set-view.ts"],"version":"5.6.2"}
|
package/LICENSE.md
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2019 Vasile Lelițac
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|