ci: add NPM packages publish (#13974)
Co-authored-by: Teffen Ellis <teffen@nirri.us>
This commit is contained in:
		 Marc 'risson' Schmitt
					Marc 'risson' Schmitt
				
			
				
					committed by
					
						 GitHub
						GitHub
					
				
			
			
				
	
			
			
			 GitHub
						GitHub
					
				
			
						parent
						
							895cd23b57
						
					
				
				
					commit
					bf0235c113
				
			
							
								
								
									
										45
									
								
								.github/workflows/packages-npm-publish.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								.github/workflows/packages-npm-publish.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,45 @@ | ||||
| name: authentik-packages-npm-publish | ||||
| on: | ||||
|   push: | ||||
|     branches: [main] | ||||
|     paths: | ||||
|       - packages/docusaurus-config | ||||
|       - packages/eslint-config | ||||
|       - packages/prettier-config | ||||
|       - packages/tsconfig | ||||
|   workflow_dispatch: | ||||
| jobs: | ||||
|   publish: | ||||
|     if: ${{ github.repository != 'goauthentik/authentik-internal' }} | ||||
|     runs-on: ubuntu-latest | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         package: | ||||
|           - docusaurus-config | ||||
|           - eslint-config | ||||
|           - prettier-config | ||||
|           - tsconfig | ||||
|     steps: | ||||
|       - uses: actions/checkout@v4 | ||||
|         with: | ||||
|           fetch-depth: 2 | ||||
|       - uses: actions/setup-node@v4 | ||||
|         with: | ||||
|           node-version-file: packages/${{ matrix.package }}/package.json | ||||
|           registry-url: "https://registry.npmjs.org" | ||||
|       - name: Get changed files | ||||
|         id: changed-files | ||||
|         uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c | ||||
|         with: | ||||
|           files: | | ||||
|             packages/${{ matrix.package }}/package.json | ||||
|       - name: Publish package | ||||
|         if: steps.changed-files.outputs.any_changed == 'true' | ||||
|         working-directory: packages/${{ matrix.package}} | ||||
|         run: | | ||||
|           npm ci | ||||
|           npm run build | ||||
|           npm publish | ||||
|         env: | ||||
|           NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }} | ||||
							
								
								
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -11,6 +11,10 @@ local_settings.py | ||||
| db.sqlite3 | ||||
| media | ||||
|  | ||||
| # Node | ||||
|  | ||||
| node_modules | ||||
|  | ||||
| # If your build process includes running collectstatic, then you probably don't need or want to include staticfiles/ | ||||
| # in your Git repository. Update and uncomment the following line accordingly. | ||||
| # <django-project-name>/staticfiles/ | ||||
|  | ||||
							
								
								
									
										47
									
								
								.prettierignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								.prettierignore
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,47 @@ | ||||
| # Prettier Ignorefile | ||||
|  | ||||
| ## Static Files | ||||
| **/LICENSE | ||||
|  | ||||
| authentik/stages/**/* | ||||
|  | ||||
| ## Build asset directories | ||||
| coverage | ||||
| dist | ||||
| out | ||||
| .docusaurus | ||||
| website/docs/developer-docs/api/**/* | ||||
|  | ||||
| ## Environment | ||||
| *.env | ||||
|  | ||||
| ## Secrets | ||||
| *.secrets | ||||
|  | ||||
| ## Yarn | ||||
| .yarn/**/* | ||||
|  | ||||
| ## Node | ||||
| node_modules | ||||
| coverage | ||||
|  | ||||
| ## Configs | ||||
| *.log | ||||
| *.yaml | ||||
| *.yml | ||||
|  | ||||
| # Templates | ||||
| # TODO: Rename affected files to *.template.* or similar. | ||||
| *.html | ||||
| *.mdx | ||||
| *.md | ||||
|  | ||||
| ## Import order matters | ||||
| poly.ts | ||||
| src/locale-codes.ts | ||||
| src/locales/ | ||||
|  | ||||
| # Storybook | ||||
| storybook-static/ | ||||
| .storybook/css-import-maps* | ||||
|  | ||||
							
								
								
									
										0
									
								
								packages/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								packages/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
								
								
									
										1
									
								
								packages/docusaurus-config/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								packages/docusaurus-config/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| node_modules | ||||
							
								
								
									
										56
									
								
								packages/docusaurus-config/css/badges.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								packages/docusaurus-config/css/badges.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,56 @@ | ||||
| .anchor > .badge { | ||||
|     font-size: 0.75rem; | ||||
|     vertical-align: middle; | ||||
| } | ||||
|  | ||||
| .anchor > .badge { | ||||
|     margin-left: 0.5rem; | ||||
| } | ||||
|  | ||||
| .badge { | ||||
|     --ifm-font-weight-bold: 900; | ||||
| } | ||||
|  | ||||
| .badge--support-vendor { | ||||
|     --ifm-badge-background-color: var(--ifm-color-warning-contrast-background); | ||||
|     --ifm-badge-color: var(--ifm-color-warning-contrast-foreground); | ||||
|     --ifm-badge-border-color: var(--ifm-color-warning-contrast-foreground); | ||||
| } | ||||
|  | ||||
| .badge--support-community { | ||||
|     --ifm-badge-background-color: var( | ||||
|         --ifm-color-secondary-contrast-foreground | ||||
|     ); | ||||
|     --ifm-badge-border-color: var(--ifm-color-secondary-dark); | ||||
|     --ifm-badge-color: var(--ifm-color-secondary-contrast-background); | ||||
| } | ||||
|  | ||||
| .badge--support-deprecated { | ||||
|     --ifm-badge-background-color: var(--ifm-color-danger); | ||||
|     --ifm-badge-border-color: var(--ifm-color-danger-contrast-background); | ||||
|     --ifm-badge-color: var(--ifm-color-danger-contrast-foreground); | ||||
| } | ||||
|  | ||||
| .badge--support-authentik { | ||||
|     --ifm-badge-background-color: var(--ifm-color-primary); | ||||
|     --ifm-badge-border-color: var(--ifm-color-secondary); | ||||
|     --ifm-badge-color: var(--ifm-color-secondary); | ||||
| } | ||||
|  | ||||
| .badge--version { | ||||
|     --ifm-badge-background-color: var(--ifm-color-primary-contrast-background); | ||||
|     --ifm-badge-border-color: var(--ifm-color-primary-contrast-foreground); | ||||
|     --ifm-badge-color: var(--ifm-color-primary-contrast-foreground); | ||||
| } | ||||
|  | ||||
| .badge--preview { | ||||
|     --ifm-badge-background-color: rgb(115, 188, 247); | ||||
|     --ifm-badge-border-color: var(--ifm-badge-background-color); | ||||
|     --ifm-badge-color: var(--ifm-color-primary-contrast-foreground); | ||||
| } | ||||
|  | ||||
| .badge-group { | ||||
|     display: flex; | ||||
|     flex-wrap: wrap; | ||||
|     gap: 1rem; | ||||
| } | ||||
							
								
								
									
										21
									
								
								packages/docusaurus-config/css/buttons.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								packages/docusaurus-config/css/buttons.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,21 @@ | ||||
| :root { | ||||
|     --ifm-button-color: var(--white); | ||||
| } | ||||
|  | ||||
| .button-row { | ||||
|     gap: var(--ifm-global-spacing); | ||||
|     display: flex; | ||||
|     align-items: center; | ||||
|     justify-content: center; | ||||
|     align-items: center; | ||||
|     flex-wrap: wrap; | ||||
| } | ||||
|  | ||||
| .button--outline { | ||||
|     --ifm-button-color: var(--white); | ||||
|     --ifm-button-border-color: var(--white); | ||||
|  | ||||
|     &:hover { | ||||
|         --ifm-button-color: var(--ifm-color-primary); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										12
									
								
								packages/docusaurus-config/css/code.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								packages/docusaurus-config/css/code.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| :root { | ||||
|     --docusaurus-highlighted-code-line-bg: #efefef; | ||||
| } | ||||
|  | ||||
| html[data-theme="dark"] { | ||||
|     /* Color which works with dark mode syntax highlighting theme */ | ||||
|     --docusaurus-highlighted-code-line-bg: #3f3f3f; | ||||
| } | ||||
|  | ||||
| .theme-code-block pre code { | ||||
|     font-weight: 500; | ||||
| } | ||||
							
								
								
									
										93
									
								
								packages/docusaurus-config/css/fonts.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								packages/docusaurus-config/css/fonts.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,93 @@ | ||||
| :root { | ||||
|     --ifm-font-family-base: | ||||
|         RedHatVF, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, | ||||
|         Noto Sans, sans-serif, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, | ||||
|         sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; | ||||
|  | ||||
|     --ifm-font-family-monospace: | ||||
|         RedHatMonoVF, SFMono-Regular, Menlo, Monaco, Consolas, | ||||
|         "Liberation Mono", "Courier New", monospace; | ||||
|  | ||||
|     --ifm-heading-font-family: RedHatDisplayVF, var(--ifm-font-family-base); | ||||
|  | ||||
|     --ifm-h5-font-size: 0.88rem; | ||||
|     --ifm-code-font-size: 100%; | ||||
| } | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "RedHatDisplayVF"; | ||||
|     font-style: normal; | ||||
|     font-weight: 300 900; | ||||
|     font-display: fallback; | ||||
|     src: | ||||
|         local("Red Hat Display"), | ||||
|         url("/fonts/RedHatFont-updated/modified/RedHatDisplayVFModified-updated.woff2") | ||||
|             format("woff2-variations"), | ||||
|         url("https://goauthentik.io/fonts/RedHatFont-updated/modified/RedHatDisplayVFModified-updated.woff2") | ||||
|             format("woff2-variations"); | ||||
| } | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "RedHatDisplayVF"; | ||||
|     font-style: italic; | ||||
|     font-weight: 300 900; | ||||
|     font-display: fallback; | ||||
|     src: | ||||
|         local("Red Hat Display"), | ||||
|         url("/fonts/RedHatFont-updated/modified/RedHatDisplayVF-updated-ItalicModified.woff2") | ||||
|             format("woff2-variations"), | ||||
|         url("https://goauthentik.io/fonts/RedHatFont-updated/modified/RedHatDisplayVF-updated-ItalicModified.woff2") | ||||
|             format("woff2-variations"); | ||||
| } | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "RedHatTextVF"; | ||||
|     font-style: normal; | ||||
|     font-weight: 400 500; | ||||
|     font-display: fallback; | ||||
|     src: | ||||
|         local("Red Hat Display"), | ||||
|         url("/fonts/RedHatFont-updated/modified/RedHatTextVFModified-updated.woff2") | ||||
|             format("woff2-variations"), | ||||
|         url("https://goauthentik.io/fonts/RedHatFont-updated/modified/RedHatTextVFModified-updated.woff2") | ||||
|             format("woff2-variations"); | ||||
| } | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "RedHatTextVF"; | ||||
|     font-style: italic; | ||||
|     font-weight: 400 500; | ||||
|     font-display: fallback; | ||||
|     src: | ||||
|         local("Red Hat Display"), | ||||
|         url("/fonts/RedHatFont-updated/modified/RedHatTextVF-updated-ItalicModified.woff2") | ||||
|             format("woff2-variations") | ||||
|             url("https://goauthentik.io/fonts/RedHatFont-updated/modified/RedHatTextVF-updated-ItalicModified.woff2") | ||||
|             format("woff2-variations"); | ||||
| } | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "RedHatMonoVF"; | ||||
|     font-style: normal; | ||||
|     font-weight: 300 700; | ||||
|     font-display: fallback; | ||||
|     src: | ||||
|         local("Red Hat Mono"), | ||||
|         url("/fonts/RedHatFont-updated/RedHatMono/RedHatMonoVF-updated.woff2") | ||||
|             format("woff2-variations"), | ||||
|         url("https://goauthentik.io/fonts/RedHatFont-updated/RedHatMono/RedHatMonoVF-updated.woff2") | ||||
|             format("woff2-variations"); | ||||
| } | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "RedHatMonoVF"; | ||||
|     font-style: italic; | ||||
|     font-weight: 300 700; | ||||
|     font-display: fallback; | ||||
|     src: | ||||
|         local("Red Hat Mono"), | ||||
|         url("/fonts/RedHatFont-updated/RedHatMono/RedHatMonoVF-updated-Italic.woff2") | ||||
|             format("woff2-variations"), | ||||
|         url("https://goauthentik.io/fonts/RedHatFont-updated/RedHatMono/RedHatMonoVF-updated-Italic.woff2") | ||||
|             format("woff2-variations"); | ||||
| } | ||||
							
								
								
									
										44
									
								
								packages/docusaurus-config/css/header.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								packages/docusaurus-config/css/header.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,44 @@ | ||||
| a[data-icon] { | ||||
|     display: flex; | ||||
|     gap: 0.5em; | ||||
|     align-items: center; | ||||
|     border-radius: var(--ifm-badge-border-radius); | ||||
|  | ||||
|     &:hover { | ||||
|         background-color: var(--ifm-hover-overlay); | ||||
|     } | ||||
| } | ||||
|  | ||||
| a[data-icon]::before { | ||||
|     display: block; | ||||
|     content: ""; | ||||
|     width: 1.5rem; | ||||
|     height: 1.5rem; | ||||
|     background-repeat: no-repeat; | ||||
|     background-position: center; | ||||
| } | ||||
|  | ||||
| a[data-icon]::after { | ||||
|     display: block; | ||||
|     content: attr(aria-label); | ||||
| } | ||||
|  | ||||
| @media (max-width: 1300px) { | ||||
|     .navbar--fixed-top .navbar__items a[data-icon]::after { | ||||
|         display: none; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @media (max-width: 998px) { | ||||
|     .navbar--fixed-top .navbar__items a[data-icon] { | ||||
|         display: none; | ||||
|     } | ||||
| } | ||||
|  | ||||
| a[data-icon="github"]::before { | ||||
|     background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E"); | ||||
| } | ||||
|  | ||||
| a[data-icon="discord"]::before { | ||||
|     background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20127.14%2096.36%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23fff%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22%E5%9B%BE%E5%B1%82_2%22%20data-name%3D%22%E5%9B%BE%E5%B1%82%202%22%3E%3Cg%20id%3D%22Discord_Logos%22%20data-name%3D%22Discord%20Logos%22%3E%3Cg%20id%3D%22Discord_Logo_-_Large_-_White%22%20data-name%3D%22Discord%20Logo%20-%20Large%20-%20White%22%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M107.7%2C8.07A105.15%2C105.15%2C0%2C0%2C0%2C81.47%2C0a72.06%2C72.06%2C0%2C0%2C0-3.36%2C6.83A97.68%2C97.68%2C0%2C0%2C0%2C49%2C6.83%2C72.37%2C72.37%2C0%2C0%2C0%2C45.64%2C0%2C105.89%2C105.89%2C0%2C0%2C0%2C19.39%2C8.09C2.79%2C32.65-1.71%2C56.6.54%2C80.21h0A105.73%2C105.73%2C0%2C0%2C0%2C32.71%2C96.36%2C77.7%2C77.7%2C0%2C0%2C0%2C39.6%2C85.25a68.42%2C68.42%2C0%2C0%2C1-10.85-5.18c.91-.66%2C1.8-1.34%2C2.66-2a75.57%2C75.57%2C0%2C0%2C0%2C64.32%2C0c.87.71%2C1.76%2C1.39%2C2.66%2C2a68.68%2C68.68%2C0%2C0%2C1-10.87%2C5.19%2C77%2C77%2C0%2C0%2C0%2C6.89%2C11.1A105.25%2C105.25%2C0%2C0%2C0%2C126.6%2C80.22h0C129.24%2C52.84%2C122.09%2C29.11%2C107.7%2C8.07ZM42.45%2C65.69C36.18%2C65.69%2C31%2C60%2C31%2C53s5-12.74%2C11.43-12.74S54%2C46%2C53.89%2C53%2C48.84%2C65.69%2C42.45%2C65.69Zm42.24%2C0C78.41%2C65.69%2C73.25%2C60%2C73.25%2C53s5-12.74%2C11.44-12.74S96.23%2C46%2C96.12%2C53%2C91.08%2C65.69%2C84.69%2C65.69Z%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E"); | ||||
| } | ||||
							
								
								
									
										40
									
								
								packages/docusaurus-config/css/homepage.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								packages/docusaurus-config/css/homepage.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,40 @@ | ||||
| /* TODO: Determine just how global these styles are. */ | ||||
|  | ||||
| /* The parent div centers, but the inner paragraph needs its own centering while its size changes. */ | ||||
| .homepage_hero__subtitle { | ||||
|     display: flex; | ||||
|     justify-content: center; | ||||
| } | ||||
|  | ||||
| .homepage_hero__subtitle p { | ||||
|     font-size: clamp( | ||||
|         1.125rem, | ||||
|         0.9946rem + 0.6522vi, | ||||
|         1.5rem | ||||
|     ); /* Adjust font as page scales */ | ||||
|     max-width: 28ch; /* Apply a maximum to keep everything in the box */ | ||||
|     text-wrap: balance; /* Prevent widows, orphans, and runts. Doesn't work in Safari */ | ||||
| } | ||||
|  | ||||
| .hero--primary { | ||||
|     background: radial-gradient( | ||||
|         at right bottom, | ||||
|         rgba(47, 6, 75, 1) 0%, | ||||
|         var(--ifm-color-primary) 50% | ||||
|     ); | ||||
|     padding-bottom: 5.3rem !important; | ||||
|     /* fix aliasing at the edge */ | ||||
|     -webkit-backface-visibility: hidden; | ||||
|     backface-visibility: hidden; | ||||
|     -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 3vw)); | ||||
|     clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 3vw)); | ||||
| } | ||||
|  | ||||
| .hero-banner { | ||||
|     padding: 4rem 0; | ||||
|     text-align: center; | ||||
|     position: relative; | ||||
|     overflow: hidden; | ||||
|     overflow-wrap: normal; | ||||
|     color: var(--white); | ||||
| } | ||||
							
								
								
									
										11
									
								
								packages/docusaurus-config/css/index.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								packages/docusaurus-config/css/index.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,11 @@ | ||||
| @import "../css/root.css"; | ||||
| @import "../css/fonts.css"; | ||||
| @import "../css/code.css"; | ||||
| @import "../css/navbar.css"; | ||||
| @import "../css/header.css"; | ||||
| @import "../css/sidebar.css"; | ||||
| @import "../css/markdown.css"; | ||||
| @import "../css/badges.css"; | ||||
| @import "../css/menu.css"; | ||||
| @import "../css/buttons.css"; | ||||
| @import "../css/homepage.css"; | ||||
							
								
								
									
										27
									
								
								packages/docusaurus-config/css/markdown.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								packages/docusaurus-config/css/markdown.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,27 @@ | ||||
| .docusaurus-mermaid-container { | ||||
|     /* Improve contrast. */ | ||||
|     & .messageText { | ||||
|         stroke: var(--ifm-background-color) !important; | ||||
|         stroke-width: 4; | ||||
|         fill: var(--ifm-color-content) !important; | ||||
|         paint-order: stroke; | ||||
|     } | ||||
| } | ||||
|  | ||||
| .markdown { | ||||
|     /* Remove empty table headers. */ | ||||
|     & table > thead:has(> tr > th:empty):not(:has(> tr > th:not(:empty))) { | ||||
|         display: none; | ||||
|     } | ||||
| } | ||||
|  | ||||
| .contains-task-list { | ||||
|     input[type="checkbox"] { | ||||
|         appearance: none; | ||||
|     } | ||||
|     input[type="checkbox"]::after { | ||||
|         content: "✓"; | ||||
|         color: var(--ifm-color-success-dark); | ||||
|         display: inline-block; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										22
									
								
								packages/docusaurus-config/css/menu.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								packages/docusaurus-config/css/menu.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,22 @@ | ||||
| :root { | ||||
|     --ifm-menu-link-padding-vertical: 1em; | ||||
| } | ||||
|  | ||||
| .menu__list-item { | ||||
|     font-family: var(--ifm-heading-font-family); | ||||
|     font-weight: 400; | ||||
| } | ||||
|  | ||||
| .navbar-sidebar__items:not(.navbar-sidebar__items--show-secondary) { | ||||
|     --ifm-menu-color: var(--white); | ||||
|     --ifm-menu-color-active: var(--white); | ||||
|  | ||||
|     .menu__list-item { | ||||
|         font-size: var(--ifm-h3-font-size); | ||||
|         filter: drop-shadow(0px -1px var(--ifm-color-primary-darker)); | ||||
|     } | ||||
| } | ||||
|  | ||||
| .breadcrumbs__link { | ||||
|     font-weight: 400; | ||||
| } | ||||
							
								
								
									
										191
									
								
								packages/docusaurus-config/css/navbar.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										191
									
								
								packages/docusaurus-config/css/navbar.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,191 @@ | ||||
| :root { | ||||
|     --ifm-navbar-item-padding-horizontal: 0.5rem; | ||||
|     --ifm-navbar-link-color: var(--white); | ||||
|     --ifm-navbar-link-hover-color: var(--white); | ||||
|  | ||||
|     --ifm-navbar-link-color: var(--white); | ||||
|     --ifm-navbar-link-hover-color: var(--white); | ||||
| } | ||||
|  | ||||
| .navbar--fixed-top { | ||||
|     background-color: var(--ifm-color-primary); | ||||
|     box-shadow: none; | ||||
| } | ||||
|  | ||||
| .navbar .navbar__inner { | ||||
|     margin: 0 auto; | ||||
|     max-width: 1600px; | ||||
| } | ||||
|  | ||||
| /* Nav header background color on mobile */ | ||||
| .navbar-sidebar__brand, | ||||
| .navbar-sidebar__items { | ||||
|     background-color: var(--ifm-color-primary); | ||||
| } | ||||
|  | ||||
| .navbar__toggle, | ||||
| .navbar-sidebar__brand .clean-btn, | ||||
| .navbar__items--right .clean-btn { | ||||
|     color: var(--white); | ||||
|  | ||||
|     &:hover { | ||||
|         background-color: var(--ifm-hover-overlay); | ||||
|     } | ||||
| } | ||||
|  | ||||
| .navbar-sidebar__brand .navbar-sidebar__close { | ||||
|     --ifm-color-emphasis-600: var(--white); | ||||
| } | ||||
|  | ||||
| .navbar__item.navbar__link { | ||||
|     user-select: none; | ||||
| } | ||||
|  | ||||
| .navbar__items:not(.navbar__items--right) { | ||||
|     .navbar__item.navbar__link { | ||||
|         margin-block-start: 0.1em; | ||||
|         border-radius: var(--ifm-badge-border-radius); | ||||
|     } | ||||
|  | ||||
|     .navbar__item.navbar__link.navbar__link--active { | ||||
|         background: #fff; | ||||
|         color: var(--ifm-color-primary); | ||||
|     } | ||||
|  | ||||
|     .navbar__item.navbar__link:not(.navbar__link--active):hover { | ||||
|         background: var(--ifm-hover-overlay); | ||||
|         color: #fff; | ||||
|     } | ||||
|  | ||||
|     .navbar__item.navbar__link + .navbar__item.navbar__link { | ||||
|         margin-inline-start: calc(var(--ifm-navbar-padding-horizontal) / 2); | ||||
|     } | ||||
| } | ||||
|  | ||||
| .navbar__item.navbar__link { | ||||
|     font-weight: 600; | ||||
| } | ||||
|  | ||||
| .navbar--fixed-top .navbar__inner .navbar__item { | ||||
|     filter: drop-shadow(0px -1px var(--ifm-color-primary-darker)); | ||||
| } | ||||
|  | ||||
| @media (min-width: 1120px) { | ||||
|     .navbar--fixed-top .navbar__items:not(.navbar__items--right) { | ||||
|         --ifm-navbar-item-padding-horizontal: 1rem; | ||||
|     } | ||||
|  | ||||
|     .docs-wrapper .navbar { | ||||
|         margin: 0; | ||||
|         padding-inline-start: 0; | ||||
|     } | ||||
|  | ||||
|     .navbar__brand { | ||||
|         justify-content: center; | ||||
|     } | ||||
|  | ||||
|     .docs-wrapper .navbar__brand { | ||||
|         width: var(--doc-sidebar-width); | ||||
|         margin: 0; | ||||
|     } | ||||
|  | ||||
|     .navbar__item.navbar__link { | ||||
|         font-size: 1.1rem; | ||||
|     } | ||||
| } | ||||
|  | ||||
| .navbar__logo { | ||||
|     margin: 0 0.75rem 0.2rem 0; | ||||
| } | ||||
|  | ||||
| .navbar__items--right { | ||||
|     display: grid; | ||||
|  | ||||
|     --ifm-hover-overlay: hsl(0deg 0% 100% / 25%); | ||||
|     --ifm-navbar-item-padding-horizontal: 0.75rem; | ||||
|  | ||||
|     .navbar__item.navbar__link { | ||||
|         grid-row: 1; | ||||
|  | ||||
|         &:first-child { | ||||
|             grid-column: 1 / span 1; | ||||
|         } | ||||
|  | ||||
|         &:nth-child(2) { | ||||
|             grid-column: 2 / span 1; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     div:has(.DocSearch) { | ||||
|         grid-column: 5 / span 1; | ||||
|         grid-row: 1; | ||||
|  | ||||
|         @media (min-width: 999px) { | ||||
|             border-inline-start: 1px solid var(--ifm-hover-overlay); | ||||
|             margin-inline-start: calc( | ||||
|                 var(--ifm-navbar-item-padding-horizontal) / 2 | ||||
|             ); | ||||
|             padding-inline-start: calc( | ||||
|                 var(--ifm-navbar-item-padding-horizontal) / 2 | ||||
|             ); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     div:has(.clean-btn) { | ||||
|         grid-column: 6 / span 1; | ||||
|         grid-row: 1; | ||||
|     } | ||||
| } | ||||
|  | ||||
| .DocSearch-Button { | ||||
|     --docsearch-primary-color: var(--ifm-color-primary-darkest); | ||||
|     --docsearch-text-color: var(--ifm-navbar-link-color); | ||||
|     --docsearch-searchbox-shadow: unset; | ||||
|     --docsearch-searchbox-background: transparent; | ||||
|     --docsearch-searchbox-focus-background: var(--ifm-hover-overlay); | ||||
|  | ||||
|     --docsearch-muted-color: hsl(0 0% 85% / 1); | ||||
|     --docsearch-key-gradient: linear-gradient( | ||||
|         -26.5deg, | ||||
|         hsl(236.47deg 43.59% 77.06%), | ||||
|         hsl(236.84deg 34.55% 10.78%) | ||||
|     ); | ||||
|     --docsearch-key-shadow: | ||||
|         inset 0 -2px 0 0 hsl(233.33deg 36% 24.51%), | ||||
|         inset 0 0 1px 1px hsl(232.11deg 34.86% 57.25%), | ||||
|         0 2px 2px 0 rgba(3, 4, 9, 0.3); | ||||
|     --docsearch-key-pressed-shadow: | ||||
|         inset 0 -2px 0 0 #282d55, | ||||
|         inset 0 0 1px 1px hsl(231.82deg 21.36% 40.39%), | ||||
|         0 1px 1px 0 hsl(230deg 50% 2.35% / 30.2%); | ||||
|  | ||||
|     padding: var(--ifm-navbar-item-padding-vertical) | ||||
|         var(--ifm-navbar-item-padding-horizontal) !important; | ||||
|     padding-inline-end: calc( | ||||
|         var(--ifm-navbar-item-padding-horizontal) * 1.25 | ||||
|     ) !important; | ||||
|  | ||||
|     .DocSearch-Button-Placeholder { | ||||
|         font-family: var(--ifm-heading-font-family); | ||||
|         color: var(--ifm-navbar-link-color); | ||||
|         font-weight: 600; | ||||
|         font-size: 1.1rem; | ||||
|         padding: 0; | ||||
|     } | ||||
|  | ||||
|     .DocSearch-Button-Container { | ||||
|         gap: 0.5em; | ||||
|     } | ||||
|  | ||||
|     .DocSearch-Search-Icon { | ||||
|         stroke-width: 1.75; | ||||
|     } | ||||
|  | ||||
|     .DocSearch-Button-Keys { | ||||
|         display: none; | ||||
|     } | ||||
| } | ||||
|  | ||||
| .DocSearch-Button-Key { | ||||
|     font-weight: 500; | ||||
| } | ||||
							
								
								
									
										19
									
								
								packages/docusaurus-config/css/root.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								packages/docusaurus-config/css/root.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,19 @@ | ||||
| :root { | ||||
|     --white: hsl(0deg 0% 95%); | ||||
|  | ||||
|     --ifm-color-primary: #fd4b2d; | ||||
|     --ifm-color-primary-dark: #fd320f; | ||||
|     --ifm-color-primary-darker: #fb2602; | ||||
|     --ifm-color-primary-darkest: #cf1f02; | ||||
|     --ifm-color-primary-light: #fd644b; | ||||
|     --ifm-color-primary-lighter: #fd7159; | ||||
|     --ifm-color-primary-lightest: #fe9786; | ||||
|  | ||||
|     --ifm-hover-overlay: hsl(0deg 0% 100% / 25%); | ||||
|  | ||||
|     --ifm-color-content: hsl(216 35% 3%); | ||||
| } | ||||
|  | ||||
| body { | ||||
|     overscroll-behavior-x: none; | ||||
| } | ||||
							
								
								
									
										20
									
								
								packages/docusaurus-config/css/sidebar.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								packages/docusaurus-config/css/sidebar.css
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,20 @@ | ||||
| .theme-doc-sidebar-menu .dropdown { | ||||
|     display: block; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| .theme-doc-sidebar-menu .navbar__link { | ||||
|     color: var(--ifm-menu-color); | ||||
| } | ||||
|  | ||||
| .theme-doc-sidebar-menu .dropdown__menu { | ||||
|     left: 0; | ||||
| } | ||||
| .theme-doc-sidebar-menu hr { | ||||
|     margin-top: calc(var(--ifm-hr-margin-vertical) / 2); | ||||
|     margin-right: -0.5rem; | ||||
| } | ||||
|  | ||||
| .clean-list { | ||||
|     font-weight: 500; | ||||
| } | ||||
							
								
								
									
										6
									
								
								packages/docusaurus-config/index.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								packages/docusaurus-config/index.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | ||||
| /** | ||||
|  * @file Docusaurus configuration for the authentik website. | ||||
|  */ | ||||
|  | ||||
| export * from "./lib/theme.js"; | ||||
| export * from "./lib/common.js"; | ||||
							
								
								
									
										70
									
								
								packages/docusaurus-config/lib/common.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								packages/docusaurus-config/lib/common.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,70 @@ | ||||
| /** | ||||
|  * @file Common Docusaurus configuration utilities. | ||||
|  * | ||||
|  * @import { Config as DocusaurusConfig } from "@docusaurus/types" | ||||
|  * @import { UserThemeConfig } from "./theme.js" | ||||
|  */ | ||||
|  | ||||
| import { deepmerge } from "deepmerge-ts"; | ||||
| import { createThemeConfig } from "./theme.js"; | ||||
|  | ||||
| //#region Types | ||||
|  | ||||
| /** | ||||
|  * @typedef {Omit<DocusaurusConfig, 'themeConfig'>} DocusaurusConfigBase | ||||
|  * | ||||
|  * Represents the base configuration for Docusaurus, excluding the theme configuration. | ||||
|  */ | ||||
|  | ||||
| /** | ||||
|  * @typedef DocusaurusConfigBaseTheme | ||||
|  * @property {UserThemeConfig} themeConfig The theme configuration. | ||||
|  * | ||||
|  * Represents a configuration object, only including the theme configuration. | ||||
|  */ | ||||
|  | ||||
| /** | ||||
|  * @typedef {Partial<DocusaurusConfigBase & DocusaurusConfigBaseTheme>} DocusaurusConfigInit | ||||
|  * | ||||
|  * The initial configuration for Docusaurus. | ||||
|  * | ||||
|  * @remarks | ||||
|  * This type is the result of Docusaurs's less than ideal type definitions. | ||||
|  * Much of the configuration is not strictly typed, however, this type | ||||
|  * is a good starting point. | ||||
|  */ | ||||
|  | ||||
| //#endregion | ||||
|  | ||||
| //#region Functions | ||||
|  | ||||
| /** | ||||
|  * Create a Docusaurus configuration. | ||||
|  * | ||||
|  * @param {DocusaurusConfigInit} [overrides] The options to override. | ||||
|  * @returns {DocusaurusConfig} | ||||
|  */ | ||||
| export function createDocusaurusConfig({ themeConfig, ...overrides } = {}) { | ||||
|     /** | ||||
|      * @type {DocusaurusConfig} | ||||
|      */ | ||||
|     const config = { | ||||
|         title: "authentik", | ||||
|         tagline: "Bring all of your authentication into a unified platform.", | ||||
|         url: "https://docs.goauthentik.io", | ||||
|         baseUrl: "/", | ||||
|         onBrokenLinks: "throw", | ||||
|         onBrokenAnchors: "throw", | ||||
|         favicon: "img/icon.png", | ||||
|         organizationName: "Authentik Security Inc.", | ||||
|         projectName: "authentik", | ||||
|         markdown: { | ||||
|             mermaid: true, | ||||
|         }, | ||||
|         themeConfig: createThemeConfig(themeConfig), | ||||
|     }; | ||||
|  | ||||
|     return deepmerge(config, overrides); | ||||
| } | ||||
|  | ||||
| //#endregion | ||||
							
								
								
									
										85
									
								
								packages/docusaurus-config/lib/theme.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										85
									
								
								packages/docusaurus-config/lib/theme.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,85 @@ | ||||
| /** | ||||
|  * @file Docusaurus theme configuration for the authentik website. | ||||
|  * | ||||
|  * @import { UserThemeConfig as UserThemeConfigCommon } from "@docusaurus/theme-common"; | ||||
|  * @import { UserThemeConfig as UserThemeConfigAlgolia } from "@docusaurus/theme-search-algolia"; | ||||
|  */ | ||||
|  | ||||
| import { deepmerge } from "deepmerge-ts"; | ||||
| import { themes as prismThemes } from "prism-react-renderer"; | ||||
|  | ||||
| //#region Types | ||||
|  | ||||
| /** | ||||
|  * Combined theme configuration for Docusaurus and Algolia. | ||||
|  * | ||||
|  * @typedef {UserThemeConfigCommon & UserThemeConfigAlgolia} UserThemeConfig | ||||
|  */ | ||||
|  | ||||
| //#endregion | ||||
|  | ||||
| //#region Functions | ||||
|  | ||||
| /** | ||||
|  * @returns {string} The copyright string. | ||||
|  */ | ||||
| export function formatCopyright() { | ||||
|     return `Copyright © ${new Date().getFullYear()} Authentik Security Inc. Built with Docusaurus.`; | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Creates a Prisma configuration for Docusaurus. | ||||
|  * | ||||
|  * @param {Partial<UserThemeConfigCommon['prism']>} overrides - Overrides for the default Prisma configuration. | ||||
|  * @returns {UserThemeConfigCommon['prism']} | ||||
|  */ | ||||
| export function createPrismConfig(overrides = {}) { | ||||
|     /** | ||||
|      * @type {UserThemeConfigCommon['prism']} | ||||
|      */ | ||||
|     const prismConfig = { | ||||
|         theme: prismThemes.oneLight, | ||||
|         darkTheme: prismThemes.oneDark, | ||||
|         additionalLanguages: [ | ||||
|             // --- | ||||
|             "apacheconf", | ||||
|             "diff", | ||||
|             "http", | ||||
|             "json", | ||||
|             "nginx", | ||||
|             "python", | ||||
|             "bash", | ||||
|         ], | ||||
|     }; | ||||
|  | ||||
|     return deepmerge(prismConfig, overrides); | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Creates a theme configuration for Docusaurus. | ||||
|  * | ||||
|  * @param {Partial<UserThemeConfig>} overrides - Overrides for the default theme configuration. | ||||
|  * @returns {UserThemeConfig} | ||||
|  */ | ||||
| export function createThemeConfig({ prism, ...overrides } = {}) { | ||||
|     /** | ||||
|      * @type {UserThemeConfig} | ||||
|      */ | ||||
|     const themeConfig = { | ||||
|         image: "img/social.png", | ||||
|         tableOfContents: { | ||||
|             minHeadingLevel: 2, | ||||
|             maxHeadingLevel: 3, | ||||
|         }, | ||||
|         colorMode: { | ||||
|             respectPrefersColorScheme: true, | ||||
|         }, | ||||
|         algolia: { | ||||
|             appId: "36ROD0O0FV", | ||||
|             apiKey: "727db511300ca9aec5425645bbbddfb5", | ||||
|         }, | ||||
|         prism: createPrismConfig(prism), | ||||
|     }; | ||||
|  | ||||
|     return deepmerge(themeConfig, overrides); | ||||
| } | ||||
							
								
								
									
										20973
									
								
								packages/docusaurus-config/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										20973
									
								
								packages/docusaurus-config/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										55
									
								
								packages/docusaurus-config/package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								packages/docusaurus-config/package.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,55 @@ | ||||
| { | ||||
|     "name": "@goauthentik/docusaurus-config", | ||||
|     "version": "1.0.4", | ||||
|     "description": "authentik's Docusaurus config", | ||||
|     "license": "MIT", | ||||
|     "scripts": { | ||||
|         "build": "tsc -p ." | ||||
|     }, | ||||
|     "type": "module", | ||||
|     "exports": { | ||||
|         "./package.json": "./package.json", | ||||
|         ".": { | ||||
|             "import": "./index.js", | ||||
|             "types": "./out/index.d.ts" | ||||
|         }, | ||||
|         "./css/*.css": "./css/*.css" | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "deepmerge-ts": "^7.1.5", | ||||
|         "prism-react-renderer": "^2.4.1" | ||||
|     }, | ||||
|     "devDependencies": { | ||||
|         "@docusaurus/core": "^3.7.0", | ||||
|         "@docusaurus/preset-classic": "^3.7.0", | ||||
|         "@docusaurus/theme-common": "^3.7.0", | ||||
|         "@docusaurus/theme-mermaid": "^3.7.0", | ||||
|         "@goauthentik/prettier-config": "^1.0.1", | ||||
|         "@goauthentik/tsconfig": "^1.0.1", | ||||
|         "react": "^18.3.1", | ||||
|         "react-dom": "^18.3.1", | ||||
|         "typescript": "^5.8.2" | ||||
|     }, | ||||
|     "peerDependencies": { | ||||
|         "@docusaurus/core": "^3.7.0", | ||||
|         "@docusaurus/preset-classic": "^3.7.0", | ||||
|         "@docusaurus/theme-common": "^3.7.0", | ||||
|         "@docusaurus/theme-mermaid": "^3.7.0", | ||||
|         "react": "^18.0.0", | ||||
|         "react-dom": "^18.0.0" | ||||
|     }, | ||||
|     "engines": { | ||||
|         "node": ">=20.11" | ||||
|     }, | ||||
|     "types": "./out/index.d.ts", | ||||
|     "files": [ | ||||
|         "./index.js", | ||||
|         "lib/**/*", | ||||
|         "css/**/*", | ||||
|         "out/**/*" | ||||
|     ], | ||||
|     "prettier": "@goauthentik/prettier-config", | ||||
|     "publishConfig": { | ||||
|         "access": "public" | ||||
|     } | ||||
| } | ||||
							
								
								
									
										8
									
								
								packages/docusaurus-config/tsconfig.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								packages/docusaurus-config/tsconfig.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| { | ||||
|     "extends": "@goauthentik/tsconfig", | ||||
|     "compilerOptions": { | ||||
|         "baseUrl": ".", | ||||
|         "checkJs": true, | ||||
|         "emitDeclarationOnly": true | ||||
|     } | ||||
| } | ||||
| @ -1,11 +1,12 @@ | ||||
| import eslint from "@eslint/js"; | ||||
| import { javaScriptConfig } from "@goauthentik/eslint-config/javascript-config"; | ||||
| import { reactConfig } from "@goauthentik/eslint-config/react-config"; | ||||
| import { typescriptConfig } from "@goauthentik/eslint-config/typescript-config"; | ||||
| import * as litconf from "eslint-plugin-lit"; | ||||
| import * as wcconf from "eslint-plugin-wc"; | ||||
| import tseslint from "typescript-eslint"; | ||||
|  | ||||
| import { javaScriptConfig } from "./lib/javascript-config.js"; | ||||
| import { reactConfig } from "./lib/react-config.js"; | ||||
| import { typescriptConfig } from "./lib/typescript-config.js"; | ||||
|  | ||||
| // @ts-check | ||||
|  | ||||
| /** | ||||
|  | ||||
							
								
								
									
										4174
									
								
								packages/eslint-config/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										4174
									
								
								packages/eslint-config/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -1,8 +1,11 @@ | ||||
| { | ||||
|     "name": "@goauthentik/eslint-config", | ||||
|     "version": "1.0.0", | ||||
|     "version": "1.0.4", | ||||
|     "description": "authentik's ESLint config", | ||||
|     "license": "MIT", | ||||
|     "scripts": { | ||||
|         "build": "tsc -p ." | ||||
|     }, | ||||
|     "type": "module", | ||||
|     "exports": { | ||||
|         "./package.json": "./package.json", | ||||
| @ -11,26 +14,29 @@ | ||||
|             "types": "./out/index.d.ts" | ||||
|         }, | ||||
|         "./react-config": { | ||||
|             "import": "./react-config.js", | ||||
|             "types": "./out/react-config.d.ts" | ||||
|             "import": "./lib/react-config.js", | ||||
|             "types": "./out/lib/react-config.d.ts" | ||||
|         }, | ||||
|         "./javascript-config": { | ||||
|             "import": "./javascript-config.js", | ||||
|             "types": "./out/javascript-config.d.ts" | ||||
|             "import": "./lib/javascript-config.js", | ||||
|             "types": "./out/lib/javascript-config.d.ts" | ||||
|         }, | ||||
|         "./typescript-config": { | ||||
|             "import": "./typescript-config.js", | ||||
|             "types": "./out/typescript-config.d.ts" | ||||
|             "import": "./lib/typescript-config.js", | ||||
|             "types": "./out/lib/typescript-config.d.ts" | ||||
|         } | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "eslint": "^9.23.0", | ||||
|         "eslint-plugin-import": "^2.31.0", | ||||
|         "eslint-plugin-lit": "^1.15.0", | ||||
|         "eslint-plugin-react": "^7.37.4", | ||||
|         "eslint-plugin-react-hooks": "^5.2.0" | ||||
|         "eslint-plugin-react-hooks": "^5.2.0", | ||||
|         "eslint-plugin-wc": "^2.1.1" | ||||
|     }, | ||||
|     "devDependencies": { | ||||
|         "@goauthentik/tsconfig": "1.0.0", | ||||
|         "@goauthentik/prettier-config": "^1.0.1", | ||||
|         "@goauthentik/tsconfig": "^1.0.1", | ||||
|         "@types/eslint": "^9.6.1", | ||||
|         "typescript": "^5.8.2", | ||||
|         "typescript-eslint": "^8.29.0" | ||||
| @ -46,6 +52,11 @@ | ||||
|         "node": ">=20.11" | ||||
|     }, | ||||
|     "types": "./out/index.d.ts", | ||||
|     "files": [ | ||||
|         "./index.js", | ||||
|         "lib/**/*", | ||||
|         "out/**/*" | ||||
|     ], | ||||
|     "prettier": "@goauthentik/prettier-config", | ||||
|     "publishConfig": { | ||||
|         "access": "public" | ||||
|  | ||||
| @ -1,6 +1,6 @@ | ||||
| import { AuthentikPrettierConfig } from "./config.js"; | ||||
| import { AuthentikPrettierConfig } from "./lib/constants.js"; | ||||
|  | ||||
| export * from "./config.js"; | ||||
| export * from "./format.js"; | ||||
| export * from "./lib/constants.js"; | ||||
| export * from "./lib/format.js"; | ||||
|  | ||||
| export default AuthentikPrettierConfig; | ||||
|  | ||||
| @ -1,6 +1,6 @@ | ||||
| import { format } from "prettier"; | ||||
| 
 | ||||
| import { AuthentikPrettierConfig } from "./config.js"; | ||||
| import { AuthentikPrettierConfig } from "./constants.js"; | ||||
| 
 | ||||
| /** | ||||
|  * Format using Prettier. | ||||
							
								
								
									
										567
									
								
								packages/prettier-config/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										567
									
								
								packages/prettier-config/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @ -0,0 +1,567 @@ | ||||
| { | ||||
|     "name": "@goauthentik/prettier-config", | ||||
|     "version": "1.0.1", | ||||
|     "lockfileVersion": 3, | ||||
|     "requires": true, | ||||
|     "packages": { | ||||
|         "": { | ||||
|             "name": "@goauthentik/prettier-config", | ||||
|             "version": "1.0.1", | ||||
|             "license": "MIT", | ||||
|             "devDependencies": { | ||||
|                 "@goauthentik/tsconfig": "^1.0.1", | ||||
|                 "@trivago/prettier-plugin-sort-imports": "^5.2.2", | ||||
|                 "prettier": "^3.5.3", | ||||
|                 "prettier-plugin-organize-imports": "^4.1.0", | ||||
|                 "prettier-plugin-packagejson": "^2.5.10", | ||||
|                 "typescript": "^5.8.2" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=20.11" | ||||
|             }, | ||||
|             "peerDependencies": { | ||||
|                 "@trivago/prettier-plugin-sort-imports": "^5.2.2", | ||||
|                 "prettier": "^3.5.3", | ||||
|                 "prettier-plugin-organize-imports": "^4.1.0", | ||||
|                 "prettier-plugin-packagejson": "^2.5.10" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@babel/code-frame": { | ||||
|             "version": "7.26.2", | ||||
|             "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", | ||||
|             "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@babel/helper-validator-identifier": "^7.25.9", | ||||
|                 "js-tokens": "^4.0.0", | ||||
|                 "picocolors": "^1.0.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6.9.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@babel/generator": { | ||||
|             "version": "7.27.0", | ||||
|             "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", | ||||
|             "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@babel/parser": "^7.27.0", | ||||
|                 "@babel/types": "^7.27.0", | ||||
|                 "@jridgewell/gen-mapping": "^0.3.5", | ||||
|                 "@jridgewell/trace-mapping": "^0.3.25", | ||||
|                 "jsesc": "^3.0.2" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6.9.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@babel/helper-string-parser": { | ||||
|             "version": "7.25.9", | ||||
|             "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", | ||||
|             "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=6.9.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@babel/helper-validator-identifier": { | ||||
|             "version": "7.25.9", | ||||
|             "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", | ||||
|             "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=6.9.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@babel/parser": { | ||||
|             "version": "7.27.0", | ||||
|             "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", | ||||
|             "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@babel/types": "^7.27.0" | ||||
|             }, | ||||
|             "bin": { | ||||
|                 "parser": "bin/babel-parser.js" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@babel/template": { | ||||
|             "version": "7.27.0", | ||||
|             "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", | ||||
|             "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@babel/code-frame": "^7.26.2", | ||||
|                 "@babel/parser": "^7.27.0", | ||||
|                 "@babel/types": "^7.27.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6.9.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@babel/traverse": { | ||||
|             "version": "7.27.0", | ||||
|             "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", | ||||
|             "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@babel/code-frame": "^7.26.2", | ||||
|                 "@babel/generator": "^7.27.0", | ||||
|                 "@babel/parser": "^7.27.0", | ||||
|                 "@babel/template": "^7.27.0", | ||||
|                 "@babel/types": "^7.27.0", | ||||
|                 "debug": "^4.3.1", | ||||
|                 "globals": "^11.1.0" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6.9.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@babel/types": { | ||||
|             "version": "7.27.0", | ||||
|             "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", | ||||
|             "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@babel/helper-string-parser": "^7.25.9", | ||||
|                 "@babel/helper-validator-identifier": "^7.25.9" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6.9.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@goauthentik/tsconfig": { | ||||
|             "version": "1.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/@goauthentik/tsconfig/-/tsconfig-1.0.1.tgz", | ||||
|             "integrity": "sha512-kxMDkgUHhAmQ2iIhUZJjrx/CgDb1AwvRoPtU4vrjAZu7x66+qczCjRTK+GzIGCeqB97GEpvCCjU8CThmozVFqA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=20.11" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@jridgewell/gen-mapping": { | ||||
|             "version": "0.3.8", | ||||
|             "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", | ||||
|             "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@jridgewell/set-array": "^1.2.1", | ||||
|                 "@jridgewell/sourcemap-codec": "^1.4.10", | ||||
|                 "@jridgewell/trace-mapping": "^0.3.24" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@jridgewell/resolve-uri": { | ||||
|             "version": "3.1.2", | ||||
|             "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", | ||||
|             "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=6.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@jridgewell/set-array": { | ||||
|             "version": "1.2.1", | ||||
|             "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", | ||||
|             "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=6.0.0" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@jridgewell/sourcemap-codec": { | ||||
|             "version": "1.5.0", | ||||
|             "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", | ||||
|             "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", | ||||
|             "dev": true, | ||||
|             "license": "MIT" | ||||
|         }, | ||||
|         "node_modules/@jridgewell/trace-mapping": { | ||||
|             "version": "0.3.25", | ||||
|             "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", | ||||
|             "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@jridgewell/resolve-uri": "^3.1.0", | ||||
|                 "@jridgewell/sourcemap-codec": "^1.4.14" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@pkgr/core": { | ||||
|             "version": "0.1.2", | ||||
|             "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.2.tgz", | ||||
|             "integrity": "sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": "^12.20.0 || ^14.18.0 || >=16.0.0" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://opencollective.com/unts" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/@trivago/prettier-plugin-sort-imports": { | ||||
|             "version": "5.2.2", | ||||
|             "resolved": "https://registry.npmjs.org/@trivago/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-5.2.2.tgz", | ||||
|             "integrity": "sha512-fYDQA9e6yTNmA13TLVSA+WMQRc5Bn/c0EUBditUHNfMMxN7M82c38b1kEggVE3pLpZ0FwkwJkUEKMiOi52JXFA==", | ||||
|             "dev": true, | ||||
|             "license": "Apache-2.0", | ||||
|             "dependencies": { | ||||
|                 "@babel/generator": "^7.26.5", | ||||
|                 "@babel/parser": "^7.26.7", | ||||
|                 "@babel/traverse": "^7.26.7", | ||||
|                 "@babel/types": "^7.26.7", | ||||
|                 "javascript-natural-sort": "^0.7.1", | ||||
|                 "lodash": "^4.17.21" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">18.12" | ||||
|             }, | ||||
|             "peerDependencies": { | ||||
|                 "@vue/compiler-sfc": "3.x", | ||||
|                 "prettier": "2.x - 3.x", | ||||
|                 "prettier-plugin-svelte": "3.x", | ||||
|                 "svelte": "4.x || 5.x" | ||||
|             }, | ||||
|             "peerDependenciesMeta": { | ||||
|                 "@vue/compiler-sfc": { | ||||
|                     "optional": true | ||||
|                 }, | ||||
|                 "prettier-plugin-svelte": { | ||||
|                     "optional": true | ||||
|                 }, | ||||
|                 "svelte": { | ||||
|                     "optional": true | ||||
|                 } | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/debug": { | ||||
|             "version": "4.4.0", | ||||
|             "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", | ||||
|             "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "ms": "^2.1.3" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6.0" | ||||
|             }, | ||||
|             "peerDependenciesMeta": { | ||||
|                 "supports-color": { | ||||
|                     "optional": true | ||||
|                 } | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/detect-indent": { | ||||
|             "version": "7.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.1.tgz", | ||||
|             "integrity": "sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=12.20" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/detect-newline": { | ||||
|             "version": "4.0.1", | ||||
|             "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-4.0.1.tgz", | ||||
|             "integrity": "sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": "^12.20.0 || ^14.13.1 || >=16.0.0" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/sponsors/sindresorhus" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/fdir": { | ||||
|             "version": "6.4.3", | ||||
|             "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", | ||||
|             "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "peerDependencies": { | ||||
|                 "picomatch": "^3 || ^4" | ||||
|             }, | ||||
|             "peerDependenciesMeta": { | ||||
|                 "picomatch": { | ||||
|                     "optional": true | ||||
|                 } | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/get-stdin": { | ||||
|             "version": "9.0.0", | ||||
|             "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", | ||||
|             "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=12" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/sponsors/sindresorhus" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/git-hooks-list": { | ||||
|             "version": "3.2.0", | ||||
|             "resolved": "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-3.2.0.tgz", | ||||
|             "integrity": "sha512-ZHG9a1gEhUMX1TvGrLdyWb9kDopCBbTnI8z4JgRMYxsijWipgjSEYoPWqBuIB0DnRnvqlQSEeVmzpeuPm7NdFQ==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/fisker/git-hooks-list?sponsor=1" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/globals": { | ||||
|             "version": "11.12.0", | ||||
|             "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", | ||||
|             "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=4" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/is-plain-obj": { | ||||
|             "version": "4.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", | ||||
|             "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=12" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/sponsors/sindresorhus" | ||||
|             } | ||||
|         }, | ||||
|         "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": "sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==", | ||||
|             "dev": true, | ||||
|             "license": "MIT" | ||||
|         }, | ||||
|         "node_modules/js-tokens": { | ||||
|             "version": "4.0.0", | ||||
|             "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", | ||||
|             "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", | ||||
|             "dev": true, | ||||
|             "license": "MIT" | ||||
|         }, | ||||
|         "node_modules/jsesc": { | ||||
|             "version": "3.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", | ||||
|             "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "bin": { | ||||
|                 "jsesc": "bin/jsesc" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=6" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/lodash": { | ||||
|             "version": "4.17.21", | ||||
|             "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", | ||||
|             "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", | ||||
|             "dev": true, | ||||
|             "license": "MIT" | ||||
|         }, | ||||
|         "node_modules/ms": { | ||||
|             "version": "2.1.3", | ||||
|             "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", | ||||
|             "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT" | ||||
|         }, | ||||
|         "node_modules/picocolors": { | ||||
|             "version": "1.1.1", | ||||
|             "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", | ||||
|             "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", | ||||
|             "dev": true, | ||||
|             "license": "ISC" | ||||
|         }, | ||||
|         "node_modules/picomatch": { | ||||
|             "version": "4.0.2", | ||||
|             "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", | ||||
|             "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=12" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/sponsors/jonschlinkert" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/prettier": { | ||||
|             "version": "3.5.3", | ||||
|             "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", | ||||
|             "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "bin": { | ||||
|                 "prettier": "bin/prettier.cjs" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=14" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/prettier/prettier?sponsor=1" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/prettier-plugin-organize-imports": { | ||||
|             "version": "4.1.0", | ||||
|             "resolved": "https://registry.npmjs.org/prettier-plugin-organize-imports/-/prettier-plugin-organize-imports-4.1.0.tgz", | ||||
|             "integrity": "sha512-5aWRdCgv645xaa58X8lOxzZoiHAldAPChljr/MT0crXVOWTZ+Svl4hIWlz+niYSlO6ikE5UXkN1JrRvIP2ut0A==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "peerDependencies": { | ||||
|                 "prettier": ">=2.0", | ||||
|                 "typescript": ">=2.9", | ||||
|                 "vue-tsc": "^2.1.0" | ||||
|             }, | ||||
|             "peerDependenciesMeta": { | ||||
|                 "vue-tsc": { | ||||
|                     "optional": true | ||||
|                 } | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/prettier-plugin-packagejson": { | ||||
|             "version": "2.5.10", | ||||
|             "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.10.tgz", | ||||
|             "integrity": "sha512-LUxATI5YsImIVSaaLJlJ3aE6wTD+nvots18U3GuQMJpUyClChaZlQrqx3dBnbhF20OnKWZyx8EgyZypQtBDtgQ==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "sort-package-json": "2.15.1", | ||||
|                 "synckit": "0.9.2" | ||||
|             }, | ||||
|             "peerDependencies": { | ||||
|                 "prettier": ">= 1.16.0" | ||||
|             }, | ||||
|             "peerDependenciesMeta": { | ||||
|                 "prettier": { | ||||
|                     "optional": true | ||||
|                 } | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/semver": { | ||||
|             "version": "7.7.1", | ||||
|             "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", | ||||
|             "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", | ||||
|             "dev": true, | ||||
|             "license": "ISC", | ||||
|             "bin": { | ||||
|                 "semver": "bin/semver.js" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=10" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/sort-object-keys": { | ||||
|             "version": "1.1.3", | ||||
|             "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz", | ||||
|             "integrity": "sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==", | ||||
|             "dev": true, | ||||
|             "license": "MIT" | ||||
|         }, | ||||
|         "node_modules/sort-package-json": { | ||||
|             "version": "2.15.1", | ||||
|             "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.15.1.tgz", | ||||
|             "integrity": "sha512-9x9+o8krTT2saA9liI4BljNjwAbvUnWf11Wq+i/iZt8nl2UGYnf3TH5uBydE7VALmP7AGwlfszuEeL8BDyb0YA==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "detect-indent": "^7.0.1", | ||||
|                 "detect-newline": "^4.0.0", | ||||
|                 "get-stdin": "^9.0.0", | ||||
|                 "git-hooks-list": "^3.0.0", | ||||
|                 "is-plain-obj": "^4.1.0", | ||||
|                 "semver": "^7.6.0", | ||||
|                 "sort-object-keys": "^1.1.3", | ||||
|                 "tinyglobby": "^0.2.9" | ||||
|             }, | ||||
|             "bin": { | ||||
|                 "sort-package-json": "cli.js" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/synckit": { | ||||
|             "version": "0.9.2", | ||||
|             "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", | ||||
|             "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "@pkgr/core": "^0.1.0", | ||||
|                 "tslib": "^2.6.2" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": "^14.18.0 || >=16.0.0" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://opencollective.com/unts" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/tinyglobby": { | ||||
|             "version": "0.2.12", | ||||
|             "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", | ||||
|             "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", | ||||
|             "dev": true, | ||||
|             "license": "MIT", | ||||
|             "dependencies": { | ||||
|                 "fdir": "^6.4.3", | ||||
|                 "picomatch": "^4.0.2" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=12.0.0" | ||||
|             }, | ||||
|             "funding": { | ||||
|                 "url": "https://github.com/sponsors/SuperchupuDev" | ||||
|             } | ||||
|         }, | ||||
|         "node_modules/tslib": { | ||||
|             "version": "2.8.1", | ||||
|             "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", | ||||
|             "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", | ||||
|             "dev": true, | ||||
|             "license": "0BSD" | ||||
|         }, | ||||
|         "node_modules/typescript": { | ||||
|             "version": "5.8.3", | ||||
|             "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", | ||||
|             "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", | ||||
|             "dev": true, | ||||
|             "license": "Apache-2.0", | ||||
|             "bin": { | ||||
|                 "tsc": "bin/tsc", | ||||
|                 "tsserver": "bin/tsserver" | ||||
|             }, | ||||
|             "engines": { | ||||
|                 "node": ">=14.17" | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @ -1,8 +1,11 @@ | ||||
| { | ||||
|     "name": "@goauthentik/prettier-config", | ||||
|     "version": "1.0.0", | ||||
|     "version": "1.0.4", | ||||
|     "description": "authentik's Prettier config", | ||||
|     "license": "MIT", | ||||
|     "scripts": { | ||||
|         "build": "tsc -p ." | ||||
|     }, | ||||
|     "type": "module", | ||||
|     "exports": { | ||||
|         "./package.json": "./package.json", | ||||
| @ -11,7 +14,14 @@ | ||||
|             "types": "./out/index.d.ts" | ||||
|         } | ||||
|     }, | ||||
|     "types": "./out/index.d.ts", | ||||
|     "devDependencies": { | ||||
|         "@goauthentik/tsconfig": "^1.0.1", | ||||
|         "@trivago/prettier-plugin-sort-imports": "^5.2.2", | ||||
|         "prettier": "^3.5.3", | ||||
|         "prettier-plugin-organize-imports": "^4.1.0", | ||||
|         "prettier-plugin-packagejson": "^2.5.10", | ||||
|         "typescript": "^5.8.2" | ||||
|     }, | ||||
|     "peerDependencies": { | ||||
|         "@trivago/prettier-plugin-sort-imports": "^5.2.2", | ||||
|         "prettier": "^3.5.3", | ||||
| @ -21,6 +31,13 @@ | ||||
|     "engines": { | ||||
|         "node": ">=20.11" | ||||
|     }, | ||||
|     "types": "./out/index.d.ts", | ||||
|     "files": [ | ||||
|         "./index.js", | ||||
|         "lib/**/*", | ||||
|         "out/**/*" | ||||
|     ], | ||||
|     "prettier": "./index.js", | ||||
|     "publishConfig": { | ||||
|         "access": "public" | ||||
|     } | ||||
|  | ||||
							
								
								
									
										16
									
								
								packages/tsconfig/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								packages/tsconfig/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | ||||
| { | ||||
|     "name": "@goauthentik/tsconfig", | ||||
|     "version": "1.0.4", | ||||
|     "lockfileVersion": 3, | ||||
|     "requires": true, | ||||
|     "packages": { | ||||
|         "": { | ||||
|             "name": "@goauthentik/tsconfig", | ||||
|             "version": "1.0.4", | ||||
|             "license": "MIT", | ||||
|             "engines": { | ||||
|                 "node": ">=20.11" | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @ -1,12 +1,15 @@ | ||||
| { | ||||
|     "name": "@goauthentik/tsconfig", | ||||
|     "version": "1.0.0", | ||||
|     "description": "authentik's s base TypeScript configuration.", | ||||
|     "version": "1.0.4", | ||||
|     "description": "authentik's base TypeScript configuration.", | ||||
|     "keywords": [ | ||||
|         "tsconfig", | ||||
|         "typescript" | ||||
|     ], | ||||
|     "license": "MIT", | ||||
|     "scripts": { | ||||
|         "build": "" | ||||
|     }, | ||||
|     "type": "module", | ||||
|     "main": "tsconfig.json", | ||||
|     "engines": { | ||||
|  | ||||
		Reference in New Issue
	
	Block a user