@satoshibits/react-json-schema-builder 1.1.4 → 1.1.6

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 (727) hide show
  1. package/dist/index.cjs.js +1 -1
  2. package/dist/index.cjs10.js +1 -1
  3. package/dist/index.cjs10.js.map +1 -1
  4. package/dist/index.cjs100.js +1 -1
  5. package/dist/index.cjs100.js.map +1 -1
  6. package/dist/index.cjs101.js +1 -1
  7. package/dist/index.cjs101.js.map +1 -1
  8. package/dist/index.cjs102.js +1 -1
  9. package/dist/index.cjs102.js.map +1 -1
  10. package/dist/index.cjs103.js +1 -1
  11. package/dist/index.cjs103.js.map +1 -1
  12. package/dist/index.cjs104.js +1 -1
  13. package/dist/index.cjs104.js.map +1 -1
  14. package/dist/index.cjs105.js +2 -0
  15. package/dist/index.cjs105.js.map +1 -0
  16. package/dist/index.cjs106.js +2 -0
  17. package/dist/index.cjs106.js.map +1 -0
  18. package/dist/index.cjs107.js +2 -0
  19. package/dist/index.cjs107.js.map +1 -0
  20. package/dist/index.cjs108.js +2 -0
  21. package/dist/index.cjs108.js.map +1 -0
  22. package/dist/index.cjs109.js +2 -0
  23. package/dist/index.cjs109.js.map +1 -0
  24. package/dist/index.cjs11.js +1 -1
  25. package/dist/index.cjs11.js.map +1 -1
  26. package/dist/index.cjs110.js +2 -0
  27. package/dist/index.cjs110.js.map +1 -0
  28. package/dist/index.cjs111.js +2 -0
  29. package/dist/index.cjs111.js.map +1 -0
  30. package/dist/index.cjs112.js +2 -0
  31. package/dist/index.cjs112.js.map +1 -0
  32. package/dist/index.cjs113.js +2 -0
  33. package/dist/index.cjs113.js.map +1 -0
  34. package/dist/index.cjs114.js +2 -0
  35. package/dist/index.cjs114.js.map +1 -0
  36. package/dist/index.cjs115.js +2 -0
  37. package/dist/index.cjs115.js.map +1 -0
  38. package/dist/index.cjs116.js +2 -0
  39. package/dist/index.cjs116.js.map +1 -0
  40. package/dist/index.cjs117.js +2 -0
  41. package/dist/index.cjs117.js.map +1 -0
  42. package/dist/index.cjs118.js +2 -0
  43. package/dist/index.cjs118.js.map +1 -0
  44. package/dist/index.cjs119.js +2 -0
  45. package/dist/index.cjs119.js.map +1 -0
  46. package/dist/index.cjs12.js +1 -1
  47. package/dist/index.cjs12.js.map +1 -1
  48. package/dist/index.cjs120.js +2 -0
  49. package/dist/index.cjs120.js.map +1 -0
  50. package/dist/index.cjs121.js +2 -0
  51. package/dist/index.cjs121.js.map +1 -0
  52. package/dist/index.cjs122.js +2 -0
  53. package/dist/index.cjs122.js.map +1 -0
  54. package/dist/index.cjs123.js +2 -0
  55. package/dist/index.cjs123.js.map +1 -0
  56. package/dist/index.cjs124.js +2 -0
  57. package/dist/index.cjs124.js.map +1 -0
  58. package/dist/index.cjs125.js +2 -0
  59. package/dist/index.cjs125.js.map +1 -0
  60. package/dist/index.cjs126.js +2 -0
  61. package/dist/index.cjs126.js.map +1 -0
  62. package/dist/index.cjs127.js +2 -0
  63. package/dist/index.cjs127.js.map +1 -0
  64. package/dist/index.cjs128.js +2 -0
  65. package/dist/index.cjs128.js.map +1 -0
  66. package/dist/index.cjs129.js +2 -0
  67. package/dist/index.cjs129.js.map +1 -0
  68. package/dist/index.cjs13.js +1 -1
  69. package/dist/index.cjs13.js.map +1 -1
  70. package/dist/index.cjs130.js +2 -0
  71. package/dist/index.cjs130.js.map +1 -0
  72. package/dist/index.cjs131.js +2 -0
  73. package/dist/index.cjs131.js.map +1 -0
  74. package/dist/index.cjs132.js +2 -0
  75. package/dist/index.cjs132.js.map +1 -0
  76. package/dist/index.cjs133.js +2 -0
  77. package/dist/index.cjs133.js.map +1 -0
  78. package/dist/index.cjs134.js +2 -0
  79. package/dist/index.cjs134.js.map +1 -0
  80. package/dist/index.cjs135.js +2 -0
  81. package/dist/index.cjs135.js.map +1 -0
  82. package/dist/index.cjs136.js +2 -0
  83. package/dist/index.cjs136.js.map +1 -0
  84. package/dist/index.cjs137.js +2 -0
  85. package/dist/index.cjs137.js.map +1 -0
  86. package/dist/index.cjs138.js +2 -0
  87. package/dist/index.cjs138.js.map +1 -0
  88. package/dist/index.cjs139.js +2 -0
  89. package/dist/index.cjs139.js.map +1 -0
  90. package/dist/index.cjs14.js +1 -1
  91. package/dist/index.cjs14.js.map +1 -1
  92. package/dist/index.cjs140.js +2 -0
  93. package/dist/index.cjs140.js.map +1 -0
  94. package/dist/index.cjs141.js +2 -0
  95. package/dist/index.cjs141.js.map +1 -0
  96. package/dist/index.cjs142.js +2 -0
  97. package/dist/index.cjs142.js.map +1 -0
  98. package/dist/index.cjs143.js +2 -0
  99. package/dist/index.cjs143.js.map +1 -0
  100. package/dist/index.cjs144.js +2 -0
  101. package/dist/index.cjs144.js.map +1 -0
  102. package/dist/index.cjs145.js +2 -0
  103. package/dist/index.cjs145.js.map +1 -0
  104. package/dist/index.cjs146.js +2 -0
  105. package/dist/index.cjs146.js.map +1 -0
  106. package/dist/index.cjs147.js +2 -0
  107. package/dist/index.cjs147.js.map +1 -0
  108. package/dist/index.cjs148.js +2 -0
  109. package/dist/index.cjs148.js.map +1 -0
  110. package/dist/index.cjs149.js +2 -0
  111. package/dist/index.cjs149.js.map +1 -0
  112. package/dist/index.cjs15.js +1 -1
  113. package/dist/index.cjs15.js.map +1 -1
  114. package/dist/index.cjs150.js +2 -0
  115. package/dist/index.cjs150.js.map +1 -0
  116. package/dist/index.cjs151.js +2 -0
  117. package/dist/index.cjs151.js.map +1 -0
  118. package/dist/index.cjs152.js +2 -0
  119. package/dist/index.cjs152.js.map +1 -0
  120. package/dist/index.cjs153.js +6 -0
  121. package/dist/index.cjs153.js.map +1 -0
  122. package/dist/index.cjs154.js +2 -0
  123. package/dist/index.cjs154.js.map +1 -0
  124. package/dist/index.cjs155.js +2 -0
  125. package/dist/index.cjs155.js.map +1 -0
  126. package/dist/index.cjs156.js +2 -0
  127. package/dist/index.cjs156.js.map +1 -0
  128. package/dist/index.cjs157.js +2 -0
  129. package/dist/index.cjs157.js.map +1 -0
  130. package/dist/index.cjs158.js +2 -0
  131. package/dist/index.cjs158.js.map +1 -0
  132. package/dist/index.cjs159.js +2 -0
  133. package/dist/index.cjs159.js.map +1 -0
  134. package/dist/index.cjs16.js +6 -1
  135. package/dist/index.cjs16.js.map +1 -1
  136. package/dist/index.cjs160.js +2 -0
  137. package/dist/index.cjs160.js.map +1 -0
  138. package/dist/index.cjs161.js +2 -0
  139. package/dist/index.cjs161.js.map +1 -0
  140. package/dist/index.cjs162.js +2 -0
  141. package/dist/index.cjs162.js.map +1 -0
  142. package/dist/index.cjs163.js +2 -0
  143. package/dist/index.cjs163.js.map +1 -0
  144. package/dist/index.cjs164.js +2 -0
  145. package/dist/index.cjs164.js.map +1 -0
  146. package/dist/index.cjs165.js +2 -0
  147. package/dist/index.cjs165.js.map +1 -0
  148. package/dist/index.cjs166.js +5 -0
  149. package/dist/index.cjs166.js.map +1 -0
  150. package/dist/index.cjs167.js +2 -0
  151. package/dist/index.cjs167.js.map +1 -0
  152. package/dist/index.cjs168.js +2 -0
  153. package/dist/index.cjs168.js.map +1 -0
  154. package/dist/index.cjs169.js +2 -0
  155. package/dist/index.cjs169.js.map +1 -0
  156. package/dist/index.cjs17.js +1 -1
  157. package/dist/index.cjs17.js.map +1 -1
  158. package/dist/index.cjs170.js +2 -0
  159. package/dist/index.cjs170.js.map +1 -0
  160. package/dist/index.cjs171.js +39 -0
  161. package/dist/index.cjs171.js.map +1 -0
  162. package/dist/index.cjs172.js +2 -0
  163. package/dist/index.cjs172.js.map +1 -0
  164. package/dist/index.cjs173.js +2 -0
  165. package/dist/index.cjs173.js.map +1 -0
  166. package/dist/index.cjs174.js +2 -0
  167. package/dist/index.cjs174.js.map +1 -0
  168. package/dist/index.cjs175.js +2 -0
  169. package/dist/index.cjs175.js.map +1 -0
  170. package/dist/index.cjs176.js +2 -0
  171. package/dist/index.cjs176.js.map +1 -0
  172. package/dist/index.cjs177.js +2 -0
  173. package/dist/index.cjs177.js.map +1 -0
  174. package/dist/index.cjs178.js +2 -0
  175. package/dist/index.cjs178.js.map +1 -0
  176. package/dist/index.cjs179.js +2 -0
  177. package/dist/index.cjs179.js.map +1 -0
  178. package/dist/index.cjs18.js +1 -1
  179. package/dist/index.cjs18.js.map +1 -1
  180. package/dist/index.cjs180.js +2 -0
  181. package/dist/index.cjs180.js.map +1 -0
  182. package/dist/index.cjs181.js +2 -0
  183. package/dist/index.cjs181.js.map +1 -0
  184. package/dist/index.cjs19.js +1 -1
  185. package/dist/index.cjs19.js.map +1 -1
  186. package/dist/index.cjs2.js +1 -1
  187. package/dist/index.cjs2.js.map +1 -1
  188. package/dist/index.cjs20.js +1 -1
  189. package/dist/index.cjs20.js.map +1 -1
  190. package/dist/index.cjs21.js +1 -1
  191. package/dist/index.cjs21.js.map +1 -1
  192. package/dist/index.cjs22.js +1 -1
  193. package/dist/index.cjs22.js.map +1 -1
  194. package/dist/index.cjs23.js +1 -6
  195. package/dist/index.cjs23.js.map +1 -1
  196. package/dist/index.cjs24.js +1 -6
  197. package/dist/index.cjs24.js.map +1 -1
  198. package/dist/index.cjs25.js +1 -6
  199. package/dist/index.cjs25.js.map +1 -1
  200. package/dist/index.cjs26.js +2 -2
  201. package/dist/index.cjs26.js.map +1 -1
  202. package/dist/index.cjs27.js +2 -2
  203. package/dist/index.cjs27.js.map +1 -1
  204. package/dist/index.cjs28.js +6 -1
  205. package/dist/index.cjs28.js.map +1 -1
  206. package/dist/index.cjs29.js +6 -1
  207. package/dist/index.cjs29.js.map +1 -1
  208. package/dist/index.cjs3.js +1 -1
  209. package/dist/index.cjs3.js.map +1 -1
  210. package/dist/index.cjs30.js +2 -2
  211. package/dist/index.cjs30.js.map +1 -1
  212. package/dist/index.cjs31.js +1 -1
  213. package/dist/index.cjs31.js.map +1 -1
  214. package/dist/index.cjs32.js +1 -1
  215. package/dist/index.cjs32.js.map +1 -1
  216. package/dist/index.cjs33.js +1 -1
  217. package/dist/index.cjs33.js.map +1 -1
  218. package/dist/index.cjs34.js +1 -1
  219. package/dist/index.cjs34.js.map +1 -1
  220. package/dist/index.cjs35.js +1 -1
  221. package/dist/index.cjs35.js.map +1 -1
  222. package/dist/index.cjs36.js +1 -1
  223. package/dist/index.cjs36.js.map +1 -1
  224. package/dist/index.cjs37.js +1 -1
  225. package/dist/index.cjs37.js.map +1 -1
  226. package/dist/index.cjs38.js +1 -6
  227. package/dist/index.cjs38.js.map +1 -1
  228. package/dist/index.cjs39.js +2 -2
  229. package/dist/index.cjs39.js.map +1 -1
  230. package/dist/index.cjs4.js +1 -1
  231. package/dist/index.cjs4.js.map +1 -1
  232. package/dist/index.cjs40.js +2 -2
  233. package/dist/index.cjs40.js.map +1 -1
  234. package/dist/index.cjs41.js +6 -1
  235. package/dist/index.cjs41.js.map +1 -1
  236. package/dist/index.cjs42.js +1 -1
  237. package/dist/index.cjs42.js.map +1 -1
  238. package/dist/index.cjs43.js +1 -1
  239. package/dist/index.cjs43.js.map +1 -1
  240. package/dist/index.cjs44.js +1 -1
  241. package/dist/index.cjs44.js.map +1 -1
  242. package/dist/index.cjs45.js +1 -1
  243. package/dist/index.cjs45.js.map +1 -1
  244. package/dist/index.cjs46.js +1 -1
  245. package/dist/index.cjs46.js.map +1 -1
  246. package/dist/index.cjs47.js +1 -7
  247. package/dist/index.cjs47.js.map +1 -1
  248. package/dist/index.cjs48.js +7 -1
  249. package/dist/index.cjs48.js.map +1 -1
  250. package/dist/index.cjs49.js +1 -6
  251. package/dist/index.cjs49.js.map +1 -1
  252. package/dist/index.cjs5.js +1 -1
  253. package/dist/index.cjs5.js.map +1 -1
  254. package/dist/index.cjs50.js +2 -2
  255. package/dist/index.cjs50.js.map +1 -1
  256. package/dist/index.cjs51.js +2 -2
  257. package/dist/index.cjs51.js.map +1 -1
  258. package/dist/index.cjs52.js +2 -2
  259. package/dist/index.cjs52.js.map +1 -1
  260. package/dist/index.cjs53.js +6 -1
  261. package/dist/index.cjs53.js.map +1 -1
  262. package/dist/index.cjs54.js +1 -1
  263. package/dist/index.cjs54.js.map +1 -1
  264. package/dist/index.cjs55.js +1 -5
  265. package/dist/index.cjs55.js.map +1 -1
  266. package/dist/index.cjs56.js +12 -1
  267. package/dist/index.cjs56.js.map +1 -1
  268. package/dist/index.cjs57.js +1 -1
  269. package/dist/index.cjs57.js.map +1 -1
  270. package/dist/index.cjs58.js +1 -1
  271. package/dist/index.cjs58.js.map +1 -1
  272. package/dist/index.cjs59.js +1 -1
  273. package/dist/index.cjs59.js.map +1 -1
  274. package/dist/index.cjs6.js +1 -1
  275. package/dist/index.cjs6.js.map +1 -1
  276. package/dist/index.cjs60.js +1 -1
  277. package/dist/index.cjs60.js.map +1 -1
  278. package/dist/index.cjs61.js +1 -1
  279. package/dist/index.cjs61.js.map +1 -1
  280. package/dist/index.cjs62.js +1 -1
  281. package/dist/index.cjs62.js.map +1 -1
  282. package/dist/index.cjs63.js +1 -1
  283. package/dist/index.cjs63.js.map +1 -1
  284. package/dist/index.cjs64.js +1 -1
  285. package/dist/index.cjs64.js.map +1 -1
  286. package/dist/index.cjs65.js +1 -1
  287. package/dist/index.cjs65.js.map +1 -1
  288. package/dist/index.cjs66.js +1 -1
  289. package/dist/index.cjs66.js.map +1 -1
  290. package/dist/index.cjs67.js +1 -1
  291. package/dist/index.cjs67.js.map +1 -1
  292. package/dist/index.cjs68.js +1 -1
  293. package/dist/index.cjs68.js.map +1 -1
  294. package/dist/index.cjs69.js +1 -1
  295. package/dist/index.cjs69.js.map +1 -1
  296. package/dist/index.cjs7.js +1 -1
  297. package/dist/index.cjs7.js.map +1 -1
  298. package/dist/index.cjs70.js +1 -1
  299. package/dist/index.cjs70.js.map +1 -1
  300. package/dist/index.cjs71.js +1 -1
  301. package/dist/index.cjs71.js.map +1 -1
  302. package/dist/index.cjs72.js +1 -1
  303. package/dist/index.cjs72.js.map +1 -1
  304. package/dist/index.cjs73.js +1 -1
  305. package/dist/index.cjs73.js.map +1 -1
  306. package/dist/index.cjs74.js +1 -1
  307. package/dist/index.cjs74.js.map +1 -1
  308. package/dist/index.cjs75.js +1 -1
  309. package/dist/index.cjs75.js.map +1 -1
  310. package/dist/index.cjs76.js +1 -1
  311. package/dist/index.cjs76.js.map +1 -1
  312. package/dist/index.cjs77.js +1 -1
  313. package/dist/index.cjs77.js.map +1 -1
  314. package/dist/index.cjs78.js +1 -1
  315. package/dist/index.cjs78.js.map +1 -1
  316. package/dist/index.cjs79.js +1 -1
  317. package/dist/index.cjs79.js.map +1 -1
  318. package/dist/index.cjs8.js +1 -1
  319. package/dist/index.cjs8.js.map +1 -1
  320. package/dist/index.cjs80.js +1 -1
  321. package/dist/index.cjs80.js.map +1 -1
  322. package/dist/index.cjs81.js +1 -1
  323. package/dist/index.cjs81.js.map +1 -1
  324. package/dist/index.cjs82.js +1 -1
  325. package/dist/index.cjs82.js.map +1 -1
  326. package/dist/index.cjs83.js +1 -1
  327. package/dist/index.cjs83.js.map +1 -1
  328. package/dist/index.cjs84.js +1 -1
  329. package/dist/index.cjs84.js.map +1 -1
  330. package/dist/index.cjs85.js +1 -1
  331. package/dist/index.cjs85.js.map +1 -1
  332. package/dist/index.cjs86.js +1 -1
  333. package/dist/index.cjs86.js.map +1 -1
  334. package/dist/index.cjs87.js +1 -1
  335. package/dist/index.cjs87.js.map +1 -1
  336. package/dist/index.cjs88.js +1 -1
  337. package/dist/index.cjs88.js.map +1 -1
  338. package/dist/index.cjs89.js +1 -4
  339. package/dist/index.cjs89.js.map +1 -1
  340. package/dist/index.cjs9.js +1 -1
  341. package/dist/index.cjs9.js.map +1 -1
  342. package/dist/index.cjs90.js +1 -1
  343. package/dist/index.cjs90.js.map +1 -1
  344. package/dist/index.cjs91.js +1 -1
  345. package/dist/index.cjs91.js.map +1 -1
  346. package/dist/index.cjs92.js +1 -1
  347. package/dist/index.cjs92.js.map +1 -1
  348. package/dist/index.cjs93.js +1 -1
  349. package/dist/index.cjs93.js.map +1 -1
  350. package/dist/index.cjs94.js +1 -1
  351. package/dist/index.cjs94.js.map +1 -1
  352. package/dist/index.cjs95.js +1 -38
  353. package/dist/index.cjs95.js.map +1 -1
  354. package/dist/index.cjs96.js +1 -1
  355. package/dist/index.cjs96.js.map +1 -1
  356. package/dist/index.cjs97.js +1 -1
  357. package/dist/index.cjs97.js.map +1 -1
  358. package/dist/index.cjs98.js +1 -1
  359. package/dist/index.cjs98.js.map +1 -1
  360. package/dist/index.cjs99.js +1 -1
  361. package/dist/index.cjs99.js.map +1 -1
  362. package/dist/index.d.mts +6 -4
  363. package/dist/index.d.mts.map +1 -1
  364. package/dist/index.es.js +23 -28
  365. package/dist/index.es.js.map +1 -1
  366. package/dist/index.es10.js +18 -22
  367. package/dist/index.es10.js.map +1 -1
  368. package/dist/index.es100.js +2 -23
  369. package/dist/index.es100.js.map +1 -1
  370. package/dist/index.es101.js +6 -23
  371. package/dist/index.es101.js.map +1 -1
  372. package/dist/index.es102.js +5 -13
  373. package/dist/index.es102.js.map +1 -1
  374. package/dist/index.es103.js +5 -28
  375. package/dist/index.es103.js.map +1 -1
  376. package/dist/index.es104.js +4 -7
  377. package/dist/index.es104.js.map +1 -1
  378. package/dist/index.es105.js +9 -0
  379. package/dist/index.es105.js.map +1 -0
  380. package/dist/index.es106.js +8 -0
  381. package/dist/index.es106.js.map +1 -0
  382. package/dist/index.es107.js +8 -0
  383. package/dist/index.es107.js.map +1 -0
  384. package/dist/index.es108.js +8 -0
  385. package/dist/index.es108.js.map +1 -0
  386. package/dist/index.es109.js +8 -0
  387. package/dist/index.es109.js.map +1 -0
  388. package/dist/index.es11.js +21 -46
  389. package/dist/index.es11.js.map +1 -1
  390. package/dist/index.es110.js +8 -0
  391. package/dist/index.es110.js.map +1 -0
  392. package/dist/index.es111.js +8 -0
  393. package/dist/index.es111.js.map +1 -0
  394. package/dist/index.es112.js +8 -0
  395. package/dist/index.es112.js.map +1 -0
  396. package/dist/index.es113.js +8 -0
  397. package/dist/index.es113.js.map +1 -0
  398. package/dist/index.es114.js +9 -0
  399. package/dist/index.es114.js.map +1 -0
  400. package/dist/index.es115.js +5 -0
  401. package/dist/index.es115.js.map +1 -0
  402. package/dist/index.es116.js +9 -0
  403. package/dist/index.es116.js.map +1 -0
  404. package/dist/index.es117.js +8 -0
  405. package/dist/index.es117.js.map +1 -0
  406. package/dist/index.es118.js +8 -0
  407. package/dist/index.es118.js.map +1 -0
  408. package/dist/index.es119.js +5 -0
  409. package/dist/index.es119.js.map +1 -0
  410. package/dist/index.es12.js +14 -60
  411. package/dist/index.es12.js.map +1 -1
  412. package/dist/index.es120.js +5 -0
  413. package/dist/index.es120.js.map +1 -0
  414. package/dist/index.es121.js +9 -0
  415. package/dist/index.es121.js.map +1 -0
  416. package/dist/index.es122.js +8 -0
  417. package/dist/index.es122.js.map +1 -0
  418. package/dist/index.es123.js +8 -0
  419. package/dist/index.es123.js.map +1 -0
  420. package/dist/index.es124.js +8 -0
  421. package/dist/index.es124.js.map +1 -0
  422. package/dist/index.es125.js +8 -0
  423. package/dist/index.es125.js.map +1 -0
  424. package/dist/index.es126.js +3 -0
  425. package/dist/index.es126.js.map +1 -0
  426. package/dist/index.es127.js +8 -0
  427. package/dist/index.es127.js.map +1 -0
  428. package/dist/index.es128.js +8 -0
  429. package/dist/index.es128.js.map +1 -0
  430. package/dist/index.es129.js +5 -0
  431. package/dist/index.es129.js.map +1 -0
  432. package/dist/index.es13.js +5 -28
  433. package/dist/index.es13.js.map +1 -1
  434. package/dist/index.es130.js +11 -0
  435. package/dist/index.es130.js.map +1 -0
  436. package/dist/index.es131.js +8 -0
  437. package/dist/index.es131.js.map +1 -0
  438. package/dist/index.es132.js +30 -0
  439. package/dist/index.es132.js.map +1 -0
  440. package/dist/index.es133.js +36 -0
  441. package/dist/index.es133.js.map +1 -0
  442. package/dist/index.es134.js +10 -0
  443. package/dist/index.es134.js.map +1 -0
  444. package/dist/index.es135.js +69 -0
  445. package/dist/index.es135.js.map +1 -0
  446. package/dist/index.es136.js +33 -0
  447. package/dist/index.es136.js.map +1 -0
  448. package/dist/index.es137.js +9 -0
  449. package/dist/index.es137.js.map +1 -0
  450. package/dist/index.es138.js +28 -0
  451. package/dist/index.es138.js.map +1 -0
  452. package/dist/index.es139.js +7 -0
  453. package/dist/index.es139.js.map +1 -0
  454. package/dist/index.es14.js +42 -128
  455. package/dist/index.es14.js.map +1 -1
  456. package/dist/index.es140.js +49 -0
  457. package/dist/index.es140.js.map +1 -0
  458. package/dist/index.es141.js +11 -0
  459. package/dist/index.es141.js.map +1 -0
  460. package/dist/index.es142.js +128 -0
  461. package/dist/index.es142.js.map +1 -0
  462. package/dist/index.es143.js +18 -0
  463. package/dist/index.es143.js.map +1 -0
  464. package/dist/index.es144.js +137 -0
  465. package/dist/index.es144.js.map +1 -0
  466. package/dist/index.es145.js +14 -0
  467. package/dist/index.es145.js.map +1 -0
  468. package/dist/index.es146.js +219 -0
  469. package/dist/index.es146.js.map +1 -0
  470. package/dist/index.es147.js +16 -0
  471. package/dist/index.es147.js.map +1 -0
  472. package/dist/index.es148.js +11 -0
  473. package/dist/index.es148.js.map +1 -0
  474. package/dist/index.es149.js +7 -0
  475. package/dist/index.es149.js.map +1 -0
  476. package/dist/index.es15.js +22 -13
  477. package/dist/index.es15.js.map +1 -1
  478. package/dist/index.es150.js +31 -0
  479. package/dist/index.es150.js.map +1 -0
  480. package/dist/index.es151.js +53 -0
  481. package/dist/index.es151.js.map +1 -0
  482. package/dist/index.es152.js +12 -0
  483. package/dist/index.es152.js.map +1 -0
  484. package/dist/index.es153.js +258 -0
  485. package/dist/index.es153.js.map +1 -0
  486. package/dist/index.es154.js +25 -0
  487. package/dist/index.es154.js.map +1 -0
  488. package/dist/index.es155.js +15 -0
  489. package/dist/index.es155.js.map +1 -0
  490. package/dist/index.es156.js +208 -0
  491. package/dist/index.es156.js.map +1 -0
  492. package/dist/index.es157.js +25 -0
  493. package/dist/index.es157.js.map +1 -0
  494. package/dist/index.es158.js +396 -0
  495. package/dist/index.es158.js.map +1 -0
  496. package/dist/index.es159.js +71 -0
  497. package/dist/index.es159.js.map +1 -0
  498. package/dist/index.es16.js +13 -135
  499. package/dist/index.es16.js.map +1 -1
  500. package/dist/index.es160.js +28 -0
  501. package/dist/index.es160.js.map +1 -0
  502. package/dist/index.es161.js +32 -0
  503. package/dist/index.es161.js.map +1 -0
  504. package/dist/index.es162.js +8 -0
  505. package/dist/index.es162.js.map +1 -0
  506. package/dist/index.es163.js +8 -0
  507. package/dist/index.es163.js.map +1 -0
  508. package/dist/index.es164.js +6 -0
  509. package/dist/index.es164.js.map +1 -0
  510. package/dist/index.es165.js +27 -0
  511. package/dist/index.es165.js.map +1 -0
  512. package/dist/index.es166.js +113 -0
  513. package/dist/index.es166.js.map +1 -0
  514. package/dist/index.es167.js +19 -0
  515. package/dist/index.es167.js.map +1 -0
  516. package/dist/index.es168.js +526 -0
  517. package/dist/index.es168.js.map +1 -0
  518. package/dist/index.es169.js +130 -0
  519. package/dist/index.es169.js.map +1 -0
  520. package/dist/index.es17.js +90 -94
  521. package/dist/index.es17.js.map +1 -1
  522. package/dist/index.es170.js +132 -0
  523. package/dist/index.es170.js.map +1 -0
  524. package/dist/index.es171.js +72 -0
  525. package/dist/index.es171.js.map +1 -0
  526. package/dist/index.es172.js +12 -0
  527. package/dist/index.es172.js.map +1 -0
  528. package/dist/index.es173.js +17 -0
  529. package/dist/index.es173.js.map +1 -0
  530. package/dist/index.es174.js +65 -0
  531. package/dist/index.es174.js.map +1 -0
  532. package/dist/index.es175.js +68 -0
  533. package/dist/index.es175.js.map +1 -0
  534. package/dist/index.es176.js +7 -0
  535. package/dist/index.es176.js.map +1 -0
  536. package/dist/index.es177.js +26 -0
  537. package/dist/index.es177.js.map +1 -0
  538. package/dist/index.es178.js +16 -0
  539. package/dist/index.es178.js.map +1 -0
  540. package/dist/index.es179.js +31 -0
  541. package/dist/index.es179.js.map +1 -0
  542. package/dist/index.es18.js +3 -63
  543. package/dist/index.es18.js.map +1 -1
  544. package/dist/index.es180.js +8 -0
  545. package/dist/index.es180.js.map +1 -0
  546. package/dist/index.es181.js +26 -0
  547. package/dist/index.es181.js.map +1 -0
  548. package/dist/index.es19.js +22 -10
  549. package/dist/index.es19.js.map +1 -1
  550. package/dist/index.es2.js +156 -115
  551. package/dist/index.es2.js.map +1 -1
  552. package/dist/index.es20.js +63 -20
  553. package/dist/index.es20.js.map +1 -1
  554. package/dist/index.es21.js +96 -389
  555. package/dist/index.es21.js.map +1 -1
  556. package/dist/index.es22.js +137 -5
  557. package/dist/index.es22.js.map +1 -1
  558. package/dist/index.es23.js +64 -13
  559. package/dist/index.es23.js.map +1 -1
  560. package/dist/index.es24.js +23 -16
  561. package/dist/index.es24.js.map +1 -1
  562. package/dist/index.es25.js +428 -13
  563. package/dist/index.es25.js.map +1 -1
  564. package/dist/index.es26.js +7 -13
  565. package/dist/index.es26.js.map +1 -1
  566. package/dist/index.es27.js +9 -3
  567. package/dist/index.es27.js.map +1 -1
  568. package/dist/index.es28.js +13 -19
  569. package/dist/index.es28.js.map +1 -1
  570. package/dist/index.es29.js +19 -23
  571. package/dist/index.es29.js.map +1 -1
  572. package/dist/index.es3.js +129 -340
  573. package/dist/index.es3.js.map +1 -1
  574. package/dist/index.es30.js +4 -7
  575. package/dist/index.es30.js.map +1 -1
  576. package/dist/index.es31.js +4 -17
  577. package/dist/index.es31.js.map +1 -1
  578. package/dist/index.es32.js +17 -15
  579. package/dist/index.es32.js.map +1 -1
  580. package/dist/index.es33.js +13 -2475
  581. package/dist/index.es33.js.map +1 -1
  582. package/dist/index.es34.js +2472 -36
  583. package/dist/index.es34.js.map +1 -1
  584. package/dist/index.es35.js +41 -33
  585. package/dist/index.es35.js.map +1 -1
  586. package/dist/index.es36.js +32 -115
  587. package/dist/index.es36.js.map +1 -1
  588. package/dist/index.es37.js +95 -811
  589. package/dist/index.es37.js.map +1 -1
  590. package/dist/index.es38.js +832 -10
  591. package/dist/index.es38.js.map +1 -1
  592. package/dist/index.es39.js +3 -3
  593. package/dist/index.es39.js.map +1 -1
  594. package/dist/index.es4.js +92 -70
  595. package/dist/index.es4.js.map +1 -1
  596. package/dist/index.es40.js +3 -3
  597. package/dist/index.es40.js.map +1 -1
  598. package/dist/index.es41.js +10 -114
  599. package/dist/index.es41.js.map +1 -1
  600. package/dist/index.es42.js +112 -54
  601. package/dist/index.es42.js.map +1 -1
  602. package/dist/index.es43.js +55 -23
  603. package/dist/index.es43.js.map +1 -1
  604. package/dist/index.es44.js +22 -43
  605. package/dist/index.es44.js.map +1 -1
  606. package/dist/index.es45.js +41 -82
  607. package/dist/index.es45.js.map +1 -1
  608. package/dist/index.es46.js +82 -56
  609. package/dist/index.es46.js.map +1 -1
  610. package/dist/index.es47.js +57 -120
  611. package/dist/index.es47.js.map +1 -1
  612. package/dist/index.es48.js +122 -62
  613. package/dist/index.es48.js.map +1 -1
  614. package/dist/index.es49.js +63 -21
  615. package/dist/index.es49.js.map +1 -1
  616. package/dist/index.es5.js +225 -79
  617. package/dist/index.es5.js.map +1 -1
  618. package/dist/index.es50.js +15 -3
  619. package/dist/index.es50.js.map +1 -1
  620. package/dist/index.es51.js +3 -32
  621. package/dist/index.es51.js.map +1 -1
  622. package/dist/index.es52.js +32 -12
  623. package/dist/index.es52.js.map +1 -1
  624. package/dist/index.es53.js +18 -8
  625. package/dist/index.es53.js.map +1 -1
  626. package/dist/index.es54.js +5 -5
  627. package/dist/index.es54.js.map +1 -1
  628. package/dist/index.es55.js +2 -255
  629. package/dist/index.es55.js.map +1 -1
  630. package/dist/index.es56.js +1756 -22
  631. package/dist/index.es56.js.map +1 -1
  632. package/dist/index.es57.js +5 -7
  633. package/dist/index.es57.js.map +1 -1
  634. package/dist/index.es58.js +5 -27
  635. package/dist/index.es58.js.map +1 -1
  636. package/dist/index.es59.js +5 -66
  637. package/dist/index.es59.js.map +1 -1
  638. package/dist/index.es6.js +117 -57
  639. package/dist/index.es6.js.map +1 -1
  640. package/dist/index.es60.js +5 -30
  641. package/dist/index.es60.js.map +1 -1
  642. package/dist/index.es61.js +5 -6
  643. package/dist/index.es61.js.map +1 -1
  644. package/dist/index.es62.js +5 -25
  645. package/dist/index.es62.js.map +1 -1
  646. package/dist/index.es63.js +5 -33
  647. package/dist/index.es63.js.map +1 -1
  648. package/dist/index.es64.js +5 -4
  649. package/dist/index.es64.js.map +1 -1
  650. package/dist/index.es65.js +5 -46
  651. package/dist/index.es65.js.map +1 -1
  652. package/dist/index.es66.js +5 -8
  653. package/dist/index.es66.js.map +1 -1
  654. package/dist/index.es67.js +5 -125
  655. package/dist/index.es67.js.map +1 -1
  656. package/dist/index.es68.js +5 -15
  657. package/dist/index.es68.js.map +1 -1
  658. package/dist/index.es69.js +5 -134
  659. package/dist/index.es69.js.map +1 -1
  660. package/dist/index.es7.js +345 -48
  661. package/dist/index.es7.js.map +1 -1
  662. package/dist/index.es70.js +5 -11
  663. package/dist/index.es70.js.map +1 -1
  664. package/dist/index.es71.js +4 -218
  665. package/dist/index.es71.js.map +1 -1
  666. package/dist/index.es72.js +2 -13
  667. package/dist/index.es72.js.map +1 -1
  668. package/dist/index.es73.js +6 -8
  669. package/dist/index.es73.js.map +1 -1
  670. package/dist/index.es74.js +5 -4
  671. package/dist/index.es74.js.map +1 -1
  672. package/dist/index.es75.js +5 -28
  673. package/dist/index.es75.js.map +1 -1
  674. package/dist/index.es76.js +5 -50
  675. package/dist/index.es76.js.map +1 -1
  676. package/dist/index.es77.js +4 -11
  677. package/dist/index.es77.js.map +1 -1
  678. package/dist/index.es78.js +2 -12
  679. package/dist/index.es78.js.map +1 -1
  680. package/dist/index.es79.js +6 -205
  681. package/dist/index.es79.js.map +1 -1
  682. package/dist/index.es8.js +73 -163
  683. package/dist/index.es8.js.map +1 -1
  684. package/dist/index.es80.js +5 -22
  685. package/dist/index.es80.js.map +1 -1
  686. package/dist/index.es81.js +5 -393
  687. package/dist/index.es81.js.map +1 -1
  688. package/dist/index.es82.js +5 -68
  689. package/dist/index.es82.js.map +1 -1
  690. package/dist/index.es83.js +5 -25
  691. package/dist/index.es83.js.map +1 -1
  692. package/dist/index.es84.js +5 -29
  693. package/dist/index.es84.js.map +1 -1
  694. package/dist/index.es85.js +5 -5
  695. package/dist/index.es85.js.map +1 -1
  696. package/dist/index.es86.js +5 -5
  697. package/dist/index.es86.js.map +1 -1
  698. package/dist/index.es87.js +5 -3
  699. package/dist/index.es87.js.map +1 -1
  700. package/dist/index.es88.js +6 -24
  701. package/dist/index.es88.js.map +1 -1
  702. package/dist/index.es89.js +2 -110
  703. package/dist/index.es89.js.map +1 -1
  704. package/dist/index.es9.js +131 -3
  705. package/dist/index.es9.js.map +1 -1
  706. package/dist/index.es90.js +6 -16
  707. package/dist/index.es90.js.map +1 -1
  708. package/dist/index.es91.js +6 -523
  709. package/dist/index.es91.js.map +1 -1
  710. package/dist/index.es92.js +6 -127
  711. package/dist/index.es92.js.map +1 -1
  712. package/dist/index.es93.js +5 -129
  713. package/dist/index.es93.js.map +1 -1
  714. package/dist/index.es94.js +5 -65
  715. package/dist/index.es94.js.map +1 -1
  716. package/dist/index.es95.js +5 -69
  717. package/dist/index.es95.js.map +1 -1
  718. package/dist/index.es96.js +5 -9
  719. package/dist/index.es96.js.map +1 -1
  720. package/dist/index.es97.js +5 -14
  721. package/dist/index.es97.js.map +1 -1
  722. package/dist/index.es98.js +5 -62
  723. package/dist/index.es98.js.map +1 -1
  724. package/dist/index.es99.js +4 -6
  725. package/dist/index.es99.js.map +1 -1
  726. package/dist/packages/builder/add-dialog.d.ts +5 -5
  727. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),N=require("./index.cjs11.js"),R=require("./index.cjs44.js"),m=require("./index.cjs41.js"),E=require("./index.cjs28.js"),L=require("./index.cjs15.js"),a=require("./index.cjs14.js"),k=require("./index.cjs13.js"),v=require("./index.cjs20.js"),h=require("./index.cjs10.js"),w=require("./index.cjs46.js"),M=require("./index.cjs4.js"),P=require("./index.cjs42.js"),$=require("./index.cjs43.js"),o=require("zod"),B=require("react-hook-form"),t=require("./index.cjs45.js"),d=o.z.enum(["string","number","integer","boolean","object","array","null"]),b=o.z.object({key:o.z.string().trim().min(1,{message:"Key must be at least 1 character long"}),property:o.z.object({title:o.z.string().trim().min(1,{message:"Title must be at least 1 character long"}),type:d.or(o.z.array(d)),description:o.z.string().optional(),enum:o.z.array(o.z.string().or(o.z.number()).or(o.z.null()).or(o.z.boolean()).or(o.z.record(o.z.string(),o.z.any()))).optional(),items:o.z.object({type:d.or(o.z.array(d))}).or(o.z.array(o.z.object({type:d.or(o.z.array(d))}).or(o.z.boolean()))).or(o.z.boolean()).optional()}),required:o.z.boolean().default(!1),constraints:o.z.array(o.z.custom(()=>({name:o.z.string().trim().min(1),value:o.z.any()}))).optional()});function _({open:F,onOpenChange:C,onSubmit:S}){const n=B.useForm({resolver:R.zodResolver(b),defaultValues:{key:"",property:{title:""}}}),p=n.watch("constraints"),y=n.watch("property"),z=n.watch("property.enum"),I=n.watch("property.type"),{getConstraintDefinitionsForType:f,getRendererForConstraint:q,validateConstraintValue:D}=M.useConstraints(),A=r=>{const{key:s,property:l,required:c,constraints:i}=r,u={...l,...i?.reduce((j,g)=>({...j,[g.name]:g.value}),{})};S(s,u,c),n.reset()},V=(r,s)=>{const l=h.a(p),c=l?.[r];if(!c){n.setError(`constraints.${r}`,{message:"The constraint was not found",type:"constraint_not_found"});return}const i=D(c.name,s);if(i.status==="error"){let u=i.message;i.code==="invalid"&&(u=`${u}: ${i.error?.map(j=>j.message).join(", ")}`),n.setError(`constraints.${r}`,{type:i.code,message:u});return}c.value=s,n.setValue("constraints",l),n.clearErrors(`constraints.${r}`)},T=r=>{if(!p)return;const l=h.a(p).filter(c=>c.name!==r);n.setValue("constraints",l)},x=f(typeof y?.type=="string"?y.type:"");return e.jsx(m.Dialog,{open:F,onOpenChange:C,children:e.jsxs(m.DialogContent,{"data-testid":"add-property-dialog",children:[e.jsxs(m.DialogHeader,{children:[e.jsx(m.DialogTitle,{children:"Add"}),e.jsx(m.DialogDescription,{children:"Required property values and constraints"})]}),e.jsx(t.Form,{...n,children:e.jsxs("form",{onSubmit:r=>{r.stopPropagation(),r.preventDefault(),n.handleSubmit(A)(r)},className:"space-y-4","data-testid":"add-property-form",id:"add-property-form",children:[e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"key",render:({field:r})=>{const{onChange:s,...l}=r;return e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Property Key"}),e.jsx(t.FormControl,{children:e.jsx(v.DebouncedInput,{...l,onDebounce:c=>s(c)})}),e.jsx(t.FormMessage,{})]})}})}),e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"property.title",render:({field:r})=>{const{onChange:s,...l}=r;return e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Property Title"}),e.jsx(t.FormControl,{children:e.jsx(v.DebouncedInput,{...l,onDebounce:c=>s(c)})}),e.jsx(t.FormMessage,{})]})}})}),e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"property.type",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Type"}),e.jsx(t.FormControl,{children:e.jsxs(a.Select,{value:Array.isArray(r.value)?void 0:r.value,onValueChange:s=>{s==="enum"?n.setValue("property.enum",[]):n.setValue("property.enum",void 0),r.value==="array"&&s!=="array"&&(n.clearErrors("property.items"),n.setValue("property.items",void 0)),r.onChange(s)},children:[e.jsx(a.SelectTrigger,{className:"w-full","aria-label":"Select type",children:e.jsx(a.SelectValue,{})}),e.jsxs(a.SelectContent,{children:[e.jsx(a.SelectItem,{value:"string",children:"string"}),e.jsx(a.SelectItem,{value:"number",children:"number"}),e.jsx(a.SelectItem,{value:"integer",children:"integer"}),e.jsx(a.SelectItem,{value:"boolean",children:"boolean"}),e.jsx(a.SelectItem,{value:"object",children:"object"}),e.jsx(a.SelectItem,{value:"array",children:"array"}),e.jsx(a.SelectItem,{value:"null",children:"null"})]})]})}),e.jsx(t.FormMessage,{})]})})}),I==="array"&&e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"property.items.type",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Items of type"}),e.jsx(t.FormControl,{children:e.jsxs(a.Select,{value:Array.isArray(r.value)?void 0:r.value,onValueChange:s=>{n.clearErrors("property.items.type"),n.setValue("property.items.type",s)},children:[e.jsx(a.SelectTrigger,{className:"w-full","aria-label":"Select items of type",children:e.jsx(a.SelectValue,{placeholder:"Select item type"})}),e.jsxs(a.SelectContent,{children:[e.jsx(a.SelectItem,{value:"string",children:"string"}),e.jsx(a.SelectItem,{value:"number",children:"number"}),e.jsx(a.SelectItem,{value:"integer",children:"integer"}),e.jsx(a.SelectItem,{value:"boolean",children:"boolean"}),e.jsx(a.SelectItem,{value:"object",children:"object"}),e.jsx(a.SelectItem,{value:"array",children:"array"}),e.jsx(a.SelectItem,{value:"null",children:"null"})]})]})}),e.jsx(t.FormMessage,{})]})})}),e.jsx("div",{className:"flex items-center space-x-2",children:e.jsx(t.FormField,{control:n.control,name:"required",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormControl,{children:e.jsx(k.Switch,{checked:r.value,onCheckedChange:s=>r.onChange(s)})}),e.jsx(t.FormLabel,{children:"Required"}),e.jsx(t.FormMessage,{})]})})}),e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"property.description",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Description"}),e.jsx(t.FormControl,{children:e.jsx(E.Input,{...r})}),e.jsx(t.FormMessage,{})]})})}),z?e.jsx(t.FormField,{control:n.control,name:"property.enum",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Enum"}),e.jsx(t.FormControl,{children:e.jsx(w.default,{values:r.value?.filter(s=>typeof s=="string")??[],onAddValue:s=>{const l=[];r.value&&l.push(...r.value),l.push(s),r.onChange(l)},onRemoveValue:s=>{const l=h.a(r.value??[]);l.splice(s,1),r.onChange(l)}})}),e.jsx(t.FormMessage,{})]})}):null,x.length?e.jsxs("div",{className:"space-y-2",children:[e.jsx(L.Label,{children:"Constraints"}),e.jsx(P.default,{addedConstraints:p??[],availableDefinitions:x,onAdd:r=>{n.setValue("constraints",r)}}),e.jsx($.Separator,{}),p?.map((r,s)=>{const l=q(r.name);if(!l)return null;const c=n.formState.errors.constraints?.[s];let i;return c&&(i={code:c?.type??"INVALID",message:c.message??"An error occurred"}),e.jsx(l,{constraintName:r.name,value:r.value,onConstraintChange:u=>{V(s,u)},onRemoveConstraint:()=>{T(r.name)},error:i},r.name)})]}):null,e.jsx(m.DialogFooter,{children:e.jsx(N.Button,{type:"submit",form:"add-property-form",children:"Add Property"})})]})})]})})}exports.AddFormSchema=b;exports.AddPropertyDialog=_;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),m=require("react"),S=require("./index.cjs14.js"),c=require("./index.cjs42.js"),F=require("./index.cjs12.js"),p=require("./index.cjs19.js"),R=require("./index.cjs8.js"),V=require("./index.cjs43.js"),$=require("./index.cjs44.js"),A=require("./index.cjs25.js"),E=require("react-hook-form"),N=require("./index.cjs45.js"),k=require("./index.cjs46.js"),w=A.AddFormSchema.pick({constraints:!0,property:!0});function B({open:f,onOpenChange:h,onSubmit:g,property:i,propertyKey:y}){const r=E.useForm({resolver:N.zodResolver(w),defaultValues:{property:i}}),l=r.watch("constraints"),{getConstraintDefinitionsForType:C,getRendererForConstraint:j,validateConstraintValue:v}=R.useConstraints(),D=e=>{const{constraints:n}=e,a={...n?.reduce((s,o)=>({...s,[o.name]:o.value}),{})};g([y,a]),r.reset()},q=(e,n)=>{const a=p.a(l),s=a?.[e];if(!s){r.setError(`constraints.${e}`,{message:"The constraint was not found",type:"constraint_not_found"});return}const o=v(s.name,n);if(o.status==="error"){let u=o.message;o.code==="invalid"&&(u=`${u}: ${o.error?.map(b=>b.message).join(", ")}`),r.setError(`constraints.${e}`,{type:o.code,message:u});return}s.value=n,r.setValue("constraints",a),r.clearErrors(`constraints.${e}`)},x=e=>{if(!l)return;const a=p.a(l).filter(s=>s.name!==e);r.setValue("constraints",a)},d=m.useMemo(()=>C(typeof i?.type=="string"?i.type:""),[i.type]);return m.useEffect(()=>{const e=[];for(const n of d)n.name in i&&e.push({name:n.name,value:i[n.name]});r.setValue("constraints",e)},[d]),t.jsx(c.Dialog,{open:f,onOpenChange:h,children:t.jsxs(c.DialogContent,{children:[t.jsxs(c.DialogHeader,{children:[t.jsx(c.DialogTitle,{children:"Edit"}),t.jsx(c.DialogDescription,{children:"Constraints and other properties"})]}),t.jsx(k.Form,{...r,children:t.jsxs("form",{onSubmit:r.handleSubmit(D),className:"space-y-4","data-testid":"edit-property-form",children:[d.length?t.jsxs("div",{className:"space-y-2",children:[t.jsx(F.Label,{children:"Constraints"}),t.jsx(V.default,{addedConstraints:l??[],availableDefinitions:d,onAdd:e=>{r.setValue("constraints",e)}}),t.jsx($.Separator,{}),l?.map((e,n)=>{const a=j(e.name);if(!a)return null;const s=r.formState.errors.constraints?.[n];let o;return s&&(o={code:s?.type??"INVALID",message:s.message??"An error occurred"}),t.jsx(a,{constraintName:e.name,value:e.value,onConstraintChange:u=>{q(n,u)},onRemoveConstraint:()=>{x(e.name)},error:o},e.name)})]}):null,t.jsx(c.DialogFooter,{children:t.jsx(S.Button,{type:"submit",children:"Save"})})]})})]})})}exports.EditPropertyDialog=B;
2
2
  //# sourceMappingURL=index.cjs21.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs21.js","sources":["../src/packages/builder/add-dialog.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\n\nimport {\n Dialog,\n DialogContent,\n DialogHeader,\n DialogTitle,\n DialogFooter,\n DialogDescription,\n} from \"@/components/ui/dialog\";\nimport { Input } from \"@/components/ui/input\";\nimport { Label } from \"@/components/ui/label\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\nimport { Switch } from \"@/components/ui/switch\";\nimport type { JSONSchema7, JSONSchema7TypeName } from \"json-schema\";\nimport { DebouncedInput } from \"@/components/depounced-input\";\nimport { clone } from \"remeda\";\nimport MultiInput from \"@/components/multi-input\";\nimport { Constraint, useConstraints } from \"@/packages/constraints/context\";\nimport ConstraintsAdd from \"@/packages/constraints/constraint-add\";\nimport { Separator } from \"@/components/ui/separator\";\nimport { z } from \"zod\";\nimport { useForm } from \"react-hook-form\";\nimport {\n Form,\n FormControl,\n FormField,\n FormItem,\n FormLabel,\n FormMessage,\n} from \"@/components/ui/form\";\nimport type { OperationError } from \"./shared-types\";\n\nexport interface AddPropertyDialogProps {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n onSubmit: (key: string, property: JSONSchema7, required: boolean) => void;\n}\n\nconst zodJsonTypes = z.enum([\n \"string\",\n \"number\",\n \"integer\",\n \"boolean\",\n \"object\",\n \"array\",\n \"null\",\n]);\n\nexport const AddFormSchema = z.object({\n key: z\n .string()\n .trim()\n .min(1, { message: \"Key must be at least 1 character long\" }),\n property: z.object({\n title: z\n .string()\n .trim()\n .min(1, { message: \"Title must be at least 1 character long\" }),\n type: zodJsonTypes.or(z.array(zodJsonTypes)),\n description: z.string().optional(),\n enum: z\n .array(\n z\n .string()\n .or(z.number())\n .or(z.null())\n .or(z.boolean())\n .or(z.record(z.string(), z.any())),\n )\n .optional(),\n items: z\n .object({\n type: zodJsonTypes.or(z.array(zodJsonTypes)),\n })\n //only to satisfy the other types but we actually don't handle it\n .or(\n z.array(\n z\n .object({ type: zodJsonTypes.or(z.array(zodJsonTypes)) })\n .or(z.boolean()),\n ),\n )\n .or(z.boolean())\n .optional(),\n }),\n required: z.boolean().default(false),\n constraints: z\n .array(\n z.custom<Constraint>(() => ({\n name: z.string().trim().min(1),\n value: z.any(),\n })),\n )\n .optional(),\n});\n\n/**\n * Handles adding a property to a parent JSON schema's \"properties\".\n * This means you are working under a child property.\n */\nexport function AddPropertyDialog({\n open,\n onOpenChange,\n onSubmit,\n}: AddPropertyDialogProps) {\n const form = useForm<z.infer<typeof AddFormSchema>>({\n resolver: zodResolver(AddFormSchema),\n defaultValues: {\n key: \"\",\n property: {\n title: \"\",\n },\n },\n });\n\n const currentConstraints = form.watch(\"constraints\");\n const currentProperty = form.watch(\"property\");\n const currentEnum = form.watch(\"property.enum\");\n const currentType = form.watch(\"property.type\");\n\n const {\n getConstraintDefinitionsForType,\n getRendererForConstraint,\n validateConstraintValue,\n } = useConstraints();\n\n const handleSubmit = (data: z.infer<typeof AddFormSchema>) => {\n const { key, property, required, constraints } = data;\n const propertyToSubmit: JSONSchema7 = {\n ...property,\n ...constraints?.reduce((acc, constraint) => {\n return {\n ...acc,\n [constraint.name]: constraint.value,\n } satisfies JSONSchema7;\n }, {}),\n };\n onSubmit(key, propertyToSubmit, required);\n form.reset();\n };\n\n const handleConstraintChange = (\n index: number,\n newVal: Constraint[\"value\"],\n ) => {\n const constraintsCopy = clone(currentConstraints);\n\n const constraintToChange = constraintsCopy?.[index];\n\n if (!constraintToChange) {\n form.setError(`constraints.${index}`, {\n message: \"The constraint was not found\",\n type: \"constraint_not_found\",\n });\n return;\n }\n\n const validationResult = validateConstraintValue(\n constraintToChange.name,\n newVal,\n );\n\n if (validationResult.status === \"error\") {\n let message = validationResult.message;\n if (validationResult.code === \"invalid\") {\n message = `${message}: ${validationResult.error?.map((i) => i.message).join(\", \")}`;\n }\n form.setError(`constraints.${index}`, {\n type: validationResult.code,\n message,\n });\n return;\n }\n\n //edit reference\n constraintToChange.value = newVal;\n form.setValue(\"constraints\", constraintsCopy);\n form.clearErrors(`constraints.${index}`);\n };\n\n const handleRemoveConstraint = (constraintName: Constraint[\"name\"]) => {\n if (!currentConstraints) return;\n const copy = clone(currentConstraints);\n const newConstraints = copy.filter((c) => c.name !== constraintName);\n form.setValue(\"constraints\", newConstraints);\n };\n\n const availableDefinitions = getConstraintDefinitionsForType(\n typeof currentProperty?.type === \"string\" ? currentProperty.type : \"\",\n );\n\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n <DialogContent data-testid=\"add-property-dialog\">\n <DialogHeader>\n <DialogTitle>Add</DialogTitle>\n <DialogDescription>\n Required property values and constraints\n </DialogDescription>\n </DialogHeader>\n <Form {...form}>\n <form\n onSubmit={(e) => {\n e.stopPropagation();\n e.preventDefault();\n void form.handleSubmit(handleSubmit)(e);\n }}\n className=\"space-y-4\"\n data-testid=\"add-property-form\"\n id=\"add-property-form\"\n >\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"key\"\n render={({ field }) => {\n // Pull the onChange since debounced input should\n // be calling onDebounce instead\n const { onChange, ...rest } = field;\n\n return (\n <FormItem>\n <FormLabel>Property Key</FormLabel>\n <FormControl>\n <DebouncedInput\n {...rest}\n onDebounce={(newVal) => onChange(newVal)}\n />\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"property.title\"\n render={({ field }) => {\n const { onChange, ...rest } = field;\n return (\n <FormItem>\n <FormLabel>Property Title</FormLabel>\n <FormControl>\n <DebouncedInput\n {...rest}\n onDebounce={(newVal) => onChange(newVal)}\n />\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"property.type\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormLabel>Type</FormLabel>\n <FormControl>\n <Select\n value={\n !Array.isArray(field.value)\n ? field.value\n : undefined\n }\n onValueChange={(newVal) => {\n if (newVal === \"enum\") {\n form.setValue(\"property.enum\", []);\n } else {\n form.setValue(\"property.enum\", undefined);\n }\n\n // If changing away from array, clear any array item errors\n if (field.value === \"array\" && newVal !== \"array\") {\n form.clearErrors(\"property.items\");\n form.setValue(\"property.items\", undefined);\n }\n\n field.onChange(newVal);\n }}\n >\n <SelectTrigger\n className=\"w-full\"\n aria-label=\"Select type\"\n >\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n <SelectItem\n value={\"string\" satisfies JSONSchema7TypeName}\n >\n string\n </SelectItem>\n <SelectItem\n value={\"number\" satisfies JSONSchema7TypeName}\n >\n number\n </SelectItem>\n <SelectItem\n value={\"integer\" satisfies JSONSchema7TypeName}\n >\n integer\n </SelectItem>\n <SelectItem\n value={\"boolean\" satisfies JSONSchema7TypeName}\n >\n boolean\n </SelectItem>\n <SelectItem\n value={\"object\" satisfies JSONSchema7TypeName}\n >\n object\n </SelectItem>\n <SelectItem\n value={\"array\" satisfies JSONSchema7TypeName}\n >\n array\n </SelectItem>\n <SelectItem\n value={\"null\" satisfies JSONSchema7TypeName}\n >\n null\n </SelectItem>\n </SelectContent>\n </Select>\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n\n {/* Array Items Type selector */}\n {currentType === \"array\" && (\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"property.items.type\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormLabel>Items of type</FormLabel>\n <FormControl>\n <Select\n value={\n !Array.isArray(field.value)\n ? field.value\n : undefined\n }\n onValueChange={(newVal) => {\n form.clearErrors(\"property.items.type\");\n form.setValue(\n \"property.items.type\",\n newVal as JSONSchema7TypeName,\n );\n }}\n >\n <SelectTrigger\n className=\"w-full\"\n aria-label=\"Select items of type\"\n >\n <SelectValue placeholder=\"Select item type\" />\n </SelectTrigger>\n <SelectContent>\n <SelectItem\n value={\"string\" satisfies JSONSchema7TypeName}\n >\n string\n </SelectItem>\n <SelectItem\n value={\"number\" satisfies JSONSchema7TypeName}\n >\n number\n </SelectItem>\n <SelectItem\n value={\"integer\" satisfies JSONSchema7TypeName}\n >\n integer\n </SelectItem>\n <SelectItem\n value={\"boolean\" satisfies JSONSchema7TypeName}\n >\n boolean\n </SelectItem>\n <SelectItem\n value={\"object\" satisfies JSONSchema7TypeName}\n >\n object\n </SelectItem>\n <SelectItem\n value={\"array\" satisfies JSONSchema7TypeName}\n >\n array\n </SelectItem>\n <SelectItem\n value={\"null\" satisfies JSONSchema7TypeName}\n >\n null\n </SelectItem>\n </SelectContent>\n </Select>\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n )}\n\n <div className=\"flex items-center space-x-2\">\n <FormField\n control={form.control}\n name=\"required\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormControl>\n <Switch\n checked={field.value}\n onCheckedChange={(checked) => field.onChange(checked)}\n />\n </FormControl>\n <FormLabel>Required</FormLabel>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"property.description\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormLabel>Description</FormLabel>\n <FormControl>\n <Input {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n {currentEnum ? (\n <FormField\n control={form.control}\n name=\"property.enum\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormLabel>Enum</FormLabel>\n <FormControl>\n <MultiInput\n values={\n field.value?.filter((i) => typeof i === \"string\") ??\n []\n }\n onAddValue={(newVal) => {\n const updates = [];\n if (field.value) {\n updates.push(...field.value);\n }\n updates.push(newVal);\n field.onChange(updates);\n }}\n onRemoveValue={(index) => {\n const newEnums = clone(field.value ?? []);\n newEnums.splice(index, 1);\n field.onChange(newEnums);\n }}\n />\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n ) : null}\n\n {availableDefinitions.length ? (\n <div className=\"space-y-2\">\n <Label>Constraints</Label>\n <ConstraintsAdd\n addedConstraints={currentConstraints ?? []}\n availableDefinitions={availableDefinitions}\n onAdd={(newConstraints) => {\n form.setValue(\"constraints\", newConstraints);\n }}\n />\n <Separator />\n {currentConstraints?.map((constraint, i) => {\n const Renderer = getRendererForConstraint(constraint.name);\n if (!Renderer) return null;\n\n const error = form.formState.errors.constraints?.[i];\n let mappedError: OperationError | undefined;\n\n if (error) {\n mappedError = {\n code: error?.type ?? \"INVALID\",\n message: error.message ?? \"An error occurred\",\n };\n }\n\n return (\n <Renderer\n key={constraint.name}\n constraintName={constraint.name}\n value={constraint.value}\n onConstraintChange={(newVal) => {\n handleConstraintChange(i, newVal);\n }}\n onRemoveConstraint={() => {\n handleRemoveConstraint(constraint.name);\n }}\n error={mappedError}\n />\n );\n })}\n </div>\n ) : null}\n\n <DialogFooter>\n <Button type=\"submit\" form=\"add-property-form\">\n Add Property\n </Button>\n </DialogFooter>\n </form>\n </Form>\n </DialogContent>\n </Dialog>\n );\n}\n"],"names":["zodJsonTypes","z","AddFormSchema","AddPropertyDialog","open","onOpenChange","onSubmit","form","useForm","zodResolver","currentConstraints","currentProperty","currentEnum","currentType","getConstraintDefinitionsForType","getRendererForConstraint","validateConstraintValue","useConstraints","handleSubmit","data","key","property","required","constraints","propertyToSubmit","acc","constraint","handleConstraintChange","index","newVal","constraintsCopy","clone","constraintToChange","validationResult","message","i","handleRemoveConstraint","constraintName","newConstraints","availableDefinitions","Dialog","jsxs","DialogContent","DialogHeader","jsx","DialogTitle","DialogDescription","Form","e","FormField","field","onChange","rest","FormItem","FormLabel","FormControl","DebouncedInput","FormMessage","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","Switch","checked","Input","MultiInput","updates","newEnums","Label","ConstraintsAdd","Separator","Renderer","error","mappedError","DialogFooter","Button"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs21.js","sources":["../src/packages/builder/edit-dialog.tsx"],"sourcesContent":["import { useEffect, useMemo } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n Dialog,\n DialogContent,\n DialogHeader,\n DialogTitle,\n DialogFooter,\n DialogDescription,\n} from \"@/components/ui/dialog\";\nimport { Label } from \"@/components/ui/label\";\n\nimport type { JSONSchema7 } from \"json-schema\";\nimport { clone } from \"remeda\";\nimport { Constraint, useConstraints } from \"@/packages/constraints/context\";\nimport ConstraintsAdd from \"@/packages/constraints/constraint-add\";\nimport { Separator } from \"@/components/ui/separator\";\nimport { z } from \"zod\";\nimport { AddFormSchema } from \"./add-dialog\";\nimport { useForm } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport { OperationError } from \"./shared-types\";\nimport { Form } from \"@/components/ui/form\";\nimport { useSchema } from \"./context\";\n\nexport interface EditPropertyDialogProps {\n property: JSONSchema7;\n propertyKey: string;\n open: boolean;\n onOpenChange: (open: boolean) => void;\n onSubmit: (\n params: Parameters<ReturnType<typeof useSchema>[\"handlePropertyChange\"]>,\n ) => void;\n}\n\nconst EditFormSchema = AddFormSchema.pick({\n constraints: true,\n property: true,\n});\n\n/**\n * Handles editing a constraints and other properties of a JSON schema property\n * that aren't shown in the main UI.\n */\nexport function EditPropertyDialog({\n open,\n onOpenChange,\n onSubmit,\n property: propertyToEdit,\n propertyKey,\n}: EditPropertyDialogProps) {\n const form = useForm<z.infer<typeof EditFormSchema>>({\n resolver: zodResolver(EditFormSchema),\n defaultValues: {\n property: propertyToEdit,\n },\n });\n\n const currentConstraints = form.watch(\"constraints\");\n\n const {\n getConstraintDefinitionsForType,\n getRendererForConstraint,\n validateConstraintValue,\n } = useConstraints();\n\n const handleSubmit = (data: z.infer<typeof EditFormSchema>) => {\n const { constraints } = data;\n const propertyUpdatesOnly: JSONSchema7 = {\n ...constraints?.reduce((acc, constraint) => {\n return {\n ...acc,\n [constraint.name]: constraint.value,\n } satisfies JSONSchema7;\n }, {}),\n };\n onSubmit([propertyKey, propertyUpdatesOnly]);\n form.reset();\n };\n\n const handleConstraintChange = (\n index: number,\n newVal: Constraint[\"value\"],\n ) => {\n const constraintsCopy = clone(currentConstraints);\n\n const constraintToChange = constraintsCopy?.[index];\n\n if (!constraintToChange) {\n form.setError(`constraints.${index}`, {\n message: \"The constraint was not found\",\n type: \"constraint_not_found\",\n });\n return;\n }\n\n const validationResult = validateConstraintValue(\n constraintToChange.name,\n newVal,\n );\n\n if (validationResult.status === \"error\") {\n let message = validationResult.message;\n if (validationResult.code === \"invalid\") {\n message = `${message}: ${validationResult.error?.map((i) => i.message).join(\", \")}`;\n }\n form.setError(`constraints.${index}`, {\n type: validationResult.code,\n message,\n });\n return;\n }\n\n //edit reference\n constraintToChange.value = newVal;\n form.setValue(\"constraints\", constraintsCopy);\n form.clearErrors(`constraints.${index}`);\n };\n\n const handleRemoveConstraint = (constraintName: Constraint[\"name\"]) => {\n if (!currentConstraints) return;\n const copy = clone(currentConstraints);\n const newConstraints = copy.filter((c) => c.name !== constraintName);\n form.setValue(\"constraints\", newConstraints);\n };\n\n const availableDefinitions = useMemo(() => {\n return getConstraintDefinitionsForType(\n typeof propertyToEdit?.type === \"string\" ? propertyToEdit.type : \"\",\n );\n }, [propertyToEdit.type]);\n\n useEffect(() => {\n //get the current constraints from the property based on the available definitions\n const newConstraints: Constraint[] = [];\n for (const constraintDef of availableDefinitions) {\n if (constraintDef.name in propertyToEdit) {\n newConstraints.push({\n name: constraintDef.name,\n value: propertyToEdit[constraintDef.name],\n });\n }\n }\n form.setValue(\"constraints\", newConstraints);\n }, [availableDefinitions]);\n\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n <DialogContent>\n <DialogHeader>\n <DialogTitle>Edit</DialogTitle>\n <DialogDescription>\n Constraints and other properties\n </DialogDescription>\n </DialogHeader>\n <Form {...form}>\n <form\n onSubmit={form.handleSubmit(handleSubmit)}\n className=\"space-y-4\"\n data-testid=\"edit-property-form\"\n >\n {availableDefinitions.length ? (\n <div className=\"space-y-2\">\n <Label>Constraints</Label>\n <ConstraintsAdd\n addedConstraints={currentConstraints ?? []}\n availableDefinitions={availableDefinitions}\n onAdd={(newConstraints) => {\n form.setValue(\"constraints\", newConstraints);\n }}\n />\n <Separator />\n {currentConstraints?.map((constraint, i) => {\n const Renderer = getRendererForConstraint(constraint.name);\n if (!Renderer) return null;\n\n const error = form.formState.errors.constraints?.[i];\n let mappedError: OperationError | undefined;\n\n if (error) {\n mappedError = {\n code: error?.type ?? \"INVALID\",\n message: error.message ?? \"An error occurred\",\n };\n }\n\n return (\n <Renderer\n key={constraint.name}\n constraintName={constraint.name}\n value={constraint.value}\n onConstraintChange={(newVal) => {\n handleConstraintChange(i, newVal);\n }}\n onRemoveConstraint={() => {\n handleRemoveConstraint(constraint.name);\n }}\n error={mappedError}\n />\n );\n })}\n </div>\n ) : null}\n\n <DialogFooter>\n <Button type=\"submit\">Save</Button>\n </DialogFooter>\n </form>\n </Form>\n </DialogContent>\n </Dialog>\n );\n}\n"],"names":["EditFormSchema","AddFormSchema","EditPropertyDialog","open","onOpenChange","onSubmit","propertyToEdit","propertyKey","form","useForm","zodResolver","currentConstraints","getConstraintDefinitionsForType","getRendererForConstraint","validateConstraintValue","useConstraints","handleSubmit","data","constraints","propertyUpdatesOnly","acc","constraint","handleConstraintChange","index","newVal","constraintsCopy","clone","constraintToChange","validationResult","message","i","handleRemoveConstraint","constraintName","newConstraints","c","availableDefinitions","useMemo","useEffect","constraintDef","jsx","Dialog","DialogContent","jsxs","DialogHeader","DialogTitle","DialogDescription","Form","Label","ConstraintsAdd","Separator","Renderer","error","mappedError","DialogFooter","Button"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index.cjs32.js"),t=require("./index.cjs33.js");function n(...e){return t.twMerge(r.clsx(e))}exports.cn=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),l=require("./index.cjs48.js"),o=require("./index.cjs13.js"),r=require("./index.cjs14.js");function s({...t}){return a.jsx(l.Root,{"data-slot":"alert-dialog",...t})}function n({...t}){return a.jsx(l.Portal,{"data-slot":"alert-dialog-portal",...t})}function i({className:t,...e}){return a.jsx(l.Overlay,{"data-slot":"alert-dialog-overlay",className:o.cn("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80",t),...e})}function d({className:t,...e}){return a.jsxs(n,{children:[a.jsx(i,{}),a.jsx(l.Content,{"data-slot":"alert-dialog-content",className:o.cn("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",t),...e})]})}function c({className:t,...e}){return a.jsx("div",{"data-slot":"alert-dialog-header",className:o.cn("flex flex-col gap-2 text-center sm:text-left",t),...e})}function u({className:t,...e}){return a.jsx("div",{"data-slot":"alert-dialog-footer",className:o.cn("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...e})}function g({className:t,...e}){return a.jsx(l.Title,{"data-slot":"alert-dialog-title",className:o.cn("text-lg font-semibold",t),...e})}function f({className:t,...e}){return a.jsx(l.Description,{"data-slot":"alert-dialog-description",className:o.cn("text-muted-foreground text-sm",t),...e})}function x({className:t,...e}){return a.jsx(l.Action,{className:o.cn(r.buttonVariants(),t),...e})}function m({className:t,...e}){return a.jsx(l.Cancel,{className:o.cn(r.buttonVariants({variant:"outline"}),t),...e})}exports.AlertDialog=s;exports.AlertDialogAction=x;exports.AlertDialogCancel=m;exports.AlertDialogContent=d;exports.AlertDialogDescription=f;exports.AlertDialogFooter=u;exports.AlertDialogHeader=c;exports.AlertDialogOverlay=i;exports.AlertDialogPortal=n;exports.AlertDialogTitle=g;
2
2
  //# sourceMappingURL=index.cjs22.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs22.js","sources":["../src/lib/utils.ts"],"sourcesContent":["import { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n"],"names":["cn","inputs","twMerge","clsx"],"mappings":"kJAGO,SAASA,KAAMC,EAAsB,CACnC,OAAAC,EAAA,QAAQC,OAAKF,CAAM,CAAC,CAC7B"}
1
+ {"version":3,"file":"index.cjs22.js","sources":["../src/components/ui/alert-dialog.tsx"],"sourcesContent":["import * as React from \"react\"\nimport * as AlertDialogPrimitive from \"@radix-ui/react-alert-dialog\"\n\nimport { cn } from \"@/lib/utils\"\nimport { buttonVariants } from \"@/components/ui/button\"\n\nfunction AlertDialog({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Root>) {\n return <AlertDialogPrimitive.Root data-slot=\"alert-dialog\" {...props} />\n}\n\nfunction AlertDialogTrigger({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Trigger>) {\n return (\n <AlertDialogPrimitive.Trigger data-slot=\"alert-dialog-trigger\" {...props} />\n )\n}\n\nfunction AlertDialogPortal({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Portal>) {\n return (\n <AlertDialogPrimitive.Portal data-slot=\"alert-dialog-portal\" {...props} />\n )\n}\n\nfunction AlertDialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Overlay>) {\n return (\n <AlertDialogPrimitive.Overlay\n data-slot=\"alert-dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogContent({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Content>) {\n return (\n <AlertDialogPortal>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Content\n data-slot=\"alert-dialog-content\"\n className={cn(\n \"bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg\",\n className\n )}\n {...props}\n />\n </AlertDialogPortal>\n )\n}\n\nfunction AlertDialogHeader({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-header\"\n className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogFooter({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-dialog-footer\"\n className={cn(\n \"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Title>) {\n return (\n <AlertDialogPrimitive.Title\n data-slot=\"alert-dialog-title\"\n className={cn(\"text-lg font-semibold\", className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Description>) {\n return (\n <AlertDialogPrimitive.Description\n data-slot=\"alert-dialog-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogAction({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Action>) {\n return (\n <AlertDialogPrimitive.Action\n className={cn(buttonVariants(), className)}\n {...props}\n />\n )\n}\n\nfunction AlertDialogCancel({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Cancel>) {\n return (\n <AlertDialogPrimitive.Cancel\n className={cn(buttonVariants({ variant: \"outline\" }), className)}\n {...props}\n />\n )\n}\n\nexport {\n AlertDialog,\n AlertDialogPortal,\n AlertDialogOverlay,\n AlertDialogTrigger,\n AlertDialogContent,\n AlertDialogHeader,\n AlertDialogFooter,\n AlertDialogTitle,\n AlertDialogDescription,\n AlertDialogAction,\n AlertDialogCancel,\n}\n"],"names":["AlertDialog","props","AlertDialogPrimitive.Root","AlertDialogPortal","AlertDialogPrimitive.Portal","AlertDialogOverlay","className","jsx","AlertDialogPrimitive.Overlay","cn","AlertDialogContent","AlertDialogPrimitive.Content","AlertDialogHeader","AlertDialogFooter","AlertDialogTitle","AlertDialogPrimitive.Title","AlertDialogDescription","AlertDialogPrimitive.Description","AlertDialogAction","AlertDialogPrimitive.Action","buttonVariants","AlertDialogCancel","AlertDialogPrimitive.Cancel"],"mappings":"+MAMA,SAASA,EAAY,CACnB,GAAGC,CACL,EAA2D,CACzD,aAAQC,EAAAA,KAAA,CAA0B,YAAU,eAAgB,GAAGD,EAAO,CACxE,CAUA,SAASE,EAAkB,CACzB,GAAGF,CACL,EAA6D,CAC3D,aACGG,EAAAA,OAAA,CAA4B,YAAU,sBAAuB,GAAGH,EAAO,CAE5E,CAEA,SAASI,EAAmB,CAC1B,UAAAC,EACA,GAAGL,CACL,EAA8D,CAE1D,OAAAM,EAAA,IAACC,EAAqB,QAArB,CACC,YAAU,uBACV,UAAWC,EAAA,GACT,yJACAH,CACF,EACC,GAAGL,CAAA,CACN,CAEJ,CAEA,SAASS,EAAmB,CAC1B,UAAAJ,EACA,GAAGL,CACL,EAA8D,CAC5D,cACGE,EACC,CAAA,SAAA,CAAAI,EAAA,IAACF,EAAmB,EAAA,EACpBE,EAAA,IAACI,EAAqB,QAArB,CACC,YAAU,uBACV,UAAWF,EAAA,GACT,8WACAH,CACF,EACC,GAAGL,CAAA,CAAA,CACN,EACF,CAEJ,CAEA,SAASW,EAAkB,CACzB,UAAAN,EACA,GAAGL,CACL,EAAgC,CAE5B,OAAAM,EAAA,IAAC,MAAA,CACC,YAAU,sBACV,UAAWE,EAAAA,GAAG,+CAAgDH,CAAS,EACtE,GAAGL,CAAA,CACN,CAEJ,CAEA,SAASY,EAAkB,CACzB,UAAAP,EACA,GAAGL,CACL,EAAgC,CAE5B,OAAAM,EAAA,IAAC,MAAA,CACC,YAAU,sBACV,UAAWE,EAAA,GACT,yDACAH,CACF,EACC,GAAGL,CAAA,CACN,CAEJ,CAEA,SAASa,EAAiB,CACxB,UAAAR,EACA,GAAGL,CACL,EAA4D,CAExD,OAAAM,EAAA,IAACQ,EAAqB,MAArB,CACC,YAAU,qBACV,UAAWN,EAAAA,GAAG,wBAAyBH,CAAS,EAC/C,GAAGL,CAAA,CACN,CAEJ,CAEA,SAASe,EAAuB,CAC9B,UAAAV,EACA,GAAGL,CACL,EAAkE,CAE9D,OAAAM,EAAA,IAACU,EAAqB,YAArB,CACC,YAAU,2BACV,UAAWR,EAAAA,GAAG,gCAAiCH,CAAS,EACvD,GAAGL,CAAA,CACN,CAEJ,CAEA,SAASiB,EAAkB,CACzB,UAAAZ,EACA,GAAGL,CACL,EAA6D,CAEzD,OAAAM,EAAA,IAACY,EAAqB,OAArB,CACC,UAAWV,EAAA,GAAGW,iBAAe,EAAGd,CAAS,EACxC,GAAGL,CAAA,CACN,CAEJ,CAEA,SAASoB,EAAkB,CACzB,UAAAf,EACA,GAAGL,CACL,EAA6D,CAEzD,OAAAM,EAAA,IAACe,EAAqB,OAArB,CACC,UAAWb,KAAGW,iBAAe,CAAE,QAAS,SAAU,CAAC,EAAGd,CAAS,EAC9D,GAAGL,CAAA,CACN,CAEJ"}
@@ -1,7 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs49.js");/**
2
- * @license lucide-react v0.477.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */const e=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],o=t.default("Plus",e);exports.__iconNode=e;exports.default=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),i=require("./index.cjs36.js"),a=require("./index.cjs13.js"),l=i.cva("relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",{variants:{variant:{default:"bg-background text-foreground",destructive:"text-destructive-foreground [&>svg]:text-current *:data-[slot=alert-description]:text-destructive-foreground/80"}},defaultVariants:{variant:"default"}});function n({className:t,variant:e,...s}){return r.jsx("div",{"data-slot":"alert",role:"alert",className:a.cn(l({variant:e}),t),...s})}function o({className:t,...e}){return r.jsx("div",{"data-slot":"alert-title",className:a.cn("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",t),...e})}function c({className:t,...e}){return r.jsx("div",{"data-slot":"alert-description",className:a.cn("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",t),...e})}exports.Alert=n;exports.AlertDescription=c;exports.AlertTitle=o;
7
2
  //# sourceMappingURL=index.cjs23.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs23.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/plus.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }]\n];\nconst Plus = createLucideIcon(\"Plus\", __iconNode);\n\nexport { __iconNode, Plus as default };\n//# sourceMappingURL=plus.js.map\n"],"names":["__iconNode","Plus","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CACjB,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAQ,CAAE,EACzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAU,CAAA,CAC3C,EACMC,EAAOC,EAAAA,QAAiB,OAAQF,CAAU","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs23.js","sources":["../src/components/ui/alert.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst alertVariants = cva(\n \"relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current\",\n {\n variants: {\n variant: {\n default: \"bg-background text-foreground\",\n destructive:\n \"text-destructive-foreground [&>svg]:text-current *:data-[slot=alert-description]:text-destructive-foreground/80\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Alert({\n className,\n variant,\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof alertVariants>) {\n return (\n <div\n data-slot=\"alert\"\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n )\n}\n\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-title\"\n className={cn(\n \"col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AlertDescription({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-description\"\n className={cn(\n \"text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Alert, AlertTitle, AlertDescription }\n"],"names":["alertVariants","cva","Alert","className","variant","props","jsx","cn","AlertTitle","AlertDescription"],"mappings":"iLAKMA,EAAgBC,EAAA,IACpB,oOACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,gCACT,YACE,iHAAA,CAEN,EACA,gBAAiB,CACf,QAAS,SAAA,CACX,CAEJ,EAEA,SAASC,EAAM,CACb,UAAAC,EACA,QAAAC,EACA,GAAGC,CACL,EAAqE,CAEjE,OAAAC,EAAA,IAAC,MAAA,CACC,YAAU,QACV,KAAK,QACL,UAAWC,EAAG,GAAAP,EAAc,CAAE,QAAAI,CAAS,CAAA,EAAGD,CAAS,EAClD,GAAGE,CAAA,CACN,CAEJ,CAEA,SAASG,EAAW,CAAE,UAAAL,EAAW,GAAGE,GAAsC,CAEtE,OAAAC,EAAA,IAAC,MAAA,CACC,YAAU,cACV,UAAWC,EAAA,GACT,8DACAJ,CACF,EACC,GAAGE,CAAA,CACN,CAEJ,CAEA,SAASI,EAAiB,CACxB,UAAAN,EACA,GAAGE,CACL,EAAgC,CAE5B,OAAAC,EAAA,IAAC,MAAA,CACC,YAAU,oBACV,UAAWC,EAAA,GACT,iGACAJ,CACF,EACC,GAAGE,CAAA,CACN,CAEJ"}
@@ -1,7 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs49.js");/**
2
- * @license lucide-react v0.477.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */const e=[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]],c=t.default("Trash2",e);exports.__iconNode=e;exports.default=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),t=require("react"),b=require("./index.cjs49.js"),f=require("./index.cjs10.js"),o=t.forwardRef(({onDebounce:r,type:s,delay:c=200,value:u,...i},a)=>{const[n,d]=t.useState(u),[e]=b.useDebounce(n,c);return t.useEffect(()=>{typeof e=="string"&&e!==u&&r?.(e)},[e]),l.jsx(f.Input,{...i,type:s,value:n,ref:a,onChange:p=>{d(p.target.value)}})});o.displayName="DebouncedInput";exports.DebouncedInput=o;
7
2
  //# sourceMappingURL=index.cjs24.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs24.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/trash-2.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M3 6h18\", key: \"d0wm0j\" }],\n [\"path\", { d: \"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6\", key: \"4alrt4\" }],\n [\"path\", { d: \"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2\", key: \"v07s0e\" }],\n [\"line\", { x1: \"10\", x2: \"10\", y1: \"11\", y2: \"17\", key: \"1uufr5\" }],\n [\"line\", { x1: \"14\", x2: \"14\", y1: \"11\", y2: \"17\", key: \"xtxkd\" }]\n];\nconst Trash2 = createLucideIcon(\"Trash2\", __iconNode);\n\nexport { __iconNode, Trash2 as default };\n//# sourceMappingURL=trash-2.js.map\n"],"names":["__iconNode","Trash2","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CACjB,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAQ,CAAE,EACxC,CAAC,OAAQ,CAAE,EAAG,wCAAyC,IAAK,QAAQ,CAAE,EACtE,CAAC,OAAQ,CAAE,EAAG,qCAAsC,IAAK,QAAQ,CAAE,EACnE,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,IAAK,QAAQ,CAAE,EAClE,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,IAAK,OAAS,CAAA,CACnE,EACMC,EAASC,EAAAA,QAAiB,SAAUF,CAAU","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs24.js","sources":["../src/components/depounced-input.tsx"],"sourcesContent":["import { forwardRef, useState, useEffect } from \"react\";\nimport { useDebounce } from \"use-debounce\";\nimport { Input } from \"@/components/ui/input\";\n\nexport const DebouncedInput = forwardRef<\n HTMLInputElement,\n React.ComponentProps<\"input\"> & {\n onDebounce?: (newVal: string) => void;\n delay?: number;\n }\n>(({ onDebounce, type, delay = 200, value, ...props }, ref) => {\n const [inputValue, setInputValue] = useState(value);\n\n const [debouncedValue] = useDebounce(inputValue, delay);\n\n useEffect(() => {\n //prevents the initial value from being sent\n if (typeof debouncedValue === \"string\" && debouncedValue !== value) {\n onDebounce?.(debouncedValue);\n }\n }, [debouncedValue]);\n\n return (\n <Input\n {...props}\n type={type}\n value={inputValue}\n ref={ref}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n />\n );\n});\nDebouncedInput.displayName = \"DebouncedInput\";\n"],"names":["DebouncedInput","forwardRef","onDebounce","type","delay","value","props","ref","inputValue","setInputValue","useState","debouncedValue","useDebounce","useEffect","jsx","Input","e"],"mappings":"oMAIaA,EAAiBC,EAAA,WAM5B,CAAC,CAAE,WAAAC,EAAY,KAAAC,EAAM,MAAAC,EAAQ,IAAK,MAAAC,EAAO,GAAGC,CAAM,EAAGC,IAAQ,CAC7D,KAAM,CAACC,EAAYC,CAAa,EAAIC,EAAAA,SAASL,CAAK,EAE5C,CAACM,CAAc,EAAIC,cAAYJ,EAAYJ,CAAK,EAEtDS,OAAAA,EAAAA,UAAU,IAAM,CAEV,OAAOF,GAAmB,UAAYA,IAAmBN,GAC3DH,IAAaS,CAAc,CAC7B,EACC,CAACA,CAAc,CAAC,EAGjBG,EAAA,IAACC,EAAA,MAAA,CACE,GAAGT,EACJ,KAAAH,EACA,MAAOK,EACP,IAAAD,EACA,SAAWS,GAAM,CACDP,EAAAO,EAAE,OAAO,KAAK,CAAA,CAC9B,CACF,CAEJ,CAAC,EACDhB,EAAe,YAAc"}
@@ -1,7 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs49.js");/**
2
- * @license lucide-react v0.477.0 - ISC
3
- *
4
- * This source code is licensed under the ISC license.
5
- * See the LICENSE file in the root directory of this source tree.
6
- */const e=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],o=t.default("Copy",e);exports.__iconNode=e;exports.default=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),N=require("./index.cjs14.js"),R=require("./index.cjs45.js"),m=require("./index.cjs42.js"),E=require("./index.cjs10.js"),L=require("./index.cjs12.js"),a=require("./index.cjs17.js"),k=require("./index.cjs15.js"),v=require("./index.cjs24.js"),h=require("./index.cjs19.js"),w=require("./index.cjs47.js"),M=require("./index.cjs8.js"),P=require("./index.cjs43.js"),$=require("./index.cjs44.js"),o=require("zod"),B=require("react-hook-form"),t=require("./index.cjs46.js"),d=o.z.enum(["string","number","integer","boolean","object","array","null"]),b=o.z.object({key:o.z.string().trim().min(1,{message:"Key must be at least 1 character long"}),property:o.z.object({title:o.z.string().trim().min(1,{message:"Title must be at least 1 character long"}),type:d.or(o.z.array(d)),description:o.z.string().optional(),enum:o.z.array(o.z.string().or(o.z.number()).or(o.z.null()).or(o.z.boolean()).or(o.z.record(o.z.string(),o.z.any()))).optional(),items:o.z.object({type:d.or(o.z.array(d))}).or(o.z.array(o.z.object({type:d.or(o.z.array(d))}).or(o.z.boolean()))).or(o.z.boolean()).optional()}),required:o.z.boolean().default(!1),constraints:o.z.array(o.z.custom(()=>({name:o.z.string().trim().min(1),value:o.z.any()}))).optional()});function _({open:F,onOpenChange:C,onSubmit:S}){const n=B.useForm({resolver:R.zodResolver(b),defaultValues:{key:"",property:{title:""}}}),p=n.watch("constraints"),y=n.watch("property"),z=n.watch("property.enum"),I=n.watch("property.type"),{getConstraintDefinitionsForType:f,getRendererForConstraint:q,validateConstraintValue:D}=M.useConstraints(),A=r=>{const{key:s,property:l,required:c,constraints:i}=r,u={...l,...i?.reduce((j,g)=>({...j,[g.name]:g.value}),{})};S(s,u,c),n.reset()},V=(r,s)=>{const l=h.a(p),c=l?.[r];if(!c){n.setError(`constraints.${r}`,{message:"The constraint was not found",type:"constraint_not_found"});return}const i=D(c.name,s);if(i.status==="error"){let u=i.message;i.code==="invalid"&&(u=`${u}: ${i.error?.map(j=>j.message).join(", ")}`),n.setError(`constraints.${r}`,{type:i.code,message:u});return}c.value=s,n.setValue("constraints",l),n.clearErrors(`constraints.${r}`)},T=r=>{if(!p)return;const l=h.a(p).filter(c=>c.name!==r);n.setValue("constraints",l)},x=f(typeof y?.type=="string"?y.type:"");return e.jsx(m.Dialog,{open:F,onOpenChange:C,children:e.jsxs(m.DialogContent,{"data-testid":"add-property-dialog",children:[e.jsxs(m.DialogHeader,{children:[e.jsx(m.DialogTitle,{children:"Add"}),e.jsx(m.DialogDescription,{children:"Required property values and constraints"})]}),e.jsx(t.Form,{...n,children:e.jsxs("form",{onSubmit:r=>{r.stopPropagation(),r.preventDefault(),n.handleSubmit(A)(r)},className:"space-y-4","data-testid":"add-property-form",id:"add-property-form",children:[e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"key",render:({field:r})=>{const{onChange:s,...l}=r;return e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Property Key"}),e.jsx(t.FormControl,{children:e.jsx(v.DebouncedInput,{...l,onDebounce:c=>s(c)})}),e.jsx(t.FormMessage,{})]})}})}),e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"property.title",render:({field:r})=>{const{onChange:s,...l}=r;return e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Property Title"}),e.jsx(t.FormControl,{children:e.jsx(v.DebouncedInput,{...l,onDebounce:c=>s(c)})}),e.jsx(t.FormMessage,{})]})}})}),e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"property.type",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Type"}),e.jsx(t.FormControl,{children:e.jsxs(a.Select,{value:Array.isArray(r.value)?void 0:r.value,onValueChange:s=>{s==="enum"?n.setValue("property.enum",[]):n.setValue("property.enum",void 0),r.value==="array"&&s!=="array"&&(n.clearErrors("property.items"),n.setValue("property.items",void 0)),r.onChange(s)},children:[e.jsx(a.SelectTrigger,{className:"w-full","aria-label":"Select type",children:e.jsx(a.SelectValue,{})}),e.jsxs(a.SelectContent,{children:[e.jsx(a.SelectItem,{value:"string",children:"string"}),e.jsx(a.SelectItem,{value:"number",children:"number"}),e.jsx(a.SelectItem,{value:"integer",children:"integer"}),e.jsx(a.SelectItem,{value:"boolean",children:"boolean"}),e.jsx(a.SelectItem,{value:"object",children:"object"}),e.jsx(a.SelectItem,{value:"array",children:"array"}),e.jsx(a.SelectItem,{value:"null",children:"null"})]})]})}),e.jsx(t.FormMessage,{})]})})}),I==="array"&&e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"property.items.type",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Items of type"}),e.jsx(t.FormControl,{children:e.jsxs(a.Select,{value:Array.isArray(r.value)?void 0:r.value,onValueChange:s=>{n.clearErrors("property.items.type"),n.setValue("property.items.type",s)},children:[e.jsx(a.SelectTrigger,{className:"w-full","aria-label":"Select items of type",children:e.jsx(a.SelectValue,{placeholder:"Select item type"})}),e.jsxs(a.SelectContent,{children:[e.jsx(a.SelectItem,{value:"string",children:"string"}),e.jsx(a.SelectItem,{value:"number",children:"number"}),e.jsx(a.SelectItem,{value:"integer",children:"integer"}),e.jsx(a.SelectItem,{value:"boolean",children:"boolean"}),e.jsx(a.SelectItem,{value:"object",children:"object"}),e.jsx(a.SelectItem,{value:"array",children:"array"}),e.jsx(a.SelectItem,{value:"null",children:"null"})]})]})}),e.jsx(t.FormMessage,{})]})})}),e.jsx("div",{className:"flex items-center space-x-2",children:e.jsx(t.FormField,{control:n.control,name:"required",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormControl,{children:e.jsx(k.Switch,{checked:r.value,onCheckedChange:s=>r.onChange(s)})}),e.jsx(t.FormLabel,{children:"Required"}),e.jsx(t.FormMessage,{})]})})}),e.jsx("div",{className:"space-y-2",children:e.jsx(t.FormField,{control:n.control,name:"property.description",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Description"}),e.jsx(t.FormControl,{children:e.jsx(E.Input,{...r})}),e.jsx(t.FormMessage,{})]})})}),z?e.jsx(t.FormField,{control:n.control,name:"property.enum",render:({field:r})=>e.jsxs(t.FormItem,{children:[e.jsx(t.FormLabel,{children:"Enum"}),e.jsx(t.FormControl,{children:e.jsx(w.default,{values:r.value?.filter(s=>typeof s=="string")??[],onAddValue:s=>{const l=[];r.value&&l.push(...r.value),l.push(s),r.onChange(l)},onRemoveValue:s=>{const l=h.a(r.value??[]);l.splice(s,1),r.onChange(l)}})}),e.jsx(t.FormMessage,{})]})}):null,x.length?e.jsxs("div",{className:"space-y-2",children:[e.jsx(L.Label,{children:"Constraints"}),e.jsx(P.default,{addedConstraints:p??[],availableDefinitions:x,onAdd:r=>{n.setValue("constraints",r)}}),e.jsx($.Separator,{}),p?.map((r,s)=>{const l=q(r.name);if(!l)return null;const c=n.formState.errors.constraints?.[s];let i;return c&&(i={code:c?.type??"INVALID",message:c.message??"An error occurred"}),e.jsx(l,{constraintName:r.name,value:r.value,onConstraintChange:u=>{V(s,u)},onRemoveConstraint:()=>{T(r.name)},error:i},r.name)})]}):null,e.jsx(m.DialogFooter,{children:e.jsx(N.Button,{type:"submit",form:"add-property-form",children:"Add Property"})})]})})]})})}exports.AddFormSchema=b;exports.AddPropertyDialog=_;
7
2
  //# sourceMappingURL=index.cjs25.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs25.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/copy.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"14\", height: \"14\", x: \"8\", y: \"8\", rx: \"2\", ry: \"2\", key: \"17jyea\" }],\n [\"path\", { d: \"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\", key: \"zix9uf\" }]\n];\nconst Copy = createLucideIcon(\"Copy\", __iconNode);\n\nexport { __iconNode, Copy as default };\n//# sourceMappingURL=copy.js.map\n"],"names":["__iconNode","Copy","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CACjB,CAAC,OAAQ,CAAE,MAAO,KAAM,OAAQ,KAAM,EAAG,IAAK,EAAG,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,SAAU,EACvF,CAAC,OAAQ,CAAE,EAAG,0DAA2D,IAAK,QAAU,CAAA,CAC1F,EACMC,EAAOC,EAAAA,QAAiB,OAAQF,CAAU","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs25.js","sources":["../src/packages/builder/add-dialog.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\n\nimport {\n Dialog,\n DialogContent,\n DialogHeader,\n DialogTitle,\n DialogFooter,\n DialogDescription,\n} from \"@/components/ui/dialog\";\nimport { Input } from \"@/components/ui/input\";\nimport { Label } from \"@/components/ui/label\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\nimport { Switch } from \"@/components/ui/switch\";\nimport type { JSONSchema7, JSONSchema7TypeName } from \"json-schema\";\nimport { DebouncedInput } from \"@/components/depounced-input\";\nimport { clone } from \"remeda\";\nimport MultiInput from \"@/components/multi-input\";\nimport { Constraint, useConstraints } from \"@/packages/constraints/context\";\nimport ConstraintsAdd from \"@/packages/constraints/constraint-add\";\nimport { Separator } from \"@/components/ui/separator\";\nimport { z } from \"zod\";\nimport { useForm } from \"react-hook-form\";\nimport {\n Form,\n FormControl,\n FormField,\n FormItem,\n FormLabel,\n FormMessage,\n} from \"@/components/ui/form\";\nimport type { OperationError } from \"./shared-types\";\n\nexport interface AddPropertyDialogProps {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n onSubmit: (key: string, property: JSONSchema7, required: boolean) => void;\n}\n\nconst zodJsonTypes = z.enum([\n \"string\",\n \"number\",\n \"integer\",\n \"boolean\",\n \"object\",\n \"array\",\n \"null\",\n]);\n\nexport const AddFormSchema = z.object({\n key: z\n .string()\n .trim()\n .min(1, { message: \"Key must be at least 1 character long\" }),\n property: z.object({\n title: z\n .string()\n .trim()\n .min(1, { message: \"Title must be at least 1 character long\" }),\n type: zodJsonTypes.or(z.array(zodJsonTypes)),\n description: z.string().optional(),\n enum: z\n .array(\n z\n .string()\n .or(z.number())\n .or(z.null())\n .or(z.boolean())\n .or(z.record(z.string(), z.any())),\n )\n .optional(),\n items: z\n .object({\n type: zodJsonTypes.or(z.array(zodJsonTypes)),\n })\n //only to satisfy the other types but we actually don't handle it\n .or(\n z.array(\n z\n .object({ type: zodJsonTypes.or(z.array(zodJsonTypes)) })\n .or(z.boolean()),\n ),\n )\n .or(z.boolean())\n .optional(),\n }),\n required: z.boolean().default(false),\n constraints: z\n .array(\n z.custom<Constraint>(() => ({\n name: z.string().trim().min(1),\n value: z.any(),\n })),\n )\n .optional(),\n});\n\n/**\n * Handles adding a property to a parent JSON schema's \"properties\".\n * This means you are working under a child property.\n */\nexport function AddPropertyDialog({\n open,\n onOpenChange,\n onSubmit,\n}: AddPropertyDialogProps) {\n const form = useForm<z.infer<typeof AddFormSchema>>({\n resolver: zodResolver(AddFormSchema),\n defaultValues: {\n key: \"\",\n property: {\n title: \"\",\n },\n },\n });\n\n const currentConstraints = form.watch(\"constraints\");\n const currentProperty = form.watch(\"property\");\n const currentEnum = form.watch(\"property.enum\");\n const currentType = form.watch(\"property.type\");\n\n const {\n getConstraintDefinitionsForType,\n getRendererForConstraint,\n validateConstraintValue,\n } = useConstraints();\n\n const handleSubmit = (data: z.infer<typeof AddFormSchema>) => {\n const { key, property, required, constraints } = data;\n const propertyToSubmit: JSONSchema7 = {\n ...property,\n ...constraints?.reduce((acc, constraint) => {\n return {\n ...acc,\n [constraint.name]: constraint.value,\n } satisfies JSONSchema7;\n }, {}),\n };\n onSubmit(key, propertyToSubmit, required);\n form.reset();\n };\n\n const handleConstraintChange = (\n index: number,\n newVal: Constraint[\"value\"],\n ) => {\n const constraintsCopy = clone(currentConstraints);\n\n const constraintToChange = constraintsCopy?.[index];\n\n if (!constraintToChange) {\n form.setError(`constraints.${index}`, {\n message: \"The constraint was not found\",\n type: \"constraint_not_found\",\n });\n return;\n }\n\n const validationResult = validateConstraintValue(\n constraintToChange.name,\n newVal,\n );\n\n if (validationResult.status === \"error\") {\n let message = validationResult.message;\n if (validationResult.code === \"invalid\") {\n message = `${message}: ${validationResult.error?.map((i) => i.message).join(\", \")}`;\n }\n form.setError(`constraints.${index}`, {\n type: validationResult.code,\n message,\n });\n return;\n }\n\n //edit reference\n constraintToChange.value = newVal;\n form.setValue(\"constraints\", constraintsCopy);\n form.clearErrors(`constraints.${index}`);\n };\n\n const handleRemoveConstraint = (constraintName: Constraint[\"name\"]) => {\n if (!currentConstraints) return;\n const copy = clone(currentConstraints);\n const newConstraints = copy.filter((c) => c.name !== constraintName);\n form.setValue(\"constraints\", newConstraints);\n };\n\n const availableDefinitions = getConstraintDefinitionsForType(\n typeof currentProperty?.type === \"string\" ? currentProperty.type : \"\",\n );\n\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n <DialogContent data-testid=\"add-property-dialog\">\n <DialogHeader>\n <DialogTitle>Add</DialogTitle>\n <DialogDescription>\n Required property values and constraints\n </DialogDescription>\n </DialogHeader>\n <Form {...form}>\n <form\n onSubmit={(e) => {\n e.stopPropagation();\n e.preventDefault();\n void form.handleSubmit(handleSubmit)(e);\n }}\n className=\"space-y-4\"\n data-testid=\"add-property-form\"\n id=\"add-property-form\"\n >\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"key\"\n render={({ field }) => {\n // Pull the onChange since debounced input should\n // be calling onDebounce instead\n const { onChange, ...rest } = field;\n\n return (\n <FormItem>\n <FormLabel>Property Key</FormLabel>\n <FormControl>\n <DebouncedInput\n {...rest}\n onDebounce={(newVal) => onChange(newVal)}\n />\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"property.title\"\n render={({ field }) => {\n const { onChange, ...rest } = field;\n return (\n <FormItem>\n <FormLabel>Property Title</FormLabel>\n <FormControl>\n <DebouncedInput\n {...rest}\n onDebounce={(newVal) => onChange(newVal)}\n />\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"property.type\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormLabel>Type</FormLabel>\n <FormControl>\n <Select\n value={\n !Array.isArray(field.value)\n ? field.value\n : undefined\n }\n onValueChange={(newVal) => {\n if (newVal === \"enum\") {\n form.setValue(\"property.enum\", []);\n } else {\n form.setValue(\"property.enum\", undefined);\n }\n\n // If changing away from array, clear any array item errors\n if (field.value === \"array\" && newVal !== \"array\") {\n form.clearErrors(\"property.items\");\n form.setValue(\"property.items\", undefined);\n }\n\n field.onChange(newVal);\n }}\n >\n <SelectTrigger\n className=\"w-full\"\n aria-label=\"Select type\"\n >\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n <SelectItem\n value={\"string\" satisfies JSONSchema7TypeName}\n >\n string\n </SelectItem>\n <SelectItem\n value={\"number\" satisfies JSONSchema7TypeName}\n >\n number\n </SelectItem>\n <SelectItem\n value={\"integer\" satisfies JSONSchema7TypeName}\n >\n integer\n </SelectItem>\n <SelectItem\n value={\"boolean\" satisfies JSONSchema7TypeName}\n >\n boolean\n </SelectItem>\n <SelectItem\n value={\"object\" satisfies JSONSchema7TypeName}\n >\n object\n </SelectItem>\n <SelectItem\n value={\"array\" satisfies JSONSchema7TypeName}\n >\n array\n </SelectItem>\n <SelectItem\n value={\"null\" satisfies JSONSchema7TypeName}\n >\n null\n </SelectItem>\n </SelectContent>\n </Select>\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n\n {/* Array Items Type selector */}\n {currentType === \"array\" && (\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"property.items.type\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormLabel>Items of type</FormLabel>\n <FormControl>\n <Select\n value={\n !Array.isArray(field.value)\n ? field.value\n : undefined\n }\n onValueChange={(newVal) => {\n form.clearErrors(\"property.items.type\");\n form.setValue(\n \"property.items.type\",\n newVal as JSONSchema7TypeName,\n );\n }}\n >\n <SelectTrigger\n className=\"w-full\"\n aria-label=\"Select items of type\"\n >\n <SelectValue placeholder=\"Select item type\" />\n </SelectTrigger>\n <SelectContent>\n <SelectItem\n value={\"string\" satisfies JSONSchema7TypeName}\n >\n string\n </SelectItem>\n <SelectItem\n value={\"number\" satisfies JSONSchema7TypeName}\n >\n number\n </SelectItem>\n <SelectItem\n value={\"integer\" satisfies JSONSchema7TypeName}\n >\n integer\n </SelectItem>\n <SelectItem\n value={\"boolean\" satisfies JSONSchema7TypeName}\n >\n boolean\n </SelectItem>\n <SelectItem\n value={\"object\" satisfies JSONSchema7TypeName}\n >\n object\n </SelectItem>\n <SelectItem\n value={\"array\" satisfies JSONSchema7TypeName}\n >\n array\n </SelectItem>\n <SelectItem\n value={\"null\" satisfies JSONSchema7TypeName}\n >\n null\n </SelectItem>\n </SelectContent>\n </Select>\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n )}\n\n <div className=\"flex items-center space-x-2\">\n <FormField\n control={form.control}\n name=\"required\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormControl>\n <Switch\n checked={field.value}\n onCheckedChange={(checked) => field.onChange(checked)}\n />\n </FormControl>\n <FormLabel>Required</FormLabel>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n <div className=\"space-y-2\">\n <FormField\n control={form.control}\n name=\"property.description\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormLabel>Description</FormLabel>\n <FormControl>\n <Input {...field} />\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n </div>\n {currentEnum ? (\n <FormField\n control={form.control}\n name=\"property.enum\"\n render={({ field }) => {\n return (\n <FormItem>\n <FormLabel>Enum</FormLabel>\n <FormControl>\n <MultiInput\n values={\n field.value?.filter((i) => typeof i === \"string\") ??\n []\n }\n onAddValue={(newVal) => {\n const updates = [];\n if (field.value) {\n updates.push(...field.value);\n }\n updates.push(newVal);\n field.onChange(updates);\n }}\n onRemoveValue={(index) => {\n const newEnums = clone(field.value ?? []);\n newEnums.splice(index, 1);\n field.onChange(newEnums);\n }}\n />\n </FormControl>\n <FormMessage />\n </FormItem>\n );\n }}\n />\n ) : null}\n\n {availableDefinitions.length ? (\n <div className=\"space-y-2\">\n <Label>Constraints</Label>\n <ConstraintsAdd\n addedConstraints={currentConstraints ?? []}\n availableDefinitions={availableDefinitions}\n onAdd={(newConstraints) => {\n form.setValue(\"constraints\", newConstraints);\n }}\n />\n <Separator />\n {currentConstraints?.map((constraint, i) => {\n const Renderer = getRendererForConstraint(constraint.name);\n if (!Renderer) return null;\n\n const error = form.formState.errors.constraints?.[i];\n let mappedError: OperationError | undefined;\n\n if (error) {\n mappedError = {\n code: error?.type ?? \"INVALID\",\n message: error.message ?? \"An error occurred\",\n };\n }\n\n return (\n <Renderer\n key={constraint.name}\n constraintName={constraint.name}\n value={constraint.value}\n onConstraintChange={(newVal) => {\n handleConstraintChange(i, newVal);\n }}\n onRemoveConstraint={() => {\n handleRemoveConstraint(constraint.name);\n }}\n error={mappedError}\n />\n );\n })}\n </div>\n ) : null}\n\n <DialogFooter>\n <Button type=\"submit\" form=\"add-property-form\">\n Add Property\n </Button>\n </DialogFooter>\n </form>\n </Form>\n </DialogContent>\n </Dialog>\n );\n}\n"],"names":["zodJsonTypes","z","AddFormSchema","AddPropertyDialog","open","onOpenChange","onSubmit","form","useForm","zodResolver","currentConstraints","currentProperty","currentEnum","currentType","getConstraintDefinitionsForType","getRendererForConstraint","validateConstraintValue","useConstraints","handleSubmit","data","key","property","required","constraints","propertyToSubmit","acc","constraint","handleConstraintChange","index","newVal","constraintsCopy","clone","constraintToChange","validationResult","message","i","handleRemoveConstraint","constraintName","newConstraints","availableDefinitions","Dialog","jsxs","DialogContent","DialogHeader","jsx","DialogTitle","DialogDescription","Form","e","FormField","field","onChange","rest","FormItem","FormLabel","FormControl","DebouncedInput","FormMessage","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","Switch","checked","Input","MultiInput","updates","newEnums","Label","ConstraintsAdd","Separator","Renderer","error","mappedError","DialogFooter","Button"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs49.js");/**
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs50.js");/**
2
2
  * @license lucide-react v0.477.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
5
5
  * See the LICENSE file in the root directory of this source tree.
6
- */const e=[["path",{d:"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z",key:"yt0hxn"}],["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}]],o=t.default("Bolt",e);exports.__iconNode=e;exports.default=o;
6
+ */const e=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],o=t.default("Plus",e);exports.__iconNode=e;exports.default=o;
7
7
  //# sourceMappingURL=index.cjs26.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs26.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/bolt.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z\",\n key: \"yt0hxn\"\n }\n ],\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"4\", key: \"4exip2\" }]\n];\nconst Bolt = createLucideIcon(\"Bolt\", __iconNode);\n\nexport { __iconNode, Bolt as default };\n//# sourceMappingURL=bolt.js.map\n"],"names":["__iconNode","Bolt","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CACjB,CACE,OACA,CACE,EAAG,4HACH,IAAK,QACX,CACG,EACD,CAAC,SAAU,CAAE,GAAI,KAAM,GAAI,KAAM,EAAG,IAAK,IAAK,QAAU,CAAA,CAC1D,EACMC,EAAOC,EAAAA,QAAiB,OAAQF,CAAU","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs26.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/plus.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }]\n];\nconst Plus = createLucideIcon(\"Plus\", __iconNode);\n\nexport { __iconNode, Plus as default };\n//# sourceMappingURL=plus.js.map\n"],"names":["__iconNode","Plus","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CACjB,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAQ,CAAE,EACzC,CAAC,OAAQ,CAAE,EAAG,WAAY,IAAK,QAAU,CAAA,CAC3C,EACMC,EAAOC,EAAAA,QAAiB,OAAQF,CAAU","x_google_ignoreList":[0]}
@@ -1,7 +1,7 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs49.js");/**
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs50.js");/**
2
2
  * @license lucide-react v0.477.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
5
5
  * See the LICENSE file in the root directory of this source tree.
6
- */const e=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],o=t.default("ChevronRight",e);exports.__iconNode=e;exports.default=o;
6
+ */const e=[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]],c=t.default("Trash2",e);exports.__iconNode=e;exports.default=c;
7
7
  //# sourceMappingURL=index.cjs27.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs27.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/chevron-right.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m9 18 6-6-6-6\", key: \"mthhwq\" }]];\nconst ChevronRight = createLucideIcon(\"ChevronRight\", __iconNode);\n\nexport { __iconNode, ChevronRight as default };\n//# sourceMappingURL=chevron-right.js.map\n"],"names":["__iconNode","ChevronRight","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CAAC,CAAC,OAAQ,CAAE,EAAG,gBAAiB,IAAK,SAAU,CAAC,EAC7DC,EAAeC,EAAAA,QAAiB,eAAgBF,CAAU","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs27.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/trash-2.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M3 6h18\", key: \"d0wm0j\" }],\n [\"path\", { d: \"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6\", key: \"4alrt4\" }],\n [\"path\", { d: \"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2\", key: \"v07s0e\" }],\n [\"line\", { x1: \"10\", x2: \"10\", y1: \"11\", y2: \"17\", key: \"1uufr5\" }],\n [\"line\", { x1: \"14\", x2: \"14\", y1: \"11\", y2: \"17\", key: \"xtxkd\" }]\n];\nconst Trash2 = createLucideIcon(\"Trash2\", __iconNode);\n\nexport { __iconNode, Trash2 as default };\n//# sourceMappingURL=trash-2.js.map\n"],"names":["__iconNode","Trash2","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CACjB,CAAC,OAAQ,CAAE,EAAG,UAAW,IAAK,QAAQ,CAAE,EACxC,CAAC,OAAQ,CAAE,EAAG,wCAAyC,IAAK,QAAQ,CAAE,EACtE,CAAC,OAAQ,CAAE,EAAG,qCAAsC,IAAK,QAAQ,CAAE,EACnE,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,IAAK,QAAQ,CAAE,EAClE,CAAC,OAAQ,CAAE,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,IAAK,OAAS,CAAA,CACnE,EACMC,EAASC,EAAAA,QAAiB,SAAUF,CAAU","x_google_ignoreList":[0]}
@@ -1,2 +1,7 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),n=require("./index.cjs22.js");function o({className:e,type:i,...r}){return t.jsx("input",{type:i,"data-slot":"input",className:n.cn("border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...r})}exports.Input=o;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs50.js");/**
2
+ * @license lucide-react v0.477.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const e=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],o=t.default("Copy",e);exports.__iconNode=e;exports.default=o;
2
7
  //# sourceMappingURL=index.cjs28.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs28.js","sources":["../src/components/ui/input.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Input({ className, type, ...props }: React.ComponentProps<\"input\">) {\n return (\n <input\n type={type}\n data-slot=\"input\"\n className={cn(\n \"border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n \"focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n \"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Input }\n"],"names":["Input","className","type","props","jsx","cn"],"mappings":"mJAIA,SAASA,EAAM,CAAE,UAAAC,EAAW,KAAAC,EAAM,GAAGC,GAAwC,CAEzE,OAAAC,EAAA,IAAC,QAAA,CACC,KAAAF,EACA,YAAU,QACV,UAAWG,EAAA,GACT,ibACA,gFACA,yGACAJ,CACF,EACC,GAAGE,CAAA,CACN,CAEJ"}
1
+ {"version":3,"file":"index.cjs28.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/copy.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"14\", height: \"14\", x: \"8\", y: \"8\", rx: \"2\", ry: \"2\", key: \"17jyea\" }],\n [\"path\", { d: \"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\", key: \"zix9uf\" }]\n];\nconst Copy = createLucideIcon(\"Copy\", __iconNode);\n\nexport { __iconNode, Copy as default };\n//# sourceMappingURL=copy.js.map\n"],"names":["__iconNode","Copy","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CACjB,CAAC,OAAQ,CAAE,MAAO,KAAM,OAAQ,KAAM,EAAG,IAAK,EAAG,IAAK,GAAI,IAAK,GAAI,IAAK,IAAK,SAAU,EACvF,CAAC,OAAQ,CAAE,EAAG,0DAA2D,IAAK,QAAU,CAAA,CAC1F,EACMC,EAAOC,EAAAA,QAAiB,OAAQF,CAAU","x_google_ignoreList":[0]}
@@ -1,2 +1,7 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("./index.cjs22.js");function c({children:r,errorCode:t,errorDescription:i,showError:s=!1,className:a}){return e.jsxs("div",{className:l.cn("space-y-2",a),children:[s&&t&&e.jsx("div",{className:"text-sm font-medium text-destructive","aria-live":"polite",children:t}),r,s&&i&&e.jsx("div",{className:"text-sm text-destructive","aria-live":"polite",children:i})]})}exports.InputErrorWrapper=c;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("./index.cjs50.js");/**
2
+ * @license lucide-react v0.477.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const e=[["path",{d:"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z",key:"yt0hxn"}],["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}]],o=t.default("Bolt",e);exports.__iconNode=e;exports.default=o;
2
7
  //# sourceMappingURL=index.cjs29.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs29.js","sources":["../src/components/input-error.tsx"],"sourcesContent":["import type React from \"react\";\nimport { cn } from \"@/lib/utils\";\n\ninterface InputErrorWrapperProps {\n children: React.ReactNode;\n errorCode?: string;\n errorDescription?: string;\n showError?: boolean;\n className?: string;\n}\n\nexport function InputErrorWrapper({\n children,\n errorCode,\n errorDescription,\n showError = false,\n className,\n}: InputErrorWrapperProps) {\n return (\n <div className={cn(\"space-y-2\", className)}>\n {showError && errorCode && (\n <div\n className=\"text-sm font-medium text-destructive\"\n aria-live=\"polite\"\n >\n {errorCode}\n </div>\n )}\n\n {children}\n\n {showError && errorDescription && (\n <div className=\"text-sm text-destructive\" aria-live=\"polite\">\n {errorDescription}\n </div>\n )}\n </div>\n );\n}\n"],"names":["InputErrorWrapper","children","errorCode","errorDescription","showError","className","cn","jsx"],"mappings":"mJAWO,SAASA,EAAkB,CAChC,SAAAC,EACA,UAAAC,EACA,iBAAAC,EACA,UAAAC,EAAY,GACZ,UAAAC,CACF,EAA2B,CACzB,cACG,MAAI,CAAA,UAAWC,EAAG,GAAA,YAAaD,CAAS,EACtC,SAAA,CAAAD,GAAaF,GACZK,EAAA,IAAC,MAAA,CACC,UAAU,uCACV,YAAU,SAET,SAAAL,CAAA,CACH,EAGDD,EAEAG,GAAaD,GACXI,MAAA,MAAA,CAAI,UAAU,2BAA2B,YAAU,SACjD,SACHJ,CAAA,CAAA,CAAA,EAEJ,CAEJ"}
1
+ {"version":3,"file":"index.cjs29.js","sources":["../../../node_modules/.pnpm/lucide-react@0.477.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/bolt.js"],"sourcesContent":["/**\n * @license lucide-react v0.477.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z\",\n key: \"yt0hxn\"\n }\n ],\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"4\", key: \"4exip2\" }]\n];\nconst Bolt = createLucideIcon(\"Bolt\", __iconNode);\n\nexport { __iconNode, Bolt as default };\n//# sourceMappingURL=bolt.js.map\n"],"names":["__iconNode","Bolt","createLucideIcon"],"mappings":"gJAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASK,MAACA,EAAa,CACjB,CACE,OACA,CACE,EAAG,4HACH,IAAK,QACX,CACG,EACD,CAAC,SAAU,CAAE,GAAI,KAAM,GAAI,KAAM,EAAG,IAAK,IAAK,QAAU,CAAA,CAC1D,EACMC,EAAOC,EAAAA,QAAiB,OAAQF,CAAU","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),s=require("react"),ie=require("./index.cjs2.js"),u=require("./index.cjs11.js"),d=require("./index.cjs12.js"),se=require("./index.cjs13.js"),r=require("./index.cjs14.js"),$=require("./index.cjs15.js"),ae=require("./index.cjs10.js"),L=require("./index.cjs4.js"),oe=require("./index.cjs16.js"),a=require("./index.cjs17.js"),S=require("./index.cjs18.js"),ce=require("./index.cjs19.js"),de=require("ajv"),p=require("./index.cjs20.js"),ue=require("./index.cjs21.js"),C=require("./index.cjs22.js"),he=require("./index.cjs23.js"),me=require("./index.cjs24.js"),je=require("./index.cjs25.js"),xe=require("./index.cjs26.js"),ge=require("./index.cjs27.js"),be=i=>{const[O,m]=s.useState(!1),[k,b]=s.useState(!1),[F,j]=s.useState(!1),[x,f]=s.useState(),[D,A]=s.useState(),[P,N]=s.useState(),[q,g]=s.useState(null);L.usePluginSystem(i.plugins??[]);const{getCurrentSchema:U,setPath:h,path:o,handleAddProperty:Q,handlePropertyChange:c,handleKeyChange:B,handleDeleteProperty:H,setSchema:M,isPropertyRequired:I,handleDuplicateProperty:_}=ie.useSchema({onSchemaChange:i.onSchemaChange}),{getConstraintDefinitionsForType:G}=L.useConstraints();s.useEffect(()=>{if(i.initialSchema)try{ce.validateSchema(i.initialSchema),M(ae.a(i.initialSchema)),g(null)}catch(t){t instanceof Error?g(t.message):t instanceof de.ValidationError?g(`Schema validation error: ${t.message}`):g("Unknown schema validation error")}},[i.initialSchema]);const J=U(),E=t=>{h([...o,t])},w=()=>{h(o.slice(0,-1))},W=(t,n)=>{A(t),N(n),b(!0)},T=t=>{f(t),j(!0)},X=()=>{x&&(H(x),f(void 0)),j(!1)},Y=()=>{f(void 0),j(!1)},R=t=>{const n=_(t);n?.status==="error"?i.onPropertyAddError?.(n):n?.status==="success"&&i.onPropertyAddSuccess?.(n)},Z=(...t)=>{const n=Q(...t);n.status==="error"?i.onPropertyAddError?.(n):n.status==="success"&&i.onPropertyAddSuccess?.(n),m(!1)},z=i.propertyComponent,ee=(t,n)=>z?e.jsx(z,{property:{key:t,schema:n,isRequired:I(t)},onPropertyChange:c,onKeyChange:B,onDelete:T,onDuplicate:R,onNavigate:n.type==="object"||n.type==="array"&&typeof n.items=="object"&&n.items.type==="object"?E:void 0},t):e.jsxs("div",{className:"flex flex-col md:grid grid-cols-(--my-autofit-grid) gap-4 md:items-center border p-2 rounded-md mb-2",children:[e.jsx("div",{className:"",children:e.jsx(p.DebouncedInput,{value:t,onDebounce:l=>B(t,l),placeholder:"Property Key","aria-label":`Property key for ${t}`,delay:500})}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(se.Switch,{checked:I(t),onCheckedChange:l=>c(t,{isRequired:l}),"aria-label":"Required"}),e.jsx($.Label,{htmlFor:`required-${t}`,children:"Required"})]}),e.jsx("div",{className:"",children:e.jsxs(r.Select,{value:typeof n=="object"&&!Array.isArray(n.type)?n.type:void 0,onValueChange:l=>c(t,{type:l}),"aria-label":"Type",children:[e.jsx(r.SelectTrigger,{className:"w-full","aria-label":"Select type",children:e.jsx(r.SelectValue,{})}),e.jsxs(r.SelectContent,{children:[e.jsx(r.SelectItem,{value:"string",children:"string"}),e.jsx(r.SelectItem,{value:"number",children:"number"}),e.jsx(r.SelectItem,{value:"integer",children:"integer"}),e.jsx(r.SelectItem,{value:"boolean",children:"boolean"}),e.jsx(r.SelectItem,{value:"object",children:"object"}),e.jsx(r.SelectItem,{value:"array",children:"array"}),e.jsx(r.SelectItem,{value:"null",children:"null"}),e.jsx(r.SelectItem,{value:"enum",children:"enum"})]})]})}),e.jsx("div",{className:"",children:e.jsx(p.DebouncedInput,{value:typeof n=="object"?n.title:void 0,onDebounce:l=>c(t,{title:l}),placeholder:"Title"})}),e.jsx("div",{className:"",children:e.jsx(p.DebouncedInput,{value:typeof n=="object"?n.description:void 0,onDebounce:l=>c(t,{description:l}),placeholder:"Description"})}),e.jsxs("div",{className:"order-last md:order-none flex gap-2",children:[e.jsx(u.Button,{variant:"outline",size:"sm",onClick:()=>T(t),"aria-label":"Delete",className:"block!",children:e.jsx(me.default,{size:16,className:"text-destructive"})}),e.jsx(u.Button,{variant:"outline",size:"sm",onClick:()=>R(t),"aria-label":"Duplicate",className:"block!",children:e.jsx(je.default,{size:16})}),ne(t,n),K(t,n)]}),te(t,n)]},t),te=(t,n)=>{if(typeof n!="object"||n.type!=="array")return null;const l=n.items,v=!Array.isArray(l)&&typeof l=="object"&&typeof l.type=="string"?l?.type:"string";return e.jsxs("div",{className:"col-span-full flex items-center gap-4 pl-8 mt-2 bg-gray-50 p-2 rounded-md",children:[e.jsx($.Label,{children:"Items of type:"}),e.jsxs(r.Select,{value:v,onValueChange:V=>{const y={...typeof l=="object"?l:{},type:V};V==="object"&&(y.properties=y.properties??{}),c(t,{items:y})},children:[e.jsx(r.SelectTrigger,{className:"w-[200px]","aria-label":"Select items of type",children:e.jsx(r.SelectValue,{})}),e.jsxs(r.SelectContent,{children:[e.jsx(r.SelectItem,{value:"string",children:"string"}),e.jsx(r.SelectItem,{value:"number",children:"number"}),e.jsx(r.SelectItem,{value:"integer",children:"integer"}),e.jsx(r.SelectItem,{value:"boolean",children:"boolean"}),e.jsx(r.SelectItem,{value:"object",children:"object"}),e.jsx(r.SelectItem,{value:"array",children:"array"}),e.jsx(r.SelectItem,{value:"null",children:"null"})]})]}),K(t,l)]})},ne=(t,n)=>{if(typeof n!="object")return null;const l=G(typeof n.type=="string"?n.type:""),v=Array.isArray(n?.enum);return l.length||v?e.jsx(u.Button,{variant:"outline",size:"sm",onClick:()=>W(t,n),"aria-label":"Edit constraints",children:e.jsx(xe.default,{size:16})}):null},K=(t,n)=>!Array.isArray(n)&&typeof n=="object"&&n?.type==="object"?e.jsxs(u.Button,{variant:"outline",size:"sm",onClick:()=>E(t),"aria-label":"Navigate",children:[e.jsx("span",{className:"sr-only",children:"Navigate"}),e.jsx(ge.default,{size:16})]}):null,re=()=>{const t=i.navigationComponent;return t?e.jsx(t,{currentPath:o,onNavigateUp:w,onNavigateTo:h,isRootPath:o.length===0}):e.jsxs("div",{className:"flex items-center space-x-4",children:[e.jsx(u.Button,{variant:"outline",size:"sm",onClick:w,disabled:o.length===0,className:C.cn(i.backButtonClassName),children:"Back"}),e.jsx(d.Breadcrumb,{children:e.jsxs(d.BreadcrumbList,{children:[e.jsx(d.BreadcrumbItem,{children:e.jsx(d.BreadcrumbLink,{href:"#",onClick:()=>h([]),children:"Root"})}),o.map((n,l)=>e.jsxs(s.Fragment,{children:[e.jsx(d.BreadcrumbSeparator,{}),e.jsx(d.BreadcrumbItem,{children:e.jsx(d.BreadcrumbLink,{href:"#",onClick:()=>h(o.slice(0,l+1)),children:n})})]},`path-${l}`))]})})]})},le=()=>{const t=i.addPropertyButtonComponent;return t?e.jsx(t,{onClick:()=>m(!0)}):e.jsxs(u.Button,{type:"button",className:C.cn("self-center",i.addPropertyButtonClassName),onClick:()=>{m(!0)},children:[e.jsx(he.default,{className:"h-4 w-4 mr-2"}),"Add Property"]})};return e.jsxs("div",{children:[q&&e.jsxs(S.Alert,{variant:"destructive",children:[e.jsx(S.AlertTitle,{children:"Schema Error"}),e.jsx(S.AlertDescription,{children:q})]}),re(),e.jsx("div",{className:C.cn("mt-6 overflow-x-hidden",i.propertiesListClassName),children:Object.entries(J.properties??{}).map(([t,n])=>typeof n=="boolean"?null:ee(t,n))}),le(),e.jsx(ue.AddPropertyDialog,{open:O,onOpenChange:m,onSubmit:Z}),D&&P&&e.jsx(oe.EditPropertyDialog,{propertyKey:D,property:P,open:k,onOpenChange:b,onSubmit:t=>{c(...t),A(void 0),N(void 0),b(!1)}}),e.jsx(a.AlertDialog,{open:F,onOpenChange:j,children:e.jsxs(a.AlertDialogContent,{children:[e.jsxs(a.AlertDialogHeader,{children:[e.jsx(a.AlertDialogTitle,{children:"Are you sure?"}),e.jsxs(a.AlertDialogDescription,{children:["This action cannot be undone. This will permanently delete the property",x?` "${x}"`:""," from the schema."]})]}),e.jsxs(a.AlertDialogFooter,{children:[e.jsx(a.AlertDialogCancel,{onClick:Y,children:"Cancel"}),e.jsx(a.AlertDialogAction,{onClick:X,children:"Delete"})]})]})})]})};exports.SchemaBuilder=be;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),h=require("./index.cjs10.js"),v=require("./index.cjs11.js"),M=require("./index.cjs12.js"),f=require("./index.cjs13.js"),g=require("./index.cjs8.js"),N=require("./index.cjs14.js"),y=require("./index.cjs16.js"),t=({constraintName:l,value:o,onConstraintChange:c,disabled:p,error:n,onRemoveConstraint:d})=>{const{getConstraintDefinition:b}=g.useConstraints(),i=b(l);return i?e.jsx(v.InputErrorWrapper,{errorCode:n?.code,errorDescription:n?.message,showError:!!n,children:e.jsxs("div",{children:[e.jsx(M.Label,{className:"mb-2",htmlFor:i.name,children:i.name}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(h.Input,{id:i.name,type:"number",value:o,onChange:x=>c(Number(x.target.value)),disabled:p,className:f.cn({"border-destructive":n})}),e.jsx(N.Button,{type:"button",variant:"ghost",size:"icon",onClick:()=>d(),children:e.jsx(y.default,{className:"size-4"})})]}),i.description&&e.jsx("div",{className:"mt-2 text-sm text-gray-500",children:i.description})]})}):null},r=t,s=t,u=t,m=t,a=t,C={id:"number-constraints",hooks:{registerConstraints(){return[{name:"minimum",label:"Minimum",appliesTo:["number","integer"],schema:{type:"number",title:"Minimum Constraint",description:"The minimum value for this constraint",examples:[0,1,10]},description:"Constrains a number or integer to a minimum value",defaultValue:0},{name:"maximum",label:"Maximum",appliesTo:["number","integer"],schema:{type:"number",title:"Maximum Constraint",description:"The maximum value for this constraint",examples:[10,100,1e3]},description:"Constrains a number or integer to a maximum value",defaultValue:100},{name:"exclusiveMinimum",label:"Exclusive Minimum",appliesTo:["number","integer"],schema:{type:"number",title:"Exclusive Minimum Constraint",description:"The value must be strictly greater than this",examples:[0,1,10]},description:"Value must be strictly greater than (not equal to) this value",defaultValue:0},{name:"exclusiveMaximum",label:"Exclusive Maximum",appliesTo:["number","integer"],schema:{type:"number",title:"Exclusive Maximum Constraint",description:"The value must be strictly less than this",examples:[10,100,1e3]},description:"Value must be strictly less than (not equal to) this value",defaultValue:100},{name:"multipleOf",label:"Multiple Of",appliesTo:["number","integer"],schema:{type:"number",title:"Multiple Of Constraint",description:"Value must be a multiple of this number",examples:[2,5,10],exclusiveMinimum:0},description:"Value must be divisible by this number (e.g., 5 for multiples of 5)",defaultValue:1}]},registerRenderers(){return{minimum:r,maximum:s,exclusiveMinimum:u,exclusiveMaximum:m,multipleOf:a}}}};exports.NumberExclusiveMaximumRenderer=m;exports.NumberExclusiveMinimumRenderer=u;exports.NumberMaximumRenderer=s;exports.NumberMinimumRenderer=r;exports.NumberMultipleOfRenderer=a;exports.default=C;
2
2
  //# sourceMappingURL=index.cjs3.js.map