jsl-ui 10.0.1 → 10.0.3
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/examples/showcase/grids.ts +1 -1
- package/examples/showcase/showcase.css +37 -2
- package/lib/components/checkbox/CheckBoxStyle.scss +2 -2
- package/lib/components/expander/ExpanderStyle.scss +2 -2
- package/lib/components/form-field/FormFieldStyle.scss +2 -2
- package/lib/components/select/SelectStyle.scss +3 -3
- package/lib/components/tree-view/TreeViewStyle.scss +4 -2
- package/lib/grid/slick-default-theme.css +6 -3
- package/lib/grid/slick.grid.css +3 -3
- package/lib/grid/slick.grid.js +1 -1
- package/lib/grid.css +3337 -743
- package/lib/index.css +8 -12
- package/lib/index.css.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/ui/input.css +1 -1
- package/package.json +1 -1
|
@@ -210,7 +210,7 @@ export const gridShowcase: IJSLVNode = {
|
|
|
210
210
|
{ tag: "details", attr: { class: "usage" }, children: [
|
|
211
211
|
text("summary", "Grid showcase scope"),
|
|
212
212
|
text("p", 'NumericFormatter supplies right-aligned cells; NumericFormatter and DateFormatter apply tabular numerals. Set headerCssClass: "right" or "center" explicitly to match a column’s content. Header alignment is never inferred from its formatter.'),
|
|
213
|
-
text("p", "These examples use the existing GridComponent constructor, column definitions, editors, and DataView APIs. The default row height is
|
|
213
|
+
text("p", "These examples use the existing GridComponent constructor, column definitions, editors, and DataView APIs. The default row height is 40 px; rowHeight can retain a different density. Column headers fit up to two lines. Core presentation follows the shared theme and inherits the host's typography. Filter dialogs, menus, and lifecycle behavior are reserved for later steps.")
|
|
214
214
|
] }
|
|
215
215
|
]
|
|
216
216
|
};
|
|
@@ -8,7 +8,42 @@
|
|
|
8
8
|
-webkit-font-smoothing: antialiased;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
/* Keep the showcase layout predictable without resetting sizing on library DOM.
|
|
12
|
+
Grid cells and component internals should exercise their own box model. */
|
|
13
|
+
:where(
|
|
14
|
+
.skip-link, .sidebar, .brand, .brand-caption, .brand-mark, .nav-label, .nav-item,
|
|
15
|
+
.nav-number, .nav-icon, .sidebar-note, .status-dot, main, .page-meta, .page-tools,
|
|
16
|
+
.theme-picker, .version, .hero, .eyebrow, .hero-preview, .preview-caption,
|
|
17
|
+
.preview-note, .hero-description, .overview-bar, .overview-label, .overview-stat,
|
|
18
|
+
.sample-grid, .sample-card, .card-heading, .sample-number, .card-description,
|
|
19
|
+
.sample-row, .sample-status, .sample-code, .inline-note, .showcase-icon,
|
|
20
|
+
.format-bold, .format-italic, .format-underline, .sample-divider, .size-row,
|
|
21
|
+
.size-sample, .size-caption, .context-panel, .context-body, .context-eyebrow,
|
|
22
|
+
.context-copy, .context-footer, .count-badge, .usage, .page-footer,
|
|
23
|
+
.component-section, .showcase-dialog-copy, .dialog-summary, .dialog-summary-label,
|
|
24
|
+
.dialog-form-field, .dialog-member, .dialog-member-avatar, .dialog-member-role,
|
|
25
|
+
.dialog-help, .dialog-check, .tabs-example-copy, .tabs-draft-input,
|
|
26
|
+
.tabs-example-check, .tabs-header-badge, .tabs-rich-header, .date-hero-preview,
|
|
27
|
+
.date-showcase-field, .slider-sample, .showcase-slider, .slider-readout,
|
|
28
|
+
.slider-with-tooltip, .slider-orientations, .showcase-slider-vertical,
|
|
29
|
+
.slider-disabled-example, .showcase-calendar, .select-showcase-field,
|
|
30
|
+
.select-hero-preview, .select-person, .select-person-avatar, .select-person-copy,
|
|
31
|
+
.checks-expander-preview, .checkbox-stack, .checkbox-child-list,
|
|
32
|
+
.expander-example-copy, .expander-preview-copy, .expander-rich-header,
|
|
33
|
+
.expander-stack, .expander-custom-icon, .fields-preview, .field-sample,
|
|
34
|
+
.unstyled-input-sample, .showcase-inline-input, .composed-fields,
|
|
35
|
+
.notification-samples, .notification-action-copy, .loading-label-samples,
|
|
36
|
+
.loading-demo, .loading-demo-panel, .navigation-preview,
|
|
37
|
+
.navigation-compact-sample, .navigation-rich-brand, .navigation-brand-mark,
|
|
38
|
+
.remaining-demo, .layout-demo-panel, .tree-demo-content, .grid-samples,
|
|
39
|
+
.grid-sample-card, .grid-sample-host, .format-preview
|
|
40
|
+
) { box-sizing: border-box; }
|
|
41
|
+
|
|
42
|
+
/* Showcase-owned native controls also keep the page's intended dimensions. */
|
|
43
|
+
.theme-picker select, .dialog-form-field input, .dialog-form-field textarea,
|
|
44
|
+
.dialog-check input, .tabs-draft-input, .tabs-example-check input {
|
|
45
|
+
box-sizing: border-box;
|
|
46
|
+
}
|
|
12
47
|
body { margin: 0; font-size: 14px; line-height: 1.6; }
|
|
13
48
|
a { color: inherit; }
|
|
14
49
|
.skip-link { position: fixed; top: -5rem; left: 1rem; z-index: 5; padding: 0.5rem 1rem; background: var(--jsl-color-surface); }
|
|
@@ -219,7 +254,7 @@ h2 { font-size: 14px; font-weight: 600; margin: 0; letter-spacing: -0.15px; }
|
|
|
219
254
|
.navigation-brand-mark { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 6px; background: var(--jsl-color-accent); color: var(--jsl-color-on-accent); font-size: 12px; }
|
|
220
255
|
.remaining-demo { display: flex; flex-direction: column; gap: 20px; margin-top: 24px; }
|
|
221
256
|
.remaining-demo h3 { margin: 0; font-size: 14px; font-weight: 600; }
|
|
222
|
-
.layout-demo-panel { padding: 16px; background: var(--jsl-color-surface); color: var(--jsl-color-text); overflow: auto; height: 100%;
|
|
257
|
+
.layout-demo-panel { padding: 16px; background: var(--jsl-color-surface); color: var(--jsl-color-text); overflow: auto; height: 100%; }
|
|
223
258
|
.layout-demo-panel p { color: var(--jsl-color-text-secondary); font-size: 13px; line-height: 1.6; }
|
|
224
259
|
.tree-demo-content { display: flex; align-items: center; gap: 8px; }
|
|
225
260
|
.grid-samples { display: flex; flex-direction: column; gap: 24px; margin: 24px 0; }
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
max-width: 100%;
|
|
8
8
|
color: var(--jsl-color-text);
|
|
9
9
|
font: inherit;
|
|
10
|
-
font-size: .875rem;
|
|
10
|
+
// font-size: .875rem;
|
|
11
11
|
line-height: 1.5;
|
|
12
12
|
vertical-align: middle;
|
|
13
13
|
}
|
|
@@ -70,4 +70,4 @@
|
|
|
70
70
|
@media (forced-colors: active) {
|
|
71
71
|
.checkbox-comp { appearance: auto; }
|
|
72
72
|
.checkbox-comp::after { display: none; }
|
|
73
|
-
}
|
|
73
|
+
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
background: var(--jsl-color-surface);
|
|
9
9
|
color: var(--jsl-color-text);
|
|
10
10
|
font: inherit;
|
|
11
|
-
font-size: .875rem;
|
|
11
|
+
// font-size: .875rem;
|
|
12
12
|
line-height: 1.5;
|
|
13
13
|
}
|
|
14
14
|
.expander-comp > .header {
|
|
@@ -58,4 +58,4 @@
|
|
|
58
58
|
.expander-comp.disabled > .header { color: var(--jsl-color-disabled-text); cursor: default; background: var(--jsl-color-disabled-surface); }
|
|
59
59
|
.expander-comp > .header > .toggler:disabled { color: var(--jsl-color-disabled-text); cursor: not-allowed; }
|
|
60
60
|
@keyframes jsl-expander-appear { from { opacity: 0; } to { opacity: 1; } }
|
|
61
|
-
@media (prefers-reduced-motion: reduce) { .expander-comp.expanded > .body { animation: none; } }
|
|
61
|
+
@media (prefers-reduced-motion: reduce) { .expander-comp.expanded > .body { animation: none; } }
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
margin: 0 0 1rem;
|
|
11
11
|
color: var(--jsl-color-text);
|
|
12
12
|
font: inherit;
|
|
13
|
-
font-size: .875rem;
|
|
13
|
+
// font-size: .875rem;
|
|
14
14
|
}
|
|
15
15
|
.form-field__label { display: block; color: var(--jsl-color-text-secondary); font-size: .75rem; font-weight: 500; line-height: 1.5; }
|
|
16
16
|
.form-field__required { color: var(--jsl-color-text-muted); }
|
|
@@ -33,4 +33,4 @@
|
|
|
33
33
|
padding: 0 .25rem;
|
|
34
34
|
background: var(--jsl-color-surface);
|
|
35
35
|
}
|
|
36
|
-
.form-field:has(.form-field__control:disabled) > .form-field__label { color: var(--jsl-color-disabled-text); }
|
|
36
|
+
.form-field:has(.form-field__control:disabled) > .form-field__label { color: var(--jsl-color-disabled-text); }
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
vertical-align: middle;
|
|
12
12
|
color: var(--jsl-color-text);
|
|
13
13
|
font: inherit;
|
|
14
|
-
font-size: .875rem;
|
|
14
|
+
// font-size: .875rem;
|
|
15
15
|
}
|
|
16
16
|
.select-comp *, .sel-comp-dd * { box-sizing: border-box; }
|
|
17
17
|
.select-comp .sel-expander {
|
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
background: var(--jsl-color-surface);
|
|
119
119
|
color: var(--jsl-color-text);
|
|
120
120
|
font: inherit;
|
|
121
|
-
font-size: .875rem;
|
|
121
|
+
// font-size: .875rem;
|
|
122
122
|
box-shadow: 0 12px 32px rgba(0, 0, 0, .12), 0 2px 6px rgba(0, 0, 0, .06);
|
|
123
123
|
}
|
|
124
124
|
.sel-dd-panel { height: 100%; display: flex; flex-direction: column; min-height: 0; }
|
|
@@ -202,4 +202,4 @@
|
|
|
202
202
|
@media (forced-colors: active) {
|
|
203
203
|
.sel-comp-dd .sel-dd-item.selected { outline: 2px solid Highlight; outline-offset: -2px; }
|
|
204
204
|
.sel-chip { border: 1px solid ButtonText; }
|
|
205
|
-
}
|
|
205
|
+
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
@import "../../ui/theme.css";
|
|
2
|
-
.treeview-comp { color: var(--jsl-color-text); font: inherit;
|
|
2
|
+
.treeview-comp { color: var(--jsl-color-text); font: inherit;
|
|
3
|
+
// font-size: .875rem;
|
|
4
|
+
line-height: 1.5; }
|
|
3
5
|
.treeview-comp .tv-ul { list-style: none; padding: 0; margin: 0; }
|
|
4
6
|
.treeview-comp .tv-ul .tv-ul { margin-left: 1rem; padding-left: .5rem; border-left: 1px solid var(--jsl-color-border-subtle); }
|
|
5
7
|
.treeview-comp [hidden] { display: none; }
|
|
@@ -9,4 +11,4 @@
|
|
|
9
11
|
.tv-row:focus-visible { outline: 2px solid var(--jsl-color-focus); outline-offset: -2px; }
|
|
10
12
|
.tv-chevron { flex: 0 0 .375rem; width: .375rem; height: .375rem; border-right: 1.5px solid var(--jsl-color-text-muted); border-bottom: 1.5px solid var(--jsl-color-text-muted); transform: rotate(-45deg); margin-right: .25rem; }
|
|
11
13
|
.tv-row[aria-expanded=true] > .tv-chevron { transform: translateY(-.125rem) rotate(45deg); }
|
|
12
|
-
.tv-leaf { border-color: transparent; }
|
|
14
|
+
.tv-leaf { border-color: transparent; }
|
|
@@ -209,9 +209,12 @@ classes should alter those!
|
|
|
209
209
|
margin-bottom: 0;
|
|
210
210
|
display: inline-block;
|
|
211
211
|
max-width: 100%;
|
|
212
|
+
max-height: 2.4em;
|
|
212
213
|
overflow: hidden;
|
|
213
214
|
text-overflow: ellipsis;
|
|
214
|
-
|
|
215
|
+
white-space: normal;
|
|
216
|
+
line-height: 1.2;
|
|
217
|
+
vertical-align: middle;
|
|
215
218
|
}
|
|
216
219
|
.slick-header-sortable .slick-column-name { max-width: calc(100% - 1.25rem); }
|
|
217
220
|
.slick-header-column .slick-sort-indicator,
|
|
@@ -221,8 +224,8 @@ classes should alter those!
|
|
|
221
224
|
position: relative;
|
|
222
225
|
vertical-align: top;
|
|
223
226
|
margin: 0 0 0 .375rem;
|
|
224
|
-
height: var(--jsl-grid-header-height,
|
|
225
|
-
line-height: var(--jsl-grid-header-height,
|
|
227
|
+
height: var(--jsl-grid-header-height, 40px);
|
|
228
|
+
line-height: var(--jsl-grid-header-height, 40px);
|
|
226
229
|
color: var(--jsl-color-accent);
|
|
227
230
|
}
|
|
228
231
|
.slick-header-column .slick-sort-indicator { width: .65rem; }
|
package/lib/grid/slick.grid.css
CHANGED
|
@@ -46,10 +46,10 @@ classes should alter those!
|
|
|
46
46
|
float: left;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
/* Column headers
|
|
49
|
+
/* Column headers fit up to two lines; grouped headers retain their existing size. */
|
|
50
50
|
.slick-header-column.ui-state-default {
|
|
51
|
-
height: var(--jsl-grid-header-height,
|
|
52
|
-
line-height: var(--jsl-grid-header-height,
|
|
51
|
+
height: var(--jsl-grid-header-height, 40px);
|
|
52
|
+
line-height: var(--jsl-grid-header-height, 40px);
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
.slick-footerrow-column.ui-state-default {
|
package/lib/grid/slick.grid.js
CHANGED
|
@@ -28,7 +28,7 @@ export function SlickGrid(container, data, columns, options) {
|
|
|
28
28
|
alwaysShowHorizontalScroll: false,
|
|
29
29
|
alwaysAllowHorizontalScroll: false,
|
|
30
30
|
explicitInitialization: false,
|
|
31
|
-
rowHeight:
|
|
31
|
+
rowHeight: 40,
|
|
32
32
|
defaultColumnWidth: 80,
|
|
33
33
|
enableAddRow: false,
|
|
34
34
|
leaveSpaceForNewRows: false,
|