Setup system-svelte
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
Kieran 2023-09-17 15:02:07 +01:00
parent 1a6df18e8b
commit 4220ae5bdc
Signed by: Kieran
GPG Key ID: DE71CEB3925BE941
7 changed files with 193 additions and 11 deletions

View File

@ -0,0 +1,3 @@
## @snort/system-svelte
Svelte hooks for @snort/system

View File

@ -0,0 +1,25 @@
{
"name": "@snort/system-svelte",
"version": "1.0.0",
"description": "Svelte functions for @snort/system",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"repository": "https://git.v0l.io/Kieran/snort",
"author": "Kieran",
"license": "MIT",
"scripts": {
"build": "rm -rf dist && tsc"
},
"files": [
"src",
"dist"
],
"dependencies": {
"@snort/shared": "^1.0.6",
"@snort/system": "^1.0.21",
"svelte": "^4.2.0"
},
"devDependencies": {
"typescript": "^5.2.2"
}
}

View File

@ -0,0 +1 @@
export * from "./request-builder";

View File

@ -0,0 +1,20 @@
import { type NoteStore, type RequestBuilder, type StoreSnapshot, type SystemInterface } from "@snort/system";
import { getContext } from "svelte";
export function useRequestBuilder<T extends NoteStore>(type: new () => T, rb: RequestBuilder) {
const system = getContext("snort") as SystemInterface;
type TSnap = StoreSnapshot<ReturnType<T["getSnapshotData"]>>;
return {
subscribe: (set: (value: TSnap) => void) => {
const q = system.Query(type, rb);
q.uncancel();
const release = q.feed.hook(() => {
set(q.feed.snapshot as TSnap);
});
return () => {
q.cancel();
release();
};
},
};
}

View File

@ -0,0 +1,18 @@
{
"compilerOptions": {
"baseUrl": "src",
"target": "ES2020",
"moduleResolution": "node",
"esModuleInterop": true,
"noImplicitOverride": true,
"module": "CommonJS",
"strict": true,
"declaration": true,
"declarationMap": true,
"inlineSourceMap": true,
"outDir": "dist",
"skipLibCheck": true
},
"include": ["src/**/*.ts"],
"files": ["src/index.ts"]
}

View File

@ -87,7 +87,7 @@ export class RequestBuilder {
this.#builders.push(ret);
return ret;
}
withOptions(opt: RequestBuilderOptions) {
this.#options = {
...this.#options,

135
yarn.lock
View File

@ -12,7 +12,7 @@ __metadata:
languageName: node
linkType: hard
"@ampproject/remapping@npm:^2.2.0":
"@ampproject/remapping@npm:^2.2.0, @ampproject/remapping@npm:^2.2.1":
version: 2.2.1
resolution: "@ampproject/remapping@npm:2.2.1"
dependencies:
@ -1984,7 +1984,7 @@ __metadata:
languageName: node
linkType: hard
"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14":
"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15":
version: 1.4.15
resolution: "@jridgewell/sourcemap-codec@npm:1.4.15"
checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8
@ -2809,7 +2809,7 @@ __metadata:
languageName: unknown
linkType: soft
"@snort/shared@^1.0.5, @snort/shared@workspace:*, @snort/shared@workspace:packages/shared":
"@snort/shared@^1.0.6, @snort/shared@workspace:*, @snort/shared@workspace:packages/shared":
version: 0.0.0-use.local
resolution: "@snort/shared@workspace:packages/shared"
dependencies:
@ -2834,15 +2834,26 @@ __metadata:
version: 0.0.0-use.local
resolution: "@snort/system-react@workspace:packages/system-react"
dependencies:
"@snort/shared": ^1.0.5
"@snort/system": ^1.0.18
"@snort/shared": ^1.0.6
"@snort/system": ^1.0.21
"@types/react": ^18.2.14
react: ^18.2.0
typescript: ^5.2.2
languageName: unknown
linkType: soft
"@snort/system@^1.0.18, @snort/system@workspace:*, @snort/system@workspace:packages/system":
"@snort/system-svelte@workspace:packages/system-svelte":
version: 0.0.0-use.local
resolution: "@snort/system-svelte@workspace:packages/system-svelte"
dependencies:
"@snort/shared": ^1.0.6
"@snort/system": ^1.0.21
svelte: ^4.2.0
typescript: ^5.2.2
languageName: unknown
linkType: soft
"@snort/system@^1.0.21, @snort/system@workspace:*, @snort/system@workspace:packages/system":
version: 0.0.0-use.local
resolution: "@snort/system@workspace:packages/system"
dependencies:
@ -2851,7 +2862,7 @@ __metadata:
"@noble/hashes": ^1.3.2
"@peculiar/webcrypto": ^1.4.3
"@scure/base": ^1.1.2
"@snort/shared": ^1.0.5
"@snort/shared": ^1.0.6
"@stablelib/xchacha20": ^1.0.1
"@types/debug": ^4.1.8
"@types/jest": ^29.5.1
@ -3241,7 +3252,7 @@ __metadata:
languageName: node
linkType: hard
"@types/estree@npm:*, @types/estree@npm:^1.0.0":
"@types/estree@npm:*, @types/estree@npm:^1.0.0, @types/estree@npm:^1.0.1":
version: 1.0.1
resolution: "@types/estree@npm:1.0.1"
checksum: e9aa175eacb797216fafce4d41e8202c7a75555bc55232dee0f9903d7171f8f19f0ae7d5191bb1a88cb90e65468be508c0df850a9fb81b4433b293a5a749899d
@ -4276,7 +4287,7 @@ __metadata:
languageName: node
linkType: hard
"acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.4.1, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0":
"acorn@npm:^8.0.4, acorn@npm:^8.1.0, acorn@npm:^8.10.0, acorn@npm:^8.4.1, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0":
version: 8.10.0
resolution: "acorn@npm:8.10.0"
bin:
@ -4502,6 +4513,15 @@ __metadata:
languageName: node
linkType: hard
"aria-query@npm:^5.3.0":
version: 5.3.0
resolution: "aria-query@npm:5.3.0"
dependencies:
dequal: ^2.0.3
checksum: 305bd73c76756117b59aba121d08f413c7ff5e80fa1b98e217a3443fcddb9a232ee790e24e432b59ae7625aebcf4c47cb01c2cac872994f0b426f5bdfcd96ba9
languageName: node
linkType: hard
"array-buffer-byte-length@npm:^1.0.0":
version: 1.0.0
resolution: "array-buffer-byte-length@npm:1.0.0"
@ -4632,6 +4652,15 @@ __metadata:
languageName: node
linkType: hard
"axobject-query@npm:^3.2.1":
version: 3.2.1
resolution: "axobject-query@npm:3.2.1"
dependencies:
dequal: ^2.0.3
checksum: a94047e702b57c91680e6a952ec4a1aaa2cfd0d80ead76bc8c954202980d8c51968a6ea18b4d8010e8e2cf95676533d8022a8ebba9abc1dfe25686721df26fd2
languageName: node
linkType: hard
"babel-jest@npm:^29.6.4":
version: 29.6.4
resolution: "babel-jest@npm:29.6.4"
@ -5396,6 +5425,19 @@ __metadata:
languageName: node
linkType: hard
"code-red@npm:^1.0.3":
version: 1.0.4
resolution: "code-red@npm:1.0.4"
dependencies:
"@jridgewell/sourcemap-codec": ^1.4.15
"@types/estree": ^1.0.1
acorn: ^8.10.0
estree-walker: ^3.0.3
periscopic: ^3.1.0
checksum: ca534d9daf0fb50f8180dd5cb2de9f670264584d1132e00743967c626888a253639023ae147687201b50d25e2fa31c2d100908d7a9286721c47e05c0079b64bd
languageName: node
linkType: hard
"collect-v8-coverage@npm:^1.0.0":
version: 1.0.2
resolution: "collect-v8-coverage@npm:1.0.2"
@ -5772,7 +5814,7 @@ __metadata:
languageName: node
linkType: hard
"css-tree@npm:^2.2.1":
"css-tree@npm:^2.2.1, css-tree@npm:^2.3.1":
version: 2.3.1
resolution: "css-tree@npm:2.3.1"
dependencies:
@ -6093,6 +6135,13 @@ __metadata:
languageName: node
linkType: hard
"dequal@npm:^2.0.3":
version: 2.0.3
resolution: "dequal@npm:2.0.3"
checksum: 8679b850e1a3d0ebbc46ee780d5df7b478c23f335887464023a631d1b9af051ad4a6595a44220f9ff8ff95a8ddccf019b5ad778a976fd7bbf77383d36f412f90
languageName: node
linkType: hard
"destroy@npm:1.2.0":
version: 1.2.0
resolution: "destroy@npm:1.2.0"
@ -6734,6 +6783,15 @@ __metadata:
languageName: node
linkType: hard
"estree-walker@npm:^3.0.0, estree-walker@npm:^3.0.3":
version: 3.0.3
resolution: "estree-walker@npm:3.0.3"
dependencies:
"@types/estree": ^1.0.0
checksum: a65728d5727b71de172c5df323385755a16c0fdab8234dc756c3854cfee343261ddfbb72a809a5660fac8c75d960bb3e21aa898c2d7e9b19bb298482ca58a3af
languageName: node
linkType: hard
"esutils@npm:^2.0.2":
version: 2.0.3
resolution: "esutils@npm:2.0.3"
@ -8236,6 +8294,15 @@ __metadata:
languageName: node
linkType: hard
"is-reference@npm:^3.0.0, is-reference@npm:^3.0.1":
version: 3.0.2
resolution: "is-reference@npm:3.0.2"
dependencies:
"@types/estree": "*"
checksum: ac3bf5626fe9d0afbd7454760d73c47f16b9f471401b9749721ad3b66f0a39644390382acf88ca9d029c95782c1e2ec65662855e3ba91acf52d82231247a7fd3
languageName: node
linkType: hard
"is-regex@npm:^1.1.4":
version: 1.1.4
resolution: "is-regex@npm:1.1.4"
@ -9286,6 +9353,13 @@ __metadata:
languageName: node
linkType: hard
"locate-character@npm:^3.0.0":
version: 3.0.0
resolution: "locate-character@npm:3.0.0"
checksum: 2d9e9f45e2dce7464c016ed6d81ebc938bc9c656392f7d6858308ab6fdaa57bcd4b6b479291d49e7db4047e3f321ddadbe78355f349b7974b203f19674e277cc
languageName: node
linkType: hard
"locate-path@npm:^5.0.0":
version: 5.0.0
resolution: "locate-path@npm:5.0.0"
@ -9435,6 +9509,15 @@ __metadata:
languageName: node
linkType: hard
"magic-string@npm:^0.30.0":
version: 0.30.3
resolution: "magic-string@npm:0.30.3"
dependencies:
"@jridgewell/sourcemap-codec": ^1.4.15
checksum: a5a9ddf9bd3bf49a2de1048bf358464f1bda7b3cc1311550f4a0ba8f81a4070e25445d53a5ee28850161336f1bff3cf28aa3320c6b4aeff45ce3e689f300b2f3
languageName: node
linkType: hard
"make-dir@npm:^4.0.0":
version: 4.0.0
resolution: "make-dir@npm:4.0.0"
@ -10831,6 +10914,17 @@ __metadata:
languageName: node
linkType: hard
"periscopic@npm:^3.1.0":
version: 3.1.0
resolution: "periscopic@npm:3.1.0"
dependencies:
"@types/estree": ^1.0.0
estree-walker: ^3.0.0
is-reference: ^3.0.0
checksum: 2153244352e58a0d76e7e8d9263e66fe74509495f809af388da20045fb30aa3e93f2f94468dc0b9166ecf206fcfc0d73d2c7641c6fbedc07b1de858b710142cb
languageName: node
linkType: hard
"picocolors@npm:^1.0.0":
version: 1.0.0
resolution: "picocolors@npm:1.0.0"
@ -13016,6 +13110,27 @@ __metadata:
languageName: node
linkType: hard
"svelte@npm:^4.2.0":
version: 4.2.0
resolution: "svelte@npm:4.2.0"
dependencies:
"@ampproject/remapping": ^2.2.1
"@jridgewell/sourcemap-codec": ^1.4.15
"@jridgewell/trace-mapping": ^0.3.18
acorn: ^8.9.0
aria-query: ^5.3.0
axobject-query: ^3.2.1
code-red: ^1.0.3
css-tree: ^2.3.1
estree-walker: ^3.0.3
is-reference: ^3.0.1
locate-character: ^3.0.0
magic-string: ^0.30.0
periscopic: ^3.1.0
checksum: 2555f222c210a751fff85596adc5a1f0e1ebe7e0499ec7c35b5e8111200271ba0cd0cedeef637dc66f43f4866ad17240f89187bfbaf2ca8fff9a522fc7c4369f
languageName: node
linkType: hard
"svgo@npm:^3.0.2":
version: 3.0.2
resolution: "svgo@npm:3.0.2"