tftsr-devops_investigation/node_modules/stylis/package.json

168 lines
3.4 KiB
JSON
Raw Normal View History

feat: initial implementation of TFTSR IT Triage & RCA application Implements Phases 1-8 of the TFTSR implementation plan. Rust backend (Tauri 2.x, src-tauri/): - Multi-provider AI: OpenAI-compatible, Anthropic, Gemini, Mistral, Ollama - PII detection engine: 11 regex patterns with overlap resolution - SQLCipher AES-256 encrypted database with 10 versioned migrations - 28 Tauri IPC commands for triage, analysis, document, and system ops - Ollama: hardware probe, model recommendations, pull/delete with events - RCA and blameless post-mortem Markdown document generators - PDF export via printpdf - Audit log: SHA-256 hash of every external data send - Integration stubs for Confluence, ServiceNow, Azure DevOps (v0.2) Frontend (React 18 + TypeScript + Vite, src/): - 9 pages: full triage workflow NewIssue→LogUpload→Triage→Resolution→RCA→Postmortem→History+Settings - 7 components: ChatWindow, TriageProgress, PiiDiffViewer, DocEditor, HardwareReport, ModelSelector, UI primitives - 3 Zustand stores: session, settings (persisted), history - Type-safe tauriCommands.ts matching Rust backend types exactly - 8 IT domain system prompts (Linux, Windows, Network, K8s, DB, Virt, HW, Obs) DevOps: - .woodpecker/test.yml: rustfmt, clippy, cargo test, tsc, vitest on every push - .woodpecker/release.yml: linux/amd64 + linux/arm64 builds, Gogs release upload Verified: - cargo check: zero errors - tsc --noEmit: zero errors - vitest run: 13/13 unit tests passing Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 03:36:25 +00:00
{
"name": "stylis",
"version": "4.2.0",
"license": "MIT",
"description": "A Lightweight CSS Preprocessor",
"homepage": "https://github.com/thysultan/stylis.js",
"author": "Sultan Tarimo <sultantarimo@me.com>",
"repository": "https://github.com/thysultan/stylis.js",
"bugs": "https://github.com/thysultan/stylis.js/issues",
"sideEffects": false,
"type": "module",
"main": "dist/umd/stylis.js",
"module": "dist/stylis.mjs",
"react-native": "./index.js",
"exports": {
".": {
"import": "./index.js",
"require": "./dist/umd/stylis.js"
},
"./package.json": "./package.json"
},
"files": [
"index.js",
"dist/",
"src/"
],
"scripts": {
"lint": "eslint ./",
"pretest": "npm run lint && npm run build",
"test": "nyc npm run spec",
"spec": "mocha --harmony --require esm script/setup.js --recursive test",
"prebuild": "rimraf dist",
"build": "rollup --config script/build.js --configSrc ./",
"start": "npm run build -- --watch",
"prepare": "npm run build",
"postversion": "git push --follow-tags && npm publish",
"release-major": "npm version major -m '%s'",
"release-minor": "npm version minor -m '%s'",
"release-patch": "npm version patch -m '%s'"
},
"devDependencies": {
"chai": "4.3.4",
"eslint": "6.8.0",
"esm": "3.2.25",
"mocha": "9.1.1",
"nyc": "15.1.0",
"rimraf": "3.0.2",
"rollup": "1.28.0",
"rollup-plugin-size": "0.2.1",
"rollup-plugin-terser": "5.1.3",
"stylis": "./"
},
"nyc": {
"temp-dir": "./coverage/.nyc_output",
"exclude": [
"**/dist/",
"**/test/",
"**/script/"
],
"reporter": [
"lcov",
"text"
]
},
"esm": {
"cjs": true,
"cache": false
},
"eslintIgnore": [
"script/",
"test/",
"dist/",
"docs/"
],
"eslintConfig": {
"env": {
"commonjs": true,
"browser": true,
"node": true,
"es6": true
},
"extends": "eslint:recommended",
"parserOptions": {
"ecmaVersion": 7,
"sourceType": "module",
"ecmaFeatures": {
"impliedStrict": true
}
},
"rules": {
"indent": [
"error",
"tab",
{
"SwitchCase": 1
}
],
"linebreak-style": [
"error",
"unix"
],
"quotes": [
"error",
"single"
],
"semi": [
"error",
"never"
],
"no-cond-assign": [
"off"
],
"no-redeclare": [
"off"
],
"no-fallthrough": [
"off"
],
"no-console": [
"off"
],
"no-unsafe-finally": [
"off"
],
"no-shadow-restricted-names": [
"error"
],
"no-whitespace-before-property": [
"error"
],
"no-else-return": [
"error"
],
"eol-last": [
"error"
],
"func-call-spacing": [
"error",
"never"
],
"brace-style": [
"error",
"1tbs",
{
"allowSingleLine": true
}
],
"require-jsdoc": [
"error",
{
"require": {
"FunctionDeclaration": true
}
}
],
"no-trailing-spaces": [
"error",
{
"skipBlankLines": true
}
],
"no-constant-condition": [
"off"
]
}
}
}