tyrell-react 1.0.0-RC12 → 1.0.0-RC13

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 (129) hide show
  1. package/README.md +1 -0
  2. package/dist/components/TyButton.d.ts.map +1 -1
  3. package/dist/components/TyButton.js +2 -1
  4. package/dist/components/TyButton.js.map +1 -1
  5. package/dist/components/TyCalendar.d.ts +5 -0
  6. package/dist/components/TyCalendar.d.ts.map +1 -1
  7. package/dist/components/TyCalendar.js +6 -2
  8. package/dist/components/TyCalendar.js.map +1 -1
  9. package/dist/components/TyCalendarMonth.d.ts +5 -0
  10. package/dist/components/TyCalendarMonth.d.ts.map +1 -1
  11. package/dist/components/TyCalendarMonth.js +5 -2
  12. package/dist/components/TyCalendarMonth.js.map +1 -1
  13. package/dist/components/TyCalendarNavigation.d.ts.map +1 -1
  14. package/dist/components/TyCalendarNavigation.js +2 -1
  15. package/dist/components/TyCalendarNavigation.js.map +1 -1
  16. package/dist/components/TyCheckbox.d.ts +4 -1
  17. package/dist/components/TyCheckbox.d.ts.map +1 -1
  18. package/dist/components/TyCheckbox.js +2 -1
  19. package/dist/components/TyCheckbox.js.map +1 -1
  20. package/dist/components/TyCopy.d.ts +4 -1
  21. package/dist/components/TyCopy.d.ts.map +1 -1
  22. package/dist/components/TyCopy.js +2 -1
  23. package/dist/components/TyCopy.js.map +1 -1
  24. package/dist/components/TyDatePicker.d.ts +11 -4
  25. package/dist/components/TyDatePicker.d.ts.map +1 -1
  26. package/dist/components/TyDatePicker.js +2 -1
  27. package/dist/components/TyDatePicker.js.map +1 -1
  28. package/dist/components/TyFileUpload.d.ts.map +1 -1
  29. package/dist/components/TyFileUpload.js +2 -1
  30. package/dist/components/TyFileUpload.js.map +1 -1
  31. package/dist/components/TyInput.d.ts +6 -2
  32. package/dist/components/TyInput.d.ts.map +1 -1
  33. package/dist/components/TyInput.js +2 -1
  34. package/dist/components/TyInput.js.map +1 -1
  35. package/dist/components/TyModal.d.ts +5 -0
  36. package/dist/components/TyModal.d.ts.map +1 -1
  37. package/dist/components/TyModal.js +5 -2
  38. package/dist/components/TyModal.js.map +1 -1
  39. package/dist/components/TyOption.d.ts +2 -2
  40. package/dist/components/TyOption.d.ts.map +1 -1
  41. package/dist/components/TyOption.js +2 -1
  42. package/dist/components/TyOption.js.map +1 -1
  43. package/dist/components/TyPopup.d.ts.map +1 -1
  44. package/dist/components/TyPopup.js +2 -1
  45. package/dist/components/TyPopup.js.map +1 -1
  46. package/dist/components/TyRadio.d.ts +4 -1
  47. package/dist/components/TyRadio.d.ts.map +1 -1
  48. package/dist/components/TyRadio.js +2 -1
  49. package/dist/components/TyRadio.js.map +1 -1
  50. package/dist/components/TyRadioGroup.d.ts +4 -1
  51. package/dist/components/TyRadioGroup.d.ts.map +1 -1
  52. package/dist/components/TyRadioGroup.js +2 -1
  53. package/dist/components/TyRadioGroup.js.map +1 -1
  54. package/dist/components/TyResizeObserver.d.ts.map +1 -1
  55. package/dist/components/TyResizeObserver.js +2 -1
  56. package/dist/components/TyResizeObserver.js.map +1 -1
  57. package/dist/components/TyScrollContainer.d.ts.map +1 -1
  58. package/dist/components/TyScrollContainer.js +2 -1
  59. package/dist/components/TyScrollContainer.js.map +1 -1
  60. package/dist/components/TySelect.d.ts +41 -2
  61. package/dist/components/TySelect.d.ts.map +1 -1
  62. package/dist/components/TySelect.js +32 -7
  63. package/dist/components/TySelect.js.map +1 -1
  64. package/dist/components/TyStep.d.ts.map +1 -1
  65. package/dist/components/TyStep.js +2 -1
  66. package/dist/components/TyStep.js.map +1 -1
  67. package/dist/components/TySwitch.d.ts +4 -1
  68. package/dist/components/TySwitch.d.ts.map +1 -1
  69. package/dist/components/TySwitch.js +2 -1
  70. package/dist/components/TySwitch.js.map +1 -1
  71. package/dist/components/TyTab.d.ts.map +1 -1
  72. package/dist/components/TyTab.js +2 -1
  73. package/dist/components/TyTab.js.map +1 -1
  74. package/dist/components/TyTabs.d.ts.map +1 -1
  75. package/dist/components/TyTabs.js +2 -1
  76. package/dist/components/TyTabs.js.map +1 -1
  77. package/dist/components/TyTag.d.ts +4 -1
  78. package/dist/components/TyTag.d.ts.map +1 -1
  79. package/dist/components/TyTag.js +2 -1
  80. package/dist/components/TyTag.js.map +1 -1
  81. package/dist/components/TyTextarea.d.ts.map +1 -1
  82. package/dist/components/TyTextarea.js +2 -1
  83. package/dist/components/TyTextarea.js.map +1 -1
  84. package/dist/components/TyTooltip.d.ts +4 -1
  85. package/dist/components/TyTooltip.d.ts.map +1 -1
  86. package/dist/components/TyTooltip.js +2 -1
  87. package/dist/components/TyTooltip.js.map +1 -1
  88. package/dist/components/TyWizard.d.ts.map +1 -1
  89. package/dist/components/TyWizard.js +2 -1
  90. package/dist/components/TyWizard.js.map +1 -1
  91. package/dist/components/index.d.ts +1 -1
  92. package/dist/components/index.d.ts.map +1 -1
  93. package/dist/components/index.js +1 -1
  94. package/dist/components/index.js.map +1 -1
  95. package/dist/utils/host-props.d.ts +11 -0
  96. package/dist/utils/host-props.d.ts.map +1 -0
  97. package/dist/utils/host-props.js +16 -0
  98. package/dist/utils/host-props.js.map +1 -0
  99. package/dist/version.d.ts +1 -1
  100. package/dist/version.js +1 -1
  101. package/package.json +1 -1
  102. package/src/components/TyButton.tsx +2 -1
  103. package/src/components/TyCalendar.tsx +14 -2
  104. package/src/components/TyCalendarMonth.tsx +11 -2
  105. package/src/components/TyCalendarNavigation.tsx +2 -1
  106. package/src/components/TyCheckbox.tsx +6 -2
  107. package/src/components/TyCopy.tsx +6 -2
  108. package/src/components/TyDatePicker.tsx +15 -6
  109. package/src/components/TyFileUpload.tsx +2 -1
  110. package/src/components/TyInput.tsx +8 -3
  111. package/src/components/TyModal.tsx +10 -1
  112. package/src/components/TyOption.tsx +4 -3
  113. package/src/components/TyPopup.tsx +2 -1
  114. package/src/components/TyRadio.tsx +6 -2
  115. package/src/components/TyRadioGroup.tsx +6 -2
  116. package/src/components/TyResizeObserver.tsx +2 -1
  117. package/src/components/TyScrollContainer.tsx +2 -1
  118. package/src/components/TySelect.tsx +78 -13
  119. package/src/components/TyStep.tsx +2 -1
  120. package/src/components/TySwitch.tsx +6 -2
  121. package/src/components/TyTab.tsx +2 -1
  122. package/src/components/TyTabs.tsx +2 -1
  123. package/src/components/TyTag.tsx +6 -2
  124. package/src/components/TyTextarea.tsx +2 -1
  125. package/src/components/TyTooltip.tsx +6 -2
  126. package/src/components/TyWizard.tsx +2 -1
  127. package/src/components/index.ts +1 -1
  128. package/src/utils/host-props.ts +14 -0
  129. package/src/version.ts +1 -1
@@ -1,6 +1,10 @@
1
1
  import React, { useEffect, useRef } from 'react';
2
+ import { hostProps } from '../utils/host-props';
2
3
  import { useBooleanProperty } from '../utils/use-boolean-prop';
3
4
 
5
+ type BuiltinFlavor = 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'neutral';
6
+ type ShadedFlavor = BuiltinFlavor | `${BuiltinFlavor}+` | `${BuiltinFlavor}-`;
7
+
4
8
  // Type definitions for Ty Tooltip component
5
9
  export interface TyTooltipProps extends React.HTMLAttributes<HTMLElement> {
6
10
  /** Tooltip positioning relative to the parent element */
@@ -16,7 +20,7 @@ export interface TyTooltipProps extends React.HTMLAttributes<HTMLElement> {
16
20
  disabled?: boolean;
17
21
 
18
22
  /** Semantic styling variant */
19
- flavor?: 'dark' | 'light' | 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'neutral';
23
+ flavor?: 'dark' | 'light' | 'info' | ShadedFlavor | (string & {});
20
24
 
21
25
  /** Tooltip content */
22
26
  children?: React.ReactNode;
@@ -48,7 +52,7 @@ export const TyTooltip = React.forwardRef<HTMLElement, TyTooltipProps>(
48
52
 
49
53
  // Convert React props to web component attributes
50
54
  const webComponentProps: Record<string, any> = {
51
- ...props,
55
+ ...hostProps(props),
52
56
  ref: elementRef,
53
57
  };
54
58
 
@@ -1,4 +1,5 @@
1
1
  import React, { useEffect, useRef } from 'react';
2
+ import { hostProps } from '../utils/host-props';
2
3
 
3
4
  // Type definitions for Ty Wizard component
4
5
  export interface TyWizardProps extends Omit<React.HTMLAttributes<HTMLElement>, 'onChange'> {
@@ -77,7 +78,7 @@ export const TyWizard = React.forwardRef<HTMLElement, TyWizardProps>(
77
78
 
78
79
  // Convert React props to web component attributes
79
80
  const webComponentProps: Record<string, any> = {
80
- ...props,
81
+ ...hostProps(props),
81
82
  ref: elementRef,
82
83
  };
83
84
 
@@ -59,7 +59,7 @@ export type { TyModalProps as TyDialogProps, TyModalEventDetail as TyDialogEvent
59
59
  export { TyTooltip } from './TyTooltip';
60
60
  export type { TyTooltipProps } from './TyTooltip';
61
61
 
62
- export { TySelect, TySelectedTags } from './TySelect';
62
+ export { TySelect, TySelectedOptions, TySelectedTags } from './TySelect';
63
63
  export type { TySelectProps, TySelectEventDetail, TySelectItem, TySelectedTagsProps } from './TySelect';
64
64
 
65
65
  export { TyCalendar } from './TyCalendar';
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Normalize pass-through props for a custom-element host.
3
+ *
4
+ * React 18 does not special-case `className` on custom elements — it
5
+ * lowercases the prop into a literal `classname=""` attribute, which no CSS
6
+ * ever matches. Renaming it to `class` makes React pass it through verbatim,
7
+ * so host-level utility classes (layout, positioning) actually apply.
8
+ * React 19 handles `className` natively; this stays harmless there.
9
+ */
10
+ export function hostProps<T extends Record<string, any>>(props: T): Record<string, any> {
11
+ const { className, ...rest } = props;
12
+ if (className != null) (rest as Record<string, any>).class = className;
13
+ return rest;
14
+ }
package/src/version.ts CHANGED
@@ -3,4 +3,4 @@
3
3
  // Run 'npm run generate:version' to regenerate.
4
4
 
5
5
  /** Current version of tyrell-react. Synced with package.json on build. */
6
- export const VERSION = '1.0.0-RC12'
6
+ export const VERSION = '1.0.0-RC13'