Adds [Ninja Keys](https://github.com/ssleptsov/ninja-keys) (MIT License) to the Admin Interface. This is a trivial demo. Start the UI and begin by pressing CMD-K or CTRL-K in the Admin Interface. - Because a lot of the Create and Update operations are accessible as activations-on-modals rather than navigable components in their own right, we don't have a way to encode commands like "Start the Application Wizard" or "Add a new Policy." - Our search isn't very quick, so "Edit Application Foo" would have intolerable delays while we looked up a list of applications that could be edited. - The `icon` feature is relatively difficult to exploit because it's a web component and its inner styles are inacessible. - There seem to be cases where the modal-popup and charts conflict. If we want to move forward with this, we have the challenge of finding activation means for the various Create and Edit features, and whether or not Search can be meaningfully integrated into the results. It would also be nifty if the User and Admin palettes treated each other as peers; you could just go "CMD-K My User Page" and it would just *take* you there, and "CMD-K Admin Applications" to go back, creating an illusion of seamlessness.
141 lines
5.8 KiB
JSON
141 lines
5.8 KiB
JSON
{
|
|
"name": "@goauthentik/web",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"license": "MIT",
|
|
"scripts": {
|
|
"extract-locales": "lit-localize extract",
|
|
"build-locales": "node scripts/build-locales.mjs",
|
|
"build-locales:build": "lit-localize build",
|
|
"build-locales:repair": "prettier --write ./src/locale-codes.ts",
|
|
"esbuild:build": "node build.mjs",
|
|
"esbuild:build-proxy": "node build.mjs --proxy",
|
|
"esbuild:watch": "node build.mjs --watch",
|
|
"build": "run-s build-locales esbuild:build",
|
|
"build-proxy": "run-s build-locales esbuild:build-proxy",
|
|
"watch": "run-s build-locales esbuild:watch",
|
|
"lint": "cross-env NODE_OPTIONS='--max_old_space_size=8192' eslint . --max-warnings 0 --fix",
|
|
"lint:precommit": "cross-env NODE_OPTIONS='--max_old_space_size=8192' node scripts/eslint-precommit.mjs",
|
|
"lint:spelling": "node scripts/check-spelling.mjs",
|
|
"lit-analyse": "lit-analyzer src",
|
|
"precommit": "npm-run-all --parallel tsc lit-analyse lint:spelling --sequential lint:precommit prettier",
|
|
"prequick": "run-s tsc:execute lit-analyse lint:precommit lint:spelling",
|
|
"prettier-check": "prettier --check .",
|
|
"prettier": "prettier --write .",
|
|
"pseudolocalize": "node scripts/pseudolocalize.mjs",
|
|
"tsc:execute": "tsc --noEmit -p .",
|
|
"tsc": "run-s build-locales tsc:execute",
|
|
"storybook": "storybook dev -p 6006",
|
|
"storybook:build": "cross-env NODE_OPTIONS='--max_old_space_size=8192' storybook build",
|
|
"storybook:build-import-map": "node scripts/build-storybook-import-maps.mjs"
|
|
},
|
|
"dependencies": {
|
|
"@codemirror/lang-html": "^6.4.8",
|
|
"@codemirror/lang-javascript": "^6.2.2",
|
|
"@codemirror/lang-python": "^6.1.4",
|
|
"@codemirror/lang-xml": "^6.1.0",
|
|
"@codemirror/legacy-modes": "^6.3.3",
|
|
"@codemirror/theme-one-dark": "^6.1.2",
|
|
"@formatjs/intl-listformat": "^7.5.5",
|
|
"@fortawesome/fontawesome-free": "^6.5.1",
|
|
"@goauthentik/api": "^2024.2.2-1709583949",
|
|
"@lit-labs/task": "^3.1.0",
|
|
"@lit/context": "^1.1.0",
|
|
"@lit/localize": "^0.12.1",
|
|
"@lit/reactive-element": "^2.0.4",
|
|
"@open-wc/lit-helpers": "^0.7.0",
|
|
"@patternfly/elements": "^2.4.0",
|
|
"@patternfly/patternfly": "^4.224.2",
|
|
"@sentry/browser": "^7.106.1",
|
|
"@webcomponents/webcomponentsjs": "^2.8.0",
|
|
"base64-js": "^1.5.1",
|
|
"chart.js": "^4.4.2",
|
|
"chartjs-adapter-moment": "^1.0.1",
|
|
"codemirror": "^6.0.1",
|
|
"construct-style-sheets-polyfill": "^3.1.0",
|
|
"core-js": "^3.36.0",
|
|
"country-flag-icons": "^1.5.9",
|
|
"fuse.js": "^7.0.0",
|
|
"guacamole-common-js": "^1.5.0",
|
|
"lit": "^3.1.2",
|
|
"md-front-matter": "^1.0.4",
|
|
"mermaid": "^10.9.0",
|
|
"ninja-keys": "^1.2.2",
|
|
"rapidoc": "^9.3.4",
|
|
"showdown": "^2.1.0",
|
|
"style-mod": "^4.1.2",
|
|
"ts-pattern": "^5.0.6",
|
|
"webcomponent-qr-code": "^1.2.0",
|
|
"yaml": "^2.4.1"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.24.0",
|
|
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
"@babel/plugin-proposal-decorators": "^7.24.0",
|
|
"@babel/plugin-transform-private-methods": "^7.23.3",
|
|
"@babel/plugin-transform-private-property-in-object": "^7.23.4",
|
|
"@babel/plugin-transform-runtime": "^7.24.0",
|
|
"@babel/preset-env": "^7.24.0",
|
|
"@babel/preset-typescript": "^7.23.3",
|
|
"@hcaptcha/types": "^1.0.3",
|
|
"@jeysal/storybook-addon-css-user-preferences": "^0.2.0",
|
|
"@lit/localize-tools": "^0.7.2",
|
|
"@rollup/plugin-replace": "^5.0.5",
|
|
"@spotlightjs/spotlight": "^1.2.12",
|
|
"@storybook/addon-essentials": "^7.6.17",
|
|
"@storybook/addon-links": "^7.6.17",
|
|
"@storybook/api": "^7.6.17",
|
|
"@storybook/blocks": "^7.6.4",
|
|
"@storybook/manager-api": "^7.6.17",
|
|
"@storybook/web-components": "^7.6.17",
|
|
"@storybook/web-components-vite": "^7.6.17",
|
|
"@trivago/prettier-plugin-sort-imports": "^4.3.0",
|
|
"@types/chart.js": "^2.9.41",
|
|
"@types/codemirror": "5.60.15",
|
|
"@types/grecaptcha": "^3.0.8",
|
|
"@types/guacamole-common-js": "1.5.2",
|
|
"@types/showdown": "^2.0.6",
|
|
"@typescript-eslint/eslint-plugin": "^7.2.0",
|
|
"@typescript-eslint/parser": "^7.2.0",
|
|
"babel-plugin-macros": "^3.1.0",
|
|
"babel-plugin-tsconfig-paths": "^1.0.3",
|
|
"chokidar": "^3.6.0",
|
|
"cross-env": "^7.0.3",
|
|
"esbuild": "^0.20.1",
|
|
"eslint": "^8.57.0",
|
|
"eslint-config-google": "^0.14.0",
|
|
"eslint-plugin-custom-elements": "0.0.8",
|
|
"eslint-plugin-lit": "^1.11.0",
|
|
"eslint-plugin-sonarjs": "^0.24.0",
|
|
"eslint-plugin-storybook": "^0.8.0",
|
|
"github-slugger": "^2.0.0",
|
|
"glob": "^10.3.10",
|
|
"lit-analyzer": "^2.0.3",
|
|
"npm-run-all": "^4.1.5",
|
|
"prettier": "^3.2.5",
|
|
"pseudolocale": "^2.0.0",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"rollup-plugin-modify": "^3.0.0",
|
|
"rollup-plugin-postcss-lit": "^2.1.0",
|
|
"storybook": "^7.6.17",
|
|
"storybook-addon-mock": "^4.3.0",
|
|
"ts-lit-plugin": "^2.0.2",
|
|
"tslib": "^2.6.2",
|
|
"turnstile-types": "^1.2.0",
|
|
"typescript": "^5.4.2",
|
|
"vite-tsconfig-paths": "^4.3.2"
|
|
},
|
|
"optionalDependencies": {
|
|
"@esbuild/darwin-arm64": "^0.20.1",
|
|
"@esbuild/linux-amd64": "^0.18.11",
|
|
"@esbuild/linux-arm64": "^0.20.1",
|
|
"@rollup/rollup-darwin-arm64": "4.13.0",
|
|
"@rollup/rollup-linux-arm64-gnu": "4.13.0",
|
|
"@rollup/rollup-linux-x64-gnu": "4.13.0"
|
|
},
|
|
"engines": {
|
|
"node": ">=20"
|
|
}
|
|
}
|