@aortl/admin-react 0.16.1 → 0.17.0
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/CHANGELOG.md +72 -0
- package/dist/AdminRoot.d.ts.map +1 -1
- package/dist/Alert.d.ts +6 -1
- package/dist/Alert.d.ts.map +1 -1
- package/dist/Avatar.d.ts +21 -0
- package/dist/Avatar.d.ts.map +1 -0
- package/dist/Badge.d.ts +8 -2
- package/dist/Badge.d.ts.map +1 -1
- package/dist/BarChart.d.ts +4 -14
- package/dist/BarChart.d.ts.map +1 -1
- package/dist/BrandTile.d.ts +16 -3
- package/dist/BrandTile.d.ts.map +1 -1
- package/dist/Breadcrumbs.d.ts +0 -1
- package/dist/Breadcrumbs.d.ts.map +1 -1
- package/dist/Button.d.ts +4 -6
- package/dist/Button.d.ts.map +1 -1
- package/dist/ButtonGroup.d.ts +2 -5
- package/dist/ButtonGroup.d.ts.map +1 -1
- package/dist/Card.d.ts +9 -2
- package/dist/Card.d.ts.map +1 -1
- package/dist/ChartLegend.d.ts +2 -5
- package/dist/ChartLegend.d.ts.map +1 -1
- package/dist/CodeBlock.d.ts +2 -4
- package/dist/CodeBlock.d.ts.map +1 -1
- package/dist/Container.d.ts +3 -4
- package/dist/Container.d.ts.map +1 -1
- package/dist/Dialog.d.ts +3 -14
- package/dist/Dialog.d.ts.map +1 -1
- package/dist/Donut.d.ts +4 -6
- package/dist/Donut.d.ts.map +1 -1
- package/dist/Field.d.ts +3 -19
- package/dist/Field.d.ts.map +1 -1
- package/dist/Indicator.d.ts +2 -3
- package/dist/Indicator.d.ts.map +1 -1
- package/dist/Input.d.ts +6 -1
- package/dist/Input.d.ts.map +1 -1
- package/dist/Kbd.d.ts +3 -15
- package/dist/Kbd.d.ts.map +1 -1
- package/dist/Link.d.ts +5 -13
- package/dist/Link.d.ts.map +1 -1
- package/dist/Menu.d.ts +1 -5
- package/dist/Menu.d.ts.map +1 -1
- package/dist/Pagination.d.ts +2 -9
- package/dist/Pagination.d.ts.map +1 -1
- package/dist/PropertyList.d.ts +3 -7
- package/dist/PropertyList.d.ts.map +1 -1
- package/dist/Prose.d.ts +3 -12
- package/dist/Prose.d.ts.map +1 -1
- package/dist/Select.d.ts.map +1 -1
- package/dist/Separator.d.ts +11 -0
- package/dist/Separator.d.ts.map +1 -0
- package/dist/Sidebar.d.ts +0 -2
- package/dist/Sidebar.d.ts.map +1 -1
- package/dist/Spinner.d.ts.map +1 -1
- package/dist/StackedBar.d.ts +2 -9
- package/dist/StackedBar.d.ts.map +1 -1
- package/dist/StatCard.d.ts +3 -6
- package/dist/StatCard.d.ts.map +1 -1
- package/dist/Table.d.ts +5 -12
- package/dist/Table.d.ts.map +1 -1
- package/dist/Textarea.d.ts +5 -9
- package/dist/Textarea.d.ts.map +1 -1
- package/dist/Tooltip.d.ts +0 -1
- package/dist/Tooltip.d.ts.map +1 -1
- package/dist/admin.scoped.css +345 -11
- package/dist/chart-internal.d.ts +4 -16
- package/dist/chart-internal.d.ts.map +1 -1
- package/dist/cn.d.ts +5 -8
- package/dist/cn.d.ts.map +1 -1
- package/dist/hotkey-parse.d.ts +7 -21
- package/dist/hotkey-parse.d.ts.map +1 -1
- package/dist/hotkey-registry.d.ts +2 -14
- package/dist/hotkey-registry.d.ts.map +1 -1
- package/dist/icon.d.ts +5 -17
- package/dist/icon.d.ts.map +1 -1
- package/dist/index.cjs +185 -188
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +183 -189
- package/dist/index.mjs.map +1 -1
- package/dist/portal-context.d.ts +5 -8
- package/dist/portal-context.d.ts.map +1 -1
- package/dist/useHotkey.d.ts +5 -20
- package/dist/useHotkey.d.ts.map +1 -1
- package/package.json +4 -3
package/dist/admin.scoped.css
CHANGED
|
@@ -190,6 +190,10 @@
|
|
|
190
190
|
syntax: "*";
|
|
191
191
|
inherits: false;
|
|
192
192
|
}
|
|
193
|
+
@property --tw-tracking {
|
|
194
|
+
syntax: "*";
|
|
195
|
+
inherits: false;
|
|
196
|
+
}
|
|
193
197
|
@property --tw-translate-x {
|
|
194
198
|
syntax: "*";
|
|
195
199
|
inherits: false;
|
|
@@ -205,10 +209,6 @@
|
|
|
205
209
|
inherits: false;
|
|
206
210
|
initial-value: 0;
|
|
207
211
|
}
|
|
208
|
-
@property --tw-tracking {
|
|
209
|
-
syntax: "*";
|
|
210
|
-
inherits: false;
|
|
211
|
-
}
|
|
212
212
|
@scope (._ao-admin-root) {
|
|
213
213
|
:scope :where(
|
|
214
214
|
h1, h2, h3, h4, h5, h6,
|
|
@@ -268,10 +268,10 @@
|
|
|
268
268
|
--tw-border-style: solid;
|
|
269
269
|
--tw-outline-style: solid;
|
|
270
270
|
--tw-duration: initial;
|
|
271
|
+
--tw-tracking: initial;
|
|
271
272
|
--tw-translate-x: 0;
|
|
272
273
|
--tw-translate-y: 0;
|
|
273
274
|
--tw-translate-z: 0;
|
|
274
|
-
--tw-tracking: initial;
|
|
275
275
|
}
|
|
276
276
|
}
|
|
277
277
|
:scope, :scope:host, :scope :host {
|
|
@@ -296,6 +296,7 @@
|
|
|
296
296
|
--font-weight-medium: 500;
|
|
297
297
|
--font-weight-semibold: 600;
|
|
298
298
|
--font-weight-bold: 700;
|
|
299
|
+
--tracking-tight: -0.025em;
|
|
299
300
|
--tracking-wide: 0.025em;
|
|
300
301
|
--leading-tight: 1.25;
|
|
301
302
|
--leading-snug: 1.375;
|
|
@@ -791,11 +792,21 @@
|
|
|
791
792
|
row-gap: 0.25rem;
|
|
792
793
|
align-items: center;
|
|
793
794
|
}
|
|
795
|
+
:scope._ao-alert:has(> ._ao-alert-action), :scope ._ao-alert:has(> ._ao-alert-action) {
|
|
796
|
+
display: grid;
|
|
797
|
+
grid-template-columns: minmax(0, 1fr) auto;
|
|
798
|
+
column-gap: 0.5rem;
|
|
799
|
+
row-gap: 0.25rem;
|
|
800
|
+
align-items: center;
|
|
801
|
+
}
|
|
802
|
+
:scope._ao-alert:has(> :is(i, svg):first-child):has(> ._ao-alert-action), :scope ._ao-alert:has(> :is(i, svg):first-child):has(> ._ao-alert-action) {
|
|
803
|
+
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
804
|
+
}
|
|
794
805
|
:scope._ao-alert > :is(i, svg):first-child, :scope ._ao-alert > :is(i, svg):first-child {
|
|
795
806
|
font-size: 1rem;
|
|
796
807
|
line-height: 1.25;
|
|
797
808
|
}
|
|
798
|
-
:scope._ao-alert:has(> :is(i, svg):first-child):has(> ._ao-alert-
|
|
809
|
+
:scope._ao-alert:has(> ._ao-alert-title):is(:has(> :is(i, svg):first-child), :has(> ._ao-alert-action)), :scope ._ao-alert:has(> ._ao-alert-title):is(:has(> :is(i, svg):first-child), :has(> ._ao-alert-action)) {
|
|
799
810
|
grid-template-rows: auto auto;
|
|
800
811
|
align-items: start;
|
|
801
812
|
}
|
|
@@ -803,9 +814,20 @@
|
|
|
803
814
|
grid-row: 1 / -1;
|
|
804
815
|
}
|
|
805
816
|
:scope._ao-alert > :is(._ao-alert-title, ._ao-alert-description), :scope ._ao-alert > :is(._ao-alert-title, ._ao-alert-description) {
|
|
806
|
-
grid-column: 2;
|
|
807
817
|
min-width: 0;
|
|
808
818
|
}
|
|
819
|
+
:scope._ao-alert:has(> :is(i, svg):first-child) > :is(._ao-alert-title, ._ao-alert-description), :scope ._ao-alert:has(> :is(i, svg):first-child) > :is(._ao-alert-title, ._ao-alert-description) {
|
|
820
|
+
grid-column: 2;
|
|
821
|
+
}
|
|
822
|
+
:scope._ao-alert > ._ao-alert-action, :scope ._ao-alert > ._ao-alert-action {
|
|
823
|
+
--tw-font-weight: var(--font-weight-medium);
|
|
824
|
+
font-weight: var(--font-weight-medium);
|
|
825
|
+
white-space: nowrap;
|
|
826
|
+
grid-column: -2;
|
|
827
|
+
grid-row: 1 / -1;
|
|
828
|
+
justify-self: end;
|
|
829
|
+
align-self: center;
|
|
830
|
+
}
|
|
809
831
|
:scope._ao-alert-info, :scope ._ao-alert-info {
|
|
810
832
|
border-color: var(--color-info);
|
|
811
833
|
background-color: var(--color-info);
|
|
@@ -833,6 +855,22 @@
|
|
|
833
855
|
:scope._ao-alert-description, :scope ._ao-alert-description {
|
|
834
856
|
opacity: 0.85;
|
|
835
857
|
}
|
|
858
|
+
:scope._ao-alert ._ao-link, :scope ._ao-alert ._ao-link {
|
|
859
|
+
color: currentcolor;
|
|
860
|
+
&:hover {
|
|
861
|
+
@media (hover: hover) {
|
|
862
|
+
color: currentcolor;
|
|
863
|
+
}
|
|
864
|
+
}
|
|
865
|
+
&:hover {
|
|
866
|
+
@media (hover: hover) {
|
|
867
|
+
opacity: 85%;
|
|
868
|
+
}
|
|
869
|
+
}
|
|
870
|
+
&:focus-visible {
|
|
871
|
+
outline-color: currentcolor;
|
|
872
|
+
}
|
|
873
|
+
}
|
|
836
874
|
:scope._ao-app-shell, :scope ._ao-app-shell {
|
|
837
875
|
--app-shell-sidebar-w: 240px;
|
|
838
876
|
--app-shell-sidebar-w-collapsed: 56px;
|
|
@@ -947,6 +985,74 @@
|
|
|
947
985
|
background-color: var(--color-primary);
|
|
948
986
|
color: var(--color-primary-content);
|
|
949
987
|
}
|
|
988
|
+
:scope._ao-badge-soft._ao-badge-info, :scope ._ao-badge-soft._ao-badge-info {
|
|
989
|
+
border-color: var(--color-info-muted);
|
|
990
|
+
background-color: var(--color-info-muted);
|
|
991
|
+
color: var(--color-info);
|
|
992
|
+
}
|
|
993
|
+
:scope._ao-badge-soft._ao-badge-success, :scope ._ao-badge-soft._ao-badge-success {
|
|
994
|
+
border-color: var(--color-success-muted);
|
|
995
|
+
background-color: var(--color-success-muted);
|
|
996
|
+
color: var(--color-success);
|
|
997
|
+
}
|
|
998
|
+
:scope._ao-badge-soft._ao-badge-warning, :scope ._ao-badge-soft._ao-badge-warning {
|
|
999
|
+
border-color: var(--color-warning-muted);
|
|
1000
|
+
background-color: var(--color-warning-muted);
|
|
1001
|
+
color: var(--color-text);
|
|
1002
|
+
}
|
|
1003
|
+
:scope._ao-badge-soft._ao-badge-danger, :scope ._ao-badge-soft._ao-badge-danger {
|
|
1004
|
+
border-color: var(--color-danger-muted);
|
|
1005
|
+
background-color: var(--color-danger-muted);
|
|
1006
|
+
color: var(--color-danger);
|
|
1007
|
+
}
|
|
1008
|
+
:scope._ao-badge-soft._ao-badge-primary, :scope ._ao-badge-soft._ao-badge-primary {
|
|
1009
|
+
border-color: var(--color-primary-muted);
|
|
1010
|
+
background-color: var(--color-primary-muted);
|
|
1011
|
+
color: var(--color-text);
|
|
1012
|
+
}
|
|
1013
|
+
:scope._ao-badge-remove, :scope ._ao-badge-remove {
|
|
1014
|
+
margin-right: calc(var(--spacing) * -1);
|
|
1015
|
+
display: inline-flex;
|
|
1016
|
+
width: calc(var(--spacing) * 3.5);
|
|
1017
|
+
height: calc(var(--spacing) * 3.5);
|
|
1018
|
+
flex-shrink: 0;
|
|
1019
|
+
cursor: pointer;
|
|
1020
|
+
align-items: center;
|
|
1021
|
+
justify-content: center;
|
|
1022
|
+
border-radius: calc(infinity * 1px);
|
|
1023
|
+
color: inherit;
|
|
1024
|
+
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
|
|
1025
|
+
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
1026
|
+
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
1027
|
+
--tw-duration: 150ms;
|
|
1028
|
+
transition-duration: 150ms;
|
|
1029
|
+
&:focus-visible {
|
|
1030
|
+
outline-style: var(--tw-outline-style);
|
|
1031
|
+
outline-width: 2px;
|
|
1032
|
+
}
|
|
1033
|
+
&:focus-visible {
|
|
1034
|
+
outline-offset: 1px;
|
|
1035
|
+
}
|
|
1036
|
+
&:focus-visible {
|
|
1037
|
+
outline-color: var(--color-focus);
|
|
1038
|
+
}
|
|
1039
|
+
}
|
|
1040
|
+
:scope._ao-badge-remove:hover, :scope ._ao-badge-remove:hover {
|
|
1041
|
+
background-color: currentColor;
|
|
1042
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
1043
|
+
background-color: color-mix(in oklab, currentColor 15%, transparent);
|
|
1044
|
+
}
|
|
1045
|
+
}
|
|
1046
|
+
:scope._ao-badge-sm ._ao-badge-remove, :scope ._ao-badge-sm ._ao-badge-remove {
|
|
1047
|
+
margin-right: calc(var(--spacing) * -0.5);
|
|
1048
|
+
width: calc(var(--spacing) * 3);
|
|
1049
|
+
height: calc(var(--spacing) * 3);
|
|
1050
|
+
}
|
|
1051
|
+
:scope._ao-badge-lg ._ao-badge-remove, :scope ._ao-badge-lg ._ao-badge-remove {
|
|
1052
|
+
margin-right: calc(var(--spacing) * -1.5);
|
|
1053
|
+
width: calc(var(--spacing) * 4.5);
|
|
1054
|
+
height: calc(var(--spacing) * 4.5);
|
|
1055
|
+
}
|
|
950
1056
|
:scope._ao-badge-sm, :scope ._ao-badge-sm {
|
|
951
1057
|
height: calc(var(--spacing) * 4);
|
|
952
1058
|
gap: calc(var(--spacing) * 0.5);
|
|
@@ -978,6 +1084,104 @@
|
|
|
978
1084
|
-webkit-user-select: none;
|
|
979
1085
|
user-select: none;
|
|
980
1086
|
}
|
|
1087
|
+
:scope._ao-brand-tile > :is(i, svg), :scope ._ao-brand-tile > :is(i, svg) {
|
|
1088
|
+
font-size: 14px;
|
|
1089
|
+
}
|
|
1090
|
+
:scope._ao-brand-tile-lg, :scope ._ao-brand-tile-lg {
|
|
1091
|
+
width: calc(var(--spacing) * 10);
|
|
1092
|
+
height: calc(var(--spacing) * 10);
|
|
1093
|
+
border-radius: var(--radius-md);
|
|
1094
|
+
font-size: var(--text-sm);
|
|
1095
|
+
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
1096
|
+
}
|
|
1097
|
+
:scope._ao-brand-tile-lg > :is(i, svg), :scope ._ao-brand-tile-lg > :is(i, svg) {
|
|
1098
|
+
font-size: 20px;
|
|
1099
|
+
}
|
|
1100
|
+
:scope._ao-brand-tile-soft, :scope ._ao-brand-tile-soft {
|
|
1101
|
+
background-color: var(--color-system-accent-muted);
|
|
1102
|
+
color: var(--color-system-accent);
|
|
1103
|
+
}
|
|
1104
|
+
:scope._ao-brand-tile-info, :scope ._ao-brand-tile-info {
|
|
1105
|
+
background-color: var(--color-info-muted);
|
|
1106
|
+
color: var(--color-info);
|
|
1107
|
+
}
|
|
1108
|
+
:scope._ao-brand-tile-success, :scope ._ao-brand-tile-success {
|
|
1109
|
+
background-color: var(--color-success-muted);
|
|
1110
|
+
color: var(--color-success);
|
|
1111
|
+
}
|
|
1112
|
+
:scope._ao-brand-tile-danger, :scope ._ao-brand-tile-danger {
|
|
1113
|
+
background-color: var(--color-danger-muted);
|
|
1114
|
+
color: var(--color-danger);
|
|
1115
|
+
}
|
|
1116
|
+
:scope._ao-brand-tile:has(> img), :scope ._ao-brand-tile:has(> img) {
|
|
1117
|
+
border-style: var(--tw-border-style);
|
|
1118
|
+
border-width: 1px;
|
|
1119
|
+
border-color: var(--color-border);
|
|
1120
|
+
background-color: var(--color-surface);
|
|
1121
|
+
padding: calc(var(--spacing) * 0.5);
|
|
1122
|
+
}
|
|
1123
|
+
:scope._ao-brand-tile > img, :scope ._ao-brand-tile > img {
|
|
1124
|
+
width: 100%;
|
|
1125
|
+
height: 100%;
|
|
1126
|
+
border-radius: inherit;
|
|
1127
|
+
object-fit: contain;
|
|
1128
|
+
}
|
|
1129
|
+
:scope._ao-avatar, :scope ._ao-avatar {
|
|
1130
|
+
position: relative;
|
|
1131
|
+
display: inline-flex;
|
|
1132
|
+
width: calc(var(--spacing) * 8);
|
|
1133
|
+
height: calc(var(--spacing) * 8);
|
|
1134
|
+
flex-shrink: 0;
|
|
1135
|
+
align-items: center;
|
|
1136
|
+
justify-content: center;
|
|
1137
|
+
overflow: hidden;
|
|
1138
|
+
border-radius: calc(infinity * 1px);
|
|
1139
|
+
background-color: var(--color-surface-strong);
|
|
1140
|
+
font-size: var(--text-xs);
|
|
1141
|
+
line-height: var(--tw-leading, var(--text-xs--line-height));
|
|
1142
|
+
--tw-leading: 1;
|
|
1143
|
+
line-height: 1;
|
|
1144
|
+
--tw-font-weight: var(--font-weight-medium);
|
|
1145
|
+
font-weight: var(--font-weight-medium);
|
|
1146
|
+
--tw-tracking: var(--tracking-tight);
|
|
1147
|
+
letter-spacing: var(--tracking-tight);
|
|
1148
|
+
color: var(--color-text-muted);
|
|
1149
|
+
-webkit-user-select: none;
|
|
1150
|
+
user-select: none;
|
|
1151
|
+
}
|
|
1152
|
+
:scope._ao-avatar > img, :scope ._ao-avatar > img {
|
|
1153
|
+
position: absolute;
|
|
1154
|
+
inset: calc(var(--spacing) * 0);
|
|
1155
|
+
width: 100%;
|
|
1156
|
+
height: 100%;
|
|
1157
|
+
object-fit: cover;
|
|
1158
|
+
}
|
|
1159
|
+
:scope._ao-avatar-square, :scope ._ao-avatar-square {
|
|
1160
|
+
border-radius: var(--radius-md);
|
|
1161
|
+
}
|
|
1162
|
+
:scope._ao-avatar-sm, :scope ._ao-avatar-sm {
|
|
1163
|
+
width: calc(var(--spacing) * 6);
|
|
1164
|
+
height: calc(var(--spacing) * 6);
|
|
1165
|
+
font-size: 0.625rem;
|
|
1166
|
+
}
|
|
1167
|
+
:scope._ao-avatar-lg, :scope ._ao-avatar-lg {
|
|
1168
|
+
width: calc(var(--spacing) * 10);
|
|
1169
|
+
height: calc(var(--spacing) * 10);
|
|
1170
|
+
font-size: var(--text-sm);
|
|
1171
|
+
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
1172
|
+
}
|
|
1173
|
+
:scope._ao-avatar-group, :scope ._ao-avatar-group {
|
|
1174
|
+
display: inline-flex;
|
|
1175
|
+
align-items: center;
|
|
1176
|
+
}
|
|
1177
|
+
:scope._ao-avatar-group > ._ao-avatar, :scope ._ao-avatar-group > ._ao-avatar {
|
|
1178
|
+
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
|
|
1179
|
+
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
1180
|
+
--tw-ring-color: var(--color-surface);
|
|
1181
|
+
}
|
|
1182
|
+
:scope._ao-avatar-group > ._ao-avatar + ._ao-avatar, :scope ._ao-avatar-group > ._ao-avatar + ._ao-avatar {
|
|
1183
|
+
margin-inline-start: calc(var(--spacing) * -2);
|
|
1184
|
+
}
|
|
981
1185
|
:scope._ao-kbd, :scope ._ao-kbd {
|
|
982
1186
|
display: inline-flex;
|
|
983
1187
|
height: 1.4em;
|
|
@@ -1037,6 +1241,18 @@
|
|
|
1037
1241
|
:scope._ao-indicator:has(> ._ao-card), :scope ._ao-indicator:has(> ._ao-card) {
|
|
1038
1242
|
--indicator-offset: 6px;
|
|
1039
1243
|
}
|
|
1244
|
+
:scope._ao-indicator:has(> ._ao-avatar), :scope ._ao-indicator:has(> ._ao-avatar) {
|
|
1245
|
+
--indicator-offset: 5px;
|
|
1246
|
+
}
|
|
1247
|
+
:scope._ao-indicator:has(> ._ao-avatar-sm), :scope ._ao-indicator:has(> ._ao-avatar-sm) {
|
|
1248
|
+
--indicator-offset: 3px;
|
|
1249
|
+
}
|
|
1250
|
+
:scope._ao-indicator:has(> ._ao-avatar-lg), :scope ._ao-indicator:has(> ._ao-avatar-lg) {
|
|
1251
|
+
--indicator-offset: 6px;
|
|
1252
|
+
}
|
|
1253
|
+
:scope._ao-indicator:has(> ._ao-avatar-square), :scope ._ao-indicator:has(> ._ao-avatar-square) {
|
|
1254
|
+
--indicator-offset: 2px;
|
|
1255
|
+
}
|
|
1040
1256
|
:scope._ao-indicator-item, :scope ._ao-indicator-item {
|
|
1041
1257
|
position: absolute;
|
|
1042
1258
|
z-index: 1;
|
|
@@ -1459,6 +1675,22 @@
|
|
|
1459
1675
|
:scope._ao-property-list-copy[data-copied], :scope ._ao-property-list-copy[data-copied] {
|
|
1460
1676
|
color: var(--color-success);
|
|
1461
1677
|
}
|
|
1678
|
+
:scope._ao-separator, :scope ._ao-separator {
|
|
1679
|
+
margin: calc(var(--spacing) * 0);
|
|
1680
|
+
display: block;
|
|
1681
|
+
height: 1px;
|
|
1682
|
+
width: 100%;
|
|
1683
|
+
flex-shrink: 0;
|
|
1684
|
+
border-style: var(--tw-border-style);
|
|
1685
|
+
border-width: 0px;
|
|
1686
|
+
background-color: var(--color-border);
|
|
1687
|
+
}
|
|
1688
|
+
:scope._ao-separator-vertical, :scope ._ao-separator-vertical {
|
|
1689
|
+
height: auto;
|
|
1690
|
+
width: 1px;
|
|
1691
|
+
align-self: stretch;
|
|
1692
|
+
min-height: 1lh;
|
|
1693
|
+
}
|
|
1462
1694
|
:scope._ao-btn, :scope ._ao-btn {
|
|
1463
1695
|
display: inline-flex;
|
|
1464
1696
|
cursor: pointer;
|
|
@@ -1883,6 +2115,51 @@
|
|
|
1883
2115
|
white-space: nowrap;
|
|
1884
2116
|
color: var(--color-text-muted);
|
|
1885
2117
|
}
|
|
2118
|
+
:scope._ao-input-icon, :scope ._ao-input-icon {
|
|
2119
|
+
position: relative;
|
|
2120
|
+
display: inline-flex;
|
|
2121
|
+
width: 100%;
|
|
2122
|
+
align-items: center;
|
|
2123
|
+
font-size: var(--text-sm);
|
|
2124
|
+
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
2125
|
+
color: var(--color-text-muted);
|
|
2126
|
+
--input-icon-inset: calc(var(--spacing) * 3);
|
|
2127
|
+
--input-icon-pad: calc(var(--spacing) * 9);
|
|
2128
|
+
}
|
|
2129
|
+
:scope._ao-input-icon:has(> ._ao-input-sm), :scope ._ao-input-icon:has(> ._ao-input-sm) {
|
|
2130
|
+
font-size: var(--text-xs);
|
|
2131
|
+
line-height: var(--tw-leading, var(--text-xs--line-height));
|
|
2132
|
+
--input-icon-inset: calc(var(--spacing) * 2.5);
|
|
2133
|
+
--input-icon-pad: calc(var(--spacing) * 8);
|
|
2134
|
+
}
|
|
2135
|
+
:scope._ao-input-icon:has(> ._ao-input-lg), :scope ._ao-input-icon:has(> ._ao-input-lg) {
|
|
2136
|
+
font-size: var(--text-base);
|
|
2137
|
+
line-height: var(--tw-leading, var(--text-base--line-height));
|
|
2138
|
+
--input-icon-inset: calc(var(--spacing) * 4);
|
|
2139
|
+
--input-icon-pad: calc(var(--spacing) * 10);
|
|
2140
|
+
}
|
|
2141
|
+
:scope._ao-input-icon > :where(i, svg), :scope ._ao-input-icon > :where(i, svg) {
|
|
2142
|
+
pointer-events: none;
|
|
2143
|
+
position: absolute;
|
|
2144
|
+
top: calc(1 / 2 * 100%);
|
|
2145
|
+
--tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
|
|
2146
|
+
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
2147
|
+
}
|
|
2148
|
+
:scope._ao-input-icon > :where(i, svg):first-child, :scope ._ao-input-icon > :where(i, svg):first-child {
|
|
2149
|
+
left: var(--input-icon-inset);
|
|
2150
|
+
}
|
|
2151
|
+
:scope._ao-input-icon > ._ao-input ~ :where(i, svg), :scope ._ao-input-icon > ._ao-input ~ :where(i, svg) {
|
|
2152
|
+
right: var(--input-icon-inset);
|
|
2153
|
+
}
|
|
2154
|
+
:scope._ao-input-icon:has(> :where(i, svg):first-child) > ._ao-input, :scope ._ao-input-icon:has(> :where(i, svg):first-child) > ._ao-input {
|
|
2155
|
+
padding-left: var(--input-icon-pad);
|
|
2156
|
+
}
|
|
2157
|
+
:scope._ao-input-icon:has(> ._ao-input ~ :where(i, svg)) > ._ao-input, :scope ._ao-input-icon:has(> ._ao-input ~ :where(i, svg)) > ._ao-input {
|
|
2158
|
+
padding-right: var(--input-icon-pad);
|
|
2159
|
+
}
|
|
2160
|
+
:scope._ao-input-icon:has(> ._ao-input:disabled) > :where(i, svg), :scope ._ao-input-icon:has(> ._ao-input:disabled) > :where(i, svg) {
|
|
2161
|
+
opacity: 50%;
|
|
2162
|
+
}
|
|
1886
2163
|
:scope._ao-textarea, :scope ._ao-textarea {
|
|
1887
2164
|
display: block;
|
|
1888
2165
|
min-height: calc(var(--spacing) * 20);
|
|
@@ -2621,6 +2898,55 @@
|
|
|
2621
2898
|
:scope._ao-card-danger ._ao-card-title, :scope ._ao-card-danger ._ao-card-title {
|
|
2622
2899
|
color: var(--color-danger);
|
|
2623
2900
|
}
|
|
2901
|
+
:scope._ao-card-media, :scope ._ao-card-media {
|
|
2902
|
+
display: block;
|
|
2903
|
+
width: 100%;
|
|
2904
|
+
flex-shrink: 0;
|
|
2905
|
+
overflow: hidden;
|
|
2906
|
+
}
|
|
2907
|
+
:scope._ao-card-media:first-child, :scope ._ao-card-media:first-child {
|
|
2908
|
+
border-top-left-radius: inherit;
|
|
2909
|
+
border-top-right-radius: inherit;
|
|
2910
|
+
}
|
|
2911
|
+
:scope._ao-card-media:last-child, :scope ._ao-card-media:last-child {
|
|
2912
|
+
border-bottom-left-radius: inherit;
|
|
2913
|
+
border-bottom-right-radius: inherit;
|
|
2914
|
+
}
|
|
2915
|
+
:scope._ao-card-media > :is(img, video), :scope ._ao-card-media > :is(img, video) {
|
|
2916
|
+
display: block;
|
|
2917
|
+
height: 100%;
|
|
2918
|
+
width: 100%;
|
|
2919
|
+
object-fit: cover;
|
|
2920
|
+
}
|
|
2921
|
+
:scope._ao-card-scroll > ._ao-card-header, :scope ._ao-card-scroll > ._ao-card-header {
|
|
2922
|
+
flex-shrink: 0;
|
|
2923
|
+
border-bottom-style: var(--tw-border-style);
|
|
2924
|
+
border-bottom-width: 1px;
|
|
2925
|
+
border-color: var(--color-border);
|
|
2926
|
+
padding-inline: calc(var(--spacing) * 5);
|
|
2927
|
+
padding-block: calc(var(--spacing) * 3);
|
|
2928
|
+
}
|
|
2929
|
+
:scope._ao-card-scroll > ._ao-card-body, :scope ._ao-card-scroll > ._ao-card-body {
|
|
2930
|
+
min-height: calc(var(--spacing) * 0);
|
|
2931
|
+
flex: 1;
|
|
2932
|
+
overflow-y: auto;
|
|
2933
|
+
}
|
|
2934
|
+
:scope._ao-card-scroll > ._ao-card-body:last-child, :scope ._ao-card-scroll > ._ao-card-body:last-child {
|
|
2935
|
+
border-bottom-left-radius: inherit;
|
|
2936
|
+
border-bottom-right-radius: inherit;
|
|
2937
|
+
}
|
|
2938
|
+
:scope._ao-card-scroll > ._ao-card-actions, :scope ._ao-card-scroll > ._ao-card-actions {
|
|
2939
|
+
flex-shrink: 0;
|
|
2940
|
+
border-top-style: var(--tw-border-style);
|
|
2941
|
+
border-top-width: 1px;
|
|
2942
|
+
border-color: var(--color-border);
|
|
2943
|
+
padding-inline: calc(var(--spacing) * 5);
|
|
2944
|
+
padding-block: calc(var(--spacing) * 3);
|
|
2945
|
+
}
|
|
2946
|
+
:scope._ao-card-compact._ao-card-scroll > :is(._ao-card-header, ._ao-card-actions), :scope ._ao-card-compact._ao-card-scroll > :is(._ao-card-header, ._ao-card-actions) {
|
|
2947
|
+
padding-inline: calc(var(--spacing) * 3);
|
|
2948
|
+
padding-block: calc(var(--spacing) * 2);
|
|
2949
|
+
}
|
|
2624
2950
|
:scope._ao-stat-card, :scope ._ao-stat-card {
|
|
2625
2951
|
gap: calc(var(--spacing) * 1);
|
|
2626
2952
|
padding: calc(var(--spacing) * 4);
|
|
@@ -3984,6 +4310,15 @@
|
|
|
3984
4310
|
white-space: nowrap;
|
|
3985
4311
|
color: var(--color-text-muted);
|
|
3986
4312
|
}
|
|
4313
|
+
:scope._ao-table :where(tfoot :is(td, th)), :scope ._ao-table :where(tfoot :is(td, th)) {
|
|
4314
|
+
--tw-font-weight: var(--font-weight-semibold);
|
|
4315
|
+
font-weight: var(--font-weight-semibold);
|
|
4316
|
+
}
|
|
4317
|
+
:scope._ao-table :where(tfoot tr:first-child :is(td, th)), :scope ._ao-table :where(tfoot tr:first-child :is(td, th)) {
|
|
4318
|
+
border-top-style: var(--tw-border-style);
|
|
4319
|
+
border-top-width: 2px;
|
|
4320
|
+
border-top-color: var(--color-border-strong);
|
|
4321
|
+
}
|
|
3987
4322
|
:scope._ao-table :where(td), :scope ._ao-table :where(td), :scope._ao-table-cell, :scope ._ao-table-cell {
|
|
3988
4323
|
overflow-wrap: break-word;
|
|
3989
4324
|
}
|
|
@@ -4592,6 +4927,9 @@
|
|
|
4592
4927
|
max-width: 96rem;
|
|
4593
4928
|
}
|
|
4594
4929
|
}
|
|
4930
|
+
:scope._ao-my-4, :scope ._ao-my-4 {
|
|
4931
|
+
margin-block: calc(var(--spacing) * 4);
|
|
4932
|
+
}
|
|
4595
4933
|
:scope._ao-block, :scope ._ao-block {
|
|
4596
4934
|
display: block;
|
|
4597
4935
|
}
|
|
@@ -4639,8 +4977,4 @@
|
|
|
4639
4977
|
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
|
|
4640
4978
|
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
4641
4979
|
}
|
|
4642
|
-
:scope._ao-select-all, :scope ._ao-select-all {
|
|
4643
|
-
-webkit-user-select: all;
|
|
4644
|
-
user-select: all;
|
|
4645
|
-
}
|
|
4646
4980
|
}
|
package/dist/chart-internal.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { CSSProperties } from 'react';
|
|
2
|
-
/** A single data point. Only `value` is required. */
|
|
3
2
|
export interface ChartDatum {
|
|
4
3
|
/** Category name. When present, renders a label (and feeds the aria-label). */
|
|
5
4
|
label?: string;
|
|
@@ -11,27 +10,16 @@ export interface ChartDatum {
|
|
|
11
10
|
export type ChartSize = "sm" | "md" | "lg";
|
|
12
11
|
export type ChartType = "bar" | "stack" | "donut" | "pie";
|
|
13
12
|
/**
|
|
14
|
-
* Multi-series palette
|
|
15
|
-
*
|
|
16
|
-
* overrides. Vanilla authors copy the same sequence (it's documented), so both
|
|
17
|
-
* bundles render identical colours. Single-series charts ignore this entirely
|
|
18
|
-
* and follow `currentColor`.
|
|
13
|
+
* Multi-series palette of existing Flexoki tokens, not a new token layer. The
|
|
14
|
+
* documented vanilla sequence copies this exactly — both bundles must match.
|
|
19
15
|
*/
|
|
20
16
|
export declare const SERIES: readonly ["var(--color-blue-500)", "var(--color-orange-400)", "var(--color-green-500)", "var(--color-purple-400)", "var(--color-cyan-500)", "var(--color-magenta-400)", "var(--color-yellow-500)", "var(--color-red-400)"];
|
|
21
|
-
/** Resolve a segment's colour: explicit `datum.color` wins, else cycle SERIES. */
|
|
22
17
|
export declare function seriesColor(datum: ChartDatum, index: number): string;
|
|
23
18
|
/** Largest value, floored at 1 so the bar calc never divides by zero. */
|
|
24
19
|
export declare function computeMax(data: ChartDatum[], explicit?: number): number;
|
|
25
|
-
/**
|
|
26
|
-
* Build the cumulative `conic-gradient` stop string for a donut/pie:
|
|
27
|
-
* `<color> <from>deg <to>deg, …`. Degrees accumulate across segments. A
|
|
28
|
-
* non-positive total yields a single neutral fill so the ring isn't blank.
|
|
29
|
-
*/
|
|
20
|
+
/** Cumulative `conic-gradient` stops. A non-positive total yields a neutral fill so the ring isn't blank. */
|
|
30
21
|
export declare function buildDonutSegments(data: ChartDatum[]): string;
|
|
31
|
-
/**
|
|
32
|
-
* Auto-generated summary for the chart root's `aria-label`. Callers that pass
|
|
33
|
-
* their own `aria-label` skip this. Example: "Bar chart. Mon: 80, Tue: 52."
|
|
34
|
-
*/
|
|
22
|
+
/** Chart-root `aria-label` summary, e.g. "Bar chart. Mon: 80, Tue: 52." */
|
|
35
23
|
export declare function buildAriaLabel(type: ChartType, data: ChartDatum[]): string;
|
|
36
24
|
/** Native `title` text for a bar/segment/legend row. */
|
|
37
25
|
export declare function datumTitle(datum: ChartDatum): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chart-internal.d.ts","sourceRoot":"","sources":["../src/chart-internal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,
|
|
1
|
+
{"version":3,"file":"chart-internal.d.ts","sourceRoot":"","sources":["../src/chart-internal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,WAAW,UAAU;IACzB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,kFAAkF;IAClF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC3C,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC;AAE1D;;;GAGG;AACH,eAAO,MAAM,MAAM,4NAST,CAAC;AAEX,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,yEAAyE;AACzE,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAGxE;AAED,6GAA6G;AAC7G,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAa7D;AASD,2EAA2E;AAC3E,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAG1E;AAED,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAEpD;AAED,iFAAiF;AACjF,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACrC,QAAQ,CAAC,EAAE,aAAa,GACvB,aAAa,CAEf"}
|
package/dist/cn.d.ts
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { ClassValue } from 'clsx';
|
|
2
2
|
/**
|
|
3
|
-
* className merger that preserves Base UI's render-prop className form
|
|
3
|
+
* className merger that preserves Base UI's render-prop className form —
|
|
4
|
+
* a function `className` is deferred until Base UI invokes it with state.
|
|
4
5
|
*
|
|
5
|
-
* `base` carries admin's own classes
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* Base UI components accept `className: string | ((state) => string | undefined)`.
|
|
10
|
-
* The function form has to be deferred until Base UI invokes it with the
|
|
11
|
-
* component state.
|
|
6
|
+
* `base` carries admin's own classes and is always prefixed with `_ao-`.
|
|
7
|
+
* `className` is the consumer-supplied prop and passes through verbatim —
|
|
8
|
+
* it lives in the caller's namespace.
|
|
12
9
|
*/
|
|
13
10
|
export declare function cn(base: ClassValue, className: string | undefined): string;
|
|
14
11
|
export declare function cn<TState>(base: ClassValue, className: (state: TState) => string | undefined): (state: TState) => string;
|
package/dist/cn.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../src/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../src/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAsB7C;;;;;;;GAOG;AACH,wBAAgB,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAC5E,wBAAgB,EAAE,CAAC,MAAM,EACvB,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,GAC/C,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAC7B,wBAAgB,EAAE,CAAC,MAAM,EACvB,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,GACtE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC"}
|
package/dist/hotkey-parse.d.ts
CHANGED
|
@@ -1,16 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Pure helpers for the hotkey system. Chord syntax: `<mod
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* command modifier — ⌘ (`meta`) on Apple platforms, `Ctrl` elsewhere — so
|
|
8
|
-
* `mod+s` fires on the OS-native gesture (Cmd+S on macOS, Ctrl+S otherwise)
|
|
9
|
-
* and the `<Kbd>` chip follows suit. The key is whatever
|
|
10
|
-
* `KeyboardEvent.key` produces, lowercased. A shifted printable symbol already
|
|
11
|
-
* encodes Shift in the character it produces, so bind `"?"` (not `"shift+?"`)
|
|
12
|
-
* to catch `shift+/`; `shift` stays explicit for letters and named keys, so
|
|
13
|
-
* `shift+a` and `shift+tab` remain distinct chords.
|
|
2
|
+
* Pure helpers for the hotkey system. Chord syntax: `<mod>+…+<key>`, e.g.
|
|
3
|
+
* `mod+s`, `?`, `mod+shift+k`. `mod` resolves to the platform's primary
|
|
4
|
+
* command modifier (⌘ on Apple, Ctrl elsewhere). The key is lowercased
|
|
5
|
+
* `KeyboardEvent.key`. Bind shifted printable symbols bare (`"?"`, not
|
|
6
|
+
* `"shift+?"`); `shift` stays explicit for letters and named keys.
|
|
14
7
|
*/
|
|
15
8
|
export type Modifier = "ctrl" | "shift" | "alt" | "meta";
|
|
16
9
|
export interface ParsedChord {
|
|
@@ -21,17 +14,10 @@ export declare function parseChord(input: string): ParsedChord;
|
|
|
21
14
|
export declare function parseKeys(keys: string | readonly string[]): ParsedChord[];
|
|
22
15
|
/** Canonical wire form used as a map key in the registry. */
|
|
23
16
|
export declare function canonicalize(chord: ParsedChord): string;
|
|
24
|
-
/**
|
|
25
|
-
* Normalize a keyboard event to its canonical chord string. Returns `null`
|
|
26
|
-
* if the event is a bare modifier press (`Shift` by itself, etc.) so callers
|
|
27
|
-
* can short-circuit before a map lookup.
|
|
28
|
-
*/
|
|
17
|
+
/** Canonical chord string for a keyboard event; `null` for a bare modifier press. */
|
|
29
18
|
export declare function normalizeEvent(e: KeyboardEvent): string | null;
|
|
30
19
|
/** Visual chips for a chord — one entry per modifier and the final key. */
|
|
31
20
|
export declare function formatChord(chord: ParsedChord): string[];
|
|
32
|
-
/**
|
|
33
|
-
* Serialize one or more chords to the `aria-keyshortcuts` format
|
|
34
|
-
* (space-separated alternatives, modifiers as `Control`/`Shift`/etc.).
|
|
35
|
-
*/
|
|
21
|
+
/** Serialize chords to `aria-keyshortcuts` format (space-separated alternatives). */
|
|
36
22
|
export declare function toAriaKeyShortcuts(chords: readonly ParsedChord[]): string;
|
|
37
23
|
//# sourceMappingURL=hotkey-parse.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hotkey-parse.d.ts","sourceRoot":"","sources":["../src/hotkey-parse.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"hotkey-parse.d.ts","sourceRoot":"","sources":["../src/hotkey-parse.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;AAEzD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;CACb;AAkCD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CA2BrD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,WAAW,EAAE,CAGzE;AAED,6DAA6D;AAC7D,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAOvD;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAa9D;AA0BD,2EAA2E;AAC3E,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,EAAE,CAcxD;AAkBD,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,CAEzE"}
|
|
@@ -1,25 +1,13 @@
|
|
|
1
1
|
import { RefObject } from 'react';
|
|
2
2
|
/**
|
|
3
|
-
* Module-level keyboard shortcut registry
|
|
3
|
+
* Module-level keyboard shortcut registry: one window keydown listener,
|
|
4
4
|
* attached on first registration and detached when the registry empties.
|
|
5
|
-
*
|
|
6
|
-
* On keydown:
|
|
7
|
-
* 1. Ignore OS autorepeat (`e.repeat`) so a held chord fires once, not per tick.
|
|
8
|
-
* 2. Normalize the event to a canonical chord string.
|
|
9
|
-
* 3. Look up the bucket. Skip if empty.
|
|
10
|
-
* 4. Apply input suppression — bare-key chords are skipped while focus is
|
|
11
|
-
* in an editable element, except for `escape`.
|
|
12
|
-
* 5. `preventDefault()`, then invoke every surviving handler (bag semantics).
|
|
13
5
|
*/
|
|
14
6
|
export type HotkeyHandler = (e: KeyboardEvent) => void;
|
|
15
7
|
export interface HotkeyEntry {
|
|
16
8
|
handlerRef: RefObject<HotkeyHandler>;
|
|
17
9
|
}
|
|
18
|
-
/**
|
|
19
|
-
* Register a hotkey entry under each of its canonical chord strings.
|
|
20
|
-
* Returns an unregister function that removes the entry from every bucket
|
|
21
|
-
* and detaches the listener if the registry is empty.
|
|
22
|
-
*/
|
|
10
|
+
/** Returns an unregister function. */
|
|
23
11
|
export declare function register(canonicalChords: readonly string[], entry: HotkeyEntry): () => void;
|
|
24
12
|
/** Test-only: empty the registry and detach the listener. */
|
|
25
13
|
export declare function __resetRegistry(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hotkey-registry.d.ts","sourceRoot":"","sources":["../src/hotkey-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC
|
|
1
|
+
{"version":3,"file":"hotkey-registry.d.ts","sourceRoot":"","sources":["../src/hotkey-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC;;;GAGG;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;CACtC;AA0CD,sCAAsC;AACtC,wBAAgB,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CAmB3F;AAED,6DAA6D;AAC7D,wBAAgB,eAAe,IAAI,IAAI,CAGtC"}
|
package/dist/icon.d.ts
CHANGED
|
@@ -1,28 +1,16 @@
|
|
|
1
1
|
import { ComponentType, ReactElement, ReactNode } from 'react';
|
|
2
|
-
/**
|
|
3
|
-
* Props every icon component is expected to accept. Matches `@tabler/icons-react`
|
|
4
|
-
* (size + standard SVG attributes), but loose enough to accept other libraries.
|
|
5
|
-
*/
|
|
2
|
+
/** Props an icon component must accept — matches `@tabler/icons-react`, loose enough for other libraries. */
|
|
6
3
|
export interface IconRenderProps {
|
|
7
4
|
size?: number | string;
|
|
8
5
|
"aria-hidden"?: boolean | "true" | "false";
|
|
9
6
|
}
|
|
10
7
|
export type IconComponent = ComponentType<IconRenderProps>;
|
|
11
|
-
/**
|
|
12
|
-
* The value a component prop named `icon` will accept. Either:
|
|
13
|
-
* - a component reference (`icon={IconHome}`) — rendered with `size="1em" aria-hidden`,
|
|
14
|
-
* - or an already-instantiated React element (`icon={<IconHome size={20} />}`) — rendered as-is.
|
|
15
|
-
*/
|
|
8
|
+
/** Component reference (rendered with `size="1em" aria-hidden`) or pre-instantiated element (as-is). */
|
|
16
9
|
export type IconProp = IconComponent | ReactElement | null | undefined;
|
|
17
10
|
/**
|
|
18
|
-
* Render an `IconProp
|
|
19
|
-
*
|
|
20
|
-
* the
|
|
21
|
-
* renders in the vanilla bundle — so both previews end up the same size.
|
|
22
|
-
*
|
|
23
|
-
* Anything that is not `null`/`undefined` and not already a React element is
|
|
24
|
-
* treated as a component type — `createElement` accepts function components,
|
|
25
|
-
* `forwardRef`s (e.g. `@tabler/icons-react`), `memo`, etc.
|
|
11
|
+
* Render an `IconProp`, defaulting component references to `size="1em"
|
|
12
|
+
* aria-hidden`. `"1em"` makes SVG icons inherit the host `font-size`, matching
|
|
13
|
+
* the Tabler webfont in the vanilla bundle.
|
|
26
14
|
*/
|
|
27
15
|
export declare function renderIcon(icon: IconProp, size?: number | string): ReactNode;
|
|
28
16
|
//# sourceMappingURL=icon.d.ts.map
|
package/dist/icon.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../src/icon.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEpE
|
|
1
|
+
{"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../src/icon.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEpE,6GAA6G;AAC7G,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;CAC5C;AAED,MAAM,MAAM,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;AAE3D,wGAAwG;AACxG,MAAM,MAAM,QAAQ,GAAG,aAAa,GAAG,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;AAEvE;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAE,MAAM,GAAG,MAAc,GAAG,SAAS,CAInF"}
|