@osdk/react-components 0.12.0 → 0.13.0

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 (328) hide show
  1. package/AGENTS.md +4 -0
  2. package/CHANGELOG.md +11 -0
  3. package/build/browser/action-form/ActionForm.js +19 -11
  4. package/build/browser/action-form/ActionForm.js.map +1 -1
  5. package/build/browser/action-form/ActionFormApi.js.map +1 -1
  6. package/build/browser/action-form/BaseForm.js +19 -13
  7. package/build/browser/action-form/BaseForm.js.map +1 -1
  8. package/build/browser/action-form/BaseForm.module.css +7 -7
  9. package/build/browser/action-form/FormField.js +5 -2
  10. package/build/browser/action-form/FormField.js.map +1 -1
  11. package/build/browser/action-form/FormField.module.css +6 -1
  12. package/build/browser/action-form/FormField.module.css.js +1 -0
  13. package/build/browser/action-form/FormFieldApi.js +7 -1
  14. package/build/browser/action-form/FormFieldApi.js.map +1 -1
  15. package/build/browser/action-form/FormHeader.module.css +2 -2
  16. package/build/browser/action-form/fields/DateCalendar.js +41 -3
  17. package/build/browser/action-form/fields/DateCalendar.js.map +1 -1
  18. package/build/browser/action-form/fields/DateCalendar.module.css +59 -10
  19. package/build/browser/action-form/fields/DateCalendar.module.css.js +5 -1
  20. package/build/browser/action-form/fields/DateRangeCalendar.js +8 -5
  21. package/build/browser/action-form/fields/DateRangeCalendar.js.map +1 -1
  22. package/build/browser/action-form/fields/DateRangeInputField.js +76 -61
  23. package/build/browser/action-form/fields/DateRangeInputField.js.map +1 -1
  24. package/build/browser/action-form/fields/DateRangeInputField.module.css +0 -15
  25. package/build/browser/action-form/fields/DateRangeInputField.module.css.js +1 -2
  26. package/build/browser/action-form/fields/DatetimePickerField.js +74 -40
  27. package/build/browser/action-form/fields/DatetimePickerField.js.map +1 -1
  28. package/build/browser/action-form/fields/DatetimePickerField.module.css +2 -9
  29. package/build/browser/action-form/fields/FieldBridge.js +1 -1
  30. package/build/browser/action-form/fields/FieldBridge.js.map +1 -1
  31. package/build/browser/action-form/fields/FilePickerField.js +47 -39
  32. package/build/browser/action-form/fields/FilePickerField.js.map +1 -1
  33. package/build/browser/action-form/fields/FilePickerField.module.css +43 -31
  34. package/build/browser/action-form/fields/FilePickerField.module.css.js +2 -2
  35. package/build/browser/action-form/fields/FormFieldRenderer.js +9 -0
  36. package/build/browser/action-form/fields/FormFieldRenderer.js.map +1 -1
  37. package/build/browser/action-form/fields/RadioButtonsField.module.css +3 -3
  38. package/build/browser/action-form/fields/SwitchField.js +34 -0
  39. package/build/browser/action-form/fields/SwitchField.js.map +1 -0
  40. package/build/browser/action-form/fields/TimePicker.js +165 -26
  41. package/build/browser/action-form/fields/TimePicker.js.map +1 -1
  42. package/build/browser/action-form/fields/TimePicker.module.css +27 -2
  43. package/build/browser/action-form/fields/TimePicker.module.css.js +3 -1
  44. package/build/browser/action-form/fields/calendarShared.js +5 -0
  45. package/build/browser/action-form/fields/calendarShared.js.map +1 -1
  46. package/build/browser/action-form/fields/useDateEditState.js +3 -4
  47. package/build/browser/action-form/fields/useDateEditState.js.map +1 -1
  48. package/build/browser/base-components/action-button/ActionButton.js +2 -1
  49. package/build/browser/base-components/action-button/ActionButton.js.map +1 -1
  50. package/build/browser/base-components/action-button/ActionButton.module.css +19 -0
  51. package/build/browser/base-components/action-button/ActionButton.module.css.js +2 -1
  52. package/build/browser/base-components/combobox/Combobox.module.css +31 -3
  53. package/build/browser/base-components/select/Select.module.css +18 -0
  54. package/build/browser/base-components/switch/Switch.module.css +18 -6
  55. package/build/browser/filter-list/base/inputs/ListogramInput.js +34 -6
  56. package/build/browser/filter-list/base/inputs/ListogramInput.js.map +1 -1
  57. package/build/browser/filter-list/base/inputs/ListogramInput.module.css +11 -5
  58. package/build/browser/filter-list/base/inputs/ListogramInput.module.css.js +1 -1
  59. package/build/browser/filter-list/base/inputs/MultiSelectInput.js +20 -12
  60. package/build/browser/filter-list/base/inputs/MultiSelectInput.js.map +1 -1
  61. package/build/browser/filter-list/base/inputs/NoValueLabel.js +36 -0
  62. package/build/browser/filter-list/base/inputs/NoValueLabel.js.map +1 -0
  63. package/build/browser/filter-list/base/inputs/NoValueLabel.module.css +20 -0
  64. package/build/browser/filter-list/base/inputs/NoValueLabel.module.css.js +6 -0
  65. package/build/browser/filter-list/base/inputs/NullValueWrapper.js +4 -3
  66. package/build/browser/filter-list/base/inputs/NullValueWrapper.js.map +1 -1
  67. package/build/browser/filter-list/base/inputs/NullValueWrapper.module.css +10 -7
  68. package/build/browser/filter-list/base/inputs/NullValueWrapper.module.css.js +1 -1
  69. package/build/browser/filter-list/base/inputs/SingleSelectInput.js +13 -8
  70. package/build/browser/filter-list/base/inputs/SingleSelectInput.js.map +1 -1
  71. package/build/browser/filter-list/base/inputs/TextTagsInput.js +6 -2
  72. package/build/browser/filter-list/base/inputs/TextTagsInput.js.map +1 -1
  73. package/build/browser/filter-list/hooks/useFilterListState.js +7 -6
  74. package/build/browser/filter-list/hooks/useFilterListState.js.map +1 -1
  75. package/build/browser/filter-list/hooks/useStableMapEntries.js +35 -0
  76. package/build/browser/filter-list/hooks/useStableMapEntries.js.map +1 -0
  77. package/build/browser/filter-list/utils/filterValues.js +13 -0
  78. package/build/browser/filter-list/utils/filterValues.js.map +1 -1
  79. package/build/browser/object-table/DefaultCellRenderer.js +12 -2
  80. package/build/browser/object-table/DefaultCellRenderer.js.map +1 -1
  81. package/build/browser/object-table/EditableCell.js +14 -4
  82. package/build/browser/object-table/EditableCell.js.map +1 -1
  83. package/build/browser/object-table/EditableCell.module.css +4 -0
  84. package/build/browser/object-table/EditableCell.module.css.js +1 -0
  85. package/build/browser/object-table/ObjectTable.js +3 -1
  86. package/build/browser/object-table/ObjectTable.js.map +1 -1
  87. package/build/browser/object-table/ObjectTableApi.js.map +1 -1
  88. package/build/browser/object-table/Table.js +8 -4
  89. package/build/browser/object-table/Table.js.map +1 -1
  90. package/build/browser/object-table/TableBody.js +4 -2
  91. package/build/browser/object-table/TableBody.js.map +1 -1
  92. package/build/browser/object-table/TableRow.js +12 -4
  93. package/build/browser/object-table/TableRow.js.map +1 -1
  94. package/build/browser/object-table/hooks/useColumnDefs.js.map +1 -1
  95. package/build/browser/object-table/utils/editableUtils.js +39 -0
  96. package/build/browser/object-table/utils/editableUtils.js.map +1 -0
  97. package/build/browser/object-table/utils/shouldShowEditableCell.js +1 -1
  98. package/build/browser/object-table/utils/shouldShowEditableCell.js.map +1 -1
  99. package/build/browser/object-table/utils/types.js.map +1 -1
  100. package/build/browser/styles.css +331 -130
  101. package/build/browser/tokens/component-tokens/button.css +15 -0
  102. package/build/browser/tokens/component-tokens/combobox.css +9 -0
  103. package/build/browser/tokens/component-tokens/datetime-picker.css +2 -2
  104. package/build/browser/tokens/component-tokens/file-picker.css +0 -10
  105. package/build/browser/tokens/component-tokens/filter-list.css +9 -6
  106. package/build/browser/tokens/component-tokens/form-section.css +1 -1
  107. package/build/browser/tokens/component-tokens/form.css +9 -5
  108. package/build/browser/tokens/component-tokens/table.css +3 -5
  109. package/build/browser/tokens.css +1 -0
  110. package/build/browser/util/UserAgent.js +1 -1
  111. package/build/cjs/{DateCalendar-2W4QHEEI.css → DateCalendar-G7RC2FCG.css} +105 -8
  112. package/build/cjs/DateCalendar-G7RC2FCG.css.map +1 -0
  113. package/build/cjs/DateCalendar-RX7HP2XP.cjs +26 -0
  114. package/build/cjs/{DateCalendar-QGSYBWJB.cjs.map → DateCalendar-RX7HP2XP.cjs.map} +1 -1
  115. package/build/cjs/{DateRangeCalendar-M63S2LLG.css → DateRangeCalendar-JBVYJDBJ.css} +105 -8
  116. package/build/cjs/DateRangeCalendar-JBVYJDBJ.css.map +1 -0
  117. package/build/cjs/DateRangeCalendar-OHT4IUWQ.cjs +54 -0
  118. package/build/cjs/DateRangeCalendar-OHT4IUWQ.cjs.map +1 -0
  119. package/build/cjs/{chunk-T7I6O43T.cjs → chunk-6SPXSFPI.cjs} +237 -85
  120. package/build/cjs/chunk-6SPXSFPI.cjs.map +1 -0
  121. package/build/cjs/{chunk-SZXVBDSA.cjs → chunk-6UDBHYSO.cjs} +3 -3
  122. package/build/cjs/{chunk-SZXVBDSA.cjs.map → chunk-6UDBHYSO.cjs.map} +1 -1
  123. package/build/cjs/{chunk-YBDS5WQP.cjs → chunk-7H6WXQ35.cjs} +4 -4
  124. package/build/cjs/{chunk-YBDS5WQP.cjs.map → chunk-7H6WXQ35.cjs.map} +1 -1
  125. package/build/cjs/{chunk-VVJFMOZI.cjs → chunk-I3OSD6CF.cjs} +19 -45
  126. package/build/cjs/chunk-I3OSD6CF.cjs.map +1 -0
  127. package/build/cjs/chunk-MD4KDE44.cjs +41 -0
  128. package/build/cjs/chunk-MD4KDE44.cjs.map +1 -0
  129. package/build/cjs/{chunk-YPXTSEE7.cjs → chunk-MLFMSZJQ.cjs} +85 -38
  130. package/build/cjs/chunk-MLFMSZJQ.cjs.map +1 -0
  131. package/build/cjs/chunk-MQYOHGPY.cjs +52 -0
  132. package/build/cjs/chunk-MQYOHGPY.cjs.map +1 -0
  133. package/build/cjs/{chunk-BJDCC446.cjs → chunk-PTTCWNZZ.cjs} +417 -364
  134. package/build/cjs/chunk-PTTCWNZZ.cjs.map +1 -0
  135. package/build/cjs/{chunk-B2GRQRWU.cjs → chunk-TOJSJN3L.cjs} +44 -8
  136. package/build/cjs/chunk-TOJSJN3L.cjs.map +1 -0
  137. package/build/cjs/{chunk-JLESWL47.cjs → chunk-V7XWTJV7.cjs} +4 -2
  138. package/build/cjs/chunk-V7XWTJV7.cjs.map +1 -0
  139. package/build/cjs/{chunk-L5LPFCXT.cjs → chunk-W2IASYE4.cjs} +163 -125
  140. package/build/cjs/chunk-W2IASYE4.cjs.map +1 -0
  141. package/build/cjs/chunk-X337DNCW.cjs +45 -0
  142. package/build/cjs/chunk-X337DNCW.cjs.map +1 -0
  143. package/build/cjs/{chunk-SB2VTP67.cjs → chunk-Z7VHLTKD.cjs} +2 -64
  144. package/build/cjs/chunk-Z7VHLTKD.cjs.map +1 -0
  145. package/build/cjs/public/experimental/action-form.cjs +11 -9
  146. package/build/cjs/public/experimental/action-form.css +223 -68
  147. package/build/cjs/public/experimental/action-form.css.map +1 -1
  148. package/build/cjs/public/experimental/action-form.d.cts +83 -74
  149. package/build/cjs/public/experimental/filter-list.cjs +9 -8
  150. package/build/cjs/public/experimental/filter-list.css +38 -19
  151. package/build/cjs/public/experimental/filter-list.css.map +1 -1
  152. package/build/cjs/public/experimental/object-table.cjs +14 -12
  153. package/build/cjs/public/experimental/object-table.css +152 -59
  154. package/build/cjs/public/experimental/object-table.css.map +1 -1
  155. package/build/cjs/public/experimental/object-table.d.cts +39 -20
  156. package/build/cjs/public/experimental/pdf-viewer.cjs +24 -24
  157. package/build/cjs/public/experimental.cjs +46 -44
  158. package/build/cjs/public/experimental.css +242 -139
  159. package/build/cjs/public/experimental.css.map +1 -1
  160. package/build/cjs/public/primitives.cjs +8 -7
  161. package/build/cjs/public/primitives.css +15 -0
  162. package/build/cjs/public/primitives.css.map +1 -1
  163. package/build/cjs/public/primitives.d.cts +1 -0
  164. package/build/esm/action-form/ActionForm.js +19 -11
  165. package/build/esm/action-form/ActionForm.js.map +1 -1
  166. package/build/esm/action-form/ActionFormApi.js.map +1 -1
  167. package/build/esm/action-form/BaseForm.js +19 -13
  168. package/build/esm/action-form/BaseForm.js.map +1 -1
  169. package/build/esm/action-form/BaseForm.module.css +7 -7
  170. package/build/esm/action-form/FormField.js +5 -2
  171. package/build/esm/action-form/FormField.js.map +1 -1
  172. package/build/esm/action-form/FormField.module.css +6 -1
  173. package/build/esm/action-form/FormFieldApi.js +7 -1
  174. package/build/esm/action-form/FormFieldApi.js.map +1 -1
  175. package/build/esm/action-form/FormHeader.module.css +2 -2
  176. package/build/esm/action-form/fields/DateCalendar.js +41 -3
  177. package/build/esm/action-form/fields/DateCalendar.js.map +1 -1
  178. package/build/esm/action-form/fields/DateCalendar.module.css +59 -10
  179. package/build/esm/action-form/fields/DateRangeCalendar.js +8 -5
  180. package/build/esm/action-form/fields/DateRangeCalendar.js.map +1 -1
  181. package/build/esm/action-form/fields/DateRangeInputField.js +76 -61
  182. package/build/esm/action-form/fields/DateRangeInputField.js.map +1 -1
  183. package/build/esm/action-form/fields/DateRangeInputField.module.css +0 -15
  184. package/build/esm/action-form/fields/DatetimePickerField.js +74 -40
  185. package/build/esm/action-form/fields/DatetimePickerField.js.map +1 -1
  186. package/build/esm/action-form/fields/DatetimePickerField.module.css +2 -9
  187. package/build/esm/action-form/fields/FieldBridge.js +1 -1
  188. package/build/esm/action-form/fields/FieldBridge.js.map +1 -1
  189. package/build/esm/action-form/fields/FilePickerField.js +47 -39
  190. package/build/esm/action-form/fields/FilePickerField.js.map +1 -1
  191. package/build/esm/action-form/fields/FilePickerField.module.css +43 -31
  192. package/build/esm/action-form/fields/FormFieldRenderer.js +9 -0
  193. package/build/esm/action-form/fields/FormFieldRenderer.js.map +1 -1
  194. package/build/esm/action-form/fields/RadioButtonsField.module.css +3 -3
  195. package/build/esm/action-form/fields/SwitchField.js +34 -0
  196. package/build/esm/action-form/fields/SwitchField.js.map +1 -0
  197. package/build/esm/action-form/fields/TimePicker.js +165 -26
  198. package/build/esm/action-form/fields/TimePicker.js.map +1 -1
  199. package/build/esm/action-form/fields/TimePicker.module.css +27 -2
  200. package/build/esm/action-form/fields/calendarShared.js +5 -0
  201. package/build/esm/action-form/fields/calendarShared.js.map +1 -1
  202. package/build/esm/action-form/fields/useDateEditState.js +3 -4
  203. package/build/esm/action-form/fields/useDateEditState.js.map +1 -1
  204. package/build/esm/base-components/action-button/ActionButton.js +2 -1
  205. package/build/esm/base-components/action-button/ActionButton.js.map +1 -1
  206. package/build/esm/base-components/action-button/ActionButton.module.css +19 -0
  207. package/build/esm/base-components/combobox/Combobox.module.css +31 -3
  208. package/build/esm/base-components/select/Select.module.css +18 -0
  209. package/build/esm/base-components/switch/Switch.module.css +18 -6
  210. package/build/esm/filter-list/base/inputs/ListogramInput.js +34 -6
  211. package/build/esm/filter-list/base/inputs/ListogramInput.js.map +1 -1
  212. package/build/esm/filter-list/base/inputs/ListogramInput.module.css +11 -5
  213. package/build/esm/filter-list/base/inputs/MultiSelectInput.js +20 -12
  214. package/build/esm/filter-list/base/inputs/MultiSelectInput.js.map +1 -1
  215. package/build/esm/filter-list/base/inputs/NoValueLabel.js +36 -0
  216. package/build/esm/filter-list/base/inputs/NoValueLabel.js.map +1 -0
  217. package/build/esm/filter-list/base/inputs/NoValueLabel.module.css +20 -0
  218. package/build/esm/filter-list/base/inputs/NullValueWrapper.js +4 -3
  219. package/build/esm/filter-list/base/inputs/NullValueWrapper.js.map +1 -1
  220. package/build/esm/filter-list/base/inputs/NullValueWrapper.module.css +10 -7
  221. package/build/esm/filter-list/base/inputs/SingleSelectInput.js +13 -8
  222. package/build/esm/filter-list/base/inputs/SingleSelectInput.js.map +1 -1
  223. package/build/esm/filter-list/base/inputs/TextTagsInput.js +6 -2
  224. package/build/esm/filter-list/base/inputs/TextTagsInput.js.map +1 -1
  225. package/build/esm/filter-list/hooks/useFilterListState.js +7 -6
  226. package/build/esm/filter-list/hooks/useFilterListState.js.map +1 -1
  227. package/build/esm/filter-list/hooks/useStableMapEntries.js +35 -0
  228. package/build/esm/filter-list/hooks/useStableMapEntries.js.map +1 -0
  229. package/build/esm/filter-list/utils/filterValues.js +13 -0
  230. package/build/esm/filter-list/utils/filterValues.js.map +1 -1
  231. package/build/esm/object-table/DefaultCellRenderer.js +12 -2
  232. package/build/esm/object-table/DefaultCellRenderer.js.map +1 -1
  233. package/build/esm/object-table/EditableCell.js +14 -4
  234. package/build/esm/object-table/EditableCell.js.map +1 -1
  235. package/build/esm/object-table/EditableCell.module.css +4 -0
  236. package/build/esm/object-table/ObjectTable.js +3 -1
  237. package/build/esm/object-table/ObjectTable.js.map +1 -1
  238. package/build/esm/object-table/ObjectTableApi.js.map +1 -1
  239. package/build/esm/object-table/Table.js +8 -4
  240. package/build/esm/object-table/Table.js.map +1 -1
  241. package/build/esm/object-table/TableBody.js +4 -2
  242. package/build/esm/object-table/TableBody.js.map +1 -1
  243. package/build/esm/object-table/TableRow.js +12 -4
  244. package/build/esm/object-table/TableRow.js.map +1 -1
  245. package/build/esm/object-table/hooks/useColumnDefs.js.map +1 -1
  246. package/build/esm/object-table/utils/editableUtils.js +39 -0
  247. package/build/esm/object-table/utils/editableUtils.js.map +1 -0
  248. package/build/esm/object-table/utils/shouldShowEditableCell.js +1 -1
  249. package/build/esm/object-table/utils/shouldShowEditableCell.js.map +1 -1
  250. package/build/esm/object-table/utils/types.js.map +1 -1
  251. package/build/esm/tokens/component-tokens/button.css +15 -0
  252. package/build/esm/tokens/component-tokens/combobox.css +9 -0
  253. package/build/esm/tokens/component-tokens/datetime-picker.css +2 -2
  254. package/build/esm/tokens/component-tokens/file-picker.css +0 -10
  255. package/build/esm/tokens/component-tokens/filter-list.css +9 -6
  256. package/build/esm/tokens/component-tokens/form-section.css +1 -1
  257. package/build/esm/tokens/component-tokens/form.css +9 -5
  258. package/build/esm/tokens/component-tokens/table.css +3 -5
  259. package/build/esm/tokens.css +1 -0
  260. package/build/esm/util/UserAgent.js +1 -1
  261. package/build/types/action-form/ActionFormApi.d.ts +8 -8
  262. package/build/types/action-form/ActionFormApi.d.ts.map +1 -1
  263. package/build/types/action-form/BaseForm.d.ts.map +1 -1
  264. package/build/types/action-form/FormFieldApi.d.ts +29 -22
  265. package/build/types/action-form/FormFieldApi.d.ts.map +1 -1
  266. package/build/types/action-form/fields/DateCalendar.d.ts +6 -1
  267. package/build/types/action-form/fields/DateCalendar.d.ts.map +1 -1
  268. package/build/types/action-form/fields/DateRangeCalendar.d.ts.map +1 -1
  269. package/build/types/action-form/fields/DateRangeInputField.d.ts.map +1 -1
  270. package/build/types/action-form/fields/DatetimePickerField.d.ts.map +1 -1
  271. package/build/types/action-form/fields/FieldBridge.d.ts.map +1 -1
  272. package/build/types/action-form/fields/FilePickerField.d.ts.map +1 -1
  273. package/build/types/action-form/fields/FormFieldRenderer.d.ts.map +1 -1
  274. package/build/types/action-form/fields/SwitchField.d.ts +7 -0
  275. package/build/types/action-form/fields/SwitchField.d.ts.map +1 -0
  276. package/build/types/action-form/fields/TimePicker.d.ts +4 -5
  277. package/build/types/action-form/fields/TimePicker.d.ts.map +1 -1
  278. package/build/types/action-form/fields/useDateEditState.d.ts +2 -2
  279. package/build/types/base-components/action-button/ActionButton.d.ts +1 -0
  280. package/build/types/base-components/action-button/ActionButton.d.ts.map +1 -1
  281. package/build/types/filter-list/base/inputs/ListogramInput.d.ts.map +1 -1
  282. package/build/types/filter-list/base/inputs/MultiSelectInput.d.ts.map +1 -1
  283. package/build/types/filter-list/base/inputs/NoValueLabel.d.ts +15 -0
  284. package/build/types/filter-list/base/inputs/NoValueLabel.d.ts.map +1 -0
  285. package/build/types/filter-list/base/inputs/NullValueWrapper.d.ts.map +1 -1
  286. package/build/types/filter-list/base/inputs/SingleSelectInput.d.ts.map +1 -1
  287. package/build/types/filter-list/base/inputs/TextTagsInput.d.ts.map +1 -1
  288. package/build/types/filter-list/hooks/useFilterListState.d.ts.map +1 -1
  289. package/build/types/filter-list/hooks/useStableMapEntries.d.ts +9 -0
  290. package/build/types/filter-list/hooks/useStableMapEntries.d.ts.map +1 -0
  291. package/build/types/filter-list/utils/filterValues.d.ts +7 -0
  292. package/build/types/filter-list/utils/filterValues.d.ts.map +1 -1
  293. package/build/types/object-table/DefaultCellRenderer.d.ts.map +1 -1
  294. package/build/types/object-table/EditableCell.d.ts +1 -1
  295. package/build/types/object-table/EditableCell.d.ts.map +1 -1
  296. package/build/types/object-table/ObjectTableApi.d.ts +26 -7
  297. package/build/types/object-table/ObjectTableApi.d.ts.map +1 -1
  298. package/build/types/object-table/Table.d.ts +9 -2
  299. package/build/types/object-table/Table.d.ts.map +1 -1
  300. package/build/types/object-table/TableBody.d.ts +2 -1
  301. package/build/types/object-table/TableBody.d.ts.map +1 -1
  302. package/build/types/object-table/TableRow.d.ts +2 -1
  303. package/build/types/object-table/TableRow.d.ts.map +1 -1
  304. package/build/types/object-table/utils/editableUtils.d.ts +16 -0
  305. package/build/types/object-table/utils/editableUtils.d.ts.map +1 -0
  306. package/build/types/object-table/utils/shouldShowEditableCell.d.ts +2 -1
  307. package/build/types/object-table/utils/shouldShowEditableCell.d.ts.map +1 -1
  308. package/build/types/object-table/utils/types.d.ts +4 -11
  309. package/build/types/object-table/utils/types.d.ts.map +1 -1
  310. package/docs/ActionForm.md +176 -0
  311. package/docs/CSSVariables.md +31 -30
  312. package/docs/ObjectTable.md +141 -16
  313. package/package.json +6 -5
  314. package/build/cjs/DateCalendar-2W4QHEEI.css.map +0 -1
  315. package/build/cjs/DateCalendar-QGSYBWJB.cjs +0 -24
  316. package/build/cjs/DateRangeCalendar-JHO2BF3Z.cjs +0 -48
  317. package/build/cjs/DateRangeCalendar-JHO2BF3Z.cjs.map +0 -1
  318. package/build/cjs/DateRangeCalendar-M63S2LLG.css.map +0 -1
  319. package/build/cjs/chunk-B2GRQRWU.cjs.map +0 -1
  320. package/build/cjs/chunk-BJDCC446.cjs.map +0 -1
  321. package/build/cjs/chunk-JLESWL47.cjs.map +0 -1
  322. package/build/cjs/chunk-L5LPFCXT.cjs.map +0 -1
  323. package/build/cjs/chunk-SB2VTP67.cjs.map +0 -1
  324. package/build/cjs/chunk-T7I6O43T.cjs.map +0 -1
  325. package/build/cjs/chunk-UCTQICPR.cjs +0 -10
  326. package/build/cjs/chunk-UCTQICPR.cjs.map +0 -1
  327. package/build/cjs/chunk-VVJFMOZI.cjs.map +0 -1
  328. package/build/cjs/chunk-YPXTSEE7.cjs.map +0 -1
@@ -4,70 +4,74 @@ import { ActionValidationError } from '@osdk/client';
4
4
 
5
5
  type PortalContainer = HTMLElement | ShadowRoot | null | React__default.RefObject<HTMLElement | ShadowRoot | null>;
6
6
  /**
7
- * A form field definition specifies configuration for a single field
8
- */
9
- interface FormFieldDefinition<Q extends ActionDefinition<unknown>, K extends FieldKey<Q> = FieldKey<Q>> {
10
- /**
11
- * The field's unique key
12
- */
13
- fieldKey: K;
14
- /**
15
- * Display label for the field
16
- */
17
- label: string;
18
- /**
19
- * Default value of the field
20
- */
21
- defaultValue?: FieldValueType<Q, K>;
22
- /**
23
- * The form field component type to render
24
- */
25
- fieldComponent: ValidFormFieldForPropertyType<FieldDescriptorType<Q, K>>;
26
- /**
27
- * Whether the field is required
28
- */
29
- isRequired?: boolean;
30
- /**
31
- * Placeholder text
32
- */
33
- placeholder?: string;
34
- /**
35
- * Additional information to display on this field.
36
- * Accepts plain text or rich content (e.g. JSX with links or formatting).
37
- * Rendered as a tooltip icon next to the label by default, or below the
38
- * label when helperTextPlacement is "bottom".
39
- */
40
- helperText?: React__default.ReactNode;
41
- /**
42
- * The placement of the helper text either below the field or in a tooltip
43
- *
44
- * @default "tooltip"
45
- */
46
- helperTextPlacement?: "bottom" | "tooltip";
47
- /**
48
- * Whether the field is disabled
49
- */
50
- isDisabled?: boolean;
51
- /**
52
- * A callback to customize error messages when a built-in validation rule fails.
53
- * Receives a discriminated union with the constraint data (e.g., the min value
54
- * that was exceeded) so the message can reference the threshold.
55
- *
56
- * Return a string to override the default message, or `undefined` to keep it.
57
- */
58
- onValidationError?: (error: ValidationError) => string | undefined;
59
- /**
60
- * Additional function to validate the field.
61
- *
62
- * Return `undefined` if valid, or an error message string if invalid.
63
- */
64
- validate?: (value: FieldValueType<Q, K>) => Promise<string | undefined>;
65
- /**
66
- * The component props for the form field.
67
- * Excludes runtime props (value, onChange) which are managed by ActionForm.
68
- */
69
- fieldComponentProps: Omit<FormFieldPropsByType[ValidFormFieldForPropertyType<FieldDescriptorType<Q, K>>], FormManagedProps<ValidFormFieldForPropertyType<FieldDescriptorType<Q, K>>>>;
70
- }
7
+ * A form field definition specifies configuration for a single field.
8
+ * Implemented as a distributed mapped type so `fieldComponent` narrows
9
+ * `fieldComponentProps` to the matching component prop type.
10
+ */
11
+ type FormFieldDefinition<Q extends ActionDefinition<unknown>, K extends FieldKey<Q> = FieldKey<Q>> = K extends unknown ? {
12
+ [C in ValidFormFieldForPropertyType<FieldDescriptorType<Q, K>>]: {
13
+ /**
14
+ * The field's unique key
15
+ */
16
+ fieldKey: K;
17
+ /**
18
+ * Display label for the field
19
+ */
20
+ label: string;
21
+ /**
22
+ * Default value of the field
23
+ */
24
+ defaultValue?: FieldValueType<Q, K>;
25
+ /**
26
+ * Whether the field is required
27
+ */
28
+ isRequired?: boolean;
29
+ /**
30
+ * Placeholder text
31
+ */
32
+ placeholder?: string;
33
+ /**
34
+ * Additional information to display on this field.
35
+ * Accepts plain text or rich content (e.g. JSX with links or formatting).
36
+ * Rendered as a tooltip icon next to the label by default, or below the
37
+ * label when helperTextPlacement is "bottom".
38
+ */
39
+ helperText?: React__default.ReactNode;
40
+ /**
41
+ * The placement of the helper text either below the field or in a tooltip
42
+ *
43
+ * @default "tooltip"
44
+ */
45
+ helperTextPlacement?: "bottom" | "tooltip";
46
+ /**
47
+ * Whether the field is disabled
48
+ */
49
+ isDisabled?: boolean;
50
+ /**
51
+ * A callback to customize error messages when a built-in validation rule fails.
52
+ * Receives a discriminated union with the constraint data (e.g., the min value
53
+ * that was exceeded) so the message can reference the threshold.
54
+ *
55
+ * Return a string to override the default message, or `undefined` to keep it.
56
+ */
57
+ onValidationError?: (error: ValidationError) => string | undefined;
58
+ /**
59
+ * Additional function to validate the field.
60
+ *
61
+ * Return `undefined` if valid, or an error message string if invalid.
62
+ */
63
+ validate?: (value: FieldValueType<Q, K>) => Promise<string | undefined>;
64
+ /**
65
+ * The form field component type to render
66
+ */
67
+ fieldComponent: C;
68
+ /**
69
+ * The component props for the form field.
70
+ * Excludes runtime props (value, onChange) which are managed by ActionForm.
71
+ */
72
+ fieldComponentProps: Omit<FormFieldPropsByType[C], FormManagedProps<C>>;
73
+ };
74
+ }[ValidFormFieldForPropertyType<FieldDescriptorType<Q, K>>] : never;
71
75
  /**
72
76
  * A discriminated union describing which validation rule failed and the
73
77
  * constraint data the user needs to build a meaningful error message.
@@ -105,6 +109,7 @@ interface FormFieldPropsByType {
105
109
  OBJECT_SELECT: ObjectSelectFieldProps<ObjectTypeDefinition>;
106
110
  OBJECT_SET: ObjectSetFieldProps<ObjectTypeDefinition>;
107
111
  RADIO_BUTTONS: RadioButtonsFieldProps<unknown>;
112
+ SWITCH: SwitchFieldProps;
108
113
  TEXT_AREA: TextAreaFieldProps;
109
114
  TEXT_INPUT: TextInputFieldProps;
110
115
  CUSTOM: CustomFieldProps<unknown>;
@@ -367,6 +372,10 @@ interface RadioButtonsFieldProps<V> extends BaseFormFieldProps<V> {
367
372
  */
368
373
  orientation?: "horizontal" | "vertical";
369
374
  }
375
+ /**
376
+ * Switch field props for boolean values.
377
+ */
378
+ type SwitchFieldProps = BaseFormFieldProps<boolean>;
370
379
  /**
371
380
  * Option interface for radio button options
372
381
  */
@@ -459,7 +468,7 @@ type FieldDescriptorType<Q extends ActionDefinition<unknown> = ActionDefinition<
459
468
  /**
460
469
  * Available form field component types
461
470
  */
462
- type FieldComponent = "DATE_RANGE_INPUT" | "DATETIME_PICKER" | "DROPDOWN" | "FILE_PICKER" | "NUMBER_INPUT" | "OBJECT_SELECT" | "OBJECT_SET" | "RADIO_BUTTONS" | "TEXT_AREA" | "TEXT_INPUT" | "CUSTOM";
471
+ type FieldComponent = "DATE_RANGE_INPUT" | "DATETIME_PICKER" | "DROPDOWN" | "FILE_PICKER" | "NUMBER_INPUT" | "OBJECT_SELECT" | "OBJECT_SET" | "RADIO_BUTTONS" | "SWITCH" | "TEXT_AREA" | "TEXT_INPUT" | "CUSTOM";
463
472
  /**
464
473
  * Describes the data type of a form field, independent of OSDK.
465
474
  * Mirrors ActionMetadata.DataType to keep the rendering layer OSDK-agnostic.
@@ -510,11 +519,11 @@ type RendererFieldDefinition = {
510
519
  /**
511
520
  * Gets valid form field types for a given property type
512
521
  */
513
- type ValidFormFieldForPropertyType<P extends FieldDescriptorType> = P extends {
522
+ type ValidFormFieldForPropertyType<P extends FieldDescriptorType> = "CUSTOM" | (P extends {
514
523
  type: "objectSet";
515
524
  } ? "OBJECT_SET" : P extends {
516
525
  type: "object";
517
- } ? "OBJECT_SELECT" : P extends "mediaReference" | "attachment" ? "FILE_PICKER" : P extends "boolean" ? "RADIO_BUTTONS" | "DROPDOWN" : P extends "string" ? "TEXT_INPUT" | "TEXT_AREA" : P extends "datetime" | "timestamp" ? "DATETIME_PICKER" : P extends "double" | "integer" | "long" | "float" | "short" | "byte" | "decimal" ? "NUMBER_INPUT" : never;
526
+ } ? "OBJECT_SELECT" : P extends "mediaReference" | "attachment" ? "FILE_PICKER" : P extends "boolean" ? "RADIO_BUTTONS" | "DROPDOWN" | "SWITCH" : P extends "string" ? "TEXT_INPUT" | "TEXT_AREA" : P extends "datetime" | "timestamp" ? "DATETIME_PICKER" : P extends "double" | "integer" | "long" | "float" | "short" | "byte" | "decimal" ? "NUMBER_INPUT" : never);
518
527
 
519
528
  /**
520
529
  * Props for the ActionForm component.
@@ -529,8 +538,14 @@ type ActionFormProps<Q extends ActionDefinition<unknown>> = (ActionFormConfigPro
529
538
  formState?: undefined;
530
539
  onFormStateChange?: (updater: (prevState: FormState<Q>) => FormState<Q>) => void;
531
540
  });
532
- interface ActionFormConfigProps<Q extends ActionDefinition<unknown>> extends Pick<BaseFormProps, "formTitle" | "isSubmitDisabled" | "portalContainer"> {
541
+ interface ActionFormConfigProps<Q extends ActionDefinition<unknown>> extends Pick<BaseFormProps, "formTitle" | "isSubmitDisabled"> {
533
542
  actionDefinition: Q;
543
+ /**
544
+ * Whether to show the form title.
545
+ *
546
+ * @default false
547
+ */
548
+ showFormTitle?: boolean;
534
549
  /**
535
550
  * If not supplied, field definitions are constructed from `ActionParameters`.
536
551
  */
@@ -639,12 +654,6 @@ interface BaseFormCommonProps {
639
654
  submitButtonText?: string;
640
655
  /** Visual variant of the submit button. Default `"primary"`. */
641
656
  submitButtonVariant?: "primary" | "secondary";
642
- /**
643
- * Element that receives popover/dropdown portals for fields rendered by this
644
- * form. Use this when rendering inside modal dialogs so popups stay in the
645
- * dialog's stacking and focus context.
646
- */
647
- portalContainer?: PortalContainer;
648
657
  }
649
658
 
650
659
  declare const ActionForm$1: <Q extends ActionDefinition<unknown>>(props: ActionFormProps<Q>) => React__default.ReactElement;
@@ -1,30 +1,31 @@
1
1
  'use strict';
2
2
 
3
- var chunkL5LPFCXT_cjs = require('../../chunk-L5LPFCXT.cjs');
4
- require('../../chunk-UCTQICPR.cjs');
3
+ var chunkW2IASYE4_cjs = require('../../chunk-W2IASYE4.cjs');
4
+ require('../../chunk-X337DNCW.cjs');
5
5
  require('../../chunk-OHKKNZZS.cjs');
6
- require('../../chunk-SB2VTP67.cjs');
6
+ require('../../chunk-Z7VHLTKD.cjs');
7
+ require('../../chunk-MQYOHGPY.cjs');
7
8
  require('../../chunk-7LXS66DW.cjs');
8
- require('../../chunk-SZXVBDSA.cjs');
9
+ require('../../chunk-6UDBHYSO.cjs');
9
10
  require('../../chunk-Q2W6GYRK.cjs');
10
11
 
11
12
 
12
13
 
13
14
  Object.defineProperty(exports, "BaseFilterList", {
14
15
  enumerable: true,
15
- get: function () { return chunkL5LPFCXT_cjs.BaseFilterList; }
16
+ get: function () { return chunkW2IASYE4_cjs.BaseFilterList; }
16
17
  });
17
18
  Object.defineProperty(exports, "FilterList", {
18
19
  enumerable: true,
19
- get: function () { return chunkL5LPFCXT_cjs.FilterList; }
20
+ get: function () { return chunkW2IASYE4_cjs.FilterList; }
20
21
  });
21
22
  Object.defineProperty(exports, "deserializeFilterStates", {
22
23
  enumerable: true,
23
- get: function () { return chunkL5LPFCXT_cjs.deserializeFilterStates; }
24
+ get: function () { return chunkW2IASYE4_cjs.deserializeFilterStates; }
24
25
  });
25
26
  Object.defineProperty(exports, "serializeFilterStates", {
26
27
  enumerable: true,
27
- get: function () { return chunkL5LPFCXT_cjs.serializeFilterStates; }
28
+ get: function () { return chunkW2IASYE4_cjs.serializeFilterStates; }
28
29
  });
29
30
  //# sourceMappingURL=filter-list.cjs.map
30
31
  //# sourceMappingURL=filter-list.cjs.map
@@ -620,17 +620,17 @@
620
620
 
621
621
  /* src/base-components/switch/Switch.module.css */
622
622
  .osdkSwitchRoot {
623
- --osdk-switch-track-width: var(--osdk-switch-track-width-override, 28px);
624
- --osdk-switch-track-height: var(--osdk-switch-track-height-override, 16px);
625
- --osdk-switch-thumb-size: var(--osdk-switch-thumb-size-override, 12px);
626
- --osdk-switch-thumb-offset: var(--osdk-switch-thumb-offset-override, 2px);
623
+ --osdk-switch-track-width: var( --osdk-switch-track-width-override, calc(var(--osdk-surface-spacing) * 9) );
624
+ --osdk-switch-track-height: var( --osdk-switch-track-height-override, calc(var(--osdk-surface-spacing) * 5) );
625
+ --osdk-switch-thumb-size: var( --osdk-switch-thumb-size-override, calc(var(--osdk-surface-spacing) * 4) );
626
+ --osdk-switch-thumb-offset: var( --osdk-switch-thumb-offset-override, calc(var(--osdk-surface-spacing) * 0.5) );
627
627
  display: inline-flex;
628
628
  align-items: center;
629
629
  width: var(--osdk-switch-track-width);
630
630
  height: var(--osdk-switch-track-height);
631
631
  padding: 0;
632
632
  cursor: pointer;
633
- border-radius: var(--osdk-switch-border-radius, var(--osdk-surface-border-radius));
633
+ border-radius: var(--osdk-switch-border-radius, 9999px);
634
634
  position: relative;
635
635
  border: none;
636
636
  transition: background-color var(--osdk-switch-transition-duration, var(--osdk-emphasis-transition-duration)) var(--osdk-switch-transition-ease, var(--osdk-emphasis-ease-default));
@@ -654,7 +654,7 @@
654
654
  }
655
655
  &[data-disabled] {
656
656
  cursor: not-allowed;
657
- opacity: 0.5;
657
+ opacity: var(--osdk-switch-disabled-opacity, var(--osdk-input-disabled-opacity));
658
658
  }
659
659
  &:focus-visible {
660
660
  outline: var(--osdk-switch-focus-width, var(--osdk-emphasis-focus-width)) solid var(--osdk-switch-focus-color, var(--osdk-emphasis-focus-color));
@@ -897,6 +897,10 @@
897
897
  flex-direction: column;
898
898
  transition: opacity var(--osdk-filter-content-fade-duration);
899
899
  }
900
+ .noValueLabel {
901
+ color: var( --osdk-filter-listogram-empty-label-color, var(--osdk-filter-no-value-color) );
902
+ font-style: var( --osdk-filter-listogram-empty-label-font-style, var(--osdk-filter-no-value-font-style) );
903
+ }
900
904
  .listogram[data-loading=true] {
901
905
  opacity: 0.5;
902
906
  }
@@ -945,10 +949,6 @@
945
949
  .label[data-excluding] {
946
950
  text-decoration: line-through;
947
951
  }
948
- .emptyLabel {
949
- color: var(--osdk-filter-listogram-empty-label-color);
950
- font-style: var(--osdk-filter-listogram-empty-label-font-style);
951
- }
952
952
  .bar {
953
953
  width: var(--osdk-filter-listogram-bar-width);
954
954
  flex-shrink: 0;
@@ -1039,6 +1039,12 @@
1039
1039
  flex: 1;
1040
1040
  }
1041
1041
 
1042
+ /* src/filter-list/base/inputs/NoValueLabel.module.css */
1043
+ .noValue {
1044
+ color: var(--osdk-filter-no-value-color);
1045
+ font-style: var(--osdk-filter-no-value-font-style);
1046
+ }
1047
+
1042
1048
  /* src/filter-list/base/inputs/MultiDateInput.module.css */
1043
1049
  .multiDate {
1044
1050
  display: flex;
@@ -1101,10 +1107,16 @@
1101
1107
  &:active {
1102
1108
  background-color: var( --osdk-combobox-trigger-bg-active, var(--osdk-button-secondary-bg-active) );
1103
1109
  }
1110
+ &:focus:not(:focus-visible) {
1111
+ outline: none;
1112
+ }
1104
1113
  &:focus-visible {
1105
1114
  outline: var( --osdk-combobox-trigger-focus-width, var(--osdk-emphasis-focus-width) ) solid var(--osdk-combobox-trigger-focus-color, var(--osdk-emphasis-focus-color));
1106
1115
  outline-offset: var( --osdk-combobox-trigger-focus-offset, var(--osdk-emphasis-focus-offset) );
1107
1116
  }
1117
+ &[data-popup-open]:focus-visible {
1118
+ outline: none;
1119
+ }
1108
1120
  &[data-disabled] {
1109
1121
  cursor: not-allowed;
1110
1122
  opacity: var(--osdk-disabled-opacity, 0.5);
@@ -1208,18 +1220,22 @@
1208
1220
  }
1209
1221
  .osdkComboboxPositioner {
1210
1222
  z-index: var(--osdk-combobox-z-index, var(--osdk-surface-z-index-3));
1223
+ outline: none;
1211
1224
  }
1212
1225
  .osdkComboboxPopup {
1213
1226
  display: flex;
1214
1227
  flex-direction: column;
1215
1228
  min-width: var(--anchor-width);
1216
- max-height: var(--available-height);
1229
+ max-height: min(var(--osdk-combobox-popup-max-height), var(--available-height));
1217
1230
  overflow-y: auto;
1218
1231
  padding: calc(var(--osdk-combobox-spacing, var(--osdk-surface-spacing)) * 1.5);
1219
1232
  border-radius: var( --osdk-combobox-border-radius, var(--osdk-surface-border-radius) );
1220
1233
  border: var(--osdk-combobox-border-width, var(--osdk-surface-border-width)) solid var(--osdk-combobox-border-color, var(--osdk-surface-border-color-default));
1221
1234
  background-color: var( --osdk-combobox-popup-bg, var(--osdk-surface-background-color-default-rest) );
1222
1235
  box-shadow: var(--osdk-combobox-popup-shadow, var(--osdk-surface-shadow-2));
1236
+ &:focus {
1237
+ outline: none;
1238
+ }
1223
1239
  }
1224
1240
  .osdkComboboxPopup:has(> .osdkComboboxPopupSearchInput) {
1225
1241
  overflow: hidden;
@@ -1277,7 +1293,7 @@
1277
1293
  gap: var(--osdk-combobox-spacing, var(--osdk-surface-spacing));
1278
1294
  padding: calc(var(--osdk-combobox-spacing, var(--osdk-surface-spacing)) * 0.5) calc(var(--osdk-combobox-spacing, var(--osdk-surface-spacing)) * 1.5);
1279
1295
  border-radius: var( --osdk-combobox-border-radius, var(--osdk-surface-border-radius) );
1280
- background-color: var( --osdk-combobox-chip-bg, var(--osdk-surface-background-color-default-hover) );
1296
+ background-color: var( --osdk-combobox-chip-bg, var(--osdk-custom-color-gray-4) );
1281
1297
  font-family: var( --osdk-combobox-font-family, var(--osdk-typography-family-default) );
1282
1298
  font-size: var( --osdk-combobox-chip-font-size, var(--osdk-typography-size-body-small) );
1283
1299
  line-height: var( --osdk-combobox-line-height, var(--osdk-typography-line-height-default) );
@@ -1319,6 +1335,9 @@
1319
1335
  display: flex;
1320
1336
  flex-direction: column;
1321
1337
  overflow-y: auto;
1338
+ &:focus {
1339
+ outline: none;
1340
+ }
1322
1341
  }
1323
1342
  .osdkComboboxEmpty {
1324
1343
  padding: var(--osdk-combobox-spacing, var(--osdk-surface-spacing)) var(--osdk-combobox-spacing, var(--osdk-surface-spacing));
@@ -1361,7 +1380,7 @@
1361
1380
  gap: calc(var(--osdk-combobox-spacing, var(--osdk-surface-spacing)) * 1);
1362
1381
  padding: calc(var(--osdk-combobox-spacing, var(--osdk-surface-spacing)) * 1) calc(var(--osdk-combobox-spacing, var(--osdk-surface-spacing)) * 1.5);
1363
1382
  border-radius: var( --osdk-combobox-border-radius, var(--osdk-surface-border-radius) );
1364
- background-color: var( --osdk-combobox-chip-bg, var(--osdk-surface-background-color-default-hover) );
1383
+ background-color: var( --osdk-combobox-chip-bg, var(--osdk-custom-color-gray-4) );
1365
1384
  font-size: var( --osdk-combobox-chip-font-size, var(--osdk-typography-size-body-small) );
1366
1385
  line-height: 1;
1367
1386
  color: var( --osdk-combobox-chip-color, var(--osdk-typography-color-default-rest) );
@@ -1417,6 +1436,12 @@
1417
1436
  flex-direction: column;
1418
1437
  gap: var(--osdk-filter-null-wrapper-gap);
1419
1438
  }
1439
+ .noValueLabel {
1440
+ color: var( --osdk-filter-null-label-color, var(--osdk-filter-no-value-color) );
1441
+ font-family: var(--osdk-filter-null-label-font-family, inherit);
1442
+ font-size: var(--osdk-filter-null-label-font-size, inherit);
1443
+ line-height: var(--osdk-filter-null-label-line-height, inherit);
1444
+ }
1420
1445
  .nullValueRow {
1421
1446
  display: flex;
1422
1447
  align-items: center;
@@ -1430,12 +1455,6 @@
1430
1455
  gap: var(--osdk-filter-null-label-gap);
1431
1456
  cursor: pointer;
1432
1457
  }
1433
- .nullLabelText {
1434
- font-family: var(--osdk-filter-null-label-font-family);
1435
- font-size: var(--osdk-filter-null-label-font-size);
1436
- line-height: var(--osdk-filter-null-label-line-height);
1437
- color: var(--osdk-filter-null-label-color);
1438
- }
1439
1458
  .count {
1440
1459
  font-family: var(--osdk-filter-null-count-font-family);
1441
1460
  font-size: var(--osdk-filter-null-count-font-size);