Skip to content

element: ak-empty-state#6

Merged
kensternberg-authentik merged 49 commits intomainfrom
element/ak-empty-state
Jan 15, 2026
Merged

element: ak-empty-state#6
kensternberg-authentik merged 49 commits intomainfrom
element/ak-empty-state

Conversation

@kensternberg-authentik
Copy link
Collaborator

@kensternberg-authentik kensternberg-authentik commented Aug 28, 2025

ak-empty-state

The Empty State, now as a web component!

  • Sizes: "xs", "sm", "sm", "lg", and "xl"
  • Variant: "loading", which will show the spinner
  • Variant: "text-only" (There's a default icon; this hides it.)

It has a lot of slots for the icon, the title, a subtitle, footer and action bars.

* element/ak-icon:
  # ak-icon
  Icon maybe final
  Initial check-in for icons.  Still needs testing.
  .
* element/ak-icon:
  Added FontAwesome icon sizes to repetoire.  Also: Prettier has opinions.
…y-state

* elements/infrastructure-and-brand:
  add publish workflow
  Update wdio config.
  Add missing dep.
  Make property deletion type friendly.
  web: Remove effectless await.
* element/ak-icon:
  rem, not em, for the pseudo-patternfly icon sizes derivef from fontawesome.  Otherwise, the multiplicative effect is... dramatic.  Icons as big as your monitor.
  Removing unneeded references.
* element/ak-icon:
  Prettier still has opinions.
  Added types to make Teffen happy.
* element/ak-spinner:
  Prettier has opinions.
@kensternberg-authentik kensternberg-authentik changed the base branch from main to elements/infrastructure-and-brand August 28, 2025 20:47
* element/ak-icon:
  Prettier has opinions.
  Update wdio config.
  Add missing dep.
  Make property deletion type friendly.
  web: Remove effectless await.
  # Authentik Elements
@kensternberg-authentik kensternberg-authentik changed the base branch from elements/infrastructure-and-brand to element/ak-spinner August 28, 2025 20:54
@kensternberg-authentik kensternberg-authentik marked this pull request as ready for review August 28, 2025 21:00
…isconnects between what we did in 4 and what we want to do in 5. This brings us to parity with 4, but uses 5's classes.
…ate' into element/ak-empty-state

* refs/remotes/origin/element/ak-empty-state:
  Prettier's opinions sometimes suck.
* element/ak-icon:
  Prettier has opinions.
  Added some docs.
  Added notes and fixed a small bug in the preferred 'display'
  Prettier has opinions.
* element/ak-spinner:
  Prettier has opinions.
  Got the function name wrong.
  Having a custom register broke some typechecking.
  Added documentation.
…ents, not a validation step, in keeping with the ADR _Don't use JavaScript to maintain CSS_
* element/ak-icon:
  Linting
  The Patternfly helper continue.
  Not using the template for one-liners, and needed extra poking to get patternfly showing up.
  Fat-fingered and deleted a crucial expression in icon tests.  Fixed!
  Updating with linty fixes.
* main: (21 commits)
  This commit revises the WCCSS transpiler, using the regular expression and merge algorithms recommended by the Patternfly 5 React team.
  Added wccss pass to package.json.
  Type inference FTW.
  Needed to put tools build in-line
  This commit ports the Elements' build tools to Typescript
  Cleanup.
  New css build completing.
  Crawling back to the original starting point, but this time with better tooling.
  Save point.
  This commit introduces a dark-mode controller and code.
  A working dark mode, although with some dubious decisions
  Build system revised into a more unixy pattern: each script does one thing well.
  Bump validator from 13.15.15 to 13.15.20 (#10)
  Bump vite (#9)
  First stab at the dark-mode controller; it takes orders from the central context, if there is one, but if not, it tries to determine the mode itself by looking at the user's preferences.
  Revised brand to meet a... more modern standard.
  npm trusted publisher
  More hacking.
  Hacking for FA fonts.
  add storybook build
  ...
@kensternberg-authentik kensternberg-authentik moved this from Todo to Needs review in authentik Core Nov 11, 2025
* main:
  Forgot to run , and now that I have a hook to do it for me, this is making it whiny.
  Fixed typo in css.
  Added comments to the wcc file.
  element: ak-skip-to-content
  Implementing Teffen's skip-to-content.
  In progress
  Buttons integrated.
\# What

\# Why

\# How

\# Designs

\# Test Steps

\# Other Notes
@kensternberg-authentik kensternberg-authentik changed the base branch from element/ak-spinner to main November 13, 2025 23:32
* main: (41 commits)
  Added comment explaining why the initial `attachToAnchor` is run in a late animation frame after `connectedCallback()`
  admin: adjustments found during integration
  Removed default border on dialog for tooltip.  We'll manage that ourselves, using Patternfly's layout.
  Continuing to adjust for dark mode, with additions for pulling fonts past the shadowDOM.
  re-arrange the CSS to better support dark mode.
  Merge mangling.
  Something got lost in the merge.
  Update .gitignore
  Adopted many of the suggestions from @GirlBossRush
  Handling focus grabbing.
  Update src/ak-tooltip/ak-tooltip.component.ts
  Update src/ak-tooltip/ak-tooltip.component.ts
  Update src/ak-tooltip/ak-tooltip-state-machine.ts
  Not sure how that all got re-arranged like that.
  elements: lintpicking
  Added types to the state machine.
  element: ak-tooltip
  Bump glob (#36)
  Bump js-yaml from 3.14.1 to 3.14.2 (#33)
  Bump validator from 13.15.15 to 13.15.23 (#40)
  ...
* element/ak-spinner:
  Typos is dumb, part 2.
  Typos is dumb.
  Added comment explaining why href is _removed_ from an anchor when the anchor is disabled.
  Moving source-maps into devDependencies.
  I hate wresting with type uncertainty.
  We now provide the types correctly.
  NPM between the versions is a massive source of headache.
  Merge weirdness.
  Rounding out icon tests.
  Bump vite (#44)
  Bump storybook from 9.1.8 to 9.1.17 (#47)
  bump version
  Fixing the optimization set in vitest, as recommended on Github.
  Attempting to fix browser version.
  Another attempt at getting playwright to play nice.
  Adjusting test parameters.
  Vitest test.
  Intermediate commit.
  elements: fix disabled visuals on button
  Spinner now has root and local definitions.
* element/ak-spinner:
  Not sure how this got lost.
@netlify
Copy link

netlify bot commented Jan 8, 2026

Deploy Preview for authentik-elements-storybook ready!

Name Link
🔨 Latest commit 353f51d
🔍 Latest deploy log https://app.netlify.com/projects/authentik-elements-storybook/deploys/696926c334b8f20008357b08
😎 Deploy Preview https://deploy-preview-6--authentik-elements-storybook.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

* element/ak-spinner:
  OptimizeDeps is hard to get right, apparently.
  Added lit/localize to the optimizeDeps collection.
* element/ak-spinner:
  Accepted suggestion from @GirlBossRush
  Update vitest.config.js
  Update src/ak-button/ak-button.component.ts
  Update src/ak-button/ak-button.template.ts
# What

This commit addresses a number of small DX problems that were getting in the way of a decent build-out.

- Removed all the Element Interface definitions; they weren’t adding anything to the value of the component. The Builders all use the Class definitions anyway.

- Made the builder Props consistent. Some had an `Ak` prefix, some didn’t. I’ve gone with “no Ak prefix” on types being imported for builders.

- Added missing t-shirt sizes, even when they’re defaults.

- Changed the names of some attributes to be more “positive” about what they mean: “no-loading-message” -\> “spinner-only”; “no-icon” -\> “text-only”; “no-arrow” -\> “hide-arrow”.

- Removes `reflect` where it’s not needed. Where it is necessary to trigger CSS effects when the value is dynamically changed (however unlikely that may be), I have added comments to say why reflection is required.

- Fix the issue in the Empty State builder where it was generating unneeded slotted divs for TemplateResults.

- Removed the `attribute` setting from Tooltip.target; it’s an Object, and cannot have an `attribute` key.
* element/ak-spinner:
  Last-minute changes lead to last-minute bugs.
# What

- Removes the unused Interface declaration
- Harmonizes the sizes: Component, Template, and Builder all agree “large” is the default
- Change ‘no-icon’ boolean attribute to ‘text-only’ (HTML tries to “use positive names for attributes”)
- Fixes some of the rendering issues in the builder:
  - Fix “secondary-actions” slot name
  - Use `<h2>` with string-only title
  - Use `<p>` with string-only body
  - Use `<ak-icon>` with string-only icon
  - Remove unloved console.log() :-)
  - Add story to Storybook “builder” section to show string-only usage
@github-project-automation github-project-automation bot moved this from Needs review to In Progress in authentik Core Jan 14, 2026
* main:
  Not sure why tests are failing.
  Trying test fix.
  element/ak-timestamp: consistency pass and final check
  element/ak-divider: consistency check and test update
  elements: structural issues
  Applies the new vitest suite to ak-timestamp.
  element: ak-timeout
  And divider is now themable and dark-mode capable.
  Updating for release.
  Fixed some lint.
  Lint and prettier pass.  Found a few disconnects, fixed them.
  Adding the timestamp component.
  Remove custom registration, run prettier, remove old CSS.
  Ported from foundation, and heavily revised.  An analysis of the CSS revealed it was far more complicated than it needed to be; using the Patternfly trick of communicating embedded state through scoped variables names turned out to be much more coherent.
@kensternberg-authentik kensternberg-authentik merged commit 449e3ae into main Jan 15, 2026
5 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in authentik Core Jan 15, 2026
@kensternberg-authentik kensternberg-authentik deleted the element/ak-empty-state branch January 15, 2026 17:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants