web: sort imports
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
parent
a92a0fb60a
commit
da7635ae5c
|
@ -14,5 +14,7 @@
|
||||||
"tabWidth": 4,
|
"tabWidth": 4,
|
||||||
"trailingComma": "all",
|
"trailingComma": "all",
|
||||||
"useTabs": false,
|
"useTabs": false,
|
||||||
"vueIndentScriptAndStyle": false
|
"vueIndentScriptAndStyle": false,
|
||||||
|
"importOrder": ["^@lingui/(.*)$", "^lit(.*)$", "\\.css$", "^@goauthentik/api$", "^[./]"],
|
||||||
|
"importOrderSeparation": true
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,6 +28,7 @@
|
||||||
"@sentry/browser": "^6.13.1",
|
"@sentry/browser": "^6.13.1",
|
||||||
"@sentry/tracing": "^6.13.1",
|
"@sentry/tracing": "^6.13.1",
|
||||||
"@squoosh/cli": "^0.7.2",
|
"@squoosh/cli": "^0.7.2",
|
||||||
|
"@trivago/prettier-plugin-sort-imports": "^2.0.4",
|
||||||
"@types/chart.js": "^2.9.34",
|
"@types/chart.js": "^2.9.34",
|
||||||
"@types/codemirror": "5.60.2",
|
"@types/codemirror": "5.60.2",
|
||||||
"@types/grecaptcha": "^3.0.3",
|
"@types/grecaptcha": "^3.0.3",
|
||||||
|
@ -2440,6 +2441,101 @@
|
||||||
"node": " ^12.5.0 || ^14.0.0 || ^16.0.0 "
|
"node": " ^12.5.0 || ^14.0.0 || ^16.0.0 "
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@trivago/prettier-plugin-sort-imports": {
|
||||||
|
"version": "2.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@trivago/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-2.0.4.tgz",
|
||||||
|
"integrity": "sha512-SCVUhQdbjn/Z4AY7b9JO00fZCeXxiVuarVxYP0n6cX2ijiQkE5HmGrOk32n0u385OebzQ9bZcrc51lAGLjXnFQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/core": "7.13.10",
|
||||||
|
"@babel/generator": "7.13.9",
|
||||||
|
"@babel/parser": "7.13.10",
|
||||||
|
"@babel/traverse": "7.13.0",
|
||||||
|
"@babel/types": "7.13.0",
|
||||||
|
"@types/lodash": "4.14.168",
|
||||||
|
"javascript-natural-sort": "0.7.1",
|
||||||
|
"lodash": "4.17.21"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"prettier": "2.x"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@trivago/prettier-plugin-sort-imports/node_modules/@babel/core": {
|
||||||
|
"version": "7.13.10",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.10.tgz",
|
||||||
|
"integrity": "sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw==",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/code-frame": "^7.12.13",
|
||||||
|
"@babel/generator": "^7.13.9",
|
||||||
|
"@babel/helper-compilation-targets": "^7.13.10",
|
||||||
|
"@babel/helper-module-transforms": "^7.13.0",
|
||||||
|
"@babel/helpers": "^7.13.10",
|
||||||
|
"@babel/parser": "^7.13.10",
|
||||||
|
"@babel/template": "^7.12.13",
|
||||||
|
"@babel/traverse": "^7.13.0",
|
||||||
|
"@babel/types": "^7.13.0",
|
||||||
|
"convert-source-map": "^1.7.0",
|
||||||
|
"debug": "^4.1.0",
|
||||||
|
"gensync": "^1.0.0-beta.2",
|
||||||
|
"json5": "^2.1.2",
|
||||||
|
"lodash": "^4.17.19",
|
||||||
|
"semver": "^6.3.0",
|
||||||
|
"source-map": "^0.5.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.9.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/babel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@trivago/prettier-plugin-sort-imports/node_modules/@babel/generator": {
|
||||||
|
"version": "7.13.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.9.tgz",
|
||||||
|
"integrity": "sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw==",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/types": "^7.13.0",
|
||||||
|
"jsesc": "^2.5.1",
|
||||||
|
"source-map": "^0.5.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@trivago/prettier-plugin-sort-imports/node_modules/@babel/parser": {
|
||||||
|
"version": "7.13.10",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.10.tgz",
|
||||||
|
"integrity": "sha512-0s7Mlrw9uTWkYua7xWr99Wpk2bnGa0ANleKfksYAES8LpWH4gW1OUr42vqKNf0us5UQNfru2wPqMqRITzq/SIQ==",
|
||||||
|
"bin": {
|
||||||
|
"parser": "bin/babel-parser.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@trivago/prettier-plugin-sort-imports/node_modules/@babel/traverse": {
|
||||||
|
"version": "7.13.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz",
|
||||||
|
"integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/code-frame": "^7.12.13",
|
||||||
|
"@babel/generator": "^7.13.0",
|
||||||
|
"@babel/helper-function-name": "^7.12.13",
|
||||||
|
"@babel/helper-split-export-declaration": "^7.12.13",
|
||||||
|
"@babel/parser": "^7.13.0",
|
||||||
|
"@babel/types": "^7.13.0",
|
||||||
|
"debug": "^4.1.0",
|
||||||
|
"globals": "^11.1.0",
|
||||||
|
"lodash": "^4.17.19"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@trivago/prettier-plugin-sort-imports/node_modules/@babel/types": {
|
||||||
|
"version": "7.13.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz",
|
||||||
|
"integrity": "sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA==",
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
"lodash": "^4.17.19",
|
||||||
|
"to-fast-properties": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@types/chart.js": {
|
"node_modules/@types/chart.js": {
|
||||||
"version": "2.9.34",
|
"version": "2.9.34",
|
||||||
"resolved": "https://registry.npmjs.org/@types/chart.js/-/chart.js-2.9.34.tgz",
|
"resolved": "https://registry.npmjs.org/@types/chart.js/-/chart.js-2.9.34.tgz",
|
||||||
|
@ -2536,6 +2632,11 @@
|
||||||
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz",
|
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz",
|
||||||
"integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ=="
|
"integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ=="
|
||||||
},
|
},
|
||||||
|
"node_modules/@types/lodash": {
|
||||||
|
"version": "4.14.168",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.168.tgz",
|
||||||
|
"integrity": "sha512-oVfRvqHV/V6D1yifJbVRU3TMp8OT6o6BG+U9MkwuJ3U8/CsDHvalRpsxBqivn71ztOFZBTfJMvETbqHiaNSj7Q=="
|
||||||
|
},
|
||||||
"node_modules/@types/minimatch": {
|
"node_modules/@types/minimatch": {
|
||||||
"version": "3.0.5",
|
"version": "3.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
|
||||||
|
@ -5264,6 +5365,11 @@
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/javascript-natural-sort": {
|
||||||
|
"version": "0.7.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz",
|
||||||
|
"integrity": "sha1-+eIwPUUH9tdDVac2ZNFED7Wg71k="
|
||||||
|
},
|
||||||
"node_modules/jest-get-type": {
|
"node_modules/jest-get-type": {
|
||||||
"version": "26.3.0",
|
"version": "26.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz",
|
||||||
|
@ -10253,6 +10359,87 @@
|
||||||
"web-streams-polyfill": "^3.0.3"
|
"web-streams-polyfill": "^3.0.3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"@trivago/prettier-plugin-sort-imports": {
|
||||||
|
"version": "2.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@trivago/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-2.0.4.tgz",
|
||||||
|
"integrity": "sha512-SCVUhQdbjn/Z4AY7b9JO00fZCeXxiVuarVxYP0n6cX2ijiQkE5HmGrOk32n0u385OebzQ9bZcrc51lAGLjXnFQ==",
|
||||||
|
"requires": {
|
||||||
|
"@babel/core": "7.13.10",
|
||||||
|
"@babel/generator": "7.13.9",
|
||||||
|
"@babel/parser": "7.13.10",
|
||||||
|
"@babel/traverse": "7.13.0",
|
||||||
|
"@babel/types": "7.13.0",
|
||||||
|
"@types/lodash": "4.14.168",
|
||||||
|
"javascript-natural-sort": "0.7.1",
|
||||||
|
"lodash": "4.17.21"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/core": {
|
||||||
|
"version": "7.13.10",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.10.tgz",
|
||||||
|
"integrity": "sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw==",
|
||||||
|
"requires": {
|
||||||
|
"@babel/code-frame": "^7.12.13",
|
||||||
|
"@babel/generator": "^7.13.9",
|
||||||
|
"@babel/helper-compilation-targets": "^7.13.10",
|
||||||
|
"@babel/helper-module-transforms": "^7.13.0",
|
||||||
|
"@babel/helpers": "^7.13.10",
|
||||||
|
"@babel/parser": "^7.13.10",
|
||||||
|
"@babel/template": "^7.12.13",
|
||||||
|
"@babel/traverse": "^7.13.0",
|
||||||
|
"@babel/types": "^7.13.0",
|
||||||
|
"convert-source-map": "^1.7.0",
|
||||||
|
"debug": "^4.1.0",
|
||||||
|
"gensync": "^1.0.0-beta.2",
|
||||||
|
"json5": "^2.1.2",
|
||||||
|
"lodash": "^4.17.19",
|
||||||
|
"semver": "^6.3.0",
|
||||||
|
"source-map": "^0.5.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"@babel/generator": {
|
||||||
|
"version": "7.13.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.13.9.tgz",
|
||||||
|
"integrity": "sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw==",
|
||||||
|
"requires": {
|
||||||
|
"@babel/types": "^7.13.0",
|
||||||
|
"jsesc": "^2.5.1",
|
||||||
|
"source-map": "^0.5.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"@babel/parser": {
|
||||||
|
"version": "7.13.10",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.10.tgz",
|
||||||
|
"integrity": "sha512-0s7Mlrw9uTWkYua7xWr99Wpk2bnGa0ANleKfksYAES8LpWH4gW1OUr42vqKNf0us5UQNfru2wPqMqRITzq/SIQ=="
|
||||||
|
},
|
||||||
|
"@babel/traverse": {
|
||||||
|
"version": "7.13.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz",
|
||||||
|
"integrity": "sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ==",
|
||||||
|
"requires": {
|
||||||
|
"@babel/code-frame": "^7.12.13",
|
||||||
|
"@babel/generator": "^7.13.0",
|
||||||
|
"@babel/helper-function-name": "^7.12.13",
|
||||||
|
"@babel/helper-split-export-declaration": "^7.12.13",
|
||||||
|
"@babel/parser": "^7.13.0",
|
||||||
|
"@babel/types": "^7.13.0",
|
||||||
|
"debug": "^4.1.0",
|
||||||
|
"globals": "^11.1.0",
|
||||||
|
"lodash": "^4.17.19"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"@babel/types": {
|
||||||
|
"version": "7.13.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz",
|
||||||
|
"integrity": "sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA==",
|
||||||
|
"requires": {
|
||||||
|
"@babel/helper-validator-identifier": "^7.12.11",
|
||||||
|
"lodash": "^4.17.19",
|
||||||
|
"to-fast-properties": "^2.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"@types/chart.js": {
|
"@types/chart.js": {
|
||||||
"version": "2.9.34",
|
"version": "2.9.34",
|
||||||
"resolved": "https://registry.npmjs.org/@types/chart.js/-/chart.js-2.9.34.tgz",
|
"resolved": "https://registry.npmjs.org/@types/chart.js/-/chart.js-2.9.34.tgz",
|
||||||
|
@ -10348,6 +10535,11 @@
|
||||||
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz",
|
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz",
|
||||||
"integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ=="
|
"integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ=="
|
||||||
},
|
},
|
||||||
|
"@types/lodash": {
|
||||||
|
"version": "4.14.168",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.168.tgz",
|
||||||
|
"integrity": "sha512-oVfRvqHV/V6D1yifJbVRU3TMp8OT6o6BG+U9MkwuJ3U8/CsDHvalRpsxBqivn71ztOFZBTfJMvETbqHiaNSj7Q=="
|
||||||
|
},
|
||||||
"@types/minimatch": {
|
"@types/minimatch": {
|
||||||
"version": "3.0.5",
|
"version": "3.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
|
||||||
|
@ -12324,6 +12516,11 @@
|
||||||
"resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
|
||||||
"integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
|
"integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
|
||||||
},
|
},
|
||||||
|
"javascript-natural-sort": {
|
||||||
|
"version": "0.7.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz",
|
||||||
|
"integrity": "sha1-+eIwPUUH9tdDVac2ZNFED7Wg71k="
|
||||||
|
},
|
||||||
"jest-get-type": {
|
"jest-get-type": {
|
||||||
"version": "26.3.0",
|
"version": "26.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz",
|
||||||
|
|
|
@ -60,6 +60,7 @@
|
||||||
"@sentry/browser": "^6.13.1",
|
"@sentry/browser": "^6.13.1",
|
||||||
"@sentry/tracing": "^6.13.1",
|
"@sentry/tracing": "^6.13.1",
|
||||||
"@squoosh/cli": "^0.7.2",
|
"@squoosh/cli": "^0.7.2",
|
||||||
|
"@trivago/prettier-plugin-sort-imports": "^2.0.4",
|
||||||
"@types/chart.js": "^2.9.34",
|
"@types/chart.js": "^2.9.34",
|
||||||
"@types/codemirror": "5.60.2",
|
"@types/codemirror": "5.60.2",
|
||||||
"@types/grecaptcha": "^3.0.3",
|
"@types/grecaptcha": "^3.0.3",
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
|
import "@webcomponents/webcomponentsjs";
|
||||||
|
import "construct-style-sheets-polyfill";
|
||||||
|
|
||||||
|
import "lit/polyfill-support";
|
||||||
|
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
window["polymerSkipLoadingFontRoboto"] = true;
|
window["polymerSkipLoadingFontRoboto"] = true;
|
||||||
import "construct-style-sheets-polyfill";
|
|
||||||
import "@webcomponents/webcomponentsjs";
|
|
||||||
import "lit/polyfill-support";
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
import resolve from "rollup-plugin-node-resolve";
|
|
||||||
import commonjs from "rollup-plugin-commonjs";
|
|
||||||
import { terser } from "rollup-plugin-terser";
|
|
||||||
import sourcemaps from "rollup-plugin-sourcemaps";
|
|
||||||
import cssimport from "rollup-plugin-cssimport";
|
|
||||||
import copy from "rollup-plugin-copy";
|
|
||||||
import babel from "@rollup/plugin-babel";
|
import babel from "@rollup/plugin-babel";
|
||||||
import replace from "@rollup/plugin-replace";
|
import replace from "@rollup/plugin-replace";
|
||||||
|
import commonjs from "rollup-plugin-commonjs";
|
||||||
|
import copy from "rollup-plugin-copy";
|
||||||
|
import cssimport from "rollup-plugin-cssimport";
|
||||||
|
import resolve from "rollup-plugin-node-resolve";
|
||||||
|
import sourcemaps from "rollup-plugin-sourcemaps";
|
||||||
|
import { terser } from "rollup-plugin-terser";
|
||||||
|
|
||||||
const extensions = [".js", ".jsx", ".ts", ".tsx"];
|
const extensions = [".js", ".jsx", ".ts", ".tsx"];
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { EVENT_WS_MESSAGE } from "../constants";
|
import { EVENT_WS_MESSAGE } from "../constants";
|
||||||
import { MessageLevel } from "../elements/messages/Message";
|
import { MessageLevel } from "../elements/messages/Message";
|
||||||
import { showMessage } from "../elements/messages/MessageContainer";
|
import { showMessage } from "../elements/messages/MessageContainer";
|
||||||
|
|
|
@ -1,22 +1,23 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
|
||||||
import { customElement, property } from "lit/decorators";
|
|
||||||
|
|
||||||
import CodeMirror from "codemirror";
|
import CodeMirror from "codemirror";
|
||||||
|
import "codemirror/addon/dialog/dialog";
|
||||||
import "codemirror/addon/display/autorefresh";
|
import "codemirror/addon/display/autorefresh";
|
||||||
|
import "codemirror/addon/hint/show-hint";
|
||||||
import "codemirror/addon/search/search";
|
import "codemirror/addon/search/search";
|
||||||
import "codemirror/addon/search/searchcursor";
|
import "codemirror/addon/search/searchcursor";
|
||||||
import "codemirror/addon/dialog/dialog";
|
|
||||||
import "codemirror/addon/hint/show-hint";
|
|
||||||
import "codemirror/mode/xml/xml.js";
|
|
||||||
import "codemirror/mode/yaml/yaml.js";
|
|
||||||
import "codemirror/mode/javascript/javascript.js";
|
import "codemirror/mode/javascript/javascript.js";
|
||||||
import "codemirror/mode/python/python.js";
|
import "codemirror/mode/python/python.js";
|
||||||
import CodeMirrorStyle from "codemirror/lib/codemirror.css";
|
import "codemirror/mode/xml/xml.js";
|
||||||
import CodeMirrorTheme from "codemirror/theme/monokai.css";
|
import "codemirror/mode/yaml/yaml.js";
|
||||||
|
import YAML from "yaml";
|
||||||
|
|
||||||
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
|
import { customElement, property } from "lit/decorators";
|
||||||
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
import CodeMirrorDialogStyle from "codemirror/addon/dialog/dialog.css";
|
import CodeMirrorDialogStyle from "codemirror/addon/dialog/dialog.css";
|
||||||
import CodeMirrorShowHintStyle from "codemirror/addon/hint/show-hint.css";
|
import CodeMirrorShowHintStyle from "codemirror/addon/hint/show-hint.css";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import CodeMirrorStyle from "codemirror/lib/codemirror.css";
|
||||||
import YAML from "yaml";
|
import CodeMirrorTheme from "codemirror/theme/monokai.css";
|
||||||
|
|
||||||
@customElement("ak-codemirror")
|
@customElement("ak-codemirror")
|
||||||
export class CodeMirrorTextarea extends LitElement {
|
export class CodeMirrorTextarea extends LitElement {
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import AKGlobal from "../authentik.css";
|
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
|
import AKGlobal from "../authentik.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
@customElement("ak-divider")
|
@customElement("ak-divider")
|
||||||
export class Divider extends LitElement {
|
export class Divider extends LitElement {
|
||||||
static get styles(): CSSResult[] {
|
static get styles(): CSSResult[] {
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import PFEmptyState from "@patternfly/patternfly/components/EmptyState/empty-state.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
|
||||||
import AKGlobal from "../authentik.css";
|
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import AKGlobal from "../authentik.css";
|
||||||
|
import PFEmptyState from "@patternfly/patternfly/components/EmptyState/empty-state.css";
|
||||||
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import { PFSize } from "./Spinner";
|
import { PFSize } from "./Spinner";
|
||||||
|
|
||||||
@customElement("ak-empty-state")
|
@customElement("ak-empty-state")
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import PFExpandableSection from "../../node_modules/@patternfly/patternfly/components/ExpandableSection/expandable-section.css";
|
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import PFExpandableSection from "../../node_modules/@patternfly/patternfly/components/ExpandableSection/expandable-section.css";
|
||||||
|
|
||||||
@customElement("ak-expand")
|
@customElement("ak-expand")
|
||||||
export class Expand extends LitElement {
|
export class Expand extends LitElement {
|
||||||
@property({ type: Boolean })
|
@property({ type: Boolean })
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFLabel from "@patternfly/patternfly/components/Label/label.css";
|
|
||||||
import AKGlobal from "../authentik.css";
|
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import AKGlobal from "../authentik.css";
|
||||||
|
import PFLabel from "@patternfly/patternfly/components/Label/label.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
export enum PFColor {
|
export enum PFColor {
|
||||||
Green = "pf-m-green",
|
Green = "pf-m-green",
|
||||||
Orange = "pf-m-orange",
|
Orange = "pf-m-orange",
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import { PFSize } from "./Spinner";
|
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
|
import { PFSize } from "./Spinner";
|
||||||
|
|
||||||
@customElement("ak-loading-overlay")
|
@customElement("ak-loading-overlay")
|
||||||
export class LoadingOverlay extends LitElement {
|
export class LoadingOverlay extends LitElement {
|
||||||
@property({ type: Boolean })
|
@property({ type: Boolean })
|
||||||
|
|
|
@ -1,10 +1,15 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
|
||||||
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
|
||||||
import AKGlobal from "../authentik.css";
|
import AKGlobal from "../authentik.css";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
|
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
||||||
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
|
import { EventsApi } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { DEFAULT_CONFIG, tenant } from "../api/Config";
|
||||||
import {
|
import {
|
||||||
EVENT_API_DRAWER_TOGGLE,
|
EVENT_API_DRAWER_TOGGLE,
|
||||||
EVENT_NOTIFICATION_DRAWER_TOGGLE,
|
EVENT_NOTIFICATION_DRAWER_TOGGLE,
|
||||||
|
@ -12,8 +17,6 @@ import {
|
||||||
EVENT_SIDEBAR_TOGGLE,
|
EVENT_SIDEBAR_TOGGLE,
|
||||||
TITLE_DEFAULT,
|
TITLE_DEFAULT,
|
||||||
} from "../constants";
|
} from "../constants";
|
||||||
import { DEFAULT_CONFIG, tenant } from "../api/Config";
|
|
||||||
import { EventsApi } from "@goauthentik/api";
|
|
||||||
|
|
||||||
@customElement("ak-page-header")
|
@customElement("ak-page-header")
|
||||||
export class PageHeader extends LitElement {
|
export class PageHeader extends LitElement {
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import PFSpinner from "@patternfly/patternfly/components/Spinner/spinner.css";
|
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import PFSpinner from "@patternfly/patternfly/components/Spinner/spinner.css";
|
||||||
|
|
||||||
export enum PFSize {
|
export enum PFSize {
|
||||||
Small = "pf-m-sm",
|
Small = "pf-m-sm",
|
||||||
Medium = "pf-m-md",
|
Medium = "pf-m-md",
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { LitElement, html, CSSResult, TemplateResult, css } from "lit";
|
import { LitElement, html, CSSResult, TemplateResult, css } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
|
import AKGlobal from "../authentik.css";
|
||||||
import PFTabs from "@patternfly/patternfly/components/Tabs/tabs.css";
|
import PFTabs from "@patternfly/patternfly/components/Tabs/tabs.css";
|
||||||
import PFGlobal from "@patternfly/patternfly/patternfly-base.css";
|
import PFGlobal from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../authentik.css";
|
|
||||||
import { CURRENT_CLASS, ROUTE_SEPARATOR } from "../constants";
|
import { CURRENT_CLASS, ROUTE_SEPARATOR } from "../constants";
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
|
|
||||||
@customElement("ak-tabs")
|
@customElement("ak-tabs")
|
||||||
export class Tabs extends LitElement {
|
export class Tabs extends LitElement {
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { SpinnerButton } from "./SpinnerButton";
|
|
||||||
import { showMessage } from "../messages/MessageContainer";
|
|
||||||
import { MessageLevel } from "../messages/Message";
|
import { MessageLevel } from "../messages/Message";
|
||||||
|
import { showMessage } from "../messages/MessageContainer";
|
||||||
|
import { SpinnerButton } from "./SpinnerButton";
|
||||||
|
|
||||||
@customElement("ak-action-button")
|
@customElement("ak-action-button")
|
||||||
export class ActionButton extends SpinnerButton {
|
export class ActionButton extends SpinnerButton {
|
||||||
|
|
|
@ -5,9 +5,10 @@ import { customElement } from "lit/decorators";
|
||||||
export class DropdownButton extends LitElement {
|
export class DropdownButton extends LitElement {
|
||||||
constructor() {
|
constructor() {
|
||||||
super();
|
super();
|
||||||
const menu = <HTMLElement>this.querySelector(".pf-c-dropdown__menu");
|
const menu = this.querySelector<HTMLElement>(".pf-c-dropdown__menu");
|
||||||
this.querySelectorAll("button.pf-c-dropdown__toggle").forEach((btn) => {
|
this.querySelectorAll("button.pf-c-dropdown__toggle").forEach((btn) => {
|
||||||
btn.addEventListener("click", () => {
|
btn.addEventListener("click", () => {
|
||||||
|
if (!menu) return;
|
||||||
menu.hidden = !menu.hidden;
|
menu.hidden = !menu.hidden;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,17 +1,19 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFBackdrop from "@patternfly/patternfly/components/Backdrop/backdrop.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFModalBox from "@patternfly/patternfly/components/ModalBox/modal-box.css";
|
import PFCard from "@patternfly/patternfly/components/Card/card.css";
|
||||||
|
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
import PFBullseye from "@patternfly/patternfly/layouts/Bullseye/bullseye.css";
|
import PFModalBox from "@patternfly/patternfly/components/ModalBox/modal-box.css";
|
||||||
import PFBackdrop from "@patternfly/patternfly/components/Backdrop/backdrop.css";
|
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
import PFCard from "@patternfly/patternfly/components/Card/card.css";
|
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
import PFBullseye from "@patternfly/patternfly/layouts/Bullseye/bullseye.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import { PFSize } from "../Spinner";
|
import { PFSize } from "../Spinner";
|
||||||
|
|
||||||
export const MODAL_BUTTON_STYLES = css`
|
export const MODAL_BUTTON_STYLES = css`
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
|
import AKGlobal from "../../authentik.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFSpinner from "@patternfly/patternfly/components/Spinner/spinner.css";
|
import PFSpinner from "@patternfly/patternfly/components/Spinner/spinner.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import { PFSize } from "../Spinner";
|
|
||||||
import { ERROR_CLASS, PROGRESS_CLASS, SUCCESS_CLASS } from "../../constants";
|
import { ERROR_CLASS, PROGRESS_CLASS, SUCCESS_CLASS } from "../../constants";
|
||||||
|
import { PFSize } from "../Spinner";
|
||||||
|
|
||||||
@customElement("ak-spinner-button")
|
@customElement("ak-spinner-button")
|
||||||
export class SpinnerButton extends LitElement {
|
export class SpinnerButton extends LitElement {
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import { CoreApi } from "@goauthentik/api";
|
import { CoreApi } from "@goauthentik/api";
|
||||||
import { ERROR_CLASS, SECONDARY_CLASS, SUCCESS_CLASS } from "../../constants";
|
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
|
import { ERROR_CLASS, SECONDARY_CLASS, SUCCESS_CLASS } from "../../constants";
|
||||||
import { ActionButton } from "./ActionButton";
|
import { ActionButton } from "./ActionButton";
|
||||||
|
|
||||||
@customElement("ak-token-copy-button")
|
@customElement("ak-token-copy-button")
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
|
import AKGlobal from "../../authentik.css";
|
||||||
import PFCard from "@patternfly/patternfly/components/Card/card.css";
|
import PFCard from "@patternfly/patternfly/components/Card/card.css";
|
||||||
import PFFlex from "@patternfly/patternfly/layouts/Flex/flex.css";
|
import PFFlex from "@patternfly/patternfly/layouts/Flex/flex.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
@customElement("ak-aggregate-card")
|
@customElement("ak-aggregate-card")
|
||||||
export class AggregateCard extends LitElement {
|
export class AggregateCard extends LitElement {
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { until } from "lit/directives/until";
|
import { until } from "lit/directives/until";
|
||||||
import { AggregateCard } from "./AggregateCard";
|
|
||||||
import "../Spinner";
|
import "../Spinner";
|
||||||
import { PFSize } from "../Spinner";
|
import { PFSize } from "../Spinner";
|
||||||
|
import { AggregateCard } from "./AggregateCard";
|
||||||
|
|
||||||
@customElement("ak-aggregate-card-promise")
|
@customElement("ak-aggregate-card-promise")
|
||||||
export class AggregatePromiseCard extends AggregateCard {
|
export class AggregatePromiseCard extends AggregateCard {
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
import { customElement } from "lit/decorators";
|
|
||||||
import { ChartData } from "chart.js";
|
import { ChartData } from "chart.js";
|
||||||
|
|
||||||
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
import { AdminApi, LoginMetrics } from "@goauthentik/api";
|
import { AdminApi, LoginMetrics } from "@goauthentik/api";
|
||||||
import { AKChart } from "./Chart";
|
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
|
import { AKChart } from "./Chart";
|
||||||
|
|
||||||
@customElement("ak-charts-admin-login")
|
@customElement("ak-charts-admin-login")
|
||||||
export class AdminLoginsChart extends AKChart<LoginMetrics> {
|
export class AdminLoginsChart extends AKChart<LoginMetrics> {
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
|
import { ChartData } from "chart.js";
|
||||||
|
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import { Coordinate, CoreApi } from "@goauthentik/api";
|
import { Coordinate, CoreApi } from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
import { AKChart } from "./Chart";
|
import { AKChart } from "./Chart";
|
||||||
import { ChartData } from "chart.js";
|
|
||||||
|
|
||||||
@customElement("ak-charts-application-authorize")
|
@customElement("ak-charts-application-authorize")
|
||||||
export class ApplicationAuthorizeChart extends AKChart<Coordinate[]> {
|
export class ApplicationAuthorizeChart extends AKChart<Coordinate[]> {
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
|
||||||
import { property } from "lit/decorators";
|
|
||||||
import { Chart, Plugin, Tick, ChartConfiguration, ChartData, ChartOptions } from "chart.js";
|
import { Chart, Plugin, Tick, ChartConfiguration, ChartData, ChartOptions } from "chart.js";
|
||||||
import { Legend, Tooltip } from "chart.js";
|
import { Legend, Tooltip } from "chart.js";
|
||||||
import { DoughnutController, LineController, BarController } from "chart.js";
|
import { DoughnutController, LineController, BarController } from "chart.js";
|
||||||
import { ArcElement, BarElement } from "chart.js";
|
import { ArcElement, BarElement } from "chart.js";
|
||||||
import { TimeScale, LinearScale } from "chart.js";
|
import { TimeScale, LinearScale } from "chart.js";
|
||||||
import "chartjs-adapter-moment";
|
import "chartjs-adapter-moment";
|
||||||
import { FONT_COLOUR_DARK_MODE, FONT_COLOUR_LIGHT_MODE } from "../../pages/flows/FlowDiagram";
|
|
||||||
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
|
import { property } from "lit/decorators";
|
||||||
|
|
||||||
import { EVENT_REFRESH } from "../../constants";
|
import { EVENT_REFRESH } from "../../constants";
|
||||||
|
import { FONT_COLOUR_DARK_MODE, FONT_COLOUR_LIGHT_MODE } from "../../pages/flows/FlowDiagram";
|
||||||
|
|
||||||
Chart.register(Legend, Tooltip);
|
Chart.register(Legend, Tooltip);
|
||||||
Chart.register(LineController, BarController, DoughnutController);
|
Chart.register(LineController, BarController, DoughnutController);
|
||||||
|
@ -68,7 +70,7 @@ export abstract class AKChart<T> extends LitElement {
|
||||||
|
|
||||||
firstUpdated(): void {
|
firstUpdated(): void {
|
||||||
this.apiRequest().then((r) => {
|
this.apiRequest().then((r) => {
|
||||||
const canvas = <HTMLCanvasElement>this.shadowRoot?.querySelector("canvas");
|
const canvas = this.shadowRoot?.querySelector<HTMLCanvasElement>("canvas");
|
||||||
if (!canvas) {
|
if (!canvas) {
|
||||||
console.warn("Failed to get canvas element");
|
console.warn("Failed to get canvas element");
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
import { customElement, property } from "lit/decorators";
|
|
||||||
import { CoreApi, UserMetrics } from "@goauthentik/api";
|
|
||||||
import { AKChart } from "./Chart";
|
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
|
||||||
import { ChartData } from "chart.js";
|
import { ChartData } from "chart.js";
|
||||||
|
|
||||||
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import { CoreApi, UserMetrics } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
|
import { AKChart } from "./Chart";
|
||||||
|
|
||||||
@customElement("ak-charts-user")
|
@customElement("ak-charts-user")
|
||||||
export class UserChart extends AKChart<UserMetrics> {
|
export class UserChart extends AKChart<UserMetrics> {
|
||||||
@property({ type: Number })
|
@property({ type: Number })
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFChip from "@patternfly/patternfly/components/Chip/chip.css";
|
import PFChip from "@patternfly/patternfly/components/Chip/chip.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
@customElement("ak-chip")
|
@customElement("ak-chip")
|
||||||
export class Chip extends LitElement {
|
export class Chip extends LitElement {
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFChip from "@patternfly/patternfly/components/Chip/chip.css";
|
import PFChip from "@patternfly/patternfly/components/Chip/chip.css";
|
||||||
import PFChipGroup from "@patternfly/patternfly/components/ChipGroup/chip-group.css";
|
import PFChipGroup from "@patternfly/patternfly/components/ChipGroup/chip-group.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
|
||||||
import { Chip } from "./Chip";
|
import { Chip } from "./Chip";
|
||||||
|
|
||||||
@customElement("ak-chip-group")
|
@customElement("ak-chip-group")
|
||||||
|
|
|
@ -1,18 +1,20 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { AKResponse } from "../../api/Client";
|
|
||||||
import { Table, TableColumn } from "../table/Table";
|
|
||||||
import { Event, EventsApi } from "@goauthentik/api";
|
import { Event, EventsApi } from "@goauthentik/api";
|
||||||
|
|
||||||
import "../Tabs";
|
import { AKResponse } from "../../api/Client";
|
||||||
import "../buttons/ModalButton";
|
|
||||||
import "../buttons/SpinnerButton";
|
|
||||||
import "../buttons/Dropdown";
|
|
||||||
import "../../pages/events/EventInfo";
|
|
||||||
import { PAGE_SIZE } from "../../constants";
|
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
import { EventWithContext } from "../../api/Events";
|
import { EventWithContext } from "../../api/Events";
|
||||||
|
import { PAGE_SIZE } from "../../constants";
|
||||||
|
import "../../pages/events/EventInfo";
|
||||||
|
import "../Tabs";
|
||||||
|
import "../buttons/Dropdown";
|
||||||
|
import "../buttons/ModalButton";
|
||||||
|
import "../buttons/SpinnerButton";
|
||||||
|
import { Table, TableColumn } from "../table/Table";
|
||||||
|
|
||||||
@customElement("ak-object-changelog")
|
@customElement("ak-object-changelog")
|
||||||
export class ObjectChangelog extends Table<Event> {
|
export class ObjectChangelog extends Table<Event> {
|
||||||
|
|
|
@ -1,18 +1,20 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { AKResponse } from "../../api/Client";
|
|
||||||
import { Table, TableColumn } from "../table/Table";
|
|
||||||
import { Event, EventsApi } from "@goauthentik/api";
|
import { Event, EventsApi } from "@goauthentik/api";
|
||||||
|
|
||||||
import "../Tabs";
|
import { AKResponse } from "../../api/Client";
|
||||||
import "../buttons/ModalButton";
|
|
||||||
import "../buttons/SpinnerButton";
|
|
||||||
import "../buttons/Dropdown";
|
|
||||||
import "../../pages/events/EventInfo";
|
|
||||||
import { PAGE_SIZE } from "../../constants";
|
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
import { EventWithContext } from "../../api/Events";
|
import { EventWithContext } from "../../api/Events";
|
||||||
|
import { PAGE_SIZE } from "../../constants";
|
||||||
|
import "../../pages/events/EventInfo";
|
||||||
|
import "../Tabs";
|
||||||
|
import "../buttons/Dropdown";
|
||||||
|
import "../buttons/ModalButton";
|
||||||
|
import "../buttons/SpinnerButton";
|
||||||
|
import { Table, TableColumn } from "../table/Table";
|
||||||
|
|
||||||
@customElement("ak-events-user")
|
@customElement("ak-events-user")
|
||||||
export class ObjectChangelog extends Table<Event> {
|
export class ObjectChangelog extends Table<Event> {
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import { EVENT_REFRESH } from "../../constants";
|
import { EVENT_REFRESH } from "../../constants";
|
||||||
import { ModalButton } from "../buttons/ModalButton";
|
import { ModalButton } from "../buttons/ModalButton";
|
||||||
import "../buttons/SpinnerButton";
|
import "../buttons/SpinnerButton";
|
||||||
|
|
|
@ -1,17 +1,21 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
import { until } from "lit/directives/until";
|
||||||
|
|
||||||
|
import PFList from "@patternfly/patternfly/components/List/list.css";
|
||||||
|
|
||||||
|
import { UsedBy, UsedByActionEnum } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { AKResponse } from "../../api/Client";
|
||||||
import { EVENT_REFRESH } from "../../constants";
|
import { EVENT_REFRESH } from "../../constants";
|
||||||
|
import { PFSize } from "../Spinner";
|
||||||
import { ModalButton } from "../buttons/ModalButton";
|
import { ModalButton } from "../buttons/ModalButton";
|
||||||
|
import "../buttons/SpinnerButton";
|
||||||
import { MessageLevel } from "../messages/Message";
|
import { MessageLevel } from "../messages/Message";
|
||||||
import { showMessage } from "../messages/MessageContainer";
|
import { showMessage } from "../messages/MessageContainer";
|
||||||
import "../buttons/SpinnerButton";
|
|
||||||
import { UsedBy, UsedByActionEnum } from "@goauthentik/api";
|
|
||||||
import PFList from "@patternfly/patternfly/components/List/list.css";
|
|
||||||
import { until } from "lit/directives/until";
|
|
||||||
import { Table, TableColumn } from "../table/Table";
|
import { Table, TableColumn } from "../table/Table";
|
||||||
import { AKResponse } from "../../api/Client";
|
|
||||||
import { PFSize } from "../Spinner";
|
|
||||||
|
|
||||||
type BulkDeleteMetadata = { key: string; value: string }[];
|
type BulkDeleteMetadata = { key: string; value: string }[];
|
||||||
|
|
||||||
|
|
|
@ -1,14 +1,18 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
import { until } from "lit/directives/until";
|
||||||
|
|
||||||
|
import PFList from "@patternfly/patternfly/components/List/list.css";
|
||||||
|
|
||||||
|
import { UsedBy, UsedByActionEnum } from "@goauthentik/api";
|
||||||
|
|
||||||
import { EVENT_REFRESH } from "../../constants";
|
import { EVENT_REFRESH } from "../../constants";
|
||||||
import { ModalButton } from "../buttons/ModalButton";
|
import { ModalButton } from "../buttons/ModalButton";
|
||||||
|
import "../buttons/SpinnerButton";
|
||||||
import { MessageLevel } from "../messages/Message";
|
import { MessageLevel } from "../messages/Message";
|
||||||
import { showMessage } from "../messages/MessageContainer";
|
import { showMessage } from "../messages/MessageContainer";
|
||||||
import "../buttons/SpinnerButton";
|
|
||||||
import { UsedBy, UsedByActionEnum } from "@goauthentik/api";
|
|
||||||
import PFList from "@patternfly/patternfly/components/List/list.css";
|
|
||||||
import { until } from "lit/directives/until";
|
|
||||||
|
|
||||||
@customElement("ak-forms-delete")
|
@customElement("ak-forms-delete")
|
||||||
export class DeleteForm extends ModalButton {
|
export class DeleteForm extends ModalButton {
|
||||||
|
|
|
@ -1,22 +1,26 @@
|
||||||
import "@polymer/paper-input/paper-input";
|
|
||||||
import "@polymer/iron-form/iron-form";
|
import "@polymer/iron-form/iron-form";
|
||||||
|
import { IronFormElement } from "@polymer/iron-form/iron-form";
|
||||||
|
import "@polymer/paper-input/paper-input";
|
||||||
import { PaperInputElement } from "@polymer/paper-input/paper-input";
|
import { PaperInputElement } from "@polymer/paper-input/paper-input";
|
||||||
import { showMessage } from "../../elements/messages/MessageContainer";
|
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFCard from "@patternfly/patternfly/components/Card/card.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFAlert from "@patternfly/patternfly/components/Alert/alert.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
|
import PFCard from "@patternfly/patternfly/components/Card/card.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
import PFAlert from "@patternfly/patternfly/components/Alert/alert.css";
|
|
||||||
import PFInputGroup from "@patternfly/patternfly/components/InputGroup/input-group.css";
|
import PFInputGroup from "@patternfly/patternfly/components/InputGroup/input-group.css";
|
||||||
import { MessageLevel } from "../messages/Message";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import { IronFormElement } from "@polymer/iron-form/iron-form";
|
|
||||||
import { camelToSnake, convertToSlug } from "../../utils";
|
|
||||||
import { ValidationError } from "@goauthentik/api";
|
import { ValidationError } from "@goauthentik/api";
|
||||||
|
|
||||||
import { EVENT_REFRESH } from "../../constants";
|
import { EVENT_REFRESH } from "../../constants";
|
||||||
|
import { showMessage } from "../../elements/messages/MessageContainer";
|
||||||
|
import { camelToSnake, convertToSlug } from "../../utils";
|
||||||
|
import { MessageLevel } from "../messages/Message";
|
||||||
|
|
||||||
export class APIError extends Error {
|
export class APIError extends Error {
|
||||||
constructor(public response: ValidationError) {
|
constructor(public response: ValidationError) {
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
import { LitElement, CSSResult, css } from "lit";
|
import { LitElement, CSSResult, css } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
|
||||||
import { TemplateResult, html } from "lit";
|
import { TemplateResult, html } from "lit";
|
||||||
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
|
||||||
import { ErrorDetail } from "@goauthentik/api";
|
import { ErrorDetail } from "@goauthentik/api";
|
||||||
|
|
||||||
@customElement("ak-form-element")
|
@customElement("ak-form-element")
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
@customElement("ak-form-group")
|
@customElement("ak-form-group")
|
||||||
export class FormGroup extends LitElement {
|
export class FormGroup extends LitElement {
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { LitElement, CSSResult, css } from "lit";
|
import { LitElement, CSSResult, css } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
|
||||||
import { TemplateResult, html } from "lit";
|
import { TemplateResult, html } from "lit";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import AKGlobal from "../../authentik.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
import { FormGroup } from "./FormGroup";
|
import { FormGroup } from "./FormGroup";
|
||||||
|
|
||||||
@customElement("ak-form-element-horizontal")
|
@customElement("ak-form-element-horizontal")
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import { EVENT_REFRESH } from "../../constants";
|
import { EVENT_REFRESH } from "../../constants";
|
||||||
import { ModalButton } from "../buttons/ModalButton";
|
|
||||||
import { Form } from "./Form";
|
|
||||||
import "../buttons/SpinnerButton";
|
|
||||||
import "../LoadingOverlay";
|
import "../LoadingOverlay";
|
||||||
|
import { ModalButton } from "../buttons/ModalButton";
|
||||||
|
import "../buttons/SpinnerButton";
|
||||||
|
import { Form } from "./Form";
|
||||||
|
|
||||||
@customElement("ak-forms-modal")
|
@customElement("ak-forms-modal")
|
||||||
export class ModalForm extends ModalButton {
|
export class ModalForm extends ModalButton {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { TemplateResult } from "lit";
|
import { TemplateResult } from "lit";
|
||||||
import { property } from "lit/decorators";
|
import { property } from "lit/decorators";
|
||||||
|
|
||||||
import { EVENT_REFRESH } from "../../constants";
|
import { EVENT_REFRESH } from "../../constants";
|
||||||
import { Form } from "./Form";
|
import { Form } from "./Form";
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import { Form } from "./Form";
|
import { Form } from "./Form";
|
||||||
|
|
||||||
@customElement("ak-proxy-form")
|
@customElement("ak-proxy-form")
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import PFAlertGroup from "@patternfly/patternfly/components/AlertGroup/alert-group.css";
|
|
||||||
import PFAlert from "@patternfly/patternfly/components/Alert/alert.css";
|
import PFAlert from "@patternfly/patternfly/components/Alert/alert.css";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFAlertGroup from "@patternfly/patternfly/components/AlertGroup/alert-group.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
export enum MessageLevel {
|
export enum MessageLevel {
|
||||||
error = "error",
|
error = "error",
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
import { LitElement, html, TemplateResult, CSSResult, css } from "lit";
|
import { LitElement, html, TemplateResult, CSSResult, css } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import "./Message";
|
|
||||||
import { APIMessage } from "./Message";
|
|
||||||
import PFAlertGroup from "@patternfly/patternfly/components/AlertGroup/alert-group.css";
|
import PFAlertGroup from "@patternfly/patternfly/components/AlertGroup/alert-group.css";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import { EVENT_WS_MESSAGE, WS_MSG_TYPE_MESSAGE } from "../../constants";
|
|
||||||
import { WSMessage } from "../../common/ws";
|
import { WSMessage } from "../../common/ws";
|
||||||
|
import { EVENT_WS_MESSAGE, WS_MSG_TYPE_MESSAGE } from "../../constants";
|
||||||
|
import "./Message";
|
||||||
|
import { APIMessage } from "./Message";
|
||||||
|
|
||||||
export function showMessage(message: APIMessage): void {
|
export function showMessage(message: APIMessage): void {
|
||||||
const container = document.querySelector<MessageContainer>("ak-message-container");
|
const container = document.querySelector<MessageContainer>("ak-message-container");
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
import { Middleware, ResponseContext } from "@goauthentik/api";
|
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
|
import { Middleware, ResponseContext } from "@goauthentik/api";
|
||||||
|
|
||||||
import { MessageLevel } from "./Message";
|
import { MessageLevel } from "./Message";
|
||||||
import { showMessage } from "./MessageContainer";
|
import { showMessage } from "./MessageContainer";
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,17 @@
|
||||||
import { Middleware, ResponseContext } from "@goauthentik/api";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFNotificationDrawer from "@patternfly/patternfly/components/NotificationDrawer/notification-drawer.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
import PFDropdown from "@patternfly/patternfly/components/Dropdown/dropdown.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
import PFDropdown from "@patternfly/patternfly/components/Dropdown/dropdown.css";
|
||||||
import { t } from "@lingui/macro";
|
import PFNotificationDrawer from "@patternfly/patternfly/components/NotificationDrawer/notification-drawer.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
|
import { Middleware, ResponseContext } from "@goauthentik/api";
|
||||||
|
|
||||||
import { EVENT_API_DRAWER_REFRESH, EVENT_API_DRAWER_TOGGLE } from "../../constants";
|
import { EVENT_API_DRAWER_REFRESH, EVENT_API_DRAWER_TOGGLE } from "../../constants";
|
||||||
|
|
||||||
export interface RequestInfo {
|
export interface RequestInfo {
|
||||||
|
|
|
@ -1,19 +1,23 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
|
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
||||||
|
import PFDropdown from "@patternfly/patternfly/components/Dropdown/dropdown.css";
|
||||||
|
import PFNotificationDrawer from "@patternfly/patternfly/components/NotificationDrawer/notification-drawer.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import { EventsApi, Notification } from "@goauthentik/api";
|
import { EventsApi, Notification } from "@goauthentik/api";
|
||||||
|
|
||||||
import { AKResponse } from "../../api/Client";
|
import { AKResponse } from "../../api/Client";
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFNotificationDrawer from "@patternfly/patternfly/components/NotificationDrawer/notification-drawer.css";
|
|
||||||
import PFDropdown from "@patternfly/patternfly/components/Dropdown/dropdown.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
|
||||||
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
|
||||||
import { EVENT_NOTIFICATION_DRAWER_TOGGLE, EVENT_REFRESH } from "../../constants";
|
import { EVENT_NOTIFICATION_DRAWER_TOGGLE, EVENT_REFRESH } from "../../constants";
|
||||||
import { ActionToLabel } from "../../pages/events/utils";
|
import { ActionToLabel } from "../../pages/events/utils";
|
||||||
import { showMessage } from "../messages/MessageContainer";
|
|
||||||
import { MessageLevel } from "../messages/Message";
|
import { MessageLevel } from "../messages/Message";
|
||||||
|
import { showMessage } from "../messages/MessageContainer";
|
||||||
|
|
||||||
@customElement("ak-notification-drawer")
|
@customElement("ak-notification-drawer")
|
||||||
export class NotificationDrawer extends LitElement {
|
export class NotificationDrawer extends LitElement {
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { AKResponse } from "../../api/Client";
|
|
||||||
import { Table, TableColumn } from "../table/Table";
|
|
||||||
|
|
||||||
import "../forms/DeleteBulkForm";
|
|
||||||
import { PAGE_SIZE } from "../../constants";
|
|
||||||
import { ExpiringBaseGrantModel, Oauth2Api } from "@goauthentik/api";
|
import { ExpiringBaseGrantModel, Oauth2Api } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { AKResponse } from "../../api/Client";
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
|
import { PAGE_SIZE } from "../../constants";
|
||||||
|
import "../forms/DeleteBulkForm";
|
||||||
|
import { Table, TableColumn } from "../table/Table";
|
||||||
|
|
||||||
@customElement("ak-user-oauth-code-list")
|
@customElement("ak-user-oauth-code-list")
|
||||||
export class UserOAuthCodeList extends Table<ExpiringBaseGrantModel> {
|
export class UserOAuthCodeList extends Table<ExpiringBaseGrantModel> {
|
||||||
|
|
|
@ -1,14 +1,17 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { AKResponse } from "../../api/Client";
|
|
||||||
import { Table, TableColumn } from "../table/Table";
|
|
||||||
import PFFlex from "@patternfly/patternfly/layouts/Flex/flex.css";
|
import PFFlex from "@patternfly/patternfly/layouts/Flex/flex.css";
|
||||||
|
|
||||||
import "../forms/DeleteBulkForm";
|
|
||||||
import { PAGE_SIZE } from "../../constants";
|
|
||||||
import { RefreshTokenModel, Oauth2Api, ExpiringBaseGrantModel } from "@goauthentik/api";
|
import { RefreshTokenModel, Oauth2Api, ExpiringBaseGrantModel } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { AKResponse } from "../../api/Client";
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
|
import { PAGE_SIZE } from "../../constants";
|
||||||
|
import "../forms/DeleteBulkForm";
|
||||||
|
import { Table, TableColumn } from "../table/Table";
|
||||||
|
|
||||||
@customElement("ak-user-oauth-refresh-list")
|
@customElement("ak-user-oauth-refresh-list")
|
||||||
export class UserOAuthRefreshList extends Table<RefreshTokenModel> {
|
export class UserOAuthRefreshList extends Table<RefreshTokenModel> {
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { TemplateResult } from "lit";
|
import { TemplateResult } from "lit";
|
||||||
|
|
||||||
import { Route } from "./Route";
|
import { Route } from "./Route";
|
||||||
|
|
||||||
export class RouteMatch {
|
export class RouteMatch {
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
import PFEmptyState from "@patternfly/patternfly/components/EmptyState/empty-state.css";
|
import PFEmptyState from "@patternfly/patternfly/components/EmptyState/empty-state.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { Route } from "./Route";
|
|
||||||
import { RouteMatch } from "./RouteMatch";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
|
|
||||||
import "./Router404";
|
|
||||||
import { ROUTE_SEPARATOR } from "../../constants";
|
import { ROUTE_SEPARATOR } from "../../constants";
|
||||||
|
import { Route } from "./Route";
|
||||||
|
import { RouteMatch } from "./RouteMatch";
|
||||||
|
import "./Router404";
|
||||||
|
|
||||||
// Poliyfill for hashchange.newURL,
|
// Poliyfill for hashchange.newURL,
|
||||||
// https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onhashchange
|
// https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onhashchange
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
|
||||||
import PFNav from "@patternfly/patternfly/components/Nav/nav.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFNav from "@patternfly/patternfly/components/Nav/nav.css";
|
||||||
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import "./SidebarBrand";
|
import "./SidebarBrand";
|
||||||
import "./SidebarUser";
|
import "./SidebarUser";
|
||||||
|
|
|
@ -1,15 +1,17 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
|
|
||||||
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
import PFGlobal from "@patternfly/patternfly/patternfly-base.css";
|
import PFGlobal from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
|
||||||
|
|
||||||
import { configureSentry } from "../../api/Sentry";
|
|
||||||
import { CurrentTenant } from "@goauthentik/api";
|
import { CurrentTenant } from "@goauthentik/api";
|
||||||
import { EVENT_SIDEBAR_TOGGLE } from "../../constants";
|
|
||||||
import { tenant } from "../../api/Config";
|
import { tenant } from "../../api/Config";
|
||||||
|
import { configureSentry } from "../../api/Sentry";
|
||||||
|
import { EVENT_SIDEBAR_TOGGLE } from "../../constants";
|
||||||
import { first } from "../../utils";
|
import { first } from "../../utils";
|
||||||
|
|
||||||
// If the viewport is wider than MIN_WIDTH, the sidebar
|
// If the viewport is wider than MIN_WIDTH, the sidebar
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
import { css, CSSResult, LitElement } from "lit";
|
import { css, CSSResult, LitElement } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
|
||||||
import PFNav from "@patternfly/patternfly/components/Nav/nav.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
|
||||||
import { TemplateResult, html } from "lit";
|
import { TemplateResult, html } from "lit";
|
||||||
|
import { customElement, property } from "lit/decorators";
|
||||||
import { until } from "lit/directives/until";
|
import { until } from "lit/directives/until";
|
||||||
|
|
||||||
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFNav from "@patternfly/patternfly/components/Nav/nav.css";
|
||||||
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import { ROUTE_SEPARATOR } from "../../constants";
|
import { ROUTE_SEPARATOR } from "../../constants";
|
||||||
|
|
||||||
@customElement("ak-sidebar-item")
|
@customElement("ak-sidebar-item")
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFNav from "@patternfly/patternfly/components/Nav/nav.css";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
import PFAvatar from "@patternfly/patternfly/components/Avatar/avatar.css";
|
|
||||||
import { me } from "../../api/Users";
|
|
||||||
import { until } from "lit/directives/until";
|
import { until } from "lit/directives/until";
|
||||||
|
|
||||||
|
import PFAvatar from "@patternfly/patternfly/components/Avatar/avatar.css";
|
||||||
|
import PFNav from "@patternfly/patternfly/components/Nav/nav.css";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import { me } from "../../api/Users";
|
||||||
|
|
||||||
@customElement("ak-sidebar-user")
|
@customElement("ak-sidebar-user")
|
||||||
export class SidebarUser extends LitElement {
|
export class SidebarUser extends LitElement {
|
||||||
|
|
|
@ -1,24 +1,25 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { property } from "lit/decorators";
|
import { property } from "lit/decorators";
|
||||||
import { AKResponse } from "../../api/Client";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
import PFTable from "@patternfly/patternfly/components/Table/table.css";
|
|
||||||
import PFBullseye from "@patternfly/patternfly/layouts/Bullseye/bullseye.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFToolbar from "@patternfly/patternfly/components/Toolbar/toolbar.css";
|
|
||||||
import PFDropdown from "@patternfly/patternfly/components/Dropdown/dropdown.css";
|
import PFDropdown from "@patternfly/patternfly/components/Dropdown/dropdown.css";
|
||||||
import PFPagination from "@patternfly/patternfly/components/Pagination/pagination.css";
|
import PFPagination from "@patternfly/patternfly/components/Pagination/pagination.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
import PFTable from "@patternfly/patternfly/components/Table/table.css";
|
||||||
|
import PFToolbar from "@patternfly/patternfly/components/Toolbar/toolbar.css";
|
||||||
|
import PFBullseye from "@patternfly/patternfly/layouts/Bullseye/bullseye.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import "./TablePagination";
|
import { AKResponse } from "../../api/Client";
|
||||||
import "./TableSearch";
|
import { EVENT_REFRESH } from "../../constants";
|
||||||
import "../EmptyState";
|
import "../EmptyState";
|
||||||
import "../chips/Chip";
|
import "../chips/Chip";
|
||||||
import "../chips/ChipGroup";
|
import "../chips/ChipGroup";
|
||||||
import { EVENT_REFRESH } from "../../constants";
|
import "./TablePagination";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import "./TableSearch";
|
||||||
|
|
||||||
export class TableColumn {
|
export class TableColumn {
|
||||||
title: string;
|
title: string;
|
||||||
|
|
|
@ -1,16 +1,18 @@
|
||||||
import { CSSResult, LitElement } from "lit";
|
import { CSSResult, LitElement } from "lit";
|
||||||
import { property } from "lit/decorators";
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { Table } from "./Table";
|
import { property } from "lit/decorators";
|
||||||
import PFModalBox from "@patternfly/patternfly/components/ModalBox/modal-box.css";
|
|
||||||
import PFBullseye from "@patternfly/patternfly/layouts/Bullseye/bullseye.css";
|
|
||||||
import PFBackdrop from "@patternfly/patternfly/components/Backdrop/backdrop.css";
|
|
||||||
import PFStack from "@patternfly/patternfly/layouts/Stack/stack.css";
|
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
|
||||||
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFBackdrop from "@patternfly/patternfly/components/Backdrop/backdrop.css";
|
||||||
|
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
||||||
|
import PFModalBox from "@patternfly/patternfly/components/ModalBox/modal-box.css";
|
||||||
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
|
import PFBullseye from "@patternfly/patternfly/layouts/Bullseye/bullseye.css";
|
||||||
|
import PFStack from "@patternfly/patternfly/layouts/Stack/stack.css";
|
||||||
|
|
||||||
import { PFSize } from "../Spinner";
|
import { PFSize } from "../Spinner";
|
||||||
import { MODAL_BUTTON_STYLES } from "../buttons/ModalButton";
|
import { MODAL_BUTTON_STYLES } from "../buttons/ModalButton";
|
||||||
|
import { Table } from "./Table";
|
||||||
|
|
||||||
export abstract class TableModal<T> extends Table<T> {
|
export abstract class TableModal<T> extends Table<T> {
|
||||||
@property()
|
@property()
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
import { CSSResult } from "lit";
|
import { CSSResult } from "lit";
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
import { Table } from "./Table";
|
|
||||||
import "../../elements/PageHeader";
|
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
|
||||||
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
||||||
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
|
|
||||||
|
import "../../elements/PageHeader";
|
||||||
|
import { Table } from "./Table";
|
||||||
|
|
||||||
export abstract class TablePage<T> extends Table<T> {
|
export abstract class TablePage<T> extends Table<T> {
|
||||||
abstract pageTitle(): string;
|
abstract pageTitle(): string;
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { AKPagination } from "../../api/Client";
|
|
||||||
import { t } from "@lingui/macro";
|
import AKGlobal from "../../authentik.css";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFPagination from "@patternfly/patternfly/components/Pagination/pagination.css";
|
import PFPagination from "@patternfly/patternfly/components/Pagination/pagination.css";
|
||||||
import AKGlobal from "../../authentik.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
|
import { AKPagination } from "../../api/Client";
|
||||||
|
|
||||||
@customElement("ak-table-pagination")
|
@customElement("ak-table-pagination")
|
||||||
export class TablePagination extends LitElement {
|
export class TablePagination extends LitElement {
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFToolbar from "@patternfly/patternfly/components/Toolbar/toolbar.css";
|
|
||||||
import PFInputGroup from "@patternfly/patternfly/components/InputGroup/input-group.css";
|
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
import AKGlobal from "../../authentik.css";
|
||||||
import { t } from "@lingui/macro";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFInputGroup from "@patternfly/patternfly/components/InputGroup/input-group.css";
|
||||||
|
import PFToolbar from "@patternfly/patternfly/components/Toolbar/toolbar.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
@customElement("ak-table-search")
|
@customElement("ak-table-search")
|
||||||
export class TableSearch extends LitElement {
|
export class TableSearch extends LitElement {
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { AKResponse } from "../../api/Client";
|
|
||||||
import { Table, TableColumn } from "../table/Table";
|
|
||||||
|
|
||||||
import "../forms/DeleteBulkForm";
|
|
||||||
import { PAGE_SIZE } from "../../constants";
|
|
||||||
import { CoreApi, AuthenticatedSession } from "@goauthentik/api";
|
import { CoreApi, AuthenticatedSession } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { AKResponse } from "../../api/Client";
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
|
import { PAGE_SIZE } from "../../constants";
|
||||||
|
import "../forms/DeleteBulkForm";
|
||||||
|
import { Table, TableColumn } from "../table/Table";
|
||||||
|
|
||||||
@customElement("ak-user-session-list")
|
@customElement("ak-user-session-list")
|
||||||
export class AuthenticatedSessionList extends Table<AuthenticatedSession> {
|
export class AuthenticatedSessionList extends Table<AuthenticatedSession> {
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { AKResponse } from "../../api/Client";
|
|
||||||
import { Table, TableColumn } from "../table/Table";
|
|
||||||
|
|
||||||
import "../forms/DeleteBulkForm";
|
|
||||||
import { PAGE_SIZE } from "../../constants";
|
|
||||||
import { CoreApi, UserConsent } from "@goauthentik/api";
|
import { CoreApi, UserConsent } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { AKResponse } from "../../api/Client";
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
|
import { PAGE_SIZE } from "../../constants";
|
||||||
|
import "../forms/DeleteBulkForm";
|
||||||
|
import { Table, TableColumn } from "../table/Table";
|
||||||
|
|
||||||
@customElement("ak-user-consent-list")
|
@customElement("ak-user-consent-list")
|
||||||
export class UserConsentList extends Table<UserConsent> {
|
export class UserConsentList extends Table<UserConsent> {
|
||||||
|
|
|
@ -1,32 +1,18 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { LitElement, html, TemplateResult, CSSResult, css } from "lit";
|
import { LitElement, html, TemplateResult, CSSResult, css } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
|
||||||
import PFBackgroundImage from "@patternfly/patternfly/components/BackgroundImage/background-image.css";
|
|
||||||
import PFList from "@patternfly/patternfly/components/List/list.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import AKGlobal from "../authentik.css";
|
|
||||||
|
|
||||||
import { unsafeHTML } from "lit/directives/unsafe-html";
|
import { unsafeHTML } from "lit/directives/unsafe-html";
|
||||||
import "../elements/LoadingOverlay";
|
import { until } from "lit/directives/until";
|
||||||
import "./access_denied/FlowAccessDenied";
|
|
||||||
import "./stages/authenticator_static/AuthenticatorStaticStage";
|
import AKGlobal from "../authentik.css";
|
||||||
import "./stages/authenticator_totp/AuthenticatorTOTPStage";
|
import PFBackgroundImage from "@patternfly/patternfly/components/BackgroundImage/background-image.css";
|
||||||
import "./stages/authenticator_duo/AuthenticatorDuoStage";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import "./stages/authenticator_validate/AuthenticatorValidateStage";
|
import PFList from "@patternfly/patternfly/components/List/list.css";
|
||||||
import "./stages/authenticator_webauthn/WebAuthnAuthenticatorRegisterStage";
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import "./stages/autosubmit/AutosubmitStage";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import "./stages/captcha/CaptchaStage";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import "./stages/consent/ConsentStage";
|
|
||||||
import "./stages/dummy/DummyStage";
|
|
||||||
import "./stages/email/EmailStage";
|
|
||||||
import "./stages/identification/IdentificationStage";
|
|
||||||
import "./stages/password/PasswordStage";
|
|
||||||
import "./stages/prompt/PromptStage";
|
|
||||||
import "./sources/plex/PlexLoginInit";
|
|
||||||
import { StageHost } from "./stages/base";
|
|
||||||
import {
|
import {
|
||||||
ChallengeChoices,
|
ChallengeChoices,
|
||||||
CurrentTenant,
|
CurrentTenant,
|
||||||
|
@ -36,13 +22,30 @@ import {
|
||||||
RedirectChallenge,
|
RedirectChallenge,
|
||||||
ShellChallenge,
|
ShellChallenge,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG, tenant } from "../api/Config";
|
import { DEFAULT_CONFIG, tenant } from "../api/Config";
|
||||||
import { until } from "lit/directives/until";
|
|
||||||
import { TITLE_DEFAULT } from "../constants";
|
|
||||||
import { configureSentry } from "../api/Sentry";
|
import { configureSentry } from "../api/Sentry";
|
||||||
import { WebsocketClient } from "../common/ws";
|
import { WebsocketClient } from "../common/ws";
|
||||||
import { first } from "../utils";
|
import { TITLE_DEFAULT } from "../constants";
|
||||||
|
import "../elements/LoadingOverlay";
|
||||||
import { DefaultTenant } from "../elements/sidebar/SidebarBrand";
|
import { DefaultTenant } from "../elements/sidebar/SidebarBrand";
|
||||||
|
import { first } from "../utils";
|
||||||
|
import "./access_denied/FlowAccessDenied";
|
||||||
|
import "./sources/plex/PlexLoginInit";
|
||||||
|
import "./stages/authenticator_duo/AuthenticatorDuoStage";
|
||||||
|
import "./stages/authenticator_static/AuthenticatorStaticStage";
|
||||||
|
import "./stages/authenticator_totp/AuthenticatorTOTPStage";
|
||||||
|
import "./stages/authenticator_validate/AuthenticatorValidateStage";
|
||||||
|
import "./stages/authenticator_webauthn/WebAuthnAuthenticatorRegisterStage";
|
||||||
|
import "./stages/autosubmit/AutosubmitStage";
|
||||||
|
import { StageHost } from "./stages/base";
|
||||||
|
import "./stages/captcha/CaptchaStage";
|
||||||
|
import "./stages/consent/ConsentStage";
|
||||||
|
import "./stages/dummy/DummyStage";
|
||||||
|
import "./stages/email/EmailStage";
|
||||||
|
import "./stages/identification/IdentificationStage";
|
||||||
|
import "./stages/password/PasswordStage";
|
||||||
|
import "./stages/prompt/PromptStage";
|
||||||
|
|
||||||
@customElement("ak-flow-executor")
|
@customElement("ak-flow-executor")
|
||||||
export class FlowExecutor extends LitElement implements StageHost {
|
export class FlowExecutor extends LitElement implements StageHost {
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFAvatar from "@patternfly/patternfly/components/Avatar/avatar.css";
|
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
|
import PFAvatar from "@patternfly/patternfly/components/Avatar/avatar.css";
|
||||||
|
|
||||||
@customElement("ak-form-static")
|
@customElement("ak-form-static")
|
||||||
export class FormStatic extends LitElement {
|
export class FormStatic extends LitElement {
|
||||||
@property()
|
@property()
|
||||||
|
|
|
@ -1,17 +1,20 @@
|
||||||
import { AccessDeniedChallenge, FlowChallengeResponseRequest } from "@goauthentik/api";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import { BaseStage } from "../stages/base";
|
|
||||||
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFList from "@patternfly/patternfly/components/List/list.css";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
|
||||||
import PFList from "@patternfly/patternfly/components/List/list.css";
|
import { AccessDeniedChallenge, FlowChallengeResponseRequest } from "@goauthentik/api";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
|
|
||||||
import "../../elements/EmptyState";
|
import "../../elements/EmptyState";
|
||||||
|
import { BaseStage } from "../stages/base";
|
||||||
|
|
||||||
@customElement("ak-stage-access-denied")
|
@customElement("ak-stage-access-denied")
|
||||||
export class FlowAccessDenied extends BaseStage<
|
export class FlowAccessDenied extends BaseStage<
|
||||||
|
|
|
@ -1,24 +1,28 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
|
import { CSSResult } from "lit";
|
||||||
|
import { html, TemplateResult } from "lit";
|
||||||
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import {
|
import {
|
||||||
PlexAuthenticationChallenge,
|
PlexAuthenticationChallenge,
|
||||||
PlexAuthenticationChallengeResponseRequest,
|
PlexAuthenticationChallengeResponseRequest,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import { SourcesApi } from "@goauthentik/api";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import { MessageLevel } from "../../../elements/messages/Message";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import { showMessage } from "../../../elements/messages/MessageContainer";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { CSSResult } from "lit";
|
|
||||||
import { customElement } from "lit/decorators";
|
|
||||||
import { html, TemplateResult } from "lit";
|
|
||||||
import { BaseStage } from "../../stages/base";
|
import { BaseStage } from "../../stages/base";
|
||||||
import { PlexAPIClient, popupCenterScreen } from "./API";
|
import { PlexAPIClient, popupCenterScreen } from "./API";
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
|
||||||
import { SourcesApi } from "@goauthentik/api";
|
|
||||||
import { showMessage } from "../../../elements/messages/MessageContainer";
|
|
||||||
import { MessageLevel } from "../../../elements/messages/Message";
|
|
||||||
|
|
||||||
@customElement("ak-flow-sources-plex")
|
@customElement("ak-flow-sources-plex")
|
||||||
export class PlexLoginInit extends BaseStage<
|
export class PlexLoginInit extends BaseStage<
|
||||||
|
|
|
@ -1,24 +1,28 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import "../../FormStatic";
|
|
||||||
import {
|
import {
|
||||||
AuthenticatorDuoChallenge,
|
AuthenticatorDuoChallenge,
|
||||||
AuthenticatorDuoChallengeResponseRequest,
|
AuthenticatorDuoChallengeResponseRequest,
|
||||||
StagesApi,
|
StagesApi,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
import "../../../elements/EmptyState";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import "../../FormStatic";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
@customElement("ak-stage-authenticator-duo")
|
@customElement("ak-stage-authenticator-duo")
|
||||||
export class AuthenticatorDuoStage extends BaseStage<
|
export class AuthenticatorDuoStage extends BaseStage<
|
||||||
|
|
|
@ -1,22 +1,26 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, TemplateResult } from "lit";
|
import { css, CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import "../../FormStatic";
|
|
||||||
import {
|
import {
|
||||||
AuthenticatorStaticChallenge,
|
AuthenticatorStaticChallenge,
|
||||||
AuthenticatorStaticChallengeResponseRequest,
|
AuthenticatorStaticChallengeResponseRequest,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import "../../FormStatic";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
export const STATIC_TOKEN_STYLE = css`
|
export const STATIC_TOKEN_STYLE = css`
|
||||||
/* Static OTP Tokens */
|
/* Static OTP Tokens */
|
||||||
|
|
|
@ -1,26 +1,30 @@
|
||||||
|
import "webcomponent-qr-code";
|
||||||
|
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import "webcomponent-qr-code";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import { showMessage } from "../../../elements/messages/MessageContainer";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import "../../FormStatic";
|
|
||||||
import { MessageLevel } from "../../../elements/messages/Message";
|
|
||||||
import {
|
import {
|
||||||
AuthenticatorTOTPChallenge,
|
AuthenticatorTOTPChallenge,
|
||||||
AuthenticatorTOTPChallengeResponseRequest,
|
AuthenticatorTOTPChallengeResponseRequest,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import { MessageLevel } from "../../../elements/messages/Message";
|
||||||
|
import { showMessage } from "../../../elements/messages/MessageContainer";
|
||||||
|
import "../../FormStatic";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
@customElement("ak-stage-authenticator-totp")
|
@customElement("ak-stage-authenticator-totp")
|
||||||
export class AuthenticatorTOTPStage extends BaseStage<
|
export class AuthenticatorTOTPStage extends BaseStage<
|
||||||
|
|
|
@ -1,24 +1,28 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, TemplateResult } from "lit";
|
import { css, CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage, StageHost } from "../base";
|
|
||||||
import "./AuthenticatorValidateStageWebAuthn";
|
|
||||||
import "./AuthenticatorValidateStageCode";
|
|
||||||
import "./AuthenticatorValidateStageDuo";
|
|
||||||
import { PasswordManagerPrefill } from "../identification/IdentificationStage";
|
|
||||||
import {
|
import {
|
||||||
AuthenticatorValidationChallenge,
|
AuthenticatorValidationChallenge,
|
||||||
AuthenticatorValidationChallengeResponseRequest,
|
AuthenticatorValidationChallengeResponseRequest,
|
||||||
DeviceChallenge,
|
DeviceChallenge,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { BaseStage, StageHost } from "../base";
|
||||||
|
import { PasswordManagerPrefill } from "../identification/IdentificationStage";
|
||||||
|
import "./AuthenticatorValidateStageCode";
|
||||||
|
import "./AuthenticatorValidateStageDuo";
|
||||||
|
import "./AuthenticatorValidateStageWebAuthn";
|
||||||
|
|
||||||
export enum DeviceClasses {
|
export enum DeviceClasses {
|
||||||
STATIC = "static",
|
STATIC = "static",
|
||||||
TOTP = "totp",
|
TOTP = "totp",
|
||||||
|
|
|
@ -1,25 +1,29 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import { AuthenticatorValidateStage } from "./AuthenticatorValidateStage";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import { PasswordManagerPrefill } from "../identification/IdentificationStage";
|
|
||||||
import "../../FormStatic";
|
|
||||||
import {
|
import {
|
||||||
AuthenticatorValidationChallenge,
|
AuthenticatorValidationChallenge,
|
||||||
AuthenticatorValidationChallengeResponseRequest,
|
AuthenticatorValidationChallengeResponseRequest,
|
||||||
DeviceChallenge,
|
DeviceChallenge,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import "../../FormStatic";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
import { PasswordManagerPrefill } from "../identification/IdentificationStage";
|
||||||
|
import { AuthenticatorValidateStage } from "./AuthenticatorValidateStage";
|
||||||
|
|
||||||
@customElement("ak-stage-authenticator-validate-code")
|
@customElement("ak-stage-authenticator-validate-code")
|
||||||
export class AuthenticatorValidateStageWebCode extends BaseStage<
|
export class AuthenticatorValidateStageWebCode extends BaseStage<
|
||||||
|
|
|
@ -1,24 +1,28 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import { AuthenticatorValidateStage } from "./AuthenticatorValidateStage";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import "../../FormStatic";
|
|
||||||
import {
|
import {
|
||||||
AuthenticatorValidationChallenge,
|
AuthenticatorValidationChallenge,
|
||||||
AuthenticatorValidationChallengeResponseRequest,
|
AuthenticatorValidationChallengeResponseRequest,
|
||||||
DeviceChallenge,
|
DeviceChallenge,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import "../../FormStatic";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
import { AuthenticatorValidateStage } from "./AuthenticatorValidateStage";
|
||||||
|
|
||||||
@customElement("ak-stage-authenticator-validate-duo")
|
@customElement("ak-stage-authenticator-validate-duo")
|
||||||
export class AuthenticatorValidateStageWebDuo extends BaseStage<
|
export class AuthenticatorValidateStageWebDuo extends BaseStage<
|
||||||
|
|
|
@ -1,13 +1,22 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
|
import {
|
||||||
|
AuthenticatorValidationChallenge,
|
||||||
|
AuthenticatorValidationChallengeResponseRequest,
|
||||||
|
DeviceChallenge,
|
||||||
|
} from "@goauthentik/api";
|
||||||
|
|
||||||
import { PFSize } from "../../../elements/Spinner";
|
import { PFSize } from "../../../elements/Spinner";
|
||||||
import {
|
import {
|
||||||
transformAssertionForServer,
|
transformAssertionForServer,
|
||||||
|
@ -15,11 +24,6 @@ import {
|
||||||
} from "../authenticator_webauthn/utils";
|
} from "../authenticator_webauthn/utils";
|
||||||
import { BaseStage } from "../base";
|
import { BaseStage } from "../base";
|
||||||
import { AuthenticatorValidateStage } from "./AuthenticatorValidateStage";
|
import { AuthenticatorValidateStage } from "./AuthenticatorValidateStage";
|
||||||
import {
|
|
||||||
AuthenticatorValidationChallenge,
|
|
||||||
AuthenticatorValidationChallengeResponseRequest,
|
|
||||||
DeviceChallenge,
|
|
||||||
} from "@goauthentik/api";
|
|
||||||
|
|
||||||
@customElement("ak-stage-authenticator-validate-webauthn")
|
@customElement("ak-stage-authenticator-validate-webauthn")
|
||||||
export class AuthenticatorValidateStageWebAuthn extends BaseStage<
|
export class AuthenticatorValidateStageWebAuthn extends BaseStage<
|
||||||
|
@ -45,9 +49,8 @@ export class AuthenticatorValidateStageWebAuthn extends BaseStage<
|
||||||
async authenticate(): Promise<void> {
|
async authenticate(): Promise<void> {
|
||||||
// convert certain members of the PublicKeyCredentialRequestOptions into
|
// convert certain members of the PublicKeyCredentialRequestOptions into
|
||||||
// byte arrays as expected by the spec.
|
// byte arrays as expected by the spec.
|
||||||
const credentialRequestOptions = <PublicKeyCredentialRequestOptions>(
|
const credentialRequestOptions = this.deviceChallenge
|
||||||
this.deviceChallenge?.challenge
|
?.challenge as PublicKeyCredentialRequestOptions;
|
||||||
);
|
|
||||||
const transformedCredentialRequestOptions =
|
const transformedCredentialRequestOptions =
|
||||||
transformCredentialRequestOptions(credentialRequestOptions);
|
transformCredentialRequestOptions(credentialRequestOptions);
|
||||||
|
|
||||||
|
@ -68,7 +71,7 @@ export class AuthenticatorValidateStageWebAuthn extends BaseStage<
|
||||||
// we now have an authentication assertion! encode the byte arrays contained
|
// we now have an authentication assertion! encode the byte arrays contained
|
||||||
// in the assertion data as strings for posting to the server
|
// in the assertion data as strings for posting to the server
|
||||||
const transformedAssertionForServer = transformAssertionForServer(
|
const transformedAssertionForServer = transformAssertionForServer(
|
||||||
<PublicKeyCredential>assertion,
|
assertion as PublicKeyCredential,
|
||||||
);
|
);
|
||||||
|
|
||||||
// post the assertion to the server for verification.
|
// post the assertion to the server for verification.
|
||||||
|
|
|
@ -1,13 +1,21 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
|
import {
|
||||||
|
AuthenticatorWebAuthnChallenge,
|
||||||
|
AuthenticatorWebAuthnChallengeResponseRequest,
|
||||||
|
} from "@goauthentik/api";
|
||||||
|
|
||||||
import { PFSize } from "../../../elements/Spinner";
|
import { PFSize } from "../../../elements/Spinner";
|
||||||
import { BaseStage } from "../base";
|
import { BaseStage } from "../base";
|
||||||
import {
|
import {
|
||||||
|
@ -15,10 +23,6 @@ import {
|
||||||
transformCredentialCreateOptions,
|
transformCredentialCreateOptions,
|
||||||
transformNewAssertionForServer,
|
transformNewAssertionForServer,
|
||||||
} from "./utils";
|
} from "./utils";
|
||||||
import {
|
|
||||||
AuthenticatorWebAuthnChallenge,
|
|
||||||
AuthenticatorWebAuthnChallengeResponseRequest,
|
|
||||||
} from "@goauthentik/api";
|
|
||||||
|
|
||||||
export interface WebAuthnAuthenticatorRegisterChallengeResponse {
|
export interface WebAuthnAuthenticatorRegisterChallengeResponse {
|
||||||
response: Assertion;
|
response: Assertion;
|
||||||
|
@ -52,9 +56,9 @@ export class WebAuthnAuthenticatorRegisterStage extends BaseStage<
|
||||||
// request the authenticator(s) to create a new credential keypair.
|
// request the authenticator(s) to create a new credential keypair.
|
||||||
let credential;
|
let credential;
|
||||||
try {
|
try {
|
||||||
credential = <PublicKeyCredential>await navigator.credentials.create({
|
credential = (await navigator.credentials.create({
|
||||||
publicKey: publicKeyCredentialCreateOptions,
|
publicKey: publicKeyCredentialCreateOptions,
|
||||||
});
|
})) as PublicKeyCredential;
|
||||||
if (!credential) {
|
if (!credential) {
|
||||||
throw new Error("Credential is empty");
|
throw new Error("Credential is empty");
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import * as base64js from "base64-js";
|
import * as base64js from "base64-js";
|
||||||
|
|
||||||
import { hexEncode } from "../../../utils";
|
import { hexEncode } from "../../../utils";
|
||||||
|
|
||||||
export function b64enc(buf: Uint8Array): string {
|
export function b64enc(buf: Uint8Array): string {
|
||||||
|
@ -44,7 +45,7 @@ export interface Assertion {
|
||||||
*/
|
*/
|
||||||
export function transformNewAssertionForServer(newAssertion: PublicKeyCredential): Assertion {
|
export function transformNewAssertionForServer(newAssertion: PublicKeyCredential): Assertion {
|
||||||
const attObj = new Uint8Array(
|
const attObj = new Uint8Array(
|
||||||
(<AuthenticatorAttestationResponse>newAssertion.response).attestationObject,
|
(newAssertion.response as AuthenticatorAttestationResponse).attestationObject,
|
||||||
);
|
);
|
||||||
const clientDataJSON = new Uint8Array(newAssertion.response.clientDataJSON);
|
const clientDataJSON = new Uint8Array(newAssertion.response.clientDataJSON);
|
||||||
const rawId = new Uint8Array(newAssertion.rawId);
|
const rawId = new Uint8Array(newAssertion.rawId);
|
||||||
|
@ -101,7 +102,7 @@ export interface AuthAssertion {
|
||||||
* @param {PublicKeyCredential} newAssertion
|
* @param {PublicKeyCredential} newAssertion
|
||||||
*/
|
*/
|
||||||
export function transformAssertionForServer(newAssertion: PublicKeyCredential): AuthAssertion {
|
export function transformAssertionForServer(newAssertion: PublicKeyCredential): AuthAssertion {
|
||||||
const response = <AuthenticatorAssertionResponse>newAssertion.response;
|
const response = newAssertion.response as AuthenticatorAssertionResponse;
|
||||||
const authData = new Uint8Array(response.authenticatorData);
|
const authData = new Uint8Array(response.authenticatorData);
|
||||||
const clientDataJSON = new Uint8Array(response.clientDataJSON);
|
const clientDataJSON = new Uint8Array(response.clientDataJSON);
|
||||||
const rawId = new Uint8Array(newAssertion.rawId);
|
const rawId = new Uint8Array(newAssertion.rawId);
|
||||||
|
|
|
@ -1,17 +1,21 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import { AutosubmitChallenge, AutoSubmitChallengeResponseRequest } from "@goauthentik/api";
|
import { AutosubmitChallenge, AutoSubmitChallengeResponseRequest } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
@customElement("ak-stage-autosubmit")
|
@customElement("ak-stage-autosubmit")
|
||||||
export class AutosubmitStage extends BaseStage<
|
export class AutosubmitStage extends BaseStage<
|
||||||
AutosubmitChallenge,
|
AutosubmitChallenge,
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import { ErrorDetail } from "@goauthentik/api";
|
|
||||||
import { html, LitElement, TemplateResult } from "lit";
|
import { html, LitElement, TemplateResult } from "lit";
|
||||||
import { property } from "lit/decorators";
|
import { property } from "lit/decorators";
|
||||||
|
|
||||||
|
import { ErrorDetail } from "@goauthentik/api";
|
||||||
|
|
||||||
export interface StageHost {
|
export interface StageHost {
|
||||||
challenge?: unknown;
|
challenge?: unknown;
|
||||||
submit(payload: unknown): Promise<void>;
|
submit(payload: unknown): Promise<void>;
|
||||||
|
|
|
@ -1,20 +1,24 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { PFSize } from "../../../elements/Spinner";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import "../../FormStatic";
|
|
||||||
import { CaptchaChallenge, CaptchaChallengeResponseRequest } from "@goauthentik/api";
|
import { CaptchaChallenge, CaptchaChallengeResponseRequest } from "@goauthentik/api";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import { PFSize } from "../../../elements/Spinner";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import "../../FormStatic";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
@customElement("ak-stage-captcha")
|
@customElement("ak-stage-captcha")
|
||||||
export class CaptchaStage extends BaseStage<CaptchaChallenge, CaptchaChallengeResponseRequest> {
|
export class CaptchaStage extends BaseStage<CaptchaChallenge, CaptchaChallengeResponseRequest> {
|
||||||
|
|
|
@ -1,20 +1,24 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
import PFList from "@patternfly/patternfly/components/List/list.css";
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFList from "@patternfly/patternfly/components/List/list.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import PFSpacing from "@patternfly/patternfly/utilities/Spacing/spacing.css";
|
import PFSpacing from "@patternfly/patternfly/utilities/Spacing/spacing.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
import { ConsentChallenge, ConsentChallengeResponseRequest } from "@goauthentik/api";
|
||||||
|
|
||||||
import "../../../elements/EmptyState";
|
import "../../../elements/EmptyState";
|
||||||
import "../../FormStatic";
|
import "../../FormStatic";
|
||||||
import { ConsentChallenge, ConsentChallengeResponseRequest } from "@goauthentik/api";
|
import { BaseStage } from "../base";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
|
||||||
|
|
||||||
@customElement("ak-stage-consent")
|
@customElement("ak-stage-consent")
|
||||||
export class ConsentStage extends BaseStage<ConsentChallenge, ConsentChallengeResponseRequest> {
|
export class ConsentStage extends BaseStage<ConsentChallenge, ConsentChallengeResponseRequest> {
|
||||||
|
|
|
@ -1,17 +1,21 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
import { DummyChallenge, DummyChallengeResponseRequest } from "@goauthentik/api";
|
||||||
|
|
||||||
import "../../../elements/EmptyState";
|
import "../../../elements/EmptyState";
|
||||||
import "../../FormStatic";
|
import "../../FormStatic";
|
||||||
import { DummyChallenge, DummyChallengeResponseRequest } from "@goauthentik/api";
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
@customElement("ak-stage-dummy")
|
@customElement("ak-stage-dummy")
|
||||||
export class DummyStage extends BaseStage<DummyChallenge, DummyChallengeResponseRequest> {
|
export class DummyStage extends BaseStage<DummyChallenge, DummyChallengeResponseRequest> {
|
||||||
|
|
|
@ -1,17 +1,21 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import { EmailChallenge, EmailChallengeResponseRequest } from "@goauthentik/api";
|
import { EmailChallenge, EmailChallengeResponseRequest } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
@customElement("ak-stage-email")
|
@customElement("ak-stage-email")
|
||||||
export class EmailStage extends BaseStage<EmailChallenge, EmailChallengeResponseRequest> {
|
export class EmailStage extends BaseStage<EmailChallenge, EmailChallengeResponseRequest> {
|
||||||
static get styles(): CSSResult[] {
|
static get styles(): CSSResult[] {
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, TemplateResult } from "lit";
|
import { css, CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFAlert from "@patternfly/patternfly/components/Alert/alert.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import PFAlert from "@patternfly/patternfly/components/Alert/alert.css";
|
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import {
|
import {
|
||||||
IdentificationChallenge,
|
IdentificationChallenge,
|
||||||
IdentificationChallengeResponseRequest,
|
IdentificationChallengeResponseRequest,
|
||||||
|
@ -19,6 +19,10 @@ import {
|
||||||
UserFieldsEnum,
|
UserFieldsEnum,
|
||||||
} from "@goauthentik/api";
|
} from "@goauthentik/api";
|
||||||
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
export const PasswordManagerPrefill: {
|
export const PasswordManagerPrefill: {
|
||||||
password: string | undefined;
|
password: string | undefined;
|
||||||
totp: string | undefined;
|
totp: string | undefined;
|
||||||
|
|
|
@ -1,20 +1,24 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
import { ifDefined } from "lit/directives/if-defined";
|
||||||
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import { PasswordManagerPrefill } from "../identification/IdentificationStage";
|
|
||||||
import "../../FormStatic";
|
|
||||||
import { PasswordChallenge, PasswordChallengeResponseRequest } from "@goauthentik/api";
|
import { PasswordChallenge, PasswordChallengeResponseRequest } from "@goauthentik/api";
|
||||||
import { ifDefined } from "lit/directives/if-defined";
|
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import "../../FormStatic";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
import { PasswordManagerPrefill } from "../identification/IdentificationStage";
|
||||||
|
|
||||||
@customElement("ak-stage-password")
|
@customElement("ak-stage-password")
|
||||||
export class PasswordStage extends BaseStage<PasswordChallenge, PasswordChallengeResponseRequest> {
|
export class PasswordStage extends BaseStage<PasswordChallenge, PasswordChallengeResponseRequest> {
|
||||||
|
|
|
@ -1,21 +1,25 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, TemplateResult } from "lit";
|
import { CSSResult, html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import { unsafeHTML } from "lit/directives/unsafe-html";
|
import { unsafeHTML } from "lit/directives/unsafe-html";
|
||||||
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
|
||||||
|
import AKGlobal from "../../../authentik.css";
|
||||||
|
import PFAlert from "@patternfly/patternfly/components/Alert/alert.css";
|
||||||
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
import PFForm from "@patternfly/patternfly/components/Form/form.css";
|
||||||
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css";
|
||||||
|
import PFLogin from "@patternfly/patternfly/components/Login/login.css";
|
||||||
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
import PFTitle from "@patternfly/patternfly/components/Title/title.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
import PFAlert from "@patternfly/patternfly/components/Alert/alert.css";
|
|
||||||
import AKGlobal from "../../../authentik.css";
|
|
||||||
import { BaseStage } from "../base";
|
|
||||||
import "../../../elements/forms/FormElement";
|
|
||||||
import "../../../elements/EmptyState";
|
|
||||||
import "../../../elements/Divider";
|
|
||||||
import { PromptChallenge, PromptChallengeResponseRequest, StagePrompt } from "@goauthentik/api";
|
import { PromptChallenge, PromptChallengeResponseRequest, StagePrompt } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import "../../../elements/Divider";
|
||||||
|
import "../../../elements/EmptyState";
|
||||||
|
import "../../../elements/forms/FormElement";
|
||||||
|
import { BaseStage } from "../base";
|
||||||
|
|
||||||
@customElement("ak-stage-prompt")
|
@customElement("ak-stage-prompt")
|
||||||
export class PromptStage extends BaseStage<PromptChallenge, PromptChallengeResponseRequest> {
|
export class PromptStage extends BaseStage<PromptChallenge, PromptChallengeResponseRequest> {
|
||||||
static get styles(): CSSResult[] {
|
static get styles(): CSSResult[] {
|
||||||
|
|
|
@ -1,32 +1,35 @@
|
||||||
import "../elements/messages/MessageContainer";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { me } from "../api/Users";
|
import { until } from "lit/directives/until";
|
||||||
import { ID_REGEX, SLUG_REGEX, UUID_REGEX } from "../elements/router/Route";
|
|
||||||
import "./locale";
|
import AKGlobal from "../authentik.css";
|
||||||
import "../elements/sidebar/SidebarItem";
|
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFDrawer from "@patternfly/patternfly/components/Drawer/drawer.css";
|
import PFDrawer from "@patternfly/patternfly/components/Drawer/drawer.css";
|
||||||
import AKGlobal from "../authentik.css";
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import "../elements/router/RouterOutlet";
|
import { AdminApi, Version } from "@goauthentik/api";
|
||||||
import "../elements/messages/MessageContainer";
|
|
||||||
import "../elements/notifications/NotificationDrawer";
|
import { DEFAULT_CONFIG } from "../api/Config";
|
||||||
import "../elements/sidebar/Sidebar";
|
import { me } from "../api/Users";
|
||||||
import { until } from "lit/directives/until";
|
import { WebsocketClient } from "../common/ws";
|
||||||
import {
|
import {
|
||||||
EVENT_API_DRAWER_TOGGLE,
|
EVENT_API_DRAWER_TOGGLE,
|
||||||
EVENT_NOTIFICATION_DRAWER_TOGGLE,
|
EVENT_NOTIFICATION_DRAWER_TOGGLE,
|
||||||
EVENT_SIDEBAR_TOGGLE,
|
EVENT_SIDEBAR_TOGGLE,
|
||||||
VERSION,
|
VERSION,
|
||||||
} from "../constants";
|
} from "../constants";
|
||||||
import { AdminApi, Version } from "@goauthentik/api";
|
import "../elements/messages/MessageContainer";
|
||||||
import { DEFAULT_CONFIG } from "../api/Config";
|
import "../elements/messages/MessageContainer";
|
||||||
import { WebsocketClient } from "../common/ws";
|
import "../elements/notifications/NotificationDrawer";
|
||||||
|
import { ID_REGEX, SLUG_REGEX, UUID_REGEX } from "../elements/router/Route";
|
||||||
|
import "../elements/router/RouterOutlet";
|
||||||
|
import "../elements/sidebar/Sidebar";
|
||||||
|
import "../elements/sidebar/SidebarItem";
|
||||||
import { ROUTES } from "../routesAdmin";
|
import { ROUTES } from "../routesAdmin";
|
||||||
|
import "./locale";
|
||||||
|
|
||||||
@customElement("ak-interface-admin")
|
@customElement("ak-interface-admin")
|
||||||
export class AdminInterface extends LitElement {
|
export class AdminInterface extends LitElement {
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
import "./locale";
|
|
||||||
import "../elements/messages/MessageContainer";
|
import "../elements/messages/MessageContainer";
|
||||||
import "../flows/FlowExecutor";
|
import "../flows/FlowExecutor";
|
||||||
|
import "./locale";
|
||||||
|
|
|
@ -1,37 +1,40 @@
|
||||||
import "../elements/messages/MessageContainer";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { me } from "../api/Users";
|
import { until } from "lit/directives/until";
|
||||||
import "./locale";
|
|
||||||
import "../elements/sidebar/SidebarItem";
|
import AKGlobal from "../authentik.css";
|
||||||
import { t } from "@lingui/macro";
|
import PFAvatar from "@patternfly/patternfly/components/Avatar/avatar.css";
|
||||||
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
|
||||||
import PFBrand from "@patternfly/patternfly/components/Brand/brand.css";
|
import PFBrand from "@patternfly/patternfly/components/Brand/brand.css";
|
||||||
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
import PFButton from "@patternfly/patternfly/components/Button/button.css";
|
||||||
import PFDrawer from "@patternfly/patternfly/components/Drawer/drawer.css";
|
import PFDrawer from "@patternfly/patternfly/components/Drawer/drawer.css";
|
||||||
import PFAvatar from "@patternfly/patternfly/components/Avatar/avatar.css";
|
|
||||||
import PFDropdown from "@patternfly/patternfly/components/Dropdown/dropdown.css";
|
import PFDropdown from "@patternfly/patternfly/components/Dropdown/dropdown.css";
|
||||||
import PFNotificationBadge from "@patternfly/patternfly/components/NotificationBadge/notification-badge.css";
|
import PFNotificationBadge from "@patternfly/patternfly/components/NotificationBadge/notification-badge.css";
|
||||||
import AKGlobal from "../authentik.css";
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
|
import PFBase from "@patternfly/patternfly/patternfly-base.css";
|
||||||
|
|
||||||
import "../elements/router/RouterOutlet";
|
import { CurrentTenant, EventsApi } from "@goauthentik/api";
|
||||||
import "../elements/messages/MessageContainer";
|
|
||||||
import "../elements/notifications/NotificationDrawer";
|
import { DEFAULT_CONFIG, tenant } from "../api/Config";
|
||||||
import "../elements/sidebar/Sidebar";
|
import { me } from "../api/Users";
|
||||||
|
import { WebsocketClient } from "../common/ws";
|
||||||
import {
|
import {
|
||||||
EVENT_API_DRAWER_TOGGLE,
|
EVENT_API_DRAWER_TOGGLE,
|
||||||
EVENT_NOTIFICATION_DRAWER_TOGGLE,
|
EVENT_NOTIFICATION_DRAWER_TOGGLE,
|
||||||
EVENT_REFRESH,
|
EVENT_REFRESH,
|
||||||
} from "../constants";
|
} from "../constants";
|
||||||
import { CurrentTenant, EventsApi } from "@goauthentik/api";
|
import "../elements/messages/MessageContainer";
|
||||||
import { DEFAULT_CONFIG, tenant } from "../api/Config";
|
import "../elements/messages/MessageContainer";
|
||||||
import { WebsocketClient } from "../common/ws";
|
import "../elements/notifications/NotificationDrawer";
|
||||||
import { ROUTES } from "../routesUser";
|
import "../elements/router/RouterOutlet";
|
||||||
import { first } from "../utils";
|
import "../elements/sidebar/Sidebar";
|
||||||
import { DefaultTenant } from "../elements/sidebar/SidebarBrand";
|
import { DefaultTenant } from "../elements/sidebar/SidebarBrand";
|
||||||
import { until } from "lit/directives/until";
|
import "../elements/sidebar/SidebarItem";
|
||||||
|
import { ROUTES } from "../routesUser";
|
||||||
import { uiConfig } from "../user/config";
|
import { uiConfig } from "../user/config";
|
||||||
|
import { first } from "../utils";
|
||||||
|
import "./locale";
|
||||||
|
|
||||||
@customElement("ak-interface-user")
|
@customElement("ak-interface-user")
|
||||||
export class UserInterface extends LitElement {
|
export class UserInterface extends LitElement {
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
import { i18n } from "@lingui/core";
|
|
||||||
import { en } from "make-plural/plurals";
|
import { en } from "make-plural/plurals";
|
||||||
|
|
||||||
|
import { i18n } from "@lingui/core";
|
||||||
|
|
||||||
import { messages as localeEN } from "../locales/en";
|
import { messages as localeEN } from "../locales/en";
|
||||||
import { messages as localeDEBUG } from "../locales/pseudo-LOCALE";
|
import { messages as localeDEBUG } from "../locales/pseudo-LOCALE";
|
||||||
|
|
||||||
|
|
|
@ -1,29 +1,28 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { css, CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
import "../../elements/charts/AdminLoginsChart";
|
import AKGlobal from "../../authentik.css";
|
||||||
import "../../elements/cards/AggregatePromiseCard";
|
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
||||||
import "./TopApplicationsTable";
|
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
||||||
|
import PFGrid from "@patternfly/patternfly/layouts/Grid/grid.css";
|
||||||
|
|
||||||
|
import "../../elements/PageHeader";
|
||||||
|
import "../../elements/cards/AggregatePromiseCard";
|
||||||
|
import "../../elements/charts/AdminLoginsChart";
|
||||||
|
import "./TopApplicationsTable";
|
||||||
import "./cards/AdminStatusCard";
|
import "./cards/AdminStatusCard";
|
||||||
import "./cards/BackupStatusCard";
|
import "./cards/BackupStatusCard";
|
||||||
|
import "./cards/SystemStatusCard";
|
||||||
import "./cards/VersionStatusCard";
|
import "./cards/VersionStatusCard";
|
||||||
import "./cards/WorkerStatusCard";
|
import "./cards/WorkerStatusCard";
|
||||||
import "./cards/SystemStatusCard";
|
|
||||||
|
|
||||||
import "./charts/FlowStatusChart";
|
import "./charts/FlowStatusChart";
|
||||||
|
import "./charts/GroupCountStatusChart";
|
||||||
import "./charts/LDAPSyncStatusChart";
|
import "./charts/LDAPSyncStatusChart";
|
||||||
import "./charts/OutpostStatusChart";
|
import "./charts/OutpostStatusChart";
|
||||||
import "./charts/UserCountStatusChart";
|
|
||||||
import "./charts/GroupCountStatusChart";
|
|
||||||
import "./charts/PolicyStatusChart";
|
import "./charts/PolicyStatusChart";
|
||||||
|
import "./charts/UserCountStatusChart";
|
||||||
import PFPage from "@patternfly/patternfly/components/Page/page.css";
|
|
||||||
import PFContent from "@patternfly/patternfly/components/Content/content.css";
|
|
||||||
import PFGrid from "@patternfly/patternfly/layouts/Grid/grid.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
|
||||||
import "../../elements/PageHeader";
|
|
||||||
|
|
||||||
@customElement("ak-admin-overview")
|
@customElement("ak-admin-overview")
|
||||||
export class AdminOverviewPage extends LitElement {
|
export class AdminOverviewPage extends LitElement {
|
||||||
|
|
|
@ -1,12 +1,15 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
import { CSSResult, html, LitElement, TemplateResult } from "lit";
|
||||||
import { customElement, property } from "lit/decorators";
|
import { customElement, property } from "lit/decorators";
|
||||||
import { EventsApi, EventTopPerUser } from "@goauthentik/api";
|
|
||||||
import PFTable from "@patternfly/patternfly/components/Table/table.css";
|
|
||||||
import AKGlobal from "../../authentik.css";
|
|
||||||
|
|
||||||
import "../../elements/Spinner";
|
import AKGlobal from "../../authentik.css";
|
||||||
|
import PFTable from "@patternfly/patternfly/components/Table/table.css";
|
||||||
|
|
||||||
|
import { EventsApi, EventTopPerUser } from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG } from "../../api/Config";
|
import { DEFAULT_CONFIG } from "../../api/Config";
|
||||||
|
import "../../elements/Spinner";
|
||||||
|
|
||||||
@customElement("ak-top-applications-table")
|
@customElement("ak-top-applications-table")
|
||||||
export class TopApplicationsTable extends LitElement {
|
export class TopApplicationsTable extends LitElement {
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { until } from "lit/directives/until";
|
import { until } from "lit/directives/until";
|
||||||
|
|
||||||
import { EVENT_REFRESH } from "../../../constants";
|
import { EVENT_REFRESH } from "../../../constants";
|
||||||
import { AggregateCard } from "../../../elements/cards/AggregateCard";
|
|
||||||
import { PFSize } from "../../../elements/Spinner";
|
import { PFSize } from "../../../elements/Spinner";
|
||||||
|
import { AggregateCard } from "../../../elements/cards/AggregateCard";
|
||||||
|
|
||||||
export interface AdminStatus {
|
export interface AdminStatus {
|
||||||
icon: string;
|
icon: string;
|
||||||
|
|
|
@ -1,10 +1,13 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
import { AdminStatus, AdminStatusCard } from "./AdminStatusCard";
|
|
||||||
import { AdminApi, StatusEnum, CapabilitiesEnum } from "@goauthentik/api";
|
import { AdminApi, StatusEnum, CapabilitiesEnum } from "@goauthentik/api";
|
||||||
|
|
||||||
import { config, DEFAULT_CONFIG } from "../../../api/Config";
|
import { config, DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
import { convertToTitle } from "../../../utils";
|
import { convertToTitle } from "../../../utils";
|
||||||
|
import { AdminStatus, AdminStatusCard } from "./AdminStatusCard";
|
||||||
|
|
||||||
@customElement("ak-admin-status-card-backup")
|
@customElement("ak-admin-status-card-backup")
|
||||||
export class BackupStatusCard extends AdminStatusCard<StatusEnum> {
|
export class BackupStatusCard extends AdminStatusCard<StatusEnum> {
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
import { AdminApi, System } from "@goauthentik/api";
|
import { AdminApi, System } from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
import { AdminStatusCard, AdminStatus } from "./AdminStatusCard";
|
import { AdminStatusCard, AdminStatus } from "./AdminStatusCard";
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html, TemplateResult } from "lit";
|
import { html, TemplateResult } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
import { AdminApi, Version } from "@goauthentik/api";
|
import { AdminApi, Version } from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
import { AdminStatusCard, AdminStatus } from "./AdminStatusCard";
|
import { AdminStatusCard, AdminStatus } from "./AdminStatusCard";
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
import { t } from "@lingui/macro";
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { html } from "lit";
|
import { html } from "lit";
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
import { AdminApi } from "@goauthentik/api";
|
import { AdminApi } from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
import { AdminStatus, AdminStatusCard } from "./AdminStatusCard";
|
import { AdminStatus, AdminStatusCard } from "./AdminStatusCard";
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,15 @@
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
import { customElement } from "lit/decorators";
|
|
||||||
import { FlowsApi } from "@goauthentik/api";
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
|
||||||
import "../../../elements/forms/ConfirmationForm";
|
|
||||||
import { AKChart } from "../../../elements/charts/Chart";
|
|
||||||
import { ChartData, ChartOptions } from "chart.js";
|
import { ChartData, ChartOptions } from "chart.js";
|
||||||
|
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
|
import { FlowsApi } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
|
import { AKChart } from "../../../elements/charts/Chart";
|
||||||
|
import "../../../elements/forms/ConfirmationForm";
|
||||||
|
|
||||||
interface FlowMetrics {
|
interface FlowMetrics {
|
||||||
count: number;
|
count: number;
|
||||||
cached: number;
|
cached: number;
|
||||||
|
|
|
@ -1,9 +1,13 @@
|
||||||
|
import { ChartOptions, ChartData } from "chart.js";
|
||||||
|
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
import { CoreApi } from "@goauthentik/api";
|
import { CoreApi } from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
import { AKChart } from "../../../elements/charts/Chart";
|
import { AKChart } from "../../../elements/charts/Chart";
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
import { ChartOptions, ChartData } from "chart.js";
|
|
||||||
|
|
||||||
interface GroupMetrics {
|
interface GroupMetrics {
|
||||||
count: number;
|
count: number;
|
||||||
|
|
|
@ -1,11 +1,15 @@
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
import { customElement } from "lit/decorators";
|
|
||||||
import { SourcesApi, StatusEnum } from "@goauthentik/api";
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
|
||||||
import "../../../elements/forms/ConfirmationForm";
|
|
||||||
import { AKChart } from "../../../elements/charts/Chart";
|
|
||||||
import { ChartOptions, ChartData } from "chart.js";
|
import { ChartOptions, ChartData } from "chart.js";
|
||||||
|
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
|
import { SourcesApi, StatusEnum } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
|
import { AKChart } from "../../../elements/charts/Chart";
|
||||||
|
import "../../../elements/forms/ConfirmationForm";
|
||||||
|
|
||||||
interface LDAPSyncStats {
|
interface LDAPSyncStats {
|
||||||
healthy: number;
|
healthy: number;
|
||||||
failed: number;
|
failed: number;
|
||||||
|
|
|
@ -1,11 +1,15 @@
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
import { customElement } from "lit/decorators";
|
|
||||||
import { OutpostsApi } from "@goauthentik/api";
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
|
||||||
import "../../../elements/forms/ConfirmationForm";
|
|
||||||
import { AKChart } from "../../../elements/charts/Chart";
|
|
||||||
import { ChartOptions, ChartData } from "chart.js";
|
import { ChartOptions, ChartData } from "chart.js";
|
||||||
|
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
|
import { OutpostsApi } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
|
import { AKChart } from "../../../elements/charts/Chart";
|
||||||
|
import "../../../elements/forms/ConfirmationForm";
|
||||||
|
|
||||||
interface OutpostStats {
|
interface OutpostStats {
|
||||||
healthy: number;
|
healthy: number;
|
||||||
outdated: number;
|
outdated: number;
|
||||||
|
|
|
@ -1,11 +1,15 @@
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
import { customElement } from "lit/decorators";
|
|
||||||
import { PoliciesApi } from "@goauthentik/api";
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
|
||||||
import "../../../elements/forms/ConfirmationForm";
|
|
||||||
import { AKChart } from "../../../elements/charts/Chart";
|
|
||||||
import { ChartData, ChartOptions } from "chart.js";
|
import { ChartData, ChartOptions } from "chart.js";
|
||||||
|
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
|
import { PoliciesApi } from "@goauthentik/api";
|
||||||
|
|
||||||
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
|
import { AKChart } from "../../../elements/charts/Chart";
|
||||||
|
import "../../../elements/forms/ConfirmationForm";
|
||||||
|
|
||||||
interface PolicyMetrics {
|
interface PolicyMetrics {
|
||||||
count: number;
|
count: number;
|
||||||
cached: number;
|
cached: number;
|
||||||
|
|
|
@ -1,9 +1,13 @@
|
||||||
|
import { ChartOptions, ChartData } from "chart.js";
|
||||||
|
|
||||||
|
import { t } from "@lingui/macro";
|
||||||
|
|
||||||
import { customElement } from "lit/decorators";
|
import { customElement } from "lit/decorators";
|
||||||
|
|
||||||
import { CoreApi } from "@goauthentik/api";
|
import { CoreApi } from "@goauthentik/api";
|
||||||
|
|
||||||
import { DEFAULT_CONFIG } from "../../../api/Config";
|
import { DEFAULT_CONFIG } from "../../../api/Config";
|
||||||
import { AKChart } from "../../../elements/charts/Chart";
|
import { AKChart } from "../../../elements/charts/Chart";
|
||||||
import { t } from "@lingui/macro";
|
|
||||||
import { ChartOptions, ChartData } from "chart.js";
|
|
||||||
|
|
||||||
interface UserMetrics {
|
interface UserMetrics {
|
||||||
count: number;
|
count: number;
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue