@mario_hahn/jumpy-ui 0.8.0 → 0.8.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 +12 -2
- package/dist/{chunk-HQ4NWZ65.js → chunk-B7QIDGY7.js} +13 -37
- package/dist/index.js +3 -3
- package/dist/theme.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,11 +1,21 @@
|
|
|
1
1
|
# @mario_hahn/jumpy-ui
|
|
2
2
|
|
|
3
|
+
## Field widths
|
|
4
|
+
|
|
5
|
+
Text fields, dropdowns, date pickers and time pickers fill their parent container.
|
|
6
|
+
Constrain the surrounding layout for compact controls, for example with a grid
|
|
7
|
+
column or a wrapper `maxWidth`. Calendar and time popups retain their own sizing;
|
|
8
|
+
they do not expand to match a wide field.
|
|
9
|
+
|
|
3
10
|
## Sticky tables and selection
|
|
4
11
|
|
|
5
12
|
`JumpTable stickyHeader` fixes both the header and footer inside the scrollable
|
|
6
13
|
container. They use `--jumpy-cmp-table-backdrop-color` for a continuous background
|
|
7
14
|
behind the decorative cell surfaces. The default resolves to the opaque semantic
|
|
8
|
-
|
|
15
|
+
card surface in each preset. Normal cell decorations are transparent; selected
|
|
16
|
+
and hovered cells use their semantic interaction surfaces. The scroll container
|
|
17
|
+
and pinned cells share the same backdrop. Keep any custom backdrop override opaque.
|
|
18
|
+
Use `showHorizontalBorders` for explicit row separators in all columns.
|
|
9
19
|
|
|
10
20
|
`JumpTableCell` and `JumpTableHeaderCell` support `pinned="left"` or `pinned="right"`;
|
|
11
21
|
use `pinnedEdge` for the edge divider. Pinned cells use the same backdrop as the
|
|
@@ -75,7 +85,7 @@ Jumpy Components als ein gemeinsames UI-Paket.
|
|
|
75
85
|
Starting with 0.5.0, Jumpy UI uses the public npmjs registry. No package token is required to install:
|
|
76
86
|
|
|
77
87
|
```bash
|
|
78
|
-
npm install @mario_hahn/jumpy-ui@^0.8.
|
|
88
|
+
npm install @mario_hahn/jumpy-ui@^0.8.1
|
|
79
89
|
```
|
|
80
90
|
|
|
81
91
|
The public npm package uses the `@mario_hahn` scope. Older GitHub Packages releases
|
|
@@ -23744,7 +23744,7 @@ var providerStyles = `
|
|
|
23744
23744
|
}
|
|
23745
23745
|
|
|
23746
23746
|
[data-jumpy-theme='true'] [data-jumpy-slot='table-wrapper'] {
|
|
23747
|
-
--jumpy-cmp-table-backdrop-color: var(--jumpy-
|
|
23747
|
+
--jumpy-cmp-table-backdrop-color: var(--jumpy-color-surface-card);
|
|
23748
23748
|
display: block;
|
|
23749
23749
|
position: relative;
|
|
23750
23750
|
width: 100%;
|
|
@@ -23756,6 +23756,7 @@ var providerStyles = `
|
|
|
23756
23756
|
width: 100%;
|
|
23757
23757
|
max-width: 100%;
|
|
23758
23758
|
overflow: auto;
|
|
23759
|
+
background-color: var(--jumpy-cmp-table-backdrop-color);
|
|
23759
23760
|
}
|
|
23760
23761
|
|
|
23761
23762
|
[data-jumpy-theme='true'] [data-jumpy-slot='table-container'][data-sticky-header='true'] {
|
|
@@ -23775,18 +23776,6 @@ var providerStyles = `
|
|
|
23775
23776
|
top: 0;
|
|
23776
23777
|
}
|
|
23777
23778
|
|
|
23778
|
-
/* Table section backgrounds can be clipped to rounded cell boxes by the table
|
|
23779
|
-
painting algorithm. An independent layer also covers those outer corners. */
|
|
23780
|
-
[data-jumpy-theme='true'] [data-jumpy-slot='table-container'][data-sticky-header='true'] thead::before,
|
|
23781
|
-
[data-jumpy-theme='true'] [data-jumpy-slot='table-container'][data-sticky-header='true'] tfoot::before {
|
|
23782
|
-
content: '';
|
|
23783
|
-
position: absolute;
|
|
23784
|
-
inset: 0;
|
|
23785
|
-
z-index: -1;
|
|
23786
|
-
pointer-events: none;
|
|
23787
|
-
background-color: var(--jumpy-cmp-table-backdrop-color);
|
|
23788
|
-
}
|
|
23789
|
-
|
|
23790
23779
|
[data-jumpy-theme='true'] [data-jumpy-slot='table-container'][data-sticky-header='true'] :is(thead, tfoot) > [data-jumpy-component='table-row'] > :is([data-jumpy-component='table-cell'], [data-jumpy-component='table-header-cell']):is(:first-child, :last-child) {
|
|
23791
23780
|
/* Only the decorative surface is rounded; sticky backdrops are rectangular. */
|
|
23792
23781
|
border-radius: 0;
|
|
@@ -23840,7 +23829,7 @@ var providerStyles = `
|
|
|
23840
23829
|
|
|
23841
23830
|
[data-jumpy-theme='true'] [data-jumpy-component='table-cell'],
|
|
23842
23831
|
[data-jumpy-theme='true'] [data-jumpy-component='table-header-cell'] {
|
|
23843
|
-
--jumpy-cmp-table-cell-surface-color:
|
|
23832
|
+
--jumpy-cmp-table-cell-surface-color: transparent;
|
|
23844
23833
|
display: table-cell;
|
|
23845
23834
|
position: relative;
|
|
23846
23835
|
height: var(--jumpy-spacing-size-2xlarge);
|
|
@@ -23852,7 +23841,7 @@ var providerStyles = `
|
|
|
23852
23841
|
}
|
|
23853
23842
|
|
|
23854
23843
|
[data-jumpy-theme='true'] [data-jumpy-component='table-header-cell'] {
|
|
23855
|
-
--jumpy-cmp-table-cell-surface-color: color-mix(in srgb, var(--jumpy-color-
|
|
23844
|
+
--jumpy-cmp-table-cell-surface-color: color-mix(in srgb, var(--jumpy-color-surface-field) calc(var(--jumpy-opacity-medium) * 100%), transparent);
|
|
23856
23845
|
}
|
|
23857
23846
|
|
|
23858
23847
|
[data-jumpy-theme='true'] [data-jumpy-component='table-cell'][data-align='start'],
|
|
@@ -23887,9 +23876,10 @@ var providerStyles = `
|
|
|
23887
23876
|
[data-jumpy-theme='true'] [data-jumpy-component='table-cell']::before,
|
|
23888
23877
|
[data-jumpy-theme='true'] [data-jumpy-component='table-header-cell']::before {
|
|
23889
23878
|
position: absolute;
|
|
23879
|
+
z-index: 1;
|
|
23890
23880
|
inset-inline: 0;
|
|
23891
23881
|
bottom: 0;
|
|
23892
|
-
background-color: var(--jumpy-color-
|
|
23882
|
+
background-color: var(--jumpy-color-border-subtle);
|
|
23893
23883
|
height: var(--jumpy-spacing-outline-small);
|
|
23894
23884
|
content: '';
|
|
23895
23885
|
}
|
|
@@ -24139,31 +24129,17 @@ var providerStyles = `
|
|
|
24139
24129
|
|
|
24140
24130
|
[data-jumpy-theme='true'] [data-jumpy-component='table-footer'] {
|
|
24141
24131
|
position: relative;
|
|
24142
|
-
background-color: var(--jumpy-
|
|
24143
|
-
}
|
|
24144
|
-
|
|
24145
|
-
[data-jumpy-theme='true'] [data-jumpy-component='table-footer']::before,
|
|
24146
|
-
[data-jumpy-theme='true'] [data-jumpy-component='table-footer']::after {
|
|
24147
|
-
position: absolute;
|
|
24148
|
-
right: 0;
|
|
24149
|
-
left: 0;
|
|
24150
|
-
z-index: 1;
|
|
24151
|
-
background-color: var(--jumpy-interactive-inactive-regular-default-border);
|
|
24152
|
-
height: var(--jumpy-spacing-outline-small);
|
|
24153
|
-
content: '';
|
|
24154
|
-
}
|
|
24155
|
-
|
|
24156
|
-
[data-jumpy-theme='true'] [data-jumpy-component='table-footer']::before {
|
|
24157
|
-
top: 0;
|
|
24132
|
+
background-color: var(--jumpy-cmp-table-backdrop-color);
|
|
24158
24133
|
}
|
|
24159
24134
|
|
|
24160
|
-
|
|
24161
|
-
|
|
24162
|
-
|
|
24135
|
+
/* Native cell borders paint consistently on either side of pinned boundaries.
|
|
24136
|
+
A section pseudo-element would be covered only by the sticky cells. */
|
|
24137
|
+
[data-jumpy-theme='true'] [data-jumpy-component='table-footer'] > [data-jumpy-component='table-row']:first-child > :is([data-jumpy-component='table-cell'], [data-jumpy-component='table-header-cell']) {
|
|
24138
|
+
border-top: var(--jumpy-spacing-outline-small) solid var(--jumpy-color-border-subtle);
|
|
24163
24139
|
}
|
|
24164
24140
|
|
|
24165
|
-
[data-jumpy-theme='true'] [data-jumpy-component='table'][data-horizontal-borders='true'] [data-jumpy-component='table-footer']
|
|
24166
|
-
|
|
24141
|
+
[data-jumpy-theme='true'] [data-jumpy-component='table'][data-horizontal-borders='true'] > [data-jumpy-component='table-footer'] > [data-jumpy-component='table-row']:last-child > :is([data-jumpy-component='table-cell'], [data-jumpy-component='table-header-cell']) {
|
|
24142
|
+
border-bottom: var(--jumpy-spacing-outline-small) solid var(--jumpy-color-border-subtle);
|
|
24167
24143
|
}
|
|
24168
24144
|
|
|
24169
24145
|
[data-jumpy-theme='true'] [data-jumpy-component='table-footer'] [data-jumpy-component='table-cell']::before {
|
package/dist/index.js
CHANGED
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
textStyleValue,
|
|
29
29
|
themeToCSSVariables,
|
|
30
30
|
useJumpyTheme
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-B7QIDGY7.js";
|
|
32
32
|
import {
|
|
33
33
|
cn
|
|
34
34
|
} from "./chunk-3DBKYKP2.js";
|
|
@@ -2492,7 +2492,7 @@ function JumpDatePicker({ label = "Date", hint, value, defaultValue = null, onCh
|
|
|
2492
2492
|
setOpen(false);
|
|
2493
2493
|
}
|
|
2494
2494
|
const trailing = readOnly ? void 0 : /* @__PURE__ */ jsx(PickerTrailingIcon, { type: "date", open: isOpen });
|
|
2495
|
-
return /* @__PURE__ */ jsxs("div", { ref: refs.setReference, "data-jumpy-component": "date-picker", style: { position: "relative", width:
|
|
2495
|
+
return /* @__PURE__ */ jsxs("div", { ref: refs.setReference, "data-jumpy-component": "date-picker", style: { position: "relative", width: "100%", maxWidth: "100%" }, children: [
|
|
2496
2496
|
/* @__PURE__ */ jsx(JumpField, { label, hint, status, error, hideClearIcon, onClear, className, trailing, children: /* @__PURE__ */ jsx(
|
|
2497
2497
|
JumpInput,
|
|
2498
2498
|
{
|
|
@@ -2614,7 +2614,7 @@ function JumpTimePicker({ label = "Time", hint, value, defaultValue = null, onCh
|
|
|
2614
2614
|
onChange?.(output);
|
|
2615
2615
|
}
|
|
2616
2616
|
const trailing = readOnly ? void 0 : /* @__PURE__ */ jsx(PickerTrailingIcon, { type: "time", open: isOpen });
|
|
2617
|
-
return /* @__PURE__ */ jsxs("div", { ref: refs.setReference, "data-jumpy-component": "time-picker", style: { position: "relative", width:
|
|
2617
|
+
return /* @__PURE__ */ jsxs("div", { ref: refs.setReference, "data-jumpy-component": "time-picker", style: { position: "relative", width: "100%", maxWidth: "100%" }, children: [
|
|
2618
2618
|
/* @__PURE__ */ jsx(JumpField, { label, hint, status, error, hideClearIcon, onClear, className, trailing, children: /* @__PURE__ */ jsx(
|
|
2619
2619
|
JumpInput,
|
|
2620
2620
|
{
|
package/dist/theme.js
CHANGED