@osdk/react-components 0.2.0-beta.14 → 0.2.0-beta.16

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 (353) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/build/browser/base-components/action-button/ActionButton.module.css +0 -4
  3. package/build/browser/base-components/checkbox/Checkbox.module.css +0 -4
  4. package/build/browser/base-components/dialog/Dialog.module.css +0 -8
  5. package/build/browser/base-components/draggable-list/DraggableList.js +4 -2
  6. package/build/browser/base-components/draggable-list/DraggableList.js.map +1 -1
  7. package/build/browser/base-components/draggable-list/DraggableList.module.css +0 -8
  8. package/build/browser/filter-list/FilterInput.js +132 -0
  9. package/build/browser/filter-list/FilterInput.js.map +1 -0
  10. package/build/browser/filter-list/FilterList.js +91 -0
  11. package/build/browser/filter-list/FilterList.js.map +1 -0
  12. package/build/browser/filter-list/FilterListApi.js.map +1 -1
  13. package/build/browser/filter-list/FilterListItemApi.js.map +1 -1
  14. package/build/browser/filter-list/base/{FilterList.js → BaseFilterList.js} +30 -31
  15. package/build/browser/filter-list/base/BaseFilterList.js.map +1 -0
  16. package/build/browser/filter-list/base/BaseFilterListApi.js +2 -0
  17. package/build/browser/filter-list/base/BaseFilterListApi.js.map +1 -0
  18. package/build/browser/filter-list/base/FilterIcons.js +63 -0
  19. package/build/browser/filter-list/base/FilterIcons.js.map +1 -0
  20. package/build/browser/filter-list/base/FilterList.module.css +22 -1
  21. package/build/browser/filter-list/base/FilterList.module.css.js +2 -0
  22. package/build/browser/filter-list/base/FilterListContent.js +21 -20
  23. package/build/browser/filter-list/base/FilterListContent.js.map +1 -1
  24. package/build/browser/filter-list/base/FilterListHeader.js +8 -3
  25. package/build/browser/filter-list/base/FilterListHeader.js.map +1 -1
  26. package/build/browser/filter-list/base/FilterListHeader.module.css +25 -1
  27. package/build/browser/filter-list/base/FilterListHeader.module.css.js +3 -0
  28. package/build/browser/filter-list/base/FilterListItem.js +36 -17
  29. package/build/browser/filter-list/base/FilterListItem.js.map +1 -1
  30. package/build/browser/filter-list/base/FilterListItem.module.css +58 -2
  31. package/build/browser/filter-list/base/FilterListItem.module.css.js +2 -0
  32. package/build/browser/filter-list/base/SortableFilterListItem.js +6 -6
  33. package/build/browser/filter-list/base/SortableFilterListItem.js.map +1 -1
  34. package/build/browser/filter-list/base/index.js +1 -2
  35. package/build/browser/filter-list/base/index.js.map +1 -1
  36. package/build/browser/filter-list/base/inputs/CheckboxListInput.js +34 -15
  37. package/build/browser/filter-list/base/inputs/CheckboxListInput.js.map +1 -1
  38. package/build/browser/filter-list/base/inputs/CheckboxListInput.module.css +13 -0
  39. package/build/browser/filter-list/base/inputs/CheckboxListInput.module.css.js +2 -1
  40. package/build/browser/filter-list/base/inputs/DateRangeInput.js.map +1 -1
  41. package/build/browser/filter-list/base/inputs/ListogramInput.js +17 -21
  42. package/build/browser/filter-list/base/inputs/ListogramInput.js.map +1 -1
  43. package/build/browser/filter-list/base/inputs/ListogramInput.module.css +25 -19
  44. package/build/browser/filter-list/base/inputs/MultiDateInput.module.css +6 -4
  45. package/build/browser/filter-list/base/inputs/MultiSelectInput.js +7 -14
  46. package/build/browser/filter-list/base/inputs/MultiSelectInput.js.map +1 -1
  47. package/build/browser/filter-list/base/inputs/MultiSelectInput.module.css +4 -1
  48. package/build/browser/filter-list/base/inputs/MultiSelectInput.module.css.js +1 -1
  49. package/build/browser/filter-list/base/inputs/NullValueWrapper.js +4 -23
  50. package/build/browser/filter-list/base/inputs/NullValueWrapper.js.map +1 -1
  51. package/build/browser/filter-list/base/inputs/NullValueWrapper.module.css +3 -2
  52. package/build/browser/filter-list/base/inputs/NumberRangeInput.js.map +1 -1
  53. package/build/browser/filter-list/base/inputs/RangeInput.js +2 -32
  54. package/build/browser/filter-list/base/inputs/RangeInput.js.map +1 -1
  55. package/build/browser/filter-list/base/inputs/RangeInput.module.css +16 -14
  56. package/build/browser/filter-list/base/inputs/SingleDateInput.module.css +2 -1
  57. package/build/browser/filter-list/base/inputs/SingleSelectInput.js +6 -13
  58. package/build/browser/filter-list/base/inputs/SingleSelectInput.js.map +1 -1
  59. package/build/browser/filter-list/base/inputs/TextTagsInput.js +6 -14
  60. package/build/browser/filter-list/base/inputs/TextTagsInput.js.map +1 -1
  61. package/build/browser/filter-list/base/inputs/TimelineInput.js +2 -2
  62. package/build/browser/filter-list/base/inputs/TimelineInput.js.map +1 -1
  63. package/build/browser/filter-list/base/inputs/TimelineInput.module.css +14 -12
  64. package/build/browser/filter-list/base/inputs/shared.module.css +5 -4
  65. package/build/browser/filter-list/hooks/useFilterListState.js +24 -3
  66. package/build/browser/filter-list/hooks/useFilterListState.js.map +1 -1
  67. package/build/browser/filter-list/hooks/usePropertyAggregation.js.map +1 -1
  68. package/build/browser/filter-list/inputs/CheckboxListFilterInput.js +56 -0
  69. package/build/browser/filter-list/inputs/CheckboxListFilterInput.js.map +1 -0
  70. package/build/browser/filter-list/inputs/ContainsTextFilterInput.js +38 -0
  71. package/build/browser/filter-list/inputs/ContainsTextFilterInput.js.map +1 -0
  72. package/build/browser/filter-list/inputs/DateRangeFilterInput.js +105 -0
  73. package/build/browser/filter-list/inputs/DateRangeFilterInput.js.map +1 -0
  74. package/build/browser/filter-list/inputs/LinkedPropertyInput.js +508 -0
  75. package/build/browser/filter-list/inputs/LinkedPropertyInput.js.map +1 -0
  76. package/build/browser/filter-list/inputs/ListogramFilterInput.js +62 -0
  77. package/build/browser/filter-list/inputs/ListogramFilterInput.js.map +1 -0
  78. package/build/browser/filter-list/inputs/MultiDateFilterInput.js +38 -0
  79. package/build/browser/filter-list/inputs/MultiDateFilterInput.js.map +1 -0
  80. package/build/browser/filter-list/inputs/MultiSelectFilterInput.js +55 -0
  81. package/build/browser/filter-list/inputs/MultiSelectFilterInput.js.map +1 -0
  82. package/build/browser/filter-list/inputs/NumberRangeFilterInput.js +105 -0
  83. package/build/browser/filter-list/inputs/NumberRangeFilterInput.js.map +1 -0
  84. package/build/browser/filter-list/inputs/PropertyFilterInput.js +129 -0
  85. package/build/browser/filter-list/inputs/PropertyFilterInput.js.map +1 -0
  86. package/build/browser/filter-list/inputs/SingleDateFilterInput.js +38 -0
  87. package/build/browser/filter-list/inputs/SingleDateFilterInput.js.map +1 -0
  88. package/build/browser/filter-list/inputs/SingleSelectFilterInput.js +55 -0
  89. package/build/browser/filter-list/inputs/SingleSelectFilterInput.js.map +1 -0
  90. package/build/browser/filter-list/inputs/TextTagsFilterInput.js +54 -0
  91. package/build/browser/filter-list/inputs/TextTagsFilterInput.js.map +1 -0
  92. package/build/browser/filter-list/inputs/TimelineFilterInput.js +49 -0
  93. package/build/browser/filter-list/inputs/TimelineFilterInput.js.map +1 -0
  94. package/build/browser/filter-list/inputs/ToggleFilterInput.js +36 -0
  95. package/build/browser/filter-list/inputs/ToggleFilterInput.js.map +1 -0
  96. package/build/browser/filter-list/types/AggregationTypes.js +2 -0
  97. package/build/browser/filter-list/types/AggregationTypes.js.map +1 -0
  98. package/build/browser/filter-list/types/LinkedFilterTypes.js.map +1 -1
  99. package/build/browser/filter-list/types/index.js +0 -2
  100. package/build/browser/filter-list/types/index.js.map +1 -1
  101. package/build/browser/filter-list/utils/filterStateSerialization.js +42 -0
  102. package/build/browser/filter-list/utils/filterStateSerialization.js.map +1 -0
  103. package/build/browser/filter-list/utils/filterStateToWhereClause.js +19 -11
  104. package/build/browser/filter-list/utils/filterStateToWhereClause.js.map +1 -1
  105. package/build/browser/filter-list/utils/filterValues.js +26 -0
  106. package/build/browser/filter-list/utils/filterValues.js.map +1 -1
  107. package/build/browser/object-table/ColumnConfigDialog.module.css +0 -9
  108. package/build/browser/object-table/MultiColumnSortDialog.module.css +0 -4
  109. package/build/browser/object-table/ObjectTable.js +2 -0
  110. package/build/browser/object-table/ObjectTable.js.map +1 -1
  111. package/build/browser/object-table/ObjectTableApi.js.map +1 -1
  112. package/build/browser/object-table/TableHeaderWithPopover.module.css +0 -12
  113. package/build/browser/object-table/hooks/useRowSelection.js +11 -8
  114. package/build/browser/object-table/hooks/useRowSelection.js.map +1 -1
  115. package/build/browser/public/experimental.js +4 -1
  116. package/build/browser/public/experimental.js.map +1 -1
  117. package/build/browser/shared/ErrorBoundary.module.css +14 -14
  118. package/build/browser/styles.css +207 -124
  119. package/build/cjs/public/experimental.cjs +3156 -2559
  120. package/build/cjs/public/experimental.cjs.map +1 -1
  121. package/build/cjs/public/experimental.css +591 -513
  122. package/build/cjs/public/experimental.css.map +1 -1
  123. package/build/cjs/public/experimental.d.cts +70 -4
  124. package/build/esm/base-components/action-button/ActionButton.module.css +0 -4
  125. package/build/esm/base-components/checkbox/Checkbox.module.css +0 -4
  126. package/build/esm/base-components/dialog/Dialog.module.css +0 -8
  127. package/build/esm/base-components/draggable-list/DraggableList.js +4 -2
  128. package/build/esm/base-components/draggable-list/DraggableList.js.map +1 -1
  129. package/build/esm/base-components/draggable-list/DraggableList.module.css +0 -8
  130. package/build/esm/filter-list/FilterInput.js +132 -0
  131. package/build/esm/filter-list/FilterInput.js.map +1 -0
  132. package/build/esm/filter-list/FilterList.js +91 -0
  133. package/build/esm/filter-list/FilterList.js.map +1 -0
  134. package/build/esm/filter-list/FilterListApi.js.map +1 -1
  135. package/build/esm/filter-list/FilterListItemApi.js.map +1 -1
  136. package/build/esm/filter-list/base/{FilterList.js → BaseFilterList.js} +30 -31
  137. package/build/esm/filter-list/base/BaseFilterList.js.map +1 -0
  138. package/build/esm/filter-list/base/BaseFilterListApi.js +2 -0
  139. package/build/esm/filter-list/base/BaseFilterListApi.js.map +1 -0
  140. package/build/esm/filter-list/base/FilterIcons.js +63 -0
  141. package/build/esm/filter-list/base/FilterIcons.js.map +1 -0
  142. package/build/esm/filter-list/base/FilterList.module.css +22 -1
  143. package/build/esm/filter-list/base/FilterListContent.js +21 -20
  144. package/build/esm/filter-list/base/FilterListContent.js.map +1 -1
  145. package/build/esm/filter-list/base/FilterListHeader.js +8 -3
  146. package/build/esm/filter-list/base/FilterListHeader.js.map +1 -1
  147. package/build/esm/filter-list/base/FilterListHeader.module.css +25 -1
  148. package/build/esm/filter-list/base/FilterListItem.js +36 -17
  149. package/build/esm/filter-list/base/FilterListItem.js.map +1 -1
  150. package/build/esm/filter-list/base/FilterListItem.module.css +58 -2
  151. package/build/esm/filter-list/base/SortableFilterListItem.js +6 -6
  152. package/build/esm/filter-list/base/SortableFilterListItem.js.map +1 -1
  153. package/build/esm/filter-list/base/index.js +1 -2
  154. package/build/esm/filter-list/base/index.js.map +1 -1
  155. package/build/esm/filter-list/base/inputs/CheckboxListInput.js +34 -15
  156. package/build/esm/filter-list/base/inputs/CheckboxListInput.js.map +1 -1
  157. package/build/esm/filter-list/base/inputs/CheckboxListInput.module.css +13 -0
  158. package/build/esm/filter-list/base/inputs/DateRangeInput.js.map +1 -1
  159. package/build/esm/filter-list/base/inputs/ListogramInput.js +17 -21
  160. package/build/esm/filter-list/base/inputs/ListogramInput.js.map +1 -1
  161. package/build/esm/filter-list/base/inputs/ListogramInput.module.css +25 -19
  162. package/build/esm/filter-list/base/inputs/MultiDateInput.module.css +6 -4
  163. package/build/esm/filter-list/base/inputs/MultiSelectInput.js +7 -14
  164. package/build/esm/filter-list/base/inputs/MultiSelectInput.js.map +1 -1
  165. package/build/esm/filter-list/base/inputs/MultiSelectInput.module.css +4 -1
  166. package/build/esm/filter-list/base/inputs/NullValueWrapper.js +4 -23
  167. package/build/esm/filter-list/base/inputs/NullValueWrapper.js.map +1 -1
  168. package/build/esm/filter-list/base/inputs/NullValueWrapper.module.css +3 -2
  169. package/build/esm/filter-list/base/inputs/NumberRangeInput.js.map +1 -1
  170. package/build/esm/filter-list/base/inputs/RangeInput.js +2 -32
  171. package/build/esm/filter-list/base/inputs/RangeInput.js.map +1 -1
  172. package/build/esm/filter-list/base/inputs/RangeInput.module.css +16 -14
  173. package/build/esm/filter-list/base/inputs/SingleDateInput.module.css +2 -1
  174. package/build/esm/filter-list/base/inputs/SingleSelectInput.js +6 -13
  175. package/build/esm/filter-list/base/inputs/SingleSelectInput.js.map +1 -1
  176. package/build/esm/filter-list/base/inputs/TextTagsInput.js +6 -14
  177. package/build/esm/filter-list/base/inputs/TextTagsInput.js.map +1 -1
  178. package/build/esm/filter-list/base/inputs/TimelineInput.js +2 -2
  179. package/build/esm/filter-list/base/inputs/TimelineInput.js.map +1 -1
  180. package/build/esm/filter-list/base/inputs/TimelineInput.module.css +14 -12
  181. package/build/esm/filter-list/base/inputs/shared.module.css +5 -4
  182. package/build/esm/filter-list/hooks/useFilterListState.js +24 -3
  183. package/build/esm/filter-list/hooks/useFilterListState.js.map +1 -1
  184. package/build/esm/filter-list/hooks/usePropertyAggregation.js.map +1 -1
  185. package/build/esm/filter-list/inputs/CheckboxListFilterInput.js +56 -0
  186. package/build/esm/filter-list/inputs/CheckboxListFilterInput.js.map +1 -0
  187. package/build/esm/filter-list/inputs/ContainsTextFilterInput.js +38 -0
  188. package/build/esm/filter-list/inputs/ContainsTextFilterInput.js.map +1 -0
  189. package/build/esm/filter-list/inputs/DateRangeFilterInput.js +105 -0
  190. package/build/esm/filter-list/inputs/DateRangeFilterInput.js.map +1 -0
  191. package/build/esm/filter-list/inputs/LinkedPropertyInput.js +508 -0
  192. package/build/esm/filter-list/inputs/LinkedPropertyInput.js.map +1 -0
  193. package/build/esm/filter-list/inputs/ListogramFilterInput.js +62 -0
  194. package/build/esm/filter-list/inputs/ListogramFilterInput.js.map +1 -0
  195. package/build/esm/filter-list/inputs/MultiDateFilterInput.js +38 -0
  196. package/build/esm/filter-list/inputs/MultiDateFilterInput.js.map +1 -0
  197. package/build/esm/filter-list/inputs/MultiSelectFilterInput.js +55 -0
  198. package/build/esm/filter-list/inputs/MultiSelectFilterInput.js.map +1 -0
  199. package/build/esm/filter-list/inputs/NumberRangeFilterInput.js +105 -0
  200. package/build/esm/filter-list/inputs/NumberRangeFilterInput.js.map +1 -0
  201. package/build/esm/filter-list/inputs/PropertyFilterInput.js +129 -0
  202. package/build/esm/filter-list/inputs/PropertyFilterInput.js.map +1 -0
  203. package/build/esm/filter-list/inputs/SingleDateFilterInput.js +38 -0
  204. package/build/esm/filter-list/inputs/SingleDateFilterInput.js.map +1 -0
  205. package/build/esm/filter-list/inputs/SingleSelectFilterInput.js +55 -0
  206. package/build/esm/filter-list/inputs/SingleSelectFilterInput.js.map +1 -0
  207. package/build/esm/filter-list/inputs/TextTagsFilterInput.js +54 -0
  208. package/build/esm/filter-list/inputs/TextTagsFilterInput.js.map +1 -0
  209. package/build/esm/filter-list/inputs/TimelineFilterInput.js +49 -0
  210. package/build/esm/filter-list/inputs/TimelineFilterInput.js.map +1 -0
  211. package/build/esm/filter-list/inputs/ToggleFilterInput.js +36 -0
  212. package/build/esm/filter-list/inputs/ToggleFilterInput.js.map +1 -0
  213. package/build/esm/filter-list/types/AggregationTypes.js +2 -0
  214. package/build/esm/filter-list/types/AggregationTypes.js.map +1 -0
  215. package/build/esm/filter-list/types/LinkedFilterTypes.js.map +1 -1
  216. package/build/esm/filter-list/types/index.js +0 -2
  217. package/build/esm/filter-list/types/index.js.map +1 -1
  218. package/build/esm/filter-list/utils/filterStateSerialization.js +42 -0
  219. package/build/esm/filter-list/utils/filterStateSerialization.js.map +1 -0
  220. package/build/esm/filter-list/utils/filterStateToWhereClause.js +19 -11
  221. package/build/esm/filter-list/utils/filterStateToWhereClause.js.map +1 -1
  222. package/build/esm/filter-list/utils/filterValues.js +26 -0
  223. package/build/esm/filter-list/utils/filterValues.js.map +1 -1
  224. package/build/esm/object-table/ColumnConfigDialog.module.css +0 -9
  225. package/build/esm/object-table/MultiColumnSortDialog.module.css +0 -4
  226. package/build/esm/object-table/ObjectTable.js +2 -0
  227. package/build/esm/object-table/ObjectTable.js.map +1 -1
  228. package/build/esm/object-table/ObjectTableApi.js.map +1 -1
  229. package/build/esm/object-table/TableHeaderWithPopover.module.css +0 -12
  230. package/build/esm/object-table/hooks/useRowSelection.js +11 -8
  231. package/build/esm/object-table/hooks/useRowSelection.js.map +1 -1
  232. package/build/esm/public/experimental.js +4 -1
  233. package/build/esm/public/experimental.js.map +1 -1
  234. package/build/esm/shared/ErrorBoundary.module.css +14 -14
  235. package/build/types/filter-list/{base/FilterInput.d.ts → FilterInput.d.ts} +2 -2
  236. package/build/types/filter-list/FilterInput.d.ts.map +1 -0
  237. package/build/types/filter-list/{base/FilterList.d.ts → FilterList.d.ts} +1 -1
  238. package/build/types/filter-list/FilterList.d.ts.map +1 -0
  239. package/build/types/filter-list/FilterListApi.d.ts +14 -0
  240. package/build/types/filter-list/FilterListApi.d.ts.map +1 -1
  241. package/build/types/filter-list/FilterListItemApi.d.ts +13 -0
  242. package/build/types/filter-list/FilterListItemApi.d.ts.map +1 -1
  243. package/build/types/filter-list/base/BaseFilterList.d.ts +3 -0
  244. package/build/types/filter-list/base/BaseFilterList.d.ts.map +1 -0
  245. package/build/types/filter-list/base/BaseFilterListApi.d.ts +29 -0
  246. package/build/types/filter-list/base/BaseFilterListApi.d.ts.map +1 -0
  247. package/build/types/filter-list/base/FilterIcons.d.ts +4 -0
  248. package/build/types/filter-list/base/FilterIcons.d.ts.map +1 -0
  249. package/build/types/filter-list/base/FilterListContent.d.ts +8 -8
  250. package/build/types/filter-list/base/FilterListContent.d.ts.map +1 -1
  251. package/build/types/filter-list/base/FilterListHeader.d.ts.map +1 -1
  252. package/build/types/filter-list/base/FilterListItem.d.ts +7 -8
  253. package/build/types/filter-list/base/FilterListItem.d.ts.map +1 -1
  254. package/build/types/filter-list/base/SortableFilterListItem.d.ts +7 -8
  255. package/build/types/filter-list/base/SortableFilterListItem.d.ts.map +1 -1
  256. package/build/types/filter-list/base/index.d.ts +2 -2
  257. package/build/types/filter-list/base/index.d.ts.map +1 -1
  258. package/build/types/filter-list/base/inputs/CheckboxListInput.d.ts +7 -13
  259. package/build/types/filter-list/base/inputs/CheckboxListInput.d.ts.map +1 -1
  260. package/build/types/filter-list/base/inputs/DateRangeInput.d.ts +7 -12
  261. package/build/types/filter-list/base/inputs/DateRangeInput.d.ts.map +1 -1
  262. package/build/types/filter-list/base/inputs/ListogramInput.d.ts +10 -13
  263. package/build/types/filter-list/base/inputs/ListogramInput.d.ts.map +1 -1
  264. package/build/types/filter-list/base/inputs/MultiSelectInput.d.ts +7 -13
  265. package/build/types/filter-list/base/inputs/MultiSelectInput.d.ts.map +1 -1
  266. package/build/types/filter-list/base/inputs/NullValueWrapper.d.ts +5 -11
  267. package/build/types/filter-list/base/inputs/NullValueWrapper.d.ts.map +1 -1
  268. package/build/types/filter-list/base/inputs/NumberRangeInput.d.ts +7 -12
  269. package/build/types/filter-list/base/inputs/NumberRangeInput.d.ts.map +1 -1
  270. package/build/types/filter-list/base/inputs/RangeInput.d.ts +7 -14
  271. package/build/types/filter-list/base/inputs/RangeInput.d.ts.map +1 -1
  272. package/build/types/filter-list/base/inputs/SingleSelectInput.d.ts +7 -13
  273. package/build/types/filter-list/base/inputs/SingleSelectInput.d.ts.map +1 -1
  274. package/build/types/filter-list/base/inputs/TextTagsInput.d.ts +7 -13
  275. package/build/types/filter-list/base/inputs/TextTagsInput.d.ts.map +1 -1
  276. package/build/types/filter-list/hooks/useFilterListState.d.ts +1 -0
  277. package/build/types/filter-list/hooks/useFilterListState.d.ts.map +1 -1
  278. package/build/types/filter-list/hooks/usePropertyAggregation.d.ts +2 -5
  279. package/build/types/filter-list/hooks/usePropertyAggregation.d.ts.map +1 -1
  280. package/build/types/filter-list/inputs/CheckboxListFilterInput.d.ts +14 -0
  281. package/build/types/filter-list/inputs/CheckboxListFilterInput.d.ts.map +1 -0
  282. package/build/types/filter-list/inputs/ContainsTextFilterInput.d.ts +10 -0
  283. package/build/types/filter-list/inputs/ContainsTextFilterInput.d.ts.map +1 -0
  284. package/build/types/filter-list/inputs/DateRangeFilterInput.d.ts +12 -0
  285. package/build/types/filter-list/inputs/DateRangeFilterInput.d.ts.map +1 -0
  286. package/build/types/filter-list/{base/inputs → inputs}/LinkedPropertyInput.d.ts +2 -2
  287. package/build/types/filter-list/inputs/LinkedPropertyInput.d.ts.map +1 -0
  288. package/build/types/filter-list/inputs/ListogramFilterInput.d.ts +16 -0
  289. package/build/types/filter-list/inputs/ListogramFilterInput.d.ts.map +1 -0
  290. package/build/types/filter-list/inputs/MultiDateFilterInput.d.ts +9 -0
  291. package/build/types/filter-list/inputs/MultiDateFilterInput.d.ts.map +1 -0
  292. package/build/types/filter-list/inputs/MultiSelectFilterInput.d.ts +13 -0
  293. package/build/types/filter-list/inputs/MultiSelectFilterInput.d.ts.map +1 -0
  294. package/build/types/filter-list/inputs/NumberRangeFilterInput.d.ts +12 -0
  295. package/build/types/filter-list/inputs/NumberRangeFilterInput.d.ts.map +1 -0
  296. package/build/types/filter-list/inputs/PropertyFilterInput.d.ts +17 -0
  297. package/build/types/filter-list/inputs/PropertyFilterInput.d.ts.map +1 -0
  298. package/build/types/filter-list/inputs/SingleDateFilterInput.d.ts +9 -0
  299. package/build/types/filter-list/inputs/SingleDateFilterInput.d.ts.map +1 -0
  300. package/build/types/filter-list/inputs/SingleSelectFilterInput.d.ts +13 -0
  301. package/build/types/filter-list/inputs/SingleSelectFilterInput.d.ts.map +1 -0
  302. package/build/types/filter-list/inputs/TextTagsFilterInput.d.ts +13 -0
  303. package/build/types/filter-list/inputs/TextTagsFilterInput.d.ts.map +1 -0
  304. package/build/types/filter-list/inputs/TimelineFilterInput.d.ts +9 -0
  305. package/build/types/filter-list/inputs/TimelineFilterInput.d.ts.map +1 -0
  306. package/build/types/filter-list/inputs/ToggleFilterInput.d.ts +9 -0
  307. package/build/types/filter-list/inputs/ToggleFilterInput.d.ts.map +1 -0
  308. package/build/types/filter-list/types/AggregationTypes.d.ts +5 -0
  309. package/build/types/filter-list/types/AggregationTypes.d.ts.map +1 -0
  310. package/build/types/filter-list/types/LinkedFilterTypes.d.ts +0 -19
  311. package/build/types/filter-list/types/LinkedFilterTypes.d.ts.map +1 -1
  312. package/build/types/filter-list/types/index.d.ts +0 -2
  313. package/build/types/filter-list/types/index.d.ts.map +1 -1
  314. package/build/types/filter-list/utils/filterStateSerialization.d.ts +3 -0
  315. package/build/types/filter-list/utils/filterStateSerialization.d.ts.map +1 -0
  316. package/build/types/filter-list/utils/filterStateToWhereClause.d.ts +1 -1
  317. package/build/types/filter-list/utils/filterStateToWhereClause.d.ts.map +1 -1
  318. package/build/types/filter-list/utils/filterValues.d.ts +2 -0
  319. package/build/types/filter-list/utils/filterValues.d.ts.map +1 -1
  320. package/build/types/object-table/ObjectTable.d.ts +1 -1
  321. package/build/types/object-table/ObjectTable.d.ts.map +1 -1
  322. package/build/types/object-table/ObjectTableApi.d.ts +7 -1
  323. package/build/types/object-table/ObjectTableApi.d.ts.map +1 -1
  324. package/build/types/object-table/hooks/useRowSelection.d.ts +3 -2
  325. package/build/types/object-table/hooks/useRowSelection.d.ts.map +1 -1
  326. package/build/types/public/experimental.d.ts +4 -1
  327. package/build/types/public/experimental.d.ts.map +1 -1
  328. package/package.json +4 -4
  329. package/build/browser/filter-list/base/FilterInput.js +0 -542
  330. package/build/browser/filter-list/base/FilterInput.js.map +0 -1
  331. package/build/browser/filter-list/base/FilterList.js.map +0 -1
  332. package/build/browser/filter-list/base/inputs/LinkedPropertyInput.js +0 -237
  333. package/build/browser/filter-list/base/inputs/LinkedPropertyInput.js.map +0 -1
  334. package/build/browser/filter-list/types/AddFilterMenuTypes.js +0 -2
  335. package/build/browser/filter-list/types/AddFilterMenuTypes.js.map +0 -1
  336. package/build/browser/filter-list/types/FilterPanelTypes.js +0 -2
  337. package/build/browser/filter-list/types/FilterPanelTypes.js.map +0 -1
  338. package/build/esm/filter-list/base/FilterInput.js +0 -542
  339. package/build/esm/filter-list/base/FilterInput.js.map +0 -1
  340. package/build/esm/filter-list/base/FilterList.js.map +0 -1
  341. package/build/esm/filter-list/base/inputs/LinkedPropertyInput.js +0 -237
  342. package/build/esm/filter-list/base/inputs/LinkedPropertyInput.js.map +0 -1
  343. package/build/esm/filter-list/types/AddFilterMenuTypes.js +0 -2
  344. package/build/esm/filter-list/types/AddFilterMenuTypes.js.map +0 -1
  345. package/build/esm/filter-list/types/FilterPanelTypes.js +0 -2
  346. package/build/esm/filter-list/types/FilterPanelTypes.js.map +0 -1
  347. package/build/types/filter-list/base/FilterInput.d.ts.map +0 -1
  348. package/build/types/filter-list/base/FilterList.d.ts.map +0 -1
  349. package/build/types/filter-list/base/inputs/LinkedPropertyInput.d.ts.map +0 -1
  350. package/build/types/filter-list/types/AddFilterMenuTypes.d.ts +0 -56
  351. package/build/types/filter-list/types/AddFilterMenuTypes.d.ts.map +0 -1
  352. package/build/types/filter-list/types/FilterPanelTypes.d.ts +0 -18
  353. package/build/types/filter-list/types/FilterPanelTypes.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"FilterInput.js","names":["React","memo","useCallback","useMemo","coerceToString","coerceToStringArray","CheckboxListInput","ContainsTextInput","DateRangeInput","LinkedPropertyInput","ListogramInput","MultiDateInput","MultiSelectInput","NullValueWrapper","NumberRangeInput","SingleDateInput","SingleSelectInput","TextTagsInput","TimelineInput","ToggleInput","FilterInputInner","objectType","objectSet","definition","filterState","onFilterStateChanged","whereClause","createElement","FilterInputContent","FilterInput","type","HasLinkInput","KeywordSearchInput","placeholder","label","renderInput","customFilterState","Fragment","state","PropertyFilterInput","hasLink","handleChange","enabled","onChange","searchTerm","undefined","operator","newSearchTerm","value","PropertyFilterInputInner","filterComponent","CheckboxListFilterInput","propertyKey","key","ContainsTextFilterInput","ToggleFilterInput","NumberRangeFilterInput","DateRangeFilterInput","SingleSelectFilterInput","MultiSelectFilterInput","SingleDateFilterInput","MultiDateFilterInput","ListogramFilterInput","TextTagsFilterInput","TimelineFilterInput","CheckboxListFilterInputInner","selectedValues","isExcluding","newSelectedValues","NumberRangeFilterInputInner","numberRangeState","includeNull","handleNullChange","minValue","maxValue","handleRangeChange","onIncludeNullChange","DateRangeFilterInputInner","dateRangeState","SingleSelectFilterInputInner","selectedValue","MultiSelectFilterInputInner","selectedDate","Date","selectedDates","filter","v","ListogramFilterInputInner","values","TextTagsFilterInputInner","tags","startDate","endDate"],"sources":["FilterInput.tsx"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ObjectSet, ObjectTypeDefinition, WhereClause } from \"@osdk/api\";\nimport React, { memo, useCallback, useMemo } from \"react\";\nimport type { FilterDefinitionUnion } from \"../FilterListApi.js\";\nimport type { FilterState } from \"../FilterListItemApi.js\";\nimport {\n coerceToString,\n coerceToStringArray,\n} from \"../utils/coerceFilterValue.js\";\nimport { CheckboxListInput } from \"./inputs/CheckboxListInput.js\";\nimport { ContainsTextInput } from \"./inputs/ContainsTextInput.js\";\nimport { DateRangeInput } from \"./inputs/DateRangeInput.js\";\nimport { LinkedPropertyInput } from \"./inputs/LinkedPropertyInput.js\";\nimport { ListogramInput } from \"./inputs/ListogramInput.js\";\nimport { MultiDateInput } from \"./inputs/MultiDateInput.js\";\nimport { MultiSelectInput } from \"./inputs/MultiSelectInput.js\";\nimport { NullValueWrapper } from \"./inputs/NullValueWrapper.js\";\nimport { NumberRangeInput } from \"./inputs/NumberRangeInput.js\";\nimport { SingleDateInput } from \"./inputs/SingleDateInput.js\";\nimport { SingleSelectInput } from \"./inputs/SingleSelectInput.js\";\nimport { TextTagsInput } from \"./inputs/TextTagsInput.js\";\nimport { TimelineInput } from \"./inputs/TimelineInput.js\";\nimport { ToggleInput } from \"./inputs/ToggleInput.js\";\n\ninterface FilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n objectSet: ObjectSet<Q>;\n definition: FilterDefinitionUnion<Q>;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n whereClause: WhereClause<Q>;\n}\n\nfunction FilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n objectSet,\n definition,\n filterState,\n onFilterStateChanged,\n whereClause,\n}: FilterInputProps<Q>): React.ReactElement {\n return (\n <FilterInputContent\n objectType={objectType}\n objectSet={objectSet}\n definition={definition}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n whereClause={whereClause}\n />\n );\n}\n\nexport const FilterInput = memo(FilterInputInner) as typeof FilterInputInner;\n\nfunction FilterInputContent<Q extends ObjectTypeDefinition>({\n objectType,\n objectSet,\n definition,\n filterState,\n onFilterStateChanged,\n whereClause,\n}: FilterInputProps<Q>): React.ReactElement {\n switch (definition.type) {\n case \"HAS_LINK\":\n return (\n <HasLinkInput\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n case \"LINKED_PROPERTY\":\n return (\n <LinkedPropertyInput\n objectSet={objectSet}\n definition={definition}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n case \"KEYWORD_SEARCH\":\n return (\n <KeywordSearchInput\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n placeholder={definition.label ?? \"Search...\"}\n />\n );\n\n case \"CUSTOM\": {\n if (!definition.renderInput) {\n return (\n <div data-unsupported=\"true\">Custom filter missing renderInput</div>\n );\n }\n const customFilterState = filterState?.type === \"custom\"\n ? filterState\n : definition.filterState;\n return (\n <>\n {definition.renderInput({\n objectSet,\n filterState: customFilterState,\n onFilterStateChanged: (state) => onFilterStateChanged(state),\n })}\n </>\n );\n }\n\n case \"PROPERTY\":\n return (\n <PropertyFilterInput\n objectType={objectType}\n objectSet={objectSet}\n definition={definition}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n whereClause={whereClause}\n />\n );\n\n default:\n return <div data-unsupported=\"true\">Unsupported filter type</div>;\n }\n}\n\ninterface HasLinkInputProps {\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n}\n\nconst HasLinkInput = memo(function HasLinkInput({\n filterState,\n onFilterStateChanged,\n}: HasLinkInputProps): React.ReactElement {\n const hasLink = filterState?.type === \"hasLink\"\n ? filterState.hasLink\n : false;\n\n const handleChange = useCallback(\n (hasLink: boolean) => {\n onFilterStateChanged({ type: \"hasLink\", hasLink });\n },\n [onFilterStateChanged],\n );\n\n return <ToggleInput enabled={hasLink} onChange={handleChange} />;\n});\n\ninterface KeywordSearchInputProps {\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n placeholder: string;\n}\n\nconst KeywordSearchInput = memo(function KeywordSearchInput({\n filterState,\n onFilterStateChanged,\n placeholder,\n}: KeywordSearchInputProps): React.ReactElement {\n const searchTerm = filterState?.type === \"keywordSearch\"\n ? filterState.searchTerm\n : undefined;\n const operator = filterState?.type === \"keywordSearch\"\n ? filterState.operator\n : \"AND\";\n\n const handleChange = useCallback(\n (newSearchTerm: string | undefined) => {\n onFilterStateChanged({\n type: \"keywordSearch\",\n searchTerm: newSearchTerm ?? \"\",\n operator,\n });\n },\n [onFilterStateChanged, operator],\n );\n\n return (\n <ContainsTextInput\n value={searchTerm}\n onChange={handleChange}\n placeholder={placeholder}\n />\n );\n});\n\ninterface PropertyFilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n objectSet: ObjectSet<Q>;\n definition: Extract<FilterDefinitionUnion<Q>, { type: \"PROPERTY\" }>;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n whereClause: WhereClause<Q>;\n}\n\nfunction PropertyFilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n objectSet,\n definition,\n filterState,\n onFilterStateChanged,\n whereClause,\n}: PropertyFilterInputProps<Q>): React.ReactElement {\n switch (definition.filterComponent) {\n case \"CHECKBOX_LIST\":\n return (\n <CheckboxListFilterInput\n objectType={objectType}\n objectSet={objectSet}\n propertyKey={definition.key}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n whereClause={whereClause}\n />\n );\n\n case \"CONTAINS_TEXT\":\n return (\n <ContainsTextFilterInput\n propertyKey={definition.key}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n case \"TOGGLE\":\n return (\n <ToggleFilterInput\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n case \"NUMBER_RANGE\":\n return (\n <NumberRangeFilterInput\n objectType={objectType}\n propertyKey={definition.key}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n case \"DATE_RANGE\":\n return (\n <DateRangeFilterInput\n objectType={objectType}\n propertyKey={definition.key}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n case \"SINGLE_SELECT\":\n return (\n <SingleSelectFilterInput\n objectType={objectType}\n propertyKey={definition.key}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n whereClause={whereClause}\n />\n );\n\n case \"MULTI_SELECT\":\n return (\n <MultiSelectFilterInput\n objectType={objectType}\n propertyKey={definition.key}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n whereClause={whereClause}\n />\n );\n\n case \"SINGLE_DATE\":\n return (\n <SingleDateFilterInput\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n case \"MULTI_DATE\":\n return (\n <MultiDateFilterInput\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n case \"LISTOGRAM\":\n return (\n <ListogramFilterInput\n objectType={objectType}\n propertyKey={definition.key}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n whereClause={whereClause}\n />\n );\n\n case \"TEXT_TAGS\":\n return (\n <TextTagsFilterInput\n objectType={objectType}\n propertyKey={definition.key}\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n whereClause={whereClause}\n />\n );\n\n case \"TIMELINE\":\n return (\n <TimelineFilterInput\n filterState={filterState}\n onFilterStateChanged={onFilterStateChanged}\n />\n );\n\n default:\n return (\n <div data-unsupported=\"true\">\n Unsupported filter component: {definition.filterComponent}\n </div>\n );\n }\n}\n\nconst PropertyFilterInput = memo(\n PropertyFilterInputInner,\n) as typeof PropertyFilterInputInner;\n\ninterface CheckboxListFilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n objectSet: ObjectSet<Q>;\n propertyKey: string;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n whereClause: WhereClause<Q>;\n}\n\nfunction CheckboxListFilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n objectSet,\n propertyKey,\n filterState,\n onFilterStateChanged,\n whereClause,\n}: CheckboxListFilterInputProps<Q>): React.ReactElement {\n const selectedValues = useMemo(\n () =>\n filterState?.type === \"SELECT\"\n ? coerceToStringArray(filterState.selectedValues)\n : [],\n [filterState],\n );\n const isExcluding = filterState?.isExcluding ?? false;\n\n const handleChange = useCallback(\n (newSelectedValues: string[]) => {\n onFilterStateChanged({\n type: \"SELECT\",\n selectedValues: newSelectedValues,\n isExcluding,\n });\n },\n [onFilterStateChanged, isExcluding],\n );\n\n return (\n <CheckboxListInput\n objectType={objectType}\n objectSet={objectSet}\n propertyKey={propertyKey}\n selectedValues={selectedValues}\n onChange={handleChange}\n whereClause={whereClause}\n />\n );\n}\n\nconst CheckboxListFilterInput = memo(\n CheckboxListFilterInputInner,\n) as typeof CheckboxListFilterInputInner;\n\ninterface ContainsTextFilterInputProps {\n propertyKey: string;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n}\n\nconst ContainsTextFilterInput = memo(function ContainsTextFilterInput({\n propertyKey,\n filterState,\n onFilterStateChanged,\n}: ContainsTextFilterInputProps): React.ReactElement {\n const value = useMemo(\n () =>\n filterState?.type === \"CONTAINS_TEXT\"\n ? filterState.value\n : undefined,\n [filterState],\n );\n\n const handleChange = useCallback(\n (value: string | undefined) => {\n onFilterStateChanged({ type: \"CONTAINS_TEXT\", value });\n },\n [onFilterStateChanged],\n );\n\n return (\n <ContainsTextInput\n value={value}\n onChange={handleChange}\n placeholder={`Search ${propertyKey}...`}\n />\n );\n});\n\ninterface ToggleFilterInputProps {\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n}\n\nconst ToggleFilterInput = memo(function ToggleFilterInput({\n filterState,\n onFilterStateChanged,\n}: ToggleFilterInputProps): React.ReactElement {\n const enabled = filterState?.type === \"TOGGLE\" ? filterState.enabled : false;\n\n const handleChange = useCallback(\n (enabled: boolean) => {\n onFilterStateChanged({ type: \"TOGGLE\", enabled });\n },\n [onFilterStateChanged],\n );\n\n return <ToggleInput enabled={enabled} onChange={handleChange} />;\n});\n\ninterface NumberRangeFilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n propertyKey: string;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n}\n\nfunction NumberRangeFilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n propertyKey,\n filterState,\n onFilterStateChanged,\n}: NumberRangeFilterInputProps<Q>): React.ReactElement {\n const numberRangeState = useMemo(\n () => filterState?.type === \"NUMBER_RANGE\" ? filterState : undefined,\n [filterState],\n );\n const includeNull = filterState?.includeNull;\n\n const handleNullChange = useCallback(\n (includeNull: boolean) => {\n onFilterStateChanged({\n type: \"NUMBER_RANGE\",\n minValue: numberRangeState?.minValue,\n maxValue: numberRangeState?.maxValue,\n includeNull,\n });\n },\n [\n onFilterStateChanged,\n numberRangeState?.minValue,\n numberRangeState?.maxValue,\n ],\n );\n\n const handleRangeChange = useCallback(\n (minValue: number | undefined, maxValue: number | undefined) => {\n onFilterStateChanged({\n type: \"NUMBER_RANGE\",\n minValue,\n maxValue,\n includeNull,\n });\n },\n [onFilterStateChanged, includeNull],\n );\n\n return (\n <NullValueWrapper\n objectType={objectType}\n propertyKey={propertyKey}\n includeNull={includeNull}\n onIncludeNullChange={handleNullChange}\n >\n <NumberRangeInput\n objectType={objectType}\n propertyKey={propertyKey}\n minValue={numberRangeState?.minValue}\n maxValue={numberRangeState?.maxValue}\n onChange={handleRangeChange}\n />\n </NullValueWrapper>\n );\n}\n\nconst NumberRangeFilterInput = memo(\n NumberRangeFilterInputInner,\n) as typeof NumberRangeFilterInputInner;\n\ninterface DateRangeFilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n propertyKey: string;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n}\n\nfunction DateRangeFilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n propertyKey,\n filterState,\n onFilterStateChanged,\n}: DateRangeFilterInputProps<Q>): React.ReactElement {\n const dateRangeState = useMemo(\n () => filterState?.type === \"DATE_RANGE\" ? filterState : undefined,\n [filterState],\n );\n const includeNull = filterState?.includeNull;\n\n const handleNullChange = useCallback(\n (includeNull: boolean) => {\n onFilterStateChanged({\n type: \"DATE_RANGE\",\n minValue: dateRangeState?.minValue,\n maxValue: dateRangeState?.maxValue,\n includeNull,\n });\n },\n [onFilterStateChanged, dateRangeState?.minValue, dateRangeState?.maxValue],\n );\n\n const handleRangeChange = useCallback(\n (minValue: Date | undefined, maxValue: Date | undefined) => {\n onFilterStateChanged({\n type: \"DATE_RANGE\",\n minValue,\n maxValue,\n includeNull,\n });\n },\n [onFilterStateChanged, includeNull],\n );\n\n return (\n <NullValueWrapper\n objectType={objectType}\n propertyKey={propertyKey}\n includeNull={includeNull}\n onIncludeNullChange={handleNullChange}\n >\n <DateRangeInput\n objectType={objectType}\n propertyKey={propertyKey}\n minValue={dateRangeState?.minValue}\n maxValue={dateRangeState?.maxValue}\n onChange={handleRangeChange}\n />\n </NullValueWrapper>\n );\n}\n\nconst DateRangeFilterInput = memo(\n DateRangeFilterInputInner,\n) as typeof DateRangeFilterInputInner;\n\ninterface SingleSelectFilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n propertyKey: string;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n whereClause: WhereClause<Q>;\n}\n\nfunction SingleSelectFilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n propertyKey,\n filterState,\n onFilterStateChanged,\n whereClause,\n}: SingleSelectFilterInputProps<Q>): React.ReactElement {\n const selectedValue = useMemo(\n () =>\n filterState?.type === \"SELECT\"\n ? coerceToString(filterState.selectedValues[0])\n : undefined,\n [filterState],\n );\n const isExcluding = filterState?.isExcluding ?? false;\n\n const handleChange = useCallback(\n (value: string | undefined) => {\n onFilterStateChanged({\n type: \"SELECT\",\n selectedValues: value !== undefined ? [value] : [],\n isExcluding,\n });\n },\n [onFilterStateChanged, isExcluding],\n );\n\n return (\n <SingleSelectInput\n objectType={objectType}\n propertyKey={propertyKey}\n selectedValue={selectedValue}\n onChange={handleChange}\n whereClause={whereClause}\n />\n );\n}\n\nconst SingleSelectFilterInput = memo(\n SingleSelectFilterInputInner,\n) as typeof SingleSelectFilterInputInner;\n\ninterface MultiSelectFilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n propertyKey: string;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n whereClause: WhereClause<Q>;\n}\n\nfunction MultiSelectFilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n propertyKey,\n filterState,\n onFilterStateChanged,\n whereClause,\n}: MultiSelectFilterInputProps<Q>): React.ReactElement {\n const selectedValues = useMemo(\n () =>\n filterState?.type === \"SELECT\"\n ? coerceToStringArray(filterState.selectedValues)\n : [],\n [filterState],\n );\n const isExcluding = filterState?.isExcluding ?? false;\n\n const handleChange = useCallback(\n (selectedValues: string[]) => {\n onFilterStateChanged({\n type: \"SELECT\",\n selectedValues,\n isExcluding,\n });\n },\n [onFilterStateChanged, isExcluding],\n );\n\n return (\n <MultiSelectInput\n objectType={objectType}\n propertyKey={propertyKey}\n selectedValues={selectedValues}\n onChange={handleChange}\n whereClause={whereClause}\n />\n );\n}\n\nconst MultiSelectFilterInput = memo(\n MultiSelectFilterInputInner,\n) as typeof MultiSelectFilterInputInner;\n\ninterface SingleDateFilterInputProps {\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n}\n\nconst SingleDateFilterInput = memo(function SingleDateFilterInput({\n filterState,\n onFilterStateChanged,\n}: SingleDateFilterInputProps): React.ReactElement {\n const selectedDate = useMemo(\n () =>\n filterState?.type === \"SELECT\"\n ? (filterState.selectedValues[0] instanceof Date\n ? filterState.selectedValues[0]\n : undefined)\n : undefined,\n [filterState],\n );\n const isExcluding = filterState?.isExcluding ?? false;\n\n const handleChange = useCallback(\n (selectedDate: Date | undefined) => {\n onFilterStateChanged({\n type: \"SELECT\",\n selectedValues: selectedDate !== undefined ? [selectedDate] : [],\n isExcluding,\n });\n },\n [onFilterStateChanged, isExcluding],\n );\n\n return (\n <SingleDateInput selectedDate={selectedDate} onChange={handleChange} />\n );\n});\n\ninterface MultiDateFilterInputProps {\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n}\n\nconst MultiDateFilterInput = memo(function MultiDateFilterInput({\n filterState,\n onFilterStateChanged,\n}: MultiDateFilterInputProps): React.ReactElement {\n const selectedDates = useMemo(\n () =>\n filterState?.type === \"SELECT\"\n ? filterState.selectedValues.filter((v): v is Date => v instanceof Date)\n : [],\n [filterState],\n );\n const isExcluding = filterState?.isExcluding ?? false;\n\n const handleChange = useCallback(\n (selectedDates: Date[]) => {\n onFilterStateChanged({\n type: \"SELECT\",\n selectedValues: selectedDates,\n isExcluding,\n });\n },\n [onFilterStateChanged, isExcluding],\n );\n\n return (\n <MultiDateInput selectedDates={selectedDates} onChange={handleChange} />\n );\n});\n\ninterface ListogramFilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n propertyKey: string;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n whereClause: WhereClause<Q>;\n}\n\nfunction ListogramFilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n propertyKey,\n filterState,\n onFilterStateChanged,\n whereClause,\n}: ListogramFilterInputProps<Q>): React.ReactElement {\n const selectedValues = useMemo(\n () =>\n filterState?.type === \"EXACT_MATCH\"\n ? coerceToStringArray(filterState.values)\n : [],\n [filterState],\n );\n const isExcluding = filterState?.isExcluding ?? false;\n\n const handleChange = useCallback(\n (values: string[]) => {\n onFilterStateChanged({\n type: \"EXACT_MATCH\",\n values,\n isExcluding,\n });\n },\n [onFilterStateChanged, isExcluding],\n );\n\n return (\n <ListogramInput\n objectType={objectType}\n propertyKey={propertyKey}\n selectedValues={selectedValues}\n onChange={handleChange}\n whereClause={whereClause}\n />\n );\n}\n\nconst ListogramFilterInput = memo(\n ListogramFilterInputInner,\n) as typeof ListogramFilterInputInner;\n\ninterface TextTagsFilterInputProps<Q extends ObjectTypeDefinition> {\n objectType: Q;\n propertyKey: string;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n whereClause: WhereClause<Q>;\n}\n\nfunction TextTagsFilterInputInner<Q extends ObjectTypeDefinition>({\n objectType,\n propertyKey,\n filterState,\n onFilterStateChanged,\n whereClause,\n}: TextTagsFilterInputProps<Q>): React.ReactElement {\n const tags = useMemo(\n () =>\n filterState?.type === \"EXACT_MATCH\"\n ? coerceToStringArray(filterState.values)\n : [],\n [filterState],\n );\n const isExcluding = filterState?.isExcluding ?? false;\n\n const handleChange = useCallback(\n (values: string[]) => {\n onFilterStateChanged({\n type: \"EXACT_MATCH\",\n values,\n isExcluding,\n });\n },\n [onFilterStateChanged, isExcluding],\n );\n\n return (\n <TextTagsInput\n objectType={objectType}\n propertyKey={propertyKey}\n tags={tags}\n onChange={handleChange}\n whereClause={whereClause}\n />\n );\n}\n\nconst TextTagsFilterInput = memo(\n TextTagsFilterInputInner,\n) as typeof TextTagsFilterInputInner;\n\ninterface TimelineFilterInputProps {\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n}\n\nconst TimelineFilterInput = memo(function TimelineFilterInput({\n filterState,\n onFilterStateChanged,\n}: TimelineFilterInputProps): React.ReactElement {\n const { startDate, endDate } = useMemo(\n () =>\n filterState?.type === \"TIMELINE\"\n ? { startDate: filterState.startDate, endDate: filterState.endDate }\n : { startDate: undefined, endDate: undefined },\n [filterState],\n );\n const isExcluding = filterState?.isExcluding ?? false;\n\n const handleChange = useCallback(\n (startDate: Date | undefined, endDate: Date | undefined) => {\n onFilterStateChanged({\n type: \"TIMELINE\",\n startDate,\n endDate,\n isExcluding,\n });\n },\n [onFilterStateChanged, isExcluding],\n );\n\n return (\n <TimelineInput\n startDate={startDate}\n endDate={endDate}\n onChange={handleChange}\n />\n );\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FilterList.js","names":["Button","classnames","React","useCallback","useMemo","useFilterListState","styles","FilterListContent","FilterListHeader","FilterList","props","objectSet","title","titleIcon","filterDefinitions","showResetButton","onReset","onFilterAdded","showActiveFilterCount","enableSorting","className","renderAddFilterButton","objectType","$objectSetInternals","def","filterStates","setFilterState","whereClause","activeFilterCount","reset","handleReset","visibleFilterDefinitions","undefined","filter","isVisible","createElement","filterList","onFilterStateChanged","addButtonContainer","type","addButton"],"sources":["FilterList.tsx"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Button } from \"@base-ui/react/button\";\nimport type { ObjectTypeDefinition } from \"@osdk/api\";\nimport classnames from \"classnames\";\nimport React, { useCallback, useMemo } from \"react\";\nimport type {\n FilterDefinitionUnion,\n FilterListProps,\n} from \"../FilterListApi.js\";\nimport { useFilterListState } from \"../hooks/useFilterListState.js\";\nimport styles from \"./FilterList.module.css\";\nimport { FilterListContent } from \"./FilterListContent.js\";\nimport { FilterListHeader } from \"./FilterListHeader.js\";\n\nexport function FilterList<Q extends ObjectTypeDefinition>(\n props: FilterListProps<Q>,\n): React.ReactElement {\n const {\n objectSet,\n title,\n titleIcon,\n filterDefinitions,\n showResetButton = false,\n onReset,\n onFilterAdded,\n showActiveFilterCount = false,\n enableSorting,\n className,\n renderAddFilterButton,\n } = props;\n\n const objectType = objectSet.$objectSetInternals.def;\n\n const {\n filterStates,\n setFilterState,\n whereClause,\n activeFilterCount,\n reset,\n } = useFilterListState(props);\n\n const handleReset = useCallback(() => {\n reset();\n onReset?.();\n }, [reset, onReset]);\n\n const visibleFilterDefinitions = useMemo(() => {\n if (!filterDefinitions) return undefined;\n return filterDefinitions.filter(\n (def: FilterDefinitionUnion<Q>) => def.isVisible !== false,\n );\n }, [filterDefinitions]);\n\n const showHeader = title || titleIcon || showResetButton\n || showActiveFilterCount;\n\n const showAddButton = renderAddFilterButton != null || onFilterAdded != null;\n\n return (\n <div\n className={classnames(styles.filterList, className)}\n data-active-count={activeFilterCount}\n >\n {showHeader && (\n <FilterListHeader\n title={title}\n titleIcon={titleIcon}\n showResetButton={showResetButton}\n onReset={handleReset}\n showActiveFilterCount={showActiveFilterCount}\n activeFilterCount={activeFilterCount}\n />\n )}\n\n <FilterListContent\n objectType={objectType}\n objectSet={objectSet}\n filterDefinitions={visibleFilterDefinitions}\n filterStates={filterStates}\n onFilterStateChanged={setFilterState}\n whereClause={whereClause}\n enableSorting={enableSorting}\n />\n\n {showAddButton && (\n <div className={styles.addButtonContainer}>\n {renderAddFilterButton\n ? renderAddFilterButton()\n : (\n <Button type=\"button\" className={styles.addButton}>\n + Add filter\n </Button>\n )}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,MAAM,QAAQ,uBAAuB;AAE9C,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,IAAIC,WAAW,EAAEC,OAAO,QAAQ,OAAO;AAKnD,SAASC,kBAAkB,QAAQ,gCAAgC;AACnE,OAAOC,MAAM,MAAM,yBAAyB;AAC5C,SAASC,iBAAiB,QAAQ,wBAAwB;AAC1D,SAASC,gBAAgB,QAAQ,uBAAuB;AAExD,OAAO,SAASC,UAAUA,CACxBC,KAAyB,EACL;EACpB,MAAM;IACJC,SAAS;IACTC,KAAK;IACLC,SAAS;IACTC,iBAAiB;IACjBC,eAAe,GAAG,KAAK;IACvBC,OAAO;IACPC,aAAa;IACbC,qBAAqB,GAAG,KAAK;IAC7BC,aAAa;IACbC,SAAS;IACTC;EACF,CAAC,GAAGX,KAAK;EAET,MAAMY,UAAU,GAAGX,SAAS,CAACY,mBAAmB,CAACC,GAAG;EAEpD,MAAM;IACJC,YAAY;IACZC,cAAc;IACdC,WAAW;IACXC,iBAAiB;IACjBC;EACF,CAAC,GAAGxB,kBAAkB,CAACK,KAAK,CAAC;EAE7B,MAAMoB,WAAW,GAAG3B,WAAW,CAAC,MAAM;IACpC0B,KAAK,CAAC,CAAC;IACPb,OAAO,GAAG,CAAC;EACb,CAAC,EAAE,CAACa,KAAK,EAAEb,OAAO,CAAC,CAAC;EAEpB,MAAMe,wBAAwB,GAAG3B,OAAO,CAAC,MAAM;IAC7C,IAAI,CAACU,iBAAiB,EAAE,OAAOkB,SAAS;IACxC,OAAOlB,iBAAiB,CAACmB,MAAM,CAC5BT,GAA6B,IAAKA,GAAG,CAACU,SAAS,KAAK,KACvD,CAAC;EACH,CAAC,EAAE,CAACpB,iBAAiB,CAAC,CAAC;EAOvB,oBACEZ,KAAA,CAAAiC,aAAA;IACEf,SAAS,EAAEnB,UAAU,CAACK,MAAM,CAAC8B,UAAU,EAAEhB,SAAS,CAAE;IACpD,qBAAmBQ;EAAkB,GAEpC,CAVchB,KAAK,IAAIC,SAAS,IAAIE,eAAe,IACnDG,qBAAqB,kBAUpBhB,KAAA,CAAAiC,aAAA,CAAC3B,gBAAgB;IACfI,KAAK,EAAEA,KAAM;IACbC,SAAS,EAAEA,SAAU;IACrBE,eAAe,EAAEA,eAAgB;IACjCC,OAAO,EAAEc,WAAY;IACrBZ,qBAAqB,EAAEA,qBAAsB;IAC7CU,iBAAiB,EAAEA;EAAkB,CACtC,CACF,eAED1B,KAAA,CAAAiC,aAAA,CAAC5B,iBAAiB;IAChBe,UAAU,EAAEA,UAAW;IACvBX,SAAS,EAAEA,SAAU;IACrBG,iBAAiB,EAAEiB,wBAAyB;IAC5CN,YAAY,EAAEA,YAAa;IAC3BY,oBAAoB,EAAEX,cAAe;IACrCC,WAAW,EAAEA,WAAY;IACzBR,aAAa,EAAEA;EAAc,CAC9B,CAAC,EAED,CA5BiBE,qBAAqB,IAAI,IAAI,IAAIJ,aAAa,IAAI,IAAI,kBA6BtEf,KAAA,CAAAiC,aAAA;IAAKf,SAAS,EAAEd,MAAM,CAACgC;EAAmB,GACvCjB,qBAAqB,GAClBA,qBAAqB,CAAC,CAAC,gBAEvBnB,KAAA,CAAAiC,aAAA,CAACnC,MAAM;IAACuC,IAAI,EAAC,QAAQ;IAACnB,SAAS,EAAEd,MAAM,CAACkC;EAAU,GAAC,cAE3C,CAET,CAEJ,CAAC;AAEV","ignoreList":[]}
@@ -1,237 +0,0 @@
1
- /*
2
- * Copyright 2025 Palantir Technologies, Inc. All rights reserved.
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
-
17
- import classnames from "classnames";
18
- import React, { memo, useCallback, useMemo } from "react";
19
- import { assertUnreachable } from "../../utils/assertUnreachable.js";
20
- import { coerceToString, coerceToStringArray } from "../../utils/coerceFilterValue.js";
21
- import { CheckboxListInput } from "./CheckboxListInput.js";
22
- import { ContainsTextInput } from "./ContainsTextInput.js";
23
- import { DateRangeInput } from "./DateRangeInput.js";
24
- import styles from "./LinkedPropertyInput.module.css.js";
25
- import { ListogramInput } from "./ListogramInput.js";
26
- import { MultiDateInput } from "./MultiDateInput.js";
27
- import { MultiSelectInput } from "./MultiSelectInput.js";
28
- import { NumberRangeInput } from "./NumberRangeInput.js";
29
- import { SingleDateInput } from "./SingleDateInput.js";
30
- import { SingleSelectInput } from "./SingleSelectInput.js";
31
- import { TextTagsInput } from "./TextTagsInput.js";
32
- import { TimelineInput } from "./TimelineInput.js";
33
- import { ToggleInput } from "./ToggleInput.js";
34
- function LinkedPropertyInputInner({
35
- objectSet,
36
- definition,
37
- filterState,
38
- onFilterStateChanged,
39
- className,
40
- style
41
- }) {
42
- const linkedObjectSet = useMemo(() => objectSet.pivotTo(definition.linkName), [objectSet, definition.linkName]);
43
- const linkedObjectType = linkedObjectSet.$objectSetInternals.def;
44
- const linkedPropertyKey = definition.linkedPropertyKey;
45
- const innerState = filterState?.type === "linkedProperty" ? filterState.linkedFilterState : undefined;
46
- const isExcluding = innerState?.isExcluding ?? false;
47
- const includeNull = innerState?.includeNull;
48
- const wrappedOnChange = useCallback(innerFilterState => {
49
- onFilterStateChanged({
50
- type: "linkedProperty",
51
- linkedFilterState: innerFilterState
52
- });
53
- }, [onFilterStateChanged]);
54
- const onSelectChange = useCallback(selectedValues => {
55
- wrappedOnChange({
56
- type: "SELECT",
57
- selectedValues,
58
- isExcluding
59
- });
60
- }, [wrappedOnChange, isExcluding]);
61
- const onSingleSelectChange = useCallback(selectedValue => {
62
- wrappedOnChange({
63
- type: "SELECT",
64
- selectedValues: selectedValue !== undefined ? [selectedValue] : [],
65
- isExcluding
66
- });
67
- }, [wrappedOnChange, isExcluding]);
68
- const onContainsTextChange = useCallback(value => {
69
- wrappedOnChange({
70
- type: "CONTAINS_TEXT",
71
- value
72
- });
73
- }, [wrappedOnChange]);
74
- const onToggleChange = useCallback(enabled => {
75
- wrappedOnChange({
76
- type: "TOGGLE",
77
- enabled
78
- });
79
- }, [wrappedOnChange]);
80
- const onNumberRangeChange = useCallback((minValue, maxValue) => {
81
- wrappedOnChange({
82
- type: "NUMBER_RANGE",
83
- minValue,
84
- maxValue,
85
- includeNull
86
- });
87
- }, [wrappedOnChange, includeNull]);
88
- const onDateRangeChange = useCallback((minValue, maxValue) => {
89
- wrappedOnChange({
90
- type: "DATE_RANGE",
91
- minValue,
92
- maxValue,
93
- includeNull
94
- });
95
- }, [wrappedOnChange, includeNull]);
96
- const onExactMatchChange = useCallback(values => {
97
- wrappedOnChange({
98
- type: "EXACT_MATCH",
99
- values,
100
- isExcluding
101
- });
102
- }, [wrappedOnChange, isExcluding]);
103
- const onDateSelectChange = useCallback(date => {
104
- wrappedOnChange({
105
- type: "SELECT",
106
- selectedValues: date !== undefined ? [date] : [],
107
- isExcluding
108
- });
109
- }, [wrappedOnChange, isExcluding]);
110
- const onMultiDateChange = useCallback(dates => {
111
- wrappedOnChange({
112
- type: "SELECT",
113
- selectedValues: dates
114
- });
115
- }, [wrappedOnChange]);
116
- const onTimelineChange = useCallback((start, end) => {
117
- wrappedOnChange({
118
- type: "TIMELINE",
119
- startDate: start,
120
- endDate: end,
121
- isExcluding
122
- });
123
- }, [wrappedOnChange, isExcluding]);
124
- const selectStringValues = useMemo(() => innerState?.type === "SELECT" ? coerceToStringArray(innerState.selectedValues) : [], [innerState]);
125
- const singleSelectValue = useMemo(() => innerState?.type === "SELECT" ? coerceToString(innerState.selectedValues[0]) : undefined, [innerState]);
126
- const exactMatchValues = useMemo(() => innerState?.type === "EXACT_MATCH" ? coerceToStringArray(innerState.values) : [], [innerState]);
127
- const selectedDates = useMemo(() => innerState?.type === "SELECT" ? innerState.selectedValues.filter(v => v instanceof Date) : [], [innerState]);
128
- const selectedDate = useMemo(() => innerState?.type === "SELECT" && innerState.selectedValues[0] instanceof Date ? innerState.selectedValues[0] : undefined, [innerState]);
129
- const content = (() => {
130
- switch (definition.linkedFilterComponent) {
131
- case "CHECKBOX_LIST":
132
- return /*#__PURE__*/React.createElement(CheckboxListInput, {
133
- objectType: linkedObjectType,
134
- objectSet: linkedObjectSet,
135
- propertyKey: linkedPropertyKey,
136
- selectedValues: selectStringValues,
137
- onChange: onSelectChange
138
- });
139
- case "MULTI_SELECT":
140
- return /*#__PURE__*/React.createElement(MultiSelectInput, {
141
- objectType: linkedObjectType,
142
- objectSet: linkedObjectSet,
143
- propertyKey: linkedPropertyKey,
144
- selectedValues: selectStringValues,
145
- onChange: onSelectChange
146
- });
147
- case "SINGLE_SELECT":
148
- return /*#__PURE__*/React.createElement(SingleSelectInput, {
149
- objectType: linkedObjectType,
150
- objectSet: linkedObjectSet,
151
- propertyKey: linkedPropertyKey,
152
- selectedValue: singleSelectValue,
153
- onChange: onSingleSelectChange
154
- });
155
- case "CONTAINS_TEXT":
156
- return /*#__PURE__*/React.createElement(ContainsTextInput, {
157
- value: innerState?.type === "CONTAINS_TEXT" ? innerState.value : undefined,
158
- onChange: onContainsTextChange,
159
- placeholder: `Search ${String(definition.linkedPropertyKey)}...`
160
- });
161
- case "TOGGLE":
162
- return /*#__PURE__*/React.createElement(ToggleInput, {
163
- enabled: innerState?.type === "TOGGLE" ? innerState.enabled : false,
164
- onChange: onToggleChange
165
- });
166
- case "NUMBER_RANGE":
167
- {
168
- const numberRange = innerState?.type === "NUMBER_RANGE" ? innerState : undefined;
169
- return /*#__PURE__*/React.createElement(NumberRangeInput, {
170
- objectType: linkedObjectType,
171
- objectSet: linkedObjectSet,
172
- propertyKey: linkedPropertyKey,
173
- minValue: numberRange?.minValue,
174
- maxValue: numberRange?.maxValue,
175
- onChange: onNumberRangeChange
176
- });
177
- }
178
- case "DATE_RANGE":
179
- {
180
- const dateRange = innerState?.type === "DATE_RANGE" ? innerState : undefined;
181
- return /*#__PURE__*/React.createElement(DateRangeInput, {
182
- objectType: linkedObjectType,
183
- objectSet: linkedObjectSet,
184
- propertyKey: linkedPropertyKey,
185
- minValue: dateRange?.minValue,
186
- maxValue: dateRange?.maxValue,
187
- onChange: onDateRangeChange
188
- });
189
- }
190
- case "LISTOGRAM":
191
- return /*#__PURE__*/React.createElement(ListogramInput, {
192
- objectType: linkedObjectType,
193
- objectSet: linkedObjectSet,
194
- propertyKey: linkedPropertyKey,
195
- selectedValues: exactMatchValues,
196
- onChange: onExactMatchChange
197
- });
198
- case "TEXT_TAGS":
199
- return /*#__PURE__*/React.createElement(TextTagsInput, {
200
- objectType: linkedObjectType,
201
- objectSet: linkedObjectSet,
202
- propertyKey: linkedPropertyKey,
203
- tags: exactMatchValues,
204
- onChange: onExactMatchChange
205
- });
206
- case "SINGLE_DATE":
207
- return /*#__PURE__*/React.createElement(SingleDateInput, {
208
- selectedDate: selectedDate,
209
- onChange: onDateSelectChange,
210
- showClearButton: true
211
- });
212
- case "MULTI_DATE":
213
- return /*#__PURE__*/React.createElement(MultiDateInput, {
214
- selectedDates: selectedDates,
215
- onChange: onMultiDateChange,
216
- showClearAll: true
217
- });
218
- case "TIMELINE":
219
- {
220
- const timeline = innerState?.type === "TIMELINE" ? innerState : undefined;
221
- return /*#__PURE__*/React.createElement(TimelineInput, {
222
- startDate: timeline?.startDate,
223
- endDate: timeline?.endDate,
224
- onChange: onTimelineChange
225
- });
226
- }
227
- default:
228
- return assertUnreachable(definition.linkedFilterComponent);
229
- }
230
- })();
231
- return /*#__PURE__*/React.createElement("div", {
232
- className: classnames(styles.linkedProperty, className),
233
- style: style
234
- }, content);
235
- }
236
- export const LinkedPropertyInput = /*#__PURE__*/memo(LinkedPropertyInputInner);
237
- //# sourceMappingURL=LinkedPropertyInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LinkedPropertyInput.js","names":["classnames","React","memo","useCallback","useMemo","assertUnreachable","coerceToString","coerceToStringArray","CheckboxListInput","ContainsTextInput","DateRangeInput","styles","ListogramInput","MultiDateInput","MultiSelectInput","NumberRangeInput","SingleDateInput","SingleSelectInput","TextTagsInput","TimelineInput","ToggleInput","LinkedPropertyInputInner","objectSet","definition","filterState","onFilterStateChanged","className","style","linkedObjectSet","pivotTo","linkName","linkedObjectType","$objectSetInternals","def","linkedPropertyKey","innerState","type","linkedFilterState","undefined","isExcluding","includeNull","wrappedOnChange","innerFilterState","onSelectChange","selectedValues","onSingleSelectChange","selectedValue","onContainsTextChange","value","onToggleChange","enabled","onNumberRangeChange","minValue","maxValue","onDateRangeChange","onExactMatchChange","values","onDateSelectChange","date","onMultiDateChange","dates","onTimelineChange","start","end","startDate","endDate","selectStringValues","singleSelectValue","exactMatchValues","selectedDates","filter","v","Date","selectedDate","content","linkedFilterComponent","createElement","objectType","propertyKey","onChange","placeholder","String","numberRange","dateRange","tags","showClearButton","showClearAll","timeline","linkedProperty","LinkedPropertyInput"],"sources":["LinkedPropertyInput.tsx"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n LinkNames,\n ObjectSet,\n ObjectTypeDefinition,\n PropertyKeys,\n} from \"@osdk/api\";\nimport classnames from \"classnames\";\nimport React, { memo, useCallback, useMemo } from \"react\";\nimport type { FilterState } from \"../../FilterListItemApi.js\";\nimport type { LinkedPropertyFilterDefinition } from \"../../types/LinkedFilterTypes.js\";\nimport { assertUnreachable } from \"../../utils/assertUnreachable.js\";\nimport {\n coerceToString,\n coerceToStringArray,\n} from \"../../utils/coerceFilterValue.js\";\nimport { CheckboxListInput } from \"./CheckboxListInput.js\";\nimport { ContainsTextInput } from \"./ContainsTextInput.js\";\nimport { DateRangeInput } from \"./DateRangeInput.js\";\nimport styles from \"./LinkedPropertyInput.module.css\";\nimport { ListogramInput } from \"./ListogramInput.js\";\nimport { MultiDateInput } from \"./MultiDateInput.js\";\nimport { MultiSelectInput } from \"./MultiSelectInput.js\";\nimport { NumberRangeInput } from \"./NumberRangeInput.js\";\nimport { SingleDateInput } from \"./SingleDateInput.js\";\nimport { SingleSelectInput } from \"./SingleSelectInput.js\";\nimport { TextTagsInput } from \"./TextTagsInput.js\";\nimport { TimelineInput } from \"./TimelineInput.js\";\nimport { ToggleInput } from \"./ToggleInput.js\";\n\ninterface LinkedPropertyInputProps<\n Q extends ObjectTypeDefinition,\n L extends LinkNames<Q>,\n> {\n objectSet: ObjectSet<Q>;\n definition: LinkedPropertyFilterDefinition<\n Q,\n L,\n ObjectTypeDefinition,\n PropertyKeys<ObjectTypeDefinition>\n >;\n filterState: FilterState | undefined;\n onFilterStateChanged: (state: FilterState) => void;\n className?: string;\n style?: React.CSSProperties;\n}\n\nfunction LinkedPropertyInputInner<\n Q extends ObjectTypeDefinition,\n L extends LinkNames<Q>,\n>({\n objectSet,\n definition,\n filterState,\n onFilterStateChanged,\n className,\n style,\n}: LinkedPropertyInputProps<Q, L>): React.ReactElement {\n const linkedObjectSet = useMemo(\n () => objectSet.pivotTo(definition.linkName),\n [objectSet, definition.linkName],\n );\n\n const linkedObjectType = linkedObjectSet.$objectSetInternals.def;\n\n const linkedPropertyKey = definition.linkedPropertyKey as PropertyKeys<\n typeof linkedObjectType\n >;\n\n const innerState = filterState?.type === \"linkedProperty\"\n ? filterState.linkedFilterState\n : undefined;\n\n const isExcluding = innerState?.isExcluding ?? false;\n const includeNull = innerState?.includeNull;\n\n const wrappedOnChange = useCallback(\n (innerFilterState: FilterState) => {\n onFilterStateChanged({\n type: \"linkedProperty\",\n linkedFilterState: innerFilterState,\n });\n },\n [onFilterStateChanged],\n );\n\n const onSelectChange = useCallback(\n (selectedValues: string[]) => {\n wrappedOnChange({\n type: \"SELECT\",\n selectedValues,\n isExcluding,\n });\n },\n [wrappedOnChange, isExcluding],\n );\n\n const onSingleSelectChange = useCallback(\n (selectedValue: string | undefined) => {\n wrappedOnChange({\n type: \"SELECT\",\n selectedValues: selectedValue !== undefined ? [selectedValue] : [],\n isExcluding,\n });\n },\n [wrappedOnChange, isExcluding],\n );\n\n const onContainsTextChange = useCallback(\n (value: string | undefined) => {\n wrappedOnChange({ type: \"CONTAINS_TEXT\", value });\n },\n [wrappedOnChange],\n );\n\n const onToggleChange = useCallback(\n (enabled: boolean) => {\n wrappedOnChange({ type: \"TOGGLE\", enabled });\n },\n [wrappedOnChange],\n );\n\n const onNumberRangeChange = useCallback(\n (minValue: number | undefined, maxValue: number | undefined) => {\n wrappedOnChange({\n type: \"NUMBER_RANGE\",\n minValue,\n maxValue,\n includeNull,\n });\n },\n [wrappedOnChange, includeNull],\n );\n\n const onDateRangeChange = useCallback(\n (minValue: Date | undefined, maxValue: Date | undefined) => {\n wrappedOnChange({\n type: \"DATE_RANGE\",\n minValue,\n maxValue,\n includeNull,\n });\n },\n [wrappedOnChange, includeNull],\n );\n\n const onExactMatchChange = useCallback(\n (values: string[]) => {\n wrappedOnChange({\n type: \"EXACT_MATCH\",\n values,\n isExcluding,\n });\n },\n [wrappedOnChange, isExcluding],\n );\n\n const onDateSelectChange = useCallback(\n (date: Date | undefined) => {\n wrappedOnChange({\n type: \"SELECT\",\n selectedValues: date !== undefined ? [date] : [],\n isExcluding,\n });\n },\n [wrappedOnChange, isExcluding],\n );\n\n const onMultiDateChange = useCallback(\n (dates: Date[]) => {\n wrappedOnChange({\n type: \"SELECT\",\n selectedValues: dates,\n });\n },\n [wrappedOnChange],\n );\n\n const onTimelineChange = useCallback(\n (start: Date | undefined, end: Date | undefined) => {\n wrappedOnChange({\n type: \"TIMELINE\",\n startDate: start,\n endDate: end,\n isExcluding,\n });\n },\n [wrappedOnChange, isExcluding],\n );\n\n const selectStringValues = useMemo(\n () =>\n innerState?.type === \"SELECT\"\n ? coerceToStringArray(innerState.selectedValues)\n : [],\n [innerState],\n );\n\n const singleSelectValue = useMemo(\n () =>\n innerState?.type === \"SELECT\"\n ? coerceToString(innerState.selectedValues[0])\n : undefined,\n [innerState],\n );\n\n const exactMatchValues = useMemo(\n () =>\n innerState?.type === \"EXACT_MATCH\"\n ? coerceToStringArray(innerState.values)\n : [],\n [innerState],\n );\n\n const selectedDates = useMemo(\n () =>\n innerState?.type === \"SELECT\"\n ? innerState.selectedValues.filter(\n (v): v is Date => v instanceof Date,\n )\n : [],\n [innerState],\n );\n\n const selectedDate = useMemo(\n () =>\n innerState?.type === \"SELECT\"\n && innerState.selectedValues[0] instanceof Date\n ? innerState.selectedValues[0]\n : undefined,\n [innerState],\n );\n\n const content = (() => {\n switch (definition.linkedFilterComponent) {\n case \"CHECKBOX_LIST\":\n return (\n <CheckboxListInput\n objectType={linkedObjectType}\n objectSet={linkedObjectSet}\n propertyKey={linkedPropertyKey}\n selectedValues={selectStringValues}\n onChange={onSelectChange}\n />\n );\n\n case \"MULTI_SELECT\":\n return (\n <MultiSelectInput\n objectType={linkedObjectType}\n objectSet={linkedObjectSet}\n propertyKey={linkedPropertyKey}\n selectedValues={selectStringValues}\n onChange={onSelectChange}\n />\n );\n\n case \"SINGLE_SELECT\":\n return (\n <SingleSelectInput\n objectType={linkedObjectType}\n objectSet={linkedObjectSet}\n propertyKey={linkedPropertyKey}\n selectedValue={singleSelectValue}\n onChange={onSingleSelectChange}\n />\n );\n\n case \"CONTAINS_TEXT\":\n return (\n <ContainsTextInput\n value={innerState?.type === \"CONTAINS_TEXT\"\n ? innerState.value\n : undefined}\n onChange={onContainsTextChange}\n placeholder={`Search ${String(definition.linkedPropertyKey)}...`}\n />\n );\n\n case \"TOGGLE\":\n return (\n <ToggleInput\n enabled={innerState?.type === \"TOGGLE\"\n ? innerState.enabled\n : false}\n onChange={onToggleChange}\n />\n );\n\n case \"NUMBER_RANGE\": {\n const numberRange = innerState?.type === \"NUMBER_RANGE\"\n ? innerState\n : undefined;\n return (\n <NumberRangeInput\n objectType={linkedObjectType}\n objectSet={linkedObjectSet}\n propertyKey={linkedPropertyKey}\n minValue={numberRange?.minValue}\n maxValue={numberRange?.maxValue}\n onChange={onNumberRangeChange}\n />\n );\n }\n\n case \"DATE_RANGE\": {\n const dateRange = innerState?.type === \"DATE_RANGE\"\n ? innerState\n : undefined;\n return (\n <DateRangeInput\n objectType={linkedObjectType}\n objectSet={linkedObjectSet}\n propertyKey={linkedPropertyKey}\n minValue={dateRange?.minValue}\n maxValue={dateRange?.maxValue}\n onChange={onDateRangeChange}\n />\n );\n }\n\n case \"LISTOGRAM\":\n return (\n <ListogramInput\n objectType={linkedObjectType}\n objectSet={linkedObjectSet}\n propertyKey={linkedPropertyKey}\n selectedValues={exactMatchValues}\n onChange={onExactMatchChange}\n />\n );\n\n case \"TEXT_TAGS\":\n return (\n <TextTagsInput\n objectType={linkedObjectType}\n objectSet={linkedObjectSet}\n propertyKey={linkedPropertyKey}\n tags={exactMatchValues}\n onChange={onExactMatchChange}\n />\n );\n\n case \"SINGLE_DATE\":\n return (\n <SingleDateInput\n selectedDate={selectedDate}\n onChange={onDateSelectChange}\n showClearButton={true}\n />\n );\n\n case \"MULTI_DATE\":\n return (\n <MultiDateInput\n selectedDates={selectedDates}\n onChange={onMultiDateChange}\n showClearAll={true}\n />\n );\n\n case \"TIMELINE\": {\n const timeline = innerState?.type === \"TIMELINE\"\n ? innerState\n : undefined;\n return (\n <TimelineInput\n startDate={timeline?.startDate}\n endDate={timeline?.endDate}\n onChange={onTimelineChange}\n />\n );\n }\n\n default:\n return assertUnreachable(definition.linkedFilterComponent);\n }\n })();\n\n return (\n <div className={classnames(styles.linkedProperty, className)} style={style}>\n {content}\n </div>\n );\n}\n\nexport const LinkedPropertyInput = memo(\n LinkedPropertyInputInner,\n) as typeof LinkedPropertyInputInner;\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=AddFilterMenuTypes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AddFilterMenuTypes.js","names":[],"sources":["AddFilterMenuTypes.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ReactNode } from \"react\";\nimport type { FilterComponentType } from \"../FilterListItemApi.js\";\n\n/**\n * Visual data indicator configuration for filter items\n */\nexport type FilterDataIndicator = \"histogram\" | \"count\" | \"none\";\n\n/**\n * Category for organizing filters in the add filter menu\n */\nexport type FilterCategory =\n | \"ALL_PROPERTIES\"\n | \"SINGLE_PROPERTY\"\n | \"LINKED_OBJECT\";\n\n/**\n * Template for a filter that can be added via the add filter menu\n */\nexport interface FilterTemplate {\n /**\n * Unique identifier for the template\n */\n id: string;\n\n /**\n * Display label for the filter\n */\n label: string;\n\n /**\n * Property key this filter applies to\n */\n key: string;\n\n /**\n * The type of filter component to use\n */\n filterComponent: FilterComponentType;\n\n /**\n * Icon to display next to the filter label.\n * Can be a string (icon name) or a ReactNode for custom icons.\n */\n icon: string | ReactNode;\n\n /**\n * Type of data indicator to show (histogram, count, none)\n */\n dataIndicator?: FilterDataIndicator;\n\n /**\n * Whether to show a \"Select All\" option for checkbox lists\n */\n showSelectAll?: boolean;\n\n /**\n * Maximum number of visible items before scrolling\n */\n maxVisibleItems?: number;\n\n /**\n * Whether multiple instances of this filter can be added\n */\n allowMultiple: boolean;\n\n /**\n * Category for grouping in the add filter menu\n */\n category: FilterCategory;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=FilterPanelTypes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FilterPanelTypes.js","names":[],"sources":["FilterPanelTypes.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ObjectTypeDefinition, WhereClause } from \"@osdk/api\";\nimport type { FilterState } from \"../FilterListItemApi.js\";\n\n/**\n * Filter states indexed by key (serializable to JSON)\n */\nexport type SerializableFilterStates = Record<string, FilterState>;\n\n/**\n * Persisted state for the filter list\n * Can be serialized and stored for session persistence\n *\n * Note: Only includes serializable data. Filter definitions are not persisted\n * because they may contain callback functions which cannot be serialized.\n */\nexport interface FilterListPersistedState<\n Q extends ObjectTypeDefinition = ObjectTypeDefinition,\n> {\n collapsed: boolean;\n filterStatesByKey: SerializableFilterStates;\n filterClause?: WhereClause<Q>;\n}\n"],"mappings":"","ignoreList":[]}