@ncino/web-components 3.3.0-preview.2 → 3.3.0-preview.4
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/components/accordion/gator/base/accordion.gator.js +2 -2
- package/dist/components/button-group/gator/button-group.gator.js +20 -0
- package/dist/components/button-group/index.js +1 -0
- package/dist/components/chip/gator/chip.gator.js +2 -2
- package/dist/components/icon/gator/templates/cursor-arrow.js +14 -56
- package/dist/components/icon/gator/templates/cursor-hand.js +19 -42
- package/dist/components/menu/base/gator/menu.gator.js +4 -4
- package/dist/components/menu/menu-item/menu-item.js +1 -1
- package/dist/index.gator.js +1 -1
- package/dist/packages/web-components/src/components/button-group/gator/button-group.gator.scss.js +1 -0
- package/dist/types/components/accordion/gator/base/accordion.gator.d.ts +6 -0
- package/dist/types/components/button-group/gator/button-group.gator.d.ts +25 -0
- package/dist/types/components/button-group/gator/button-group.gator.test.d.ts +0 -0
- package/dist/types/components/button-group/index.d.ts +1 -0
- package/dist/types/components/chip/gator/chip.gator.d.ts +6 -0
- package/dist/types/components/menu/base/gator/menu.gator.d.ts +1 -1
- package/dist/types/index.gator.d.ts +1 -0
- package/package.json +1 -1
- package/web-types.json +418 -377
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import"../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js";import{html as
|
|
1
|
+
import"../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js";import{html as m}from"../../../../node_modules/.pnpm/lit-html@3.2.1/node_modules/lit-html/lit-html.js";import"../../../../node_modules/.pnpm/lit-element@4.1.1/node_modules/lit-element/lit-element.js";import p from"../../../../packages/web-components/src/components/menu/base/gator/menu.gator.scss.js";import g from"../../../../packages/web-components/src/components/menu/menu.tokens.scss.js";import{customElement as w}from"../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/custom-element.js";import{NjcMenu as _}from"../menu.js";import{handleDataTestid as l}from"../../../../utils/datatestid-utils.js";import{autoUpdate as b,computePosition as v}from"../../../../node_modules/.pnpm/@floating-ui_dom@1.6.13/node_modules/@floating-ui/dom/dist/floating-ui.dom.js";import{ref as c}from"../../../../node_modules/.pnpm/lit-html@3.2.1/node_modules/lit-html/directives/ref.js";import"../../menu-item/gator/menu-item.gator.js";import{unsafeCSS as f}from"../../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/css-tag.js";var y=Object.getOwnPropertyDescriptor,x=(e,o,i,r)=>{for(var t=r>1?void 0:r?y(o,i):o,s=e.length-1,n;s>=0;s--)(n=e[s])&&(t=n(t)||t);return t};let d=class extends _{constructor(){super(...arguments),this._dropdownRef=c()}render(){return m`
|
|
2
2
|
<div class="gator-dropdown-trigger" @focusout=${this._topLevelFocusOut}>
|
|
3
3
|
<slot @slotchange="${this.handleTriggerSlotChange}" name="trigger"></slot>
|
|
4
|
-
<div class="gator-dropdown" ${
|
|
5
|
-
<ul class="gator_dropdown__list" role="menu" aria-label="${this.menuAriaLabel}">
|
|
4
|
+
<div class="gator-dropdown" ${c(this._dropdownRef)}>
|
|
5
|
+
<ul class="gator_dropdown__list" role="menu" aria-label="${this.menuAriaLabel}" @keydown=${this.handleMenuKeydown}>
|
|
6
6
|
<slot @slotchange="${this.handleItemSlotChange}"></slot>
|
|
7
7
|
</ul>
|
|
8
8
|
</div>
|
|
9
9
|
</div>
|
|
10
|
-
`}updated(){var
|
|
10
|
+
`}updated(){var o;const e=(o=this.shadowRoot)==null?void 0:o.querySelector("[role=menu]");l(e,this.dataTestid,"dropdown"),this._dropdownRef.value&&Object.assign(this._dropdownRef.value.style,{display:this.open?"unset":"none"})}handleTriggerSlotChange(e){e.target.assignedElements().forEach(r=>{var t,s,n,u,h;this._button=(t=r.shadowRoot)==null?void 0:t.querySelector("button"),(s=this._button)==null||s.setAttribute("aria-haspopup","true"),(n=this._button)==null||n.setAttribute("aria-expanded",this.open?"true":"false"),l(this._button,this.dataTestid,"button"),(u=this._button)==null||u.addEventListener("click",()=>{var a;this.open=!this.open,this.focusFirstMenuItem(),(a=this._button)==null||a.setAttribute("aria-expanded",this.open?"true":"false"),this.assignPosition()}),(h=this._button)==null||h.addEventListener("keydown",a=>{a.key==="ArrowDown"&&(this.open=!0,this.focusFirstMenuItem())})})}handleMenuKeydown(e){var o;e.key==="ArrowDown"||e.key==="ArrowRight"?this.handleArrowDown(e):e.key==="ArrowUp"||e.key==="ArrowLeft"?this.handleArrowUp(e):e.key==="Tab"?this.handleClose():e.key==="Escape"&&(this.handleClose(),(o=this._button)==null||o.focus())}handleArrowDown(e){var s;e.preventDefault();const o=this.querySelectorAll("ngc-list-item"),i=this.querySelector(":focus");let t=Array.from(o).indexOf(i)+1;t>o.length-1&&(t=0),(s=o[t])==null||s.focus()}focusFirstMenuItem(){setTimeout(()=>{var o;(o=this.querySelectorAll("ngc-list-item")[0])==null||o.focus()})}focusTriggerButton(){requestAnimationFrame(()=>{var e;(e=this._button)==null||e.focus()})}handleItemSlotChange(e){const i=e.target.assignedElements();for(let[r,t]of i.entries()){const s=t.tagName.toLowerCase();if(s==="ngc-menu-item"||s==="ngc-submenu"){t.addEventListener("menuitemclick",()=>{this.handleClose()}),l(t,this.dataTestid,`menu-item-${r}`);let n=t==null?void 0:t.querySelector("ngc-list-item");r===0?n==null||n.setAttribute("tabindex","0"):n==null||n.setAttribute("tabindex","-1")}}}handleArrowUp(e){var s;e.preventDefault();const o=this.querySelectorAll("ngc-list-item"),i=this.querySelector(":focus");let t=Array.from(o).indexOf(i)-1;t<0&&(t=o.length-1),(s=o[t])==null||s.focus()}handleClose(){var e;this.open=!1,(e=this._button)==null||e.setAttribute("aria-expanded","false"),this.focusTriggerButton()}_topLevelFocusOut(e){e.relatedTarget||(this.open=!1)}assignPosition(){const e=this._button;!this._dropdownRef||!this._dropdownRef.value||!e||b(e,this._dropdownRef.value,async()=>{if(!this._dropdownRef||!this._dropdownRef.value||!e)return;const{x:o,y:i,placement:r}=await v(e,this._dropdownRef.value,{placement:this.placement});let t=r==="bottom"?4:-4;Object.assign(this._dropdownRef.value.style,{left:`${o}px`,top:`${i+t}px`})})}};d.styles=[f(p),f(g)];d=x([w("ngc-menu")],d);export{d as NgcMenu};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js";import"../../../node_modules/.pnpm/lit-html@3.2.1/node_modules/lit-html/lit-html.js";import{LitElement as
|
|
1
|
+
import"../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/reactive-element.js";import"../../../node_modules/.pnpm/lit-html@3.2.1/node_modules/lit-html/lit-html.js";import{LitElement as m}from"../../../node_modules/.pnpm/lit-element@4.1.1/node_modules/lit-element/lit-element.js";import{property as p}from"../../../node_modules/.pnpm/@lit_reactive-element@2.0.4/node_modules/@lit/reactive-element/decorators/property.js";import{KEY_CONSTANTS as o}from"../../../consts/key-constants.js";var a=Object.defineProperty,l=(r,t,s,v)=>{for(var e=void 0,n=r.length-1,i;n>=0;n--)(i=r[n])&&(e=i(t,s,e)||e);return e&&a(t,s,e),e};class u extends m{constructor(){super(...arguments),this.value=""}handleItemKeydown(t){(t.key===o.SPACE||t.key===o.ENTER)&&this.sendEvent()}handleItemClick(){this.sendEvent()}sendEvent(){this.dispatchEvent(new CustomEvent("menuitemclick",{bubbles:!0,composed:!0,detail:{value:this.value}}))}}l([p({type:String})],u.prototype,"value");export{u as NjcMenuItem};
|
package/dist/index.gator.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as o from"./components/accordion/gator/base/accordion.gator.js";import*as t from"./components/accordion/gator/group/accordion-group.gator.js";import*as r from"./components/alert/gator/base/alert.gator.js";import*as a from"./components/alert/gator/subtitle/alert-subtitle.gator.js";import*as e from"./components/alert/gator/title/alert-title.gator.js";import*as p from"./components/avatar/gator/avatar.gator.js";import"./components/badge/slds/badge.slds.js";import*as n from"./components/badge/gator/badge.gator.js";import*as s from"./components/banner/gator/banner.gator.js";import*as m from"./components/boolean/boolean.gator.js";import*as g from"./components/breadcrumbs/gator/container/breadcrumbs.gator.js";import"./components/button/slds/button.slds.js";import*as i from"./components/button/gator/button.gator.js";import*as x from"./components/button-card/gator/button-card.gator.js";import*as l from"./components/card/gator/base/card.gator.js";import*as d from"./components/card/gator/header/card-header.gator.js";import*as
|
|
1
|
+
import*as o from"./components/accordion/gator/base/accordion.gator.js";import*as t from"./components/accordion/gator/group/accordion-group.gator.js";import*as r from"./components/alert/gator/base/alert.gator.js";import*as a from"./components/alert/gator/subtitle/alert-subtitle.gator.js";import*as e from"./components/alert/gator/title/alert-title.gator.js";import*as p from"./components/avatar/gator/avatar.gator.js";import"./components/badge/slds/badge.slds.js";import*as n from"./components/badge/gator/badge.gator.js";import*as s from"./components/banner/gator/banner.gator.js";import*as m from"./components/boolean/boolean.gator.js";import*as g from"./components/breadcrumbs/gator/container/breadcrumbs.gator.js";import"./components/button/slds/button.slds.js";import*as i from"./components/button/gator/button.gator.js";import*as x from"./components/button-card/gator/button-card.gator.js";import*as u from"./components/button-group/gator/button-group.gator.js";import*as l from"./components/card/gator/base/card.gator.js";import*as d from"./components/card/gator/header/card-header.gator.js";import*as f from"./components/card/gator/content/card-content.gator.js";import*as N from"./components/card/gator/footer/card-footer.gator.js";import*as b from"./components/checkbox/checkbox.gator.js";import*as C from"./components/checkbox-group/checkbox-group.gator.js";import*as h from"./components/chip/gator/chip.gator.js";import*as B from"./components/display-card/gator/display-card.gator.js";import*as T from"./components/divider/gator/divider.gator.js";import*as I from"./components/fab/gator/fab.gator.js";import*as k from"./components/headline-card/gator/headline-card.gator.js";import*as G from"./components/input/gator/input-currency/input-currency.gator.js";import*as L from"./components/input/gator/input-label/input-label.gator.js";import*as S from"./components/input/gator/help-text/help-text.gator.js";import*as v from"./components/input/gator/input-text/input-text.gator.js";import*as w from"./components/input/gator/input-textarea/input-textarea.gator.js";import*as P from"./components/input/gator/input-masked/input-masked.gator.js";import*as F from"./components/input/gator/input-phone/input-phone.gator.js";import*as D from"./components/input/gator/dropdown/input-dropdown.gator.js";import*as H from"./components/input/gator/input-file/input-file.gator.js";import*as y from"./components/input/gator/input-file/file-uploaded-preview/file-upload-preview.gator.js";import*as A from"./components/input/gator/input-search/input-search.gator.js";import"./components/icon/slds/icon.slds.js";import*as U from"./components/icon/gator/icon.gator.js";import*as R from"./components/icon-button/gator/icon-button.gator.js";import*as j from"./components/list/gator/list/list.gator.js";import*as q from"./components/list/gator/list-item/list-item.gator.js";import*as z from"./components/loading-spinner/gator/loading-spinner.gator.js";import"./components/menu/base/slds/menu.slds.js";import*as J from"./components/menu/base/gator/menu.gator.js";import"./components/menu/menu-divider/menu-divider.slds.js";import"./components/menu/menu-item/slds/menu-item.slds.js";import*as Q from"./components/menu/menu-item/gator/menu-item.gator.js";import"./components/menu/menu-submenu/menu-submenu.slds.js";import*as W from"./components/modal/gator/modal.gator.js";import*as X from"./components/page-header/gator/page-header.gator.js";import*as Y from"./components/panel/gator/panel.gator.js";import*as Z from"./components/progress-bar/gator/progress-bar.gator.js";import*as $ from"./components/radio/radio.gator.js";import*as oo from"./components/radio-group/radio-group.gator.js";import*as to from"./components/selection-box/selection-box.gator.js";import*as ro from"./components/selection-box-group/selection-box-group.gator.js";import*as ao from"./components/skeleton-loader/gator/skeleton-loader.gator.js";import*as eo from"./components/switch/gator/switch.gator.js";import*as po from"./components/tabs/gator/tabset/tabset.gator.js";import*as _o from"./components/tabs/gator/tab/tab.gator.js";import*as no from"./components/text-detail/gator/text-detail.gator.js";import*as so from"./components/text-link/gator/text-link.gator.js";import*as mo from"./components/toast/gator/base/toast.gator.js";import*as go from"./components/tooltip/gator/tooltip.gator.js";import"./components/tooltip/slds/tooltip.slds.js";import*as io from"./components/table/gator/table.gator.js";import*as xo from"./components/table/gator/table-controls/table-controls.gator.js";export{o as NgcAccordion,t as NgcAccordionGroup,r as NgcAlert,a as NgcAlertSubtitle,e as NgcAlertTitle,p as NgcAvatar,n as NgcBadge,s as NgcBanner,m as NgcBoolean,g as NgcBreadcrumbs,i as NgcButton,x as NgcButtonCard,u as NgcButtonGroup,l as NgcCard,f as NgcCardContent,N as NgcCardFooter,d as NgcCardHeader,b as NgcCheckbox,C as NgcCheckboxGroup,h as NgcChip,B as NgcDisplayCard,T as NgcDivider,I as NgcFab,k as NgcHeadlineCard,S as NgcHelpText,U as NgcIcon,R as NgcIconButton,G as NgcInputCurrency,D as NgcInputDropdown,H as NgcInputFile,y as NgcInputFileUploadedPreview,L as NgcInputLabel,P as NgcInputMasked,F as NgcInputPhone,A as NgcInputSearch,v as NgcInputText,w as NgcInputTextarea,j as NgcList,q as NgcListItem,z as NgcLoadingSpinner,J as NgcMenu,Q as NgcMenuItem,W as NgcModal,X as NgcPageHeader,Y as NgcPanel,Z as NgcProgressBar,$ as NgcRadio,oo as NgcRadioGroup,to as NgcSelectionBox,ro as NgcSelectionBoxGroup,ao as NgcSkeletonLoader,eo as NgcSwitch,_o as NgcTab,io as NgcTable,xo as NgcTableControls,po as NgcTabs,no as NgcTextDetail,so as NgcTextLink,mo as NgcToast,go as NgcTooltip};
|
package/dist/packages/web-components/src/components/button-group/gator/button-group.gator.scss.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const o=".gator-button-group{display:flex;align-items:center;gap:var(--ngc-button-group-gap, 1rem)}.gator-button-group_horizontal{flex-direction:row}.gator-button-group_stacked{flex-direction:column}::slotted(.gator-button-group_overflow){display:flex;position:absolute;visibility:hidden;height:auto;overflow:hidden;white-space:nowrap}";export{o as default};
|
|
@@ -3,6 +3,12 @@ import { NjcAccordion } from '../../accordion.ts';
|
|
|
3
3
|
* @slot - The content within the expandable body of the accordion
|
|
4
4
|
*/
|
|
5
5
|
export declare class NgcAccordion extends NjcAccordion {
|
|
6
|
+
static shadowRootOptions: {
|
|
7
|
+
delegatesFocus: boolean;
|
|
8
|
+
mode: ShadowRootMode;
|
|
9
|
+
serializable?: boolean;
|
|
10
|
+
slotAssignment?: SlotAssignmentMode;
|
|
11
|
+
};
|
|
6
12
|
static styles: import('lit').CSSResult[];
|
|
7
13
|
private _insideCard;
|
|
8
14
|
constructor();
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { PropertyValueMap } from 'lit';
|
|
2
|
+
import { NgcComponent } from '../../../utils/components/ngc-component';
|
|
3
|
+
import { NJC_BUTTON_SIZES } from '../../button/button';
|
|
4
|
+
export type NGC_BUTTON_GROUP_ORIENTATION = 'horizontal' | 'stacked';
|
|
5
|
+
export declare class NgcButtonGroup extends NgcComponent {
|
|
6
|
+
orientation: NGC_BUTTON_GROUP_ORIENTATION;
|
|
7
|
+
size: NJC_BUTTON_SIZES;
|
|
8
|
+
static styles: import('lit').CSSResult[];
|
|
9
|
+
private overflowButtons;
|
|
10
|
+
private _overflowMenuIconWidth;
|
|
11
|
+
protected firstUpdated(_changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void;
|
|
12
|
+
protected updated(_changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): Promise<void>;
|
|
13
|
+
render(): import('lit').TemplateResult<1>;
|
|
14
|
+
private handleSlotChange;
|
|
15
|
+
get overflowMenuPlacement(): "top" | "bottom-end";
|
|
16
|
+
getMenuItemText(button: Element): string;
|
|
17
|
+
private calculateOverflow;
|
|
18
|
+
private setButtonSizes;
|
|
19
|
+
private getOverflowMenuIconSize;
|
|
20
|
+
}
|
|
21
|
+
declare global {
|
|
22
|
+
interface HTMLElementTagNameMap {
|
|
23
|
+
'ngc-button-group': NgcButtonGroup;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * as NgcButtonGroup from './gator/button-group.gator.ts';
|
|
@@ -3,6 +3,12 @@ import { NjcChip } from '../chip.ts';
|
|
|
3
3
|
* @slot - The content within the button
|
|
4
4
|
*/
|
|
5
5
|
export declare class NgcChip extends NjcChip {
|
|
6
|
+
static shadowRootOptions: {
|
|
7
|
+
delegatesFocus: boolean;
|
|
8
|
+
mode: ShadowRootMode;
|
|
9
|
+
serializable?: boolean;
|
|
10
|
+
slotAssignment?: SlotAssignmentMode;
|
|
11
|
+
};
|
|
6
12
|
static styles: import('lit').CSSResult[];
|
|
7
13
|
render(): import('lit').TemplateResult<1>;
|
|
8
14
|
get chipMarkup(): import('lit').TemplateResult<1>;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { NjcMenu } from '../menu.ts';
|
|
2
2
|
export declare class NgcMenu extends NjcMenu {
|
|
3
3
|
static styles: import('lit').CSSResult[];
|
|
4
|
-
private _setListeners;
|
|
5
4
|
private _button;
|
|
6
5
|
private _dropdownRef;
|
|
7
6
|
render(): import('lit').TemplateResult<1>;
|
|
8
7
|
updated(): void;
|
|
9
8
|
handleTriggerSlotChange(e: Event): void;
|
|
9
|
+
handleMenuKeydown(e: KeyboardEvent): void;
|
|
10
10
|
handleArrowDown(e: KeyboardEvent): void;
|
|
11
11
|
focusFirstMenuItem(): void;
|
|
12
12
|
focusTriggerButton(): void;
|
|
@@ -7,6 +7,7 @@ export { NgcBoolean } from './components/boolean';
|
|
|
7
7
|
export { NgcBreadcrumbs } from './components/breadcrumbs';
|
|
8
8
|
export { NgcButton } from './components/button';
|
|
9
9
|
export { NgcButtonCard } from './components/button-card';
|
|
10
|
+
export { NgcButtonGroup } from './components/button-group';
|
|
10
11
|
export { NgcCard, NgcCardHeader, NgcCardContent, NgcCardFooter } from './components/card';
|
|
11
12
|
export { NgcCheckbox } from './components/checkbox';
|
|
12
13
|
export { NgcCheckboxGroup } from './components/checkbox-group';
|
package/package.json
CHANGED