@keenmate/pure-admin-core 2.3.0 → 2.3.2

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.
Files changed (69) hide show
  1. package/README.md +7 -5
  2. package/dist/css/main.css +207 -181
  3. package/package.json +1 -1
  4. package/snippets/buttons.html +375 -365
  5. package/src/scss/_base-css-variables.scss +8 -0
  6. package/src/scss/_core.scss +121 -121
  7. package/src/scss/core-components/_alerts.scss +227 -227
  8. package/src/scss/core-components/_badges.scss +16 -16
  9. package/src/scss/core-components/_base.scss +125 -125
  10. package/src/scss/core-components/_buttons.scss +580 -548
  11. package/src/scss/core-components/_callouts.scss +152 -152
  12. package/src/scss/core-components/_cards.scss +488 -488
  13. package/src/scss/core-components/_checkbox-lists.scss +289 -289
  14. package/src/scss/core-components/_code.scss +141 -141
  15. package/src/scss/core-components/_command-palette.scss +509 -509
  16. package/src/scss/core-components/_comparison.scss +172 -172
  17. package/src/scss/core-components/_data-display.scss +9 -9
  18. package/src/scss/core-components/_data-viz.scss +9 -9
  19. package/src/scss/core-components/_detail-panel.scss +1 -1
  20. package/src/scss/core-components/_file-selector.scss +780 -780
  21. package/src/scss/core-components/_filter-card.scss +58 -58
  22. package/src/scss/core-components/_forms.scss +16 -16
  23. package/src/scss/core-components/_grid.scss +293 -293
  24. package/src/scss/core-components/_layout.scss +15 -15
  25. package/src/scss/core-components/_lists.scss +211 -211
  26. package/src/scss/core-components/_loaders.scss +277 -277
  27. package/src/scss/core-components/_logic-tree.scss +280 -280
  28. package/src/scss/core-components/_modals.scss +203 -203
  29. package/src/scss/core-components/_notifications.scss +320 -320
  30. package/src/scss/core-components/_pagers.scss +141 -141
  31. package/src/scss/core-components/_popconfirm.scss +170 -170
  32. package/src/scss/core-components/_profile.scss +405 -405
  33. package/src/scss/core-components/_scrollbars.scss +40 -40
  34. package/src/scss/core-components/_settings-panel.scss +141 -141
  35. package/src/scss/core-components/_statistics.scss +200 -201
  36. package/src/scss/core-components/_tables.scss +900 -900
  37. package/src/scss/core-components/_tabs.scss +504 -504
  38. package/src/scss/core-components/_timeline.scss +589 -589
  39. package/src/scss/core-components/_toasts.scss +425 -425
  40. package/src/scss/core-components/_tooltips.scss +605 -605
  41. package/src/scss/core-components/_utilities.scss +1 -1
  42. package/src/scss/core-components/_web-components-theme.scss +21 -21
  43. package/src/scss/core-components/badges/_badge-base.scss +121 -121
  44. package/src/scss/core-components/badges/_badge-group.scss +25 -25
  45. package/src/scss/core-components/badges/_composite-badge-variants.scss +396 -396
  46. package/src/scss/core-components/badges/_composite-badge.scss +70 -70
  47. package/src/scss/core-components/badges/_index.scss +10 -10
  48. package/src/scss/core-components/badges/_labels.scss +155 -155
  49. package/src/scss/core-components/forms/_checkboxes-radios.scss +205 -205
  50. package/src/scss/core-components/forms/_form-inputs.scss +136 -135
  51. package/src/scss/core-components/forms/_form-layout.scss +66 -66
  52. package/src/scss/core-components/forms/_form-states.scss +115 -115
  53. package/src/scss/core-components/forms/_index.scss +12 -12
  54. package/src/scss/core-components/forms/_input-groups.scss +154 -154
  55. package/src/scss/core-components/forms/_input-wrapper.scss +89 -89
  56. package/src/scss/core-components/forms/_query-editor.scss +313 -313
  57. package/src/scss/core-components/layout/_index.scss +11 -11
  58. package/src/scss/core-components/layout/_layout-container.scss +168 -168
  59. package/src/scss/core-components/layout/_layout-responsive.scss +99 -99
  60. package/src/scss/core-components/layout/_navbar-elements.scss +250 -250
  61. package/src/scss/core-components/layout/_navbar.scss +83 -83
  62. package/src/scss/core-components/layout/_sidebar-states.scss +237 -237
  63. package/src/scss/core-components/layout/_sidebar.scss +234 -234
  64. package/src/scss/main.scss +7 -7
  65. package/src/scss/utilities.scss +740 -740
  66. package/src/scss/variables/_base.scss +228 -228
  67. package/src/scss/variables/_components.scss +748 -748
  68. package/src/scss/variables/_layout.scss +65 -65
  69. package/src/scss/variables/_typography.scss +37 -37
@@ -1,141 +1,141 @@
1
- /* ========================================
2
- Pager and Load More Components
3
- Pagination controls and load more buttons
4
- ======================================== */
5
- @use '../variables' as *;
6
-
7
- // Pager
8
- .pa-pager {
9
- display: flex;
10
- margin: $pager-button-margin 0;
11
-
12
- // Remove margins when first/last child in card body
13
- .pa-card__body &:first-child {
14
- margin-top: 0;
15
- }
16
- .pa-card__body &:last-child {
17
- margin-bottom: 0;
18
- }
19
-
20
- // Default center alignment
21
- justify-content: center;
22
-
23
- // Positioning modifiers
24
- &--start {
25
- justify-content: flex-start;
26
- }
27
-
28
- &--center {
29
- justify-content: center;
30
- }
31
-
32
- &--end {
33
- justify-content: flex-end;
34
- }
35
-
36
- &__container {
37
- display: flex;
38
- align-items: center;
39
- gap: $spacing-sm;
40
- white-space: nowrap;
41
- }
42
-
43
- &__controls {
44
- display: flex;
45
- gap: $pager-controls-gap;
46
- }
47
-
48
- &__info {
49
- display: flex;
50
- align-items: center;
51
- gap: $spacing-sm;
52
- }
53
-
54
- &__input {
55
- width: $pager-input-width !important;
56
- text-align: center;
57
- }
58
-
59
- &__text {
60
- color: var(--pa-text-color-2);
61
- font-size: $font-size-sm;
62
- }
63
- }
64
-
65
- // Load More
66
- .pa-load-more {
67
- display: flex;
68
- margin: $spacing-base 0;
69
-
70
- // Remove margins when first/last child in card body
71
- .pa-card__body &:first-child {
72
- margin-top: 0;
73
- }
74
- .pa-card__body &:last-child {
75
- margin-bottom: 0;
76
- }
77
-
78
- // Default center alignment
79
- justify-content: center;
80
-
81
- // Positioning modifiers
82
- &--start {
83
- justify-content: flex-start;
84
- }
85
-
86
- &--center {
87
- justify-content: center;
88
- }
89
-
90
- &--end {
91
- justify-content: flex-end;
92
- }
93
-
94
- &__button {
95
- display: flex;
96
- align-items: center;
97
- gap: $spacing-sm;
98
- padding: $btn-padding-v $btn-padding-h;
99
- background-color: transparent;
100
- border: $border-width-base solid var(--pa-border-color);
101
- border-radius: $border-radius;
102
- color: var(--pa-text-color-1);
103
- font-size: $font-size-sm;
104
- cursor: pointer;
105
- transition: all $transition-fast $easing-snappy;
106
-
107
- &:hover {
108
- border-color: var(--pa-accent);
109
- color: var(--pa-accent);
110
- background-color: var(--pa-accent-light);
111
- }
112
-
113
- &--loading {
114
- pointer-events: none;
115
- opacity: 0.7;
116
-
117
- .pa-load-more__spinner {
118
- animation: pa-spin 1s linear infinite;
119
- }
120
- }
121
- }
122
-
123
- &__spinner {
124
- width: $spinner-size;
125
- height: $spinner-size;
126
- border: $spinner-border-width solid var(--pa-border-color);
127
- border-top: $spinner-border-width solid $accent-color;
128
- border-radius: 50%;
129
- }
130
-
131
- &__text {
132
- color: inherit;
133
- }
134
-
135
- &__count {
136
- color: var(--pa-text-color-2);
137
- font-size: $font-size-xs;
138
- margin-inline-start: $spacing-xs; // RTL: flips to right
139
- }
140
- }
141
-
1
+ /* ========================================
2
+ Pager and Load More Components
3
+ Pagination controls and load more buttons
4
+ ======================================== */
5
+ @use '../variables' as *;
6
+
7
+ // Pager
8
+ .pa-pager {
9
+ display: flex;
10
+ margin: $pager-button-margin 0;
11
+
12
+ // Remove margins when first/last child in card body
13
+ .pa-card__body &:first-child {
14
+ margin-top: 0;
15
+ }
16
+ .pa-card__body &:last-child {
17
+ margin-bottom: 0;
18
+ }
19
+
20
+ // Default center alignment
21
+ justify-content: center;
22
+
23
+ // Positioning modifiers
24
+ &--start {
25
+ justify-content: flex-start;
26
+ }
27
+
28
+ &--center {
29
+ justify-content: center;
30
+ }
31
+
32
+ &--end {
33
+ justify-content: flex-end;
34
+ }
35
+
36
+ &__container {
37
+ display: flex;
38
+ align-items: center;
39
+ gap: $spacing-sm;
40
+ white-space: nowrap;
41
+ }
42
+
43
+ &__controls {
44
+ display: flex;
45
+ gap: $pager-controls-gap;
46
+ }
47
+
48
+ &__info {
49
+ display: flex;
50
+ align-items: center;
51
+ gap: $spacing-sm;
52
+ }
53
+
54
+ &__input {
55
+ width: $pager-input-width !important;
56
+ text-align: center;
57
+ }
58
+
59
+ &__text {
60
+ color: var(--pa-text-color-2);
61
+ font-size: $font-size-sm;
62
+ }
63
+ }
64
+
65
+ // Load More
66
+ .pa-load-more {
67
+ display: flex;
68
+ margin: $spacing-base 0;
69
+
70
+ // Remove margins when first/last child in card body
71
+ .pa-card__body &:first-child {
72
+ margin-top: 0;
73
+ }
74
+ .pa-card__body &:last-child {
75
+ margin-bottom: 0;
76
+ }
77
+
78
+ // Default center alignment
79
+ justify-content: center;
80
+
81
+ // Positioning modifiers
82
+ &--start {
83
+ justify-content: flex-start;
84
+ }
85
+
86
+ &--center {
87
+ justify-content: center;
88
+ }
89
+
90
+ &--end {
91
+ justify-content: flex-end;
92
+ }
93
+
94
+ &__button {
95
+ display: flex;
96
+ align-items: center;
97
+ gap: $spacing-sm;
98
+ padding: $btn-padding-v $btn-padding-h;
99
+ background-color: transparent;
100
+ border: $border-width-base solid var(--pa-border-color);
101
+ border-radius: var(--pa-border-radius);
102
+ color: var(--pa-text-color-1);
103
+ font-size: $font-size-sm;
104
+ cursor: pointer;
105
+ transition: all $transition-fast $easing-snappy;
106
+
107
+ &:hover {
108
+ border-color: var(--pa-accent);
109
+ color: var(--pa-accent);
110
+ background-color: var(--pa-accent-light);
111
+ }
112
+
113
+ &--loading {
114
+ pointer-events: none;
115
+ opacity: 0.7;
116
+
117
+ .pa-load-more__spinner {
118
+ animation: pa-spin 1s linear infinite;
119
+ }
120
+ }
121
+ }
122
+
123
+ &__spinner {
124
+ width: $spinner-size;
125
+ height: $spinner-size;
126
+ border: $spinner-border-width solid var(--pa-border-color);
127
+ border-top: $spinner-border-width solid $accent-color;
128
+ border-radius: 50%;
129
+ }
130
+
131
+ &__text {
132
+ color: inherit;
133
+ }
134
+
135
+ &__count {
136
+ color: var(--pa-text-color-2);
137
+ font-size: $font-size-xs;
138
+ margin-inline-start: $spacing-xs; // RTL: flips to right
139
+ }
140
+ }
141
+
@@ -1,170 +1,170 @@
1
- /* ========================================
2
- Popconfirm Component
3
- Small confirmation dialog anchored to trigger button
4
- Alternative to modal for simple yes/no confirmations
5
- ======================================== */
6
- @use '../variables' as *;
7
-
8
- // ====================
9
- // Popconfirm Container
10
- // ====================
11
-
12
- .pa-popconfirm {
13
- position: absolute;
14
- z-index: $z-index-tooltip; // 9000 - Above everything else
15
- display: none;
16
- min-width: 25.6rem;
17
- max-width: 32rem;
18
-
19
- &.is-open {
20
- display: block;
21
- }
22
- }
23
-
24
- // Arrow pointing to trigger button
25
- .pa-popconfirm__arrow {
26
- position: absolute;
27
- width: 1.2rem;
28
- height: 1.2rem;
29
- background-color: var(--pa-card-bg);
30
- transform: rotate(45deg);
31
- border: $border-width-base solid var(--pa-border-color);
32
- z-index: -1;
33
- }
34
-
35
- // Content container
36
- .pa-popconfirm__content {
37
- background-color: var(--pa-card-bg);
38
- border: $border-width-base solid var(--pa-border-color);
39
- border-radius: $border-radius;
40
- box-shadow: $shadow-2xl;
41
- overflow: hidden;
42
- }
43
-
44
- // Message area
45
- .pa-popconfirm__message {
46
- padding: $spacing-base;
47
- border-bottom: $border-width-base solid var(--pa-border-color);
48
-
49
- p {
50
- margin: 0;
51
- font-size: $font-size-sm;
52
- color: var(--pa-text-color-1);
53
- line-height: $line-height-base;
54
- }
55
- }
56
-
57
- // Icon for message (optional)
58
- .pa-popconfirm__icon {
59
- display: flex;
60
- align-items: flex-start;
61
- gap: $spacing-sm;
62
-
63
- &::before {
64
- content: '⚠️';
65
- font-size: $font-size-lg;
66
- flex-shrink: 0;
67
- }
68
-
69
- &--danger::before {
70
- content: '🗑️';
71
- }
72
-
73
- &--warning::before {
74
- content: '⚠️';
75
- }
76
-
77
- &--info::before {
78
- content: 'ℹ️';
79
- }
80
-
81
- p {
82
- flex: 1;
83
- }
84
- }
85
-
86
- // Action buttons
87
- .pa-popconfirm__actions {
88
- padding: $spacing-sm $spacing-base;
89
- display: flex;
90
- gap: $spacing-sm;
91
- justify-content: flex-end;
92
- background-color: rgba($border-color, 0.3);
93
-
94
- .pa-btn {
95
- font-size: $font-size-xs;
96
- padding: $spacing-xs $spacing-sm;
97
- }
98
- }
99
-
100
- // ====================
101
- // Position Variants
102
- // ====================
103
-
104
- // Bottom (default) - arrow on top
105
- .pa-popconfirm--bottom {
106
- margin-top: $spacing-sm;
107
-
108
- .pa-popconfirm__arrow {
109
- top: -0.64rem;
110
- left: 50%;
111
- transform: translateX(-50%) rotate(45deg);
112
- border-right: none;
113
- border-bottom: none;
114
- }
115
- }
116
-
117
- // Top - arrow on bottom
118
- .pa-popconfirm--top {
119
- margin-bottom: $spacing-sm;
120
-
121
- .pa-popconfirm__arrow {
122
- bottom: -0.64rem;
123
- left: 50%;
124
- transform: translateX(-50%) rotate(45deg);
125
- border-left: none;
126
- border-top: none;
127
- }
128
- }
129
-
130
- // Right - arrow on left
131
- .pa-popconfirm--right {
132
- margin-left: $spacing-sm;
133
-
134
- .pa-popconfirm__arrow {
135
- left: -0.64rem;
136
- top: 50%;
137
- transform: translateY(-50%) rotate(45deg);
138
- border-top: none;
139
- border-right: none;
140
- }
141
- }
142
-
143
- // Left - arrow on right
144
- .pa-popconfirm--left {
145
- margin-right: $spacing-sm;
146
-
147
- .pa-popconfirm__arrow {
148
- right: -0.64rem;
149
- top: 50%;
150
- transform: translateY(-50%) rotate(45deg);
151
- border-bottom: none;
152
- border-left: none;
153
- }
154
- }
155
-
156
- // ====================
157
- // Compact Variant
158
- // ====================
159
-
160
- .pa-popconfirm--compact {
161
- min-width: 19.2rem;
162
-
163
- .pa-popconfirm__message {
164
- padding: $spacing-sm;
165
- }
166
-
167
- .pa-popconfirm__actions {
168
- padding: $spacing-xs $spacing-sm;
169
- }
170
- }
1
+ /* ========================================
2
+ Popconfirm Component
3
+ Small confirmation dialog anchored to trigger button
4
+ Alternative to modal for simple yes/no confirmations
5
+ ======================================== */
6
+ @use '../variables' as *;
7
+
8
+ // ====================
9
+ // Popconfirm Container
10
+ // ====================
11
+
12
+ .pa-popconfirm {
13
+ position: absolute;
14
+ z-index: $z-index-tooltip; // 9000 - Above everything else
15
+ display: none;
16
+ min-width: 25.6rem;
17
+ max-width: 32rem;
18
+
19
+ &.is-open {
20
+ display: block;
21
+ }
22
+ }
23
+
24
+ // Arrow pointing to trigger button
25
+ .pa-popconfirm__arrow {
26
+ position: absolute;
27
+ width: 1.2rem;
28
+ height: 1.2rem;
29
+ background-color: var(--pa-card-bg);
30
+ transform: rotate(45deg);
31
+ border: $border-width-base solid var(--pa-border-color);
32
+ z-index: -1;
33
+ }
34
+
35
+ // Content container
36
+ .pa-popconfirm__content {
37
+ background-color: var(--pa-card-bg);
38
+ border: $border-width-base solid var(--pa-border-color);
39
+ border-radius: var(--pa-border-radius);
40
+ box-shadow: $shadow-2xl;
41
+ overflow: hidden;
42
+ }
43
+
44
+ // Message area
45
+ .pa-popconfirm__message {
46
+ padding: $spacing-base;
47
+ border-bottom: $border-width-base solid var(--pa-border-color);
48
+
49
+ p {
50
+ margin: 0;
51
+ font-size: $font-size-sm;
52
+ color: var(--pa-text-color-1);
53
+ line-height: $line-height-base;
54
+ }
55
+ }
56
+
57
+ // Icon for message (optional)
58
+ .pa-popconfirm__icon {
59
+ display: flex;
60
+ align-items: flex-start;
61
+ gap: $spacing-sm;
62
+
63
+ &::before {
64
+ content: '⚠️';
65
+ font-size: $font-size-lg;
66
+ flex-shrink: 0;
67
+ }
68
+
69
+ &--danger::before {
70
+ content: '🗑️';
71
+ }
72
+
73
+ &--warning::before {
74
+ content: '⚠️';
75
+ }
76
+
77
+ &--info::before {
78
+ content: 'ℹ️';
79
+ }
80
+
81
+ p {
82
+ flex: 1;
83
+ }
84
+ }
85
+
86
+ // Action buttons
87
+ .pa-popconfirm__actions {
88
+ padding: $spacing-sm $spacing-base;
89
+ display: flex;
90
+ gap: $spacing-sm;
91
+ justify-content: flex-end;
92
+ background-color: rgba($border-color, 0.3);
93
+
94
+ .pa-btn {
95
+ font-size: $font-size-xs;
96
+ padding: $spacing-xs $spacing-sm;
97
+ }
98
+ }
99
+
100
+ // ====================
101
+ // Position Variants
102
+ // ====================
103
+
104
+ // Bottom (default) - arrow on top
105
+ .pa-popconfirm--bottom {
106
+ margin-top: $spacing-sm;
107
+
108
+ .pa-popconfirm__arrow {
109
+ top: -0.64rem;
110
+ left: 50%;
111
+ transform: translateX(-50%) rotate(45deg);
112
+ border-right: none;
113
+ border-bottom: none;
114
+ }
115
+ }
116
+
117
+ // Top - arrow on bottom
118
+ .pa-popconfirm--top {
119
+ margin-bottom: $spacing-sm;
120
+
121
+ .pa-popconfirm__arrow {
122
+ bottom: -0.64rem;
123
+ left: 50%;
124
+ transform: translateX(-50%) rotate(45deg);
125
+ border-left: none;
126
+ border-top: none;
127
+ }
128
+ }
129
+
130
+ // Right - arrow on left
131
+ .pa-popconfirm--right {
132
+ margin-left: $spacing-sm;
133
+
134
+ .pa-popconfirm__arrow {
135
+ left: -0.64rem;
136
+ top: 50%;
137
+ transform: translateY(-50%) rotate(45deg);
138
+ border-top: none;
139
+ border-right: none;
140
+ }
141
+ }
142
+
143
+ // Left - arrow on right
144
+ .pa-popconfirm--left {
145
+ margin-right: $spacing-sm;
146
+
147
+ .pa-popconfirm__arrow {
148
+ right: -0.64rem;
149
+ top: 50%;
150
+ transform: translateY(-50%) rotate(45deg);
151
+ border-bottom: none;
152
+ border-left: none;
153
+ }
154
+ }
155
+
156
+ // ====================
157
+ // Compact Variant
158
+ // ====================
159
+
160
+ .pa-popconfirm--compact {
161
+ min-width: 19.2rem;
162
+
163
+ .pa-popconfirm__message {
164
+ padding: $spacing-sm;
165
+ }
166
+
167
+ .pa-popconfirm__actions {
168
+ padding: $spacing-xs $spacing-sm;
169
+ }
170
+ }