vasille-web 5.0.0 → 5.0.1
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 +37 -19
- package/package.json +1 -1
- package/types/jsx-runtime.d.ts +3 -3
- package/types/spec/html.d.ts +6 -3
package/README.md
CHANGED
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|

|
|
4
4
|
|
|
5
|
-
`SteelFrameKit` is a front-end development kit, which is developed to provide
|
|
5
|
+
`SteelFrameKit` is a front-end development kit, which is developed to provide fault tolerant web applications.
|
|
6
6
|
|
|
7
|
-
[](https://www.npmjs.com/package/steel-frame)
|
|
8
|
+
[](https://deepwiki.com/vasille-js/steel-frame)
|
|
9
|
+
[](https://coveralls.io/github/vasille-js/steel-frame?branch=v5)
|
|
8
10
|
|
|
9
11
|
## Table of content
|
|
10
12
|
|
|
@@ -19,11 +21,11 @@
|
|
|
19
21
|
- [How POWERFUL is SteelFrameKit](#how-powerful-is-steelframekit)
|
|
20
22
|
- [Road map](#road-map)
|
|
21
23
|
- [Change log](#change-log)
|
|
22
|
-
- [5.0
|
|
23
|
-
- [4.3
|
|
24
|
-
- [
|
|
25
|
-
- [
|
|
26
|
-
- [
|
|
24
|
+
- [5.0](#50)
|
|
25
|
+
- [4.0 - 4.3](#40---43)
|
|
26
|
+
- [3.0 - 3.2](#30---32)
|
|
27
|
+
- [2.0 - 2.3](#20---23)
|
|
28
|
+
- [1.0 - 1.2](#10---12)
|
|
27
29
|
- [Questions](#questions)
|
|
28
30
|
|
|
29
31
|
|
|
@@ -92,7 +94,7 @@ All of these are supported:
|
|
|
92
94
|
* Reactive values (observables).
|
|
93
95
|
* Inline computed values.
|
|
94
96
|
* Multiline computed values.
|
|
95
|
-
* HTML
|
|
97
|
+
* HTML tags.
|
|
96
98
|
* Component custom slots.
|
|
97
99
|
* 2-way data binding in components.
|
|
98
100
|
* Logic block (if, else).
|
|
@@ -103,7 +105,6 @@ All of these are supported:
|
|
|
103
105
|
|
|
104
106
|
## Road map
|
|
105
107
|
|
|
106
|
-
* [x] Update the `core` library to version 3.0.
|
|
107
108
|
* [x] `100%` Test Coverage for core Library v3.
|
|
108
109
|
* [x] Develop the `JSX` library.
|
|
109
110
|
* [x] `100%` Test Coverage for the JSX library.
|
|
@@ -117,25 +118,42 @@ All of these are supported:
|
|
|
117
118
|
|
|
118
119
|
## Change log
|
|
119
120
|
|
|
120
|
-
|
|
121
|
+
We respect semantic versioning:
|
|
122
|
+
- Major version is increased when we make incompatible API changes.
|
|
123
|
+
- Minor version is increased when we add functionality.
|
|
124
|
+
- Patch version is increased when we fix bugs.
|
|
121
125
|
|
|
122
|
-
|
|
126
|
+
### 5.0
|
|
123
127
|
|
|
124
|
-
|
|
128
|
+
- Add support for context and dependencies injection.
|
|
129
|
+
- New developement direction: `fault tolerant`.
|
|
130
|
+
- Renamed to `steel-frame`. **[API change]**
|
|
131
|
+
- Removed `forward` and `backward` functions. **[API change]**
|
|
132
|
+
- Removed `Debug` component. **[API change]**
|
|
125
133
|
|
|
126
|
-
|
|
134
|
+
### 4.0 - 4.3
|
|
127
135
|
|
|
128
|
-
|
|
136
|
+
- Initial version of the framework with file based routing and building scripts (`web dev` and `web build spa`).
|
|
137
|
+
- Reactive values naming switched to `$` prefix. **[API change]**
|
|
138
|
+
- `4.1` Added SSG (static site generation) as build option `web build static`.
|
|
139
|
+
- `4.2` Add support for inlined conditions in JSX, binary `&&` and ternary `?:` operator.
|
|
140
|
+
- `4.3` Add new function `safe` which make functions safe, errors are reported automatically.
|
|
129
141
|
|
|
130
|
-
|
|
142
|
+
### 3.0 - 3.2
|
|
131
143
|
|
|
132
|
-
|
|
144
|
+
- Switch to a babel plugin to compile components code. **[API change]**
|
|
145
|
+
- 100% of code has been covered with unit tests.
|
|
146
|
+
- New developement direction: `keep it simple`.
|
|
133
147
|
|
|
134
|
-
|
|
148
|
+
### 2.0 - 2.3
|
|
135
149
|
|
|
136
|
-
|
|
150
|
+
- Introduces components compilation via a typescript plugin. **[API change]**
|
|
151
|
+
- New developement direction: `write less, do more`.
|
|
137
152
|
|
|
138
|
-
|
|
153
|
+
### 1.0 - 1.2
|
|
154
|
+
|
|
155
|
+
- Initial version of core library.
|
|
156
|
+
- Developemnt direction: `performance-first`.
|
|
139
157
|
|
|
140
158
|
## Questions
|
|
141
159
|
|
package/package.json
CHANGED
package/types/jsx-runtime.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { RawStyleProps } from "./spec/css.ts";
|
|
2
2
|
import type { HtmlTagMap } from "./spec/html.ts";
|
|
3
|
-
type
|
|
3
|
+
export type { TagEvents, TagAttrs, TagProps } from "./spec/html.ts";
|
|
4
|
+
export type prefixedObject<T, P extends string> = {
|
|
4
5
|
[K in keyof T as K extends string ? `${P}${K}` : never]?: T[K];
|
|
5
6
|
};
|
|
6
|
-
type EventHandlers<T> = {
|
|
7
|
+
export type EventHandlers<T> = {
|
|
7
8
|
[K in keyof T]: T[K] | [T[K], boolean | AddEventListenerOptions];
|
|
8
9
|
};
|
|
9
10
|
export type ClassItem = string | Record<string, boolean> | false;
|
|
@@ -133,4 +134,3 @@ export declare namespace JSX {
|
|
|
133
134
|
wbr: HtmlInput<"wbr">;
|
|
134
135
|
}
|
|
135
136
|
}
|
|
136
|
-
export {};
|
package/types/spec/html.d.ts
CHANGED
|
@@ -4,10 +4,10 @@ export interface Tag<Attrs, Events, Props> {
|
|
|
4
4
|
events: Events;
|
|
5
5
|
props: Props;
|
|
6
6
|
}
|
|
7
|
-
type TagEvents<Target> = {
|
|
7
|
+
export type TagEvents<Target> = {
|
|
8
8
|
[K in keyof HTMLElementEventMap]: EventHandler<HTMLElementEventMap[K], Target> | undefined;
|
|
9
9
|
};
|
|
10
|
-
interface TagAttrs {
|
|
10
|
+
export interface TagAttrs {
|
|
11
11
|
id: string;
|
|
12
12
|
accesskey: string;
|
|
13
13
|
autocapitalize: "off" | "none" | "on" | "sentences" | "words" | "characters";
|
|
@@ -27,6 +27,8 @@ interface TagAttrs {
|
|
|
27
27
|
itemtype: string;
|
|
28
28
|
lang: string;
|
|
29
29
|
nonce: string;
|
|
30
|
+
part: string;
|
|
31
|
+
slot: string;
|
|
30
32
|
spellcheck: "true" | "false" | "" | boolean;
|
|
31
33
|
tabindex: number;
|
|
32
34
|
title: string;
|
|
@@ -97,6 +99,7 @@ interface AAttrs extends TagAttrs {
|
|
|
97
99
|
hreflang: string;
|
|
98
100
|
type: string;
|
|
99
101
|
referrerpolicy: string;
|
|
102
|
+
rel: string;
|
|
100
103
|
}
|
|
101
104
|
interface QAttrs extends TagAttrs {
|
|
102
105
|
cite: string;
|
|
@@ -520,7 +523,7 @@ export interface TagEventsProps<T extends Element> {
|
|
|
520
523
|
onwaiting?: ((this: T, ev: Event) => any) | null;
|
|
521
524
|
onwheel?: ((this: T, ev: WheelEvent) => any) | null;
|
|
522
525
|
}
|
|
523
|
-
interface TagProps<T extends Element> extends TagEventsProps<T> {
|
|
526
|
+
export interface TagProps<T extends Element> extends TagEventsProps<T> {
|
|
524
527
|
autofocus?: boolean;
|
|
525
528
|
className?: string;
|
|
526
529
|
nonce?: string | undefined;
|