blue-web 1.17.0 → 1.17.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.
- package/dist/js/dialog.bundle.js.LICENSE.txt +5 -0
- package/dist/js/select-list.bundle.js +1 -1
- package/dist/js/select-list.d.ts +1 -0
- package/dist/js/select-list.js +2 -1
- package/dist/merged.scss +87 -17
- package/dist/style.css +73 -14
- package/dist/style.css.map +1 -1
- package/dist/style.min.css +3 -3
- package/dist/style.scss +1 -1
- package/dist/styles/_collapse.scss +0 -10
- package/dist/styles/_devexpress.scss +104 -0
- package/dist/styles/_tabs.scss +15 -2
- package/package.json +3 -3
- package/dist/styles/_devexpress.css +0 -37
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";class t extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),this.shadowRoot.innerHTML='<slot style="border-radius: inherit"></slot>',this.activeIndex=-1,this.items=[],this.inputElement=null}connectedCallback(){this.setAttribute("role","listbox"),this.tabIndex=-1,this.updateItems();const t=this.getAttribute("for");this.inputElement=t?document.getElementById(t):null,this.inputElement&&(this.inputElement.setAttribute("role","combobox"),this.inputElement.setAttribute("aria-controls",this.id),this.inputElement.setAttribute("aria-
|
|
1
|
+
(()=>{"use strict";class t extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),this.shadowRoot.innerHTML='<slot style="border-radius: inherit"></slot>',this.activeIndex=-1,this.items=[],this.inputElement=null}connectedCallback(){this.setAttribute("role","listbox"),this.tabIndex=-1,this.updateItems();const t=this.getAttribute("for");this.inputElement=t?document.getElementById(t):null,this.inputElement&&(this.inputElement.setAttribute("role","combobox"),this.inputElement.setAttribute("aria-controls",this.id),this.inputElement.setAttribute("aria-expanded","true"),this.inputElement.addEventListener("keydown",this.onKeyDown.bind(this))),this.addEventListener("keydown",this.onKeyDown.bind(this)),this.addEventListener("click",(t=>{const e=t.target instanceof Element?t.target.closest("[data-blue-select-list-index]"):null;if(e&&e.hasAttribute("data-blue-select-list-index")){const t=Number(e.getAttribute("data-blue-select-list-index"));this.select(t)}}))}updateItems(){this.items=Array.from(this.children),this.items.forEach(((t,e)=>{t.hasAttribute("id")||t.setAttribute("id",`${this.id}-option-${e}`),t.setAttribute("data-blue-select-list-index",e.toString()),t.setAttribute("aria-selected","false"),t.setAttribute("role","option"),t.tabIndex=-1}))}onKeyDown(t){if(console.log("select-list onKeyDown"),this.items.length)if("ArrowDown"===t.key)t.preventDefault(),this.activeIndex=(this.activeIndex+1)%this.items.length,this.updateActiveItem();else if("ArrowUp"===t.key)t.preventDefault(),this.activeIndex=(this.activeIndex-1+this.items.length)%this.items.length,this.updateActiveItem();else if("Enter"===t.key&&this.activeIndex>=0){const t=this.items[this.activeIndex];t?.click()}}updateActiveItem(){this.items.forEach(((t,e)=>{const i=e===this.activeIndex;t.classList.toggle("active",i),t.setAttribute("aria-selected",i.toString())}));const t=this.items[this.activeIndex];t&&this.inputElement&&(this.inputElement.setAttribute("aria-activedescendant",t.id),t.scrollIntoView({block:"nearest"}))}select(t){this.activeIndex=t,this.updateActiveItem();const e=this.items[t];e&&(this.dispatchEvent(new CustomEvent("bl-select",{detail:{index:t,item:e},bubbles:!0,composed:!0})),e.click())}}customElements.define("bl-select-list",t)})();
|
package/dist/js/select-list.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* A Web Component that provides a keyboard-accessible selectable list, typically used for dropdowns or autocomplete lists.
|
|
3
|
+
* Together with `popover` and CSS Anchoring, it's also useful to create a dropdown list.
|
|
3
4
|
* Supports keyboard navigation and selection, and integrates with an input element for combobox behavior.
|
|
4
5
|
*
|
|
5
6
|
* The Web Component will automatically set attributes for accessibility.
|
package/dist/js/select-list.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* A Web Component that provides a keyboard-accessible selectable list, typically used for dropdowns or autocomplete lists.
|
|
3
|
+
* Together with `popover` and CSS Anchoring, it's also useful to create a dropdown list.
|
|
3
4
|
* Supports keyboard navigation and selection, and integrates with an input element for combobox behavior.
|
|
4
5
|
*
|
|
5
6
|
* The Web Component will automatically set attributes for accessibility.
|
|
@@ -36,7 +37,6 @@ export class SelectList extends HTMLElement {
|
|
|
36
37
|
if (this.inputElement) {
|
|
37
38
|
this.inputElement.setAttribute("role", "combobox");
|
|
38
39
|
this.inputElement.setAttribute("aria-controls", this.id);
|
|
39
|
-
this.inputElement.setAttribute("aria-autocomplete", "list");
|
|
40
40
|
this.inputElement.setAttribute("aria-expanded", "true");
|
|
41
41
|
this.inputElement.addEventListener("keydown", this.onKeyDown.bind(this));
|
|
42
42
|
}
|
|
@@ -62,6 +62,7 @@ export class SelectList extends HTMLElement {
|
|
|
62
62
|
});
|
|
63
63
|
}
|
|
64
64
|
onKeyDown(e) {
|
|
65
|
+
console.log("select-list onKeyDown");
|
|
65
66
|
if (!this.items.length) return;
|
|
66
67
|
if (e.key === "ArrowDown") {
|
|
67
68
|
e.preventDefault();
|
package/dist/merged.scss
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Blue Web v1.17.
|
|
2
|
+
* Blue Web v1.17.2 (https://bruegmann.github.io/blue-web)
|
|
3
3
|
* Licensed under GNU General Public License v3.0 (https://github.com/bruegmann/blue-web/blob/master/LICENSE).
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -11839,6 +11839,19 @@ body {
|
|
|
11839
11839
|
@include make-grid-columns-cq();
|
|
11840
11840
|
}
|
|
11841
11841
|
|
|
11842
|
+
// Customize style of Bootstrap's nav-underline
|
|
11843
|
+
.nav-underline {
|
|
11844
|
+
.nav-link {
|
|
11845
|
+
--#{$prefix}nav-link-color: var(--#{$prefix}list-group-action-color);
|
|
11846
|
+
}
|
|
11847
|
+
|
|
11848
|
+
.nav-link.active,
|
|
11849
|
+
.show > .nav-link {
|
|
11850
|
+
font-weight: var(--blue-tabs-underline-active-font-weight, $font-weight-semibold);
|
|
11851
|
+
border-bottom-color: var(--blue-tabs-underline-active-border-bottom-color, $primary);
|
|
11852
|
+
}
|
|
11853
|
+
}
|
|
11854
|
+
|
|
11842
11855
|
.blue-tabs {
|
|
11843
11856
|
display: flex;
|
|
11844
11857
|
flex-wrap: wrap;
|
|
@@ -11893,9 +11906,9 @@ input.blue-tab:checked + .blue-tab-content {
|
|
|
11893
11906
|
.blue-tabs.nav-underline {
|
|
11894
11907
|
row-gap: 0;
|
|
11895
11908
|
.blue-tab:checked {
|
|
11896
|
-
font-weight: var(--blue-tabs-underline-active-font-weight,
|
|
11909
|
+
font-weight: var(--blue-tabs-underline-active-font-weight, $font-weight-semibold);
|
|
11897
11910
|
color: var(--bs-nav-underline-link-active-color);
|
|
11898
|
-
border-bottom-color: var(--blue-tabs-underline-active-border-bottom-color,
|
|
11911
|
+
border-bottom-color: var(--blue-tabs-underline-active-border-bottom-color, $primary);
|
|
11899
11912
|
}
|
|
11900
11913
|
}
|
|
11901
11914
|
|
|
@@ -12159,16 +12172,6 @@ dialog.blue-modal:has(.offcanvas-start) {
|
|
|
12159
12172
|
&[open] > summary > .blue-collapse-header > .blue-collapse-chevron,
|
|
12160
12173
|
&[open] > summary > .blue-collapse-chevron {
|
|
12161
12174
|
--blue-collapse-chevron-rotate: 90deg;
|
|
12162
|
-
|
|
12163
|
-
// If chevron is on the end, rotate has to be -90deg
|
|
12164
|
-
&:is(:last-child) {
|
|
12165
|
-
--blue-collapse-chevron-rotate: -90deg;
|
|
12166
|
-
}
|
|
12167
|
-
|
|
12168
|
-
&:is(:first-child) {
|
|
12169
|
-
--blue-collapse-chevron-rotate: 90deg;
|
|
12170
|
-
}
|
|
12171
|
-
|
|
12172
12175
|
transform: rotate(var(--blue-collapse-chevron-rotate));
|
|
12173
12176
|
}
|
|
12174
12177
|
|
|
@@ -12366,8 +12369,64 @@ dialog.blue-modal:has(.offcanvas-start) {
|
|
|
12366
12369
|
--dxbl-toolbar-btn-border-radius: var(--bs-border-radius) !important;
|
|
12367
12370
|
--dxbl-dropdown-border-radius: var(--bs-border-radius) !important;
|
|
12368
12371
|
--dxbl-btn-border-radius: var(--bs-border-radius) !important;
|
|
12372
|
+
--dxbl-context-menu-border-radius: var(--bs-border-radius) !important;
|
|
12369
12373
|
--dxbl-btn-padding-x: 0.75rem !important;
|
|
12370
12374
|
--dxbl-btn-padding-y: 0.375rem !important;
|
|
12375
|
+
|
|
12376
|
+
--dxbl-btn-font-size: 1rem;
|
|
12377
|
+
--dxbl-checkbox-font-size: 1rem;
|
|
12378
|
+
--dxbl-calendar-font-size: 1rem;
|
|
12379
|
+
--dxbl-listbox-font-size: 1rem;
|
|
12380
|
+
--dxbl-list-box-font-size: 1rem;
|
|
12381
|
+
--dxbl-list-box-item-drag-hint-font-size: 1rem;
|
|
12382
|
+
--dxbl-color-palette-font-size: 1rem;
|
|
12383
|
+
--dxbl-text-edit-font-size: 1rem;
|
|
12384
|
+
--dxbl-edit-dropdown-font-size: 1rem;
|
|
12385
|
+
--dxbl-pager-font-size: 1rem;
|
|
12386
|
+
--dxbl-grid-font-size: 1rem;
|
|
12387
|
+
--dxbl-grid-draggable-header-font-size: 1rem;
|
|
12388
|
+
--dxbl-grid-row-drag-hint-font-size: 1rem;
|
|
12389
|
+
--dxbl-flyout-font-size: 1rem;
|
|
12390
|
+
--dxbl-popup-font-size: 1rem;
|
|
12391
|
+
--dxbl-dropdown-font-size: 1rem;
|
|
12392
|
+
--dxbl-window-font-size: 1rem;
|
|
12393
|
+
--dxbl-group-font-size: 1rem;
|
|
12394
|
+
--dxbl-fl-font-size: 1rem;
|
|
12395
|
+
--dxbl-fl-group-font-size: 1rem;
|
|
12396
|
+
--dxbl-fl-tab-group-font-size: 1rem;
|
|
12397
|
+
--dxbl-fl-tab-group-content-font-size: 1rem;
|
|
12398
|
+
--dxbl-toolbar-font-size: 1rem;
|
|
12399
|
+
--dxbl-tabs-font-size: 1rem;
|
|
12400
|
+
--dxbl-tabs-content-font-size: 1rem;
|
|
12401
|
+
--dxbl-accordion-group-font-size: 1rem;
|
|
12402
|
+
--dxbl-accordion-group-item-font-size: 1rem;
|
|
12403
|
+
--dxbl-accordion-group-header-font-size: 1rem;
|
|
12404
|
+
--dxbl-treeview-font-size: 1rem;
|
|
12405
|
+
--dxbl-navigation-badge-font-size: 1rem;
|
|
12406
|
+
--dxbl-radio-group-font-size: 1rem;
|
|
12407
|
+
--dxbl-context-menu-font-size: 1rem;
|
|
12408
|
+
--dxbl-menu-item-font-size: 1rem;
|
|
12409
|
+
--dxbl-scheduler-font-size: 1rem;
|
|
12410
|
+
--dxbl-toast-text-font-size: 1rem;
|
|
12411
|
+
--dxbl-toast-header-font-size: 1rem;
|
|
12412
|
+
--dxbl-drawer-panel-font-size: 1rem;
|
|
12413
|
+
--dxbl-progress-bar-label-font-size: 1rem;
|
|
12414
|
+
--dxbl-pivot-font-size: 1rem;
|
|
12415
|
+
--dxbl-pivot-field-font-size: 1rem;
|
|
12416
|
+
--dxbl-pivot-header-font-size: 1rem;
|
|
12417
|
+
--dxbl-pivot-total-font-size: 1rem;
|
|
12418
|
+
--dxbl-pivot-table-font-size: 1rem;
|
|
12419
|
+
--dxbl-pivot-table-header-field-font-size: 1rem;
|
|
12420
|
+
--dxbl-pivot-table-row-field-font-size: 1rem;
|
|
12421
|
+
--dxbl-pivot-table-total-font-size: 1rem;
|
|
12422
|
+
--dx-chatui-message-font-size: 1rem;
|
|
12423
|
+
--dx-chatui-suggestion-item-title-font-size: 1rem;
|
|
12424
|
+
--dx-chatui-attachment-list-item-font-size: 1rem;
|
|
12425
|
+
--dx-chatui-suggestion-item-text-font-size: 1rem;
|
|
12426
|
+
--dxbl-message-box-body-text-font-size: 1rem;
|
|
12427
|
+
--dxbl-message-box-header-font-size: 1rem;
|
|
12428
|
+
--dxbl-splitter-font-size: 1rem;
|
|
12429
|
+
--dxbl-filter-builder-font-size: 1rem;
|
|
12371
12430
|
}
|
|
12372
12431
|
|
|
12373
12432
|
.dxbl-grid {
|
|
@@ -12375,10 +12434,6 @@ dialog.blue-modal:has(.offcanvas-start) {
|
|
|
12375
12434
|
border: none;
|
|
12376
12435
|
}
|
|
12377
12436
|
|
|
12378
|
-
.dxbl-text-edit {
|
|
12379
|
-
font-size: 1rem;
|
|
12380
|
-
}
|
|
12381
|
-
|
|
12382
12437
|
.dxbl-pager-page-edit {
|
|
12383
12438
|
min-width: 2.5em;
|
|
12384
12439
|
}
|
|
@@ -12392,6 +12447,21 @@ body.modal-open .dxbl-popup-cell[style="z-index: 1050;"] {
|
|
|
12392
12447
|
z-index: 1056 !important;
|
|
12393
12448
|
}
|
|
12394
12449
|
|
|
12450
|
+
@if ($enable-button-pointers: false) {
|
|
12451
|
+
.dxbl-context-menu.dxbl-context-menu-dropdown
|
|
12452
|
+
> .dxbl-dropdown-body
|
|
12453
|
+
ul
|
|
12454
|
+
li:not(.dxbl-context-menu-separator)
|
|
12455
|
+
> .dxbl-context-menu-item,
|
|
12456
|
+
.dxbl-context-menu-submenu.dxbl-context-menu-dropdown
|
|
12457
|
+
> .dxbl-dropdown-body
|
|
12458
|
+
ul
|
|
12459
|
+
li:not(.dxbl-context-menu-separator)
|
|
12460
|
+
> .dxbl-context-menu-item {
|
|
12461
|
+
cursor: default;
|
|
12462
|
+
}
|
|
12463
|
+
}
|
|
12464
|
+
|
|
12395
12465
|
:root {
|
|
12396
12466
|
--bs-font-sans-serif: Inter, #{$font-family-sans-serif};
|
|
12397
12467
|
font-feature-settings:
|