@keenmate/pure-admin-core 2.2.0 → 2.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,17 +2,18 @@
2
2
 
3
3
  Lightweight, data-focused CSS/SCSS admin framework with Corporate theme as default.
4
4
 
5
- ## What's New in 2.2.0
5
+ ## What's New in 2.3.1
6
6
 
7
- - **Theme color slots (1-9) across components** — Alerts, callouts, toasts, and buttons now support `--color-{1-9}` and `--outline-color-{1-9}` variants using the 9 custom theme color slots. Themes that define `$color-1` through `$color-9` get matching component styles automatically
8
- - **Filled toast variants** — New `pa-toast--filled-*` variants with full-color backgrounds, contrast text, and semi-transparent progress bars. Available for all standard colors and theme color slots
9
- - **Unified card actions naming** — `pa-card__tools` replaced with `pa-card__actions` across both `pa-card` and `pa-table-card`
10
- - **Font Tuning Tool** (`/font-test`) Developer utility for finding the right `@font-face` descriptor values when using custom fonts
7
+ - **Split button fixes** — RTL layout, missing toggle border, menu closing on outside click, and flex menu layout with gap for items with inline action buttons
8
+ - **Split button dropdown icons** — New `pa-btn-split__item-icon` element for icons in menu items
9
+ - **Button label element** — New `pa-btn__label` for proper horizontal centering of icon+text in `pa-btn--align-center` buttons
10
+ - **Select descender fix** — Added `line-height: normal` to `.pa-select` to prevent clipping on native selects
11
11
 
12
- ## What's New in 2.1.0
12
+ ## What's New in 2.3.0
13
13
 
14
- - **Unified card actions naming** — `pa-card__tools` replaced with `pa-card__actions` across both `pa-card` and `pa-table-card`. Header and footer now use the same element name, disambiguated by context
15
- - **Font Tuning Tool** (`/font-test`) Developer utility for finding the right `@font-face` descriptor values (`ascent-override`, `descent-override`, `size-adjust`) when using custom fonts. Loads any Google Font, generates variants for visual comparison, and outputs a copyable CSS snippet
14
+ - **Toast action buttons** — New `pa-toast__actions` element for action buttons inside toasts, separated by a border-top. Toast service supports `actions: [{ label, variant, onClick }]` with auto-dismiss on click
15
+ - **Toast service improvements** — `filled`, `progressColor`, and `maxWidth` options. Container width ratchets up to the widest toast shown, preventing layout jitter when toasts dismiss
16
+ - **Toast progress bar** — More visible: 5px height, 0.6 opacity (was 3px / 0.3)
16
17
 
17
18
  ## Installation
18
19
 
@@ -340,6 +341,10 @@ Works with both `pa-table` and `web-grid` component. First/last columns automati
340
341
  ### Toasts
341
342
  - `.pa-toast` - Base toast
342
343
  - `.pa-toast--primary/success/danger/warning/info` - Variants
344
+ - `.pa-toast--filled-primary/success/danger/warning/info` - Filled variants (full-color background)
345
+ - `.pa-toast--color-{1-9}` / `.pa-toast--filled-color-{1-9}` - Theme color slot variants
346
+ - `.pa-toast__actions` - Action button row with border-top separator
347
+ - `.pa-toast__progress` - Auto-dismiss progress bar (5px, 0.6 opacity)
343
348
  - Positions (RTL-aware): `top-end`, `top-center`, `top-start`, `bottom-end`, `bottom-center`, `bottom-start`
344
349
 
345
350
  ### Tooltips & Popovers
package/dist/css/main.css CHANGED
@@ -7641,6 +7641,9 @@ a.pa-card p {
7641
7641
  margin-inline-end: 0;
7642
7642
  margin-inline-start: 0.8rem;
7643
7643
  }
7644
+ .pa-btn__label {
7645
+ flex: 0 1 auto;
7646
+ }
7644
7647
  .pa-btn:has(.pa-btn__icon) {
7645
7648
  text-align: start;
7646
7649
  display: inline-flex;
@@ -7674,6 +7677,10 @@ a.pa-card p {
7674
7677
  .pa-btn--align-center {
7675
7678
  justify-content: center;
7676
7679
  }
7680
+ .pa-btn--align-center .pa-btn__label {
7681
+ flex: 1;
7682
+ text-align: center;
7683
+ }
7677
7684
  .pa-btn--align-justify {
7678
7685
  justify-content: space-between;
7679
7686
  }
@@ -7766,9 +7773,6 @@ a.pa-card p {
7766
7773
  position: relative;
7767
7774
  display: inline-flex;
7768
7775
  }
7769
- [dir=rtl] .pa-btn-split {
7770
- flex-direction: row-reverse;
7771
- }
7772
7776
  .pa-btn-split .pa-btn {
7773
7777
  border-radius: 0;
7774
7778
  }
@@ -7781,7 +7785,6 @@ a.pa-card p {
7781
7785
  border-start-end-radius: 4px;
7782
7786
  border-end-end-radius: 4px;
7783
7787
  border-inline-start: 1px solid rgba(255, 255, 255, 0.25);
7784
- border-inline-end: none;
7785
7788
  padding-inline: 0;
7786
7789
  display: inline-flex;
7787
7790
  align-items: center;
@@ -7813,6 +7816,8 @@ a.pa-card p {
7813
7816
  }
7814
7817
  .pa-btn-split__menu {
7815
7818
  display: none;
7819
+ flex-direction: column;
7820
+ gap: 0.4rem;
7816
7821
  position: fixed;
7817
7822
  top: 0;
7818
7823
  left: 0;
@@ -7825,10 +7830,12 @@ a.pa-card p {
7825
7830
  padding: 0.4rem 0;
7826
7831
  }
7827
7832
  .pa-btn-split__menu--open {
7828
- display: block;
7833
+ display: flex;
7829
7834
  }
7830
7835
  .pa-btn-split__item {
7831
- display: block;
7836
+ display: flex;
7837
+ align-items: center;
7838
+ gap: 0.8rem;
7832
7839
  width: 100%;
7833
7840
  padding: 0.8rem 1.6rem;
7834
7841
  border: none;
@@ -7849,6 +7856,15 @@ a.pa-card p {
7849
7856
  background-color: var(--pa-btn-danger-bg);
7850
7857
  color: var(--pa-btn-danger-text);
7851
7858
  }
7859
+ .pa-btn-split__item-icon {
7860
+ width: 2.4rem;
7861
+ min-width: 2.4rem;
7862
+ display: flex;
7863
+ align-items: center;
7864
+ justify-content: center;
7865
+ flex-shrink: 0;
7866
+ opacity: 0.7;
7867
+ }
7852
7868
 
7853
7869
  /* ========================================
7854
7870
  Loader Components
@@ -9220,6 +9236,7 @@ a.pa-card p {
9220
9236
  border: 1px solid var(--pa-border-color);
9221
9237
  border-radius: 4px;
9222
9238
  font-size: 1.4rem;
9239
+ line-height: normal;
9223
9240
  background-color: var(--pa-input-bg);
9224
9241
  color: var(--pa-text-color-1);
9225
9242
  transition: border-color 0.1s ease-out;
@@ -12798,6 +12815,15 @@ code {
12798
12815
  line-height: 1.5;
12799
12816
  }
12800
12817
 
12818
+ .pa-toast__actions {
12819
+ margin-top: 1.6rem;
12820
+ padding-top: 1.6rem;
12821
+ border-top: 1px solid var(--pa-border-color);
12822
+ display: flex;
12823
+ gap: 0.8rem;
12824
+ flex-wrap: wrap;
12825
+ }
12826
+
12801
12827
  .pa-toast__close {
12802
12828
  flex-shrink: 0;
12803
12829
  background: none;
@@ -12828,9 +12854,9 @@ code {
12828
12854
  position: absolute;
12829
12855
  bottom: 0;
12830
12856
  inset-inline-start: 0;
12831
- height: 3px;
12857
+ height: 5px;
12832
12858
  background-color: currentColor;
12833
- opacity: 0.3;
12859
+ opacity: 0.6;
12834
12860
  transition: width linear;
12835
12861
  }
12836
12862
 
@@ -12988,6 +13014,10 @@ code {
12988
13014
  color: var(--pa-color-9);
12989
13015
  }
12990
13016
 
13017
+ [class*=pa-toast--filled] .pa-toast__actions {
13018
+ border-top-color: rgba(255, 255, 255, 0.25);
13019
+ }
13020
+
12991
13021
  .pa-toast--filled-primary {
12992
13022
  background-color: var(--pa-btn-primary-bg);
12993
13023
  border-color: var(--pa-btn-primary-bg);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keenmate/pure-admin-core",
3
- "version": "2.2.0",
3
+ "version": "2.3.1",
4
4
  "description": "Lightweight, data-focused HTML/CSS admin framework built with PureCSS foundation and comprehensive component system",
5
5
  "style": "dist/css/main.css",
6
6
  "exports": {