service status on atproto

feat: add lexicons, setup projects

ptr.pet 6cc4ad1e 926bf28e

verified
+34
.gitignore
··· 1 + # dependencies (bun install) 2 + node_modules 3 + 4 + # output 5 + out 6 + dist 7 + *.tgz 8 + 9 + # code coverage 10 + coverage 11 + *.lcov 12 + 13 + # logs 14 + logs 15 + _.log 16 + report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json 17 + 18 + # dotenv environment variable files 19 + .env 20 + .env.development.local 21 + .env.test.local 22 + .env.production.local 23 + .env.local 24 + 25 + # caches 26 + .eslintcache 27 + .cache 28 + *.tsbuildinfo 29 + 30 + # IntelliJ based IDEs 31 + .idea 32 + 33 + # Finder (MacOS) folder config 34 + .DS_Store
+51
bun.lock
··· 1 + { 2 + "lockfileVersion": 1, 3 + "workspaces": { 4 + "": { 5 + "name": "barometer", 6 + "dependencies": { 7 + "@atcute/lexicons": "^1.1.0", 8 + "barometer-lexicon": "file:lib", 9 + }, 10 + "devDependencies": { 11 + "@types/bun": "latest", 12 + }, 13 + "peerDependencies": { 14 + "typescript": "^5", 15 + }, 16 + }, 17 + }, 18 + "packages": { 19 + "@atcute/lex-cli": ["@atcute/lex-cli@2.1.1", "", { "dependencies": { "@atcute/lexicon-doc": "^1.0.2", "@badrap/valita": "^0.4.5", "@externdefs/collider": "^0.3.0", "picocolors": "^1.1.1", "prettier": "^3.5.3" }, "bin": { "lex-cli": "cli.mjs" } }, "sha512-QaR0sOP8Z24opGHKsSfleDbP/ahUb6HECkVaOqSwG7ORZzbLK1w0265o1BRjCVr2dT6FxlsMUa2Ge85JMA9bxg=="], 20 + 21 + "@atcute/lexicon-doc": ["@atcute/lexicon-doc@1.0.3", "", { "dependencies": { "@badrap/valita": "^0.4.5" } }, "sha512-U7rinsTOwXGGcrF6/s7GzTXargcQpDr4BTrj5ci/XTK+POEK5jpcI+Ag1fF932pBX3k97em6y4TWwTSO8M/McQ=="], 22 + 23 + "@atcute/lexicons": ["@atcute/lexicons@1.1.0", "", { "dependencies": { "esm-env": "^1.2.2" } }, "sha512-LFqwnria78xLYb62Ri/+WwQpUTgZp2DuyolNGIIOV1dpiKhFFFh//nscHMA6IExFLQRqWDs3tTjy7zv0h3sf1Q=="], 24 + 25 + "@badrap/valita": ["@badrap/valita@0.4.5", "", {}, "sha512-4QwGbuhh/JesHRQj79mO/l37PvJj4l/tlAu7+S1n4h47qwaNpZ0WDvIwUGLYUsdi9uQ5UPpiG9wb1Wm3XUFBUQ=="], 26 + 27 + "@externdefs/collider": ["@externdefs/collider@0.3.0", "", { "peerDependencies": { "@badrap/valita": "^0.4.4" } }, "sha512-x5CpeZ4c8n+1wMFthUMWSQKqCGcQo52/Qbda5ES+JFRRg/D8Ep6/JOvUUq5HExFuv/wW+6UYG2U/mXzw0IAd8Q=="], 28 + 29 + "@types/bun": ["@types/bun@1.2.18", "", { "dependencies": { "bun-types": "1.2.18" } }, "sha512-Xf6RaWVheyemaThV0kUfaAUvCNokFr+bH8Jxp+tTZfx7dAPA8z9ePnP9S9+Vspzuxxx9JRAXhnyccRj3GyCMdQ=="], 30 + 31 + "@types/node": ["@types/node@24.0.13", "", { "dependencies": { "undici-types": "~7.8.0" } }, "sha512-Qm9OYVOFHFYg3wJoTSrz80hoec5Lia/dPp84do3X7dZvLikQvM1YpmvTBEdIr/e+U8HTkFjLHLnl78K/qjf+jQ=="], 32 + 33 + "@types/react": ["@types/react@19.1.8", "", { "dependencies": { "csstype": "^3.0.2" } }, "sha512-AwAfQ2Wa5bCx9WP8nZL2uMZWod7J7/JSplxbTmBQ5ms6QpqNYm672H0Vu9ZVKVngQ+ii4R/byguVEUZQyeg44g=="], 34 + 35 + "barometer-lexicon": ["barometer-lexicon@file:lib", { "dependencies": { "@atcute/lexicons": "^1.1.0" }, "devDependencies": { "@atcute/lex-cli": "^2.1.1", "@types/bun": "latest" }, "peerDependencies": { "typescript": "^5" } }], 36 + 37 + "bun-types": ["bun-types@1.2.18", "", { "dependencies": { "@types/node": "*" }, "peerDependencies": { "@types/react": "^19" } }, "sha512-04+Eha5NP7Z0A9YgDAzMk5PHR16ZuLVa83b26kH5+cp1qZW4F6FmAURngE7INf4tKOvCE69vYvDEwoNl1tGiWw=="], 38 + 39 + "csstype": ["csstype@3.1.3", "", {}, "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="], 40 + 41 + "esm-env": ["esm-env@1.2.2", "", {}, "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA=="], 42 + 43 + "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], 44 + 45 + "prettier": ["prettier@3.6.2", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ=="], 46 + 47 + "typescript": ["typescript@5.8.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ=="], 48 + 49 + "undici-types": ["undici-types@7.8.0", "", {}, "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw=="], 50 + } 51 + }
+29
lexicon/check.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "systems.gaze.barometer.check", 4 + "defs": { 5 + "main": { 6 + "type": "record", 7 + "key": "tid", 8 + "record": { 9 + "type": "object", 10 + "required": ["id", "name", "forService"], 11 + "properties": { 12 + "id": { 13 + "type": "string" 14 + }, 15 + "name": { 16 + "type": "string" 17 + }, 18 + "description": { 19 + "type": "string" 20 + }, 21 + "forService": { 22 + "type": "string", 23 + "format": "at-uri" 24 + } 25 + } 26 + } 27 + } 28 + } 29 + }
+25
lexicon/host.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "systems.gaze.barometer.host", 4 + "defs": { 5 + "main": { 6 + "type": "record", 7 + "key": "any", 8 + "record": { 9 + "type": "object", 10 + "required": ["name", "os"], 11 + "properties": { 12 + "name": { 13 + "type": "string" 14 + }, 15 + "description": { 16 + "type": "string" 17 + }, 18 + "os": { 19 + "type": "string" 20 + } 21 + } 22 + } 23 + } 24 + } 25 + }
+30
lexicon/service.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "systems.gaze.barometer.service", 4 + "defs": { 5 + "main": { 6 + "type": "record", 7 + "key": "any", 8 + "record": { 9 + "type": "object", 10 + "required": ["name", "hostedBy"], 11 + "properties": { 12 + "name": { 13 + "type": "string" 14 + }, 15 + "description": { 16 + "type": "string" 17 + }, 18 + "hostedBy": { 19 + "type": "string", 20 + "format": "at-uri" 21 + }, 22 + "appUri": { 23 + "type": "string", 24 + "format": "uri" 25 + } 26 + } 27 + } 28 + } 29 + } 30 + }
+42
lexicon/state.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "systems.gaze.barometer.state", 4 + "defs": { 5 + "main": { 6 + "type": "record", 7 + "key": "tid", 8 + "record": { 9 + "type": "object", 10 + "required": ["from", "to", "changedAt", "generatedBy"], 11 + "properties": { 12 + "from": { 13 + "type": "string", 14 + "enum": [ 15 + "systems.gaze.barometer.status.passed", 16 + "systems.gaze.barometer.status.failed", 17 + "systems.gaze.barometer.status.unknown" 18 + ] 19 + }, 20 + "to": { 21 + "type": "string", 22 + "enum": [ 23 + "systems.gaze.barometer.status.passed", 24 + "systems.gaze.barometer.status.failed" 25 + ] 26 + }, 27 + "reason": { 28 + "type": "string" 29 + }, 30 + "changedAt": { 31 + "type": "string", 32 + "format": "datetime" 33 + }, 34 + "generatedBy": { 35 + "type": "string", 36 + "format": "at-uri" 37 + } 38 + } 39 + } 40 + } 41 + } 42 + }
+10
lexicon/status/failed.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "systems.gaze.barometer.status.failed", 4 + "defs": { 5 + "main": { 6 + "type": "token", 7 + "description": "Token representing a failed state in the barometer system" 8 + } 9 + } 10 + }
+10
lexicon/status/passed.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "systems.gaze.barometer.status.passed", 4 + "defs": { 5 + "main": { 6 + "type": "token", 7 + "description": "Token representing a passed state in the barometer system" 8 + } 9 + } 10 + }
+10
lexicon/status/unknown.json
··· 1 + { 2 + "lexicon": 1, 3 + "id": "systems.gaze.barometer.status.unknown", 4 + "defs": { 5 + "main": { 6 + "type": "token", 7 + "description": "Token representing an unknown state in the barometer system" 8 + } 9 + } 10 + }
+34
lib/.gitignore
··· 1 + # dependencies (bun install) 2 + node_modules 3 + 4 + # output 5 + out 6 + dist 7 + *.tgz 8 + 9 + # code coverage 10 + coverage 11 + *.lcov 12 + 13 + # logs 14 + logs 15 + _.log 16 + report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json 17 + 18 + # dotenv environment variable files 19 + .env 20 + .env.development.local 21 + .env.test.local 22 + .env.production.local 23 + .env.local 24 + 25 + # caches 26 + .eslintcache 27 + .cache 28 + *.tsbuildinfo 29 + 30 + # IntelliJ based IDEs 31 + .idea 32 + 33 + # Finder (MacOS) folder config 34 + .DS_Store
+49
lib/bun.lock
··· 1 + { 2 + "lockfileVersion": 1, 3 + "workspaces": { 4 + "": { 5 + "name": "barometer-lexicon", 6 + "dependencies": { 7 + "@atcute/lexicons": "^1.1.0", 8 + }, 9 + "devDependencies": { 10 + "@atcute/lex-cli": "^2.1.1", 11 + "@types/bun": "latest", 12 + }, 13 + "peerDependencies": { 14 + "typescript": "^5", 15 + }, 16 + }, 17 + }, 18 + "packages": { 19 + "@atcute/lex-cli": ["@atcute/lex-cli@2.1.1", "", { "dependencies": { "@atcute/lexicon-doc": "^1.0.2", "@badrap/valita": "^0.4.5", "@externdefs/collider": "^0.3.0", "picocolors": "^1.1.1", "prettier": "^3.5.3" }, "bin": { "lex-cli": "cli.mjs" } }, "sha512-QaR0sOP8Z24opGHKsSfleDbP/ahUb6HECkVaOqSwG7ORZzbLK1w0265o1BRjCVr2dT6FxlsMUa2Ge85JMA9bxg=="], 20 + 21 + "@atcute/lexicon-doc": ["@atcute/lexicon-doc@1.0.3", "", { "dependencies": { "@badrap/valita": "^0.4.5" } }, "sha512-U7rinsTOwXGGcrF6/s7GzTXargcQpDr4BTrj5ci/XTK+POEK5jpcI+Ag1fF932pBX3k97em6y4TWwTSO8M/McQ=="], 22 + 23 + "@atcute/lexicons": ["@atcute/lexicons@1.1.0", "", { "dependencies": { "esm-env": "^1.2.2" } }, "sha512-LFqwnria78xLYb62Ri/+WwQpUTgZp2DuyolNGIIOV1dpiKhFFFh//nscHMA6IExFLQRqWDs3tTjy7zv0h3sf1Q=="], 24 + 25 + "@badrap/valita": ["@badrap/valita@0.4.5", "", {}, "sha512-4QwGbuhh/JesHRQj79mO/l37PvJj4l/tlAu7+S1n4h47qwaNpZ0WDvIwUGLYUsdi9uQ5UPpiG9wb1Wm3XUFBUQ=="], 26 + 27 + "@externdefs/collider": ["@externdefs/collider@0.3.0", "", { "peerDependencies": { "@badrap/valita": "^0.4.4" } }, "sha512-x5CpeZ4c8n+1wMFthUMWSQKqCGcQo52/Qbda5ES+JFRRg/D8Ep6/JOvUUq5HExFuv/wW+6UYG2U/mXzw0IAd8Q=="], 28 + 29 + "@types/bun": ["@types/bun@1.2.18", "", { "dependencies": { "bun-types": "1.2.18" } }, "sha512-Xf6RaWVheyemaThV0kUfaAUvCNokFr+bH8Jxp+tTZfx7dAPA8z9ePnP9S9+Vspzuxxx9JRAXhnyccRj3GyCMdQ=="], 30 + 31 + "@types/node": ["@types/node@24.0.13", "", { "dependencies": { "undici-types": "~7.8.0" } }, "sha512-Qm9OYVOFHFYg3wJoTSrz80hoec5Lia/dPp84do3X7dZvLikQvM1YpmvTBEdIr/e+U8HTkFjLHLnl78K/qjf+jQ=="], 32 + 33 + "@types/react": ["@types/react@19.1.8", "", { "dependencies": { "csstype": "^3.0.2" } }, "sha512-AwAfQ2Wa5bCx9WP8nZL2uMZWod7J7/JSplxbTmBQ5ms6QpqNYm672H0Vu9ZVKVngQ+ii4R/byguVEUZQyeg44g=="], 34 + 35 + "bun-types": ["bun-types@1.2.18", "", { "dependencies": { "@types/node": "*" }, "peerDependencies": { "@types/react": "^19" } }, "sha512-04+Eha5NP7Z0A9YgDAzMk5PHR16ZuLVa83b26kH5+cp1qZW4F6FmAURngE7INf4tKOvCE69vYvDEwoNl1tGiWw=="], 36 + 37 + "csstype": ["csstype@3.1.3", "", {}, "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="], 38 + 39 + "esm-env": ["esm-env@1.2.2", "", {}, "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA=="], 40 + 41 + "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], 42 + 43 + "prettier": ["prettier@3.6.2", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ=="], 44 + 45 + "typescript": ["typescript@5.8.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ=="], 46 + 47 + "undici-types": ["undici-types@7.8.0", "", {}, "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw=="], 48 + } 49 + }
+6
lib/lex.config.js
··· 1 + import { defineLexiconConfig } from "@atcute/lex-cli"; 2 + 3 + export default defineLexiconConfig({ 4 + files: ["../lexicon/**/*.json"], 5 + outdir: "src/lexicons/", 6 + });
+27
lib/package.json
··· 1 + { 2 + "name": "barometer-lexicon", 3 + "type": "module", 4 + "files": [ 5 + "dist/", 6 + "src/" 7 + ], 8 + "exports": { 9 + ".": "./dist/index.js", 10 + "./types/*": "./dist/lexicons/types/com/atproto/*.js" 11 + }, 12 + "scripts": { 13 + "build": "tsc", 14 + "generate": "rm -rf ./src/lexicons/; lex-cli generate -c ./lex.config.js", 15 + "prepublish": "rm -rf dist; pnpm run build" 16 + }, 17 + "devDependencies": { 18 + "@atcute/lex-cli": "^2.1.1", 19 + "@types/bun": "latest" 20 + }, 21 + "peerDependencies": { 22 + "typescript": "^5" 23 + }, 24 + "dependencies": { 25 + "@atcute/lexicons": "^1.1.0" 26 + } 27 + }
+1
lib/src/index.ts
··· 1 + export * from "./lexicons/index.ts";
+7
lib/src/lexicons/index.ts
··· 1 + export * as SystemsGazeBarometerCheck from "./types/systems/gaze/barometer/check.js"; 2 + export * as SystemsGazeBarometerHost from "./types/systems/gaze/barometer/host.js"; 3 + export * as SystemsGazeBarometerService from "./types/systems/gaze/barometer/service.js"; 4 + export * as SystemsGazeBarometerState from "./types/systems/gaze/barometer/state.js"; 5 + export * as SystemsGazeBarometerStatusFailed from "./types/systems/gaze/barometer/status/failed.js"; 6 + export * as SystemsGazeBarometerStatusPassed from "./types/systems/gaze/barometer/status/passed.js"; 7 + export * as SystemsGazeBarometerStatusUnknown from "./types/systems/gaze/barometer/status/unknown.js";
+27
lib/src/lexicons/types/systems/gaze/barometer/check.ts
··· 1 + import type {} from "@atcute/lexicons"; 2 + import * as v from "@atcute/lexicons/validations"; 3 + import type {} from "@atcute/lexicons/ambient"; 4 + 5 + const _mainSchema = /*#__PURE__*/ v.record( 6 + /*#__PURE__*/ v.string(), 7 + /*#__PURE__*/ v.object({ 8 + $type: /*#__PURE__*/ v.literal("systems.gaze.barometer.check"), 9 + description: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 10 + forService: /*#__PURE__*/ v.resourceUriString(), 11 + name: /*#__PURE__*/ v.string(), 12 + }), 13 + ); 14 + 15 + type main$schematype = typeof _mainSchema; 16 + 17 + export interface mainSchema extends main$schematype {} 18 + 19 + export const mainSchema = _mainSchema as mainSchema; 20 + 21 + export interface Main extends v.InferInput<typeof mainSchema> {} 22 + 23 + declare module "@atcute/lexicons/ambient" { 24 + interface Records { 25 + "systems.gaze.barometer.check": mainSchema; 26 + } 27 + }
+27
lib/src/lexicons/types/systems/gaze/barometer/host.ts
··· 1 + import type {} from "@atcute/lexicons"; 2 + import * as v from "@atcute/lexicons/validations"; 3 + import type {} from "@atcute/lexicons/ambient"; 4 + 5 + const _mainSchema = /*#__PURE__*/ v.record( 6 + /*#__PURE__*/ v.string(), 7 + /*#__PURE__*/ v.object({ 8 + $type: /*#__PURE__*/ v.literal("systems.gaze.barometer.host"), 9 + description: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 10 + name: /*#__PURE__*/ v.string(), 11 + os: /*#__PURE__*/ v.string(), 12 + }), 13 + ); 14 + 15 + type main$schematype = typeof _mainSchema; 16 + 17 + export interface mainSchema extends main$schematype {} 18 + 19 + export const mainSchema = _mainSchema as mainSchema; 20 + 21 + export interface Main extends v.InferInput<typeof mainSchema> {} 22 + 23 + declare module "@atcute/lexicons/ambient" { 24 + interface Records { 25 + "systems.gaze.barometer.host": mainSchema; 26 + } 27 + }
+28
lib/src/lexicons/types/systems/gaze/barometer/service.ts
··· 1 + import type {} from "@atcute/lexicons"; 2 + import * as v from "@atcute/lexicons/validations"; 3 + import type {} from "@atcute/lexicons/ambient"; 4 + 5 + const _mainSchema = /*#__PURE__*/ v.record( 6 + /*#__PURE__*/ v.string(), 7 + /*#__PURE__*/ v.object({ 8 + $type: /*#__PURE__*/ v.literal("systems.gaze.barometer.service"), 9 + appUri: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.genericUriString()), 10 + description: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 11 + hostedBy: /*#__PURE__*/ v.resourceUriString(), 12 + name: /*#__PURE__*/ v.string(), 13 + }), 14 + ); 15 + 16 + type main$schematype = typeof _mainSchema; 17 + 18 + export interface mainSchema extends main$schematype {} 19 + 20 + export const mainSchema = _mainSchema as mainSchema; 21 + 22 + export interface Main extends v.InferInput<typeof mainSchema> {} 23 + 24 + declare module "@atcute/lexicons/ambient" { 25 + interface Records { 26 + "systems.gaze.barometer.service": mainSchema; 27 + } 28 + }
+36
lib/src/lexicons/types/systems/gaze/barometer/state.ts
··· 1 + import type {} from "@atcute/lexicons"; 2 + import * as v from "@atcute/lexicons/validations"; 3 + import type {} from "@atcute/lexicons/ambient"; 4 + 5 + const _mainSchema = /*#__PURE__*/ v.record( 6 + /*#__PURE__*/ v.tidString(), 7 + /*#__PURE__*/ v.object({ 8 + $type: /*#__PURE__*/ v.literal("systems.gaze.barometer.state"), 9 + changedAt: /*#__PURE__*/ v.datetimeString(), 10 + from: /*#__PURE__*/ v.literalEnum([ 11 + "systems.gaze.barometer.status.failed", 12 + "systems.gaze.barometer.status.passed", 13 + "systems.gaze.barometer.status.unknown", 14 + ]), 15 + generatedBy: /*#__PURE__*/ v.resourceUriString(), 16 + reason: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 17 + to: /*#__PURE__*/ v.literalEnum([ 18 + "systems.gaze.barometer.status.failed", 19 + "systems.gaze.barometer.status.passed", 20 + ]), 21 + }), 22 + ); 23 + 24 + type main$schematype = typeof _mainSchema; 25 + 26 + export interface mainSchema extends main$schematype {} 27 + 28 + export const mainSchema = _mainSchema as mainSchema; 29 + 30 + export interface Main extends v.InferInput<typeof mainSchema> {} 31 + 32 + declare module "@atcute/lexicons/ambient" { 33 + interface Records { 34 + "systems.gaze.barometer.state": mainSchema; 35 + } 36 + }
+14
lib/src/lexicons/types/systems/gaze/barometer/status/failed.ts
··· 1 + import type {} from "@atcute/lexicons"; 2 + import * as v from "@atcute/lexicons/validations"; 3 + 4 + const _mainSchema = /*#__PURE__*/ v.literal( 5 + "systems.gaze.barometer.status.failed", 6 + ); 7 + 8 + type main$schematype = typeof _mainSchema; 9 + 10 + export interface mainSchema extends main$schematype {} 11 + 12 + export const mainSchema = _mainSchema as mainSchema; 13 + 14 + export type Main = v.InferInput<typeof mainSchema>;
+14
lib/src/lexicons/types/systems/gaze/barometer/status/passed.ts
··· 1 + import type {} from "@atcute/lexicons"; 2 + import * as v from "@atcute/lexicons/validations"; 3 + 4 + const _mainSchema = /*#__PURE__*/ v.literal( 5 + "systems.gaze.barometer.status.passed", 6 + ); 7 + 8 + type main$schematype = typeof _mainSchema; 9 + 10 + export interface mainSchema extends main$schematype {} 11 + 12 + export const mainSchema = _mainSchema as mainSchema; 13 + 14 + export type Main = v.InferInput<typeof mainSchema>;
+14
lib/src/lexicons/types/systems/gaze/barometer/status/unknown.ts
··· 1 + import type {} from "@atcute/lexicons"; 2 + import * as v from "@atcute/lexicons/validations"; 3 + 4 + const _mainSchema = /*#__PURE__*/ v.literal( 5 + "systems.gaze.barometer.status.unknown", 6 + ); 7 + 8 + type main$schematype = typeof _mainSchema; 9 + 10 + export interface mainSchema extends main$schematype {} 11 + 12 + export const mainSchema = _mainSchema as mainSchema; 13 + 14 + export type Main = v.InferInput<typeof mainSchema>;
+30
lib/tsconfig.json
··· 1 + { 2 + "compilerOptions": { 3 + // Environment setup & latest features 4 + "lib": ["ESNext"], 5 + "target": "ESNext", 6 + "module": "Preserve", 7 + "moduleDetection": "force", 8 + "jsx": "react-jsx", 9 + "allowJs": true, 10 + 11 + // Bundler mode 12 + "moduleResolution": "bundler", 13 + "allowImportingTsExtensions": true, 14 + "verbatimModuleSyntax": true, 15 + "noEmit": true, 16 + 17 + // Best practices 18 + "strict": true, 19 + "skipLibCheck": true, 20 + "noFallthroughCasesInSwitch": true, 21 + "noUncheckedIndexedAccess": true, 22 + "noImplicitOverride": true, 23 + 24 + // Some stricter flags (disabled by default) 25 + "noUnusedLocals": false, 26 + "noUnusedParameters": false, 27 + "noPropertyAccessFromIndexSignature": false 28 + }, 29 + "include": ["src"] 30 + }
+16
package.json
··· 1 + { 2 + "name": "barometer", 3 + "module": "index.ts", 4 + "type": "module", 5 + "private": true, 6 + "devDependencies": { 7 + "@types/bun": "latest" 8 + }, 9 + "peerDependencies": { 10 + "typescript": "^5" 11 + }, 12 + "dependencies": { 13 + "@atcute/lexicons": "^1.1.0", 14 + "barometer-lexicon": "file:lib" 15 + } 16 + }
+1
src/index.ts
··· 1 + console.log("Hello via Bun!");
+30
tsconfig.json
··· 1 + { 2 + "compilerOptions": { 3 + // Environment setup & latest features 4 + "lib": ["ESNext"], 5 + "target": "ESNext", 6 + "module": "Preserve", 7 + "moduleDetection": "force", 8 + "jsx": "react-jsx", 9 + "allowJs": true, 10 + 11 + // Bundler mode 12 + "moduleResolution": "bundler", 13 + "allowImportingTsExtensions": true, 14 + "verbatimModuleSyntax": true, 15 + "noEmit": true, 16 + 17 + // Best practices 18 + "strict": true, 19 + "skipLibCheck": true, 20 + "noFallthroughCasesInSwitch": true, 21 + "noUncheckedIndexedAccess": true, 22 + "noImplicitOverride": true, 23 + 24 + // Some stricter flags (disabled by default) 25 + "noUnusedLocals": false, 26 + "noUnusedParameters": false, 27 + "noPropertyAccessFromIndexSignature": false 28 + }, 29 + "include": ["src/**/*.ts"] 30 + }