@warp-ds/elements 2.9.1-next.4 → 2.9.1-next.6

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.
Files changed (123) hide show
  1. package/dist/custom-elements.json +25 -20
  2. package/dist/docs/slider/examples.md +30 -75
  3. package/dist/docs/slider/slider.md +30 -75
  4. package/dist/docs/step/api.md +11 -9
  5. package/dist/docs/step/step.md +11 -15
  6. package/dist/docs/step-indicator/api.md +4 -4
  7. package/dist/docs/step-indicator/examples.md +81 -0
  8. package/dist/docs/step-indicator/step-indicator.md +97 -6
  9. package/dist/docs/step-indicator/usage.md +12 -0
  10. package/dist/docs/switch/accessibility.md +2 -0
  11. package/dist/docs/switch/api.md +11 -17
  12. package/dist/docs/switch/examples.md +16 -0
  13. package/dist/docs/switch/switch.md +36 -18
  14. package/dist/docs/switch/usage.md +6 -0
  15. package/dist/index.d.ts +64 -56
  16. package/dist/packages/affix/affix.react.stories.d.ts +3 -1
  17. package/dist/packages/affix/affix.react.test.d.ts +1 -0
  18. package/dist/packages/affix/affix.react.test.js +3 -0
  19. package/dist/packages/affix/react.d.ts +4 -1
  20. package/dist/packages/affix/react.js +7 -1
  21. package/dist/packages/attention/attention.react.test.d.ts +1 -0
  22. package/dist/packages/attention/attention.react.test.js +8 -0
  23. package/dist/packages/attention/react.d.ts +2 -2
  24. package/dist/packages/attention/react.js +10 -1
  25. package/dist/packages/button/button.react.stories.d.ts +8 -2
  26. package/dist/packages/button/button.react.test.d.ts +1 -0
  27. package/dist/packages/button/button.react.test.js +16 -0
  28. package/dist/packages/button/react.d.ts +5 -1
  29. package/dist/packages/button/react.js +8 -1
  30. package/dist/packages/checkbox-group/checkbox-group.react.test.d.ts +1 -0
  31. package/dist/packages/checkbox-group/checkbox-group.react.test.js +5 -0
  32. package/dist/packages/checkbox-group/react.d.ts +4 -1
  33. package/dist/packages/checkbox-group/react.js +7 -1
  34. package/dist/packages/combobox/combobox.react.stories.d.ts +20 -8
  35. package/dist/packages/combobox/combobox.react.test.d.ts +1 -0
  36. package/dist/packages/combobox/combobox.react.test.js +9 -0
  37. package/dist/packages/combobox/react.d.ts +13 -6
  38. package/dist/packages/combobox/react.js +11 -1
  39. package/dist/packages/datepicker/datepicker.react.stories.d.ts +18 -10
  40. package/dist/packages/datepicker/datepicker.react.test.d.ts +1 -0
  41. package/dist/packages/datepicker/datepicker.react.test.js +7 -0
  42. package/dist/packages/datepicker/react.d.ts +13 -8
  43. package/dist/packages/datepicker/react.js +9 -1
  44. package/dist/packages/expandable/expandable.react.stories.d.ts +12 -2
  45. package/dist/packages/expandable/expandable.react.test.d.ts +1 -0
  46. package/dist/packages/expandable/expandable.react.test.js +8 -0
  47. package/dist/packages/expandable/react.d.ts +7 -1
  48. package/dist/packages/expandable/react.js +10 -1
  49. package/dist/packages/link/link.react.stories.d.ts +6 -2
  50. package/dist/packages/link/link.react.test.d.ts +1 -0
  51. package/dist/packages/link/link.react.test.js +3 -0
  52. package/dist/packages/link/react.d.ts +4 -1
  53. package/dist/packages/link/react.js +7 -1
  54. package/dist/packages/modal/modal.react.stories.d.ts +10 -6
  55. package/dist/packages/modal/modal.react.test.d.ts +1 -0
  56. package/dist/packages/modal/modal.react.test.js +6 -0
  57. package/dist/packages/modal/react.d.ts +10 -6
  58. package/dist/packages/modal/react.js +8 -1
  59. package/dist/packages/modal-header/modal-header.react.test.d.ts +1 -0
  60. package/dist/packages/modal-header/modal-header.react.test.js +3 -0
  61. package/dist/packages/modal-header/react.d.ts +7 -4
  62. package/dist/packages/modal-header/react.js +7 -1
  63. package/dist/packages/page-indicator/page-indicator.react.stories.d.ts +8 -2
  64. package/dist/packages/page-indicator/page-indicator.react.test.d.ts +1 -0
  65. package/dist/packages/page-indicator/page-indicator.react.test.js +6 -0
  66. package/dist/packages/page-indicator/react.d.ts +5 -1
  67. package/dist/packages/page-indicator/react.js +8 -1
  68. package/dist/packages/pagination/pagination.react.stories.d.ts +14 -6
  69. package/dist/packages/pagination/pagination.react.test.d.ts +1 -0
  70. package/dist/packages/pagination/pagination.react.test.js +7 -0
  71. package/dist/packages/pagination/react.d.ts +9 -4
  72. package/dist/packages/pagination/react.js +9 -1
  73. package/dist/packages/pill/pill.react.stories.d.ts +20 -8
  74. package/dist/packages/pill/pill.react.test.d.ts +1 -0
  75. package/dist/packages/pill/pill.react.test.js +9 -0
  76. package/dist/packages/pill/react.d.ts +13 -6
  77. package/dist/packages/pill/react.js +11 -1
  78. package/dist/packages/radio-group/radio-group.react.test.d.ts +1 -0
  79. package/dist/packages/radio-group/radio-group.react.test.js +5 -0
  80. package/dist/packages/radio-group/react.d.ts +9 -6
  81. package/dist/packages/radio-group/react.js +7 -1
  82. package/dist/packages/select/react.d.ts +9 -4
  83. package/dist/packages/select/react.js +9 -1
  84. package/dist/packages/select/select.react.stories.d.ts +14 -6
  85. package/dist/packages/select/select.react.test.d.ts +1 -0
  86. package/dist/packages/select/select.react.test.js +7 -0
  87. package/dist/packages/slider/react.d.ts +6 -1
  88. package/dist/packages/slider/react.js +9 -1
  89. package/dist/packages/slider/slider.react.stories.d.ts +6 -1
  90. package/dist/packages/slider/slider.react.test.d.ts +1 -0
  91. package/dist/packages/slider/slider.react.test.js +7 -0
  92. package/dist/packages/slider-thumb/react.d.ts +8 -5
  93. package/dist/packages/slider-thumb/react.js +8 -1
  94. package/dist/packages/slider-thumb/slider-thumb.react.test.d.ts +1 -0
  95. package/dist/packages/slider-thumb/slider-thumb.react.test.js +6 -0
  96. package/dist/packages/step/step.d.ts +8 -4
  97. package/dist/packages/step/step.js.map +2 -2
  98. package/dist/packages/step-indicator/step-indicator.d.ts +5 -6
  99. package/dist/packages/step-indicator/step-indicator.js.map +2 -2
  100. package/dist/packages/switch/switch.d.ts +21 -8
  101. package/dist/packages/switch/switch.js +1 -1
  102. package/dist/packages/switch/switch.js.map +2 -2
  103. package/dist/packages/tab/react.d.ts +9 -6
  104. package/dist/packages/tab/react.js +7 -1
  105. package/dist/packages/tab/tab.react.test.d.ts +1 -0
  106. package/dist/packages/tab/tab.react.test.js +3 -0
  107. package/dist/packages/textarea/react.d.ts +16 -10
  108. package/dist/packages/textarea/react.js +10 -1
  109. package/dist/packages/textarea/textarea.react.stories.d.ts +22 -12
  110. package/dist/packages/textarea/textarea.react.test.d.ts +1 -0
  111. package/dist/packages/textarea/textarea.react.test.js +8 -0
  112. package/dist/packages/textfield/react.d.ts +16 -10
  113. package/dist/packages/textfield/react.js +10 -1
  114. package/dist/packages/textfield/textfield.react.stories.d.ts +22 -12
  115. package/dist/packages/textfield/textfield.react.test.d.ts +1 -0
  116. package/dist/packages/textfield/textfield.react.test.js +8 -0
  117. package/dist/tests/react-ssr-attributes.d.ts +8 -0
  118. package/dist/tests/react-ssr-attributes.js +12 -0
  119. package/dist/web-types.json +73 -15
  120. package/package.json +1 -1
  121. package/dist/docs/step/accessibility.md +0 -1
  122. package/dist/docs/step/examples.md +0 -1
  123. package/dist/docs/step/usage.md +0 -1
@@ -1,9 +1,14 @@
1
+ import React from 'react';
1
2
  import { WarpDatepicker } from './datepicker.js';
2
- export declare const DatePicker: import("@lit/react").ReactWebComponent<WarpDatepicker, {
3
- onChange: string;
4
- onchange: string;
5
- onBlur: string;
6
- onblur: string;
7
- onInput: string;
8
- oninput: string;
9
- }>;
3
+ export declare const DatePicker: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpDatepicker>, "value" | "input" | "form" | "label" | "name" | "locale" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "onblur" | "onchange" | "oninput" | "updated" | "resetFormControl" | "render" | "validationTarget" | "internals" | "showError" | "validationMessage" | "validity" | "validationComplete" | "checkValidity" | "formResetCallback" | "valueChangedCallback" | "validityCallback" | "validationMessageCallback" | "setValue" | "shouldFormValueUpdate" | "renderOptions" | "onBlur" | "onChange" | "onInput" | "month" | "calendar" | "wrapper" | "headerFormat" | "weekdayFormat" | "isDayDisabled" | "dayFormat" | "isCalendarOpen" | "navigationDate" | "selectedDate" | "weeks" | "toggleButton" | "previousMonthButton" | "todayCell" | "selectedCell"> & {
4
+ onChange?: (e: Event) => void;
5
+ onchange?: (e: Event) => void;
6
+ onBlur?: (e: Event) => void;
7
+ onblur?: (e: Event) => void;
8
+ onInput?: (e: Event) => void;
9
+ oninput?: (e: Event) => void;
10
+ } & Partial<Omit<WarpDatepicker, keyof HTMLElement>> & React.RefAttributes<WarpDatepicker>, "ref">, "header-format" | "weekday-format" | "day-format"> & {
11
+ headerFormat?: string;
12
+ weekdayFormat?: string;
13
+ dayFormat?: string;
14
+ } & React.RefAttributes<WarpDatepicker>>;
@@ -4,7 +4,7 @@ import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
7
- export const DatePicker = createComponent({
7
+ const BaseDatePicker = createComponent({
8
8
  tagName: 'w-datepicker',
9
9
  elementClass: Component,
10
10
  react: React,
@@ -17,3 +17,11 @@ export const DatePicker = createComponent({
17
17
  oninput: 'input',
18
18
  },
19
19
  });
20
+ export const DatePicker = React.forwardRef(({ headerFormat, weekdayFormat, dayFormat, ...props }, ref) => React.createElement(BaseDatePicker, {
21
+ ...props,
22
+ ...(headerFormat !== undefined ? { 'header-format': headerFormat } : {}),
23
+ ...(weekdayFormat !== undefined ? { 'weekday-format': weekdayFormat } : {}),
24
+ ...(dayFormat !== undefined ? { 'day-format': dayFormat } : {}),
25
+ ref,
26
+ }));
27
+ DatePicker.displayName = 'DatePicker';
@@ -3,8 +3,18 @@ import React from 'react';
3
3
  import { Expandable } from './react';
4
4
  declare const _default: {
5
5
  title: string;
6
- render(args: Omit<React.HTMLAttributes<import("./expandable").WarpExpandable>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "updated" | "firstUpdated" | "render" | "renderOptions" | "buttonClass" | "bleed" | "expanded" | "box" | "contentClass" | "noChevron" | "animated" | "headingLevel" | "_hasTitle" | "_showChevronUp" | "_expandableSlot"> & {} & Partial<Omit<import("./expandable").WarpExpandable, keyof HTMLElement>> & React.RefAttributes<import("./expandable").WarpExpandable>): React.JSX.Element;
7
- component: import("@lit/react").ReactWebComponent<import("./expandable").WarpExpandable, {}>;
6
+ render(args: Omit<Omit<Omit<React.HTMLAttributes<import("./expandable").WarpExpandable>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "updated" | "firstUpdated" | "render" | "renderOptions" | "buttonClass" | "bleed" | "expanded" | "box" | "contentClass" | "noChevron" | "animated" | "headingLevel" | "_hasTitle" | "_showChevronUp" | "_expandableSlot"> & {} & Partial<Omit<import("./expandable").WarpExpandable, keyof HTMLElement>> & React.RefAttributes<import("./expandable").WarpExpandable>, "ref">, "button-class" | "content-class" | "no-chevron" | "heading-level"> & {
7
+ buttonClass?: string;
8
+ contentClass?: string;
9
+ noChevron?: boolean;
10
+ headingLevel?: number;
11
+ } & React.RefAttributes<import("./expandable").WarpExpandable>): React.JSX.Element;
12
+ component: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<import("./expandable").WarpExpandable>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "updated" | "firstUpdated" | "render" | "renderOptions" | "buttonClass" | "bleed" | "expanded" | "box" | "contentClass" | "noChevron" | "animated" | "headingLevel" | "_hasTitle" | "_showChevronUp" | "_expandableSlot"> & {} & Partial<Omit<import("./expandable").WarpExpandable, keyof HTMLElement>> & React.RefAttributes<import("./expandable").WarpExpandable>, "ref">, "button-class" | "content-class" | "no-chevron" | "heading-level"> & {
13
+ buttonClass?: string;
14
+ contentClass?: string;
15
+ noChevron?: boolean;
16
+ headingLevel?: number;
17
+ } & React.RefAttributes<import("./expandable").WarpExpandable>>;
8
18
  };
9
19
  export default _default;
10
20
  export type Story = StoryObj<typeof Expandable>;
@@ -0,0 +1,8 @@
1
+ import { describeReactSsrAttributeMapping } from '../../tests/react-ssr-attributes';
2
+ import { Expandable } from './react.js';
3
+ describeReactSsrAttributeMapping('Expandable', Expandable, [
4
+ { propName: 'buttonClass', attrName: 'button-class', value: 'button-class-name' },
5
+ { propName: 'contentClass', attrName: 'content-class', value: 'content-class-name' },
6
+ { propName: 'noChevron', attrName: 'no-chevron' },
7
+ { propName: 'headingLevel', attrName: 'heading-level', value: 2 },
8
+ ]);
@@ -1,2 +1,8 @@
1
+ import React from 'react';
1
2
  import { WarpExpandable } from './expandable.js';
2
- export declare const Expandable: import("@lit/react").ReactWebComponent<WarpExpandable, {}>;
3
+ export declare const Expandable: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpExpandable>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "updated" | "firstUpdated" | "render" | "renderOptions" | "buttonClass" | "bleed" | "expanded" | "box" | "contentClass" | "noChevron" | "animated" | "headingLevel" | "_hasTitle" | "_showChevronUp" | "_expandableSlot"> & {} & Partial<Omit<WarpExpandable, keyof HTMLElement>> & React.RefAttributes<WarpExpandable>, "ref">, "button-class" | "content-class" | "no-chevron" | "heading-level"> & {
4
+ buttonClass?: string;
5
+ contentClass?: string;
6
+ noChevron?: boolean;
7
+ headingLevel?: number;
8
+ } & React.RefAttributes<WarpExpandable>>;
@@ -4,8 +4,17 @@ import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
7
- export const Expandable = createComponent({
7
+ const BaseExpandable = createComponent({
8
8
  tagName: 'w-expandable',
9
9
  elementClass: Component,
10
10
  react: React,
11
11
  });
12
+ export const Expandable = React.forwardRef(({ buttonClass, contentClass, noChevron, headingLevel, ...props }, ref) => React.createElement(BaseExpandable, {
13
+ ...props,
14
+ ...(buttonClass !== undefined ? { 'button-class': buttonClass } : {}),
15
+ ...(contentClass !== undefined ? { 'content-class': contentClass } : {}),
16
+ ...(noChevron ? { 'no-chevron': true } : {}),
17
+ ...(headingLevel !== undefined ? { 'heading-level': headingLevel } : {}),
18
+ ref,
19
+ }));
20
+ Expandable.displayName = 'Expandable';
@@ -3,8 +3,12 @@ import React from 'react';
3
3
  import { Link } from './react';
4
4
  declare const _default: {
5
5
  title: string;
6
- render(args: Omit<React.HTMLAttributes<import("./link").WarpLink>, "small" | "disabled" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "firstUpdated" | "render" | "renderOptions" | "target" | "rel" | "variant" | "href" | "fullWidth"> & {} & Partial<Omit<import("./link").WarpLink, keyof HTMLElement>> & React.RefAttributes<import("./link").WarpLink>): React.JSX.Element;
7
- component: import("@lit/react").ReactWebComponent<import("./link").WarpLink, {}>;
6
+ render(args: Omit<Omit<Omit<React.HTMLAttributes<import("./link").WarpLink>, "small" | "disabled" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "firstUpdated" | "render" | "renderOptions" | "target" | "rel" | "variant" | "href" | "fullWidth"> & {} & Partial<Omit<import("./link").WarpLink, keyof HTMLElement>> & React.RefAttributes<import("./link").WarpLink>, "ref">, "full-width"> & {
7
+ fullWidth?: boolean;
8
+ } & React.RefAttributes<import("./link").WarpLink>): React.JSX.Element;
9
+ component: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<import("./link").WarpLink>, "small" | "disabled" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "firstUpdated" | "render" | "renderOptions" | "target" | "rel" | "variant" | "href" | "fullWidth"> & {} & Partial<Omit<import("./link").WarpLink, keyof HTMLElement>> & React.RefAttributes<import("./link").WarpLink>, "ref">, "full-width"> & {
10
+ fullWidth?: boolean;
11
+ } & React.RefAttributes<import("./link").WarpLink>>;
8
12
  };
9
13
  export default _default;
10
14
  export type Story = StoryObj<typeof Link>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ import { describeReactSsrAttributeMapping } from '../../tests/react-ssr-attributes';
2
+ import { Link } from './react.js';
3
+ describeReactSsrAttributeMapping('Link', Link, [{ propName: 'fullWidth', attrName: 'full-width' }]);
@@ -1,2 +1,5 @@
1
+ import React from 'react';
1
2
  import { WarpLink } from './link.js';
2
- export declare const Link: import("@lit/react").ReactWebComponent<WarpLink, {}>;
3
+ export declare const Link: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpLink>, "small" | "disabled" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "firstUpdated" | "render" | "renderOptions" | "target" | "rel" | "variant" | "href" | "fullWidth"> & {} & Partial<Omit<WarpLink, keyof HTMLElement>> & React.RefAttributes<WarpLink>, "ref">, "full-width"> & {
4
+ fullWidth?: boolean;
5
+ } & React.RefAttributes<WarpLink>>;
@@ -4,8 +4,14 @@ import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
7
- export const Link = createComponent({
7
+ const BaseLink = createComponent({
8
8
  tagName: 'w-link',
9
9
  elementClass: Component,
10
10
  react: React,
11
11
  });
12
+ export const Link = React.forwardRef(({ fullWidth, ...props }, ref) => React.createElement(BaseLink, {
13
+ ...props,
14
+ ...(fullWidth ? { 'full-width': true } : {}),
15
+ ref,
16
+ }));
17
+ Link.displayName = 'Link';
@@ -1,13 +1,17 @@
1
1
  import { StoryObj } from '@storybook/react';
2
+ import React from 'react';
2
3
  import { Modal } from './react';
3
4
  declare const _default: {
4
5
  title: string;
5
- component: import("@lit/react").ReactWebComponent<import("./modal").ModalMain, {
6
- onShown: string;
7
- onshown: string;
8
- onHidden: string;
9
- onhidden: string;
10
- }>;
6
+ component: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<import("./modal").ModalMain>, "open" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "updated" | "render" | "renderOptions" | "show" | "close" | "contentId" | "ignoreBackdropClicks" | "dialogEl" | "dialogInnerEl" | "contentEl" | "onShown" | "onshown" | "onHidden" | "onhidden" | "handleListeners" | "eventPreventer" | "closeOnBackdropClick" | "interceptEscape" | "modifyBorderRadius" | "handleSlotChange"> & {
7
+ onShown?: (e: Event) => void;
8
+ onshown?: (e: Event) => void;
9
+ onHidden?: (e: Event) => void;
10
+ onhidden?: (e: Event) => void;
11
+ } & Partial<Omit<import("./modal").ModalMain, keyof HTMLElement>> & React.RefAttributes<import("./modal").ModalMain>, "ref">, "content-id" | "ignore-backdrop-clicks"> & {
12
+ contentId?: string;
13
+ ignoreBackdropClicks?: boolean;
14
+ } & React.RefAttributes<import("./modal").ModalMain>>;
11
15
  };
12
16
  export default _default;
13
17
  export type Story = StoryObj<typeof Modal>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ import { describeReactSsrAttributeMapping } from '../../tests/react-ssr-attributes';
2
+ import { Modal } from './react.js';
3
+ describeReactSsrAttributeMapping('Modal', Modal, [
4
+ { propName: 'contentId', attrName: 'content-id', value: 'modal-content' },
5
+ { propName: 'ignoreBackdropClicks', attrName: 'ignore-backdrop-clicks' },
6
+ ]);
@@ -1,9 +1,13 @@
1
+ import React from 'react';
1
2
  import { ModalMain as WarpModal } from './modal.js';
2
3
  export { ModalFooter } from '../modal-footer/react.js';
3
4
  export { ModalHeader } from '../modal-header/react.js';
4
- export declare const Modal: import("@lit/react").ReactWebComponent<WarpModal, {
5
- onShown: string;
6
- onshown: string;
7
- onHidden: string;
8
- onhidden: string;
9
- }>;
5
+ export declare const Modal: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpModal>, "open" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "updated" | "render" | "renderOptions" | "show" | "close" | "contentId" | "ignoreBackdropClicks" | "dialogEl" | "dialogInnerEl" | "contentEl" | "onShown" | "onshown" | "onHidden" | "onhidden" | "handleListeners" | "eventPreventer" | "closeOnBackdropClick" | "interceptEscape" | "modifyBorderRadius" | "handleSlotChange"> & {
6
+ onShown?: (e: Event) => void;
7
+ onshown?: (e: Event) => void;
8
+ onHidden?: (e: Event) => void;
9
+ onhidden?: (e: Event) => void;
10
+ } & Partial<Omit<WarpModal, keyof HTMLElement>> & React.RefAttributes<WarpModal>, "ref">, "content-id" | "ignore-backdrop-clicks"> & {
11
+ contentId?: string;
12
+ ignoreBackdropClicks?: boolean;
13
+ } & React.RefAttributes<WarpModal>>;
@@ -7,7 +7,7 @@ export { ModalHeader } from '../modal-header/react.js';
7
7
  // decouple from CDN by providing a dummy class
8
8
  class Component extends LitElement {
9
9
  }
10
- export const Modal = createComponent({
10
+ const BaseModal = createComponent({
11
11
  tagName: 'w-modal',
12
12
  elementClass: Component,
13
13
  react: React,
@@ -18,3 +18,10 @@ export const Modal = createComponent({
18
18
  onhidden: 'hidden',
19
19
  },
20
20
  });
21
+ export const Modal = React.forwardRef(({ contentId, ignoreBackdropClicks, ...props }, ref) => React.createElement(BaseModal, {
22
+ ...props,
23
+ ...(contentId !== undefined ? { 'content-id': contentId } : {}),
24
+ ...(ignoreBackdropClicks ? { 'ignore-backdrop-clicks': true } : {}),
25
+ ref,
26
+ }));
27
+ Modal.displayName = 'Modal';
@@ -0,0 +1,3 @@
1
+ import { describeReactSsrAttributeMapping } from '../../tests/react-ssr-attributes';
2
+ import { ModalHeader } from './react.js';
3
+ describeReactSsrAttributeMapping('ModalHeader', ModalHeader, [{ propName: 'noClose', attrName: 'no-close' }]);
@@ -1,5 +1,8 @@
1
+ import React from 'react';
1
2
  import { ModalHeader as WarpModalHeader } from './modal-header.js';
2
- export declare const ModalHeader: import("@lit/react").ReactWebComponent<WarpModalHeader, {
3
- onBackClicked: string;
4
- onbackClicked: string;
5
- }>;
3
+ export declare const ModalHeader: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpModalHeader>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "close" | "back" | "noClose" | "titleEl" | "willUpdate" | "titleClasses" | "backButton" | "closeButton" | "emitBack" | "handleTopSlotChange" | "onBackClicked" | "onbackClicked"> & {
4
+ onBackClicked?: (e: Event) => void;
5
+ onbackClicked?: (e: Event) => void;
6
+ } & Partial<Omit<WarpModalHeader, keyof HTMLElement>> & React.RefAttributes<WarpModalHeader>, "ref">, "no-close"> & {
7
+ noClose?: boolean;
8
+ } & React.RefAttributes<WarpModalHeader>>;
@@ -4,7 +4,7 @@ import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
7
- export const ModalHeader = createComponent({
7
+ const BaseModalHeader = createComponent({
8
8
  tagName: 'w-modal-header',
9
9
  elementClass: Component,
10
10
  react: React,
@@ -13,3 +13,9 @@ export const ModalHeader = createComponent({
13
13
  onbackClicked: 'backClicked',
14
14
  },
15
15
  });
16
+ export const ModalHeader = React.forwardRef(({ noClose, ...props }, ref) => React.createElement(BaseModalHeader, {
17
+ ...props,
18
+ ...(noClose ? { 'no-close': true } : {}),
19
+ ref,
20
+ }));
21
+ ModalHeader.displayName = 'ModalHeader';
@@ -3,8 +3,14 @@ import React from 'react';
3
3
  import { PageIndicator } from './react';
4
4
  declare const _default: {
5
5
  title: string;
6
- render: ({ pageCount, selectedPage }: Omit<React.HTMLAttributes<import("./page-indicator").WarpPageIndicator>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "selectedPage" | "pageCount"> & {} & Partial<Omit<import("./page-indicator").WarpPageIndicator, keyof HTMLElement>> & React.RefAttributes<import("./page-indicator").WarpPageIndicator>) => React.JSX.Element;
7
- component: import("@lit/react").ReactWebComponent<import("./page-indicator").WarpPageIndicator, {}>;
6
+ render: ({ pageCount, selectedPage }: Omit<Omit<Omit<React.HTMLAttributes<import("./page-indicator").WarpPageIndicator>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "selectedPage" | "pageCount"> & {} & Partial<Omit<import("./page-indicator").WarpPageIndicator, keyof HTMLElement>> & React.RefAttributes<import("./page-indicator").WarpPageIndicator>, "ref">, "selected-page" | "page-count"> & {
7
+ selectedPage?: number;
8
+ pageCount?: number;
9
+ } & React.RefAttributes<import("./page-indicator").WarpPageIndicator>) => React.JSX.Element;
10
+ component: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<import("./page-indicator").WarpPageIndicator>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "selectedPage" | "pageCount"> & {} & Partial<Omit<import("./page-indicator").WarpPageIndicator, keyof HTMLElement>> & React.RefAttributes<import("./page-indicator").WarpPageIndicator>, "ref">, "selected-page" | "page-count"> & {
11
+ selectedPage?: number;
12
+ pageCount?: number;
13
+ } & React.RefAttributes<import("./page-indicator").WarpPageIndicator>>;
8
14
  };
9
15
  export default _default;
10
16
  export type Story = StoryObj<typeof PageIndicator>;
@@ -0,0 +1,6 @@
1
+ import { describeReactSsrAttributeMapping } from '../../tests/react-ssr-attributes';
2
+ import { PageIndicator } from './react.js';
3
+ describeReactSsrAttributeMapping('PageIndicator', PageIndicator, [
4
+ { propName: 'selectedPage', attrName: 'selected-page', value: 1 },
5
+ { propName: 'pageCount', attrName: 'page-count', value: 5 },
6
+ ]);
@@ -1,2 +1,6 @@
1
+ import React from 'react';
1
2
  import { WarpPageIndicator } from './page-indicator.js';
2
- export declare const PageIndicator: import("@lit/react").ReactWebComponent<WarpPageIndicator, {}>;
3
+ export declare const PageIndicator: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpPageIndicator>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "selectedPage" | "pageCount"> & {} & Partial<Omit<WarpPageIndicator, keyof HTMLElement>> & React.RefAttributes<WarpPageIndicator>, "ref">, "selected-page" | "page-count"> & {
4
+ selectedPage?: number;
5
+ pageCount?: number;
6
+ } & React.RefAttributes<WarpPageIndicator>>;
@@ -4,8 +4,15 @@ import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
7
- export const PageIndicator = createComponent({
7
+ const BasePageIndicator = createComponent({
8
8
  tagName: 'w-page-indicator',
9
9
  elementClass: Component,
10
10
  react: React,
11
11
  });
12
+ export const PageIndicator = React.forwardRef(({ selectedPage, pageCount, ...props }, ref) => React.createElement(BasePageIndicator, {
13
+ ...props,
14
+ ...(selectedPage !== undefined ? { 'selected-page': selectedPage } : {}),
15
+ ...(pageCount !== undefined ? { 'page-count': pageCount } : {}),
16
+ ref,
17
+ }));
18
+ PageIndicator.displayName = 'PageIndicator';
@@ -3,14 +3,22 @@ import React from 'react';
3
3
  import { Pagination } from './react';
4
4
  declare const _default: {
5
5
  title: string;
6
- render(args: Omit<React.HTMLAttributes<import("./pagination").WarpPagination>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "baseUrl" | "pages" | "currentPageNumber" | "visiblePages" | "onPageClick" | "onpage-click" | "_currentPage" | "_visiblePages" | "shouldShowShowFirstPageButton" | "shouldShowPreviousPageButton" | "shouldShowNextPageButton" | "currentPageIndex" | "visiblePageNumbers"> & {
6
+ render(args: Omit<Omit<Omit<React.HTMLAttributes<import("./pagination").WarpPagination>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "baseUrl" | "pages" | "currentPageNumber" | "visiblePages" | "onPageClick" | "onpage-click" | "_currentPage" | "_visiblePages" | "shouldShowShowFirstPageButton" | "shouldShowPreviousPageButton" | "shouldShowNextPageButton" | "currentPageIndex" | "visiblePageNumbers"> & {
7
7
  onPageClick?: (e: Event) => void;
8
8
  'onpage-click'?: (e: Event) => void;
9
- } & Partial<Omit<import("./pagination").WarpPagination, keyof HTMLElement>> & React.RefAttributes<import("./pagination").WarpPagination>): React.JSX.Element;
10
- component: import("@lit/react").ReactWebComponent<import("./pagination").WarpPagination, {
11
- onPageClick: string;
12
- 'onpage-click': string;
13
- }>;
9
+ } & Partial<Omit<import("./pagination").WarpPagination, keyof HTMLElement>> & React.RefAttributes<import("./pagination").WarpPagination>, "ref">, "base-url" | "current-page" | "visible-pages"> & {
10
+ baseUrl?: string;
11
+ currentPageNumber?: number;
12
+ visiblePages?: number;
13
+ } & React.RefAttributes<import("./pagination").WarpPagination>): React.JSX.Element;
14
+ component: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<import("./pagination").WarpPagination>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "baseUrl" | "pages" | "currentPageNumber" | "visiblePages" | "onPageClick" | "onpage-click" | "_currentPage" | "_visiblePages" | "shouldShowShowFirstPageButton" | "shouldShowPreviousPageButton" | "shouldShowNextPageButton" | "currentPageIndex" | "visiblePageNumbers"> & {
15
+ onPageClick?: (e: Event) => void;
16
+ 'onpage-click'?: (e: Event) => void;
17
+ } & Partial<Omit<import("./pagination").WarpPagination, keyof HTMLElement>> & React.RefAttributes<import("./pagination").WarpPagination>, "ref">, "base-url" | "current-page" | "visible-pages"> & {
18
+ baseUrl?: string;
19
+ currentPageNumber?: number;
20
+ visiblePages?: number;
21
+ } & React.RefAttributes<import("./pagination").WarpPagination>>;
14
22
  };
15
23
  export default _default;
16
24
  export type Story = StoryObj<typeof Pagination>;
@@ -0,0 +1,7 @@
1
+ import { describeReactSsrAttributeMapping } from '../../tests/react-ssr-attributes';
2
+ import { Pagination } from './react.js';
3
+ describeReactSsrAttributeMapping('Pagination', Pagination, [
4
+ { propName: 'baseUrl', attrName: 'base-url', value: '/search?page=' },
5
+ { propName: 'currentPageNumber', attrName: 'current-page', value: 2 },
6
+ { propName: 'visiblePages', attrName: 'visible-pages', value: 5 },
7
+ ]);
@@ -1,5 +1,10 @@
1
+ import React from 'react';
1
2
  import { WarpPagination } from './pagination.js';
2
- export declare const Pagination: import("@lit/react").ReactWebComponent<WarpPagination, {
3
- onPageClick: string;
4
- 'onpage-click': string;
5
- }>;
3
+ export declare const Pagination: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpPagination>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "render" | "renderOptions" | "baseUrl" | "pages" | "currentPageNumber" | "visiblePages" | "onPageClick" | "onpage-click" | "_currentPage" | "_visiblePages" | "shouldShowShowFirstPageButton" | "shouldShowPreviousPageButton" | "shouldShowNextPageButton" | "currentPageIndex" | "visiblePageNumbers"> & {
4
+ onPageClick?: (e: Event) => void;
5
+ 'onpage-click'?: (e: Event) => void;
6
+ } & Partial<Omit<WarpPagination, keyof HTMLElement>> & React.RefAttributes<WarpPagination>, "ref">, "base-url" | "current-page" | "visible-pages"> & {
7
+ baseUrl?: string;
8
+ currentPageNumber?: number;
9
+ visiblePages?: number;
10
+ } & React.RefAttributes<WarpPagination>>;
@@ -4,7 +4,7 @@ import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
7
- export const Pagination = createComponent({
7
+ const BasePagination = createComponent({
8
8
  tagName: 'w-pagination',
9
9
  elementClass: Component,
10
10
  react: React,
@@ -13,3 +13,11 @@ export const Pagination = createComponent({
13
13
  'onpage-click': 'page-click',
14
14
  },
15
15
  });
16
+ export const Pagination = React.forwardRef(({ baseUrl, currentPageNumber, visiblePages, ...props }, ref) => React.createElement(BasePagination, {
17
+ ...props,
18
+ ...(baseUrl !== undefined ? { 'base-url': baseUrl } : {}),
19
+ ...(currentPageNumber !== undefined ? { 'current-page': currentPageNumber } : {}),
20
+ ...(visiblePages !== undefined ? { 'visible-pages': visiblePages } : {}),
21
+ ref,
22
+ }));
23
+ Pagination.displayName = 'Pagination';
@@ -3,18 +3,30 @@ import React from 'react';
3
3
  import { Pill } from './react';
4
4
  declare const _default: {
5
5
  title: string;
6
- render(args: Omit<React.HTMLAttributes<import("./pill").WarpPill>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "onclick" | "onclose" | "render" | "renderOptions" | "onClick" | "canClose" | "onClose" | "suggestion" | "openSrLabel" | "openAriaLabel" | "closeSrLabel" | "closeAriaLabel" | "openFilterSrText" | "removeFilterSrText" | "_labelClasses" | "_closeClasses" | "_onClick" | "_onClose"> & {
6
+ render(args: Omit<Omit<Omit<React.HTMLAttributes<import("./pill").WarpPill>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "onclick" | "onclose" | "render" | "renderOptions" | "onClick" | "canClose" | "onClose" | "suggestion" | "openSrLabel" | "openAriaLabel" | "closeSrLabel" | "closeAriaLabel" | "openFilterSrText" | "removeFilterSrText" | "_labelClasses" | "_closeClasses" | "_onClick" | "_onClose"> & {
7
7
  onClick?: (e: Event) => void;
8
8
  onclick?: (e: Event) => void;
9
9
  onClose?: (e: Event) => void;
10
10
  onclose?: (e: Event) => void;
11
- } & Partial<Omit<import("./pill").WarpPill, keyof HTMLElement>> & React.RefAttributes<import("./pill").WarpPill>): React.JSX.Element;
12
- component: import("@lit/react").ReactWebComponent<import("./pill").WarpPill, {
13
- onClick: string;
14
- onclick: string;
15
- onClose: string;
16
- onclose: string;
17
- }>;
11
+ } & Partial<Omit<import("./pill").WarpPill, keyof HTMLElement>> & React.RefAttributes<import("./pill").WarpPill>, "ref">, "can-close" | "open-sr-label" | "open-aria-label" | "close-sr-label" | "close-aria-label"> & {
12
+ canClose?: boolean;
13
+ openSrLabel?: string;
14
+ openAriaLabel?: string;
15
+ closeSrLabel?: string;
16
+ closeAriaLabel?: string;
17
+ } & React.RefAttributes<import("./pill").WarpPill>): React.JSX.Element;
18
+ component: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<import("./pill").WarpPill>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "onclick" | "onclose" | "render" | "renderOptions" | "onClick" | "canClose" | "onClose" | "suggestion" | "openSrLabel" | "openAriaLabel" | "closeSrLabel" | "closeAriaLabel" | "openFilterSrText" | "removeFilterSrText" | "_labelClasses" | "_closeClasses" | "_onClick" | "_onClose"> & {
19
+ onClick?: (e: Event) => void;
20
+ onclick?: (e: Event) => void;
21
+ onClose?: (e: Event) => void;
22
+ onclose?: (e: Event) => void;
23
+ } & Partial<Omit<import("./pill").WarpPill, keyof HTMLElement>> & React.RefAttributes<import("./pill").WarpPill>, "ref">, "can-close" | "open-sr-label" | "open-aria-label" | "close-sr-label" | "close-aria-label"> & {
24
+ canClose?: boolean;
25
+ openSrLabel?: string;
26
+ openAriaLabel?: string;
27
+ closeSrLabel?: string;
28
+ closeAriaLabel?: string;
29
+ } & React.RefAttributes<import("./pill").WarpPill>>;
18
30
  };
19
31
  export default _default;
20
32
  export type Story = StoryObj<typeof Pill>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ import { describeReactSsrAttributeMapping } from '../../tests/react-ssr-attributes';
2
+ import { Pill } from './react.js';
3
+ describeReactSsrAttributeMapping('Pill', Pill, [
4
+ { propName: 'canClose', attrName: 'can-close' },
5
+ { propName: 'openSrLabel', attrName: 'open-sr-label', value: 'Open' },
6
+ { propName: 'openAriaLabel', attrName: 'open-aria-label', value: 'Open' },
7
+ { propName: 'closeSrLabel', attrName: 'close-sr-label', value: 'Close' },
8
+ { propName: 'closeAriaLabel', attrName: 'close-aria-label', value: 'Close' },
9
+ ]);
@@ -1,7 +1,14 @@
1
+ import React from 'react';
1
2
  import { WarpPill } from './pill.js';
2
- export declare const Pill: import("@lit/react").ReactWebComponent<WarpPill, {
3
- onClick: string;
4
- onclick: string;
5
- onClose: string;
6
- onclose: string;
7
- }>;
3
+ export declare const Pill: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpPill>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "onclick" | "onclose" | "render" | "renderOptions" | "onClick" | "canClose" | "onClose" | "suggestion" | "openSrLabel" | "openAriaLabel" | "closeSrLabel" | "closeAriaLabel" | "openFilterSrText" | "removeFilterSrText" | "_labelClasses" | "_closeClasses" | "_onClick" | "_onClose"> & {
4
+ onClick?: (e: Event) => void;
5
+ onclick?: (e: Event) => void;
6
+ onClose?: (e: Event) => void;
7
+ onclose?: (e: Event) => void;
8
+ } & Partial<Omit<WarpPill, keyof HTMLElement>> & React.RefAttributes<WarpPill>, "ref">, "can-close" | "open-sr-label" | "open-aria-label" | "close-sr-label" | "close-aria-label"> & {
9
+ canClose?: boolean;
10
+ openSrLabel?: string;
11
+ openAriaLabel?: string;
12
+ closeSrLabel?: string;
13
+ closeAriaLabel?: string;
14
+ } & React.RefAttributes<WarpPill>>;
@@ -4,7 +4,7 @@ import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
7
- export const Pill = createComponent({
7
+ const BasePill = createComponent({
8
8
  tagName: 'w-pill',
9
9
  elementClass: Component,
10
10
  react: React,
@@ -15,3 +15,13 @@ export const Pill = createComponent({
15
15
  onclose: 'w-pill-close',
16
16
  },
17
17
  });
18
+ export const Pill = React.forwardRef(({ canClose, openSrLabel, openAriaLabel, closeSrLabel, closeAriaLabel, ...props }, ref) => React.createElement(BasePill, {
19
+ ...props,
20
+ ...(canClose ? { 'can-close': true } : {}),
21
+ ...(openSrLabel !== undefined ? { 'open-sr-label': openSrLabel } : {}),
22
+ ...(openAriaLabel !== undefined ? { 'open-aria-label': openAriaLabel } : {}),
23
+ ...(closeSrLabel !== undefined ? { 'close-sr-label': closeSrLabel } : {}),
24
+ ...(closeAriaLabel !== undefined ? { 'close-aria-label': closeAriaLabel } : {}),
25
+ ref,
26
+ }));
27
+ Pill.displayName = 'Pill';
@@ -0,0 +1,5 @@
1
+ import { describeReactSsrAttributeMapping } from '../../tests/react-ssr-attributes';
2
+ import { RadioGroup } from './react.js';
3
+ describeReactSsrAttributeMapping('RadioGroup', RadioGroup, [
4
+ { propName: 'helpText', attrName: 'help-text', value: 'Help text' },
5
+ ]);
@@ -1,7 +1,10 @@
1
+ import React from 'react';
1
2
  import { WRadioGroup } from './radio-group.js';
2
- export declare const RadioGroup: import("@lit/react").ReactWebComponent<WRadioGroup, {
3
- onInput: string;
4
- oninput: string;
5
- onChange: string;
6
- onchange: string;
7
- }>;
3
+ export declare const RadioGroup: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WRadioGroup>, "form" | "label" | "name" | "disabled" | "invalid" | "helpText" | "required" | "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "onchange" | "oninput" | "updated" | "resetFormControl" | "render" | "validationTarget" | "internals" | "showError" | "validationMessage" | "validity" | "validationComplete" | "checkValidity" | "formResetCallback" | "valueChangedCallback" | "validityCallback" | "validationMessageCallback" | "setValue" | "shouldFormValueUpdate" | "renderOptions" | "onChange" | "onInput" | "reportValidity" | "optional" | "hasInteracted"> & {
4
+ onInput?: (e: Event) => void;
5
+ oninput?: (e: Event) => void;
6
+ onChange?: (e: Event) => void;
7
+ onchange?: (e: Event) => void;
8
+ } & Partial<Omit<WRadioGroup, keyof HTMLElement>> & React.RefAttributes<WRadioGroup>, "ref">, "help-text"> & {
9
+ helpText?: string;
10
+ } & React.RefAttributes<WRadioGroup>>;
@@ -4,7 +4,7 @@ import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
7
- export const RadioGroup = createComponent({
7
+ const BaseRadioGroup = createComponent({
8
8
  tagName: 'w-radio-group',
9
9
  elementClass: Component,
10
10
  react: React,
@@ -15,3 +15,9 @@ export const RadioGroup = createComponent({
15
15
  onchange: 'change',
16
16
  },
17
17
  });
18
+ export const RadioGroup = React.forwardRef(({ helpText, ...props }, ref) => React.createElement(BaseRadioGroup, {
19
+ ...props,
20
+ ...(helpText !== undefined ? { 'help-text': helpText } : {}),
21
+ ref,
22
+ }));
23
+ RadioGroup.displayName = 'RadioGroup';