@ersbeth/picoflow 0.2.3 → 1.0.0
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/.cursor/plans/update-js-e795d61b.plan.md +567 -0
- package/.gitlab-ci.yml +24 -0
- package/.vscode/settings.json +3 -3
- package/CHANGELOG.md +51 -0
- package/IMPLEMENTATION_GUIDE.md +1578 -0
- package/README.md +62 -25
- package/biome.json +32 -32
- package/dist/picoflow.js +557 -1099
- package/dist/types/advanced/array.d.ts +0 -6
- package/dist/types/advanced/array.d.ts.map +1 -1
- package/dist/types/advanced/index.d.ts +5 -5
- package/dist/types/advanced/index.d.ts.map +1 -1
- package/dist/types/advanced/map.d.ts +114 -23
- package/dist/types/advanced/map.d.ts.map +1 -1
- package/dist/types/advanced/resource.d.ts +51 -12
- package/dist/types/advanced/resource.d.ts.map +1 -1
- package/dist/types/advanced/resourceAsync.d.ts +28 -13
- package/dist/types/advanced/resourceAsync.d.ts.map +1 -1
- package/dist/types/advanced/stream.d.ts +74 -16
- package/dist/types/advanced/stream.d.ts.map +1 -1
- package/dist/types/advanced/streamAsync.d.ts +69 -15
- package/dist/types/advanced/streamAsync.d.ts.map +1 -1
- package/dist/types/basic/constant.d.ts +44 -16
- package/dist/types/basic/constant.d.ts.map +1 -1
- package/dist/types/basic/derivation.d.ts +73 -24
- package/dist/types/basic/derivation.d.ts.map +1 -1
- package/dist/types/basic/disposable.d.ts +65 -6
- package/dist/types/basic/disposable.d.ts.map +1 -1
- package/dist/types/basic/effect.d.ts +27 -16
- package/dist/types/basic/effect.d.ts.map +1 -1
- package/dist/types/basic/index.d.ts +7 -8
- package/dist/types/basic/index.d.ts.map +1 -1
- package/dist/types/basic/observable.d.ts +62 -13
- package/dist/types/basic/observable.d.ts.map +1 -1
- package/dist/types/basic/signal.d.ts +35 -6
- package/dist/types/basic/signal.d.ts.map +1 -1
- package/dist/types/basic/state.d.ts +25 -4
- package/dist/types/basic/state.d.ts.map +1 -1
- package/dist/types/basic/trackingContext.d.ts +33 -0
- package/dist/types/basic/trackingContext.d.ts.map +1 -0
- package/dist/types/creators.d.ts +271 -26
- package/dist/types/creators.d.ts.map +1 -1
- package/dist/types/index.d.ts +60 -7
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/solid/converters.d.ts +5 -5
- package/dist/types/solid/converters.d.ts.map +1 -1
- package/dist/types/solid/index.d.ts +2 -2
- package/dist/types/solid/index.d.ts.map +1 -1
- package/dist/types/solid/primitives.d.ts +96 -4
- package/dist/types/solid/primitives.d.ts.map +1 -1
- package/docs/.vitepress/config.mts +110 -0
- package/docs/api/classes/FlowArray.md +489 -0
- package/docs/api/classes/FlowConstant.md +350 -0
- package/docs/api/classes/FlowDerivation.md +334 -0
- package/docs/api/classes/FlowEffect.md +100 -0
- package/docs/api/classes/FlowMap.md +512 -0
- package/docs/api/classes/FlowObservable.md +306 -0
- package/docs/api/classes/FlowResource.md +380 -0
- package/docs/api/classes/FlowResourceAsync.md +362 -0
- package/docs/api/classes/FlowSignal.md +160 -0
- package/docs/api/classes/FlowState.md +368 -0
- package/docs/api/classes/FlowStream.md +367 -0
- package/docs/api/classes/FlowStreamAsync.md +364 -0
- package/docs/api/classes/SolidDerivation.md +75 -0
- package/docs/api/classes/SolidResource.md +91 -0
- package/docs/api/classes/SolidState.md +71 -0
- package/docs/api/classes/TrackingContext.md +33 -0
- package/docs/api/functions/array.md +58 -0
- package/docs/api/functions/constant.md +45 -0
- package/docs/api/functions/derivation.md +53 -0
- package/docs/api/functions/effect.md +49 -0
- package/docs/api/functions/from.md +220 -0
- package/docs/api/functions/isDisposable.md +49 -0
- package/docs/api/functions/map.md +57 -0
- package/docs/api/functions/resource.md +52 -0
- package/docs/api/functions/resourceAsync.md +50 -0
- package/docs/api/functions/signal.md +36 -0
- package/docs/api/functions/state.md +47 -0
- package/docs/api/functions/stream.md +53 -0
- package/docs/api/functions/streamAsync.md +50 -0
- package/docs/api/index.md +118 -0
- package/docs/api/interfaces/FlowDisposable.md +65 -0
- package/docs/api/interfaces/SolidObservable.md +19 -0
- package/docs/api/type-aliases/FlowArrayAction.md +49 -0
- package/docs/api/type-aliases/FlowStreamDisposer.md +15 -0
- package/docs/api/type-aliases/FlowStreamSetter.md +27 -0
- package/docs/api/type-aliases/FlowStreamUpdater.md +32 -0
- package/docs/api/type-aliases/NotPromise.md +18 -0
- package/docs/api/type-aliases/SolidGetter.md +17 -0
- package/docs/api/typedoc-sidebar.json +1 -0
- package/docs/examples/examples.md +2313 -0
- package/docs/examples/patterns.md +649 -0
- package/docs/guide/advanced/disposal.md +426 -0
- package/docs/guide/advanced/solidjs.md +221 -0
- package/docs/guide/advanced/upgrading.md +464 -0
- package/docs/guide/introduction/concepts.md +56 -0
- package/docs/guide/introduction/conventions.md +61 -0
- package/docs/guide/introduction/getting-started.md +134 -0
- package/docs/guide/introduction/lifecycle.md +371 -0
- package/docs/guide/primitives/array.md +400 -0
- package/docs/guide/primitives/constant.md +380 -0
- package/docs/guide/primitives/derivations.md +348 -0
- package/docs/guide/primitives/effects.md +458 -0
- package/docs/guide/primitives/map.md +387 -0
- package/docs/guide/primitives/overview.md +175 -0
- package/docs/guide/primitives/resources.md +858 -0
- package/docs/guide/primitives/signal.md +259 -0
- package/docs/guide/primitives/state.md +368 -0
- package/docs/guide/primitives/streams.md +931 -0
- package/docs/index.md +47 -0
- package/docs/public/logo.svg +1 -0
- package/package.json +57 -41
- package/src/advanced/array.ts +208 -210
- package/src/advanced/index.ts +7 -7
- package/src/advanced/map.ts +178 -68
- package/src/advanced/resource.ts +87 -43
- package/src/advanced/resourceAsync.ts +62 -42
- package/src/advanced/stream.ts +113 -50
- package/src/advanced/streamAsync.ts +120 -61
- package/src/basic/constant.ts +82 -49
- package/src/basic/derivation.ts +128 -84
- package/src/basic/disposable.ts +74 -15
- package/src/basic/effect.ts +85 -77
- package/src/basic/index.ts +7 -8
- package/src/basic/observable.ts +94 -36
- package/src/basic/signal.ts +133 -105
- package/src/basic/state.ts +46 -25
- package/src/basic/trackingContext.ts +45 -0
- package/src/creators.ts +297 -54
- package/src/index.ts +96 -43
- package/src/solid/converters.ts +186 -67
- package/src/solid/index.ts +8 -2
- package/src/solid/primitives.ts +167 -65
- package/test/array.test.ts +592 -612
- package/test/constant.test.ts +31 -33
- package/test/derivation.test.ts +531 -536
- package/test/effect.test.ts +21 -21
- package/test/map.test.ts +233 -137
- package/test/resource.test.ts +119 -121
- package/test/resourceAsync.test.ts +98 -100
- package/test/signal.test.ts +51 -55
- package/test/state.test.ts +186 -168
- package/test/stream.test.ts +189 -189
- package/test/streamAsync.test.ts +186 -186
- package/tsconfig.json +19 -18
- package/typedoc.json +37 -0
- package/vite.config.ts +23 -20
- package/vitest.config.ts +7 -7
- package/api/doc/index.md +0 -31
- package/api/doc/picoflow.array.md +0 -55
- package/api/doc/picoflow.constant.md +0 -55
- package/api/doc/picoflow.derivation.md +0 -55
- package/api/doc/picoflow.effect.md +0 -55
- package/api/doc/picoflow.flowarray._constructor_.md +0 -49
- package/api/doc/picoflow.flowarray._lastaction.md +0 -13
- package/api/doc/picoflow.flowarray.clear.md +0 -17
- package/api/doc/picoflow.flowarray.dispose.md +0 -55
- package/api/doc/picoflow.flowarray.get.md +0 -19
- package/api/doc/picoflow.flowarray.length.md +0 -13
- package/api/doc/picoflow.flowarray.md +0 -273
- package/api/doc/picoflow.flowarray.pop.md +0 -17
- package/api/doc/picoflow.flowarray.push.md +0 -53
- package/api/doc/picoflow.flowarray.set.md +0 -53
- package/api/doc/picoflow.flowarray.setitem.md +0 -69
- package/api/doc/picoflow.flowarray.shift.md +0 -17
- package/api/doc/picoflow.flowarray.splice.md +0 -85
- package/api/doc/picoflow.flowarray.unshift.md +0 -53
- package/api/doc/picoflow.flowarrayaction.md +0 -37
- package/api/doc/picoflow.flowconstant._constructor_.md +0 -49
- package/api/doc/picoflow.flowconstant.get.md +0 -25
- package/api/doc/picoflow.flowconstant.md +0 -88
- package/api/doc/picoflow.flowderivation._constructor_.md +0 -49
- package/api/doc/picoflow.flowderivation.get.md +0 -23
- package/api/doc/picoflow.flowderivation.md +0 -86
- package/api/doc/picoflow.flowdisposable.dispose.md +0 -55
- package/api/doc/picoflow.flowdisposable.md +0 -43
- package/api/doc/picoflow.floweffect._constructor_.md +0 -54
- package/api/doc/picoflow.floweffect.dispose.md +0 -21
- package/api/doc/picoflow.floweffect.disposed.md +0 -13
- package/api/doc/picoflow.floweffect.md +0 -131
- package/api/doc/picoflow.flowgetter.md +0 -15
- package/api/doc/picoflow.flowmap._lastdeleted.md +0 -21
- package/api/doc/picoflow.flowmap._lastset.md +0 -21
- package/api/doc/picoflow.flowmap.delete.md +0 -61
- package/api/doc/picoflow.flowmap.md +0 -133
- package/api/doc/picoflow.flowmap.setat.md +0 -77
- package/api/doc/picoflow.flowobservable.get.md +0 -19
- package/api/doc/picoflow.flowobservable.md +0 -68
- package/api/doc/picoflow.flowobservable.subscribe.md +0 -55
- package/api/doc/picoflow.flowresource._constructor_.md +0 -49
- package/api/doc/picoflow.flowresource.fetch.md +0 -27
- package/api/doc/picoflow.flowresource.get.md +0 -23
- package/api/doc/picoflow.flowresource.md +0 -100
- package/api/doc/picoflow.flowresourceasync._constructor_.md +0 -49
- package/api/doc/picoflow.flowresourceasync.fetch.md +0 -27
- package/api/doc/picoflow.flowresourceasync.get.md +0 -23
- package/api/doc/picoflow.flowresourceasync.md +0 -100
- package/api/doc/picoflow.flowsignal.dispose.md +0 -59
- package/api/doc/picoflow.flowsignal.disposed.md +0 -18
- package/api/doc/picoflow.flowsignal.md +0 -112
- package/api/doc/picoflow.flowsignal.trigger.md +0 -21
- package/api/doc/picoflow.flowstate.md +0 -52
- package/api/doc/picoflow.flowstate.set.md +0 -61
- package/api/doc/picoflow.flowstream._constructor_.md +0 -49
- package/api/doc/picoflow.flowstream.dispose.md +0 -21
- package/api/doc/picoflow.flowstream.get.md +0 -23
- package/api/doc/picoflow.flowstream.md +0 -100
- package/api/doc/picoflow.flowstreamasync._constructor_.md +0 -54
- package/api/doc/picoflow.flowstreamasync.dispose.md +0 -21
- package/api/doc/picoflow.flowstreamasync.get.md +0 -23
- package/api/doc/picoflow.flowstreamasync.md +0 -100
- package/api/doc/picoflow.flowstreamdisposer.md +0 -13
- package/api/doc/picoflow.flowstreamsetter.md +0 -13
- package/api/doc/picoflow.flowstreamupdater.md +0 -19
- package/api/doc/picoflow.flowwatcher.md +0 -15
- package/api/doc/picoflow.from.md +0 -55
- package/api/doc/picoflow.from_1.md +0 -55
- package/api/doc/picoflow.from_2.md +0 -55
- package/api/doc/picoflow.from_3.md +0 -55
- package/api/doc/picoflow.from_4.md +0 -55
- package/api/doc/picoflow.from_5.md +0 -55
- package/api/doc/picoflow.isdisposable.md +0 -55
- package/api/doc/picoflow.map.md +0 -59
- package/api/doc/picoflow.md +0 -544
- package/api/doc/picoflow.resource.md +0 -55
- package/api/doc/picoflow.resourceasync.md +0 -55
- package/api/doc/picoflow.signal.md +0 -19
- package/api/doc/picoflow.solidderivation._constructor_.md +0 -49
- package/api/doc/picoflow.solidderivation.get.md +0 -13
- package/api/doc/picoflow.solidderivation.md +0 -94
- package/api/doc/picoflow.solidgetter.md +0 -13
- package/api/doc/picoflow.solidobservable.get.md +0 -13
- package/api/doc/picoflow.solidobservable.md +0 -57
- package/api/doc/picoflow.solidresource._constructor_.md +0 -49
- package/api/doc/picoflow.solidresource.get.md +0 -13
- package/api/doc/picoflow.solidresource.latest.md +0 -13
- package/api/doc/picoflow.solidresource.md +0 -157
- package/api/doc/picoflow.solidresource.refetch.md +0 -13
- package/api/doc/picoflow.solidresource.state.md +0 -13
- package/api/doc/picoflow.solidstate._constructor_.md +0 -49
- package/api/doc/picoflow.solidstate.get.md +0 -13
- package/api/doc/picoflow.solidstate.md +0 -115
- package/api/doc/picoflow.solidstate.set.md +0 -13
- package/api/doc/picoflow.state.md +0 -55
- package/api/doc/picoflow.stream.md +0 -55
- package/api/doc/picoflow.streamasync.md +0 -55
- package/api/picoflow.public.api.md +0 -244
- package/api-extractor.json +0 -61
package/README.md
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# Picoflow
|
|
2
2
|
|
|
3
|
-
**Picoflow** is a lightweight reactive dataflow library that provides fine-grained reactive primitives. It gives you an intuitive API for signals, state, asynchronous resources, streams, derivations, effects, and reactive maps.
|
|
3
|
+
**Picoflow** is a lightweight reactive dataflow library that provides fine-grained reactive primitives. It gives you an intuitive API for signals, state, asynchronous resources, streams, derivations, effects, and reactive maps. Picoflow uses an explicit tracking context to automatically track reactive dependencies.
|
|
4
|
+
|
|
5
|
+
> **Upgrading from v0.x?** See the [Upgrade Guide](UPGRADING.md) for migration instructions.
|
|
4
6
|
|
|
5
7
|
## Features
|
|
6
8
|
|
|
@@ -13,6 +15,7 @@
|
|
|
13
15
|
- **Lazy Evaluation:** Derivations are evaluated lazily—that is, the computation only runs if and when an effect actually uses the derived value.
|
|
14
16
|
- **Reactive Maps:** Manage collections reactively with granular update notifications.
|
|
15
17
|
- **Effects:** Automatically run side-effect functions when dependencies change.
|
|
18
|
+
- **Explicit Control:** Choose between reactive (`.get(t)`) and non-reactive (`.pick()`) reads for fine-grained control.
|
|
16
19
|
|
|
17
20
|
## Installation
|
|
18
21
|
|
|
@@ -24,18 +27,18 @@ npm install @ersbeth/picoflow
|
|
|
24
27
|
|
|
25
28
|
## Usage
|
|
26
29
|
|
|
27
|
-
In Picoflow, we advise to prefix all reactive primitives and effects with `$` for improved readability. Rather than using a subscribe method, you always create an effect that
|
|
30
|
+
In Picoflow, we advise to prefix all reactive primitives and effects with `$` for improved readability. Rather than using a subscribe method, you always create an effect that tracks dependencies using a tracking context. Below are some examples:
|
|
28
31
|
|
|
29
32
|
### Creating a Signal
|
|
30
33
|
|
|
31
34
|
```ts
|
|
32
|
-
import { signal, effect } from 'picoflow';
|
|
35
|
+
import { signal, effect } from '@ersbeth/picoflow';
|
|
33
36
|
|
|
34
37
|
const $signal = signal();
|
|
35
38
|
|
|
36
|
-
const $effect = effect((
|
|
39
|
+
const $effect = effect((t) => {
|
|
37
40
|
// Automatically tracks $signal
|
|
38
|
-
watch(
|
|
41
|
+
$signal.watch(t);
|
|
39
42
|
console.log('$signal has been triggered');
|
|
40
43
|
});
|
|
41
44
|
|
|
@@ -48,25 +51,25 @@ $signal.trigger();
|
|
|
48
51
|
### Creating Reactive State
|
|
49
52
|
|
|
50
53
|
```ts
|
|
51
|
-
import { state, effect } from 'picoflow';
|
|
54
|
+
import { state, effect } from '@ersbeth/picoflow';
|
|
52
55
|
|
|
53
56
|
const $count = state(0);
|
|
54
57
|
|
|
55
|
-
const $effect = effect((
|
|
58
|
+
const $effect = effect((t) => {
|
|
56
59
|
// Automatically tracks $count
|
|
57
|
-
console.log('Count changed:', get(
|
|
60
|
+
console.log('Count changed:', $count.get(t));
|
|
58
61
|
});
|
|
59
62
|
|
|
60
63
|
// Update the state
|
|
61
64
|
$count.set(42);
|
|
62
65
|
|
|
63
|
-
// LOG ->
|
|
66
|
+
// LOG -> Count changed: 42
|
|
64
67
|
```
|
|
65
68
|
|
|
66
69
|
### Creating an Asynchronous Resource
|
|
67
70
|
|
|
68
71
|
```ts
|
|
69
|
-
import { resource, effect } from 'picoflow';
|
|
72
|
+
import { resource, effect } from '@ersbeth/picoflow';
|
|
70
73
|
|
|
71
74
|
async function fetchData() {
|
|
72
75
|
const response = await fetch('https://api.example.com/data');
|
|
@@ -76,8 +79,8 @@ async function fetchData() {
|
|
|
76
79
|
const $data = resource(fetchData, {});
|
|
77
80
|
|
|
78
81
|
// Create an effect to watch for updates
|
|
79
|
-
const $effect = effect((
|
|
80
|
-
console.log('Resource updated:', get(
|
|
82
|
+
const $effect = effect((t) => {
|
|
83
|
+
console.log('Resource updated:', $data.get(t));
|
|
81
84
|
});
|
|
82
85
|
|
|
83
86
|
// Later, you can trigger a new fetch
|
|
@@ -87,7 +90,7 @@ $data.fetch();
|
|
|
87
90
|
### Creating a Reactive Stream
|
|
88
91
|
|
|
89
92
|
```ts
|
|
90
|
-
import { stream, effect } from 'picoflow';
|
|
93
|
+
import { stream, effect } from '@ersbeth/picoflow';
|
|
91
94
|
|
|
92
95
|
const $ticker = stream(
|
|
93
96
|
(set) => {
|
|
@@ -98,26 +101,26 @@ const $ticker = stream(
|
|
|
98
101
|
Date.now()
|
|
99
102
|
);
|
|
100
103
|
|
|
101
|
-
const $effect = effect((
|
|
102
|
-
console.log('Current time:', get(
|
|
104
|
+
const $effect = effect((t) => {
|
|
105
|
+
console.log('Current time:', $ticker.get(t));
|
|
103
106
|
});
|
|
104
107
|
```
|
|
105
108
|
|
|
106
109
|
### Creating a Derived Value
|
|
107
110
|
|
|
108
111
|
```ts
|
|
109
|
-
import { state, derivation, effect } from 'picoflow';
|
|
112
|
+
import { state, derivation, effect } from '@ersbeth/picoflow';
|
|
110
113
|
|
|
111
114
|
const $a = state(10);
|
|
112
115
|
const $b = state(20);
|
|
113
116
|
|
|
114
117
|
// Create a derived value that sums $a and $b.
|
|
115
|
-
const $sum = derivation((
|
|
116
|
-
return get(
|
|
118
|
+
const $sum = derivation((t) => {
|
|
119
|
+
return $a.get(t) + $b.get(t);
|
|
117
120
|
});
|
|
118
121
|
|
|
119
|
-
const $effect = effect((
|
|
120
|
-
console.log('Sum:', get(
|
|
122
|
+
const $effect = effect((t) => {
|
|
123
|
+
console.log('Sum:', $sum.get(t));
|
|
121
124
|
});
|
|
122
125
|
|
|
123
126
|
// Update a dependency to see the derivation update.
|
|
@@ -129,12 +132,12 @@ $a.set(15);
|
|
|
129
132
|
Reactive maps allow fine-grained tracking of collection updates.
|
|
130
133
|
|
|
131
134
|
```ts
|
|
132
|
-
import { map, effect } from 'picoflow';
|
|
135
|
+
import { map, effect } from '@ersbeth/picoflow';
|
|
133
136
|
|
|
134
137
|
const $map = map({ foo: 'bar' });
|
|
135
138
|
|
|
136
|
-
const $effect = effect((
|
|
137
|
-
console.log('Map updated:', get(
|
|
139
|
+
const $effect = effect((t) => {
|
|
140
|
+
console.log('Map updated:', $map.get(t));
|
|
138
141
|
});
|
|
139
142
|
|
|
140
143
|
// Update the map to trigger updates
|
|
@@ -142,9 +145,43 @@ $map.setAt('baz', 'qux');
|
|
|
142
145
|
$map.delete('foo');
|
|
143
146
|
```
|
|
144
147
|
|
|
145
|
-
|
|
148
|
+
### Non-Reactive Reads
|
|
149
|
+
|
|
150
|
+
Sometimes you need to read a value without creating a dependency. Use `pick()` for this:
|
|
151
|
+
|
|
152
|
+
```ts
|
|
153
|
+
import { state, signal, effect } from '@ersbeth/picoflow';
|
|
154
|
+
|
|
155
|
+
const $data = state({ count: 0 });
|
|
156
|
+
const $trigger = signal();
|
|
157
|
+
|
|
158
|
+
const $effect = effect((t) => {
|
|
159
|
+
// React to $trigger changes only
|
|
160
|
+
$trigger.watch(t);
|
|
161
|
+
|
|
162
|
+
// Read $data without creating a dependency
|
|
163
|
+
const snapshot = $data.pick();
|
|
164
|
+
console.log('Triggered! Current data:', snapshot);
|
|
165
|
+
});
|
|
166
|
+
|
|
167
|
+
$data.set({ count: 1 }); // Does NOT trigger the effect
|
|
168
|
+
$trigger.trigger(); // Triggers the effect, logs: { count: 1 }
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
## Documentation
|
|
172
|
+
|
|
173
|
+
For comprehensive guides and API documentation, visit:
|
|
174
|
+
|
|
175
|
+
- **[Getting Started](docs/guide/getting-started.md)** - Quick introduction to PicoFlow
|
|
176
|
+
- **[API Reference](docs/api/index.md)** - Complete API documentation
|
|
177
|
+
|
|
178
|
+
Or run the documentation locally:
|
|
179
|
+
|
|
180
|
+
```bash
|
|
181
|
+
pnpm docs:dev
|
|
182
|
+
```
|
|
146
183
|
|
|
147
|
-
|
|
184
|
+
Then open [http://localhost:5173](http://localhost:5173) in your browser.
|
|
148
185
|
|
|
149
186
|
## License
|
|
150
187
|
|
package/biome.json
CHANGED
|
@@ -1,34 +1,34 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
2
|
+
"$schema": "https://biomejs.dev/schemas/2.3.8/schema.json",
|
|
3
|
+
"vcs": {
|
|
4
|
+
"enabled": true,
|
|
5
|
+
"clientKind": "git",
|
|
6
|
+
"useIgnoreFile": true
|
|
7
|
+
},
|
|
8
|
+
"files": {
|
|
9
|
+
"includes": ["**", "!!**/dist"]
|
|
10
|
+
},
|
|
11
|
+
"formatter": {
|
|
12
|
+
"enabled": true,
|
|
13
|
+
"indentStyle": "tab"
|
|
14
|
+
},
|
|
15
|
+
"linter": {
|
|
16
|
+
"enabled": true,
|
|
17
|
+
"rules": {
|
|
18
|
+
"recommended": true
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"javascript": {
|
|
22
|
+
"formatter": {
|
|
23
|
+
"quoteStyle": "double"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"assist": {
|
|
27
|
+
"enabled": true,
|
|
28
|
+
"actions": {
|
|
29
|
+
"source": {
|
|
30
|
+
"organizeImports": "on"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
34
|
}
|