@pyric/ui 0.1.0-alpha.7

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 (594) hide show
  1. package/README.md +79 -0
  2. package/dist/agents/ContextWindowUsage.d.ts +67 -0
  3. package/dist/agents/ContextWindowUsage.d.ts.map +1 -0
  4. package/dist/agents/ContextWindowUsage.js +115 -0
  5. package/dist/agents/ContextWindowUsage.js.map +1 -0
  6. package/dist/agents/EmptyState.d.ts +18 -0
  7. package/dist/agents/EmptyState.d.ts.map +1 -0
  8. package/dist/agents/EmptyState.js +11 -0
  9. package/dist/agents/EmptyState.js.map +1 -0
  10. package/dist/agents/Fold.d.ts +37 -0
  11. package/dist/agents/Fold.d.ts.map +1 -0
  12. package/dist/agents/Fold.js +18 -0
  13. package/dist/agents/Fold.js.map +1 -0
  14. package/dist/agents/Modal.d.ts +25 -0
  15. package/dist/agents/Modal.d.ts.map +1 -0
  16. package/dist/agents/Modal.js +28 -0
  17. package/dist/agents/Modal.js.map +1 -0
  18. package/dist/agents/PulsingDot.d.ts +21 -0
  19. package/dist/agents/PulsingDot.d.ts.map +1 -0
  20. package/dist/agents/PulsingDot.js +18 -0
  21. package/dist/agents/PulsingDot.js.map +1 -0
  22. package/dist/agents/index.d.ts +15 -0
  23. package/dist/agents/index.d.ts.map +1 -0
  24. package/dist/agents/index.js +15 -0
  25. package/dist/agents/index.js.map +1 -0
  26. package/dist/auth/authApi.d.ts +32 -0
  27. package/dist/auth/authApi.d.ts.map +1 -0
  28. package/dist/auth/authApi.js +27 -0
  29. package/dist/auth/authApi.js.map +1 -0
  30. package/dist/auth/claims.d.ts +27 -0
  31. package/dist/auth/claims.d.ts.map +1 -0
  32. package/dist/auth/claims.js +58 -0
  33. package/dist/auth/claims.js.map +1 -0
  34. package/dist/auth/components/AuthProviderToggles.d.ts +31 -0
  35. package/dist/auth/components/AuthProviderToggles.d.ts.map +1 -0
  36. package/dist/auth/components/AuthProviderToggles.js +48 -0
  37. package/dist/auth/components/AuthProviderToggles.js.map +1 -0
  38. package/dist/auth/components/AuthSignInHelper.d.ts +57 -0
  39. package/dist/auth/components/AuthSignInHelper.d.ts.map +1 -0
  40. package/dist/auth/components/AuthSignInHelper.js +69 -0
  41. package/dist/auth/components/AuthSignInHelper.js.map +1 -0
  42. package/dist/auth/components/AuthUserForm.d.ts +84 -0
  43. package/dist/auth/components/AuthUserForm.d.ts.map +1 -0
  44. package/dist/auth/components/AuthUserForm.js +89 -0
  45. package/dist/auth/components/AuthUserForm.js.map +1 -0
  46. package/dist/auth/components/AuthUserList.d.ts +51 -0
  47. package/dist/auth/components/AuthUserList.d.ts.map +1 -0
  48. package/dist/auth/components/AuthUserList.js +46 -0
  49. package/dist/auth/components/AuthUserList.js.map +1 -0
  50. package/dist/auth/components/ClaimsField.d.ts +22 -0
  51. package/dist/auth/components/ClaimsField.d.ts.map +1 -0
  52. package/dist/auth/components/ClaimsField.js +11 -0
  53. package/dist/auth/components/ClaimsField.js.map +1 -0
  54. package/dist/auth/components/confirmActions.d.ts +40 -0
  55. package/dist/auth/components/confirmActions.d.ts.map +1 -0
  56. package/dist/auth/components/confirmActions.js +49 -0
  57. package/dist/auth/components/confirmActions.js.map +1 -0
  58. package/dist/auth/controller.d.ts +73 -0
  59. package/dist/auth/controller.d.ts.map +1 -0
  60. package/dist/auth/controller.js +139 -0
  61. package/dist/auth/controller.js.map +1 -0
  62. package/dist/auth/hooks/index.d.ts +7 -0
  63. package/dist/auth/hooks/index.d.ts.map +1 -0
  64. package/dist/auth/hooks/index.js +7 -0
  65. package/dist/auth/hooks/index.js.map +1 -0
  66. package/dist/auth/hooks/useAuthFlowHelper.d.ts +30 -0
  67. package/dist/auth/hooks/useAuthFlowHelper.d.ts.map +1 -0
  68. package/dist/auth/hooks/useAuthFlowHelper.js +30 -0
  69. package/dist/auth/hooks/useAuthFlowHelper.js.map +1 -0
  70. package/dist/auth/hooks/useAuthProviderConfig.d.ts +37 -0
  71. package/dist/auth/hooks/useAuthProviderConfig.d.ts.map +1 -0
  72. package/dist/auth/hooks/useAuthProviderConfig.js +98 -0
  73. package/dist/auth/hooks/useAuthProviderConfig.js.map +1 -0
  74. package/dist/auth/hooks/useAuthUserEditor.d.ts +30 -0
  75. package/dist/auth/hooks/useAuthUserEditor.d.ts.map +1 -0
  76. package/dist/auth/hooks/useAuthUserEditor.js +27 -0
  77. package/dist/auth/hooks/useAuthUserEditor.js.map +1 -0
  78. package/dist/auth/hooks/useAuthUsers.d.ts +38 -0
  79. package/dist/auth/hooks/useAuthUsers.d.ts.map +1 -0
  80. package/dist/auth/hooks/useAuthUsers.js +111 -0
  81. package/dist/auth/hooks/useAuthUsers.js.map +1 -0
  82. package/dist/auth/index.d.ts +11 -0
  83. package/dist/auth/index.d.ts.map +1 -0
  84. package/dist/auth/index.js +13 -0
  85. package/dist/auth/index.js.map +1 -0
  86. package/dist/auth/providers.d.ts +11 -0
  87. package/dist/auth/providers.d.ts.map +1 -0
  88. package/dist/auth/providers.js +28 -0
  89. package/dist/auth/providers.js.map +1 -0
  90. package/dist/auth/reducers/userEditor.d.ts +55 -0
  91. package/dist/auth/reducers/userEditor.d.ts.map +1 -0
  92. package/dist/auth/reducers/userEditor.js +136 -0
  93. package/dist/auth/reducers/userEditor.js.map +1 -0
  94. package/dist/events/components/ActivityActionItems.d.ts +45 -0
  95. package/dist/events/components/ActivityActionItems.d.ts.map +1 -0
  96. package/dist/events/components/ActivityActionItems.js +68 -0
  97. package/dist/events/components/ActivityActionItems.js.map +1 -0
  98. package/dist/events/components/ActivityGrid.d.ts +65 -0
  99. package/dist/events/components/ActivityGrid.d.ts.map +1 -0
  100. package/dist/events/components/ActivityGrid.js +61 -0
  101. package/dist/events/components/ActivityGrid.js.map +1 -0
  102. package/dist/events/components/ActivityGridRow.d.ts +31 -0
  103. package/dist/events/components/ActivityGridRow.d.ts.map +1 -0
  104. package/dist/events/components/ActivityGridRow.js +23 -0
  105. package/dist/events/components/ActivityGridRow.js.map +1 -0
  106. package/dist/events/components/ProposedChangeDiff.d.ts +46 -0
  107. package/dist/events/components/ProposedChangeDiff.d.ts.map +1 -0
  108. package/dist/events/components/ProposedChangeDiff.js +60 -0
  109. package/dist/events/components/ProposedChangeDiff.js.map +1 -0
  110. package/dist/events/components/format.d.ts +11 -0
  111. package/dist/events/components/format.d.ts.map +1 -0
  112. package/dist/events/components/format.js +26 -0
  113. package/dist/events/components/format.js.map +1 -0
  114. package/dist/events/components/index.d.ts +6 -0
  115. package/dist/events/components/index.d.ts.map +1 -0
  116. package/dist/events/components/index.js +6 -0
  117. package/dist/events/components/index.js.map +1 -0
  118. package/dist/events/digest.d.ts +167 -0
  119. package/dist/events/digest.d.ts.map +1 -0
  120. package/dist/events/digest.js +426 -0
  121. package/dist/events/digest.js.map +1 -0
  122. package/dist/events/hooks/index.d.ts +3 -0
  123. package/dist/events/hooks/index.d.ts.map +1 -0
  124. package/dist/events/hooks/index.js +3 -0
  125. package/dist/events/hooks/index.js.map +1 -0
  126. package/dist/events/hooks/useActivityDigest.d.ts +27 -0
  127. package/dist/events/hooks/useActivityDigest.d.ts.map +1 -0
  128. package/dist/events/hooks/useActivityDigest.js +18 -0
  129. package/dist/events/hooks/useActivityDigest.js.map +1 -0
  130. package/dist/events/hooks/useActivityStream.d.ts +44 -0
  131. package/dist/events/hooks/useActivityStream.d.ts.map +1 -0
  132. package/dist/events/hooks/useActivityStream.js +38 -0
  133. package/dist/events/hooks/useActivityStream.js.map +1 -0
  134. package/dist/events/index.d.ts +15 -0
  135. package/dist/events/index.d.ts.map +1 -0
  136. package/dist/events/index.js +14 -0
  137. package/dist/events/index.js.map +1 -0
  138. package/dist/events/types.d.ts +160 -0
  139. package/dist/events/types.d.ts.map +1 -0
  140. package/dist/events/types.js +21 -0
  141. package/dist/events/types.js.map +1 -0
  142. package/dist/firestore/components/CollectionList.d.ts +22 -0
  143. package/dist/firestore/components/CollectionList.d.ts.map +1 -0
  144. package/dist/firestore/components/CollectionList.js +21 -0
  145. package/dist/firestore/components/CollectionList.js.map +1 -0
  146. package/dist/firestore/components/DeleteWithConfirm.d.ts +38 -0
  147. package/dist/firestore/components/DeleteWithConfirm.d.ts.map +1 -0
  148. package/dist/firestore/components/DeleteWithConfirm.js +33 -0
  149. package/dist/firestore/components/DeleteWithConfirm.js.map +1 -0
  150. package/dist/firestore/components/DocumentEditor.d.ts +47 -0
  151. package/dist/firestore/components/DocumentEditor.d.ts.map +1 -0
  152. package/dist/firestore/components/DocumentEditor.js +176 -0
  153. package/dist/firestore/components/DocumentEditor.js.map +1 -0
  154. package/dist/firestore/components/DocumentList.d.ts +60 -0
  155. package/dist/firestore/components/DocumentList.d.ts.map +1 -0
  156. package/dist/firestore/components/DocumentList.js +39 -0
  157. package/dist/firestore/components/DocumentList.js.map +1 -0
  158. package/dist/firestore/components/DocumentPreview.d.ts +68 -0
  159. package/dist/firestore/components/DocumentPreview.d.ts.map +1 -0
  160. package/dist/firestore/components/DocumentPreview.js +76 -0
  161. package/dist/firestore/components/DocumentPreview.js.map +1 -0
  162. package/dist/firestore/components/FieldRenderer.d.ts +17 -0
  163. package/dist/firestore/components/FieldRenderer.d.ts.map +1 -0
  164. package/dist/firestore/components/FieldRenderer.js +16 -0
  165. package/dist/firestore/components/FieldRenderer.js.map +1 -0
  166. package/dist/firestore/components/QueryBuilder.d.ts +25 -0
  167. package/dist/firestore/components/QueryBuilder.d.ts.map +1 -0
  168. package/dist/firestore/components/QueryBuilder.js +78 -0
  169. package/dist/firestore/components/QueryBuilder.js.map +1 -0
  170. package/dist/firestore/components/ReferencePicker.d.ts +33 -0
  171. package/dist/firestore/components/ReferencePicker.d.ts.map +1 -0
  172. package/dist/firestore/components/ReferencePicker.js +42 -0
  173. package/dist/firestore/components/ReferencePicker.js.map +1 -0
  174. package/dist/firestore/components/TreeEntry.d.ts +15 -0
  175. package/dist/firestore/components/TreeEntry.d.ts.map +1 -0
  176. package/dist/firestore/components/TreeEntry.js +23 -0
  177. package/dist/firestore/components/TreeEntry.js.map +1 -0
  178. package/dist/firestore/components/context.d.ts +18 -0
  179. package/dist/firestore/components/context.d.ts.map +1 -0
  180. package/dist/firestore/components/context.js +7 -0
  181. package/dist/firestore/components/context.js.map +1 -0
  182. package/dist/firestore/fieldEditors/array.d.ts +3 -0
  183. package/dist/firestore/fieldEditors/array.d.ts.map +1 -0
  184. package/dist/firestore/fieldEditors/array.js +16 -0
  185. package/dist/firestore/fieldEditors/array.js.map +1 -0
  186. package/dist/firestore/fieldEditors/boolean.d.ts +3 -0
  187. package/dist/firestore/fieldEditors/boolean.d.ts.map +1 -0
  188. package/dist/firestore/fieldEditors/boolean.js +13 -0
  189. package/dist/firestore/fieldEditors/boolean.js.map +1 -0
  190. package/dist/firestore/fieldEditors/bytes.d.ts +4 -0
  191. package/dist/firestore/fieldEditors/bytes.d.ts.map +1 -0
  192. package/dist/firestore/fieldEditors/bytes.js +31 -0
  193. package/dist/firestore/fieldEditors/bytes.js.map +1 -0
  194. package/dist/firestore/fieldEditors/geopoint.d.ts +4 -0
  195. package/dist/firestore/fieldEditors/geopoint.d.ts.map +1 -0
  196. package/dist/firestore/fieldEditors/geopoint.js +32 -0
  197. package/dist/firestore/fieldEditors/geopoint.js.map +1 -0
  198. package/dist/firestore/fieldEditors/map.d.ts +3 -0
  199. package/dist/firestore/fieldEditors/map.d.ts.map +1 -0
  200. package/dist/firestore/fieldEditors/map.js +19 -0
  201. package/dist/firestore/fieldEditors/map.js.map +1 -0
  202. package/dist/firestore/fieldEditors/null.d.ts +3 -0
  203. package/dist/firestore/fieldEditors/null.d.ts.map +1 -0
  204. package/dist/firestore/fieldEditors/null.js +17 -0
  205. package/dist/firestore/fieldEditors/null.js.map +1 -0
  206. package/dist/firestore/fieldEditors/number.d.ts +3 -0
  207. package/dist/firestore/fieldEditors/number.d.ts.map +1 -0
  208. package/dist/firestore/fieldEditors/number.js +24 -0
  209. package/dist/firestore/fieldEditors/number.js.map +1 -0
  210. package/dist/firestore/fieldEditors/reference.d.ts +4 -0
  211. package/dist/firestore/fieldEditors/reference.d.ts.map +1 -0
  212. package/dist/firestore/fieldEditors/reference.js +49 -0
  213. package/dist/firestore/fieldEditors/reference.js.map +1 -0
  214. package/dist/firestore/fieldEditors/registry.d.ts +16 -0
  215. package/dist/firestore/fieldEditors/registry.d.ts.map +1 -0
  216. package/dist/firestore/fieldEditors/registry.js +42 -0
  217. package/dist/firestore/fieldEditors/registry.js.map +1 -0
  218. package/dist/firestore/fieldEditors/string.d.ts +3 -0
  219. package/dist/firestore/fieldEditors/string.d.ts.map +1 -0
  220. package/dist/firestore/fieldEditors/string.js +13 -0
  221. package/dist/firestore/fieldEditors/string.js.map +1 -0
  222. package/dist/firestore/fieldEditors/timestamp.d.ts +4 -0
  223. package/dist/firestore/fieldEditors/timestamp.d.ts.map +1 -0
  224. package/dist/firestore/fieldEditors/timestamp.js +52 -0
  225. package/dist/firestore/fieldEditors/timestamp.js.map +1 -0
  226. package/dist/firestore/fieldEditors/types.d.ts +64 -0
  227. package/dist/firestore/fieldEditors/types.d.ts.map +1 -0
  228. package/dist/firestore/fieldEditors/types.js +2 -0
  229. package/dist/firestore/fieldEditors/types.js.map +1 -0
  230. package/dist/firestore/fieldEditors/vector.d.ts +29 -0
  231. package/dist/firestore/fieldEditors/vector.d.ts.map +1 -0
  232. package/dist/firestore/fieldEditors/vector.js +93 -0
  233. package/dist/firestore/fieldEditors/vector.js.map +1 -0
  234. package/dist/firestore/firestoreApi.d.ts +35 -0
  235. package/dist/firestore/firestoreApi.d.ts.map +1 -0
  236. package/dist/firestore/firestoreApi.js +28 -0
  237. package/dist/firestore/firestoreApi.js.map +1 -0
  238. package/dist/firestore/hooks/coerceError.d.ts +17 -0
  239. package/dist/firestore/hooks/coerceError.d.ts.map +1 -0
  240. package/dist/firestore/hooks/coerceError.js +41 -0
  241. package/dist/firestore/hooks/coerceError.js.map +1 -0
  242. package/dist/firestore/hooks/index.d.ts +10 -0
  243. package/dist/firestore/hooks/index.d.ts.map +1 -0
  244. package/dist/firestore/hooks/index.js +10 -0
  245. package/dist/firestore/hooks/index.js.map +1 -0
  246. package/dist/firestore/hooks/useCollectionList.d.ts +37 -0
  247. package/dist/firestore/hooks/useCollectionList.d.ts.map +1 -0
  248. package/dist/firestore/hooks/useCollectionList.js +51 -0
  249. package/dist/firestore/hooks/useCollectionList.js.map +1 -0
  250. package/dist/firestore/hooks/useDocumentEditor.d.ts +58 -0
  251. package/dist/firestore/hooks/useDocumentEditor.d.ts.map +1 -0
  252. package/dist/firestore/hooks/useDocumentEditor.js +68 -0
  253. package/dist/firestore/hooks/useDocumentEditor.js.map +1 -0
  254. package/dist/firestore/hooks/useDocumentList.d.ts +45 -0
  255. package/dist/firestore/hooks/useDocumentList.d.ts.map +1 -0
  256. package/dist/firestore/hooks/useDocumentList.js +112 -0
  257. package/dist/firestore/hooks/useDocumentList.js.map +1 -0
  258. package/dist/firestore/hooks/useDocumentSubcollections.d.ts +29 -0
  259. package/dist/firestore/hooks/useDocumentSubcollections.d.ts.map +1 -0
  260. package/dist/firestore/hooks/useDocumentSubcollections.js +48 -0
  261. package/dist/firestore/hooks/useDocumentSubcollections.js.map +1 -0
  262. package/dist/firestore/hooks/useFirestoreCollection.d.ts +14 -0
  263. package/dist/firestore/hooks/useFirestoreCollection.d.ts.map +1 -0
  264. package/dist/firestore/hooks/useFirestoreCollection.js +35 -0
  265. package/dist/firestore/hooks/useFirestoreCollection.js.map +1 -0
  266. package/dist/firestore/hooks/useFirestoreDoc.d.ts +17 -0
  267. package/dist/firestore/hooks/useFirestoreDoc.d.ts.map +1 -0
  268. package/dist/firestore/hooks/useFirestoreDoc.js +34 -0
  269. package/dist/firestore/hooks/useFirestoreDoc.js.map +1 -0
  270. package/dist/firestore/hooks/useQueryBuilder.d.ts +51 -0
  271. package/dist/firestore/hooks/useQueryBuilder.d.ts.map +1 -0
  272. package/dist/firestore/hooks/useQueryBuilder.js +110 -0
  273. package/dist/firestore/hooks/useQueryBuilder.js.map +1 -0
  274. package/dist/firestore/hooks/useRecursiveDelete.d.ts +40 -0
  275. package/dist/firestore/hooks/useRecursiveDelete.d.ts.map +1 -0
  276. package/dist/firestore/hooks/useRecursiveDelete.js +44 -0
  277. package/dist/firestore/hooks/useRecursiveDelete.js.map +1 -0
  278. package/dist/firestore/hooks/useReferencePicker.d.ts +70 -0
  279. package/dist/firestore/hooks/useReferencePicker.d.ts.map +1 -0
  280. package/dist/firestore/hooks/useReferencePicker.js +140 -0
  281. package/dist/firestore/hooks/useReferencePicker.js.map +1 -0
  282. package/dist/firestore/import/parseImport.d.ts +55 -0
  283. package/dist/firestore/import/parseImport.d.ts.map +1 -0
  284. package/dist/firestore/import/parseImport.js +101 -0
  285. package/dist/firestore/import/parseImport.js.map +1 -0
  286. package/dist/firestore/index.d.ts +20 -0
  287. package/dist/firestore/index.d.ts.map +1 -0
  288. package/dist/firestore/index.js +28 -0
  289. package/dist/firestore/index.js.map +1 -0
  290. package/dist/firestore/reducers/defaults.d.ts +10 -0
  291. package/dist/firestore/reducers/defaults.d.ts.map +1 -0
  292. package/dist/firestore/reducers/defaults.js +37 -0
  293. package/dist/firestore/reducers/defaults.js.map +1 -0
  294. package/dist/firestore/reducers/documentEditor.d.ts +23 -0
  295. package/dist/firestore/reducers/documentEditor.d.ts.map +1 -0
  296. package/dist/firestore/reducers/documentEditor.js +199 -0
  297. package/dist/firestore/reducers/documentEditor.js.map +1 -0
  298. package/dist/firestore/reducers/tree.d.ts +28 -0
  299. package/dist/firestore/reducers/tree.d.ts.map +1 -0
  300. package/dist/firestore/reducers/tree.js +129 -0
  301. package/dist/firestore/reducers/tree.js.map +1 -0
  302. package/dist/firestore/reducers/types.d.ts +112 -0
  303. package/dist/firestore/reducers/types.d.ts.map +1 -0
  304. package/dist/firestore/reducers/types.js +2 -0
  305. package/dist/firestore/reducers/types.js.map +1 -0
  306. package/dist/firestore/reducers/validation.d.ts +25 -0
  307. package/dist/firestore/reducers/validation.d.ts.map +1 -0
  308. package/dist/firestore/reducers/validation.js +121 -0
  309. package/dist/firestore/reducers/validation.js.map +1 -0
  310. package/dist/firestore/types.d.ts +77 -0
  311. package/dist/firestore/types.d.ts.map +1 -0
  312. package/dist/firestore/types.js +196 -0
  313. package/dist/firestore/types.js.map +1 -0
  314. package/dist/firestore/validation/ids.d.ts +23 -0
  315. package/dist/firestore/validation/ids.d.ts.map +1 -0
  316. package/dist/firestore/validation/ids.js +46 -0
  317. package/dist/firestore/validation/ids.js.map +1 -0
  318. package/dist/index.d.ts +2 -0
  319. package/dist/index.d.ts.map +1 -0
  320. package/dist/index.js +2 -0
  321. package/dist/index.js.map +1 -0
  322. package/dist/primitives/Badge.d.ts +28 -0
  323. package/dist/primitives/Badge.d.ts.map +1 -0
  324. package/dist/primitives/Badge.js +11 -0
  325. package/dist/primitives/Badge.js.map +1 -0
  326. package/dist/primitives/ConfirmDialog.d.ts +42 -0
  327. package/dist/primitives/ConfirmDialog.d.ts.map +1 -0
  328. package/dist/primitives/ConfirmDialog.js +61 -0
  329. package/dist/primitives/ConfirmDialog.js.map +1 -0
  330. package/dist/primitives/CopyButton.d.ts +28 -0
  331. package/dist/primitives/CopyButton.d.ts.map +1 -0
  332. package/dist/primitives/CopyButton.js +27 -0
  333. package/dist/primitives/CopyButton.js.map +1 -0
  334. package/dist/primitives/JsonView.d.ts +29 -0
  335. package/dist/primitives/JsonView.d.ts.map +1 -0
  336. package/dist/primitives/JsonView.js +56 -0
  337. package/dist/primitives/JsonView.js.map +1 -0
  338. package/dist/primitives/SegmentedControl.d.ts +37 -0
  339. package/dist/primitives/SegmentedControl.d.ts.map +1 -0
  340. package/dist/primitives/SegmentedControl.js +18 -0
  341. package/dist/primitives/SegmentedControl.js.map +1 -0
  342. package/dist/primitives/Toast.d.ts +48 -0
  343. package/dist/primitives/Toast.d.ts.map +1 -0
  344. package/dist/primitives/Toast.js +60 -0
  345. package/dist/primitives/Toast.js.map +1 -0
  346. package/dist/primitives/VirtualList.d.ts +37 -0
  347. package/dist/primitives/VirtualList.d.ts.map +1 -0
  348. package/dist/primitives/VirtualList.js +47 -0
  349. package/dist/primitives/VirtualList.js.map +1 -0
  350. package/dist/primitives/hooks/useContainerSize.d.ts +29 -0
  351. package/dist/primitives/hooks/useContainerSize.d.ts.map +1 -0
  352. package/dist/primitives/hooks/useContainerSize.js +45 -0
  353. package/dist/primitives/hooks/useContainerSize.js.map +1 -0
  354. package/dist/primitives/index.d.ts +10 -0
  355. package/dist/primitives/index.d.ts.map +1 -0
  356. package/dist/primitives/index.js +10 -0
  357. package/dist/primitives/index.js.map +1 -0
  358. package/dist/primitives/useConfirm.d.ts +34 -0
  359. package/dist/primitives/useConfirm.d.ts.map +1 -0
  360. package/dist/primitives/useConfirm.js +63 -0
  361. package/dist/primitives/useConfirm.js.map +1 -0
  362. package/dist/rtdb/components/RtdbPathBar.d.ts +31 -0
  363. package/dist/rtdb/components/RtdbPathBar.d.ts.map +1 -0
  364. package/dist/rtdb/components/RtdbPathBar.js +47 -0
  365. package/dist/rtdb/components/RtdbPathBar.js.map +1 -0
  366. package/dist/rtdb/components/RtdbTree.d.ts +38 -0
  367. package/dist/rtdb/components/RtdbTree.d.ts.map +1 -0
  368. package/dist/rtdb/components/RtdbTree.js +103 -0
  369. package/dist/rtdb/components/RtdbTree.js.map +1 -0
  370. package/dist/rtdb/editor.d.ts +25 -0
  371. package/dist/rtdb/editor.d.ts.map +1 -0
  372. package/dist/rtdb/editor.js +79 -0
  373. package/dist/rtdb/editor.js.map +1 -0
  374. package/dist/rtdb/hooks/useRtdbTree.d.ts +31 -0
  375. package/dist/rtdb/hooks/useRtdbTree.d.ts.map +1 -0
  376. package/dist/rtdb/hooks/useRtdbTree.js +49 -0
  377. package/dist/rtdb/hooks/useRtdbTree.js.map +1 -0
  378. package/dist/rtdb/index.d.ts +17 -0
  379. package/dist/rtdb/index.d.ts.map +1 -0
  380. package/dist/rtdb/index.js +21 -0
  381. package/dist/rtdb/index.js.map +1 -0
  382. package/dist/rtdb/pathInput.d.ts +28 -0
  383. package/dist/rtdb/pathInput.d.ts.map +1 -0
  384. package/dist/rtdb/pathInput.js +40 -0
  385. package/dist/rtdb/pathInput.js.map +1 -0
  386. package/dist/rtdb/reducers/tree.d.ts +86 -0
  387. package/dist/rtdb/reducers/tree.d.ts.map +1 -0
  388. package/dist/rtdb/reducers/tree.js +131 -0
  389. package/dist/rtdb/reducers/tree.js.map +1 -0
  390. package/dist/rtdb/rtdbApi.d.ts +20 -0
  391. package/dist/rtdb/rtdbApi.d.ts.map +1 -0
  392. package/dist/rtdb/rtdbApi.js +2 -0
  393. package/dist/rtdb/rtdbApi.js.map +1 -0
  394. package/dist/rtdb/values.d.ts +44 -0
  395. package/dist/rtdb/values.d.ts.map +1 -0
  396. package/dist/rtdb/values.js +143 -0
  397. package/dist/rtdb/values.js.map +1 -0
  398. package/dist/rules/components/DenialInspector.d.ts +18 -0
  399. package/dist/rules/components/DenialInspector.d.ts.map +1 -0
  400. package/dist/rules/components/DenialInspector.js +58 -0
  401. package/dist/rules/components/DenialInspector.js.map +1 -0
  402. package/dist/rules/components/format.d.ts +56 -0
  403. package/dist/rules/components/format.d.ts.map +1 -0
  404. package/dist/rules/components/format.js +137 -0
  405. package/dist/rules/components/format.js.map +1 -0
  406. package/dist/rules/components/index.d.ts +4 -0
  407. package/dist/rules/components/index.d.ts.map +1 -0
  408. package/dist/rules/components/index.js +4 -0
  409. package/dist/rules/components/index.js.map +1 -0
  410. package/dist/rules/components/scope.d.ts +10 -0
  411. package/dist/rules/components/scope.d.ts.map +1 -0
  412. package/dist/rules/components/scope.js +72 -0
  413. package/dist/rules/components/scope.js.map +1 -0
  414. package/dist/rules/hooks/index.d.ts +2 -0
  415. package/dist/rules/hooks/index.d.ts.map +1 -0
  416. package/dist/rules/hooks/index.js +2 -0
  417. package/dist/rules/hooks/index.js.map +1 -0
  418. package/dist/rules/hooks/useDenialTrace.d.ts +51 -0
  419. package/dist/rules/hooks/useDenialTrace.d.ts.map +1 -0
  420. package/dist/rules/hooks/useDenialTrace.js +58 -0
  421. package/dist/rules/hooks/useDenialTrace.js.map +1 -0
  422. package/dist/rules/index.d.ts +14 -0
  423. package/dist/rules/index.d.ts.map +1 -0
  424. package/dist/rules/index.js +13 -0
  425. package/dist/rules/index.js.map +1 -0
  426. package/dist/rules/types.d.ts +75 -0
  427. package/dist/rules/types.d.ts.map +1 -0
  428. package/dist/rules/types.js +2 -0
  429. package/dist/rules/types.js.map +1 -0
  430. package/dist/storage/collisionRename.d.ts +73 -0
  431. package/dist/storage/collisionRename.d.ts.map +1 -0
  432. package/dist/storage/collisionRename.js +113 -0
  433. package/dist/storage/collisionRename.js.map +1 -0
  434. package/dist/storage/components/DeleteSelectionWithConfirm.d.ts +68 -0
  435. package/dist/storage/components/DeleteSelectionWithConfirm.d.ts.map +1 -0
  436. package/dist/storage/components/DeleteSelectionWithConfirm.js +82 -0
  437. package/dist/storage/components/DeleteSelectionWithConfirm.js.map +1 -0
  438. package/dist/storage/components/ObjectBrowser.d.ts +75 -0
  439. package/dist/storage/components/ObjectBrowser.d.ts.map +1 -0
  440. package/dist/storage/components/ObjectBrowser.js +59 -0
  441. package/dist/storage/components/ObjectBrowser.js.map +1 -0
  442. package/dist/storage/components/ObjectInspector.d.ts +43 -0
  443. package/dist/storage/components/ObjectInspector.d.ts.map +1 -0
  444. package/dist/storage/components/ObjectInspector.js +92 -0
  445. package/dist/storage/components/ObjectInspector.js.map +1 -0
  446. package/dist/storage/components/PathBreadcrumb.d.ts +30 -0
  447. package/dist/storage/components/PathBreadcrumb.d.ts.map +1 -0
  448. package/dist/storage/components/PathBreadcrumb.js +26 -0
  449. package/dist/storage/components/PathBreadcrumb.js.map +1 -0
  450. package/dist/storage/components/UploadDropzone.d.ts +50 -0
  451. package/dist/storage/components/UploadDropzone.d.ts.map +1 -0
  452. package/dist/storage/components/UploadDropzone.js +109 -0
  453. package/dist/storage/components/UploadDropzone.js.map +1 -0
  454. package/dist/storage/folderPlaceholder.d.ts +14 -0
  455. package/dist/storage/folderPlaceholder.d.ts.map +1 -0
  456. package/dist/storage/folderPlaceholder.js +27 -0
  457. package/dist/storage/folderPlaceholder.js.map +1 -0
  458. package/dist/storage/hooks/index.d.ts +9 -0
  459. package/dist/storage/hooks/index.d.ts.map +1 -0
  460. package/dist/storage/hooks/index.js +9 -0
  461. package/dist/storage/hooks/index.js.map +1 -0
  462. package/dist/storage/hooks/useMetadataEditor.d.ts +114 -0
  463. package/dist/storage/hooks/useMetadataEditor.d.ts.map +1 -0
  464. package/dist/storage/hooks/useMetadataEditor.js +193 -0
  465. package/dist/storage/hooks/useMetadataEditor.js.map +1 -0
  466. package/dist/storage/hooks/useObjectUpload.d.ts +109 -0
  467. package/dist/storage/hooks/useObjectUpload.d.ts.map +1 -0
  468. package/dist/storage/hooks/useObjectUpload.js +134 -0
  469. package/dist/storage/hooks/useObjectUpload.js.map +1 -0
  470. package/dist/storage/hooks/usePathState.d.ts +43 -0
  471. package/dist/storage/hooks/usePathState.d.ts.map +1 -0
  472. package/dist/storage/hooks/usePathState.js +42 -0
  473. package/dist/storage/hooks/usePathState.js.map +1 -0
  474. package/dist/storage/hooks/useStorageDelete.d.ts +73 -0
  475. package/dist/storage/hooks/useStorageDelete.d.ts.map +1 -0
  476. package/dist/storage/hooks/useStorageDelete.js +114 -0
  477. package/dist/storage/hooks/useStorageDelete.js.map +1 -0
  478. package/dist/storage/hooks/useStorageList.d.ts +74 -0
  479. package/dist/storage/hooks/useStorageList.d.ts.map +1 -0
  480. package/dist/storage/hooks/useStorageList.js +167 -0
  481. package/dist/storage/hooks/useStorageList.js.map +1 -0
  482. package/dist/storage/hooks/useStorageObject.d.ts +34 -0
  483. package/dist/storage/hooks/useStorageObject.d.ts.map +1 -0
  484. package/dist/storage/hooks/useStorageObject.js +114 -0
  485. package/dist/storage/hooks/useStorageObject.js.map +1 -0
  486. package/dist/storage/hooks/useStorageRulesGate.d.ts +128 -0
  487. package/dist/storage/hooks/useStorageRulesGate.d.ts.map +1 -0
  488. package/dist/storage/hooks/useStorageRulesGate.js +158 -0
  489. package/dist/storage/hooks/useStorageRulesGate.js.map +1 -0
  490. package/dist/storage/hooks/useStorageSelection.d.ts +32 -0
  491. package/dist/storage/hooks/useStorageSelection.d.ts.map +1 -0
  492. package/dist/storage/hooks/useStorageSelection.js +55 -0
  493. package/dist/storage/hooks/useStorageSelection.js.map +1 -0
  494. package/dist/storage/index.d.ts +11 -0
  495. package/dist/storage/index.d.ts.map +1 -0
  496. package/dist/storage/index.js +17 -0
  497. package/dist/storage/index.js.map +1 -0
  498. package/dist/storage/pendingPrefixes.d.ts +73 -0
  499. package/dist/storage/pendingPrefixes.d.ts.map +1 -0
  500. package/dist/storage/pendingPrefixes.js +98 -0
  501. package/dist/storage/pendingPrefixes.js.map +1 -0
  502. package/dist/storage/previews.d.ts +51 -0
  503. package/dist/storage/previews.d.ts.map +1 -0
  504. package/dist/storage/previews.js +73 -0
  505. package/dist/storage/previews.js.map +1 -0
  506. package/dist/storage/storageApi.d.ts +30 -0
  507. package/dist/storage/storageApi.d.ts.map +1 -0
  508. package/dist/storage/storageApi.js +13 -0
  509. package/dist/storage/storageApi.js.map +1 -0
  510. package/dist/traffic/components/RuleHeatmap.d.ts +34 -0
  511. package/dist/traffic/components/RuleHeatmap.d.ts.map +1 -0
  512. package/dist/traffic/components/RuleHeatmap.js +40 -0
  513. package/dist/traffic/components/RuleHeatmap.js.map +1 -0
  514. package/dist/traffic/components/TrafficDetail.d.ts +33 -0
  515. package/dist/traffic/components/TrafficDetail.d.ts.map +1 -0
  516. package/dist/traffic/components/TrafficDetail.js +28 -0
  517. package/dist/traffic/components/TrafficDetail.js.map +1 -0
  518. package/dist/traffic/components/TrafficGroupRow.d.ts +28 -0
  519. package/dist/traffic/components/TrafficGroupRow.d.ts.map +1 -0
  520. package/dist/traffic/components/TrafficGroupRow.js +18 -0
  521. package/dist/traffic/components/TrafficGroupRow.js.map +1 -0
  522. package/dist/traffic/components/TrafficLineChart.d.ts +34 -0
  523. package/dist/traffic/components/TrafficLineChart.d.ts.map +1 -0
  524. package/dist/traffic/components/TrafficLineChart.js +49 -0
  525. package/dist/traffic/components/TrafficLineChart.js.map +1 -0
  526. package/dist/traffic/components/TrafficLog.d.ts +52 -0
  527. package/dist/traffic/components/TrafficLog.d.ts.map +1 -0
  528. package/dist/traffic/components/TrafficLog.js +34 -0
  529. package/dist/traffic/components/TrafficLog.js.map +1 -0
  530. package/dist/traffic/components/TrafficMetricCards.d.ts +26 -0
  531. package/dist/traffic/components/TrafficMetricCards.d.ts.map +1 -0
  532. package/dist/traffic/components/TrafficMetricCards.js +24 -0
  533. package/dist/traffic/components/TrafficMetricCards.js.map +1 -0
  534. package/dist/traffic/components/TrafficRow.d.ts +40 -0
  535. package/dist/traffic/components/TrafficRow.d.ts.map +1 -0
  536. package/dist/traffic/components/TrafficRow.js +27 -0
  537. package/dist/traffic/components/TrafficRow.js.map +1 -0
  538. package/dist/traffic/components/TrafficStats.d.ts +18 -0
  539. package/dist/traffic/components/TrafficStats.d.ts.map +1 -0
  540. package/dist/traffic/components/TrafficStats.js +19 -0
  541. package/dist/traffic/components/TrafficStats.js.map +1 -0
  542. package/dist/traffic/components/TrafficTimeline.d.ts +81 -0
  543. package/dist/traffic/components/TrafficTimeline.d.ts.map +1 -0
  544. package/dist/traffic/components/TrafficTimeline.js +72 -0
  545. package/dist/traffic/components/TrafficTimeline.js.map +1 -0
  546. package/dist/traffic/components/format.d.ts +13 -0
  547. package/dist/traffic/components/format.d.ts.map +1 -0
  548. package/dist/traffic/components/format.js +24 -0
  549. package/dist/traffic/components/format.js.map +1 -0
  550. package/dist/traffic/components/index.d.ts +11 -0
  551. package/dist/traffic/components/index.d.ts.map +1 -0
  552. package/dist/traffic/components/index.js +11 -0
  553. package/dist/traffic/components/index.js.map +1 -0
  554. package/dist/traffic/hooks/index.d.ts +8 -0
  555. package/dist/traffic/hooks/index.d.ts.map +1 -0
  556. package/dist/traffic/hooks/index.js +8 -0
  557. package/dist/traffic/hooks/index.js.map +1 -0
  558. package/dist/traffic/hooks/useRuleHeatmap.d.ts +33 -0
  559. package/dist/traffic/hooks/useRuleHeatmap.d.ts.map +1 -0
  560. package/dist/traffic/hooks/useRuleHeatmap.js +54 -0
  561. package/dist/traffic/hooks/useRuleHeatmap.js.map +1 -0
  562. package/dist/traffic/hooks/useTrafficBuckets.d.ts +71 -0
  563. package/dist/traffic/hooks/useTrafficBuckets.d.ts.map +1 -0
  564. package/dist/traffic/hooks/useTrafficBuckets.js +74 -0
  565. package/dist/traffic/hooks/useTrafficBuckets.js.map +1 -0
  566. package/dist/traffic/hooks/useTrafficFilter.d.ts +40 -0
  567. package/dist/traffic/hooks/useTrafficFilter.d.ts.map +1 -0
  568. package/dist/traffic/hooks/useTrafficFilter.js +33 -0
  569. package/dist/traffic/hooks/useTrafficFilter.js.map +1 -0
  570. package/dist/traffic/hooks/useTrafficGroups.d.ts +47 -0
  571. package/dist/traffic/hooks/useTrafficGroups.d.ts.map +1 -0
  572. package/dist/traffic/hooks/useTrafficGroups.js +73 -0
  573. package/dist/traffic/hooks/useTrafficGroups.js.map +1 -0
  574. package/dist/traffic/hooks/useTrafficMetrics.d.ts +66 -0
  575. package/dist/traffic/hooks/useTrafficMetrics.d.ts.map +1 -0
  576. package/dist/traffic/hooks/useTrafficMetrics.js +156 -0
  577. package/dist/traffic/hooks/useTrafficMetrics.js.map +1 -0
  578. package/dist/traffic/hooks/useTrafficMonitor.d.ts +56 -0
  579. package/dist/traffic/hooks/useTrafficMonitor.d.ts.map +1 -0
  580. package/dist/traffic/hooks/useTrafficMonitor.js +58 -0
  581. package/dist/traffic/hooks/useTrafficMonitor.js.map +1 -0
  582. package/dist/traffic/hooks/useTrafficStats.d.ts +32 -0
  583. package/dist/traffic/hooks/useTrafficStats.d.ts.map +1 -0
  584. package/dist/traffic/hooks/useTrafficStats.js +45 -0
  585. package/dist/traffic/hooks/useTrafficStats.js.map +1 -0
  586. package/dist/traffic/index.d.ts +4 -0
  587. package/dist/traffic/index.d.ts.map +1 -0
  588. package/dist/traffic/index.js +3 -0
  589. package/dist/traffic/index.js.map +1 -0
  590. package/dist/traffic/types.d.ts +72 -0
  591. package/dist/traffic/types.d.ts.map +1 -0
  592. package/dist/traffic/types.js +10 -0
  593. package/dist/traffic/types.js.map +1 -0
  594. package/package.json +116 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilder.js","sourceRoot":"","sources":["../../../src/firestore/components/QueryBuilder.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { CollectionReference, DocumentReference, Firestore } from 'pyric/firestore';
2
+ export interface ReferencePickerProps {
3
+ firestore: Firestore;
4
+ /** Initial path text. */
5
+ initialPath?: string;
6
+ /**
7
+ * Lister for subcollections. Required — see
8
+ * `useReferencePicker` docs for the rationale.
9
+ */
10
+ listCollections: (firestore: Firestore, parent: DocumentReference | null) => Promise<CollectionReference[]>;
11
+ /** Fired when the user commits a picked reference (browse pick OR
12
+ * a valid manually-typed path with the Commit button). */
13
+ onPick?: (ref: DocumentReference) => void;
14
+ /** Forwarded to the root. */
15
+ className?: string;
16
+ /** Label for the path text input. Default 'Document path'. */
17
+ pathLabel?: string;
18
+ }
19
+ /**
20
+ * Visible reference picker — text input + browseable panel.
21
+ *
22
+ * Two ways to commit a reference:
23
+ *
24
+ * 1. Type a path, then click Commit (enabled only when the path
25
+ * parses to a valid `DocumentReference`).
26
+ * 2. Drill into a collection in the panel and click a document
27
+ * row.
28
+ *
29
+ * Either path fires `onPick(ref)`. Headless — emits structural
30
+ * `data-pyric-*` for styling.
31
+ */
32
+ export declare function ReferencePicker({ firestore, initialPath, listCollections, onPick, className, pathLabel, }: ReferencePickerProps): import("react").JSX.Element;
33
+ //# sourceMappingURL=ReferencePicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReferencePicker.d.ts","sourceRoot":"","sources":["../../../src/firestore/components/ReferencePicker.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACV,MAAM,iBAAiB,CAAC;AAMzB,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,SAAS,CAAC;IACrB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,eAAe,EAAE,CACf,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,iBAAiB,GAAG,IAAI,KAC7B,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACpC;+DAC2D;IAC3D,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC1C,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,WAAW,EACX,eAAe,EACf,MAAM,EACN,SAAS,EACT,SAA2B,GAC5B,EAAE,oBAAoB,+BA0DtB"}
@@ -0,0 +1,42 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { useReferencePicker, } from '../hooks/useReferencePicker.js';
4
+ /**
5
+ * Visible reference picker — text input + browseable panel.
6
+ *
7
+ * Two ways to commit a reference:
8
+ *
9
+ * 1. Type a path, then click Commit (enabled only when the path
10
+ * parses to a valid `DocumentReference`).
11
+ * 2. Drill into a collection in the panel and click a document
12
+ * row.
13
+ *
14
+ * Either path fires `onPick(ref)`. Headless — emits structural
15
+ * `data-pyric-*` for styling.
16
+ */
17
+ export function ReferencePicker({ firestore, initialPath, listCollections, onPick, className, pathLabel = 'Document path', }) {
18
+ const picker = useReferencePicker({ firestore, listCollections, initialPath });
19
+ const [browseOpen, setBrowseOpen] = useState(false);
20
+ return (_jsxs("div", { className: className, "data-pyric-ui": "reference-picker", children: [_jsxs("label", { "data-pyric-reference-path-label": true, children: [pathLabel, _jsx("input", { type: "text", value: picker.pathInput, onChange: (e) => picker.setPathInput(e.target.value), placeholder: "users/alice", "data-pyric-reference-path-input": true, "aria-invalid": picker.error ? 'true' : undefined })] }), picker.error ? (_jsx("span", { "data-pyric-error-message": true, children: picker.error })) : null, _jsxs("div", { "data-pyric-reference-actions": true, children: [_jsx("button", { type: "button", "data-pyric-reference-browse-toggle": true, "aria-expanded": browseOpen, onClick: () => setBrowseOpen((o) => !o), children: browseOpen ? 'Close browser' : 'Browse' }), _jsx("button", { type: "button", "data-pyric-reference-commit": true, disabled: !picker.reference, onClick: () => {
21
+ if (picker.reference)
22
+ onPick?.(picker.reference);
23
+ }, children: "Commit" })] }), browseOpen ? (_jsx(BrowsePanel, { browseLocation: picker.browseLocation, canDrillBack: picker.canDrillBack, collections: picker.collections, documents: picker.documents, isLoading: picker.isLoading, drillIntoCollection: picker.drillIntoCollection, drillIntoDocument: picker.drillIntoDocument, drillBack: picker.drillBack, onPick: (ref) => {
24
+ picker.pick(ref);
25
+ onPick?.(ref);
26
+ } })) : null] }));
27
+ }
28
+ function BrowsePanel({ browseLocation, canDrillBack, collections, documents, isLoading, drillIntoCollection, drillIntoDocument, drillBack, onPick, }) {
29
+ const here = describeLocation(browseLocation);
30
+ return (_jsxs("div", { "data-pyric-ui": "reference-browse-panel", "data-pyric-loading": isLoading ? '' : undefined, children: [_jsxs("div", { "data-pyric-browse-header": true, children: [_jsx("button", { type: "button", "data-pyric-browse-back": true, onClick: drillBack, disabled: !canDrillBack, "aria-label": "Back", children: "\u2190" }), _jsx("span", { "data-pyric-browse-location": true, children: here })] }), browseLocation.kind === 'root' || browseLocation.kind === 'document' ? (_jsx("ul", { "data-pyric-browse-collections": true, children: collections.map((c) => (_jsx("li", { "data-pyric-browse-entry": true, "data-pyric-entry-kind": "collection", "data-pyric-collection-id": c.id, children: _jsxs("button", { type: "button", onClick: () => drillIntoCollection(c), "data-pyric-browse-select": true, children: [c.id, "/"] }) }, c.path))) })) : (_jsx("ul", { "data-pyric-browse-documents": true, children: documents.map((d) => {
31
+ const ref = d.ref;
32
+ return (_jsxs("li", { "data-pyric-browse-entry": true, "data-pyric-entry-kind": "document", "data-pyric-document-id": d.id, children: [_jsx("button", { type: "button", onClick: () => onPick(ref), "data-pyric-browse-pick": true, children: d.id }), _jsx("button", { type: "button", onClick: () => drillIntoDocument(ref), "data-pyric-browse-drill": true, "aria-label": "Drill into subcollections", children: "\u2192" })] }, ref.path));
33
+ }) }))] }));
34
+ }
35
+ function describeLocation(loc) {
36
+ if (loc.kind === 'root')
37
+ return '/';
38
+ if (loc.kind === 'document')
39
+ return `/${loc.ref.path}`;
40
+ return `/${loc.ref.path}`;
41
+ }
42
+ //# sourceMappingURL=ReferencePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReferencePicker.js","sourceRoot":"","sources":["../../../src/firestore/components/ReferencePicker.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { FieldEditorRegistry } from '../fieldEditors/types.js';
2
+ /**
3
+ * One row of the read-only value tree. A scalar renders `key: value` inline; a
4
+ * map/array renders a disclosure chevron + key that toggles its nested tree
5
+ * (collapsible, default expanded). Shared by the map + array displays so both
6
+ * lists and objects get the same chevron behavior.
7
+ */
8
+ export declare function TreeEntry({ label, value, path, fieldEditors, kind, }: {
9
+ label: string;
10
+ value: unknown;
11
+ path: string;
12
+ fieldEditors: FieldEditorRegistry;
13
+ kind: 'key' | 'index';
14
+ }): import("react").JSX.Element;
15
+ //# sourceMappingURL=TreeEntry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeEntry.d.ts","sourceRoot":"","sources":["../../../src/firestore/components/TreeEntry.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,IAAI,GACL,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,mBAAmB,CAAC;IAClC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;CACvB,+BAkCA"}
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { inferType } from '../types.js';
4
+ import { FieldRenderer } from './FieldRenderer.js';
5
+ /**
6
+ * One row of the read-only value tree. A scalar renders `key: value` inline; a
7
+ * map/array renders a disclosure chevron + key that toggles its nested tree
8
+ * (collapsible, default expanded). Shared by the map + array displays so both
9
+ * lists and objects get the same chevron behavior.
10
+ */
11
+ export function TreeEntry({ label, value, path, fieldEditors, kind, }) {
12
+ const type = inferType(value);
13
+ const nested = type === 'map' || type === 'array';
14
+ const [expanded, setExpanded] = useState(true);
15
+ const labelAttr = kind === 'key' ? { 'data-pyric-tree-key': '' } : { 'data-pyric-tree-index': '' };
16
+ // Stable targeting hook for the entry (map key / array index).
17
+ const entryAttr = kind === 'key' ? { 'data-field-name': label } : { 'data-field-index': label };
18
+ if (!nested) {
19
+ return (_jsxs("li", { "data-pyric-tree-entry": true, ...entryAttr, children: [_jsx("span", { "data-pyric-tree-chevron": true, "data-pyric-tree-chevron-empty": true, "aria-hidden": "true" }), _jsx("span", { ...labelAttr, children: label }), _jsx(FieldRenderer, { value: value, path: path, fieldEditors: fieldEditors })] }));
20
+ }
21
+ return (_jsxs("li", { "data-pyric-tree-entry": true, "data-pyric-tree-nested": true, ...entryAttr, children: [_jsxs("button", { type: "button", "data-pyric-tree-toggle": true, "aria-expanded": expanded, onClick: () => setExpanded((e) => !e), children: [_jsx("span", { "data-pyric-tree-chevron": true, "aria-hidden": "true", children: "\u203A" }), _jsx("span", { ...labelAttr, children: label })] }), expanded ? _jsx(FieldRenderer, { value: value, path: path, fieldEditors: fieldEditors }) : null] }));
22
+ }
23
+ //# sourceMappingURL=TreeEntry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeEntry.js","sourceRoot":"","sources":["../../../src/firestore/components/TreeEntry.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,EACxB,KAAK,EACL,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,IAAI,GAOL;IACC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAG,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,OAAO,CAAC;IAClD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,EAAE,EAAE,CAAC;IACnG,+DAA+D;IAC/D,MAAM,SAAS,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC;IAEhG,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CACL,gDAA8B,SAAS,aACrC,sGAAwE,MAAM,GAAG,EACjF,kBAAU,SAAS,YAAG,KAAK,GAAQ,EACnC,KAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,GAAI,IACpE,CACN,CAAC;IACJ,CAAC;IAED,OAAO,CACL,gFAAqD,SAAS,aAC5D,kBACE,IAAI,EAAC,QAAQ,mDAEE,QAAQ,EACvB,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAErC,+DAA0C,MAAM,uBAEzC,EACP,kBAAU,SAAS,YAAG,KAAK,GAAQ,IAC5B,EACR,QAAQ,CAAC,CAAC,CAAC,KAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC,CAAC,CAAC,IAAI,IACvF,CACN,CAAC;AACJ,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { DocumentReference } from 'pyric/firestore';
2
+ /**
3
+ * Cross-cutting display context threaded into individual field
4
+ * editors. Today it carries:
5
+ *
6
+ * - `onReferenceClick` — fires when the reference Display
7
+ * component is activated. Consumers wire navigation here.
8
+ *
9
+ * Read by the per-type Display components via `useDisplayContext`.
10
+ * Set by `<DocumentPreview>`'s wrapper. Editors that don't need it
11
+ * (string, number, …) simply ignore the context.
12
+ */
13
+ export interface DisplayContextValue {
14
+ onReferenceClick?: (ref: DocumentReference) => void;
15
+ }
16
+ export declare const DisplayContextProvider: import("react").Provider<DisplayContextValue>;
17
+ export declare function useDisplayContext(): DisplayContextValue;
18
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/firestore/components/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACrD;AAID,eAAO,MAAM,sBAAsB,+CAAe,CAAC;AAEnD,wBAAgB,iBAAiB,IAAI,mBAAmB,CAEvD"}
@@ -0,0 +1,7 @@
1
+ import { createContext, useContext } from 'react';
2
+ const Ctx = createContext({});
3
+ export const DisplayContextProvider = Ctx.Provider;
4
+ export function useDisplayContext() {
5
+ return useContext(Ctx);
6
+ }
7
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/firestore/components/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAkBlD,MAAM,GAAG,GAAG,aAAa,CAAsB,EAAE,CAAC,CAAC;AAEnD,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC,QAAQ,CAAC;AAEnD,MAAM,UAAU,iBAAiB;IAC/B,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FieldEditorContract } from './types.js';
2
+ export declare const arrayEditor: FieldEditorContract<unknown[]>;
3
+ //# sourceMappingURL=array.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/array.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAqB,MAAM,YAAY,CAAC;AAyBzE,eAAO,MAAM,WAAW,EAAE,mBAAmB,CAAC,OAAO,EAAE,CAGtD,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { TreeEntry } from '../components/TreeEntry.js';
3
+ /**
4
+ * Read-only array renderer as an indented tree: each element is `index value`
5
+ * inline for scalars, or a collapsible disclosure (chevron + index) whose
6
+ * nested tree indents below for maps/arrays (so arrays-of-maps render through
7
+ * the same recursion). {@link TreeEntry} owns the collapse state + chevron.
8
+ */
9
+ function ArrayDisplay({ value, path, fieldEditors }) {
10
+ return (_jsx("ul", { "data-pyric-field-type": "array", "data-pyric-tree": true, "data-pyric-field-path": path, children: value.map((item, i) => (_jsx(TreeEntry, { label: String(i), value: item, path: path ? `${path}[${i}]` : `[${i}]`, fieldEditors: fieldEditors ?? {}, kind: "index" }, i))) }));
11
+ }
12
+ export const arrayEditor = {
13
+ type: 'array',
14
+ Display: ArrayDisplay,
15
+ };
16
+ //# sourceMappingURL=array.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/array.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD;;;;;GAKG;AACH,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAgC;IAC/E,OAAO,CACL,sCAA0B,OAAO,oDAAwC,IAAI,YAC1E,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,KAAC,SAAS,IAER,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAChB,KAAK,EAAE,IAAI,EACX,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EACvC,YAAY,EAAE,YAAY,IAAI,EAAE,EAChC,IAAI,EAAC,OAAO,IALP,CAAC,CAMN,CACH,CAAC,GACC,CACN,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAmC;IACzD,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,YAAY;CACtB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FieldEditorContract } from './types.js';
2
+ export declare const booleanEditor: FieldEditorContract<boolean>;
3
+ //# sourceMappingURL=boolean.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/boolean.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAqC,MAAM,YAAY,CAAC;AAkCzF,eAAO,MAAM,aAAa,EAAE,mBAAmB,CAAC,OAAO,CAItD,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ function BooleanDisplay({ value, path }) {
3
+ return (_jsx("span", { "data-pyric-field-type": "boolean", "data-pyric-field-path": path, "data-value": value ? 'true' : 'false', children: value ? 'true' : 'false' }));
4
+ }
5
+ function BooleanEdit({ value, onChange, path }) {
6
+ return (_jsx("span", { "data-pyric-field-type": "boolean", "data-pyric-field-path": path, "data-value": value ? 'true' : 'false', children: _jsxs("select", { value: value ? 'true' : 'false', onChange: (e) => onChange(e.target.value === 'true'), "aria-label": "Boolean value", "data-pyric-boolean-select": true, children: [_jsx("option", { value: "true", children: "true" }), _jsx("option", { value: "false", children: "false" })] }) }));
7
+ }
8
+ export const booleanEditor = {
9
+ type: 'boolean',
10
+ Display: BooleanDisplay,
11
+ Edit: BooleanEdit,
12
+ };
13
+ //# sourceMappingURL=boolean.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/boolean.tsx"],"names":[],"mappings":";AAEA,SAAS,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAA8B;IACjE,OAAO,CACL,wCACwB,SAAS,2BACR,IAAI,gBACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,YAEnC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GACpB,CACR,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAA2B;IACrE,OAAO,CACL,wCACwB,SAAS,2BACR,IAAI,gBACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,YAEpC,kBACE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,gBACzC,eAAe,gDAG1B,iBAAQ,KAAK,EAAC,MAAM,qBAAc,EAClC,iBAAQ,KAAK,EAAC,OAAO,sBAAe,IAC7B,GACJ,CACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,WAAW;CAClB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Bytes } from 'pyric/firestore';
2
+ import type { FieldEditorContract } from './types.js';
3
+ export declare const bytesEditor: FieldEditorContract<Bytes>;
4
+ //# sourceMappingURL=bytes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytes.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/bytes.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,EAAE,mBAAmB,EAAqC,MAAM,YAAY,CAAC;AA+CzF,eAAO,MAAM,WAAW,EAAE,mBAAmB,CAAC,KAAK,CAIlD,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Bytes } from 'pyric/firestore';
3
+ function BytesDisplay({ value, path }) {
4
+ const b64 = value.toBase64();
5
+ return (_jsx("code", { "data-pyric-field-type": "bytes", "data-pyric-field-path": path, "data-byte-length": String(value.toUint8Array().byteLength), children: b64 }));
6
+ }
7
+ /**
8
+ * Base64 textarea. Anything that's not legal base64 produces a
9
+ * thrown error when passed to `Bytes.fromBase64String`; we swallow
10
+ * it and leave the old value in place. The validator surfaces the
11
+ * stale state by not flagging it (the underlying Bytes is still
12
+ * valid), so consumers wanting stricter feedback need to swap the
13
+ * editor.
14
+ */
15
+ function BytesEdit({ value, onChange, error, path }) {
16
+ return (_jsxs("label", { "data-pyric-field-type": "bytes", "data-pyric-field-path": path, "data-pyric-error": error ? '' : undefined, children: [_jsx("textarea", { value: value.toBase64(), onChange: (e) => {
17
+ try {
18
+ onChange(Bytes.fromBase64String(e.target.value));
19
+ }
20
+ catch {
21
+ // Invalid base64 — keep the previous value. The user
22
+ // sees the bad text in the textarea until they fix it.
23
+ }
24
+ }, "aria-invalid": error ? 'true' : undefined }), error ? _jsx("span", { "data-pyric-error-message": true, children: error }) : null] }));
25
+ }
26
+ export const bytesEditor = {
27
+ type: 'bytes',
28
+ Display: BytesDisplay,
29
+ Edit: BytesEdit,
30
+ };
31
+ //# sourceMappingURL=bytes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/bytes.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGxC,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,EAA4B;IAC7D,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC7B,OAAO,CACL,wCACwB,OAAO,2BACN,IAAI,sBACT,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,YAExD,GAAG,GACC,CACR,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAyB;IACxE,OAAO,CACL,0CACwB,OAAO,2BACN,IAAI,sBACT,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,aAExC,mBACE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,EACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,IAAI,CAAC;wBACH,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACnD,CAAC;oBAAC,MAAM,CAAC;wBACP,qDAAqD;wBACrD,uDAAuD;oBACzD,CAAC;gBACH,CAAC,kBACa,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,GACxC,EACD,KAAK,CAAC,CAAC,CAAC,2DAAgC,KAAK,GAAQ,CAAC,CAAC,CAAC,IAAI,IACvD,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAA+B;IACrD,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,SAAS;CAChB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { GeoPoint } from 'pyric/firestore';
2
+ import type { FieldEditorContract } from './types.js';
3
+ export declare const geopointEditor: FieldEditorContract<GeoPoint>;
4
+ //# sourceMappingURL=geopoint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geopoint.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/geopoint.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAqC,MAAM,YAAY,CAAC;AAiEzF,eAAO,MAAM,cAAc,EAAE,mBAAmB,CAAC,QAAQ,CAIxD,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { GeoPoint } from 'pyric/firestore';
3
+ function GeoPointDisplay({ value, path }) {
4
+ return (_jsxs("span", { "data-pyric-field-type": "geopoint", "data-pyric-field-path": path, "data-lat": String(value.latitude), "data-lng": String(value.longitude), children: [value.latitude, ", ", value.longitude] }));
5
+ }
6
+ function GeoPointEdit({ value, onChange, error, path }) {
7
+ return (_jsxs("span", { "data-pyric-field-type": "geopoint", "data-pyric-field-path": path, "data-pyric-error": error ? '' : undefined, children: [_jsx("label", { children: _jsx("input", { type: "number", step: "any", min: -90, max: 90, value: value.latitude, onChange: (e) => {
8
+ const lat = parseFloat(e.target.value);
9
+ try {
10
+ onChange(new GeoPoint(lat, value.longitude));
11
+ }
12
+ catch {
13
+ // GeoPoint constructor throws on out-of-range. Leave
14
+ // the previous value in place; the validator will
15
+ // surface the issue on next render.
16
+ }
17
+ }, "aria-label": "Latitude" }) }), _jsx("label", { children: _jsx("input", { type: "number", step: "any", min: -180, max: 180, value: value.longitude, onChange: (e) => {
18
+ const lng = parseFloat(e.target.value);
19
+ try {
20
+ onChange(new GeoPoint(value.latitude, lng));
21
+ }
22
+ catch {
23
+ // see above
24
+ }
25
+ }, "aria-label": "Longitude" }) }), error ? _jsx("span", { "data-pyric-error-message": true, children: error }) : null] }));
26
+ }
27
+ export const geopointEditor = {
28
+ type: 'geopoint',
29
+ Display: GeoPointDisplay,
30
+ Edit: GeoPointEdit,
31
+ };
32
+ //# sourceMappingURL=geopoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geopoint.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/geopoint.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,SAAS,eAAe,CAAC,EAAE,KAAK,EAAE,IAAI,EAA+B;IACnE,OAAO,CACL,yCACwB,UAAU,2BACT,IAAI,cACjB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,cACtB,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,aAEhC,KAAK,CAAC,QAAQ,QAAI,KAAK,CAAC,SAAS,IAC7B,CACR,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAA4B;IAC9E,OAAO,CACL,yCACwB,UAAU,2BACT,IAAI,sBACT,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,aAExC,0BACE,gBACE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,KAAK,EACV,GAAG,EAAE,CAAC,EAAE,EACR,GAAG,EAAE,EAAE,EACP,KAAK,EAAE,KAAK,CAAC,QAAQ,EACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;wBACd,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACvC,IAAI,CAAC;4BACH,QAAQ,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;wBAC/C,CAAC;wBAAC,MAAM,CAAC;4BACP,qDAAqD;4BACrD,kDAAkD;4BAClD,oCAAoC;wBACtC,CAAC;oBACH,CAAC,gBACU,UAAU,GACrB,GACI,EACR,0BACE,gBACE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,KAAK,EACV,GAAG,EAAE,CAAC,GAAG,EACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,CAAC,SAAS,EACtB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;wBACd,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACvC,IAAI,CAAC;4BACH,QAAQ,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC9C,CAAC;wBAAC,MAAM,CAAC;4BACP,YAAY;wBACd,CAAC;oBACH,CAAC,gBACU,WAAW,GACtB,GACI,EACP,KAAK,CAAC,CAAC,CAAC,2DAAgC,KAAK,GAAQ,CAAC,CAAC,CAAC,IAAI,IACxD,CACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAkC;IAC3D,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,eAAe;IACxB,IAAI,EAAE,YAAY;CACnB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FieldEditorContract } from './types.js';
2
+ export declare const mapEditor: FieldEditorContract<Record<string, unknown>>;
3
+ //# sourceMappingURL=map.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/map.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAqB,MAAM,YAAY,CAAC;AA4BzE,eAAO,MAAM,SAAS,EAAE,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGlE,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { TreeEntry } from '../components/TreeEntry.js';
3
+ /**
4
+ * Read-only map renderer as an indented tree (not a key/value grid): each entry
5
+ * is `key: value` inline for scalars, or a collapsible disclosure (chevron +
6
+ * key) whose nested tree indents below for maps/arrays. {@link TreeEntry} owns
7
+ * the per-node collapse state + chevron.
8
+ */
9
+ function MapDisplay({ value, path, fieldEditors }) {
10
+ // Lexicographic key order so fields render in a stable sequence regardless of
11
+ // JS object enumeration order (matches firebase-tools-ui).
12
+ const entries = Object.entries(value).sort(([a], [b]) => a.localeCompare(b));
13
+ return (_jsx("ul", { "data-pyric-field-type": "map", "data-pyric-tree": true, "data-pyric-field-path": path, children: entries.map(([key, childValue]) => (_jsx(TreeEntry, { label: key, value: childValue, path: path ? `${path}.${key}` : key, fieldEditors: fieldEditors ?? {}, kind: "key" }, key))) }));
14
+ }
15
+ export const mapEditor = {
16
+ type: 'map',
17
+ Display: MapDisplay,
18
+ };
19
+ //# sourceMappingURL=map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/map.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD;;;;;GAKG;AACH,SAAS,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAA8C;IAC3F,8EAA8E;IAC9E,2DAA2D;IAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,OAAO,CACL,sCAA0B,KAAK,oDAAwC,IAAI,YACxE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAClC,KAAC,SAAS,IAER,KAAK,EAAE,GAAG,EACV,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EACnC,YAAY,EAAE,YAAY,IAAI,EAAE,EAChC,IAAI,EAAC,KAAK,IALL,GAAG,CAMR,CACH,CAAC,GACC,CACN,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAiD;IACrE,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,UAAU;CACpB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FieldEditorContract } from './types.js';
2
+ export declare const nullEditor: FieldEditorContract<null>;
3
+ //# sourceMappingURL=null.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"null.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/null.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAqC,MAAM,YAAY,CAAC;AAsBzF,eAAO,MAAM,UAAU,EAAE,mBAAmB,CAAC,IAAI,CAIhD,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ function NullDisplay({ path }) {
3
+ return (_jsx("span", { "data-pyric-field-type": "null", "data-pyric-field-path": path, children: "null" }));
4
+ }
5
+ // `null` has no editable surface — the user changes the type if they
6
+ // want a value. The Edit component renders a placeholder so the
7
+ // editor still emits a slot at the right path. Consumers style it
8
+ // however they like (e.g. ghost text).
9
+ function NullEdit({ path }) {
10
+ return (_jsx("span", { "data-pyric-field-type": "null", "data-pyric-field-path": path, children: "null" }));
11
+ }
12
+ export const nullEditor = {
13
+ type: 'null',
14
+ Display: NullDisplay,
15
+ Edit: NullEdit,
16
+ };
17
+ //# sourceMappingURL=null.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"null.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/null.tsx"],"names":[],"mappings":";AAEA,SAAS,WAAW,CAAC,EAAE,IAAI,EAA2B;IACpD,OAAO,CACL,wCAA4B,MAAM,2BAAwB,IAAI,qBAEvD,CACR,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,gEAAgE;AAChE,kEAAkE;AAClE,uCAAuC;AACvC,SAAS,QAAQ,CAAC,EAAE,IAAI,EAAwB;IAC9C,OAAO,CACL,wCAA4B,MAAM,2BAAwB,IAAI,qBAEvD,CACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAA8B;IACnD,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,WAAW;IACpB,IAAI,EAAE,QAAQ;CACf,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FieldEditorContract } from './types.js';
2
+ export declare const numberEditor: FieldEditorContract<number>;
3
+ //# sourceMappingURL=number.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/number.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAqC,MAAM,YAAY,CAAC;AAsCzF,eAAO,MAAM,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAIpD,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ function NumberDisplay({ value, path }) {
3
+ return (_jsx("span", { "data-pyric-field-type": "number", "data-pyric-field-path": path, children: String(value) }));
4
+ }
5
+ function NumberEdit({ value, onChange, error, path }) {
6
+ return (_jsxs("label", { "data-pyric-field-type": "number", "data-pyric-field-path": path, "data-pyric-error": error ? '' : undefined, children: [_jsx("input", { type: "number",
7
+ // Render NaN as empty so the input doesn't show literally
8
+ // "NaN" — the underlying value still carries it until the
9
+ // user types something valid.
10
+ value: Number.isFinite(value) ? value : '', onChange: (e) => {
11
+ const raw = e.target.value;
12
+ // Empty input commits NaN so the reducer's validator
13
+ // flags it; this keeps the editor's UI in sync with the
14
+ // underlying value rather than swallowing the change.
15
+ const parsed = raw === '' ? Number.NaN : parseFloat(raw);
16
+ onChange(parsed);
17
+ }, "aria-invalid": error ? 'true' : undefined }), error ? _jsx("span", { "data-pyric-error-message": true, children: error }) : null] }));
18
+ }
19
+ export const numberEditor = {
20
+ type: 'number',
21
+ Display: NumberDisplay,
22
+ Edit: NumberEdit,
23
+ };
24
+ //# sourceMappingURL=number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/number.tsx"],"names":[],"mappings":";AAEA,SAAS,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAA6B;IAC/D,OAAO,CACL,wCAA4B,QAAQ,2BAAwB,IAAI,YAC7D,MAAM,CAAC,KAAK,CAAC,GACT,CACR,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAA0B;IAC1E,OAAO,CACL,0CACwB,QAAQ,2BACP,IAAI,sBACT,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,aAExC,gBACE,IAAI,EAAC,QAAQ;gBACb,0DAA0D;gBAC1D,0DAA0D;gBAC1D,8BAA8B;gBAC9B,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAC1C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC3B,qDAAqD;oBACrD,wDAAwD;oBACxD,sDAAsD;oBACtD,MAAM,MAAM,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;oBACzD,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACnB,CAAC,kBACa,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,GACxC,EACD,KAAK,CAAC,CAAC,CAAC,2DAAgC,KAAK,GAAQ,CAAC,CAAC,CAAC,IAAI,IACvD,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAgC;IACvD,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,aAAa;IACtB,IAAI,EAAE,UAAU;CACjB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { DocumentReference } from 'pyric/firestore';
2
+ import type { FieldEditorContract } from './types.js';
3
+ export declare const referenceEditor: FieldEditorContract<DocumentReference>;
4
+ //# sourceMappingURL=reference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/reference.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAqC,MAAM,YAAY,CAAC;AAiFzF,eAAO,MAAM,eAAe,EAAE,mBAAmB,CAAC,iBAAiB,CAIlE,CAAC"}
@@ -0,0 +1,49 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useDisplayContext } from '../components/context.js';
3
+ function ReferenceDisplay({ value, path }) {
4
+ // Clickable when a consumer has wired `onReferenceClick` via the
5
+ // `<DocumentPreview onReferenceClick={…}>` prop. Otherwise renders
6
+ // as plain text — staying headless and avoiding fake interactivity.
7
+ const { onReferenceClick } = useDisplayContext();
8
+ if (onReferenceClick) {
9
+ return (_jsx("button", { type: "button", onClick: () => onReferenceClick(value), "data-pyric-field-type": "reference", "data-pyric-field-path": path, "data-target-path": value.path, "data-pyric-clickable": "", children: value.path }));
10
+ }
11
+ return (_jsx("span", { "data-pyric-field-type": "reference", "data-pyric-field-path": path, "data-target-path": value.path, children: value.path }));
12
+ }
13
+ /**
14
+ * Text-input reference editor. M3 only — the M5 `<ReferencePicker>`
15
+ * replaces this with a popover that browses the data plane. The
16
+ * editor commits a "ref-shaped" stand-in object (matching the
17
+ * structural check in `inferType` + `validateLeaf`) so the value
18
+ * flows through the reducer without needing a live Firestore handle
19
+ * at this layer.
20
+ */
21
+ function ReferenceEdit({ value, onChange, error, path }) {
22
+ return (_jsxs("label", { "data-pyric-field-type": "reference", "data-pyric-field-path": path, "data-pyric-error": error ? '' : undefined, children: [_jsx("input", { type: "text", value: value.path, placeholder: "users/alice", onChange: (e) => {
23
+ const nextPath = e.target.value;
24
+ const segments = nextPath.split('/').filter(Boolean);
25
+ const id = segments[segments.length - 1] ?? '';
26
+ // Build a ref-shaped stand-in. Real refs are constructed
27
+ // by `<ReferencePicker>` (M5) once it can talk to a
28
+ // Firestore handle.
29
+ // Preserve the existing firestore handle if the current
30
+ // value already carries one (so it can be wired back when
31
+ // the M5 picker arrives). Cast through `unknown` because
32
+ // the pyric/firestore type union doesn't expose
33
+ // `.firestore` uniformly across chainable + modular.
34
+ const existingFirestore = value.firestore ?? {};
35
+ const stand = {
36
+ path: nextPath,
37
+ id,
38
+ firestore: existingFirestore,
39
+ type: 'document',
40
+ };
41
+ onChange(stand);
42
+ }, "aria-invalid": error ? 'true' : undefined }), error ? _jsx("span", { "data-pyric-error-message": true, children: error }) : null] }));
43
+ }
44
+ export const referenceEditor = {
45
+ type: 'reference',
46
+ Display: ReferenceDisplay,
47
+ Edit: ReferenceEdit,
48
+ };
49
+ //# sourceMappingURL=reference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/reference.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,SAAS,gBAAgB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAwC;IAC7E,iEAAiE;IACjE,mEAAmE;IACnE,oEAAoE;IACpE,MAAM,EAAE,gBAAgB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACjD,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CACL,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,2BAChB,WAAW,2BACV,IAAI,sBACT,KAAK,CAAC,IAAI,0BACP,EAAE,YAEtB,KAAK,CAAC,IAAI,GACJ,CACV,CAAC;IACJ,CAAC;IACD,OAAO,CACL,wCACwB,WAAW,2BACV,IAAI,sBACT,KAAK,CAAC,IAAI,YAE3B,KAAK,CAAC,IAAI,GACN,CACR,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAqC;IACxF,OAAO,CACL,0CACwB,WAAW,2BACV,IAAI,sBACT,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,aAExC,gBACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,KAAK,CAAC,IAAI,EACjB,WAAW,EAAC,aAAa,EACzB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACrD,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC/C,yDAAyD;oBACzD,oDAAoD;oBACpD,oBAAoB;oBACpB,wDAAwD;oBACxD,0DAA0D;oBAC1D,yDAAyD;oBACzD,gDAAgD;oBAChD,qDAAqD;oBACrD,MAAM,iBAAiB,GACpB,KAA4C,CAAC,SAAS,IAAI,EAAE,CAAC;oBAChE,MAAM,KAAK,GAAG;wBACZ,IAAI,EAAE,QAAQ;wBACd,EAAE;wBACF,SAAS,EAAE,iBAAiB;wBAC5B,IAAI,EAAE,UAAU;qBACe,CAAC;oBAClC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAClB,CAAC,kBACa,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,GACxC,EACD,KAAK,CAAC,CAAC,CAAC,2DAAgC,KAAK,GAAQ,CAAC,CAAC,CAAC,IAAI,IACvD,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAA2C;IACrE,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,gBAAgB;IACzB,IAAI,EAAE,aAAa;CACpB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { FieldEditorRegistry } from './types.js';
2
+ /**
3
+ * Default registry. Covers every {@link FieldType}. Consumers extend
4
+ * or override by passing their own (partial) registry into
5
+ * `<DocumentPreview>` / `<FieldRenderer>` — the components merge
6
+ * overrides into these defaults so a consumer can swap just one
7
+ * editor without re-declaring the rest.
8
+ */
9
+ export declare const defaultFieldEditors: FieldEditorRegistry;
10
+ /**
11
+ * Merge a consumer-supplied registry over the defaults. `undefined`
12
+ * input returns the defaults as-is. Used internally by
13
+ * `<DocumentPreview>` so consumers don't have to spread manually.
14
+ */
15
+ export declare function mergeFieldEditors(override: FieldEditorRegistry | undefined): FieldEditorRegistry;
16
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/registry.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,mBAYjC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,mBAAmB,GAAG,SAAS,GACxC,mBAAmB,CAGrB"}
@@ -0,0 +1,42 @@
1
+ import { stringEditor } from './string.js';
2
+ import { numberEditor } from './number.js';
3
+ import { booleanEditor } from './boolean.js';
4
+ import { nullEditor } from './null.js';
5
+ import { timestampEditor } from './timestamp.js';
6
+ import { geopointEditor } from './geopoint.js';
7
+ import { referenceEditor } from './reference.js';
8
+ import { bytesEditor } from './bytes.js';
9
+ import { mapEditor } from './map.js';
10
+ import { arrayEditor } from './array.js';
11
+ import { vectorEditor } from './vector.js';
12
+ /**
13
+ * Default registry. Covers every {@link FieldType}. Consumers extend
14
+ * or override by passing their own (partial) registry into
15
+ * `<DocumentPreview>` / `<FieldRenderer>` — the components merge
16
+ * overrides into these defaults so a consumer can swap just one
17
+ * editor without re-declaring the rest.
18
+ */
19
+ export const defaultFieldEditors = {
20
+ string: stringEditor,
21
+ number: numberEditor,
22
+ boolean: booleanEditor,
23
+ null: nullEditor,
24
+ timestamp: timestampEditor,
25
+ geopoint: geopointEditor,
26
+ reference: referenceEditor,
27
+ bytes: bytesEditor,
28
+ map: mapEditor,
29
+ array: arrayEditor,
30
+ vector: vectorEditor,
31
+ };
32
+ /**
33
+ * Merge a consumer-supplied registry over the defaults. `undefined`
34
+ * input returns the defaults as-is. Used internally by
35
+ * `<DocumentPreview>` so consumers don't have to spread manually.
36
+ */
37
+ export function mergeFieldEditors(override) {
38
+ if (!override)
39
+ return defaultFieldEditors;
40
+ return { ...defaultFieldEditors, ...override };
41
+ }
42
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAwB;IACtD,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,aAAa;IACtB,IAAI,EAAE,UAAU;IAChB,SAAS,EAAE,eAAe;IAC1B,QAAQ,EAAE,cAAc;IACxB,SAAS,EAAE,eAAe;IAC1B,KAAK,EAAE,WAAW;IAClB,GAAG,EAAE,SAAS;IACd,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY;CACrB,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAyC;IAEzC,IAAI,CAAC,QAAQ;QAAE,OAAO,mBAAmB,CAAC;IAC1C,OAAO,EAAE,GAAG,mBAAmB,EAAE,GAAG,QAAQ,EAAE,CAAC;AACjD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FieldEditorContract } from './types.js';
2
+ export declare const stringEditor: FieldEditorContract<string>;
3
+ //# sourceMappingURL=string.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/firestore/fieldEditors/string.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAqC,MAAM,YAAY,CAAC;AA4BzF,eAAO,MAAM,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAIpD,CAAC"}