React hooks for atproto.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: init more defaults

serenity 65da33e9 6b207dfe

+786 -12
+7
.editorconfig
··· 1 + root = true 2 + 3 + [*] 4 + end_of_line = lf 5 + insert_final_newline = true 6 + indent_style = space 7 + indent_size = 4
+2
.gitignore
··· 1 + node_modules/ 2 + dist/
+18
default.nix
··· 1 + { lib, buildNpmPackage }: 2 + 3 + buildNpmPackage { 4 + pname = "use-atproto"; 5 + version = "0.0.1"; 6 + 7 + src = ./.; 8 + 9 + npmDepsHash = lib.fakeHash; 10 + 11 + meta = { 12 + description = "React hooks for atproto."; 13 + homepage = "https://tangled.org/sylfr.dev/use-atproto"; 14 + license = lib.licenses.mit; 15 + maintainers = with lib.maintainers; [ ]; 16 + mainProgram = "example"; 17 + }; 18 + }
+27
flake.lock
··· 1 + { 2 + "nodes": { 3 + "nixpkgs": { 4 + "locked": { 5 + "lastModified": 1775064974, 6 + "narHash": "sha256-fp7+8MzxHrIixIIVvyORI2XpqpQnxf8NodmEHy8rczg=", 7 + "owner": "nixos", 8 + "repo": "nixpkgs", 9 + "rev": "6ebfbc38bdc6b22822a6f991f2d922306f33cfbc", 10 + "type": "github" 11 + }, 12 + "original": { 13 + "owner": "nixos", 14 + "ref": "nixpkgs-unstable", 15 + "repo": "nixpkgs", 16 + "type": "github" 17 + } 18 + }, 19 + "root": { 20 + "inputs": { 21 + "nixpkgs": "nixpkgs" 22 + } 23 + } 24 + }, 25 + "root": "root", 26 + "version": 7 27 + }
+29
flake.nix
··· 1 + { 2 + description = "Alternative frontend client for Tangled"; 3 + 4 + inputs = { 5 + nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; 6 + }; 7 + 8 + outputs = 9 + { self, nixpkgs }: 10 + let 11 + forAllSystems = 12 + function: 13 + nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed ( 14 + system: function nixpkgs.legacyPackages.${system} 15 + ); 16 + in 17 + { 18 + packages = forAllSystems (pkgs: { 19 + example = pkgs.callPackage ./default.nix { }; 20 + default = self.packages.${pkgs.stdenv.hostPlatform.system}.example; 21 + }); 22 + 23 + devShells = forAllSystems (pkgs: { 24 + default = pkgs.callPackage ./shell.nix { }; 25 + }); 26 + 27 + overlays.default = final: _: { example = final.callPackage ./default.nix { }; }; 28 + }; 29 + }
+26 -12
package.json
··· 1 1 { 2 - "name": "use-atproto", 3 - "version": "0.0.1", 4 - "description": "React hooks for atproto.", 5 - "type": "module", 6 - "main": "index.js", 7 - "scripts": { 8 - "test": "echo \"Error: no test specified\" && exit 1" 9 - }, 10 - "keywords": [], 11 - "author": "Sylfr Serenity Tan", 12 - "license": "MIT", 13 - "packageManager": "pnpm@10.28.0" 2 + "name": "use-atproto", 3 + "version": "0.0.1", 4 + "description": "React hooks for atproto.", 5 + "type": "module", 6 + "main": "index.js", 7 + "scripts": { 8 + "build": "tsdown", 9 + "dev": "tsdown --watch", 10 + "prepublishOnly": "pnpm build" 11 + }, 12 + "keywords": [], 13 + "author": "Sylfr Serenity Tan", 14 + "license": "MIT", 15 + "packageManager": "pnpm@10.28.0", 16 + "devDependencies": { 17 + "tsdown": "^0.21.7", 18 + "typescript": "^6.0.2" 19 + }, 20 + "types": "./dist/index.d.ts", 21 + "exports": { 22 + ".": { 23 + "types": "./dist/index.d.ts", 24 + "import": "./dist/index.mjs", 25 + "require": "./dist/index.cjs" 26 + } 27 + } 14 28 }
+611
pnpm-lock.yaml
··· 1 + lockfileVersion: '9.0' 2 + 3 + settings: 4 + autoInstallPeers: true 5 + excludeLinksFromLockfile: false 6 + 7 + importers: 8 + 9 + .: 10 + devDependencies: 11 + tsdown: 12 + specifier: ^0.21.7 13 + version: 0.21.7(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1)(typescript@6.0.2) 14 + typescript: 15 + specifier: ^6.0.2 16 + version: 6.0.2 17 + 18 + packages: 19 + 20 + '@babel/generator@8.0.0-rc.3': 21 + resolution: {integrity: sha512-em37/13/nR320G4jab/nIIHZgc2Wz2y/D39lxnTyxB4/D/omPQncl/lSdlnJY1OhQcRGugTSIF2l/69o31C9dA==} 22 + engines: {node: ^20.19.0 || >=22.12.0} 23 + 24 + '@babel/helper-string-parser@8.0.0-rc.3': 25 + resolution: {integrity: sha512-AmwWFx1m8G/a5cXkxLxTiWl+YEoWuoFLUCwqMlNuWO1tqAYITQAbCRPUkyBHv1VOFgfjVOqEj6L3u15J5ZCzTA==} 26 + engines: {node: ^20.19.0 || >=22.12.0} 27 + 28 + '@babel/helper-validator-identifier@8.0.0-rc.3': 29 + resolution: {integrity: sha512-8AWCJ2VJJyDFlGBep5GpaaQ9AAaE/FjAcrqI7jyssYhtL7WGV0DOKpJsQqM037xDbpRLHXsY8TwU7zDma7coOw==} 30 + engines: {node: ^20.19.0 || >=22.12.0} 31 + 32 + '@babel/parser@8.0.0-rc.3': 33 + resolution: {integrity: sha512-B20dvP3MfNc/XS5KKCHy/oyWl5IA6Cn9YjXRdDlCjNmUFrjvLXMNUfQq/QUy9fnG2gYkKKcrto2YaF9B32ToOQ==} 34 + engines: {node: ^20.19.0 || >=22.12.0} 35 + hasBin: true 36 + 37 + '@babel/types@8.0.0-rc.3': 38 + resolution: {integrity: sha512-mOm5ZrYmphGfqVWoH5YYMTITb3cDXsFgmvFlvkvWDMsR9X8RFnt7a0Wb6yNIdoFsiMO9WjYLq+U/FMtqIYAF8Q==} 39 + engines: {node: ^20.19.0 || >=22.12.0} 40 + 41 + '@emnapi/core@1.9.1': 42 + resolution: {integrity: sha512-mukuNALVsoix/w1BJwFzwXBN/dHeejQtuVzcDsfOEsdpCumXb/E9j8w11h5S54tT1xhifGfbbSm/ICrObRb3KA==} 43 + 44 + '@emnapi/runtime@1.9.1': 45 + resolution: {integrity: sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==} 46 + 47 + '@emnapi/wasi-threads@1.2.0': 48 + resolution: {integrity: sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==} 49 + 50 + '@jridgewell/gen-mapping@0.3.13': 51 + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} 52 + 53 + '@jridgewell/resolve-uri@3.1.2': 54 + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 55 + engines: {node: '>=6.0.0'} 56 + 57 + '@jridgewell/sourcemap-codec@1.5.5': 58 + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} 59 + 60 + '@jridgewell/trace-mapping@0.3.31': 61 + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} 62 + 63 + '@napi-rs/wasm-runtime@1.1.2': 64 + resolution: {integrity: sha512-sNXv5oLJ7ob93xkZ1XnxisYhGYXfaG9f65/ZgYuAu3qt7b3NadcOEhLvx28hv31PgX8SZJRYrAIPQilQmFpLVw==} 65 + peerDependencies: 66 + '@emnapi/core': ^1.7.1 67 + '@emnapi/runtime': ^1.7.1 68 + 69 + '@oxc-project/types@0.122.0': 70 + resolution: {integrity: sha512-oLAl5kBpV4w69UtFZ9xqcmTi+GENWOcPF7FCrczTiBbmC0ibXxCwyvZGbO39rCVEuLGAZM84DH0pUIyyv/YJzA==} 71 + 72 + '@quansync/fs@1.0.0': 73 + resolution: {integrity: sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==} 74 + 75 + '@rolldown/binding-android-arm64@1.0.0-rc.12': 76 + resolution: {integrity: sha512-pv1y2Fv0JybcykuiiD3qBOBdz6RteYojRFY1d+b95WVuzx211CRh+ytI/+9iVyWQ6koTh5dawe4S/yRfOFjgaA==} 77 + engines: {node: ^20.19.0 || >=22.12.0} 78 + cpu: [arm64] 79 + os: [android] 80 + 81 + '@rolldown/binding-darwin-arm64@1.0.0-rc.12': 82 + resolution: {integrity: sha512-cFYr6zTG/3PXXF3pUO+umXxt1wkRK/0AYT8lDwuqvRC+LuKYWSAQAQZjCWDQpAH172ZV6ieYrNnFzVVcnSflAg==} 83 + engines: {node: ^20.19.0 || >=22.12.0} 84 + cpu: [arm64] 85 + os: [darwin] 86 + 87 + '@rolldown/binding-darwin-x64@1.0.0-rc.12': 88 + resolution: {integrity: sha512-ZCsYknnHzeXYps0lGBz8JrF37GpE9bFVefrlmDrAQhOEi4IOIlcoU1+FwHEtyXGx2VkYAvhu7dyBf75EJQffBw==} 89 + engines: {node: ^20.19.0 || >=22.12.0} 90 + cpu: [x64] 91 + os: [darwin] 92 + 93 + '@rolldown/binding-freebsd-x64@1.0.0-rc.12': 94 + resolution: {integrity: sha512-dMLeprcVsyJsKolRXyoTH3NL6qtsT0Y2xeuEA8WQJquWFXkEC4bcu1rLZZSnZRMtAqwtrF/Ib9Ddtpa/Gkge9Q==} 95 + engines: {node: ^20.19.0 || >=22.12.0} 96 + cpu: [x64] 97 + os: [freebsd] 98 + 99 + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.12': 100 + resolution: {integrity: sha512-YqWjAgGC/9M1lz3GR1r1rP79nMgo3mQiiA+Hfo+pvKFK1fAJ1bCi0ZQVh8noOqNacuY1qIcfyVfP6HoyBRZ85Q==} 101 + engines: {node: ^20.19.0 || >=22.12.0} 102 + cpu: [arm] 103 + os: [linux] 104 + 105 + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.12': 106 + resolution: {integrity: sha512-/I5AS4cIroLpslsmzXfwbe5OmWvSsrFuEw3mwvbQ1kDxJ822hFHIx+vsN/TAzNVyepI/j/GSzrtCIwQPeKCLIg==} 107 + engines: {node: ^20.19.0 || >=22.12.0} 108 + cpu: [arm64] 109 + os: [linux] 110 + 111 + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.12': 112 + resolution: {integrity: sha512-V6/wZztnBqlx5hJQqNWwFdxIKN0m38p8Jas+VoSfgH54HSj9tKTt1dZvG6JRHcjh6D7TvrJPWFGaY9UBVOaWPw==} 113 + engines: {node: ^20.19.0 || >=22.12.0} 114 + cpu: [arm64] 115 + os: [linux] 116 + 117 + '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.12': 118 + resolution: {integrity: sha512-AP3E9BpcUYliZCxa3w5Kwj9OtEVDYK6sVoUzy4vTOJsjPOgdaJZKFmN4oOlX0Wp0RPV2ETfmIra9x1xuayFB7g==} 119 + engines: {node: ^20.19.0 || >=22.12.0} 120 + cpu: [ppc64] 121 + os: [linux] 122 + 123 + '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.12': 124 + resolution: {integrity: sha512-nWwpvUSPkoFmZo0kQazZYOrT7J5DGOJ/+QHHzjvNlooDZED8oH82Yg67HvehPPLAg5fUff7TfWFHQS8IV1n3og==} 125 + engines: {node: ^20.19.0 || >=22.12.0} 126 + cpu: [s390x] 127 + os: [linux] 128 + 129 + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.12': 130 + resolution: {integrity: sha512-RNrafz5bcwRy+O9e6P8Z/OCAJW/A+qtBczIqVYwTs14pf4iV1/+eKEjdOUta93q2TsT/FI0XYDP3TCky38LMAg==} 131 + engines: {node: ^20.19.0 || >=22.12.0} 132 + cpu: [x64] 133 + os: [linux] 134 + 135 + '@rolldown/binding-linux-x64-musl@1.0.0-rc.12': 136 + resolution: {integrity: sha512-Jpw/0iwoKWx3LJ2rc1yjFrj+T7iHZn2JDg1Yny1ma0luviFS4mhAIcd1LFNxK3EYu3DHWCps0ydXQ5i/rrJ2ig==} 137 + engines: {node: ^20.19.0 || >=22.12.0} 138 + cpu: [x64] 139 + os: [linux] 140 + 141 + '@rolldown/binding-openharmony-arm64@1.0.0-rc.12': 142 + resolution: {integrity: sha512-vRugONE4yMfVn0+7lUKdKvN4D5YusEiPilaoO2sgUWpCvrncvWgPMzK00ZFFJuiPgLwgFNP5eSiUlv2tfc+lpA==} 143 + engines: {node: ^20.19.0 || >=22.12.0} 144 + cpu: [arm64] 145 + os: [openharmony] 146 + 147 + '@rolldown/binding-wasm32-wasi@1.0.0-rc.12': 148 + resolution: {integrity: sha512-ykGiLr/6kkiHc0XnBfmFJuCjr5ZYKKofkx+chJWDjitX+KsJuAmrzWhwyOMSHzPhzOHOy7u9HlFoa5MoAOJ/Zg==} 149 + engines: {node: '>=14.0.0'} 150 + cpu: [wasm32] 151 + 152 + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.12': 153 + resolution: {integrity: sha512-5eOND4duWkwx1AzCxadcOrNeighiLwMInEADT0YM7xeEOOFcovWZCq8dadXgcRHSf3Ulh1kFo/qvzoFiCLOL1Q==} 154 + engines: {node: ^20.19.0 || >=22.12.0} 155 + cpu: [arm64] 156 + os: [win32] 157 + 158 + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.12': 159 + resolution: {integrity: sha512-PyqoipaswDLAZtot351MLhrlrh6lcZPo2LSYE+VDxbVk24LVKAGOuE4hb8xZQmrPAuEtTZW8E6D2zc5EUZX4Lw==} 160 + engines: {node: ^20.19.0 || >=22.12.0} 161 + cpu: [x64] 162 + os: [win32] 163 + 164 + '@rolldown/pluginutils@1.0.0-rc.12': 165 + resolution: {integrity: sha512-HHMwmarRKvoFsJorqYlFeFRzXZqCt2ETQlEDOb9aqssrnVBB1/+xgTGtuTrIk5vzLNX1MjMtTf7W9z3tsSbrxw==} 166 + 167 + '@tybys/wasm-util@0.10.1': 168 + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} 169 + 170 + '@types/estree@1.0.8': 171 + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} 172 + 173 + '@types/jsesc@2.5.1': 174 + resolution: {integrity: sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==} 175 + 176 + ansis@4.2.0: 177 + resolution: {integrity: sha512-HqZ5rWlFjGiV0tDm3UxxgNRqsOTniqoKZu0pIAfh7TZQMGuZK+hH0drySty0si0QXj1ieop4+SkSfPZBPPkHig==} 178 + engines: {node: '>=14'} 179 + 180 + ast-kit@3.0.0-beta.1: 181 + resolution: {integrity: sha512-trmleAnZ2PxN/loHWVhhx1qeOHSRXq4TDsBBxq3GqeJitfk3+jTQ+v/C1km/KYq9M7wKqCewMh+/NAvVH7m+bw==} 182 + engines: {node: '>=20.19.0'} 183 + 184 + birpc@4.0.0: 185 + resolution: {integrity: sha512-LShSxJP0KTmd101b6DRyGBj57LZxSDYWKitQNW/mi8GRMvZb078Uf9+pveax1DrVL89vm7mWe+TovdI/UDOuPw==} 186 + 187 + cac@7.0.0: 188 + resolution: {integrity: sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==} 189 + engines: {node: '>=20.19.0'} 190 + 191 + defu@6.1.6: 192 + resolution: {integrity: sha512-f8mefEW4WIVg4LckePx3mALjQSPQgFlg9U8yaPdlsbdYcHQyj9n2zL2LJEA52smeYxOvmd/nB7TpMtHGMTHcug==} 193 + 194 + dts-resolver@2.1.3: 195 + resolution: {integrity: sha512-bihc7jPC90VrosXNzK0LTE2cuLP6jr0Ro8jk+kMugHReJVLIpHz/xadeq3MhuwyO4TD4OA3L1Q8pBBFRc08Tsw==} 196 + engines: {node: '>=20.19.0'} 197 + peerDependencies: 198 + oxc-resolver: '>=11.0.0' 199 + peerDependenciesMeta: 200 + oxc-resolver: 201 + optional: true 202 + 203 + empathic@2.0.0: 204 + resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==} 205 + engines: {node: '>=14'} 206 + 207 + estree-walker@3.0.3: 208 + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 209 + 210 + fdir@6.5.0: 211 + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} 212 + engines: {node: '>=12.0.0'} 213 + peerDependencies: 214 + picomatch: ^3 || ^4 215 + peerDependenciesMeta: 216 + picomatch: 217 + optional: true 218 + 219 + get-tsconfig@4.13.7: 220 + resolution: {integrity: sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==} 221 + 222 + hookable@6.1.0: 223 + resolution: {integrity: sha512-ZoKZSJgu8voGK2geJS+6YtYjvIzu9AOM/KZXsBxr83uhLL++e9pEv/dlgwgy3dvHg06kTz6JOh1hk3C8Ceiymw==} 224 + 225 + import-without-cache@0.2.5: 226 + resolution: {integrity: sha512-B6Lc2s6yApwnD2/pMzFh/d5AVjdsDXjgkeJ766FmFuJELIGHNycKRj+l3A39yZPM4CchqNCB4RITEAYB1KUM6A==} 227 + engines: {node: '>=20.19.0'} 228 + 229 + jsesc@3.1.0: 230 + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} 231 + engines: {node: '>=6'} 232 + hasBin: true 233 + 234 + obug@2.1.1: 235 + resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} 236 + 237 + pathe@2.0.3: 238 + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} 239 + 240 + picomatch@4.0.4: 241 + resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==} 242 + engines: {node: '>=12'} 243 + 244 + quansync@1.0.0: 245 + resolution: {integrity: sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==} 246 + 247 + resolve-pkg-maps@1.0.0: 248 + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} 249 + 250 + rolldown-plugin-dts@0.23.2: 251 + resolution: {integrity: sha512-PbSqLawLgZBGcOGT3yqWBGn4cX+wh2nt5FuBGdcMHyOhoukmjbhYAl8NT9sE4U38Cm9tqLOIQeOrvzeayM0DLQ==} 252 + engines: {node: '>=20.19.0'} 253 + peerDependencies: 254 + '@ts-macro/tsc': ^0.3.6 255 + '@typescript/native-preview': '>=7.0.0-dev.20260325.1' 256 + rolldown: ^1.0.0-rc.12 257 + typescript: ^5.0.0 || ^6.0.0 258 + vue-tsc: ~3.2.0 259 + peerDependenciesMeta: 260 + '@ts-macro/tsc': 261 + optional: true 262 + '@typescript/native-preview': 263 + optional: true 264 + typescript: 265 + optional: true 266 + vue-tsc: 267 + optional: true 268 + 269 + rolldown@1.0.0-rc.12: 270 + resolution: {integrity: sha512-yP4USLIMYrwpPHEFB5JGH1uxhcslv6/hL0OyvTuY+3qlOSJvZ7ntYnoWpehBxufkgN0cvXxppuTu5hHa/zPh+A==} 271 + engines: {node: ^20.19.0 || >=22.12.0} 272 + hasBin: true 273 + 274 + semver@7.7.4: 275 + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} 276 + engines: {node: '>=10'} 277 + hasBin: true 278 + 279 + tinyexec@1.0.4: 280 + resolution: {integrity: sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw==} 281 + engines: {node: '>=18'} 282 + 283 + tinyglobby@0.2.15: 284 + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} 285 + engines: {node: '>=12.0.0'} 286 + 287 + tree-kill@1.2.2: 288 + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 289 + hasBin: true 290 + 291 + tsdown@0.21.7: 292 + resolution: {integrity: sha512-ukKIxKQzngkWvOYJAyptudclkm4VQqbjq+9HF5K5qDO8GJsYtMh8gIRwicbnZEnvFPr6mquFwYAVZ8JKt3rY2g==} 293 + engines: {node: '>=20.19.0'} 294 + hasBin: true 295 + peerDependencies: 296 + '@arethetypeswrong/core': ^0.18.1 297 + '@tsdown/css': 0.21.7 298 + '@tsdown/exe': 0.21.7 299 + '@vitejs/devtools': '*' 300 + publint: ^0.3.0 301 + typescript: ^5.0.0 || ^6.0.0 302 + unplugin-unused: ^0.5.0 303 + peerDependenciesMeta: 304 + '@arethetypeswrong/core': 305 + optional: true 306 + '@tsdown/css': 307 + optional: true 308 + '@tsdown/exe': 309 + optional: true 310 + '@vitejs/devtools': 311 + optional: true 312 + publint: 313 + optional: true 314 + typescript: 315 + optional: true 316 + unplugin-unused: 317 + optional: true 318 + 319 + tslib@2.8.1: 320 + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} 321 + 322 + typescript@6.0.2: 323 + resolution: {integrity: sha512-bGdAIrZ0wiGDo5l8c++HWtbaNCWTS4UTv7RaTH/ThVIgjkveJt83m74bBHMJkuCbslY8ixgLBVZJIOiQlQTjfQ==} 324 + engines: {node: '>=14.17'} 325 + hasBin: true 326 + 327 + unconfig-core@7.5.0: 328 + resolution: {integrity: sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==} 329 + 330 + unrun@0.2.34: 331 + resolution: {integrity: sha512-LyaghRBR++r7svhDK6tnDz2XaYHWdneBOA0jbS8wnRsHerI9MFljX4fIiTgbbNbEVzZ0C9P1OjWLLe1OqoaaEw==} 332 + engines: {node: '>=20.19.0'} 333 + hasBin: true 334 + peerDependencies: 335 + synckit: ^0.11.11 336 + peerDependenciesMeta: 337 + synckit: 338 + optional: true 339 + 340 + snapshots: 341 + 342 + '@babel/generator@8.0.0-rc.3': 343 + dependencies: 344 + '@babel/parser': 8.0.0-rc.3 345 + '@babel/types': 8.0.0-rc.3 346 + '@jridgewell/gen-mapping': 0.3.13 347 + '@jridgewell/trace-mapping': 0.3.31 348 + '@types/jsesc': 2.5.1 349 + jsesc: 3.1.0 350 + 351 + '@babel/helper-string-parser@8.0.0-rc.3': {} 352 + 353 + '@babel/helper-validator-identifier@8.0.0-rc.3': {} 354 + 355 + '@babel/parser@8.0.0-rc.3': 356 + dependencies: 357 + '@babel/types': 8.0.0-rc.3 358 + 359 + '@babel/types@8.0.0-rc.3': 360 + dependencies: 361 + '@babel/helper-string-parser': 8.0.0-rc.3 362 + '@babel/helper-validator-identifier': 8.0.0-rc.3 363 + 364 + '@emnapi/core@1.9.1': 365 + dependencies: 366 + '@emnapi/wasi-threads': 1.2.0 367 + tslib: 2.8.1 368 + optional: true 369 + 370 + '@emnapi/runtime@1.9.1': 371 + dependencies: 372 + tslib: 2.8.1 373 + optional: true 374 + 375 + '@emnapi/wasi-threads@1.2.0': 376 + dependencies: 377 + tslib: 2.8.1 378 + optional: true 379 + 380 + '@jridgewell/gen-mapping@0.3.13': 381 + dependencies: 382 + '@jridgewell/sourcemap-codec': 1.5.5 383 + '@jridgewell/trace-mapping': 0.3.31 384 + 385 + '@jridgewell/resolve-uri@3.1.2': {} 386 + 387 + '@jridgewell/sourcemap-codec@1.5.5': {} 388 + 389 + '@jridgewell/trace-mapping@0.3.31': 390 + dependencies: 391 + '@jridgewell/resolve-uri': 3.1.2 392 + '@jridgewell/sourcemap-codec': 1.5.5 393 + 394 + '@napi-rs/wasm-runtime@1.1.2(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1)': 395 + dependencies: 396 + '@emnapi/core': 1.9.1 397 + '@emnapi/runtime': 1.9.1 398 + '@tybys/wasm-util': 0.10.1 399 + optional: true 400 + 401 + '@oxc-project/types@0.122.0': {} 402 + 403 + '@quansync/fs@1.0.0': 404 + dependencies: 405 + quansync: 1.0.0 406 + 407 + '@rolldown/binding-android-arm64@1.0.0-rc.12': 408 + optional: true 409 + 410 + '@rolldown/binding-darwin-arm64@1.0.0-rc.12': 411 + optional: true 412 + 413 + '@rolldown/binding-darwin-x64@1.0.0-rc.12': 414 + optional: true 415 + 416 + '@rolldown/binding-freebsd-x64@1.0.0-rc.12': 417 + optional: true 418 + 419 + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.12': 420 + optional: true 421 + 422 + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.12': 423 + optional: true 424 + 425 + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.12': 426 + optional: true 427 + 428 + '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.12': 429 + optional: true 430 + 431 + '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.12': 432 + optional: true 433 + 434 + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.12': 435 + optional: true 436 + 437 + '@rolldown/binding-linux-x64-musl@1.0.0-rc.12': 438 + optional: true 439 + 440 + '@rolldown/binding-openharmony-arm64@1.0.0-rc.12': 441 + optional: true 442 + 443 + '@rolldown/binding-wasm32-wasi@1.0.0-rc.12(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1)': 444 + dependencies: 445 + '@napi-rs/wasm-runtime': 1.1.2(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1) 446 + transitivePeerDependencies: 447 + - '@emnapi/core' 448 + - '@emnapi/runtime' 449 + optional: true 450 + 451 + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.12': 452 + optional: true 453 + 454 + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.12': 455 + optional: true 456 + 457 + '@rolldown/pluginutils@1.0.0-rc.12': {} 458 + 459 + '@tybys/wasm-util@0.10.1': 460 + dependencies: 461 + tslib: 2.8.1 462 + optional: true 463 + 464 + '@types/estree@1.0.8': {} 465 + 466 + '@types/jsesc@2.5.1': {} 467 + 468 + ansis@4.2.0: {} 469 + 470 + ast-kit@3.0.0-beta.1: 471 + dependencies: 472 + '@babel/parser': 8.0.0-rc.3 473 + estree-walker: 3.0.3 474 + pathe: 2.0.3 475 + 476 + birpc@4.0.0: {} 477 + 478 + cac@7.0.0: {} 479 + 480 + defu@6.1.6: {} 481 + 482 + dts-resolver@2.1.3: {} 483 + 484 + empathic@2.0.0: {} 485 + 486 + estree-walker@3.0.3: 487 + dependencies: 488 + '@types/estree': 1.0.8 489 + 490 + fdir@6.5.0(picomatch@4.0.4): 491 + optionalDependencies: 492 + picomatch: 4.0.4 493 + 494 + get-tsconfig@4.13.7: 495 + dependencies: 496 + resolve-pkg-maps: 1.0.0 497 + 498 + hookable@6.1.0: {} 499 + 500 + import-without-cache@0.2.5: {} 501 + 502 + jsesc@3.1.0: {} 503 + 504 + obug@2.1.1: {} 505 + 506 + pathe@2.0.3: {} 507 + 508 + picomatch@4.0.4: {} 509 + 510 + quansync@1.0.0: {} 511 + 512 + resolve-pkg-maps@1.0.0: {} 513 + 514 + rolldown-plugin-dts@0.23.2(rolldown@1.0.0-rc.12(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1))(typescript@6.0.2): 515 + dependencies: 516 + '@babel/generator': 8.0.0-rc.3 517 + '@babel/helper-validator-identifier': 8.0.0-rc.3 518 + '@babel/parser': 8.0.0-rc.3 519 + '@babel/types': 8.0.0-rc.3 520 + ast-kit: 3.0.0-beta.1 521 + birpc: 4.0.0 522 + dts-resolver: 2.1.3 523 + get-tsconfig: 4.13.7 524 + obug: 2.1.1 525 + picomatch: 4.0.4 526 + rolldown: 1.0.0-rc.12(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1) 527 + optionalDependencies: 528 + typescript: 6.0.2 529 + transitivePeerDependencies: 530 + - oxc-resolver 531 + 532 + rolldown@1.0.0-rc.12(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1): 533 + dependencies: 534 + '@oxc-project/types': 0.122.0 535 + '@rolldown/pluginutils': 1.0.0-rc.12 536 + optionalDependencies: 537 + '@rolldown/binding-android-arm64': 1.0.0-rc.12 538 + '@rolldown/binding-darwin-arm64': 1.0.0-rc.12 539 + '@rolldown/binding-darwin-x64': 1.0.0-rc.12 540 + '@rolldown/binding-freebsd-x64': 1.0.0-rc.12 541 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.12 542 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.12 543 + '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.12 544 + '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.12 545 + '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.12 546 + '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.12 547 + '@rolldown/binding-linux-x64-musl': 1.0.0-rc.12 548 + '@rolldown/binding-openharmony-arm64': 1.0.0-rc.12 549 + '@rolldown/binding-wasm32-wasi': 1.0.0-rc.12(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1) 550 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.12 551 + '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.12 552 + transitivePeerDependencies: 553 + - '@emnapi/core' 554 + - '@emnapi/runtime' 555 + 556 + semver@7.7.4: {} 557 + 558 + tinyexec@1.0.4: {} 559 + 560 + tinyglobby@0.2.15: 561 + dependencies: 562 + fdir: 6.5.0(picomatch@4.0.4) 563 + picomatch: 4.0.4 564 + 565 + tree-kill@1.2.2: {} 566 + 567 + tsdown@0.21.7(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1)(typescript@6.0.2): 568 + dependencies: 569 + ansis: 4.2.0 570 + cac: 7.0.0 571 + defu: 6.1.6 572 + empathic: 2.0.0 573 + hookable: 6.1.0 574 + import-without-cache: 0.2.5 575 + obug: 2.1.1 576 + picomatch: 4.0.4 577 + rolldown: 1.0.0-rc.12(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1) 578 + rolldown-plugin-dts: 0.23.2(rolldown@1.0.0-rc.12(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1))(typescript@6.0.2) 579 + semver: 7.7.4 580 + tinyexec: 1.0.4 581 + tinyglobby: 0.2.15 582 + tree-kill: 1.2.2 583 + unconfig-core: 7.5.0 584 + unrun: 0.2.34(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1) 585 + optionalDependencies: 586 + typescript: 6.0.2 587 + transitivePeerDependencies: 588 + - '@emnapi/core' 589 + - '@emnapi/runtime' 590 + - '@ts-macro/tsc' 591 + - '@typescript/native-preview' 592 + - oxc-resolver 593 + - synckit 594 + - vue-tsc 595 + 596 + tslib@2.8.1: 597 + optional: true 598 + 599 + typescript@6.0.2: {} 600 + 601 + unconfig-core@7.5.0: 602 + dependencies: 603 + '@quansync/fs': 1.0.0 604 + quansync: 1.0.0 605 + 606 + unrun@0.2.34(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1): 607 + dependencies: 608 + rolldown: 1.0.0-rc.12(@emnapi/core@1.9.1)(@emnapi/runtime@1.9.1) 609 + transitivePeerDependencies: 610 + - '@emnapi/core' 611 + - '@emnapi/runtime'
+35
shell.nix
··· 1 + { 2 + mkShellNoCC, 3 + 4 + # extra tooling 5 + eslint_d, 6 + prettierd, 7 + nodejs_24, 8 + pnpm, 9 + typescript, 10 + typescript-language-server, 11 + prettier, 12 + 13 + callPackage, 14 + }: 15 + let 16 + defaultPackage = callPackage ./default.nix { }; 17 + in 18 + mkShellNoCC { 19 + inputsFrom = [ defaultPackage ]; 20 + 21 + packages = [ 22 + eslint_d 23 + prettierd 24 + nodejs_24 25 + pnpm 26 + typescript 27 + typescript-language-server 28 + prettier 29 + ]; 30 + 31 + shellHook = '' 32 + eslint_d start # start eslint daemon 33 + eslint_d status # inform user about eslint daemon status 34 + ''; 35 + }
+22
tsconfig.json
··· 1 + { 2 + "compilerOptions": { 3 + "target": "ES2020", 4 + "module": "ESNext", 5 + "moduleResolution": "bundler", 6 + "jsx": "react-jsx", 7 + "strict": true, 8 + "declaration": true, 9 + "declarationMap": true, 10 + "sourceMap": true, 11 + "outDir": "dist", 12 + "skipLibCheck": true, 13 + "esModuleInterop": true 14 + }, 15 + "include": [ 16 + "src" 17 + ], 18 + "exclude": [ 19 + "node_modules", 20 + "dist" 21 + ] 22 + }
+9
tsdown.config.ts
··· 1 + import { defineConfig } from "tsdown"; 2 + 3 + export default defineConfig({ 4 + entry: ["src/index.ts"], 5 + format: ["cjs", "esm"], 6 + deps: { 7 + neverBundle: ["react", "@tanstack/react-query"], 8 + }, 9 + });