From c9e26f4124f3574185205dfb3633956655c615bb Mon Sep 17 00:00:00 2001 From: JC Franco Date: Wed, 23 Aug 2023 02:26:23 -0700 Subject: [PATCH] chore: add explainers to disabled jsx-sort-props on ref prop --- .../calcite-components/conventions/README.md | 2 +- .../src/components/action-bar/action-bar.tsx | 2 +- .../components/action-menu/action-menu.tsx | 2 +- .../src/components/action-pad/action-pad.tsx | 2 +- .../src/components/action/action.tsx | 2 +- .../src/components/alert/alert.tsx | 4 +-- .../src/components/checkbox/checkbox.tsx | 2 +- .../src/components/chip/chip.tsx | 4 +-- .../color-picker-hex-input.tsx | 4 +-- .../components/color-picker/color-picker.tsx | 12 ++++----- .../src/components/combobox/combobox.tsx | 8 +++--- .../date-picker-month-header.tsx | 2 +- .../date-picker-month/date-picker-month.tsx | 2 +- .../dropdown-item/dropdown-item.tsx | 2 +- .../src/components/dropdown/dropdown.tsx | 6 ++--- .../src/components/fab/fab.tsx | 2 +- .../src/components/filter/filter.tsx | 2 +- .../src/components/flow-item/flow-item.tsx | 4 +-- .../components/functional/ExpandToggle.tsx | 2 +- .../src/components/functional/XButton.tsx | 2 +- .../src/components/handle/handle.tsx | 2 +- .../inline-editable/inline-editable.tsx | 6 ++--- .../input-date-picker/input-date-picker.tsx | 14 +++++----- .../components/input-number/input-number.tsx | 2 +- .../src/components/input-text/input-text.tsx | 2 +- .../input-time-picker/input-time-picker.tsx | 6 ++--- .../input-time-zone/input-time-zone.tsx | 2 +- .../src/components/input/input.tsx | 4 +-- .../src/components/link/link.tsx | 2 +- .../src/components/list-item/list-item.tsx | 8 +++--- .../src/components/list/list.tsx | 2 +- .../src/components/menu-item/menu-item.tsx | 4 +-- .../src/components/modal/modal.tsx | 6 ++--- .../src/components/navigation/navigation.tsx | 2 +- .../src/components/notice/notice.tsx | 2 +- .../src/components/panel/panel.tsx | 6 ++--- .../pick-list-item/pick-list-item.tsx | 2 +- .../pick-list/shared-list-render.tsx | 4 +-- .../src/components/popover/popover.tsx | 6 ++--- .../components/radio-button/radio-button.tsx | 2 +- .../src/components/rating/rating.tsx | 2 +- .../segmented-control.e2e.ts | 4 +++ .../src/components/select/select.tsx | 2 +- .../components/shell-panel/shell-panel.tsx | 4 +-- .../src/components/slider/slider.tsx | 26 +++++++++---------- .../components/stepper-item/stepper-item.tsx | 2 +- .../src/components/switch/switch.tsx | 2 +- .../src/components/tab-nav/tab-nav.tsx | 6 ++--- .../src/components/tab-title/tab-title.tsx | 4 +-- .../src/components/text-area/text-area.tsx | 2 +- .../components/time-picker/time-picker.tsx | 8 +++--- .../components/tip-manager/tip-manager.tsx | 2 +- .../src/components/tooltip/tooltip.tsx | 4 +-- .../src/components/tree-item/tree-item.tsx | 2 +- .../value-list-item/value-list-item.tsx | 2 +- 55 files changed, 114 insertions(+), 110 deletions(-) diff --git a/packages/calcite-components/conventions/README.md b/packages/calcite-components/conventions/README.md index 1845302fc5a..f86368d715d 100644 --- a/packages/calcite-components/conventions/README.md +++ b/packages/calcite-components/conventions/README.md @@ -162,7 +162,7 @@ Due to a [bug in Stencil](https://github.com/ionic-team/stencil/issues/4074), `r class={CSS.foo} // ... tabIndex={0} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.storeSomeElementRef} /> ``` diff --git a/packages/calcite-components/src/components/action-bar/action-bar.tsx b/packages/calcite-components/src/components/action-bar/action-bar.tsx index 5ceec967901..142e07c27f4 100755 --- a/packages/calcite-components/src/components/action-bar/action-bar.tsx +++ b/packages/calcite-components/src/components/action-bar/action-bar.tsx @@ -384,7 +384,7 @@ export class ActionBar scale={scale} toggle={toggleExpand} tooltip={this.expandTooltip} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setExpandToggleRef} /> ) : null; diff --git a/packages/calcite-components/src/components/action-menu/action-menu.tsx b/packages/calcite-components/src/components/action-menu/action-menu.tsx index de448ab3b99..72ca5cdfcd4 100755 --- a/packages/calcite-components/src/components/action-menu/action-menu.tsx +++ b/packages/calcite-components/src/components/action-menu/action-menu.tsx @@ -273,7 +273,7 @@ export class ActionMenu implements LoadableComponent { scale={scale} text={label} textEnabled={expanded} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setDefaultMenuButtonEl} /> diff --git a/packages/calcite-components/src/components/action-pad/action-pad.tsx b/packages/calcite-components/src/components/action-pad/action-pad.tsx index eb7c11c9cb3..32a489edaa3 100755 --- a/packages/calcite-components/src/components/action-pad/action-pad.tsx +++ b/packages/calcite-components/src/components/action-pad/action-pad.tsx @@ -262,7 +262,7 @@ export class ActionPad scale={scale} toggle={toggleExpand} tooltip={this.expandTooltip} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setExpandToggleRef} /> ) : null; diff --git a/packages/calcite-components/src/components/action/action.tsx b/packages/calcite-components/src/components/action/action.tsx index 2b1279d509b..ef33a5bfbf8 100644 --- a/packages/calcite-components/src/components/action/action.tsx +++ b/packages/calcite-components/src/components/action/action.tsx @@ -310,7 +310,7 @@ export class Action class={buttonClasses} disabled={disabled} id={buttonId} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(buttonEl): HTMLButtonElement => (this.buttonEl = buttonEl)} > {this.renderIconContainer()} diff --git a/packages/calcite-components/src/components/alert/alert.tsx b/packages/calcite-components/src/components/alert/alert.tsx index e1ea3e37167..a183055d31a 100644 --- a/packages/calcite-components/src/components/alert/alert.tsx +++ b/packages/calcite-components/src/components/alert/alert.tsx @@ -212,7 +212,7 @@ export class Alert implements OpenCloseComponent, LoadableComponent, T9nComponen class="alert-close" onClick={this.closeAlert} type="button" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.closeButton = el)} > @@ -264,7 +264,7 @@ export class Alert implements OpenCloseComponent, LoadableComponent, T9nComponen }} onPointerEnter={this.autoClose && this.autoCloseTimeoutId ? this.handleMouseOver : null} onPointerLeave={this.autoClose && this.autoCloseTimeoutId ? this.handleMouseLeave : null} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setTransitionEl} > {requestedIcon ? ( diff --git a/packages/calcite-components/src/components/checkbox/checkbox.tsx b/packages/calcite-components/src/components/checkbox/checkbox.tsx index 4de56858a74..bdd54391236 100644 --- a/packages/calcite-components/src/components/checkbox/checkbox.tsx +++ b/packages/calcite-components/src/components/checkbox/checkbox.tsx @@ -265,7 +265,7 @@ export class Checkbox onFocus={this.onToggleFocus} role="checkbox" tabIndex={this.disabled ? undefined : 0} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(toggleEl) => (this.toggleEl = toggleEl)} >
@@ -794,7 +794,7 @@ export class ColorPicker
@@ -819,7 +819,7 @@ export class ColorPicker
diff --git a/packages/calcite-components/src/components/combobox/combobox.tsx b/packages/calcite-components/src/components/combobox/combobox.tsx index aa935735792..e51bd338342 100644 --- a/packages/calcite-components/src/components/combobox/combobox.tsx +++ b/packages/calcite-components/src/components/combobox/combobox.tsx @@ -1229,7 +1229,7 @@ export class Combobox onInput={this.inputHandler} placeholder={placeholder} type="text" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.textInput = el as HTMLInputElement)} /> @@ -1264,12 +1264,12 @@ export class Combobox "floating-ui-container": true, "floating-ui-container--active": open, }} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={setFloatingEl} >
    @@ -1337,7 +1337,7 @@ export class Combobox onClick={this.clickHandler} onKeyDown={this.keyDownHandler} role="combobox" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setReferenceEl} >
    diff --git a/packages/calcite-components/src/components/date-picker-month-header/date-picker-month-header.tsx b/packages/calcite-components/src/components/date-picker-month-header/date-picker-month-header.tsx index 457edeef090..0bc524ba1e9 100644 --- a/packages/calcite-components/src/components/date-picker-month-header/date-picker-month-header.tsx +++ b/packages/calcite-components/src/components/date-picker-month-header/date-picker-month-header.tsx @@ -165,7 +165,7 @@ export class DatePickerMonthHeader { pattern="\d*" type="text" value={localizedYear} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.yearInput = el)} /> {suffix && {suffix}} diff --git a/packages/calcite-components/src/components/date-picker-month/date-picker-month.tsx b/packages/calcite-components/src/components/date-picker-month/date-picker-month.tsx index a40c9e4524a..6559fdd091b 100644 --- a/packages/calcite-components/src/components/date-picker-month/date-picker-month.tsx +++ b/packages/calcite-components/src/components/date-picker-month/date-picker-month.tsx @@ -472,7 +472,7 @@ export class DatePickerMonth { selected={this.isSelected(date)} startOfRange={this.isStartOfRange(date)} value={date} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el: HTMLCalciteDatePickerDayElement) => { // when moving via keyboard, focus must be updated on active date if (ref && active && this.activeFocus) { diff --git a/packages/calcite-components/src/components/dropdown-item/dropdown-item.tsx b/packages/calcite-components/src/components/dropdown-item/dropdown-item.tsx index b362c01424d..9bb35dd4c20 100644 --- a/packages/calcite-components/src/components/dropdown-item/dropdown-item.tsx +++ b/packages/calcite-components/src/components/dropdown-item/dropdown-item.tsx @@ -162,7 +162,7 @@ export class DropdownItem implements LoadableComponent { rel={this.rel} tabIndex={-1} target={this.target} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.childLink = el)} > {slottedContent} diff --git a/packages/calcite-components/src/components/dropdown/dropdown.tsx b/packages/calcite-components/src/components/dropdown/dropdown.tsx index f5f3c041a85..b31570c4a5b 100644 --- a/packages/calcite-components/src/components/dropdown/dropdown.tsx +++ b/packages/calcite-components/src/components/dropdown/dropdown.tsx @@ -239,7 +239,7 @@ export class Dropdown id={`${guid}-menubutton`} onClick={this.openCalciteDropdown} onKeyDown={this.keyDownHandler} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setReferenceEl} > , @@ -212,7 +212,7 @@ export class InlineEditable onClick={this.confirmChangesHandler} scale={this.scale} type="button" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.confirmEditingButton = el)} />, ]} diff --git a/packages/calcite-components/src/components/input-date-picker/input-date-picker.tsx b/packages/calcite-components/src/components/input-date-picker/input-date-picker.tsx index 8e1070d5a57..c34ff9e4b08 100644 --- a/packages/calcite-components/src/components/input-date-picker/input-date-picker.tsx +++ b/packages/calcite-components/src/components/input-date-picker/input-date-picker.tsx @@ -515,7 +515,7 @@ export class InputDatePicker
    {!this.readOnly && this.renderToggleIcon(this.open && this.focusedInput === "start")} @@ -559,7 +559,7 @@ export class InputDatePicker }} id={this.dialogId} role="dialog" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setFloatingEl} >
    @@ -613,7 +613,7 @@ export class InputDatePicker
    {!this.readOnly && this.renderToggleIcon(this.open && this.focusedInput === "end")} diff --git a/packages/calcite-components/src/components/input-number/input-number.tsx b/packages/calcite-components/src/components/input-number/input-number.tsx index a14a339da22..4a7a7a5854c 100644 --- a/packages/calcite-components/src/components/input-number/input-number.tsx +++ b/packages/calcite-components/src/components/input-number/input-number.tsx @@ -1004,7 +1004,7 @@ export class InputNumber readOnly={this.readOnly} type="text" value={this.localizedValue} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setChildNumberElRef} /> ); diff --git a/packages/calcite-components/src/components/input-text/input-text.tsx b/packages/calcite-components/src/components/input-text/input-text.tsx index f857fd09af3..b20c6ec344f 100644 --- a/packages/calcite-components/src/components/input-text/input-text.tsx +++ b/packages/calcite-components/src/components/input-text/input-text.tsx @@ -653,7 +653,7 @@ export class InputText tabIndex={this.disabled || (this.inlineEditableEl && !this.editingEnabled) ? -1 : null} type="text" value={this.value} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setChildElRef} /> ); diff --git a/packages/calcite-components/src/components/input-time-picker/input-time-picker.tsx b/packages/calcite-components/src/components/input-time-picker/input-time-picker.tsx index b0c48d86e76..20649d58ed0 100644 --- a/packages/calcite-components/src/components/input-time-picker/input-time-picker.tsx +++ b/packages/calcite-components/src/components/input-time-picker/input-time-picker.tsx @@ -822,7 +822,7 @@ export class InputTimePicker role="combobox" scale={this.scale} step={this.step} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setCalciteInputEl} /> {!this.readOnly && this.renderToggleIcon(this.open)} @@ -839,7 +839,7 @@ export class InputTimePicker placement={this.placement} referenceElement={this.referenceElementId} triggerDisabled={true} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setCalcitePopoverEl} > diff --git a/packages/calcite-components/src/components/input-time-zone/input-time-zone.tsx b/packages/calcite-components/src/components/input-time-zone/input-time-zone.tsx index 18e70a6625e..2decb2cc1be 100644 --- a/packages/calcite-components/src/components/input-time-zone/input-time-zone.tsx +++ b/packages/calcite-components/src/components/input-time-zone/input-time-zone.tsx @@ -317,7 +317,7 @@ export class InputTimeZone overlayPositioning={this.overlayPositioning} scale={this.scale} selectionMode="single" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setComboboxRef} > {this.timeZoneGroups.map((group) => { diff --git a/packages/calcite-components/src/components/input/input.tsx b/packages/calcite-components/src/components/input/input.tsx index 6656655fb43..147ba5afdc6 100644 --- a/packages/calcite-components/src/components/input/input.tsx +++ b/packages/calcite-components/src/components/input/input.tsx @@ -1137,7 +1137,7 @@ export class Input readOnly={this.readOnly} type="text" value={this.localizedValue} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setChildNumberElRef} /> ) : null; @@ -1180,7 +1180,7 @@ export class Input } type={this.type} value={this.value} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setChildElRef} />, this.isTextarea ? ( diff --git a/packages/calcite-components/src/components/link/link.tsx b/packages/calcite-components/src/components/link/link.tsx index 041c7734cd2..c72cbb24321 100644 --- a/packages/calcite-components/src/components/link/link.tsx +++ b/packages/calcite-components/src/components/link/link.tsx @@ -127,7 +127,7 @@ export class Link implements InteractiveComponent, LoadableComponent { role={role} tabIndex={tabIndex} target={Tag === "a" && this.target} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.storeTagRef} > {this.iconStart ? iconStartEl : null} diff --git a/packages/calcite-components/src/components/list-item/list-item.tsx b/packages/calcite-components/src/components/list-item/list-item.tsx index 13eec92b2da..57695f934b4 100644 --- a/packages/calcite-components/src/components/list-item/list-item.tsx +++ b/packages/calcite-components/src/components/list-item/list-item.tsx @@ -412,7 +412,7 @@ export class ListItem hidden={!hasActionsStart} key="actions-start-container" role="gridcell" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.actionsStartEl = el)} > @@ -429,7 +429,7 @@ export class ListItem hidden={!(hasActionsEnd || closable)} key="actions-end-container" role="gridcell" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.actionsEndEl = el)} > @@ -514,7 +514,7 @@ export class ListItem key="content-container" onClick={this.itemClicked} role="gridcell" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.contentEl = el)} > {content} @@ -561,7 +561,7 @@ export class ListItem role="row" style={{ "--calcite-list-item-spacing-indent-multiplier": `${this.visualLevel}` }} tabIndex={active ? 0 : -1} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.containerEl = el)} > {this.renderDragHandle()} diff --git a/packages/calcite-components/src/components/list/list.tsx b/packages/calcite-components/src/components/list/list.tsx index 10faf27d8ee..4b614638446 100755 --- a/packages/calcite-components/src/components/list/list.tsx +++ b/packages/calcite-components/src/components/list/list.tsx @@ -419,7 +419,7 @@ export class List implements InteractiveComponent, LoadableComponent, SortableCo onCalciteFilterChange={this.handleFilterChange} placeholder={filterPlaceholder} value={filterText} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setFilterEl} /> (this.dropdownActionEl = el)} /> ); @@ -483,7 +483,7 @@ export class CalciteMenuItem implements LoadableComponent, T9nComponent, Localiz role="menuitem" tabIndex={this.isTopLevelItem ? 0 : -1} target={this.target} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.anchorEl = el)} > {this.renderItemContent(dir)} diff --git a/packages/calcite-components/src/components/modal/modal.tsx b/packages/calcite-components/src/components/modal/modal.tsx index e94ab4aaaa7..69cb37eb9ab 100644 --- a/packages/calcite-components/src/components/modal/modal.tsx +++ b/packages/calcite-components/src/components/modal/modal.tsx @@ -218,7 +218,7 @@ export class Modal class={{ [CSS.modal]: true, }} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setTransitionEl} >
    @@ -233,7 +233,7 @@ export class Modal [CSS.content]: true, [CSS.contentNoFooter]: !this.hasFooter, }} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.modalContent = el)} > @@ -286,7 +286,7 @@ export class Modal key="button" onClick={this.close} title={this.messages.close} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.closeButtonEl = el)} > (this.navigationActionEl = el)} /> )} diff --git a/packages/calcite-components/src/components/notice/notice.tsx b/packages/calcite-components/src/components/notice/notice.tsx index 3ac28953359..0de5f697909 100644 --- a/packages/calcite-components/src/components/notice/notice.tsx +++ b/packages/calcite-components/src/components/notice/notice.tsx @@ -150,7 +150,7 @@ export class Notice aria-label={this.messages.close} class={CSS.close} onClick={this.close} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.closeButton = el)} > diff --git a/packages/calcite-components/src/components/panel/panel.tsx b/packages/calcite-components/src/components/panel/panel.tsx index 66d15ccacbe..74d27ee072d 100644 --- a/packages/calcite-components/src/components/panel/panel.tsx +++ b/packages/calcite-components/src/components/panel/panel.tsx @@ -405,7 +405,7 @@ export class Panel onClick={close} text={text} title={text} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setCloseRef} /> ) : null; @@ -524,7 +524,7 @@ export class Panel
    @@ -551,7 +551,7 @@ export class Panel hidden={closed} onKeyDown={panelKeyDownHandler} tabIndex={closable ? 0 : -1} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setContainerRef} > {this.renderHeaderNode()} diff --git a/packages/calcite-components/src/components/pick-list-item/pick-list-item.tsx b/packages/calcite-components/src/components/pick-list-item/pick-list-item.tsx index d40b119c257..ba1b309291a 100644 --- a/packages/calcite-components/src/components/pick-list-item/pick-list-item.tsx +++ b/packages/calcite-components/src/components/pick-list-item/pick-list-item.tsx @@ -390,7 +390,7 @@ export class PickListItem onClick={this.pickListClickHandler} onKeyDown={this.pickListKeyDownHandler} tabIndex={0} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(focusEl): HTMLLabelElement => (this.focusEl = focusEl)} >
    ) : null} @@ -59,7 +59,7 @@ export const List: FunctionalComponent<{ props: ListProps } & DOMAttributes onCalciteFilterChange={handleFilterEvent} placeholder={filterPlaceholder} value={filterText} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={setFilterEl} /> ) : null} diff --git a/packages/calcite-components/src/components/popover/popover.tsx b/packages/calcite-components/src/components/popover/popover.tsx index 16e0e2e66aa..e0266a8d338 100644 --- a/packages/calcite-components/src/components/popover/popover.tsx +++ b/packages/calcite-components/src/components/popover/popover.tsx @@ -539,7 +539,7 @@ export class Popover onClick={this.hide} scale={this.scale} text={messages.close} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(closeButtonEl) => (this.closeButtonEl = closeButtonEl)} > @@ -573,7 +573,7 @@ export class Popover ) : null; @@ -592,7 +592,7 @@ export class Popover [FloatingCSS.animation]: true, [FloatingCSS.animationActive]: displayed, }} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setTransitionEl} > {arrowNode} diff --git a/packages/calcite-components/src/components/radio-button/radio-button.tsx b/packages/calcite-components/src/components/radio-button/radio-button.tsx index fc61dc4f21a..9339bcab7a3 100644 --- a/packages/calcite-components/src/components/radio-button/radio-button.tsx +++ b/packages/calcite-components/src/components/radio-button/radio-button.tsx @@ -507,7 +507,7 @@ export class RadioButton onFocus={this.onContainerFocus} role="radio" tabIndex={tabIndex} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.setContainerEl} >
    diff --git a/packages/calcite-components/src/components/rating/rating.tsx b/packages/calcite-components/src/components/rating/rating.tsx index 63c4ee3e870..ec5b9ac0e98 100644 --- a/packages/calcite-components/src/components/rating/rating.tsx +++ b/packages/calcite-components/src/components/rating/rating.tsx @@ -287,7 +287,7 @@ export class Rating onKeyDown={this.handleInputKeyDown} type="radio" value={value} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => { this.inputRefs[idx] = el; return ( diff --git a/packages/calcite-components/src/components/segmented-control/segmented-control.e2e.ts b/packages/calcite-components/src/components/segmented-control/segmented-control.e2e.ts index a6671f3b5c8..f3ed67bcb5c 100644 --- a/packages/calcite-components/src/components/segmented-control/segmented-control.e2e.ts +++ b/packages/calcite-components/src/components/segmented-control/segmented-control.e2e.ts @@ -363,4 +363,8 @@ describe("calcite-segmented-control", () => { ); }); }); + + describe("updates items when children are modified after initialization", () => { + // TODO: + }); }); diff --git a/packages/calcite-components/src/components/select/select.tsx b/packages/calcite-components/src/components/select/select.tsx index 36c30d3f561..c78334b0a2a 100644 --- a/packages/calcite-components/src/components/select/select.tsx +++ b/packages/calcite-components/src/components/select/select.tsx @@ -382,7 +382,7 @@ export class Select class={CSS.select} disabled={this.disabled} onChange={this.handleInternalSelectChange} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.storeSelectRef} > diff --git a/packages/calcite-components/src/components/shell-panel/shell-panel.tsx b/packages/calcite-components/src/components/shell-panel/shell-panel.tsx index 27e18c1a839..6ccc6537b82 100755 --- a/packages/calcite-components/src/components/shell-panel/shell-panel.tsx +++ b/packages/calcite-components/src/components/shell-panel/shell-panel.tsx @@ -278,7 +278,7 @@ export class ShellPanel implements ConditionalSlotComponent, LocalizedComponent, role="separator" tabIndex={0} touch-action="none" - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.connectSeparator} /> ) : null; @@ -308,7 +308,7 @@ export class ShellPanel implements ConditionalSlotComponent, LocalizedComponent, hidden={collapsed} key="content" style={style} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={this.storeContentEl} > {this.renderHeader()} diff --git a/packages/calcite-components/src/components/slider/slider.tsx b/packages/calcite-components/src/components/slider/slider.tsx index 16ca473c496..56c2c41676c 100644 --- a/packages/calcite-components/src/components/slider/slider.tsx +++ b/packages/calcite-components/src/components/slider/slider.tsx @@ -286,7 +286,7 @@ export class Slider role="slider" style={{ right: rightThumbOffset }} tabIndex={0} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.maxHandle = el as HTMLDivElement)} >
    @@ -312,7 +312,7 @@ export class Slider role="slider" style={{ right: rightThumbOffset }} tabIndex={0} - // eslint-disable-next-line react/jsx-sort-props + // eslint-disable-next-line react/jsx-sort-props -- ref should be last so node attrs/props are in sync (see https://github.com/Esri/calcite-design-system/pull/6530) ref={(el) => (this.maxHandle = el as HTMLDivElement)} >