@lightningjs/blits 1.30.1 → 1.30.2
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/.editorconfig +7 -7
- package/.eslintignore +1 -1
- package/.eslintrc.cjs +65 -65
- package/.github/workflows/comment-lint-results.yml +124 -124
- package/.github/workflows/comment-test-results.yml +108 -108
- package/.github/workflows/deploy-docs.yml +27 -27
- package/.github/workflows/run-blits-tests.yml +141 -141
- package/.github/workflows/run-lint.yml +127 -127
- package/.husky/pre-commit +1 -1
- package/.vscode/extensions.json +7 -7
- package/.vscode/settings.json +9 -9
- package/CHANGELOG.md +1019 -1012
- package/COPYING +1 -0
- package/LICENSE +202 -202
- package/NOTICE +12 -12
- package/README.md +33 -33
- package/bin/index.js +8 -8
- package/blits.d.ts +6 -6
- package/docs/README.md +19 -19
- package/docs/_sidebar.md +37 -37
- package/docs/built-in/directives.md +50 -50
- package/docs/built-in/for-loop.md +203 -203
- package/docs/built-in/layout.md +168 -168
- package/docs/components/component_state.md +90 -90
- package/docs/components/computed_properties.md +45 -45
- package/docs/components/lifecycle_events.md +42 -42
- package/docs/components/methods.md +45 -45
- package/docs/components/props.md +56 -56
- package/docs/components/user_input.md +186 -186
- package/docs/components/utility_methods.md +320 -320
- package/docs/components/watchers.md +34 -34
- package/docs/essentials/application_root.md +19 -19
- package/docs/essentials/components.md +68 -68
- package/docs/essentials/displaying_images.md +67 -67
- package/docs/essentials/displaying_text.md +135 -135
- package/docs/essentials/element_attributes.md +195 -195
- package/docs/essentials/settings.md +117 -117
- package/docs/essentials/template_syntax.md +83 -83
- package/docs/getting_started/file_structure.md +58 -58
- package/docs/getting_started/getting_started.md +45 -45
- package/docs/getting_started/intro.md +20 -20
- package/docs/index.html +47 -47
- package/docs/performance/lazy-loading.md +161 -161
- package/docs/plugins/global_app_state.md +98 -98
- package/docs/plugins/language.md +172 -172
- package/docs/plugins/text-to-speech-announcer.md +119 -119
- package/docs/plugins/theme.md +176 -176
- package/docs/router/basics.md +175 -175
- package/docs/router/hooks.md +70 -70
- package/docs/router/transitions.md +146 -146
- package/docs/sidebar.json +171 -171
- package/docs/transitions_animations/transitions.md +150 -150
- package/index.d.ts +1099 -1099
- package/index.js +28 -28
- package/jsconfig.json +12 -12
- package/package.json +56 -56
- package/public/assets/fps_sprite.base64.js +1 -1
- package/scripts/postpublish.js +59 -59
- package/scripts/prepublishOnly.js +84 -84
- package/scripts/prepush.js +78 -78
- package/src/announcer/announcer.js +162 -162
- package/src/announcer/speechSynthesis.js +107 -107
- package/src/application.js +100 -100
- package/src/component/base/announcer.js +27 -27
- package/src/component/base/events.js +69 -69
- package/src/component/base/index.js +33 -33
- package/src/component/base/methods.js +244 -244
- package/src/component/base/router.js +41 -41
- package/src/component/base/timeouts_intervals.js +99 -99
- package/src/component/base/utils.js +72 -72
- package/src/component/setup/computed.js +48 -48
- package/src/component/setup/index.js +62 -62
- package/src/component/setup/input.js +30 -30
- package/src/component/setup/methods.js +37 -37
- package/src/component/setup/props.js +62 -62
- package/src/component/setup/props.test.js +238 -238
- package/src/component/setup/routes.js +42 -42
- package/src/component/setup/state.js +59 -59
- package/src/component/setup/watch.js +35 -35
- package/src/component.js +437 -437
- package/src/component.test.js +388 -388
- package/src/components/Circle.js +73 -73
- package/src/components/Circle.orig.js +31 -31
- package/src/components/FPScounter.js +1510 -1510
- package/src/components/FPScounter.orig.js +121 -121
- package/src/components/RouterView.js +81 -81
- package/src/components/RouterView.orig.js +54 -54
- package/src/components/Sprite.js +94 -94
- package/src/components/Sprite.orig.js +58 -58
- package/src/components/index.js +28 -28
- package/src/components/index.orig.js +28 -28
- package/src/constants.js +21 -21
- package/src/engine.js +1 -1
- package/src/engines/L3/element.js +744 -744
- package/src/engines/L3/element.test.js +579 -579
- package/src/engines/L3/fontLoader.js +38 -38
- package/src/engines/L3/index.js +7 -7
- package/src/engines/L3/launch.js +123 -123
- package/src/engines/L3/shaderLoader.js +12 -12
- package/src/engines/index.js +1 -1
- package/src/focus.js +90 -90
- package/src/helpers/deepEqualArray.js +50 -50
- package/src/helpers/deepEqualArray.test.js +127 -127
- package/src/helpers/fetchJson.js +34 -34
- package/src/helpers/sequence.js +26 -26
- package/src/launch.js +123 -123
- package/src/lib/blitsfileconverter/blitsfileconverter.js +52 -52
- package/src/lib/codegenerator/generator.js +788 -788
- package/src/lib/codegenerator/generator.test.js +3801 -3801
- package/src/lib/colors/colors.js +92 -92
- package/src/lib/colors/colors.test.js +290 -290
- package/src/lib/colors/htmlColors.js +168 -168
- package/src/lib/componentId.js +49 -49
- package/src/lib/componentId.test.js +84 -84
- package/src/lib/eventListeners.js +123 -123
- package/src/lib/eventListeners.test.js +236 -236
- package/src/lib/hooks.js +59 -59
- package/src/lib/lifecycle.js +85 -85
- package/src/lib/log.js +117 -117
- package/src/lib/precompiler/precompiler.js +73 -73
- package/src/lib/reactivity/effect.js +93 -93
- package/src/lib/reactivity/effect.test.js +35 -35
- package/src/lib/reactivity/reactive.js +208 -208
- package/src/lib/reactivity/reactive.test.js +27 -27
- package/src/lib/reactivityguard/computedprops.js +218 -218
- package/src/lib/symbols.js +108 -108
- package/src/lib/templateparser/parser.js +386 -386
- package/src/lib/templateparser/parser.test.js +1411 -1411
- package/src/lib/utils.js +27 -27
- package/src/plugin.js +27 -27
- package/src/plugins/appstate.js +26 -26
- package/src/plugins/index.js +20 -20
- package/src/plugins/language.js +152 -152
- package/src/plugins/log.js +25 -25
- package/src/plugins/theme.js +94 -94
- package/src/router/router.js +514 -514
- package/src/router/router.test.js +473 -473
- package/src/router/transitions/fadeIn.js +27 -27
- package/src/router/transitions/fadeInOut.js +33 -33
- package/src/router/transitions/index.js +21 -21
- package/src/router/transitions/slideIn.js +28 -28
- package/src/router/transitions/slideInOut.js +33 -33
- package/src/settings.js +40 -40
- package/vite/blitsFileConverter.js +67 -67
- package/vite/index.js +28 -28
- package/vite/msdfGenerator.js +269 -269
- package/vite/preCompiler.js +42 -42
- package/vite/reactivityGuard.js +45 -45
- package/vscode/data/template-attributes.json +589 -589
|
@@ -1,146 +1,146 @@
|
|
|
1
|
-
# Router Transitions
|
|
2
|
-
|
|
3
|
-
Page transitions add a layer of visual polish to your application by animating the change between routes.
|
|
4
|
-
|
|
5
|
-
When the router in Blits navigates to a new page, it automatically applies a subtle _fade-in / fade-out_ transition. Blits also allows to specify custom transitions on a per-route basis.
|
|
6
|
-
|
|
7
|
-
## Defining Route Transitions
|
|
8
|
-
|
|
9
|
-
In the Route object, the `transition` key can be used to specify which transition should be applied when navigating _to_ that route.
|
|
10
|
-
|
|
11
|
-
It accepts a _Transition_ object, with 3 optional keys: `before`, `in`, `out`.
|
|
12
|
-
|
|
13
|
-
### Before
|
|
14
|
-
|
|
15
|
-
The `before` key is used to set a property to a certain value _before_ the page transition starts. The properties are set on the page that is being navigated _to_. For example, it can be used to position the page out of screen by setting the `x` value to a negative value, in order to create a _slide in from the right_ effect. Or the `alpha` property can be set to `0` if you want to create a _fade-in_ effect.
|
|
16
|
-
|
|
17
|
-
```js
|
|
18
|
-
const pageTransition = {
|
|
19
|
-
// position the new page outside the screen on the left side
|
|
20
|
-
before: {
|
|
21
|
-
prop: 'x',
|
|
22
|
-
value: -1920
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
In order to set multiple properties to an initial state, an Array of objects can be assigned to the `before` key.
|
|
28
|
-
|
|
29
|
-
```js
|
|
30
|
-
const pageTransition = {
|
|
31
|
-
// position the new page outside the screen on the left side
|
|
32
|
-
// and set the alpha to 0
|
|
33
|
-
before: [{
|
|
34
|
-
prop: 'x',
|
|
35
|
-
value: -1920
|
|
36
|
-
},{
|
|
37
|
-
prop: 'alpha',
|
|
38
|
-
value: 0
|
|
39
|
-
}]
|
|
40
|
-
}
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
### In
|
|
44
|
-
|
|
45
|
-
The `in`-key is used to define how the new page should transition _into_ the screen, given the initial defaults, in combination with any properties set in the optional `before` key.
|
|
46
|
-
|
|
47
|
-
The transition is defined by a _Transition_ object, consisting of:
|
|
48
|
-
|
|
49
|
-
- `prop` - the property to apply the transition on
|
|
50
|
-
- `value` - the value to transition to
|
|
51
|
-
- `duration` (optional) - the duration of the transition in milliseconds (defaults to `300ms`)
|
|
52
|
-
- `easing` (optional) - the easing function applied to the transition (defaults to `ease-in`)
|
|
53
|
-
|
|
54
|
-
```js
|
|
55
|
-
const pageTransition = {
|
|
56
|
-
// position the new page outside the screen on the left side
|
|
57
|
-
before: {
|
|
58
|
-
prop: 'x',
|
|
59
|
-
value: -1920
|
|
60
|
-
},
|
|
61
|
-
// transition the new page from outside, into the screen
|
|
62
|
-
in: {
|
|
63
|
-
prop: 'x',
|
|
64
|
-
value: 0,
|
|
65
|
-
duration: 800,
|
|
66
|
-
easing: 'cubic-bezier(0.20, 1.00, 0.80, 1.00)'
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
In order to transition multiple properties, an Array of objects can be assigned to the `in` key.
|
|
72
|
-
|
|
73
|
-
```js
|
|
74
|
-
const pageTransition = {
|
|
75
|
-
// position the new page outside the screen on the left side
|
|
76
|
-
// and set the alpha to 0
|
|
77
|
-
before: [{
|
|
78
|
-
prop: 'x',
|
|
79
|
-
value: -1920
|
|
80
|
-
},{
|
|
81
|
-
prop: 'alpha',
|
|
82
|
-
value: 0
|
|
83
|
-
}],
|
|
84
|
-
// transition the new page from outside, into the screen
|
|
85
|
-
// and transition the alpha from 0 to 1
|
|
86
|
-
in: [{
|
|
87
|
-
prop: 'x',
|
|
88
|
-
value: 0,
|
|
89
|
-
duration: 800,
|
|
90
|
-
easing: 'cubic-bezier(0.20, 1.00, 0.80, 1.00)'
|
|
91
|
-
},{
|
|
92
|
-
prop: 'alpha',
|
|
93
|
-
value: 1,
|
|
94
|
-
duration: 500,
|
|
95
|
-
}]
|
|
96
|
-
}
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
### Out
|
|
100
|
-
|
|
101
|
-
Finally the `out`-key is used to define how the old page should transition _out of_ the screen.
|
|
102
|
-
|
|
103
|
-
Similar to the `in`-transition, the `out`-transition is defined by a _Transition object_, consisting of:
|
|
104
|
-
|
|
105
|
-
- `prop` - the property to apply the transition on
|
|
106
|
-
- `value` - the value to transition to
|
|
107
|
-
- `duration` (optional) - the duration of the transition in milliseconds (defaults to `300ms`)
|
|
108
|
-
- `easing` (optional) - the easing function applied to the transition (defaults to `ease-in`)
|
|
109
|
-
|
|
110
|
-
And in order to transition multiple properties at the same time during the _out_ transition, an Array of transition objects can be supplied.
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
```js
|
|
114
|
-
const pageTransition = {
|
|
115
|
-
// position the new page outside the screen on the left side
|
|
116
|
-
// and set the alpha to 0
|
|
117
|
-
before: [{
|
|
118
|
-
prop: 'x',
|
|
119
|
-
value: -1920
|
|
120
|
-
},{
|
|
121
|
-
prop: 'alpha',
|
|
122
|
-
value: 0
|
|
123
|
-
}],
|
|
124
|
-
// transition the new page from outside, into the screen
|
|
125
|
-
// and transition the alpha from 0 to 1
|
|
126
|
-
in: [{
|
|
127
|
-
prop: 'x',
|
|
128
|
-
value: 0,
|
|
129
|
-
duration: 800,
|
|
130
|
-
easing: 'cubic-bezier(0.20, 1.00, 0.80, 1.00)'
|
|
131
|
-
},{
|
|
132
|
-
prop: 'alpha',
|
|
133
|
-
value: 1,
|
|
134
|
-
duration: 500,
|
|
135
|
-
}],
|
|
136
|
-
// slide up the old page
|
|
137
|
-
// while rotating
|
|
138
|
-
out: [{
|
|
139
|
-
prop: 'y',
|
|
140
|
-
value: -1080
|
|
141
|
-
},{
|
|
142
|
-
prop: 'rotate',
|
|
143
|
-
value: 720
|
|
144
|
-
}]
|
|
145
|
-
}
|
|
146
|
-
```
|
|
1
|
+
# Router Transitions
|
|
2
|
+
|
|
3
|
+
Page transitions add a layer of visual polish to your application by animating the change between routes.
|
|
4
|
+
|
|
5
|
+
When the router in Blits navigates to a new page, it automatically applies a subtle _fade-in / fade-out_ transition. Blits also allows to specify custom transitions on a per-route basis.
|
|
6
|
+
|
|
7
|
+
## Defining Route Transitions
|
|
8
|
+
|
|
9
|
+
In the Route object, the `transition` key can be used to specify which transition should be applied when navigating _to_ that route.
|
|
10
|
+
|
|
11
|
+
It accepts a _Transition_ object, with 3 optional keys: `before`, `in`, `out`.
|
|
12
|
+
|
|
13
|
+
### Before
|
|
14
|
+
|
|
15
|
+
The `before` key is used to set a property to a certain value _before_ the page transition starts. The properties are set on the page that is being navigated _to_. For example, it can be used to position the page out of screen by setting the `x` value to a negative value, in order to create a _slide in from the right_ effect. Or the `alpha` property can be set to `0` if you want to create a _fade-in_ effect.
|
|
16
|
+
|
|
17
|
+
```js
|
|
18
|
+
const pageTransition = {
|
|
19
|
+
// position the new page outside the screen on the left side
|
|
20
|
+
before: {
|
|
21
|
+
prop: 'x',
|
|
22
|
+
value: -1920
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
In order to set multiple properties to an initial state, an Array of objects can be assigned to the `before` key.
|
|
28
|
+
|
|
29
|
+
```js
|
|
30
|
+
const pageTransition = {
|
|
31
|
+
// position the new page outside the screen on the left side
|
|
32
|
+
// and set the alpha to 0
|
|
33
|
+
before: [{
|
|
34
|
+
prop: 'x',
|
|
35
|
+
value: -1920
|
|
36
|
+
},{
|
|
37
|
+
prop: 'alpha',
|
|
38
|
+
value: 0
|
|
39
|
+
}]
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### In
|
|
44
|
+
|
|
45
|
+
The `in`-key is used to define how the new page should transition _into_ the screen, given the initial defaults, in combination with any properties set in the optional `before` key.
|
|
46
|
+
|
|
47
|
+
The transition is defined by a _Transition_ object, consisting of:
|
|
48
|
+
|
|
49
|
+
- `prop` - the property to apply the transition on
|
|
50
|
+
- `value` - the value to transition to
|
|
51
|
+
- `duration` (optional) - the duration of the transition in milliseconds (defaults to `300ms`)
|
|
52
|
+
- `easing` (optional) - the easing function applied to the transition (defaults to `ease-in`)
|
|
53
|
+
|
|
54
|
+
```js
|
|
55
|
+
const pageTransition = {
|
|
56
|
+
// position the new page outside the screen on the left side
|
|
57
|
+
before: {
|
|
58
|
+
prop: 'x',
|
|
59
|
+
value: -1920
|
|
60
|
+
},
|
|
61
|
+
// transition the new page from outside, into the screen
|
|
62
|
+
in: {
|
|
63
|
+
prop: 'x',
|
|
64
|
+
value: 0,
|
|
65
|
+
duration: 800,
|
|
66
|
+
easing: 'cubic-bezier(0.20, 1.00, 0.80, 1.00)'
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
In order to transition multiple properties, an Array of objects can be assigned to the `in` key.
|
|
72
|
+
|
|
73
|
+
```js
|
|
74
|
+
const pageTransition = {
|
|
75
|
+
// position the new page outside the screen on the left side
|
|
76
|
+
// and set the alpha to 0
|
|
77
|
+
before: [{
|
|
78
|
+
prop: 'x',
|
|
79
|
+
value: -1920
|
|
80
|
+
},{
|
|
81
|
+
prop: 'alpha',
|
|
82
|
+
value: 0
|
|
83
|
+
}],
|
|
84
|
+
// transition the new page from outside, into the screen
|
|
85
|
+
// and transition the alpha from 0 to 1
|
|
86
|
+
in: [{
|
|
87
|
+
prop: 'x',
|
|
88
|
+
value: 0,
|
|
89
|
+
duration: 800,
|
|
90
|
+
easing: 'cubic-bezier(0.20, 1.00, 0.80, 1.00)'
|
|
91
|
+
},{
|
|
92
|
+
prop: 'alpha',
|
|
93
|
+
value: 1,
|
|
94
|
+
duration: 500,
|
|
95
|
+
}]
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### Out
|
|
100
|
+
|
|
101
|
+
Finally the `out`-key is used to define how the old page should transition _out of_ the screen.
|
|
102
|
+
|
|
103
|
+
Similar to the `in`-transition, the `out`-transition is defined by a _Transition object_, consisting of:
|
|
104
|
+
|
|
105
|
+
- `prop` - the property to apply the transition on
|
|
106
|
+
- `value` - the value to transition to
|
|
107
|
+
- `duration` (optional) - the duration of the transition in milliseconds (defaults to `300ms`)
|
|
108
|
+
- `easing` (optional) - the easing function applied to the transition (defaults to `ease-in`)
|
|
109
|
+
|
|
110
|
+
And in order to transition multiple properties at the same time during the _out_ transition, an Array of transition objects can be supplied.
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
```js
|
|
114
|
+
const pageTransition = {
|
|
115
|
+
// position the new page outside the screen on the left side
|
|
116
|
+
// and set the alpha to 0
|
|
117
|
+
before: [{
|
|
118
|
+
prop: 'x',
|
|
119
|
+
value: -1920
|
|
120
|
+
},{
|
|
121
|
+
prop: 'alpha',
|
|
122
|
+
value: 0
|
|
123
|
+
}],
|
|
124
|
+
// transition the new page from outside, into the screen
|
|
125
|
+
// and transition the alpha from 0 to 1
|
|
126
|
+
in: [{
|
|
127
|
+
prop: 'x',
|
|
128
|
+
value: 0,
|
|
129
|
+
duration: 800,
|
|
130
|
+
easing: 'cubic-bezier(0.20, 1.00, 0.80, 1.00)'
|
|
131
|
+
},{
|
|
132
|
+
prop: 'alpha',
|
|
133
|
+
value: 1,
|
|
134
|
+
duration: 500,
|
|
135
|
+
}],
|
|
136
|
+
// slide up the old page
|
|
137
|
+
// while rotating
|
|
138
|
+
out: [{
|
|
139
|
+
prop: 'y',
|
|
140
|
+
value: -1080
|
|
141
|
+
},{
|
|
142
|
+
prop: 'rotate',
|
|
143
|
+
value: 720
|
|
144
|
+
}]
|
|
145
|
+
}
|
|
146
|
+
```
|
package/docs/sidebar.json
CHANGED
|
@@ -1,171 +1,171 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"text": "Getting Started",
|
|
4
|
-
"items": [
|
|
5
|
-
{
|
|
6
|
-
"text": "Intro",
|
|
7
|
-
"link": "/getting_started/intro"
|
|
8
|
-
},
|
|
9
|
-
{
|
|
10
|
-
"text": "Getting started",
|
|
11
|
-
"link": "/getting_started/getting_started"
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"text": "File structure",
|
|
15
|
-
"link": "/getting_started/file_structure"
|
|
16
|
-
}
|
|
17
|
-
]
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
"text": "Essentials",
|
|
21
|
-
"items": [
|
|
22
|
-
{
|
|
23
|
-
"text": "Application root",
|
|
24
|
-
"link": "/essentials/application_root"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"text": "Component basics",
|
|
28
|
-
"link": "/essentials/components"
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
"text": "Template syntax",
|
|
32
|
-
"link": "/essentials/template_syntax"
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
"text": "Supported element attributes",
|
|
36
|
-
"link": "/essentials/element_attributes"
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"text": "Displaying images",
|
|
40
|
-
"link": "/essentials/displaying_images"
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
"text": "Displaying text",
|
|
44
|
-
"link": "/essentials/displaying_text"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"text": "Application settings",
|
|
48
|
-
"link": "/essentials/settings"
|
|
49
|
-
}
|
|
50
|
-
]
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
"text": "Components",
|
|
54
|
-
"items": [
|
|
55
|
-
{
|
|
56
|
-
"text": "State",
|
|
57
|
-
"link": "/components/component_state"
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
"text": "Props",
|
|
61
|
-
"link": "/components/props"
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
"text": "Computed properties",
|
|
65
|
-
"link": "/components/computed_properties"
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
"text": "Watchers",
|
|
69
|
-
"link": "/components/watchers"
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
"text": "Hooking into lifecycle events",
|
|
73
|
-
"link": "/components/lifecycle_events"
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
"text": "Handling User input",
|
|
77
|
-
"link": "/components/user_input"
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"text": "Methods",
|
|
81
|
-
"link": "/components/methods"
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
"text": "Utility methods",
|
|
85
|
-
"link": "/components/utility_methods"
|
|
86
|
-
}
|
|
87
|
-
]
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
"text": "Transitions and Animations",
|
|
91
|
-
"items": [
|
|
92
|
-
{
|
|
93
|
-
"text": "Transitions",
|
|
94
|
-
"link": "/transitions_animations/transitions"
|
|
95
|
-
}
|
|
96
|
-
]
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
"text": "Built-in components",
|
|
100
|
-
"items": [
|
|
101
|
-
{
|
|
102
|
-
"text": "Directives",
|
|
103
|
-
"link": "/built-in/directives"
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
"text": "For loop",
|
|
107
|
-
"link": "/built-in/for-loop"
|
|
108
|
-
},
|
|
109
|
-
{
|
|
110
|
-
"text": "Layout",
|
|
111
|
-
"link": "/built-in/layout.md"
|
|
112
|
-
}
|
|
113
|
-
]
|
|
114
|
-
},
|
|
115
|
-
{
|
|
116
|
-
"text": "Performance",
|
|
117
|
-
"items": [
|
|
118
|
-
{
|
|
119
|
-
"text": "Lazy Loading",
|
|
120
|
-
"link": "/performance/lazy-loading"
|
|
121
|
-
}
|
|
122
|
-
]
|
|
123
|
-
},
|
|
124
|
-
{
|
|
125
|
-
"text": "Router",
|
|
126
|
-
"items": [
|
|
127
|
-
{
|
|
128
|
-
"text": "Basics",
|
|
129
|
-
"link": "/router/basics"
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
"text": "Hooks",
|
|
133
|
-
"link": "/router/hooks"
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
"text": "Transitions",
|
|
137
|
-
"link": "/router/transitions"
|
|
138
|
-
}
|
|
139
|
-
]
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
"text": "Plugins",
|
|
143
|
-
"items": [
|
|
144
|
-
{
|
|
145
|
-
"text": "Text-to-Speech / Announcer",
|
|
146
|
-
"link": "/plugins/text-to-speech-announcer"
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
"text": "Language",
|
|
150
|
-
"link": "/plugins/language"
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
"text": "Theme",
|
|
154
|
-
"link": "/plugins/theme"
|
|
155
|
-
},
|
|
156
|
-
{
|
|
157
|
-
"text": "Global App State",
|
|
158
|
-
"link": "/plugins/global_app_state"
|
|
159
|
-
}
|
|
160
|
-
]
|
|
161
|
-
},
|
|
162
|
-
{
|
|
163
|
-
"text": "Performance",
|
|
164
|
-
"items": [
|
|
165
|
-
{
|
|
166
|
-
"text": "Lazy loading",
|
|
167
|
-
"link": "/performance/lazy-loading"
|
|
168
|
-
}
|
|
169
|
-
]
|
|
170
|
-
}
|
|
171
|
-
]
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"text": "Getting Started",
|
|
4
|
+
"items": [
|
|
5
|
+
{
|
|
6
|
+
"text": "Intro",
|
|
7
|
+
"link": "/getting_started/intro"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"text": "Getting started",
|
|
11
|
+
"link": "/getting_started/getting_started"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"text": "File structure",
|
|
15
|
+
"link": "/getting_started/file_structure"
|
|
16
|
+
}
|
|
17
|
+
]
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"text": "Essentials",
|
|
21
|
+
"items": [
|
|
22
|
+
{
|
|
23
|
+
"text": "Application root",
|
|
24
|
+
"link": "/essentials/application_root"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"text": "Component basics",
|
|
28
|
+
"link": "/essentials/components"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"text": "Template syntax",
|
|
32
|
+
"link": "/essentials/template_syntax"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"text": "Supported element attributes",
|
|
36
|
+
"link": "/essentials/element_attributes"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"text": "Displaying images",
|
|
40
|
+
"link": "/essentials/displaying_images"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"text": "Displaying text",
|
|
44
|
+
"link": "/essentials/displaying_text"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"text": "Application settings",
|
|
48
|
+
"link": "/essentials/settings"
|
|
49
|
+
}
|
|
50
|
+
]
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"text": "Components",
|
|
54
|
+
"items": [
|
|
55
|
+
{
|
|
56
|
+
"text": "State",
|
|
57
|
+
"link": "/components/component_state"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"text": "Props",
|
|
61
|
+
"link": "/components/props"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"text": "Computed properties",
|
|
65
|
+
"link": "/components/computed_properties"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"text": "Watchers",
|
|
69
|
+
"link": "/components/watchers"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"text": "Hooking into lifecycle events",
|
|
73
|
+
"link": "/components/lifecycle_events"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"text": "Handling User input",
|
|
77
|
+
"link": "/components/user_input"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"text": "Methods",
|
|
81
|
+
"link": "/components/methods"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"text": "Utility methods",
|
|
85
|
+
"link": "/components/utility_methods"
|
|
86
|
+
}
|
|
87
|
+
]
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"text": "Transitions and Animations",
|
|
91
|
+
"items": [
|
|
92
|
+
{
|
|
93
|
+
"text": "Transitions",
|
|
94
|
+
"link": "/transitions_animations/transitions"
|
|
95
|
+
}
|
|
96
|
+
]
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"text": "Built-in components",
|
|
100
|
+
"items": [
|
|
101
|
+
{
|
|
102
|
+
"text": "Directives",
|
|
103
|
+
"link": "/built-in/directives"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"text": "For loop",
|
|
107
|
+
"link": "/built-in/for-loop"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"text": "Layout",
|
|
111
|
+
"link": "/built-in/layout.md"
|
|
112
|
+
}
|
|
113
|
+
]
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"text": "Performance",
|
|
117
|
+
"items": [
|
|
118
|
+
{
|
|
119
|
+
"text": "Lazy Loading",
|
|
120
|
+
"link": "/performance/lazy-loading"
|
|
121
|
+
}
|
|
122
|
+
]
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"text": "Router",
|
|
126
|
+
"items": [
|
|
127
|
+
{
|
|
128
|
+
"text": "Basics",
|
|
129
|
+
"link": "/router/basics"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"text": "Hooks",
|
|
133
|
+
"link": "/router/hooks"
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"text": "Transitions",
|
|
137
|
+
"link": "/router/transitions"
|
|
138
|
+
}
|
|
139
|
+
]
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"text": "Plugins",
|
|
143
|
+
"items": [
|
|
144
|
+
{
|
|
145
|
+
"text": "Text-to-Speech / Announcer",
|
|
146
|
+
"link": "/plugins/text-to-speech-announcer"
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"text": "Language",
|
|
150
|
+
"link": "/plugins/language"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"text": "Theme",
|
|
154
|
+
"link": "/plugins/theme"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"text": "Global App State",
|
|
158
|
+
"link": "/plugins/global_app_state"
|
|
159
|
+
}
|
|
160
|
+
]
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"text": "Performance",
|
|
164
|
+
"items": [
|
|
165
|
+
{
|
|
166
|
+
"text": "Lazy loading",
|
|
167
|
+
"link": "/performance/lazy-loading"
|
|
168
|
+
}
|
|
169
|
+
]
|
|
170
|
+
}
|
|
171
|
+
]
|