@rippling/rippling-sdk 0.2.0-alpha.33 → 0.2.0-alpha.35

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 (284) hide show
  1. package/client.d.mts +8 -2
  2. package/client.d.mts.map +1 -1
  3. package/client.d.ts +8 -2
  4. package/client.d.ts.map +1 -1
  5. package/client.js +17 -0
  6. package/client.js.map +1 -1
  7. package/client.mjs +17 -0
  8. package/client.mjs.map +1 -1
  9. package/internal/types.d.mts +6 -6
  10. package/internal/types.d.mts.map +1 -1
  11. package/internal/types.d.ts +6 -6
  12. package/internal/types.d.ts.map +1 -1
  13. package/lib/manifest/_helpers.d.mts +91 -0
  14. package/lib/manifest/_helpers.d.mts.map +1 -0
  15. package/lib/manifest/_helpers.d.ts +91 -0
  16. package/lib/manifest/_helpers.d.ts.map +1 -0
  17. package/lib/manifest/_helpers.js +65 -0
  18. package/lib/manifest/_helpers.js.map +1 -0
  19. package/lib/manifest/_helpers.mjs +61 -0
  20. package/lib/manifest/_helpers.mjs.map +1 -0
  21. package/lib/manifest/app.d.mts +113 -0
  22. package/lib/manifest/app.d.mts.map +1 -0
  23. package/lib/manifest/app.d.ts +113 -0
  24. package/lib/manifest/app.d.ts.map +1 -0
  25. package/lib/manifest/app.js +95 -0
  26. package/lib/manifest/app.js.map +1 -0
  27. package/lib/manifest/app.mjs +91 -0
  28. package/lib/manifest/app.mjs.map +1 -0
  29. package/lib/manifest/category.d.mts +79 -0
  30. package/lib/manifest/category.d.mts.map +1 -0
  31. package/lib/manifest/category.d.ts +79 -0
  32. package/lib/manifest/category.d.ts.map +1 -0
  33. package/lib/manifest/category.js +72 -0
  34. package/lib/manifest/category.js.map +1 -0
  35. package/lib/manifest/category.mjs +68 -0
  36. package/lib/manifest/category.mjs.map +1 -0
  37. package/lib/manifest/custom-object-field-section.d.mts +71 -0
  38. package/lib/manifest/custom-object-field-section.d.mts.map +1 -0
  39. package/lib/manifest/custom-object-field-section.d.ts +71 -0
  40. package/lib/manifest/custom-object-field-section.d.ts.map +1 -0
  41. package/lib/manifest/custom-object-field-section.js +69 -0
  42. package/lib/manifest/custom-object-field-section.js.map +1 -0
  43. package/lib/manifest/custom-object-field-section.mjs +65 -0
  44. package/lib/manifest/custom-object-field-section.mjs.map +1 -0
  45. package/lib/manifest/custom-object-page-layout.d.mts +318 -0
  46. package/lib/manifest/custom-object-page-layout.d.mts.map +1 -0
  47. package/lib/manifest/custom-object-page-layout.d.ts +318 -0
  48. package/lib/manifest/custom-object-page-layout.d.ts.map +1 -0
  49. package/lib/manifest/custom-object-page-layout.js +158 -0
  50. package/lib/manifest/custom-object-page-layout.js.map +1 -0
  51. package/lib/manifest/custom-object-page-layout.mjs +154 -0
  52. package/lib/manifest/custom-object-page-layout.mjs.map +1 -0
  53. package/lib/manifest/custom-object.d.mts +165 -0
  54. package/lib/manifest/custom-object.d.mts.map +1 -0
  55. package/lib/manifest/custom-object.d.ts +165 -0
  56. package/lib/manifest/custom-object.d.ts.map +1 -0
  57. package/lib/manifest/custom-object.js +254 -0
  58. package/lib/manifest/custom-object.js.map +1 -0
  59. package/lib/manifest/custom-object.mjs +250 -0
  60. package/lib/manifest/custom-object.mjs.map +1 -0
  61. package/lib/manifest/field.d.mts +487 -0
  62. package/lib/manifest/field.d.mts.map +1 -0
  63. package/lib/manifest/field.d.ts +487 -0
  64. package/lib/manifest/field.d.ts.map +1 -0
  65. package/lib/manifest/field.js +461 -0
  66. package/lib/manifest/field.js.map +1 -0
  67. package/lib/manifest/field.mjs +438 -0
  68. package/lib/manifest/field.mjs.map +1 -0
  69. package/lib/manifest/index.d.mts +15 -0
  70. package/lib/manifest/index.d.mts.map +1 -0
  71. package/lib/manifest/index.d.ts +15 -0
  72. package/lib/manifest/index.d.ts.map +1 -0
  73. package/lib/manifest/index.js +53 -0
  74. package/lib/manifest/index.js.map +1 -0
  75. package/lib/manifest/index.mjs +18 -0
  76. package/lib/manifest/index.mjs.map +1 -0
  77. package/lib/manifest/list-view.d.mts +138 -0
  78. package/lib/manifest/list-view.d.mts.map +1 -0
  79. package/lib/manifest/list-view.d.ts +138 -0
  80. package/lib/manifest/list-view.d.ts.map +1 -0
  81. package/lib/manifest/list-view.js +109 -0
  82. package/lib/manifest/list-view.js.map +1 -0
  83. package/lib/manifest/list-view.mjs +105 -0
  84. package/lib/manifest/list-view.mjs.map +1 -0
  85. package/lib/manifest/manifest-builder.d.mts +110 -0
  86. package/lib/manifest/manifest-builder.d.mts.map +1 -0
  87. package/lib/manifest/manifest-builder.d.ts +110 -0
  88. package/lib/manifest/manifest-builder.d.ts.map +1 -0
  89. package/lib/manifest/manifest-builder.js +91 -0
  90. package/lib/manifest/manifest-builder.js.map +1 -0
  91. package/lib/manifest/manifest-builder.mjs +87 -0
  92. package/lib/manifest/manifest-builder.mjs.map +1 -0
  93. package/lib/manifest/manifest-function.d.mts +119 -0
  94. package/lib/manifest/manifest-function.d.mts.map +1 -0
  95. package/lib/manifest/manifest-function.d.ts +119 -0
  96. package/lib/manifest/manifest-function.d.ts.map +1 -0
  97. package/lib/manifest/manifest-function.js +85 -0
  98. package/lib/manifest/manifest-function.js.map +1 -0
  99. package/lib/manifest/manifest-function.mjs +81 -0
  100. package/lib/manifest/manifest-function.mjs.map +1 -0
  101. package/lib/manifest/rule.d.mts +128 -0
  102. package/lib/manifest/rule.d.mts.map +1 -0
  103. package/lib/manifest/rule.d.ts +128 -0
  104. package/lib/manifest/rule.d.ts.map +1 -0
  105. package/lib/manifest/rule.js +105 -0
  106. package/lib/manifest/rule.js.map +1 -0
  107. package/lib/manifest/rule.mjs +101 -0
  108. package/lib/manifest/rule.mjs.map +1 -0
  109. package/lib/manifest/sdui-page.d.mts +89 -0
  110. package/lib/manifest/sdui-page.d.mts.map +1 -0
  111. package/lib/manifest/sdui-page.d.ts +89 -0
  112. package/lib/manifest/sdui-page.d.ts.map +1 -0
  113. package/lib/manifest/sdui-page.js +83 -0
  114. package/lib/manifest/sdui-page.js.map +1 -0
  115. package/lib/manifest/sdui-page.mjs +79 -0
  116. package/lib/manifest/sdui-page.mjs.map +1 -0
  117. package/lib/manifest/validation.d.mts +116 -0
  118. package/lib/manifest/validation.d.mts.map +1 -0
  119. package/lib/manifest/validation.d.ts +116 -0
  120. package/lib/manifest/validation.d.ts.map +1 -0
  121. package/lib/manifest/validation.js +83 -0
  122. package/lib/manifest/validation.js.map +1 -0
  123. package/lib/manifest/validation.mjs +79 -0
  124. package/lib/manifest/validation.mjs.map +1 -0
  125. package/lib/sdui/actions.d.mts +25 -0
  126. package/lib/sdui/actions.d.mts.map +1 -0
  127. package/lib/sdui/actions.d.ts +25 -0
  128. package/lib/sdui/actions.d.ts.map +1 -0
  129. package/lib/sdui/actions.js +53 -0
  130. package/lib/sdui/actions.js.map +1 -0
  131. package/lib/sdui/actions.mjs +42 -0
  132. package/lib/sdui/actions.mjs.map +1 -0
  133. package/lib/sdui/component.d.mts +41 -0
  134. package/lib/sdui/component.d.mts.map +1 -0
  135. package/lib/sdui/component.d.ts +41 -0
  136. package/lib/sdui/component.d.ts.map +1 -0
  137. package/lib/sdui/component.js +95 -0
  138. package/lib/sdui/component.js.map +1 -0
  139. package/lib/sdui/component.mjs +91 -0
  140. package/lib/sdui/component.mjs.map +1 -0
  141. package/lib/sdui/components.d.mts +149 -0
  142. package/lib/sdui/components.d.mts.map +1 -0
  143. package/lib/sdui/components.d.ts +149 -0
  144. package/lib/sdui/components.d.ts.map +1 -0
  145. package/lib/sdui/components.js +303 -0
  146. package/lib/sdui/components.js.map +1 -0
  147. package/lib/sdui/components.mjs +298 -0
  148. package/lib/sdui/components.mjs.map +1 -0
  149. package/lib/sdui/conditions.d.mts +25 -0
  150. package/lib/sdui/conditions.d.mts.map +1 -0
  151. package/lib/sdui/conditions.d.ts +25 -0
  152. package/lib/sdui/conditions.d.ts.map +1 -0
  153. package/lib/sdui/conditions.js +47 -0
  154. package/lib/sdui/conditions.js.map +1 -0
  155. package/lib/sdui/conditions.mjs +35 -0
  156. package/lib/sdui/conditions.mjs.map +1 -0
  157. package/lib/sdui/directives.d.mts +18 -0
  158. package/lib/sdui/directives.d.mts.map +1 -0
  159. package/lib/sdui/directives.d.ts +18 -0
  160. package/lib/sdui/directives.d.ts.map +1 -0
  161. package/lib/sdui/directives.js +28 -0
  162. package/lib/sdui/directives.js.map +1 -0
  163. package/lib/sdui/directives.mjs +21 -0
  164. package/lib/sdui/directives.mjs.map +1 -0
  165. package/lib/sdui/index.d.mts +362 -0
  166. package/lib/sdui/index.d.mts.map +1 -0
  167. package/lib/sdui/index.d.ts +362 -0
  168. package/lib/sdui/index.d.ts.map +1 -0
  169. package/lib/sdui/index.js +375 -0
  170. package/lib/sdui/index.js.map +1 -0
  171. package/lib/sdui/index.mjs +199 -0
  172. package/lib/sdui/index.mjs.map +1 -0
  173. package/lib/sdui/props.d.mts +12 -0
  174. package/lib/sdui/props.d.mts.map +1 -0
  175. package/lib/sdui/props.d.ts +12 -0
  176. package/lib/sdui/props.d.ts.map +1 -0
  177. package/lib/sdui/props.js +25 -0
  178. package/lib/sdui/props.js.map +1 -0
  179. package/lib/sdui/props.mjs +21 -0
  180. package/lib/sdui/props.mjs.map +1 -0
  181. package/lib/sdui/render.d.mts +23 -0
  182. package/lib/sdui/render.d.mts.map +1 -0
  183. package/lib/sdui/render.d.ts +23 -0
  184. package/lib/sdui/render.d.ts.map +1 -0
  185. package/lib/sdui/render.js +40 -0
  186. package/lib/sdui/render.js.map +1 -0
  187. package/lib/sdui/render.mjs +37 -0
  188. package/lib/sdui/render.mjs.map +1 -0
  189. package/lib/sdui/state.d.mts +22 -0
  190. package/lib/sdui/state.d.mts.map +1 -0
  191. package/lib/sdui/state.d.ts +22 -0
  192. package/lib/sdui/state.d.ts.map +1 -0
  193. package/lib/sdui/state.js +57 -0
  194. package/lib/sdui/state.js.map +1 -0
  195. package/lib/sdui/state.mjs +53 -0
  196. package/lib/sdui/state.mjs.map +1 -0
  197. package/package.json +11 -1
  198. package/resources/draft-hires.d.mts +26 -0
  199. package/resources/draft-hires.d.mts.map +1 -1
  200. package/resources/draft-hires.d.ts +26 -0
  201. package/resources/draft-hires.d.ts.map +1 -1
  202. package/resources/earnings-inputs.d.mts +99 -1
  203. package/resources/earnings-inputs.d.mts.map +1 -1
  204. package/resources/earnings-inputs.d.ts +99 -1
  205. package/resources/earnings-inputs.d.ts.map +1 -1
  206. package/resources/earnings-inputs.js +6 -0
  207. package/resources/earnings-inputs.js.map +1 -1
  208. package/resources/earnings-inputs.mjs +6 -0
  209. package/resources/earnings-inputs.mjs.map +1 -1
  210. package/resources/files.d.mts +164 -0
  211. package/resources/files.d.mts.map +1 -0
  212. package/resources/files.d.ts +164 -0
  213. package/resources/files.d.ts.map +1 -0
  214. package/resources/files.js +25 -0
  215. package/resources/files.js.map +1 -0
  216. package/resources/files.mjs +21 -0
  217. package/resources/files.mjs.map +1 -0
  218. package/resources/headcount-positions.d.mts +2 -2
  219. package/resources/headcount-positions.d.mts.map +1 -1
  220. package/resources/headcount-positions.d.ts +2 -2
  221. package/resources/headcount-positions.d.ts.map +1 -1
  222. package/resources/index.d.mts +2 -1
  223. package/resources/index.d.mts.map +1 -1
  224. package/resources/index.d.ts +2 -1
  225. package/resources/index.d.ts.map +1 -1
  226. package/resources/index.js +4 -2
  227. package/resources/index.js.map +1 -1
  228. package/resources/index.mjs +1 -0
  229. package/resources/index.mjs.map +1 -1
  230. package/resources/legal-entities.d.mts +1 -1
  231. package/resources/legal-entities.d.mts.map +1 -1
  232. package/resources/legal-entities.d.ts +1 -1
  233. package/resources/legal-entities.d.ts.map +1 -1
  234. package/resources/location-factors.d.mts +2 -2
  235. package/resources/location-factors.d.mts.map +1 -1
  236. package/resources/location-factors.d.ts +2 -2
  237. package/resources/location-factors.d.ts.map +1 -1
  238. package/resources/shared.d.mts +1 -1
  239. package/resources/shared.d.mts.map +1 -1
  240. package/resources/shared.d.ts +1 -1
  241. package/resources/shared.d.ts.map +1 -1
  242. package/resources/workers.d.mts +2 -2
  243. package/resources/workers.d.mts.map +1 -1
  244. package/resources/workers.d.ts +2 -2
  245. package/resources/workers.d.ts.map +1 -1
  246. package/src/client.ts +29 -0
  247. package/src/internal/types.ts +6 -8
  248. package/src/lib/manifest/_helpers.ts +164 -0
  249. package/src/lib/manifest/app.ts +163 -0
  250. package/src/lib/manifest/category.ts +100 -0
  251. package/src/lib/manifest/custom-object-field-section.ts +93 -0
  252. package/src/lib/manifest/custom-object-page-layout.ts +427 -0
  253. package/src/lib/manifest/custom-object.ts +360 -0
  254. package/src/lib/manifest/field.ts +822 -0
  255. package/src/lib/manifest/index.ts +114 -0
  256. package/src/lib/manifest/list-view.ts +183 -0
  257. package/src/lib/manifest/manifest-builder.ts +140 -0
  258. package/src/lib/manifest/manifest-function.ts +151 -0
  259. package/src/lib/manifest/rule.ts +191 -0
  260. package/src/lib/manifest/sdui-page.ts +118 -0
  261. package/src/lib/manifest/validation.ts +150 -0
  262. package/src/lib/sdui/actions.ts +58 -0
  263. package/src/lib/sdui/component.ts +122 -0
  264. package/src/lib/sdui/components.ts +308 -0
  265. package/src/lib/sdui/conditions.ts +59 -0
  266. package/src/lib/sdui/directives.ts +42 -0
  267. package/src/lib/sdui/index.ts +365 -0
  268. package/src/lib/sdui/props.ts +32 -0
  269. package/src/lib/sdui/render.ts +58 -0
  270. package/src/lib/sdui/state.ts +60 -0
  271. package/src/resources/draft-hires.ts +31 -0
  272. package/src/resources/earnings-inputs.ts +127 -0
  273. package/src/resources/files.ts +203 -0
  274. package/src/resources/headcount-positions.ts +2 -0
  275. package/src/resources/index.ts +3 -0
  276. package/src/resources/legal-entities.ts +1 -0
  277. package/src/resources/location-factors.ts +2 -0
  278. package/src/resources/shared.ts +1 -0
  279. package/src/resources/workers.ts +2 -0
  280. package/src/version.ts +1 -1
  281. package/version.d.mts +1 -1
  282. package/version.d.ts +1 -1
  283. package/version.js +1 -1
  284. package/version.mjs +1 -1
@@ -0,0 +1,365 @@
1
+ /**
2
+ * AUTO-GENERATED — component exports are generated from component-manifest.json
3
+ * Generated at: 2026-04-17T04:10:01.127Z
4
+ * Components: 128
5
+ *
6
+ * Do not edit manually. Run: npx tsx scripts/codegen-builder.ts
7
+ */
8
+
9
+ // --- Named exports (individual imports) ---
10
+
11
+ // State
12
+ export { createState, extractPath } from './state';
13
+ export type { StateProxy, StateRef, BindStateRef } from './state';
14
+
15
+ // Conditions
16
+ export { eq, neq, gt, gte, lt, lte, truthy, falsy, and, or } from './conditions';
17
+ export type { StateCondition, OrCondition, VisibilityCondition } from './conditions';
18
+
19
+ // Dynamic props
20
+ export { cond, template } from './props';
21
+ export type { CondRef, TemplateRef } from './props';
22
+
23
+ // Actions
24
+ export { set, push, remove, callFunction, nav, notify, validate, openModal, closeModal } from './actions';
25
+ export type { ActionBinding } from './actions';
26
+
27
+ // Components
28
+ export {
29
+ TextInput,
30
+ Select,
31
+ AppGroupSelect,
32
+ Checkbox,
33
+ CheckboxGroup,
34
+ Email,
35
+ Number,
36
+ Date,
37
+ DateRange,
38
+ DateInlineMulti,
39
+ Textarea,
40
+ Radio,
41
+ Phone,
42
+ Password,
43
+ Switch,
44
+ FileDrop,
45
+ TextAutoSuggest,
46
+ Currency,
47
+ WorkEmail,
48
+ Percentage,
49
+ SegmentedControl,
50
+ Time,
51
+ TimeRange,
52
+ Timezone,
53
+ Slider,
54
+ RangeSlider,
55
+ Masker,
56
+ DaySelector,
57
+ ColorPicker,
58
+ SelectableGroup,
59
+ Ssn,
60
+ Sin,
61
+ Signature,
62
+ Survey,
63
+ Tree,
64
+ TreeSelect,
65
+ File,
66
+ InputGroup,
67
+ Field,
68
+ ActionCard,
69
+ Alert,
70
+ Avatar,
71
+ Badge,
72
+ Chip,
73
+ Card,
74
+ ContentLoader,
75
+ Divider,
76
+ Icon,
77
+ Label,
78
+ ListItem,
79
+ Modal,
80
+ ModalFooter,
81
+ ProgressBar,
82
+ Skeleton,
83
+ Spinner,
84
+ Stepper,
85
+ TextClip,
86
+ TextSnippet,
87
+ Tip,
88
+ CheckList,
89
+ DistributionBar,
90
+ ImageViewer,
91
+ ObjectUI,
92
+ ObjectUITemplate,
93
+ ObjectUIHeader,
94
+ ObjectUIContent,
95
+ ObjectUIStats,
96
+ SnackBar,
97
+ Video,
98
+ AvatarList,
99
+ Image,
100
+ AtomsSeparator,
101
+ Carousel,
102
+ TableBasic,
103
+ LocationCard,
104
+ LoaderCard,
105
+ LayoutCard,
106
+ AppGroupLoader,
107
+ ChartLoader,
108
+ ReportLoader,
109
+ ReportShareLoader,
110
+ ReportViewerLoader,
111
+ SettingsLoader,
112
+ ChipGroup,
113
+ ModalCloseButton,
114
+ Status,
115
+ ApiError,
116
+ Circle,
117
+ CountDown,
118
+ Country,
119
+ ToggleableArrow,
120
+ TitleCaption,
121
+ AiIcon,
122
+ Breadcrumb,
123
+ Button,
124
+ ButtonGroup,
125
+ DraggableList,
126
+ Drawer,
127
+ Dropdown,
128
+ ExpansionPanel,
129
+ ExpansionPanelGroup,
130
+ FloatingButton,
131
+ IconButton,
132
+ ItemNavigator,
133
+ Link,
134
+ MenuList,
135
+ NestedList,
136
+ Paginate,
137
+ SelectableMenu,
138
+ ShowMore,
139
+ Tab,
140
+ Heading,
141
+ Text,
142
+ Box,
143
+ Grid,
144
+ HStack,
145
+ LabelGroup,
146
+ Layout,
147
+ PageContent,
148
+ PageHeader,
149
+ PageAppLogo,
150
+ PageFooter,
151
+ Pane,
152
+ Responsive,
153
+ SplitPane,
154
+ VStack,
155
+ CustomObjectGrid,
156
+ ObjectListView,
157
+ } from './components';
158
+ export type { SpecNode } from './components';
159
+
160
+ // Directives
161
+ export { visible, repeat, $item, $bindItem, $index } from './directives';
162
+ export type { ItemRef, BindItemRef, IndexRef } from './directives';
163
+
164
+ // Render
165
+ export { render } from './render';
166
+ export type { FlatElement, Spec } from './render';
167
+
168
+ // Component (stateful components with local state + lifecycle)
169
+ export { component } from './component';
170
+ export type { StateScope } from './component';
171
+
172
+ // --- Namespaced exports ---
173
+
174
+ import * as _conditions from './conditions';
175
+ import * as _actions from './actions';
176
+ import * as _components from './components';
177
+ import * as _directives from './directives';
178
+
179
+ export const conditions = {
180
+ eq: _conditions.eq,
181
+ neq: _conditions.neq,
182
+ gt: _conditions.gt,
183
+ gte: _conditions.gte,
184
+ lt: _conditions.lt,
185
+ lte: _conditions.lte,
186
+ truthy: _conditions.truthy,
187
+ falsy: _conditions.falsy,
188
+ and: _conditions.and,
189
+ or: _conditions.or,
190
+ };
191
+
192
+ export const actions = {
193
+ set: _actions.set,
194
+ push: _actions.push,
195
+ remove: _actions.remove,
196
+ callFunction: _actions.callFunction,
197
+ nav: _actions.nav,
198
+ notify: _actions.notify,
199
+ validate: _actions.validate,
200
+ openModal: _actions.openModal,
201
+ closeModal: _actions.closeModal,
202
+ };
203
+
204
+ export const components = {
205
+ TextInput: _components.TextInput,
206
+ Select: _components.Select,
207
+ AppGroupSelect: _components.AppGroupSelect,
208
+ Checkbox: _components.Checkbox,
209
+ CheckboxGroup: _components.CheckboxGroup,
210
+ Email: _components.Email,
211
+ Number: _components.Number,
212
+ Date: _components.Date,
213
+ DateRange: _components.DateRange,
214
+ DateInlineMulti: _components.DateInlineMulti,
215
+ Textarea: _components.Textarea,
216
+ Radio: _components.Radio,
217
+ Phone: _components.Phone,
218
+ Password: _components.Password,
219
+ Switch: _components.Switch,
220
+ FileDrop: _components.FileDrop,
221
+ TextAutoSuggest: _components.TextAutoSuggest,
222
+ Currency: _components.Currency,
223
+ WorkEmail: _components.WorkEmail,
224
+ Percentage: _components.Percentage,
225
+ SegmentedControl: _components.SegmentedControl,
226
+ Time: _components.Time,
227
+ TimeRange: _components.TimeRange,
228
+ Timezone: _components.Timezone,
229
+ Slider: _components.Slider,
230
+ RangeSlider: _components.RangeSlider,
231
+ Masker: _components.Masker,
232
+ DaySelector: _components.DaySelector,
233
+ ColorPicker: _components.ColorPicker,
234
+ SelectableGroup: _components.SelectableGroup,
235
+ Ssn: _components.Ssn,
236
+ Sin: _components.Sin,
237
+ Signature: _components.Signature,
238
+ Survey: _components.Survey,
239
+ Tree: _components.Tree,
240
+ TreeSelect: _components.TreeSelect,
241
+ File: _components.File,
242
+ InputGroup: _components.InputGroup,
243
+ Field: _components.Field,
244
+ ActionCard: _components.ActionCard,
245
+ Alert: _components.Alert,
246
+ Avatar: _components.Avatar,
247
+ Badge: _components.Badge,
248
+ Chip: _components.Chip,
249
+ Card: _components.Card,
250
+ ContentLoader: _components.ContentLoader,
251
+ Divider: _components.Divider,
252
+ Icon: _components.Icon,
253
+ Label: _components.Label,
254
+ ListItem: _components.ListItem,
255
+ Modal: _components.Modal,
256
+ ModalFooter: _components.ModalFooter,
257
+ ProgressBar: _components.ProgressBar,
258
+ Skeleton: _components.Skeleton,
259
+ Spinner: _components.Spinner,
260
+ Stepper: _components.Stepper,
261
+ TextClip: _components.TextClip,
262
+ TextSnippet: _components.TextSnippet,
263
+ Tip: _components.Tip,
264
+ CheckList: _components.CheckList,
265
+ DistributionBar: _components.DistributionBar,
266
+ ImageViewer: _components.ImageViewer,
267
+ ObjectUI: _components.ObjectUI,
268
+ ObjectUITemplate: _components.ObjectUITemplate,
269
+ ObjectUIHeader: _components.ObjectUIHeader,
270
+ ObjectUIContent: _components.ObjectUIContent,
271
+ ObjectUIStats: _components.ObjectUIStats,
272
+ SnackBar: _components.SnackBar,
273
+ Video: _components.Video,
274
+ AvatarList: _components.AvatarList,
275
+ Image: _components.Image,
276
+ AtomsSeparator: _components.AtomsSeparator,
277
+ Carousel: _components.Carousel,
278
+ TableBasic: _components.TableBasic,
279
+ LocationCard: _components.LocationCard,
280
+ LoaderCard: _components.LoaderCard,
281
+ LayoutCard: _components.LayoutCard,
282
+ AppGroupLoader: _components.AppGroupLoader,
283
+ ChartLoader: _components.ChartLoader,
284
+ ReportLoader: _components.ReportLoader,
285
+ ReportShareLoader: _components.ReportShareLoader,
286
+ ReportViewerLoader: _components.ReportViewerLoader,
287
+ SettingsLoader: _components.SettingsLoader,
288
+ ChipGroup: _components.ChipGroup,
289
+ ModalCloseButton: _components.ModalCloseButton,
290
+ Status: _components.Status,
291
+ ApiError: _components.ApiError,
292
+ Circle: _components.Circle,
293
+ CountDown: _components.CountDown,
294
+ Country: _components.Country,
295
+ ToggleableArrow: _components.ToggleableArrow,
296
+ TitleCaption: _components.TitleCaption,
297
+ AiIcon: _components.AiIcon,
298
+ Breadcrumb: _components.Breadcrumb,
299
+ Button: _components.Button,
300
+ ButtonGroup: _components.ButtonGroup,
301
+ DraggableList: _components.DraggableList,
302
+ Drawer: _components.Drawer,
303
+ Dropdown: _components.Dropdown,
304
+ ExpansionPanel: _components.ExpansionPanel,
305
+ ExpansionPanelGroup: _components.ExpansionPanelGroup,
306
+ FloatingButton: _components.FloatingButton,
307
+ IconButton: _components.IconButton,
308
+ ItemNavigator: _components.ItemNavigator,
309
+ Link: _components.Link,
310
+ MenuList: _components.MenuList,
311
+ NestedList: _components.NestedList,
312
+ Paginate: _components.Paginate,
313
+ SelectableMenu: _components.SelectableMenu,
314
+ ShowMore: _components.ShowMore,
315
+ Tab: _components.Tab,
316
+ Heading: _components.Heading,
317
+ Text: _components.Text,
318
+ Box: _components.Box,
319
+ Grid: _components.Grid,
320
+ HStack: _components.HStack,
321
+ LabelGroup: _components.LabelGroup,
322
+ Layout: _components.Layout,
323
+ PageContent: _components.PageContent,
324
+ PageHeader: _components.PageHeader,
325
+ PageAppLogo: _components.PageAppLogo,
326
+ PageFooter: _components.PageFooter,
327
+ Pane: _components.Pane,
328
+ Responsive: _components.Responsive,
329
+ SplitPane: _components.SplitPane,
330
+ VStack: _components.VStack,
331
+ CustomObjectGrid: _components.CustomObjectGrid,
332
+ ObjectListView: _components.ObjectListView,
333
+ };
334
+
335
+ export const directives = {
336
+ visible: _directives.visible,
337
+ repeat: _directives.repeat,
338
+ $item: _directives.$item,
339
+ $bindItem: _directives.$bindItem,
340
+ $index: _directives.$index,
341
+ };
342
+
343
+ // --- Default export (namespace object) ---
344
+
345
+ import { createState } from './state';
346
+ import { cond, template } from './props';
347
+ import { render } from './render';
348
+ import { visible, repeat } from './directives';
349
+ import { component } from './component';
350
+
351
+ const SDUI = {
352
+ createState,
353
+ render,
354
+ visible,
355
+ repeat,
356
+ cond,
357
+ component,
358
+ template,
359
+ components,
360
+ actions,
361
+ conditions,
362
+ directives,
363
+ };
364
+
365
+ export default SDUI;
@@ -0,0 +1,32 @@
1
+ import type { VisibilityCondition } from './conditions';
2
+ import { extractPath } from './state';
3
+
4
+ export interface CondRef {
5
+ $cond: VisibilityCondition;
6
+ $then: unknown;
7
+ $else: unknown;
8
+ }
9
+
10
+ export interface TemplateRef {
11
+ $template: string;
12
+ }
13
+
14
+ export function cond(condition: VisibilityCondition, thenValue: unknown, elseValue: unknown): CondRef {
15
+ return { $cond: condition, $then: thenValue, $else: elseValue };
16
+ }
17
+
18
+ export function template(strings: TemplateStringsArray, ...values: unknown[]): TemplateRef {
19
+ let result = '';
20
+ for (let i = 0; i < strings.length; i++) {
21
+ result += strings[i];
22
+ if (i < values.length) {
23
+ try {
24
+ const path = extractPath(values[i]);
25
+ result += `\${${path}}`;
26
+ } catch {
27
+ result += String(values[i]);
28
+ }
29
+ }
30
+ }
31
+ return { $template: result };
32
+ }
@@ -0,0 +1,58 @@
1
+ import type { SpecNode } from './components';
2
+ import type { ActionBinding } from './actions';
3
+
4
+ export interface FlatElement {
5
+ type: string;
6
+ props: Record<string, unknown>;
7
+ children: string[];
8
+ on?: Record<string, ActionBinding | ActionBinding[]>;
9
+ visible?: unknown;
10
+ watch?: Record<string, unknown>;
11
+ repeat?: { statePath: string; key?: string };
12
+ }
13
+
14
+ export interface Spec {
15
+ root: string;
16
+ elements: Record<string, FlatElement>;
17
+ state: Record<string, unknown>;
18
+ }
19
+
20
+ export function render(stateProxy: { $initialValues: Record<string, unknown> }, rootElement: SpecNode): Spec {
21
+ const elements: Record<string, FlatElement> = {};
22
+ const localStates: { path: string; initial: unknown }[] = [];
23
+ let counter = 0;
24
+
25
+ function flattenNode(node: SpecNode | null | undefined): string | null {
26
+ if (!node) return null;
27
+
28
+ // Collect local state registrations from component() wrappers
29
+ const registration = (node as any)._localStateRegistration;
30
+ if (registration) {
31
+ localStates.push(registration);
32
+ }
33
+
34
+ const id = `${node.type.toLowerCase()}_${counter++}`;
35
+ const childIds = node.children.map(flattenNode).filter((id): id is string => id !== null);
36
+
37
+ const element: FlatElement = { type: node.type, props: node.props, children: childIds };
38
+ if (node.visible !== undefined) element.visible = node.visible;
39
+ if (node.on) element.on = node.on;
40
+ if (node.watch) element.watch = node.watch;
41
+ if (node.repeat) element.repeat = node.repeat;
42
+
43
+ elements[id] = element;
44
+ return id;
45
+ }
46
+
47
+ const rootId = flattenNode(rootElement)!;
48
+
49
+ // Merge global state + local states from component() calls
50
+ const state: Record<string, unknown> = { ...stateProxy.$initialValues };
51
+ for (const { path, initial } of localStates) {
52
+ // path is like "/auto_xxx" — strip leading / for state key
53
+ const key = path.startsWith('/') ? path.slice(1) : path;
54
+ state[key] = initial;
55
+ }
56
+
57
+ return { root: rootId, elements, state };
58
+ }
@@ -0,0 +1,60 @@
1
+ // State proxy — creates deeply nested proxies that produce $state refs on access
2
+
3
+ export type StateRef = { $state: string };
4
+ export type BindStateRef = { $bindState: string };
5
+
6
+ // Deep proxy type — every property access returns another proxy (for s.teamData.team.name)
7
+ // This allows deep access regardless of the initial value (even null)
8
+ type DeepStateProxy = {
9
+ readonly [key: string]: DeepStateProxy;
10
+ } & { readonly $state: string; readonly $bind: BindStateRef; readonly $path: string };
11
+
12
+ export type StateProxy<T> = {
13
+ [K in keyof T]: T[K] extends Record<string, unknown> ? StateProxy<T[K]> & DeepStateProxy : DeepStateProxy;
14
+ } & DeepStateProxy & { readonly $initialValues: T };
15
+
16
+ const PROXY_MARKER = Symbol('stateProxy');
17
+ const INITIAL_VALUES = Symbol('initialValues');
18
+
19
+ function isStateProxy(value: unknown): boolean {
20
+ return typeof value === 'object' && value !== null && (value as any)[PROXY_MARKER] === true;
21
+ }
22
+
23
+ export function extractPath(ref: unknown): string {
24
+ if (isStateProxy(ref)) return (ref as any).$path;
25
+ if (typeof ref === 'object' && ref !== null && '$state' in ref) return (ref as any).$state;
26
+ // Support scope proxies from component() — they have $path as a getter
27
+ if (typeof ref === 'object' && ref !== null) {
28
+ try {
29
+ const p = (ref as any).$path;
30
+ if (typeof p === 'string') return p;
31
+ } catch {}
32
+ }
33
+ throw new Error('Expected a state proxy or { $state } ref');
34
+ }
35
+
36
+ function createProxy<T>(path: string, initialValues: T): StateProxy<T> {
37
+ const handler: ProxyHandler<object> = {
38
+ get(_target, prop) {
39
+ if (prop === PROXY_MARKER) return true;
40
+ if (prop === INITIAL_VALUES) return initialValues;
41
+ if (prop === '$initialValues') return initialValues;
42
+ if (prop === '$state') return path;
43
+ if (prop === '$bind') return { $bindState: path };
44
+ if (prop === '$path') return path;
45
+ // Support JSON serialization — toJSON returns { $state: path }
46
+ if (prop === 'toJSON') return () => ({ $state: path });
47
+ // For equality checks
48
+ if (prop === Symbol.toPrimitive) return () => `$state:${path}`;
49
+
50
+ const childPath = `${path}/${String(prop)}`;
51
+ return createProxy(childPath, undefined as any);
52
+ },
53
+ };
54
+
55
+ return new Proxy({} as any, handler);
56
+ }
57
+
58
+ export function createState<T extends Record<string, unknown>>(shape: T): StateProxy<T> {
59
+ return createProxy('', shape);
60
+ }
@@ -118,6 +118,11 @@ export namespace DraftHireCreateParams {
118
118
  * Custom fields for the draft hire
119
119
  */
120
120
  custom_fields?: Array<DraftHire.CustomField>;
121
+
122
+ /**
123
+ * Documents to attach to this draft hire
124
+ */
125
+ documents?: Array<DraftHire.Document>;
121
126
  }
122
127
 
123
128
  export namespace DraftHire {
@@ -177,6 +182,11 @@ export namespace DraftHireCreateParams {
177
182
  */
178
183
  equity_vesting_schedule?: EmploymentInfo.EquityVestingSchedule;
179
184
 
185
+ /**
186
+ * Job family ID
187
+ */
188
+ job_family_id?: string;
189
+
180
190
  /**
181
191
  * Job title
182
192
  */
@@ -538,6 +548,27 @@ export namespace DraftHireCreateParams {
538
548
  */
539
549
  field_value: unknown;
540
550
  }
551
+
552
+ /**
553
+ * A document to attach to a draft hire, referencing a pre-uploaded file.
554
+ */
555
+ export interface Document {
556
+ /**
557
+ * Id of a FileUploadTracker in ACTIVE status whose file should become a document
558
+ * on the hire
559
+ */
560
+ file_id: string;
561
+
562
+ /**
563
+ * Document name. Defaults to the uploaded file name when omitted.
564
+ */
565
+ name?: string;
566
+
567
+ /**
568
+ * Signature date in YYYY-MM-DD format.
569
+ */
570
+ signature_date?: string;
571
+ }
541
572
  }
542
573
  }
543
574
 
@@ -22,6 +22,16 @@ export class EarningsInputs extends APIResource {
22
22
  return this._client.getAPIList('/earnings-inputs/', PageCursorURL<EarningsInputListResponse>, options);
23
23
  }
24
24
 
25
+ /**
26
+ * Create a new earnings-input
27
+ */
28
+ create(
29
+ body: EarningsInputCreateParams | null | undefined = {},
30
+ options?: RequestOptions,
31
+ ): APIPromise<EarningsInputCreateResponse> {
32
+ return this._client.post('/earnings-inputs/', { body, ...options });
33
+ }
34
+
25
35
  /**
26
36
  * Delete a earnings-input
27
37
  */
@@ -98,9 +108,126 @@ export interface EarningsInputListResponse {
98
108
  worker_id?: string;
99
109
  }
100
110
 
111
+ /**
112
+ * V2 DTO representing an external earnings input record.
113
+ *
114
+ * Used by:
115
+ * - GET /earnings-inputs/ (list)
116
+ */
117
+ export interface EarningsInputCreateResponse {
118
+ /**
119
+ * Unique identifier for the earnings input.
120
+ */
121
+ id?: string;
122
+
123
+ /**
124
+ * Earning amount as a string-encoded decimal.
125
+ */
126
+ amount?: string;
127
+
128
+ /**
129
+ * How the earning is assigned (e.g. BY_PAY_PERIOD).
130
+ */
131
+ assignment_type?: string;
132
+
133
+ /**
134
+ * Code identifying the earning type (e.g. regular_salary).
135
+ */
136
+ earning_code?: string;
137
+
138
+ /**
139
+ * External reference identifier for this earning.
140
+ */
141
+ external_id?: string;
142
+
143
+ /**
144
+ * Hours associated with this earning as a string-encoded decimal.
145
+ */
146
+ hours?: string;
147
+
148
+ /**
149
+ * The pay period basis date for this earning.
150
+ */
151
+ pay_period_basis_date?: string;
152
+
153
+ /**
154
+ * Identifier of the payroll run this earning is assigned to, if any.
155
+ */
156
+ run_id?: string;
157
+
158
+ /**
159
+ * Current status of the earnings input (e.g. UNASSIGNED, ASSIGNED).
160
+ */
161
+ status?: string;
162
+
163
+ /**
164
+ * Time tracking labels associated with this earning.
165
+ */
166
+ time_labels?: Array<string>;
167
+
168
+ /**
169
+ * Identifier of the worker (role ID).
170
+ */
171
+ worker_id?: string;
172
+ }
173
+
174
+ export interface EarningsInputCreateParams {
175
+ /**
176
+ * Earning amount as a string-encoded decimal.
177
+ */
178
+ amount?: string;
179
+
180
+ /**
181
+ * How the earning is assigned (e.g. BY_PAY_PERIOD).
182
+ */
183
+ assignment_type?: string;
184
+
185
+ /**
186
+ * Code identifying the earning type (e.g. regular_salary).
187
+ */
188
+ earning_code?: string;
189
+
190
+ /**
191
+ * External reference identifier for this earning.
192
+ */
193
+ external_id?: string;
194
+
195
+ /**
196
+ * Hours associated with this earning as a string-encoded decimal.
197
+ */
198
+ hours?: string;
199
+
200
+ /**
201
+ * The pay period basis date for this earning.
202
+ */
203
+ pay_period_basis_date?: string;
204
+
205
+ /**
206
+ * Identifier of the payroll run this earning is assigned to, if any.
207
+ */
208
+ run_id?: string;
209
+
210
+ /**
211
+ * Current status of the earnings input (e.g. UNASSIGNED, ASSIGNED).
212
+ */
213
+ status?: string;
214
+
215
+ /**
216
+ * Time tracking labels associated with this earning.
217
+ */
218
+ time_labels?: Array<string>;
219
+
220
+ /**
221
+ * Identifier of the worker (role ID).
222
+ */
223
+ worker_id?: string;
224
+ }
225
+
101
226
  export declare namespace EarningsInputs {
102
227
  export {
103
228
  type EarningsInputListResponse as EarningsInputListResponse,
229
+ type EarningsInputCreateResponse as EarningsInputCreateResponse,
104
230
  type EarningsInputListResponsesPageCursorURL as EarningsInputListResponsesPageCursorURL,
231
+ type EarningsInputCreateParams as EarningsInputCreateParams,
105
232
  };
106
233
  }