@pipe0/react 0.0.2

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 (577) hide show
  1. package/CHANGELOG.md +119 -0
  2. package/README.md +172 -0
  3. package/dist/components/compound/pipe-catalog/active-filters.d.mts +26 -0
  4. package/dist/components/compound/pipe-catalog/active-filters.d.mts.map +1 -0
  5. package/dist/components/compound/pipe-catalog/active-filters.mjs +47 -0
  6. package/dist/components/compound/pipe-catalog/active-filters.mjs.map +1 -0
  7. package/dist/components/compound/pipe-catalog/card.d.mts +30 -0
  8. package/dist/components/compound/pipe-catalog/card.d.mts.map +1 -0
  9. package/dist/components/compound/pipe-catalog/card.mjs +77 -0
  10. package/dist/components/compound/pipe-catalog/card.mjs.map +1 -0
  11. package/dist/components/compound/pipe-catalog/category-filter.d.mts +30 -0
  12. package/dist/components/compound/pipe-catalog/category-filter.d.mts.map +1 -0
  13. package/dist/components/compound/pipe-catalog/category-filter.mjs +56 -0
  14. package/dist/components/compound/pipe-catalog/category-filter.mjs.map +1 -0
  15. package/dist/components/compound/pipe-catalog/column-filter.d.mts +40 -0
  16. package/dist/components/compound/pipe-catalog/column-filter.d.mts.map +1 -0
  17. package/dist/components/compound/pipe-catalog/column-filter.mjs +66 -0
  18. package/dist/components/compound/pipe-catalog/column-filter.mjs.map +1 -0
  19. package/dist/components/compound/pipe-catalog/column-filters.d.mts +16 -0
  20. package/dist/components/compound/pipe-catalog/column-filters.d.mts.map +1 -0
  21. package/dist/components/compound/pipe-catalog/column-filters.mjs +21 -0
  22. package/dist/components/compound/pipe-catalog/column-filters.mjs.map +1 -0
  23. package/dist/components/compound/pipe-catalog/empty.d.mts +22 -0
  24. package/dist/components/compound/pipe-catalog/empty.d.mts.map +1 -0
  25. package/dist/components/compound/pipe-catalog/empty.mjs +31 -0
  26. package/dist/components/compound/pipe-catalog/empty.mjs.map +1 -0
  27. package/dist/components/compound/pipe-catalog/index.d.mts +13 -0
  28. package/dist/components/compound/pipe-catalog/index.mjs +15 -0
  29. package/dist/components/compound/pipe-catalog/input-field-filter.d.mts +22 -0
  30. package/dist/components/compound/pipe-catalog/input-field-filter.d.mts.map +1 -0
  31. package/dist/components/compound/pipe-catalog/input-field-filter.mjs +22 -0
  32. package/dist/components/compound/pipe-catalog/input-field-filter.mjs.map +1 -0
  33. package/dist/components/compound/pipe-catalog/list.d.mts +34 -0
  34. package/dist/components/compound/pipe-catalog/list.d.mts.map +1 -0
  35. package/dist/components/compound/pipe-catalog/list.mjs +29 -0
  36. package/dist/components/compound/pipe-catalog/list.mjs.map +1 -0
  37. package/dist/components/compound/pipe-catalog/output-field-filter.d.mts +22 -0
  38. package/dist/components/compound/pipe-catalog/output-field-filter.d.mts.map +1 -0
  39. package/dist/components/compound/pipe-catalog/output-field-filter.mjs +22 -0
  40. package/dist/components/compound/pipe-catalog/output-field-filter.mjs.map +1 -0
  41. package/dist/components/compound/pipe-catalog/provider-filter.d.mts +22 -0
  42. package/dist/components/compound/pipe-catalog/provider-filter.d.mts.map +1 -0
  43. package/dist/components/compound/pipe-catalog/provider-filter.mjs +29 -0
  44. package/dist/components/compound/pipe-catalog/provider-filter.mjs.map +1 -0
  45. package/dist/components/compound/pipe-catalog/root.d.mts +47 -0
  46. package/dist/components/compound/pipe-catalog/root.d.mts.map +1 -0
  47. package/dist/components/compound/pipe-catalog/root.mjs +85 -0
  48. package/dist/components/compound/pipe-catalog/root.mjs.map +1 -0
  49. package/dist/components/compound/pipe-catalog/search-filter.d.mts +24 -0
  50. package/dist/components/compound/pipe-catalog/search-filter.d.mts.map +1 -0
  51. package/dist/components/compound/pipe-catalog/search-filter.mjs +46 -0
  52. package/dist/components/compound/pipe-catalog/search-filter.mjs.map +1 -0
  53. package/dist/components/compound/pipe-catalog/tag-filter.d.mts +22 -0
  54. package/dist/components/compound/pipe-catalog/tag-filter.d.mts.map +1 -0
  55. package/dist/components/compound/pipe-catalog/tag-filter.mjs +22 -0
  56. package/dist/components/compound/pipe-catalog/tag-filter.mjs.map +1 -0
  57. package/dist/components/compound/pipe-form/content.d.mts +18 -0
  58. package/dist/components/compound/pipe-form/content.d.mts.map +1 -0
  59. package/dist/components/compound/pipe-form/content.mjs +45 -0
  60. package/dist/components/compound/pipe-form/content.mjs.map +1 -0
  61. package/dist/components/compound/pipe-form/field.d.mts +17 -0
  62. package/dist/components/compound/pipe-form/field.d.mts.map +1 -0
  63. package/dist/components/compound/pipe-form/field.mjs +21 -0
  64. package/dist/components/compound/pipe-form/field.mjs.map +1 -0
  65. package/dist/components/compound/pipe-form/footer.d.mts +14 -0
  66. package/dist/components/compound/pipe-form/footer.d.mts.map +1 -0
  67. package/dist/components/compound/pipe-form/footer.mjs +14 -0
  68. package/dist/components/compound/pipe-form/footer.mjs.map +1 -0
  69. package/dist/components/compound/pipe-form/group.d.mts +13 -0
  70. package/dist/components/compound/pipe-form/group.d.mts.map +1 -0
  71. package/dist/components/compound/pipe-form/group.mjs +17 -0
  72. package/dist/components/compound/pipe-form/group.mjs.map +1 -0
  73. package/dist/components/compound/pipe-form/header.d.mts +14 -0
  74. package/dist/components/compound/pipe-form/header.d.mts.map +1 -0
  75. package/dist/components/compound/pipe-form/header.mjs +14 -0
  76. package/dist/components/compound/pipe-form/header.mjs.map +1 -0
  77. package/dist/components/compound/pipe-form/index.d.mts +9 -0
  78. package/dist/components/compound/pipe-form/index.mjs +11 -0
  79. package/dist/components/compound/pipe-form/root.d.mts +56 -0
  80. package/dist/components/compound/pipe-form/root.d.mts.map +1 -0
  81. package/dist/components/compound/pipe-form/root.mjs +98 -0
  82. package/dist/components/compound/pipe-form/root.mjs.map +1 -0
  83. package/dist/components/compound/pipe-form/section.d.mts +13 -0
  84. package/dist/components/compound/pipe-form/section.d.mts.map +1 -0
  85. package/dist/components/compound/pipe-form/section.mjs +17 -0
  86. package/dist/components/compound/pipe-form/section.mjs.map +1 -0
  87. package/dist/components/compound/pipe-form/submit-button.d.mts +9 -0
  88. package/dist/components/compound/pipe-form/submit-button.d.mts.map +1 -0
  89. package/dist/components/compound/pipe-form/submit-button.mjs +17 -0
  90. package/dist/components/compound/pipe-form/submit-button.mjs.map +1 -0
  91. package/dist/components/compound/pipe-form/title.d.mts +16 -0
  92. package/dist/components/compound/pipe-form/title.d.mts.map +1 -0
  93. package/dist/components/compound/pipe-form/title.mjs +14 -0
  94. package/dist/components/compound/pipe-form/title.mjs.map +1 -0
  95. package/dist/components/compound/search-catalog/active-filters.d.mts +26 -0
  96. package/dist/components/compound/search-catalog/active-filters.d.mts.map +1 -0
  97. package/dist/components/compound/search-catalog/active-filters.mjs +46 -0
  98. package/dist/components/compound/search-catalog/active-filters.mjs.map +1 -0
  99. package/dist/components/compound/search-catalog/card.d.mts +30 -0
  100. package/dist/components/compound/search-catalog/card.d.mts.map +1 -0
  101. package/dist/components/compound/search-catalog/card.mjs +77 -0
  102. package/dist/components/compound/search-catalog/card.mjs.map +1 -0
  103. package/dist/components/compound/search-catalog/category-filter.d.mts +29 -0
  104. package/dist/components/compound/search-catalog/category-filter.d.mts.map +1 -0
  105. package/dist/components/compound/search-catalog/category-filter.mjs +51 -0
  106. package/dist/components/compound/search-catalog/category-filter.mjs.map +1 -0
  107. package/dist/components/compound/search-catalog/column-filter.d.mts +40 -0
  108. package/dist/components/compound/search-catalog/column-filter.d.mts.map +1 -0
  109. package/dist/components/compound/search-catalog/column-filter.mjs +63 -0
  110. package/dist/components/compound/search-catalog/column-filter.mjs.map +1 -0
  111. package/dist/components/compound/search-catalog/column-filters.d.mts +15 -0
  112. package/dist/components/compound/search-catalog/column-filters.d.mts.map +1 -0
  113. package/dist/components/compound/search-catalog/column-filters.mjs +16 -0
  114. package/dist/components/compound/search-catalog/column-filters.mjs.map +1 -0
  115. package/dist/components/compound/search-catalog/empty.d.mts +22 -0
  116. package/dist/components/compound/search-catalog/empty.d.mts.map +1 -0
  117. package/dist/components/compound/search-catalog/empty.mjs +31 -0
  118. package/dist/components/compound/search-catalog/empty.mjs.map +1 -0
  119. package/dist/components/compound/search-catalog/index.d.mts +12 -0
  120. package/dist/components/compound/search-catalog/index.mjs +14 -0
  121. package/dist/components/compound/search-catalog/list.d.mts +19 -0
  122. package/dist/components/compound/search-catalog/list.d.mts.map +1 -0
  123. package/dist/components/compound/search-catalog/list.mjs +29 -0
  124. package/dist/components/compound/search-catalog/list.mjs.map +1 -0
  125. package/dist/components/compound/search-catalog/output-field-filter.d.mts +22 -0
  126. package/dist/components/compound/search-catalog/output-field-filter.d.mts.map +1 -0
  127. package/dist/components/compound/search-catalog/output-field-filter.mjs +22 -0
  128. package/dist/components/compound/search-catalog/output-field-filter.mjs.map +1 -0
  129. package/dist/components/compound/search-catalog/provider-filter.d.mts +22 -0
  130. package/dist/components/compound/search-catalog/provider-filter.d.mts.map +1 -0
  131. package/dist/components/compound/search-catalog/provider-filter.mjs +29 -0
  132. package/dist/components/compound/search-catalog/provider-filter.mjs.map +1 -0
  133. package/dist/components/compound/search-catalog/root.d.mts +33 -0
  134. package/dist/components/compound/search-catalog/root.d.mts.map +1 -0
  135. package/dist/components/compound/search-catalog/root.mjs +74 -0
  136. package/dist/components/compound/search-catalog/root.mjs.map +1 -0
  137. package/dist/components/compound/search-catalog/search-filter.d.mts +24 -0
  138. package/dist/components/compound/search-catalog/search-filter.d.mts.map +1 -0
  139. package/dist/components/compound/search-catalog/search-filter.mjs +46 -0
  140. package/dist/components/compound/search-catalog/search-filter.mjs.map +1 -0
  141. package/dist/components/compound/search-catalog/tag-filter.d.mts +22 -0
  142. package/dist/components/compound/search-catalog/tag-filter.d.mts.map +1 -0
  143. package/dist/components/compound/search-catalog/tag-filter.mjs +22 -0
  144. package/dist/components/compound/search-catalog/tag-filter.mjs.map +1 -0
  145. package/dist/components/compound/search-form/content.d.mts +18 -0
  146. package/dist/components/compound/search-form/content.d.mts.map +1 -0
  147. package/dist/components/compound/search-form/content.mjs +45 -0
  148. package/dist/components/compound/search-form/content.mjs.map +1 -0
  149. package/dist/components/compound/search-form/field.d.mts +17 -0
  150. package/dist/components/compound/search-form/field.d.mts.map +1 -0
  151. package/dist/components/compound/search-form/field.mjs +21 -0
  152. package/dist/components/compound/search-form/field.mjs.map +1 -0
  153. package/dist/components/compound/search-form/footer.d.mts +14 -0
  154. package/dist/components/compound/search-form/footer.d.mts.map +1 -0
  155. package/dist/components/compound/search-form/footer.mjs +14 -0
  156. package/dist/components/compound/search-form/footer.mjs.map +1 -0
  157. package/dist/components/compound/search-form/group.d.mts +13 -0
  158. package/dist/components/compound/search-form/group.d.mts.map +1 -0
  159. package/dist/components/compound/search-form/group.mjs +17 -0
  160. package/dist/components/compound/search-form/group.mjs.map +1 -0
  161. package/dist/components/compound/search-form/header.d.mts +14 -0
  162. package/dist/components/compound/search-form/header.d.mts.map +1 -0
  163. package/dist/components/compound/search-form/header.mjs +14 -0
  164. package/dist/components/compound/search-form/header.mjs.map +1 -0
  165. package/dist/components/compound/search-form/index.d.mts +9 -0
  166. package/dist/components/compound/search-form/index.mjs +11 -0
  167. package/dist/components/compound/search-form/root.d.mts +45 -0
  168. package/dist/components/compound/search-form/root.d.mts.map +1 -0
  169. package/dist/components/compound/search-form/root.mjs +90 -0
  170. package/dist/components/compound/search-form/root.mjs.map +1 -0
  171. package/dist/components/compound/search-form/section.d.mts +13 -0
  172. package/dist/components/compound/search-form/section.d.mts.map +1 -0
  173. package/dist/components/compound/search-form/section.mjs +17 -0
  174. package/dist/components/compound/search-form/section.mjs.map +1 -0
  175. package/dist/components/compound/search-form/submit-button.d.mts +9 -0
  176. package/dist/components/compound/search-form/submit-button.d.mts.map +1 -0
  177. package/dist/components/compound/search-form/submit-button.mjs +17 -0
  178. package/dist/components/compound/search-form/submit-button.mjs.map +1 -0
  179. package/dist/components/compound/search-form/title.d.mts +16 -0
  180. package/dist/components/compound/search-form/title.d.mts.map +1 -0
  181. package/dist/components/compound/search-form/title.mjs +14 -0
  182. package/dist/components/compound/search-form/title.mjs.map +1 -0
  183. package/dist/components/compound/searches-catalog/active-filters.d.mts +26 -0
  184. package/dist/components/compound/searches-catalog/active-filters.d.mts.map +1 -0
  185. package/dist/components/compound/searches-catalog/active-filters.mjs +46 -0
  186. package/dist/components/compound/searches-catalog/active-filters.mjs.map +1 -0
  187. package/dist/components/compound/searches-catalog/card.d.mts +22 -0
  188. package/dist/components/compound/searches-catalog/card.d.mts.map +1 -0
  189. package/dist/components/compound/searches-catalog/card.mjs +70 -0
  190. package/dist/components/compound/searches-catalog/card.mjs.map +1 -0
  191. package/dist/components/compound/searches-catalog/category-filter.d.mts +29 -0
  192. package/dist/components/compound/searches-catalog/category-filter.d.mts.map +1 -0
  193. package/dist/components/compound/searches-catalog/category-filter.mjs +51 -0
  194. package/dist/components/compound/searches-catalog/category-filter.mjs.map +1 -0
  195. package/dist/components/compound/searches-catalog/column-filter.d.mts +31 -0
  196. package/dist/components/compound/searches-catalog/column-filter.d.mts.map +1 -0
  197. package/dist/components/compound/searches-catalog/column-filter.mjs +58 -0
  198. package/dist/components/compound/searches-catalog/column-filter.mjs.map +1 -0
  199. package/dist/components/compound/searches-catalog/column-filters.d.mts +15 -0
  200. package/dist/components/compound/searches-catalog/column-filters.d.mts.map +1 -0
  201. package/dist/components/compound/searches-catalog/column-filters.mjs +16 -0
  202. package/dist/components/compound/searches-catalog/column-filters.mjs.map +1 -0
  203. package/dist/components/compound/searches-catalog/empty.d.mts +22 -0
  204. package/dist/components/compound/searches-catalog/empty.d.mts.map +1 -0
  205. package/dist/components/compound/searches-catalog/empty.mjs +31 -0
  206. package/dist/components/compound/searches-catalog/empty.mjs.map +1 -0
  207. package/dist/components/compound/searches-catalog/index.d.mts +12 -0
  208. package/dist/components/compound/searches-catalog/index.mjs +14 -0
  209. package/dist/components/compound/searches-catalog/list.d.mts +19 -0
  210. package/dist/components/compound/searches-catalog/list.d.mts.map +1 -0
  211. package/dist/components/compound/searches-catalog/list.mjs +29 -0
  212. package/dist/components/compound/searches-catalog/list.mjs.map +1 -0
  213. package/dist/components/compound/searches-catalog/output-field-filter.d.mts +22 -0
  214. package/dist/components/compound/searches-catalog/output-field-filter.d.mts.map +1 -0
  215. package/dist/components/compound/searches-catalog/output-field-filter.mjs +22 -0
  216. package/dist/components/compound/searches-catalog/output-field-filter.mjs.map +1 -0
  217. package/dist/components/compound/searches-catalog/provider-filter.d.mts +22 -0
  218. package/dist/components/compound/searches-catalog/provider-filter.d.mts.map +1 -0
  219. package/dist/components/compound/searches-catalog/provider-filter.mjs +29 -0
  220. package/dist/components/compound/searches-catalog/provider-filter.mjs.map +1 -0
  221. package/dist/components/compound/searches-catalog/root.d.mts +33 -0
  222. package/dist/components/compound/searches-catalog/root.d.mts.map +1 -0
  223. package/dist/components/compound/searches-catalog/root.mjs +74 -0
  224. package/dist/components/compound/searches-catalog/root.mjs.map +1 -0
  225. package/dist/components/compound/searches-catalog/search-filter.d.mts +24 -0
  226. package/dist/components/compound/searches-catalog/search-filter.d.mts.map +1 -0
  227. package/dist/components/compound/searches-catalog/search-filter.mjs +46 -0
  228. package/dist/components/compound/searches-catalog/search-filter.mjs.map +1 -0
  229. package/dist/components/compound/searches-catalog/tag-filter.d.mts +22 -0
  230. package/dist/components/compound/searches-catalog/tag-filter.d.mts.map +1 -0
  231. package/dist/components/compound/searches-catalog/tag-filter.mjs +22 -0
  232. package/dist/components/compound/searches-catalog/tag-filter.mjs.map +1 -0
  233. package/dist/components/defaults/adapters/async-include-exclude-select-input.mjs +32 -0
  234. package/dist/components/defaults/adapters/async-include-exclude-select-input.mjs.map +1 -0
  235. package/dist/components/defaults/adapters/async-multi-select-input.mjs +26 -0
  236. package/dist/components/defaults/adapters/async-multi-select-input.mjs.map +1 -0
  237. package/dist/components/defaults/adapters/boolean-input.mjs +82 -0
  238. package/dist/components/defaults/adapters/boolean-input.mjs.map +1 -0
  239. package/dist/components/defaults/adapters/connector-input.mjs +94 -0
  240. package/dist/components/defaults/adapters/connector-input.mjs.map +1 -0
  241. package/dist/components/defaults/adapters/context-select-input.mjs +74 -0
  242. package/dist/components/defaults/adapters/context-select-input.mjs.map +1 -0
  243. package/dist/components/defaults/adapters/cursor-pagination-input.mjs +29 -0
  244. package/dist/components/defaults/adapters/cursor-pagination-input.mjs.map +1 -0
  245. package/dist/components/defaults/adapters/date-range-input.mjs +53 -0
  246. package/dist/components/defaults/adapters/date-range-input.mjs.map +1 -0
  247. package/dist/components/defaults/adapters/exact-range-input.mjs +75 -0
  248. package/dist/components/defaults/adapters/exact-range-input.mjs.map +1 -0
  249. package/dist/components/defaults/adapters/fields-select-input.mjs +25 -0
  250. package/dist/components/defaults/adapters/fields-select-input.mjs.map +1 -0
  251. package/dist/components/defaults/adapters/include-exclude-input.mjs +33 -0
  252. package/dist/components/defaults/adapters/include-exclude-input.mjs.map +1 -0
  253. package/dist/components/defaults/adapters/include-exclude-select-input.mjs +36 -0
  254. package/dist/components/defaults/adapters/include-exclude-select-input.mjs.map +1 -0
  255. package/dist/components/defaults/adapters/index.d.mts +11 -0
  256. package/dist/components/defaults/adapters/index.d.mts.map +1 -0
  257. package/dist/components/defaults/adapters/index.mjs +73 -0
  258. package/dist/components/defaults/adapters/index.mjs.map +1 -0
  259. package/dist/components/defaults/adapters/int-input.mjs +16 -0
  260. package/dist/components/defaults/adapters/int-input.mjs.map +1 -0
  261. package/dist/components/defaults/adapters/json-extraction-input.mjs +333 -0
  262. package/dist/components/defaults/adapters/json-extraction-input.mjs.map +1 -0
  263. package/dist/components/defaults/adapters/json-schema-input.mjs +30 -0
  264. package/dist/components/defaults/adapters/json-schema-input.mjs.map +1 -0
  265. package/dist/components/defaults/adapters/key-value-list-input.mjs +100 -0
  266. package/dist/components/defaults/adapters/key-value-list-input.mjs.map +1 -0
  267. package/dist/components/defaults/adapters/min-max-int-input.mjs +65 -0
  268. package/dist/components/defaults/adapters/min-max-int-input.mjs.map +1 -0
  269. package/dist/components/defaults/adapters/multi-create-input.mjs +32 -0
  270. package/dist/components/defaults/adapters/multi-create-input.mjs.map +1 -0
  271. package/dist/components/defaults/adapters/multi-select-input.mjs +26 -0
  272. package/dist/components/defaults/adapters/multi-select-input.mjs.map +1 -0
  273. package/dist/components/defaults/adapters/number-input.mjs +15 -0
  274. package/dist/components/defaults/adapters/number-input.mjs.map +1 -0
  275. package/dist/components/defaults/adapters/ordered-multi-create-input.mjs +43 -0
  276. package/dist/components/defaults/adapters/ordered-multi-create-input.mjs.map +1 -0
  277. package/dist/components/defaults/adapters/output-field-input.mjs +37 -0
  278. package/dist/components/defaults/adapters/output-field-input.mjs.map +1 -0
  279. package/dist/components/defaults/adapters/pipes-trigger-input.mjs +381 -0
  280. package/dist/components/defaults/adapters/pipes-trigger-input.mjs.map +1 -0
  281. package/dist/components/defaults/adapters/prompt-input.mjs +208 -0
  282. package/dist/components/defaults/adapters/prompt-input.mjs.map +1 -0
  283. package/dist/components/defaults/adapters/providers-input.mjs +23 -0
  284. package/dist/components/defaults/adapters/providers-input.mjs.map +1 -0
  285. package/dist/components/defaults/adapters/range-input.mjs +61 -0
  286. package/dist/components/defaults/adapters/range-input.mjs.map +1 -0
  287. package/dist/components/defaults/adapters/select-input.mjs +54 -0
  288. package/dist/components/defaults/adapters/select-input.mjs.map +1 -0
  289. package/dist/components/defaults/adapters/tagged-text-input.mjs +154 -0
  290. package/dist/components/defaults/adapters/tagged-text-input.mjs.map +1 -0
  291. package/dist/components/defaults/adapters/template-input.mjs +34 -0
  292. package/dist/components/defaults/adapters/template-input.mjs.map +1 -0
  293. package/dist/components/defaults/adapters/text-input.mjs +18 -0
  294. package/dist/components/defaults/adapters/text-input.mjs.map +1 -0
  295. package/dist/components/defaults/adapters/textarea-input.mjs +17 -0
  296. package/dist/components/defaults/adapters/textarea-input.mjs.map +1 -0
  297. package/dist/components/defaults/catalog/active-filter-pill.mjs +30 -0
  298. package/dist/components/defaults/catalog/active-filter-pill.mjs.map +1 -0
  299. package/dist/components/defaults/catalog/card-derived.d.mts +98 -0
  300. package/dist/components/defaults/catalog/card-derived.d.mts.map +1 -0
  301. package/dist/components/defaults/catalog/card-derived.mjs +172 -0
  302. package/dist/components/defaults/catalog/card-derived.mjs.map +1 -0
  303. package/dist/components/defaults/catalog/card-primitives.d.mts +81 -0
  304. package/dist/components/defaults/catalog/card-primitives.d.mts.map +1 -0
  305. package/dist/components/defaults/catalog/card-primitives.mjs +108 -0
  306. package/dist/components/defaults/catalog/card-primitives.mjs.map +1 -0
  307. package/dist/components/defaults/catalog/category-filter.d.mts +13 -0
  308. package/dist/components/defaults/catalog/category-filter.d.mts.map +1 -0
  309. package/dist/components/defaults/catalog/category-filter.mjs +28 -0
  310. package/dist/components/defaults/catalog/category-filter.mjs.map +1 -0
  311. package/dist/components/defaults/catalog/category-section.d.mts +39 -0
  312. package/dist/components/defaults/catalog/category-section.d.mts.map +1 -0
  313. package/dist/components/defaults/catalog/category-section.mjs +59 -0
  314. package/dist/components/defaults/catalog/category-section.mjs.map +1 -0
  315. package/dist/components/defaults/catalog/empty-state.mjs +20 -0
  316. package/dist/components/defaults/catalog/empty-state.mjs.map +1 -0
  317. package/dist/components/defaults/catalog/filter-select.d.mts +13 -0
  318. package/dist/components/defaults/catalog/filter-select.d.mts.map +1 -0
  319. package/dist/components/defaults/catalog/filter-select.mjs +45 -0
  320. package/dist/components/defaults/catalog/filter-select.mjs.map +1 -0
  321. package/dist/components/defaults/catalog/layout.mjs +53 -0
  322. package/dist/components/defaults/catalog/layout.mjs.map +1 -0
  323. package/dist/components/defaults/catalog/provider-avatars.d.mts +37 -0
  324. package/dist/components/defaults/catalog/provider-avatars.d.mts.map +1 -0
  325. package/dist/components/defaults/catalog/provider-avatars.mjs +98 -0
  326. package/dist/components/defaults/catalog/provider-avatars.mjs.map +1 -0
  327. package/dist/components/defaults/field-section-enumeration.mjs +32 -0
  328. package/dist/components/defaults/field-section-enumeration.mjs.map +1 -0
  329. package/dist/components/defaults/layout/field-wrapper.d.mts +13 -0
  330. package/dist/components/defaults/layout/field-wrapper.d.mts.map +1 -0
  331. package/dist/components/defaults/layout/field-wrapper.mjs +67 -0
  332. package/dist/components/defaults/layout/field-wrapper.mjs.map +1 -0
  333. package/dist/components/defaults/layout/form.mjs +21 -0
  334. package/dist/components/defaults/layout/form.mjs.map +1 -0
  335. package/dist/components/defaults/layout/group.d.mts +16 -0
  336. package/dist/components/defaults/layout/group.d.mts.map +1 -0
  337. package/dist/components/defaults/layout/group.mjs +87 -0
  338. package/dist/components/defaults/layout/group.mjs.map +1 -0
  339. package/dist/components/defaults/layout/section.d.mts +14 -0
  340. package/dist/components/defaults/layout/section.d.mts.map +1 -0
  341. package/dist/components/defaults/layout/section.mjs +39 -0
  342. package/dist/components/defaults/layout/section.mjs.map +1 -0
  343. package/dist/components/defaults/layout/submit-button.d.mts +9 -0
  344. package/dist/components/defaults/layout/submit-button.d.mts.map +1 -0
  345. package/dist/components/defaults/layout/submit-button.mjs +23 -0
  346. package/dist/components/defaults/layout/submit-button.mjs.map +1 -0
  347. package/dist/components/defaults/toggle-advanced-button.mjs +29 -0
  348. package/dist/components/defaults/toggle-advanced-button.mjs.map +1 -0
  349. package/dist/components/field-renderer.d.mts +14 -0
  350. package/dist/components/field-renderer.d.mts.map +1 -0
  351. package/dist/components/field-renderer.mjs +21 -0
  352. package/dist/components/field-renderer.mjs.map +1 -0
  353. package/dist/components/hover-info.mjs +30 -0
  354. package/dist/components/hover-info.mjs.map +1 -0
  355. package/dist/components/internal/LiquidEditor/ChipEditPopover.mjs +319 -0
  356. package/dist/components/internal/LiquidEditor/ChipEditPopover.mjs.map +1 -0
  357. package/dist/components/internal/LiquidEditor/LiquidEditor.mjs +208 -0
  358. package/dist/components/internal/LiquidEditor/LiquidEditor.mjs.map +1 -0
  359. package/dist/components/internal/LiquidEditor/UnifiedReferencePicker.mjs +240 -0
  360. package/dist/components/internal/LiquidEditor/UnifiedReferencePicker.mjs.map +1 -0
  361. package/dist/components/internal/combobox/include-exclude-combobox.mjs +368 -0
  362. package/dist/components/internal/combobox/include-exclude-combobox.mjs.map +1 -0
  363. package/dist/components/internal/combobox/suggest-combobox.mjs +294 -0
  364. package/dist/components/internal/combobox/suggest-combobox.mjs.map +1 -0
  365. package/dist/components/internal/field-legend.mjs +37 -0
  366. package/dist/components/internal/field-legend.mjs.map +1 -0
  367. package/dist/components/internal/form-level-errors.mjs +71 -0
  368. package/dist/components/internal/form-level-errors.mjs.map +1 -0
  369. package/dist/components/internal/icons.mjs +131 -0
  370. package/dist/components/internal/icons.mjs.map +1 -0
  371. package/dist/components/internal/multi-select-popover-trigger.mjs +26 -0
  372. package/dist/components/internal/multi-select-popover-trigger.mjs.map +1 -0
  373. package/dist/components/internal/schema-editor/SchemaEditor.mjs +468 -0
  374. package/dist/components/internal/schema-editor/SchemaEditor.mjs.map +1 -0
  375. package/dist/components/internal/schema-editor/generate-schema-rows.mjs +374 -0
  376. package/dist/components/internal/schema-editor/generate-schema-rows.mjs.map +1 -0
  377. package/dist/components/internal/schema-editor/schema-editor-context.mjs +32 -0
  378. package/dist/components/internal/schema-editor/schema-editor-context.mjs.map +1 -0
  379. package/dist/components/internal/schema-editor/schema-utils.mjs +249 -0
  380. package/dist/components/internal/schema-editor/schema-utils.mjs.map +1 -0
  381. package/dist/components/internal/suggestion-menu/suggestion-menu-utils.mjs +12 -0
  382. package/dist/components/internal/suggestion-menu/suggestion-menu-utils.mjs.map +1 -0
  383. package/dist/components/internal/suggestion-menu/suggestion-menu.mjs +151 -0
  384. package/dist/components/internal/suggestion-menu/suggestion-menu.mjs.map +1 -0
  385. package/dist/components/internal/tag-chip-decoration.mjs +180 -0
  386. package/dist/components/internal/tag-chip-decoration.mjs.map +1 -0
  387. package/dist/components/rich-text.mjs +42 -0
  388. package/dist/components/rich-text.mjs.map +1 -0
  389. package/dist/components/ui/badge.mjs +32 -0
  390. package/dist/components/ui/badge.mjs.map +1 -0
  391. package/dist/components/ui/button.d.mts +19 -0
  392. package/dist/components/ui/button.d.mts.map +1 -0
  393. package/dist/components/ui/button.mjs +47 -0
  394. package/dist/components/ui/button.mjs.map +1 -0
  395. package/dist/components/ui/combobox.mjs +103 -0
  396. package/dist/components/ui/combobox.mjs.map +1 -0
  397. package/dist/components/ui/input-group.mjs +30 -0
  398. package/dist/components/ui/input-group.mjs.map +1 -0
  399. package/dist/components/ui/input.mjs +17 -0
  400. package/dist/components/ui/input.mjs.map +1 -0
  401. package/dist/components/ui/label.mjs +17 -0
  402. package/dist/components/ui/label.mjs.map +1 -0
  403. package/dist/components/ui/popover.mjs +40 -0
  404. package/dist/components/ui/popover.mjs.map +1 -0
  405. package/dist/components/ui/select.mjs +92 -0
  406. package/dist/components/ui/select.mjs.map +1 -0
  407. package/dist/components/ui/switch.mjs +21 -0
  408. package/dist/components/ui/switch.mjs.map +1 -0
  409. package/dist/components/ui/table.mjs +56 -0
  410. package/dist/components/ui/table.mjs.map +1 -0
  411. package/dist/components/ui/textarea.mjs +15 -0
  412. package/dist/components/ui/textarea.mjs.map +1 -0
  413. package/dist/components/ui/tooltip.mjs +48 -0
  414. package/dist/components/ui/tooltip.mjs.map +1 -0
  415. package/dist/context/catalog-card-context.mjs +31 -0
  416. package/dist/context/catalog-card-context.mjs.map +1 -0
  417. package/dist/context/catalog-config-context.d.mts +43 -0
  418. package/dist/context/catalog-config-context.d.mts.map +1 -0
  419. package/dist/context/catalog-config-context.mjs +48 -0
  420. package/dist/context/catalog-config-context.mjs.map +1 -0
  421. package/dist/context/form-context.mjs +11 -0
  422. package/dist/context/form-context.mjs.map +1 -0
  423. package/dist/context/form-customization-context.d.mts +71 -0
  424. package/dist/context/form-customization-context.d.mts.map +1 -0
  425. package/dist/context/form-customization-context.mjs +114 -0
  426. package/dist/context/form-customization-context.mjs.map +1 -0
  427. package/dist/context/form-provider.d.mts +41 -0
  428. package/dist/context/form-provider.d.mts.map +1 -0
  429. package/dist/context/form-provider.mjs +53 -0
  430. package/dist/context/form-provider.mjs.map +1 -0
  431. package/dist/context/pipe-catalog-card-context.d.mts +17 -0
  432. package/dist/context/pipe-catalog-card-context.d.mts.map +1 -0
  433. package/dist/context/pipe-catalog-card-context.mjs +13 -0
  434. package/dist/context/pipe-catalog-card-context.mjs.map +1 -0
  435. package/dist/context/pipe-catalog-context.d.mts +26 -0
  436. package/dist/context/pipe-catalog-context.d.mts.map +1 -0
  437. package/dist/context/pipe-catalog-context.mjs +13 -0
  438. package/dist/context/pipe-catalog-context.mjs.map +1 -0
  439. package/dist/context/pipe-form-context.d.mts +25 -0
  440. package/dist/context/pipe-form-context.d.mts.map +1 -0
  441. package/dist/context/pipe-form-context.mjs +13 -0
  442. package/dist/context/pipe-form-context.mjs.map +1 -0
  443. package/dist/context/portal-container-context.d.mts +5 -0
  444. package/dist/context/portal-container-context.d.mts.map +1 -0
  445. package/dist/context/portal-container-context.mjs +15 -0
  446. package/dist/context/portal-container-context.mjs.map +1 -0
  447. package/dist/context/search-catalog-card-context.d.mts +16 -0
  448. package/dist/context/search-catalog-card-context.d.mts.map +1 -0
  449. package/dist/context/search-catalog-card-context.mjs +13 -0
  450. package/dist/context/search-catalog-card-context.mjs.map +1 -0
  451. package/dist/context/search-catalog-context.d.mts +20 -0
  452. package/dist/context/search-catalog-context.d.mts.map +1 -0
  453. package/dist/context/search-catalog-context.mjs +13 -0
  454. package/dist/context/search-catalog-context.mjs.map +1 -0
  455. package/dist/context/search-form-context.d.mts +25 -0
  456. package/dist/context/search-form-context.d.mts.map +1 -0
  457. package/dist/context/search-form-context.mjs +13 -0
  458. package/dist/context/search-form-context.mjs.map +1 -0
  459. package/dist/context/searches-catalog-card-context.d.mts +16 -0
  460. package/dist/context/searches-catalog-card-context.d.mts.map +1 -0
  461. package/dist/context/searches-catalog-card-context.mjs +13 -0
  462. package/dist/context/searches-catalog-card-context.mjs.map +1 -0
  463. package/dist/context/searches-catalog-context.d.mts +20 -0
  464. package/dist/context/searches-catalog-context.d.mts.map +1 -0
  465. package/dist/context/searches-catalog-context.mjs +13 -0
  466. package/dist/context/searches-catalog-context.mjs.map +1 -0
  467. package/dist/hooks/use-debounce.mjs +28 -0
  468. package/dist/hooks/use-debounce.mjs.map +1 -0
  469. package/dist/hooks/use-debounced-fn.mjs +47 -0
  470. package/dist/hooks/use-debounced-fn.mjs.map +1 -0
  471. package/dist/hooks/use-disclosure.mjs +35 -0
  472. package/dist/hooks/use-disclosure.mjs.map +1 -0
  473. package/dist/hooks/use-field-error.d.mts +11 -0
  474. package/dist/hooks/use-field-error.d.mts.map +1 -0
  475. package/dist/hooks/use-field-error.mjs +23 -0
  476. package/dist/hooks/use-field-error.mjs.map +1 -0
  477. package/dist/hooks/use-floating-element.mjs +45 -0
  478. package/dist/hooks/use-floating-element.mjs.map +1 -0
  479. package/dist/hooks/use-form-core.d.mts +16 -0
  480. package/dist/hooks/use-form-core.d.mts.map +1 -0
  481. package/dist/hooks/use-form-core.mjs +241 -0
  482. package/dist/hooks/use-form-core.mjs.map +1 -0
  483. package/dist/hooks/use-jsonata-preview.mjs +38 -0
  484. package/dist/hooks/use-jsonata-preview.mjs.map +1 -0
  485. package/dist/hooks/use-menu-navigation.mjs +86 -0
  486. package/dist/hooks/use-menu-navigation.mjs.map +1 -0
  487. package/dist/hooks/use-pipe-catalog-table.d.mts +47 -0
  488. package/dist/hooks/use-pipe-catalog-table.d.mts.map +1 -0
  489. package/dist/hooks/use-pipe-catalog-table.mjs +170 -0
  490. package/dist/hooks/use-pipe-catalog-table.mjs.map +1 -0
  491. package/dist/hooks/use-pipe-form.d.mts +31 -0
  492. package/dist/hooks/use-pipe-form.d.mts.map +1 -0
  493. package/dist/hooks/use-pipe-form.mjs +65 -0
  494. package/dist/hooks/use-pipe-form.mjs.map +1 -0
  495. package/dist/hooks/use-search-catalog-table.d.mts +40 -0
  496. package/dist/hooks/use-search-catalog-table.d.mts.map +1 -0
  497. package/dist/hooks/use-search-catalog-table.mjs +161 -0
  498. package/dist/hooks/use-search-catalog-table.mjs.map +1 -0
  499. package/dist/hooks/use-search-form.d.mts +17 -0
  500. package/dist/hooks/use-search-form.d.mts.map +1 -0
  501. package/dist/hooks/use-search-form.mjs +58 -0
  502. package/dist/hooks/use-search-form.mjs.map +1 -0
  503. package/dist/hooks/use-searches-catalog-table.d.mts +40 -0
  504. package/dist/hooks/use-searches-catalog-table.d.mts.map +1 -0
  505. package/dist/hooks/use-searches-catalog-table.mjs +161 -0
  506. package/dist/hooks/use-searches-catalog-table.mjs.map +1 -0
  507. package/dist/index.d.mts +96 -0
  508. package/dist/index.mjs +98 -0
  509. package/dist/lib/utils.mjs +11 -0
  510. package/dist/lib/utils.mjs.map +1 -0
  511. package/dist/styles/pipe0-form.css +3785 -0
  512. package/dist/types/adapters.d.mts +107 -0
  513. package/dist/types/adapters.d.mts.map +1 -0
  514. package/dist/types/catalog-adapters.d.mts +122 -0
  515. package/dist/types/catalog-adapters.d.mts.map +1 -0
  516. package/dist/types/field-handle.d.mts +3 -0
  517. package/dist/types/field-props.d.mts +285 -0
  518. package/dist/types/field-props.d.mts.map +1 -0
  519. package/dist/types/form-customization.d.mts +25 -0
  520. package/dist/types/form-customization.d.mts.map +1 -0
  521. package/dist/types/form-handle.d.mts +23 -0
  522. package/dist/types/form-handle.d.mts.map +1 -0
  523. package/dist/utils/build-section-handlers.mjs +419 -0
  524. package/dist/utils/build-section-handlers.mjs.map +1 -0
  525. package/dist/utils/catalog-helpers.d.mts +12 -0
  526. package/dist/utils/catalog-helpers.d.mts.map +1 -0
  527. package/dist/utils/catalog-helpers.mjs +35 -0
  528. package/dist/utils/catalog-helpers.mjs.map +1 -0
  529. package/dist/utils/generate-random-string.mjs +11 -0
  530. package/dist/utils/generate-random-string.mjs.map +1 -0
  531. package/dist/utils/merge-form-stores.mjs +14 -0
  532. package/dist/utils/merge-form-stores.mjs.map +1 -0
  533. package/dist/utils/object-path.mjs +72 -0
  534. package/dist/utils/object-path.mjs.map +1 -0
  535. package/dist/utils/render-slot.d.mts +44 -0
  536. package/dist/utils/render-slot.d.mts.map +1 -0
  537. package/dist/utils/render-slot.mjs +30 -0
  538. package/dist/utils/render-slot.mjs.map +1 -0
  539. package/dist/widgets/avatar-group.d.mts +36 -0
  540. package/dist/widgets/avatar-group.d.mts.map +1 -0
  541. package/dist/widgets/avatar-group.mjs +114 -0
  542. package/dist/widgets/avatar-group.mjs.map +1 -0
  543. package/dist/widgets/emoji-glyph.d.mts +11 -0
  544. package/dist/widgets/emoji-glyph.d.mts.map +1 -0
  545. package/dist/widgets/emoji-glyph.mjs +13 -0
  546. package/dist/widgets/emoji-glyph.mjs.map +1 -0
  547. package/dist/widgets/field-type-badge.d.mts +13 -0
  548. package/dist/widgets/field-type-badge.d.mts.map +1 -0
  549. package/dist/widgets/field-type-badge.mjs +30 -0
  550. package/dist/widgets/field-type-badge.mjs.map +1 -0
  551. package/dist/widgets/icon-glyph.d.mts +16 -0
  552. package/dist/widgets/icon-glyph.d.mts.map +1 -0
  553. package/dist/widgets/icon-glyph.mjs +59 -0
  554. package/dist/widgets/icon-glyph.mjs.map +1 -0
  555. package/dist/widgets/index.d.mts +9 -0
  556. package/dist/widgets/index.mjs +11 -0
  557. package/dist/widgets/logo-url.d.mts +17 -0
  558. package/dist/widgets/logo-url.d.mts.map +1 -0
  559. package/dist/widgets/logo-url.mjs +17 -0
  560. package/dist/widgets/logo-url.mjs.map +1 -0
  561. package/dist/widgets/pricing-badge.d.mts +11 -0
  562. package/dist/widgets/pricing-badge.d.mts.map +1 -0
  563. package/dist/widgets/pricing-badge.mjs +13 -0
  564. package/dist/widgets/pricing-badge.mjs.map +1 -0
  565. package/dist/widgets/provider-logo.d.mts +16 -0
  566. package/dist/widgets/provider-logo.d.mts.map +1 -0
  567. package/dist/widgets/provider-logo.mjs +20 -0
  568. package/dist/widgets/provider-logo.mjs.map +1 -0
  569. package/dist/widgets/widget-strip.d.mts +16 -0
  570. package/dist/widgets/widget-strip.d.mts.map +1 -0
  571. package/dist/widgets/widget-strip.mjs +42 -0
  572. package/dist/widgets/widget-strip.mjs.map +1 -0
  573. package/dist/widgets/widget-view.d.mts +14 -0
  574. package/dist/widgets/widget-view.d.mts.map +1 -0
  575. package/dist/widgets/widget-view.mjs +36 -0
  576. package/dist/widgets/widget-view.mjs.map +1 -0
  577. package/package.json +82 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,119 @@
1
+ # @pipe0/elements-react
2
+
3
+ ## 0.0.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Update packages
8
+ - Updated dependencies
9
+ - @pipe0/base@0.0.2
10
+
11
+ ## 0.0.17
12
+
13
+ ### Patch Changes
14
+
15
+ - Fix type issue
16
+ - Updated dependencies
17
+ - @pipe0/elements@0.0.14
18
+
19
+ ## 0.0.16
20
+
21
+ ### Patch Changes
22
+
23
+ - Update autocomplete dep
24
+ - Updated dependencies
25
+ - @pipe0/elements@0.0.13
26
+
27
+ ## 0.0.15
28
+
29
+ ### Patch Changes
30
+
31
+ - Update form-ui
32
+ - Updated dependencies
33
+ - @pipe0/elements@0.0.12
34
+
35
+ ## 0.0.14
36
+
37
+ ### Patch Changes
38
+
39
+ - update autocomplete
40
+ - Updated dependencies
41
+ - @pipe0/elements@0.0.11
42
+
43
+ ## 0.0.13
44
+
45
+ ### Patch Changes
46
+
47
+ - Update autocomplete
48
+ - Updated dependencies
49
+ - @pipe0/elements@0.0.10
50
+
51
+ ## 0.0.12
52
+
53
+ ### Patch Changes
54
+
55
+ - Update autocomplete config
56
+ - Updated dependencies
57
+ - @pipe0/elements@0.0.9
58
+
59
+ ## 0.0.11
60
+
61
+ ### Patch Changes
62
+
63
+ - @pipe0/elements@0.0.8
64
+
65
+ ## 0.0.10
66
+
67
+ ### Patch Changes
68
+
69
+ - Fix style sheet
70
+
71
+ ## 0.0.9
72
+
73
+ ### Patch Changes
74
+
75
+ - Fix style bleed
76
+
77
+ ## 0.0.8
78
+
79
+ ### Patch Changes
80
+
81
+ - Removing Geist font from bundle
82
+
83
+ ## 0.0.7
84
+
85
+ ### Patch Changes
86
+
87
+ - Externalize dependencies correctly
88
+
89
+ ## 0.0.6
90
+
91
+ ### Patch Changes
92
+
93
+ - Clean build
94
+ - Updated dependencies
95
+ - @pipe0/elements@0.0.7
96
+
97
+ ## 0.0.5
98
+
99
+ ### Patch Changes
100
+
101
+ - Fix import config
102
+
103
+ ## 0.0.4
104
+
105
+ ### Patch Changes
106
+
107
+ - Fix type export
108
+
109
+ ## 0.0.3
110
+
111
+ ### Patch Changes
112
+
113
+ - Fix type export
114
+
115
+ ## 0.0.2
116
+
117
+ ### Patch Changes
118
+
119
+ - Initial publish
package/README.md ADDED
@@ -0,0 +1,172 @@
1
+ # @pipe0/react
2
+
3
+ Prebuilt React components for rendering [pipe0](https://pipe0.com) pipe and search
4
+ configuration forms. Drop a `pipeId` or `searchId` in and get a fully-typed,
5
+ validated form with the right inputs, autocomplete, and connection pickers.
6
+
7
+ ## Install
8
+
9
+ ```bash
10
+ npm install @pipe0/react
11
+ ```
12
+
13
+ Import the stylesheet once in your app entry:
14
+
15
+ ```ts
16
+ import "@pipe0/react/styles";
17
+ ```
18
+
19
+ ## PipeForm
20
+
21
+ Renders a form for a specific pipe. The simplest usage is fully zero-config:
22
+
23
+ ```tsx
24
+ import { PipeForm } from "@pipe0/react";
25
+
26
+ <PipeForm
27
+ pipeId="people:name:split@1"
28
+ publicKey={PIPE0_PUBLIC_KEY}
29
+ onSubmit={(payload) => {
30
+ // payload is a fully-typed PipePayload for the given pipeId
31
+ console.log(payload);
32
+ }}
33
+ />;
34
+ ```
35
+
36
+ For layout control, use the compound API and build the form yourself:
37
+
38
+ ```tsx
39
+ import {
40
+ PipeForm,
41
+ PipeFormHeader,
42
+ PipeFormTitle,
43
+ PipeFormContent,
44
+ PipeFormSubmitButton,
45
+ usePipeForm,
46
+ } from "@pipe0/react";
47
+
48
+ function MyForm() {
49
+ const ctx = usePipeForm({
50
+ pipeId: "people:name:split@1",
51
+ publicKey: PIPE0_PUBLIC_KEY,
52
+ resolvers,
53
+ });
54
+
55
+ return (
56
+ <PipeForm context={ctx} onSubmit={(payload) => submit(payload)}>
57
+ <PipeFormHeader>
58
+ <PipeFormTitle>Split name</PipeFormTitle>
59
+ </PipeFormHeader>
60
+ <PipeFormContent />
61
+ <PipeFormSubmitButton>Run</PipeFormSubmitButton>
62
+ </PipeForm>
63
+ );
64
+ }
65
+ ```
66
+
67
+ ## SearchForm
68
+
69
+ Same shape as `PipeForm`, but for searches (e.g. `people:profiles:crustdata@1`):
70
+
71
+ ```tsx
72
+ import { SearchForm } from "@pipe0/react";
73
+
74
+ <SearchForm
75
+ searchId="people:profiles:crustdata@1"
76
+ publicKey={PIPE0_PUBLIC_KEY}
77
+ resolvers={resolvers}
78
+ onSubmit={(payload) => runSearch(payload)}
79
+ />;
80
+ ```
81
+
82
+ The compound version uses `useSearchForm` plus `SearchFormHeader`,
83
+ `SearchFormContent`, `SearchFormSubmitButton`, etc.
84
+
85
+ ## Resolvers
86
+
87
+ Some fields can't be statically rendered — they depend on the user's own
88
+ data. For example: a Resend "audience" dropdown needs to list the audiences
89
+ attached to that user's Resend connection, and a Crustdata "locations"
90
+ filter needs autocomplete suggestions. These are handled by `resolvers`:
91
+
92
+ ```ts
93
+ import type { FormResolvers } from "@pipe0/base";
94
+
95
+ const resolvers: FormResolvers = {
96
+ // Called once on mount. Return the user's connected providers.
97
+ // If omitted, connector-dependent fields are hidden.
98
+ getConnections: async () => [{ public_id: "resend_abc", provider: "resend" }],
99
+
100
+ // Called per dynamic field when its prerequisites are satisfied,
101
+ // when a dependency changes, or when the user types in a dropdown.
102
+ // `args.payload` contains the full form values — including `pipe_id`
103
+ // (from PipeForm) or `search_id` (from SearchForm), and the selected
104
+ // connector. Your backend can derive everything it needs from payload.
105
+ getFieldContext: async (args) => {
106
+ const path =
107
+ "pipe_id" in args.payload
108
+ ? "/api/pipe0/pipes/field-context"
109
+ : "/api/pipe0/search/field-context";
110
+
111
+ const res = await fetch(path, {
112
+ method: "POST",
113
+ headers: { "content-type": "application/json" },
114
+ body: JSON.stringify({
115
+ field_path: args.fieldPath,
116
+ query: args.query,
117
+ payload: args.payload,
118
+ }),
119
+ });
120
+ return await res.json(); // FormStore — merged into form store by the SDK
121
+ },
122
+ };
123
+ ```
124
+
125
+ `getFieldContext` is used by both pipe and search forms. Discriminate on
126
+ `"pipe_id" in args.payload` vs `"search_id" in args.payload` to decide which
127
+ backend endpoint to call.
128
+
129
+ ### Why you proxy instead of calling pipe0 directly
130
+
131
+ `publicKey` identifies your pipe0 project in the browser but **does not
132
+ authorize resolver requests**. Autocomplete and connection lookups hit
133
+ pipe0's private API (`POST /v1/pipes/field-context` and `/v1/search/field-context`) which requires your
134
+ pipe0 API key, and they need to know _which end user_ is asking (so the
135
+ right connections are returned). Shipping the API key to the browser
136
+ would leak it, and pipe0 has no way to know who your user is.
137
+
138
+ So resolvers should call **your** backend, not pipe0's. Your backend:
139
+
140
+ 1. Authenticates the incoming request using whatever auth your app uses
141
+ (session cookie, JWT, etc.).
142
+ 2. Looks up that user's pipe0 connections / permissions.
143
+ 3. Forwards the request to pipe0 using the server-side API key.
144
+
145
+ Minimal proxy example (Next.js route handler):
146
+
147
+ ```ts
148
+ // app/api/pipe0/autocomplete/route.ts
149
+ import { Pipe0 } from "@pipe0/client";
150
+
151
+ const pipe0 = new Pipe0({ apiKey: process.env.PIPE0_API_KEY! });
152
+
153
+ export async function POST(req: Request) {
154
+ const user = await requireUser(req); // your auth
155
+ const body = await req.json();
156
+
157
+ // Optionally scope connectionId to this user's connections
158
+ const suggestions = await pipe0.pipes.autocomplete({
159
+ pipe_id: body.pipeId,
160
+ field_path: body.fieldPath,
161
+ query: body.query,
162
+ connection_id: body.connectionId,
163
+ payload: body.payload,
164
+ });
165
+
166
+ return Response.json({ suggestions });
167
+ }
168
+ ```
169
+
170
+ `getConnections` follows the same pattern: your backend owns the mapping
171
+ from "logged-in user" → "pipe0 connection ids", and returns only that
172
+ user's connections to the browser.
@@ -0,0 +1,26 @@
1
+ import { RenderProp } from "../../../utils/render-slot.mjs";
2
+ import * as _$react from "react";
3
+ import { ComponentProps } from "react";
4
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
5
+
6
+ //#region src/components/compound/pipe-catalog/active-filters.d.ts
7
+ interface ActiveFilter {
8
+ id: string;
9
+ value: string;
10
+ label: string;
11
+ remove: () => void;
12
+ }
13
+ interface PipeCatalogActiveFiltersState {
14
+ filters: ActiveFilter[];
15
+ }
16
+ interface PipeCatalogActiveFiltersProps {
17
+ className?: string;
18
+ render?: RenderProp<ComponentProps<"div">, PipeCatalogActiveFiltersState>;
19
+ }
20
+ declare function PipeCatalogActiveFilters({
21
+ className,
22
+ render
23
+ }: PipeCatalogActiveFiltersProps): string | number | bigint | boolean | _$react_jsx_runtime0.JSX.Element | Iterable<_$react.ReactNode> | Promise<string | number | bigint | boolean | _$react.ReactPortal | _$react.ReactElement<unknown, string | _$react.JSXElementConstructor<any>> | Iterable<_$react.ReactNode> | null | undefined> | null | undefined;
24
+ //#endregion
25
+ export { ActiveFilter, PipeCatalogActiveFilters, PipeCatalogActiveFiltersProps, PipeCatalogActiveFiltersState };
26
+ //# sourceMappingURL=active-filters.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"active-filters.d.mts","names":[],"sources":["../../../../src/components/compound/pipe-catalog/active-filters.tsx"],"mappings":";;;;;;UAciB,YAAA;EACf,EAAA;EACA,KAAA;EACA,KAAA;EACA,MAAA;AAAA;AAAA,UAGe,6BAAA;EACf,OAAA,EAAS,YAAA;AAAA;AAAA,UAGM,6BAAA;EACf,SAAA;EACA,MAAA,GAAS,UAAA,CAAW,cAAA,SAAuB,6BAAA;AAAA;AAAA,iBAG7B,wBAAA,CAAA;EAA2B,SAAA;EAAW;AAAA,GAAU,6BAAA,wCAA6B,oBAAA,CAAA,GAAA,CAAA,OAAA,GAAA,QAAA,CAAA,OAAA,CAAA,SAAA,IAAA,OAAA,sCAAA,OAAA,CAAA,WAAA,GAAA,OAAA,CAAA,YAAA,mBAAA,OAAA,CAAA,qBAAA,SAAA,QAAA,CAAA,OAAA,CAAA,SAAA"}
@@ -0,0 +1,47 @@
1
+ import { cn } from "../../../lib/utils.mjs";
2
+ import { useCatalogConfig } from "../../../context/catalog-config-context.mjs";
3
+ import { usePipeCatalogContext } from "../../../context/pipe-catalog-context.mjs";
4
+ import { renderSlot } from "../../../utils/render-slot.mjs";
5
+ import { DefaultActiveFilterPill } from "../../defaults/catalog/active-filter-pill.mjs";
6
+ import { jsx } from "react/jsx-runtime";
7
+
8
+ //#region src/components/compound/pipe-catalog/active-filters.tsx
9
+ const COLUMN_LABELS = {
10
+ inputFields: "Input",
11
+ outputFields: "Output",
12
+ providers: "Provider",
13
+ tags: "Tag"
14
+ };
15
+ function PipeCatalogActiveFilters({ className, render }) {
16
+ const { classNames } = useCatalogConfig();
17
+ const ctx = usePipeCatalogContext();
18
+ const filters = ctx.table.getState().columnFilters.filter((f) => f.value != null && f.value !== "").map((f) => ({
19
+ id: f.id,
20
+ value: String(f.value),
21
+ label: COLUMN_LABELS[f.id] ?? f.id,
22
+ remove: () => ctx.removeColumnFilter(f.id)
23
+ }));
24
+ if (filters.length === 0) return null;
25
+ if (render) return renderSlot({
26
+ defaultTagName: "div",
27
+ render,
28
+ state: { filters },
29
+ props: {
30
+ "data-p0": "catalog-active-filters",
31
+ className: cn("pz:flex pz:flex-wrap pz:items-center pz:gap-2", classNames?.activeFilters, className)
32
+ }
33
+ });
34
+ return /* @__PURE__ */ jsx("div", {
35
+ "data-p0": "catalog-active-filters",
36
+ className: cn("pz:flex pz:flex-wrap pz:items-center pz:gap-2", classNames?.activeFilters, className),
37
+ children: filters.map((f) => /* @__PURE__ */ jsx(DefaultActiveFilterPill, {
38
+ label: f.label,
39
+ value: f.value,
40
+ onRemove: f.remove
41
+ }, f.id))
42
+ });
43
+ }
44
+
45
+ //#endregion
46
+ export { PipeCatalogActiveFilters };
47
+ //# sourceMappingURL=active-filters.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"active-filters.mjs","names":[],"sources":["../../../../src/components/compound/pipe-catalog/active-filters.tsx"],"sourcesContent":["import type { ComponentProps } from \"react\";\nimport { useCatalogConfig } from \"../../../context/catalog-config-context.js\";\nimport { usePipeCatalogContext } from \"../../../context/pipe-catalog-context.js\";\nimport { cn } from \"../../../lib/utils.js\";\nimport { type RenderProp, renderSlot } from \"../../../utils/render-slot.js\";\nimport { DefaultActiveFilterPill } from \"../../defaults/catalog/active-filter-pill.js\";\n\nconst COLUMN_LABELS: Record<string, string> = {\n inputFields: \"Input\",\n outputFields: \"Output\",\n providers: \"Provider\",\n tags: \"Tag\",\n};\n\nexport interface ActiveFilter {\n id: string;\n value: string;\n label: string;\n remove: () => void;\n}\n\nexport interface PipeCatalogActiveFiltersState {\n filters: ActiveFilter[];\n}\n\nexport interface PipeCatalogActiveFiltersProps {\n className?: string;\n render?: RenderProp<ComponentProps<\"div\">, PipeCatalogActiveFiltersState>;\n}\n\nexport function PipeCatalogActiveFilters({ className, render }: PipeCatalogActiveFiltersProps) {\n const { classNames } = useCatalogConfig();\n const ctx = usePipeCatalogContext();\n const filters: ActiveFilter[] = ctx.table\n .getState()\n .columnFilters.filter((f) => f.value != null && f.value !== \"\")\n .map((f) => ({\n id: f.id,\n value: String(f.value),\n label: COLUMN_LABELS[f.id] ?? f.id,\n remove: () =>\n ctx.removeColumnFilter(f.id as \"inputFields\" | \"outputFields\" | \"tags\" | \"providers\"),\n }));\n\n if (filters.length === 0) return null;\n\n if (render) {\n return renderSlot({\n defaultTagName: \"div\",\n render,\n state: { filters },\n props: {\n \"data-p0\": \"catalog-active-filters\",\n className: cn(\n \"pz:flex pz:flex-wrap pz:items-center pz:gap-2\",\n classNames?.activeFilters,\n className,\n ),\n } as ComponentProps<\"div\">,\n });\n }\n\n return (\n <div\n data-p0=\"catalog-active-filters\"\n className={cn(\n \"pz:flex pz:flex-wrap pz:items-center pz:gap-2\",\n classNames?.activeFilters,\n className,\n )}\n >\n {filters.map((f) => (\n <DefaultActiveFilterPill key={f.id} label={f.label} value={f.value} onRemove={f.remove} />\n ))}\n </div>\n );\n}\n"],"mappings":";;;;;;;;AAOA,MAAM,gBAAwC;CAC5C,aAAa;CACb,cAAc;CACd,WAAW;CACX,MAAM;CACP;AAkBD,SAAgB,yBAAyB,EAAE,WAAW,UAAyC;CAC7F,MAAM,EAAE,eAAe,kBAAkB;CACzC,MAAM,MAAM,uBAAuB;CACnC,MAAM,UAA0B,IAAI,MACjC,UAAU,CACV,cAAc,QAAQ,MAAM,EAAE,SAAS,QAAQ,EAAE,UAAU,GAAG,CAC9D,KAAK,OAAO;EACX,IAAI,EAAE;EACN,OAAO,OAAO,EAAE,MAAM;EACtB,OAAO,cAAc,EAAE,OAAO,EAAE;EAChC,cACE,IAAI,mBAAmB,EAAE,GAA4D;EACxF,EAAE;AAEL,KAAI,QAAQ,WAAW,EAAG,QAAO;AAEjC,KAAI,OACF,QAAO,WAAW;EAChB,gBAAgB;EAChB;EACA,OAAO,EAAE,SAAS;EAClB,OAAO;GACL,WAAW;GACX,WAAW,GACT,iDACA,YAAY,eACZ,UACD;GACF;EACF,CAAC;AAGJ,QACE,oBAAC,OAAD;EACE,WAAQ;EACR,WAAW,GACT,iDACA,YAAY,eACZ,UACD;YAEA,QAAQ,KAAK,MACZ,oBAAC,yBAAD;GAAoC,OAAO,EAAE;GAAO,OAAO,EAAE;GAAO,UAAU,EAAE;GAAU,EAA5D,EAAE,GAA0D,CAC1F;EACE"}
@@ -0,0 +1,30 @@
1
+ import { RenderProp } from "../../../utils/render-slot.mjs";
2
+ import { PipeCardData } from "../../../types/catalog-adapters.mjs";
3
+ import * as _$react from "react";
4
+ import { ComponentProps, MouseEvent } from "react";
5
+
6
+ //#region src/components/compound/pipe-catalog/card.d.ts
7
+ interface PipeCatalogCardState {
8
+ card: PipeCardData;
9
+ selected: boolean;
10
+ /** Whether this card's expansion drawer is currently open. */
11
+ expanded: boolean;
12
+ /**
13
+ * Open or close this card's expansion drawer. Only a single card inside a
14
+ * `<PipeCatalog>` can be expanded at any time — opening one closes the
15
+ * previously expanded card.
16
+ */
17
+ setExpanded: (open: boolean) => void;
18
+ }
19
+ interface PipeCatalogCardProps extends Omit<ComponentProps<"div">, "onClick" | "children"> {
20
+ card: PipeCardData;
21
+ index?: number;
22
+ selected?: boolean;
23
+ render?: RenderProp<ComponentProps<"div">, PipeCatalogCardState>;
24
+ /** Overrides the default click handler that fires `onSelectCard`. */
25
+ onClick?: (e: MouseEvent<HTMLDivElement>) => void;
26
+ }
27
+ declare const PipeCatalogCard: _$react.ForwardRefExoticComponent<Omit<PipeCatalogCardProps, "ref"> & _$react.RefAttributes<HTMLDivElement>>;
28
+ //#endregion
29
+ export { PipeCatalogCard, PipeCatalogCardProps };
30
+ //# sourceMappingURL=card.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.d.mts","names":[],"sources":["../../../../src/components/compound/pipe-catalog/card.tsx"],"mappings":";;;;;;UAyBiB,oBAAA;EACf,IAAA,EAAM,YAAA;EACN,QAAA;EAFe;EAIf,QAAA;;;;;;EAMA,WAAA,GAAc,IAAA;AAAA;AAAA,UAGC,oBAAA,SAA6B,IAAA,CAAK,cAAA;EACjD,IAAA,EAAM,YAAA;EACN,KAAA;EACA,QAAA;EACA,MAAA,GAAS,UAAA,CAAW,cAAA,SAAuB,oBAAA;;EAE3C,OAAA,IAAW,CAAA,EAAG,UAAA,CAAW,cAAA;AAAA;AAAA,cAUd,eAAA,EAAe,OAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,oBAAA,WAAA,OAAA,CAAA,aAAA,CAAA,cAAA"}
@@ -0,0 +1,77 @@
1
+ import { cn } from "../../../lib/utils.mjs";
2
+ import { useCatalogConfig } from "../../../context/catalog-config-context.mjs";
3
+ import { usePipeCatalogContext } from "../../../context/pipe-catalog-context.mjs";
4
+ import { renderSlot } from "../../../utils/render-slot.mjs";
5
+ import { PipeCatalogCardContext } from "../../../context/pipe-catalog-card-context.mjs";
6
+ import { CatalogCardDescription, CatalogCardHeader, CatalogCardTitle } from "../../defaults/catalog/card-primitives.mjs";
7
+ import { forwardRef, useCallback, useId, useMemo } from "react";
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
+
10
+ //#region src/components/compound/pipe-catalog/card.tsx
11
+ const DEFAULT_BODY = /* @__PURE__ */ jsxs(CatalogCardHeader, { children: [/* @__PURE__ */ jsx(CatalogCardTitle, {}), /* @__PURE__ */ jsx(CatalogCardDescription, {})] });
12
+ const PipeCatalogCard = forwardRef(function PipeCatalogCard({ card, index = 0, selected = false, render, onClick, className, ...rest }, ref) {
13
+ const { onSelectCard, expandedCardId, setExpandedCardId } = usePipeCatalogContext();
14
+ const { classNames, components } = useCatalogConfig();
15
+ const instanceId = useId();
16
+ const expanded = expandedCardId === instanceId;
17
+ const setExpanded = useCallback((open) => {
18
+ setExpandedCardId(open ? instanceId : null);
19
+ }, [instanceId, setExpandedCardId]);
20
+ const onSelect = useCallback((e) => {
21
+ onSelectCard?.(card, e);
22
+ }, [onSelectCard, card]);
23
+ const contextValue = useMemo(() => ({
24
+ card,
25
+ index,
26
+ selected,
27
+ onSelect
28
+ }), [
29
+ card,
30
+ index,
31
+ selected,
32
+ onSelect
33
+ ]);
34
+ const interactive = !!(onClick || onSelectCard);
35
+ const handleClick = onClick ? onClick : onSelectCard ? (e) => onSelect(e) : void 0;
36
+ const handleKeyDown = interactive ? (e) => {
37
+ if (e.key === "Enter" || e.key === " ") {
38
+ e.preventDefault();
39
+ if (onClick) onClick(e);
40
+ else onSelect(e);
41
+ }
42
+ } : void 0;
43
+ const Card = components?.Card;
44
+ if (Card) return /* @__PURE__ */ jsx(PipeCatalogCardContext.Provider, {
45
+ value: contextValue,
46
+ children: /* @__PURE__ */ jsx(Card, { children: DEFAULT_BODY })
47
+ });
48
+ const isUsingDefaultBody = !render;
49
+ return /* @__PURE__ */ jsx(PipeCatalogCardContext.Provider, {
50
+ value: contextValue,
51
+ children: renderSlot({
52
+ defaultTagName: "div",
53
+ render,
54
+ state: {
55
+ card,
56
+ selected,
57
+ expanded,
58
+ setExpanded
59
+ },
60
+ props: {
61
+ "data-p0": "catalog-card",
62
+ role: interactive ? "button" : void 0,
63
+ tabIndex: interactive ? 0 : void 0,
64
+ onClick: handleClick,
65
+ onKeyDown: handleKeyDown,
66
+ className: cn("pz:flex pz:flex-col", isUsingDefaultBody && "pz:rounded-md pz:border pz:border-input pz:bg-card pz:px-3 pz:py-2.5 pz:transition-colors", isUsingDefaultBody && interactive && "pz:hover:bg-muted/40", interactive && "pz:cursor-pointer", classNames?.card, className),
67
+ ...isUsingDefaultBody ? { children: DEFAULT_BODY } : {}
68
+ },
69
+ externalProps: rest,
70
+ ref
71
+ })
72
+ });
73
+ });
74
+
75
+ //#endregion
76
+ export { PipeCatalogCard };
77
+ //# sourceMappingURL=card.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.mjs","names":[],"sources":["../../../../src/components/compound/pipe-catalog/card.tsx"],"sourcesContent":["import {\n type ComponentProps,\n forwardRef,\n type KeyboardEvent,\n type MouseEvent,\n type SyntheticEvent,\n useCallback,\n useId,\n useMemo,\n} from \"react\";\nimport { useCatalogConfig } from \"../../../context/catalog-config-context.js\";\nimport {\n PipeCatalogCardContext,\n type PipeCatalogCardContextValue,\n} from \"../../../context/pipe-catalog-card-context.js\";\nimport { usePipeCatalogContext } from \"../../../context/pipe-catalog-context.js\";\nimport { cn } from \"../../../lib/utils.js\";\nimport type { PipeCardData } from \"../../../types/catalog-adapters.js\";\nimport { type RenderProp, renderSlot } from \"../../../utils/render-slot.js\";\nimport {\n CatalogCardDescription,\n CatalogCardHeader,\n CatalogCardTitle,\n} from \"../../defaults/catalog/card-primitives.js\";\n\nexport interface PipeCatalogCardState {\n card: PipeCardData;\n selected: boolean;\n /** Whether this card's expansion drawer is currently open. */\n expanded: boolean;\n /**\n * Open or close this card's expansion drawer. Only a single card inside a\n * `<PipeCatalog>` can be expanded at any time — opening one closes the\n * previously expanded card.\n */\n setExpanded: (open: boolean) => void;\n}\n\nexport interface PipeCatalogCardProps extends Omit<ComponentProps<\"div\">, \"onClick\" | \"children\"> {\n card: PipeCardData;\n index?: number;\n selected?: boolean;\n render?: RenderProp<ComponentProps<\"div\">, PipeCatalogCardState>;\n /** Overrides the default click handler that fires `onSelectCard`. */\n onClick?: (e: MouseEvent<HTMLDivElement>) => void;\n}\n\nconst DEFAULT_BODY = (\n <CatalogCardHeader>\n <CatalogCardTitle />\n <CatalogCardDescription />\n </CatalogCardHeader>\n);\n\nexport const PipeCatalogCard = forwardRef<HTMLDivElement, PipeCatalogCardProps>(\n function PipeCatalogCard(\n { card, index = 0, selected = false, render, onClick, className, ...rest },\n ref,\n ) {\n const { onSelectCard, expandedCardId, setExpandedCardId } = usePipeCatalogContext();\n const { classNames, components } = useCatalogConfig();\n const instanceId = useId();\n const expanded = expandedCardId === instanceId;\n\n const setExpanded = useCallback(\n (open: boolean) => {\n setExpandedCardId(open ? instanceId : null);\n },\n [instanceId, setExpandedCardId],\n );\n\n const onSelect = useCallback(\n (e: SyntheticEvent) => {\n onSelectCard?.(card, e);\n },\n [onSelectCard, card],\n );\n\n const contextValue = useMemo<PipeCatalogCardContextValue>(\n () => ({ card, index, selected, onSelect }),\n [card, index, selected, onSelect],\n );\n\n const interactive = !!(onClick || onSelectCard);\n const handleClick = onClick\n ? onClick\n : onSelectCard\n ? (e: MouseEvent<HTMLDivElement>) => onSelect(e)\n : undefined;\n const handleKeyDown = interactive\n ? (e: KeyboardEvent<HTMLDivElement>) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (onClick) onClick(e as unknown as MouseEvent<HTMLDivElement>);\n else onSelect(e);\n }\n }\n : undefined;\n\n const Card = components?.Card;\n\n if (Card) {\n return (\n <PipeCatalogCardContext.Provider value={contextValue}>\n <Card>{DEFAULT_BODY}</Card>\n </PipeCatalogCardContext.Provider>\n );\n }\n\n const isUsingDefaultBody = !render;\n\n return (\n <PipeCatalogCardContext.Provider value={contextValue}>\n {renderSlot({\n defaultTagName: \"div\",\n render,\n state: { card, selected, expanded, setExpanded },\n props: {\n \"data-p0\": \"catalog-card\",\n role: interactive ? \"button\" : undefined,\n tabIndex: interactive ? 0 : undefined,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n className: cn(\n \"pz:flex pz:flex-col\",\n isUsingDefaultBody &&\n \"pz:rounded-md pz:border pz:border-input pz:bg-card pz:px-3 pz:py-2.5 pz:transition-colors\",\n isUsingDefaultBody && interactive && \"pz:hover:bg-muted/40\",\n interactive && \"pz:cursor-pointer\",\n classNames?.card,\n className,\n ),\n ...(isUsingDefaultBody ? { children: DEFAULT_BODY } : {}),\n } as ComponentProps<\"div\">,\n externalProps: rest as Record<string, unknown>,\n ref,\n })}\n </PipeCatalogCardContext.Provider>\n );\n },\n);\n"],"mappings":";;;;;;;;;;AA+CA,MAAM,eACJ,qBAAC,mBAAD,aACE,oBAAC,kBAAD,EAAoB,GACpB,oBAAC,wBAAD,EAA0B,EACR;AAGtB,MAAa,kBAAkB,WAC7B,SAAS,gBACP,EAAE,MAAM,QAAQ,GAAG,WAAW,OAAO,QAAQ,SAAS,WAAW,GAAG,QACpE,KACA;CACA,MAAM,EAAE,cAAc,gBAAgB,sBAAsB,uBAAuB;CACnF,MAAM,EAAE,YAAY,eAAe,kBAAkB;CACrD,MAAM,aAAa,OAAO;CAC1B,MAAM,WAAW,mBAAmB;CAEpC,MAAM,cAAc,aACjB,SAAkB;AACjB,oBAAkB,OAAO,aAAa,KAAK;IAE7C,CAAC,YAAY,kBAAkB,CAChC;CAED,MAAM,WAAW,aACd,MAAsB;AACrB,iBAAe,MAAM,EAAE;IAEzB,CAAC,cAAc,KAAK,CACrB;CAED,MAAM,eAAe,eACZ;EAAE;EAAM;EAAO;EAAU;EAAU,GAC1C;EAAC;EAAM;EAAO;EAAU;EAAS,CAClC;CAED,MAAM,cAAc,CAAC,EAAE,WAAW;CAClC,MAAM,cAAc,UAChB,UACA,gBACG,MAAkC,SAAS,EAAE,GAC9C;CACN,MAAM,gBAAgB,eACjB,MAAqC;AACpC,MAAI,EAAE,QAAQ,WAAW,EAAE,QAAQ,KAAK;AACtC,KAAE,gBAAgB;AAClB,OAAI,QAAS,SAAQ,EAA2C;OAC3D,UAAS,EAAE;;KAGpB;CAEJ,MAAM,OAAO,YAAY;AAEzB,KAAI,KACF,QACE,oBAAC,uBAAuB,UAAxB;EAAiC,OAAO;YACtC,oBAAC,MAAD,YAAO,cAAoB;EACK;CAItC,MAAM,qBAAqB,CAAC;AAE5B,QACE,oBAAC,uBAAuB,UAAxB;EAAiC,OAAO;YACrC,WAAW;GACV,gBAAgB;GAChB;GACA,OAAO;IAAE;IAAM;IAAU;IAAU;IAAa;GAChD,OAAO;IACL,WAAW;IACX,MAAM,cAAc,WAAW;IAC/B,UAAU,cAAc,IAAI;IAC5B,SAAS;IACT,WAAW;IACX,WAAW,GACT,uBACA,sBACE,6FACF,sBAAsB,eAAe,wBACrC,eAAe,qBACf,YAAY,MACZ,UACD;IACD,GAAI,qBAAqB,EAAE,UAAU,cAAc,GAAG,EAAE;IACzD;GACD,eAAe;GACf;GACD,CAAC;EAC8B;EAGvC"}
@@ -0,0 +1,30 @@
1
+ import { RenderProp } from "../../../utils/render-slot.mjs";
2
+ import { CategoryOption } from "../../defaults/catalog/category-filter.mjs";
3
+ import * as _$react from "react";
4
+ import { ComponentProps } from "react";
5
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
6
+ import { PipeCategory } from "@pipe0/base";
7
+
8
+ //#region src/components/compound/pipe-catalog/category-filter.d.ts
9
+ interface PipeCatalogCategoryFilterState {
10
+ value: PipeCategory | null;
11
+ setValue: (v: PipeCategory | null) => void;
12
+ options: ReadonlyArray<CategoryOption<PipeCategory>>;
13
+ counts: Partial<Record<PipeCategory, number>>;
14
+ totalCount: number;
15
+ isActive: (id: PipeCategory | null) => boolean;
16
+ }
17
+ interface PipeCatalogCategoryFilterProps {
18
+ /** Override the default category options. */
19
+ options?: ReadonlyArray<CategoryOption<PipeCategory>>;
20
+ className?: string;
21
+ render?: RenderProp<ComponentProps<"div">, PipeCatalogCategoryFilterState>;
22
+ }
23
+ declare function PipeCatalogCategoryFilter({
24
+ options,
25
+ className,
26
+ render
27
+ }: PipeCatalogCategoryFilterProps): string | number | bigint | boolean | _$react_jsx_runtime0.JSX.Element | Iterable<_$react.ReactNode> | Promise<string | number | bigint | boolean | _$react.ReactPortal | _$react.ReactElement<unknown, string | _$react.JSXElementConstructor<any>> | Iterable<_$react.ReactNode> | null | undefined> | null | undefined;
28
+ //#endregion
29
+ export { PipeCatalogCategoryFilter, PipeCatalogCategoryFilterProps, PipeCatalogCategoryFilterState };
30
+ //# sourceMappingURL=category-filter.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"category-filter.d.mts","names":[],"sources":["../../../../src/components/compound/pipe-catalog/category-filter.tsx"],"mappings":";;;;;;;;UA4CiB,8BAAA;EACf,KAAA,EAAO,YAAA;EACP,QAAA,GAAW,CAAA,EAAG,YAAA;EACd,OAAA,EAAS,aAAA,CAAc,cAAA,CAAe,YAAA;EACtC,MAAA,EAAQ,OAAA,CAAQ,MAAA,CAAO,YAAA;EACvB,UAAA;EACA,QAAA,GAAW,EAAA,EAAI,YAAA;AAAA;AAAA,UAGA,8BAAA;EANuB;EAQtC,OAAA,GAAU,aAAA,CAAc,cAAA,CAAe,YAAA;EACvC,SAAA;EACA,MAAA,GAAS,UAAA,CAAW,cAAA,SAAuB,8BAAA;AAAA;AAAA,iBAG7B,yBAAA,CAAA;EACd,OAAA;EACA,SAAA;EACA;AAAA,GACC,8BAAA,wCAA8B,oBAAA,CAAA,GAAA,CAAA,OAAA,GAAA,QAAA,CAAA,OAAA,CAAA,SAAA,IAAA,OAAA,sCAAA,OAAA,CAAA,WAAA,GAAA,OAAA,CAAA,YAAA,mBAAA,OAAA,CAAA,qBAAA,SAAA,QAAA,CAAA,OAAA,CAAA,SAAA"}
@@ -0,0 +1,56 @@
1
+ import { usePipeCatalogContext } from "../../../context/pipe-catalog-context.mjs";
2
+ import { renderSlot } from "../../../utils/render-slot.mjs";
3
+ import { DefaultCategoryFilter } from "../../defaults/catalog/category-filter.mjs";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import { Building2, Database, Hammer, Plug, ScanFace, Search, Users, X, Zap } from "lucide-react";
6
+ import { getPipeCategoryEntries } from "@pipe0/base";
7
+
8
+ //#region src/components/compound/pipe-catalog/category-filter.tsx
9
+ const PIPE_CATEGORY_ICONS = {
10
+ people_data: ScanFace,
11
+ company_data: Building2,
12
+ find_people: Users,
13
+ find_comapnies: Search,
14
+ tools: Hammer,
15
+ actions: Zap,
16
+ integrations: Plug,
17
+ deprecated: X
18
+ };
19
+ const DEFAULT_OPTIONS = [{
20
+ id: null,
21
+ label: "All",
22
+ icon: Database
23
+ }, ...[...getPipeCategoryEntries()].sort((a, b) => a.order - b.order).map((entry) => ({
24
+ id: entry.id,
25
+ label: entry.label,
26
+ icon: PIPE_CATEGORY_ICONS[entry.id]
27
+ }))];
28
+ function PipeCatalogCategoryFilter({ options = DEFAULT_OPTIONS, className, render }) {
29
+ const ctx = usePipeCatalogContext();
30
+ if (render) return renderSlot({
31
+ defaultTagName: "div",
32
+ render,
33
+ state: {
34
+ value: ctx.category,
35
+ setValue: ctx.setCategory,
36
+ options,
37
+ counts: ctx.baselineCategoryCounts,
38
+ totalCount: ctx.baselineCardCount,
39
+ isActive: (id) => ctx.category === id
40
+ },
41
+ props: {
42
+ "data-p0": "catalog-category-filter",
43
+ className
44
+ }
45
+ });
46
+ return /* @__PURE__ */ jsx(DefaultCategoryFilter, {
47
+ options,
48
+ value: ctx.category,
49
+ onChange: ctx.setCategory,
50
+ className
51
+ });
52
+ }
53
+
54
+ //#endregion
55
+ export { PipeCatalogCategoryFilter };
56
+ //# sourceMappingURL=category-filter.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"category-filter.mjs","names":["SearchIcon"],"sources":["../../../../src/components/compound/pipe-catalog/category-filter.tsx"],"sourcesContent":["import { getPipeCategoryEntries, type PipeCategory } from \"@pipe0/base\";\nimport {\n Building2,\n Database,\n Hammer,\n Plug,\n ScanFace,\n Search as SearchIcon,\n Users,\n X,\n Zap,\n} from \"lucide-react\";\nimport type { ComponentProps } from \"react\";\nimport { usePipeCatalogContext } from \"../../../context/pipe-catalog-context.js\";\nimport { type RenderProp, renderSlot } from \"../../../utils/render-slot.js\";\nimport {\n type CategoryOption,\n DefaultCategoryFilter,\n} from \"../../defaults/catalog/category-filter.js\";\n\nconst PIPE_CATEGORY_ICONS: Record<PipeCategory, CategoryOption<PipeCategory>[\"icon\"]> = {\n people_data: ScanFace,\n company_data: Building2,\n find_people: Users,\n find_comapnies: SearchIcon,\n tools: Hammer,\n actions: Zap,\n integrations: Plug,\n deprecated: X,\n};\n\nconst DEFAULT_OPTIONS: ReadonlyArray<CategoryOption<PipeCategory>> = [\n { id: null, label: \"All\", icon: Database },\n ...[...getPipeCategoryEntries()]\n .sort((a, b) => a.order - b.order)\n .map(\n (entry): CategoryOption<PipeCategory> => ({\n id: entry.id,\n label: entry.label,\n icon: PIPE_CATEGORY_ICONS[entry.id],\n }),\n ),\n];\n\nexport interface PipeCatalogCategoryFilterState {\n value: PipeCategory | null;\n setValue: (v: PipeCategory | null) => void;\n options: ReadonlyArray<CategoryOption<PipeCategory>>;\n counts: Partial<Record<PipeCategory, number>>;\n totalCount: number;\n isActive: (id: PipeCategory | null) => boolean;\n}\n\nexport interface PipeCatalogCategoryFilterProps {\n /** Override the default category options. */\n options?: ReadonlyArray<CategoryOption<PipeCategory>>;\n className?: string;\n render?: RenderProp<ComponentProps<\"div\">, PipeCatalogCategoryFilterState>;\n}\n\nexport function PipeCatalogCategoryFilter({\n options = DEFAULT_OPTIONS,\n className,\n render,\n}: PipeCatalogCategoryFilterProps) {\n const ctx = usePipeCatalogContext();\n\n if (render) {\n return renderSlot({\n defaultTagName: \"div\",\n render,\n state: {\n value: ctx.category,\n setValue: ctx.setCategory,\n options,\n counts: ctx.baselineCategoryCounts,\n totalCount: ctx.baselineCardCount,\n isActive: (id: PipeCategory | null) => ctx.category === id,\n },\n props: {\n \"data-p0\": \"catalog-category-filter\",\n className,\n } as ComponentProps<\"div\">,\n });\n }\n\n return (\n <DefaultCategoryFilter\n options={options}\n value={ctx.category}\n onChange={ctx.setCategory}\n className={className}\n />\n );\n}\n"],"mappings":";;;;;;;;AAoBA,MAAM,sBAAkF;CACtF,aAAa;CACb,cAAc;CACd,aAAa;CACb,gBAAgBA;CAChB,OAAO;CACP,SAAS;CACT,cAAc;CACd,YAAY;CACb;AAED,MAAM,kBAA+D,CACnE;CAAE,IAAI;CAAM,OAAO;CAAO,MAAM;CAAU,EAC1C,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAC7B,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,CACjC,KACE,WAAyC;CACxC,IAAI,MAAM;CACV,OAAO,MAAM;CACb,MAAM,oBAAoB,MAAM;CACjC,EACF,CACJ;AAkBD,SAAgB,0BAA0B,EACxC,UAAU,iBACV,WACA,UACiC;CACjC,MAAM,MAAM,uBAAuB;AAEnC,KAAI,OACF,QAAO,WAAW;EAChB,gBAAgB;EAChB;EACA,OAAO;GACL,OAAO,IAAI;GACX,UAAU,IAAI;GACd;GACA,QAAQ,IAAI;GACZ,YAAY,IAAI;GAChB,WAAW,OAA4B,IAAI,aAAa;GACzD;EACD,OAAO;GACL,WAAW;GACX;GACD;EACF,CAAC;AAGJ,QACE,oBAAC,uBAAD;EACW;EACT,OAAO,IAAI;EACX,UAAU,IAAI;EACH;EACX"}
@@ -0,0 +1,40 @@
1
+ import { RenderProp } from "../../../utils/render-slot.mjs";
2
+ import { FilterSelectOption } from "../../defaults/catalog/filter-select.mjs";
3
+ import * as _$react from "react";
4
+ import { ComponentProps, ReactNode } from "react";
5
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
6
+
7
+ //#region src/components/compound/pipe-catalog/column-filter.d.ts
8
+ type PipeColumnFilterId = "inputFields" | "outputFields" | "providers" | "tags";
9
+ /**
10
+ * Render-prop state shared by every specific column filter component
11
+ * (input/output/provider/tag) and the generic `<PipeCatalogColumnFilter>`.
12
+ */
13
+ interface ColumnFilterState {
14
+ value: string;
15
+ setValue: (v: string | null) => void;
16
+ options: ReadonlyArray<FilterSelectOption>;
17
+ isActive: boolean;
18
+ }
19
+ interface PipeCatalogColumnFilterProps {
20
+ id: PipeColumnFilterId;
21
+ placeholder?: ReactNode;
22
+ options?: ReadonlyArray<FilterSelectOption>;
23
+ className?: string;
24
+ render?: RenderProp<ComponentProps<"div">, ColumnFilterState>;
25
+ }
26
+ /**
27
+ * Generic column-filter escape hatch. For built-in filters prefer the specific
28
+ * components: `<PipeCatalogInputFieldFilter>`, `<PipeCatalogOutputFieldFilter>`,
29
+ * `<PipeCatalogProviderFilter>`, `<PipeCatalogTagFilter>`.
30
+ */
31
+ declare function PipeCatalogColumnFilter({
32
+ id,
33
+ placeholder,
34
+ options,
35
+ className,
36
+ render
37
+ }: PipeCatalogColumnFilterProps): string | number | bigint | boolean | _$react_jsx_runtime0.JSX.Element | Iterable<ReactNode> | Promise<string | number | bigint | boolean | _$react.ReactPortal | _$react.ReactElement<unknown, string | _$react.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | null | undefined;
38
+ //#endregion
39
+ export { ColumnFilterState, PipeCatalogColumnFilter, PipeCatalogColumnFilterProps, PipeColumnFilterId };
40
+ //# sourceMappingURL=column-filter.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"column-filter.d.mts","names":[],"sources":["../../../../src/components/compound/pipe-catalog/column-filter.tsx"],"mappings":";;;;;;;KAQY,kBAAA;;;;AAAZ;UAMiB,iBAAA;EACf,KAAA;EACA,QAAA,GAAW,CAAA;EACX,OAAA,EAAS,aAAA,CAAc,kBAAA;EACvB,QAAA;AAAA;AAAA,UAGe,4BAAA;EACf,EAAA,EAAI,kBAAA;EACJ,WAAA,GAAc,SAAA;EACd,OAAA,GAAU,aAAA,CAAc,kBAAA;EACxB,SAAA;EACA,MAAA,GAAS,UAAA,CAAW,cAAA,SAAuB,iBAAA;AAAA;;;;;AAL7C;iBAmCgB,uBAAA,CAAA;EACd,EAAA;EACA,WAAA;EACA,OAAA;EACA,SAAA;EACA;AAAA,GACC,4BAAA,wCAA4B,oBAAA,CAAA,GAAA,CAAA,OAAA,GAAA,QAAA,CAAA,SAAA,IAAA,OAAA,sCAAA,OAAA,CAAA,WAAA,GAAA,OAAA,CAAA,YAAA,mBAAA,OAAA,CAAA,qBAAA,SAAA,QAAA,CAAA,SAAA"}