tyrell-react 1.0.0-RC6

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 (144) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +410 -0
  3. package/dist/components/TyButton.d.ts +50 -0
  4. package/dist/components/TyButton.d.ts.map +1 -0
  5. package/dist/components/TyButton.js +68 -0
  6. package/dist/components/TyButton.js.map +1 -0
  7. package/dist/components/TyCalendar.d.ts +63 -0
  8. package/dist/components/TyCalendar.d.ts.map +1 -0
  9. package/dist/components/TyCalendar.js +127 -0
  10. package/dist/components/TyCalendar.js.map +1 -0
  11. package/dist/components/TyCalendarMonth.d.ts +32 -0
  12. package/dist/components/TyCalendarMonth.d.ts.map +1 -0
  13. package/dist/components/TyCalendarMonth.js +54 -0
  14. package/dist/components/TyCalendarMonth.js.map +1 -0
  15. package/dist/components/TyCalendarNavigation.d.ts +21 -0
  16. package/dist/components/TyCalendarNavigation.d.ts.map +1 -0
  17. package/dist/components/TyCalendarNavigation.js +50 -0
  18. package/dist/components/TyCalendarNavigation.js.map +1 -0
  19. package/dist/components/TyCheckbox.d.ts +39 -0
  20. package/dist/components/TyCheckbox.d.ts.map +1 -0
  21. package/dist/components/TyCheckbox.js +83 -0
  22. package/dist/components/TyCheckbox.js.map +1 -0
  23. package/dist/components/TyCopy.d.ts +21 -0
  24. package/dist/components/TyCopy.d.ts.map +1 -0
  25. package/dist/components/TyCopy.js +42 -0
  26. package/dist/components/TyCopy.js.map +1 -0
  27. package/dist/components/TyDatePicker.d.ts +45 -0
  28. package/dist/components/TyDatePicker.d.ts.map +1 -0
  29. package/dist/components/TyDatePicker.js +119 -0
  30. package/dist/components/TyDatePicker.js.map +1 -0
  31. package/dist/components/TyDropdown.d.ts +56 -0
  32. package/dist/components/TyDropdown.d.ts.map +1 -0
  33. package/dist/components/TyDropdown.js +110 -0
  34. package/dist/components/TyDropdown.js.map +1 -0
  35. package/dist/components/TyIcon.d.ts +17 -0
  36. package/dist/components/TyIcon.d.ts.map +1 -0
  37. package/dist/components/TyIcon.js +41 -0
  38. package/dist/components/TyIcon.js.map +1 -0
  39. package/dist/components/TyInput.d.ts +65 -0
  40. package/dist/components/TyInput.d.ts.map +1 -0
  41. package/dist/components/TyInput.js +127 -0
  42. package/dist/components/TyInput.js.map +1 -0
  43. package/dist/components/TyModal.d.ts +29 -0
  44. package/dist/components/TyModal.d.ts.map +1 -0
  45. package/dist/components/TyModal.js +74 -0
  46. package/dist/components/TyModal.js.map +1 -0
  47. package/dist/components/TyMultiselect.d.ts +51 -0
  48. package/dist/components/TyMultiselect.d.ts.map +1 -0
  49. package/dist/components/TyMultiselect.js +107 -0
  50. package/dist/components/TyMultiselect.js.map +1 -0
  51. package/dist/components/TyOption.d.ts +10 -0
  52. package/dist/components/TyOption.d.ts.map +1 -0
  53. package/dist/components/TyOption.js +25 -0
  54. package/dist/components/TyOption.js.map +1 -0
  55. package/dist/components/TyPopup.d.ts +24 -0
  56. package/dist/components/TyPopup.d.ts.map +1 -0
  57. package/dist/components/TyPopup.js +61 -0
  58. package/dist/components/TyPopup.js.map +1 -0
  59. package/dist/components/TyRadio.d.ts +20 -0
  60. package/dist/components/TyRadio.d.ts.map +1 -0
  61. package/dist/components/TyRadio.js +46 -0
  62. package/dist/components/TyRadio.js.map +1 -0
  63. package/dist/components/TyRadioGroup.d.ts +40 -0
  64. package/dist/components/TyRadioGroup.d.ts.map +1 -0
  65. package/dist/components/TyRadioGroup.js +58 -0
  66. package/dist/components/TyRadioGroup.js.map +1 -0
  67. package/dist/components/TyResizeObserver.d.ts +11 -0
  68. package/dist/components/TyResizeObserver.d.ts.map +1 -0
  69. package/dist/components/TyResizeObserver.js +28 -0
  70. package/dist/components/TyResizeObserver.js.map +1 -0
  71. package/dist/components/TyScrollContainer.d.ts +25 -0
  72. package/dist/components/TyScrollContainer.d.ts.map +1 -0
  73. package/dist/components/TyScrollContainer.js +43 -0
  74. package/dist/components/TyScrollContainer.js.map +1 -0
  75. package/dist/components/TyStep.d.ts +17 -0
  76. package/dist/components/TyStep.d.ts.map +1 -0
  77. package/dist/components/TyStep.js +35 -0
  78. package/dist/components/TyStep.js.map +1 -0
  79. package/dist/components/TySwitch.d.ts +35 -0
  80. package/dist/components/TySwitch.d.ts.map +1 -0
  81. package/dist/components/TySwitch.js +69 -0
  82. package/dist/components/TySwitch.js.map +1 -0
  83. package/dist/components/TyTab.d.ts +13 -0
  84. package/dist/components/TyTab.d.ts.map +1 -0
  85. package/dist/components/TyTab.js +32 -0
  86. package/dist/components/TyTab.js.map +1 -0
  87. package/dist/components/TyTabs.d.ts +23 -0
  88. package/dist/components/TyTabs.d.ts.map +1 -0
  89. package/dist/components/TyTabs.js +48 -0
  90. package/dist/components/TyTabs.js.map +1 -0
  91. package/dist/components/TyTag.d.ts +22 -0
  92. package/dist/components/TyTag.d.ts.map +1 -0
  93. package/dist/components/TyTag.js +45 -0
  94. package/dist/components/TyTag.js.map +1 -0
  95. package/dist/components/TyTextarea.d.ts +37 -0
  96. package/dist/components/TyTextarea.d.ts.map +1 -0
  97. package/dist/components/TyTextarea.js +113 -0
  98. package/dist/components/TyTextarea.js.map +1 -0
  99. package/dist/components/TyTooltip.d.ts +17 -0
  100. package/dist/components/TyTooltip.d.ts.map +1 -0
  101. package/dist/components/TyTooltip.js +40 -0
  102. package/dist/components/TyTooltip.js.map +1 -0
  103. package/dist/components/TyWizard.d.ts +26 -0
  104. package/dist/components/TyWizard.d.ts.map +1 -0
  105. package/dist/components/TyWizard.js +50 -0
  106. package/dist/components/TyWizard.js.map +1 -0
  107. package/dist/components/index.d.ts +105 -0
  108. package/dist/components/index.d.ts.map +1 -0
  109. package/dist/components/index.js +112 -0
  110. package/dist/components/index.js.map +1 -0
  111. package/dist/utils/react-version.d.ts +2 -0
  112. package/dist/utils/react-version.d.ts.map +1 -0
  113. package/dist/utils/react-version.js +8 -0
  114. package/dist/utils/react-version.js.map +1 -0
  115. package/package.json +46 -0
  116. package/src/components/EventConventionTest.tsx +155 -0
  117. package/src/components/TyButton.tsx +145 -0
  118. package/src/components/TyCalendar.tsx +248 -0
  119. package/src/components/TyCalendarMonth.tsx +108 -0
  120. package/src/components/TyCalendarNavigation.tsx +91 -0
  121. package/src/components/TyCheckbox.tsx +152 -0
  122. package/src/components/TyCopy.tsx +78 -0
  123. package/src/components/TyDatePicker.tsx +220 -0
  124. package/src/components/TyDropdown.tsx +225 -0
  125. package/src/components/TyIcon.tsx +72 -0
  126. package/src/components/TyInput.tsx +232 -0
  127. package/src/components/TyModal.tsx +142 -0
  128. package/src/components/TyMultiselect.tsx +203 -0
  129. package/src/components/TyOption.tsx +42 -0
  130. package/src/components/TyPopup.tsx +111 -0
  131. package/src/components/TyRadio.tsx +70 -0
  132. package/src/components/TyRadioGroup.tsx +121 -0
  133. package/src/components/TyResizeObserver.tsx +54 -0
  134. package/src/components/TyScrollContainer.tsx +87 -0
  135. package/src/components/TyStep.tsx +71 -0
  136. package/src/components/TySwitch.tsx +122 -0
  137. package/src/components/TyTab.tsx +63 -0
  138. package/src/components/TyTabs.tsx +93 -0
  139. package/src/components/TyTag.tsx +79 -0
  140. package/src/components/TyTextarea.tsx +177 -0
  141. package/src/components/TyTooltip.tsx +83 -0
  142. package/src/components/TyWizard.tsx +99 -0
  143. package/src/components/index.ts +251 -0
  144. package/src/utils/react-version.ts +8 -0
@@ -0,0 +1,251 @@
1
+ // ===================================================================
2
+ // TYRELL REACT WRAPPER EXPORTS
3
+ // ===================================================================
4
+ // This file provides two export styles for maximum developer flexibility:
5
+ // 1. Ty-prefixed exports (TyButton, TyInput) - explicit and backward compatible
6
+ // 2. Short name exports (Button, Input) - clean and familiar to React developers
7
+ //
8
+ // Choose the style that fits your team's preferences!
9
+
10
+ // ===================================================================
11
+ // TY-PREFIXED EXPORTS (Explicit Style - Backward Compatible)
12
+ // ===================================================================
13
+
14
+ export { TyButton } from './TyButton';
15
+ export type { TyButtonProps, TyButtonCSSProperties } from './TyButton';
16
+
17
+ export { TyTag } from './TyTag';
18
+ export type { TyTagProps, TyTagCSSProperties } from './TyTag';
19
+
20
+ export { TyInput } from './TyInput';
21
+ export type { TyInputProps, TyInputEventDetail, TyInputCSSProperties } from './TyInput';
22
+
23
+ export { TyTextarea } from './TyTextarea';
24
+ export type { TyTextareaProps, TyTextareaEventDetail } from './TyTextarea';
25
+
26
+ export { TyDropdown } from './TyDropdown';
27
+ export type { TyDropdownProps, TyDropdownEventDetail } from './TyDropdown';
28
+
29
+ export { TyOption } from './TyOption';
30
+ export type { TyOptionProps } from './TyOption';
31
+
32
+ export { TyIcon } from './TyIcon';
33
+ export type { TyIconProps } from './TyIcon';
34
+
35
+ export { TyModal } from './TyModal';
36
+ export type { TyModalProps, TyModalEventDetail, TyModalRef } from './TyModal';
37
+
38
+ export { TyTooltip } from './TyTooltip';
39
+ export type { TyTooltipProps } from './TyTooltip';
40
+
41
+ export { TyMultiselect } from './TyMultiselect';
42
+ export type { TyMultiselectProps, TyMultiselectEventDetail } from './TyMultiselect';
43
+
44
+ export { TyCalendar } from './TyCalendar';
45
+ export type { TyCalendarProps, TyCalendarChangeEventDetail, TyCalendarNavigateEventDetail } from './TyCalendar';
46
+
47
+ export { TyDatePicker } from './TyDatePicker';
48
+ export type { TyDatePickerProps, TyDatePickerEventDetail } from './TyDatePicker';
49
+
50
+ export { TyPopup } from './TyPopup';
51
+ export type { TyPopupProps, TyPopupElement } from './TyPopup';
52
+
53
+ export { TyCheckbox } from './TyCheckbox';
54
+ export type { TyCheckboxProps, TyCheckboxEventDetail } from './TyCheckbox';
55
+
56
+ export { TySwitch } from './TySwitch';
57
+ export type { TySwitchProps, TySwitchEventDetail } from './TySwitch';
58
+
59
+ export { TyRadio } from './TyRadio';
60
+ export type { TyRadioProps } from './TyRadio';
61
+
62
+ export { TyRadioGroup } from './TyRadioGroup';
63
+ export type { TyRadioGroupProps, TyRadioGroupEventDetail } from './TyRadioGroup';
64
+
65
+ export { TyCopy } from './TyCopy';
66
+ export type { TyCopyProps } from './TyCopy';
67
+
68
+ export { TyTabs } from './TyTabs';
69
+ export type { TyTabsProps, TabChangeDetail } from './TyTabs';
70
+
71
+ export { TyTab } from './TyTab';
72
+ export type { TyTabProps } from './TyTab';
73
+
74
+ export { TyCalendarMonth } from './TyCalendarMonth';
75
+ export type { TyCalendarMonthProps, DayClickDetail } from './TyCalendarMonth';
76
+
77
+ export { TyCalendarNavigation } from './TyCalendarNavigation';
78
+ export type { TyCalendarNavigationProps, NavigationChangeDetail } from './TyCalendarNavigation';
79
+
80
+ export { TyWizard } from './TyWizard';
81
+ export type { TyWizardProps, WizardStepChangeDetail } from './TyWizard';
82
+
83
+ export { TyStep } from './TyStep';
84
+ export type { TyStepProps } from './TyStep';
85
+
86
+ export { TyResizeObserver } from './TyResizeObserver';
87
+ export type { TyResizeObserverProps } from './TyResizeObserver';
88
+
89
+ export { TyScrollContainer } from './TyScrollContainer';
90
+ export type { TyScrollContainerProps, TyScrollContainerRef } from './TyScrollContainer';
91
+
92
+
93
+ // ===================================================================
94
+ // SHORT NAME EXPORTS (Clean Style - Developer Choice)
95
+ // ===================================================================
96
+
97
+ export { TyButton as Button } from './TyButton';
98
+ export { TyTag as Tag } from './TyTag';
99
+ export { TyInput as Input } from './TyInput';
100
+ export { TyTextarea as Textarea } from './TyTextarea';
101
+ export { TyDropdown as Dropdown } from './TyDropdown';
102
+ export { TyOption as Option } from './TyOption';
103
+ export { TyIcon as Icon } from './TyIcon';
104
+ export { TyModal as Modal } from './TyModal';
105
+ export { TyTooltip as Tooltip } from './TyTooltip';
106
+ export { TyMultiselect as Multiselect } from './TyMultiselect';
107
+ export { TyCalendar as Calendar } from './TyCalendar';
108
+ export { TyDatePicker as DatePicker } from './TyDatePicker';
109
+ export { TyPopup as Popup } from './TyPopup';
110
+ export { TyCheckbox as Checkbox } from './TyCheckbox';
111
+ export { TySwitch as Switch } from './TySwitch';
112
+ export { TyRadio as Radio } from './TyRadio';
113
+ export { TyRadioGroup as RadioGroup } from './TyRadioGroup';
114
+ export { TyCopy as Copy } from './TyCopy';
115
+ export { TyTabs as Tabs } from './TyTabs';
116
+ export { TyTab as Tab } from './TyTab';
117
+ export { TyCalendarMonth as CalendarMonth } from './TyCalendarMonth';
118
+ export { TyCalendarNavigation as CalendarNavigation } from './TyCalendarNavigation';
119
+ export { TyWizard as Wizard } from './TyWizard';
120
+ export { TyStep as Step } from './TyStep';
121
+ export { TyResizeObserver as ResizeObserver } from './TyResizeObserver';
122
+ export { TyScrollContainer as ScrollContainer } from './TyScrollContainer';
123
+
124
+ // ===================================================================
125
+ // TYPE ALIASES (Both Styles Supported)
126
+ // ===================================================================
127
+
128
+ // Button types
129
+ export type { TyButtonProps as ButtonProps } from './TyButton';
130
+
131
+ // Tag types
132
+ export type { TyTagProps as TagProps } from './TyTag';
133
+
134
+ // Input types
135
+ export type { TyInputProps as InputProps, TyInputEventDetail as InputEventDetail } from './TyInput';
136
+
137
+ // Textarea types
138
+ export type { TyTextareaProps as TextareaProps, TyTextareaEventDetail as TextareaEventDetail } from './TyTextarea';
139
+
140
+ // Dropdown types
141
+ export type { TyDropdownProps as DropdownProps, TyDropdownEventDetail as DropdownEventDetail, OptionData } from './TyDropdown';
142
+
143
+ // Option types
144
+ export type { TyOptionProps as OptionProps } from './TyOption';
145
+
146
+ // Icon types
147
+ export type { TyIconProps as IconProps } from './TyIcon';
148
+
149
+ // Modal types
150
+ export type { TyModalProps as ModalProps, TyModalEventDetail as ModalEventDetail, TyModalRef as ModalRef } from './TyModal';
151
+
152
+ // Tooltip types
153
+ export type { TyTooltipProps as TooltipProps } from './TyTooltip';
154
+
155
+ // Multiselect types
156
+ export type { TyMultiselectProps as MultiselectProps, TyMultiselectEventDetail as MultiselectEventDetail } from './TyMultiselect';
157
+
158
+ // Calendar types
159
+ export type { TyCalendarProps as CalendarProps, TyCalendarChangeEventDetail as CalendarChangeEventDetail, TyCalendarNavigateEventDetail as CalendarNavigateEventDetail } from './TyCalendar';
160
+
161
+ // DatePicker types
162
+ export type { TyDatePickerProps as DatePickerProps, TyDatePickerEventDetail as DatePickerEventDetail } from './TyDatePicker';
163
+
164
+ // Popup types
165
+ export type { TyPopupProps as PopupProps, TyPopupElement as PopupElement } from './TyPopup';
166
+
167
+ // Checkbox types
168
+ export type { TyCheckboxProps as CheckboxProps, TyCheckboxEventDetail as CheckboxEventDetail } from './TyCheckbox';
169
+
170
+ // Switch types
171
+ export type { TySwitchProps as SwitchProps, TySwitchEventDetail as SwitchEventDetail } from './TySwitch';
172
+
173
+ // Radio types
174
+ export type { TyRadioProps as RadioProps } from './TyRadio';
175
+
176
+ // RadioGroup types
177
+ export type { TyRadioGroupProps as RadioGroupProps, TyRadioGroupEventDetail as RadioGroupEventDetail } from './TyRadioGroup';
178
+
179
+ // Copy types
180
+ export type { TyCopyProps as CopyProps } from './TyCopy';
181
+
182
+ // Tabs types
183
+ export type { TyTabsProps as TabsProps } from './TyTabs';
184
+
185
+ // Tab types
186
+ export type { TyTabProps as TabProps } from './TyTab';
187
+
188
+ // CalendarMonth types
189
+ export type { TyCalendarMonthProps as CalendarMonthProps } from './TyCalendarMonth';
190
+
191
+ // CalendarNavigation types
192
+ export type { TyCalendarNavigationProps as CalendarNavigationProps } from './TyCalendarNavigation';
193
+
194
+ // Wizard types
195
+ export type { TyWizardProps as WizardProps, WizardStepChangeDetail as StepChangeDetail } from './TyWizard';
196
+
197
+ // Step types
198
+ export type { TyStepProps as StepProps } from './TyStep';
199
+
200
+ // ResizeObserver types
201
+ export type { TyResizeObserverProps as ResizeObserverProps } from './TyResizeObserver';
202
+
203
+ // ScrollContainer types
204
+ export type { TyScrollContainerProps as ScrollContainerProps, TyScrollContainerRef as ScrollContainerRef } from './TyScrollContainer';
205
+
206
+ // ===================================================================
207
+ // USAGE EXAMPLES
208
+ // ===================================================================
209
+
210
+ /*
211
+
212
+ // STYLE 1: Ty-prefixed (Explicit and backward compatible)
213
+ import { TyButton, TyInput, TyModal } from 'tyrell-react';
214
+ import type { TyButtonProps, TyInputProps } from 'tyrell-react';
215
+
216
+ function MyComponent() {
217
+ return (
218
+ <TyModal>
219
+ <TyInput placeholder="Enter text..." />
220
+ <TyButton>Submit</TyButton>
221
+ </TyModal>
222
+ );
223
+ }
224
+
225
+ // STYLE 2: Short names (Clean and familiar)
226
+ import { Button, Input, Modal } from 'tyrell-react';
227
+ import type { ButtonProps, InputProps } from 'tyrell-react';
228
+
229
+ function MyComponent() {
230
+ return (
231
+ <Modal>
232
+ <Input placeholder="Enter text..." />
233
+ <Button>Submit</Button>
234
+ </Modal>
235
+ );
236
+ }
237
+
238
+ // STYLE 3: Mixed (Team preferences)
239
+ import { TyModal, Input, Button } from 'tyrell-react';
240
+ import type { TyModalProps, InputProps } from 'tyrell-react';
241
+
242
+ function MyComponent() {
243
+ return (
244
+ <TyModal>
245
+ <Input placeholder="Enter text..." />
246
+ <Button>Submit</Button>
247
+ </TyModal>
248
+ );
249
+ }
250
+
251
+ */
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+
3
+ // React 19 natively bridges props to custom-element properties (including
4
+ // empty strings, `false` booleans, functions, and objects). On React 18 we
5
+ // must imperatively assign these properties via useEffect. Wrappers gate
6
+ // their bridging effects on this flag so the workaround is dead code on
7
+ // React 19+ and removable when React 18 support is eventually dropped.
8
+ export const needsPropertyBridge = parseInt(React.version, 10) < 19;