roamjs-components 0.86.0-alpha.2 → 0.86.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (810) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +29 -29
  3. package/components/AutocompleteInput.d.ts +29 -0
  4. package/components/AutocompleteInput.js +133 -0
  5. package/components/AutocompleteInput.js.map +1 -0
  6. package/components/BlockErrorBoundary.d.ts +15 -0
  7. package/components/BlockErrorBoundary.js +28 -0
  8. package/components/BlockErrorBoundary.js.map +1 -0
  9. package/components/BlockInput.d.ts +13 -0
  10. package/components/BlockInput.js +56 -0
  11. package/components/BlockInput.js.map +1 -0
  12. package/components/ComponentContainer.d.ts +10 -0
  13. package/components/ComponentContainer.js +38 -0
  14. package/components/ComponentContainer.js.map +1 -0
  15. package/components/ConfigPage.d.ts +35 -0
  16. package/components/ConfigPage.js +160 -0
  17. package/components/ConfigPage.js.map +1 -0
  18. package/components/ConfigPanels/BlockPanel.d.ts +3 -0
  19. package/components/ConfigPanels/BlockPanel.js +43 -0
  20. package/components/ConfigPanels/BlockPanel.js.map +1 -0
  21. package/components/ConfigPanels/BlocksPanel.d.ts +3 -0
  22. package/components/ConfigPanels/BlocksPanel.js +69 -0
  23. package/components/ConfigPanels/BlocksPanel.js.map +1 -0
  24. package/components/ConfigPanels/CustomPanel.d.ts +3 -0
  25. package/components/ConfigPanels/CustomPanel.js +25 -0
  26. package/components/ConfigPanels/CustomPanel.js.map +1 -0
  27. package/components/ConfigPanels/FlagPanel.d.ts +3 -0
  28. package/components/ConfigPanels/FlagPanel.js +32 -0
  29. package/components/ConfigPanels/FlagPanel.js.map +1 -0
  30. package/components/ConfigPanels/MultiChildPanel.d.ts +9 -0
  31. package/components/ConfigPanels/MultiChildPanel.js +59 -0
  32. package/components/ConfigPanels/MultiChildPanel.js.map +1 -0
  33. package/components/ConfigPanels/MultiTextPanel.d.ts +3 -0
  34. package/components/ConfigPanels/MultiTextPanel.js +15 -0
  35. package/components/ConfigPanels/MultiTextPanel.js.map +1 -0
  36. package/components/ConfigPanels/NumberPanel.d.ts +3 -0
  37. package/components/ConfigPanels/NumberPanel.js +26 -0
  38. package/components/ConfigPanels/NumberPanel.js.map +1 -0
  39. package/components/ConfigPanels/OauthPanel.d.ts +3 -0
  40. package/components/ConfigPanels/OauthPanel.js +82 -0
  41. package/components/ConfigPanels/OauthPanel.js.map +1 -0
  42. package/components/ConfigPanels/PagesPanel.d.ts +3 -0
  43. package/components/ConfigPanels/PagesPanel.js +12 -0
  44. package/components/ConfigPanels/PagesPanel.js.map +1 -0
  45. package/components/ConfigPanels/SelectPanel.d.ts +3 -0
  46. package/components/ConfigPanels/SelectPanel.js +28 -0
  47. package/components/ConfigPanels/SelectPanel.js.map +1 -0
  48. package/components/ConfigPanels/TextPanel.d.ts +3 -0
  49. package/components/ConfigPanels/TextPanel.js +29 -0
  50. package/components/ConfigPanels/TextPanel.js.map +1 -0
  51. package/components/ConfigPanels/TimePanel.d.ts +3 -0
  52. package/components/ConfigPanels/TimePanel.js +35 -0
  53. package/components/ConfigPanels/TimePanel.js.map +1 -0
  54. package/components/ConfigPanels/getBrandColors.d.ts +7 -0
  55. package/components/ConfigPanels/getBrandColors.js +29 -0
  56. package/components/ConfigPanels/getBrandColors.js.map +1 -0
  57. package/components/ConfigPanels/types.d.ts +84 -0
  58. package/components/ConfigPanels/types.js +3 -0
  59. package/components/ConfigPanels/types.js.map +1 -0
  60. package/components/ConfigPanels/useSingleChildValue.d.ts +13 -0
  61. package/components/ConfigPanels/useSingleChildValue.js +44 -0
  62. package/components/ConfigPanels/useSingleChildValue.js.map +1 -0
  63. package/components/CursorMenu.d.ts +21 -0
  64. package/components/CursorMenu.js +182 -0
  65. package/components/CursorMenu.js.map +1 -0
  66. package/components/Description.d.ts +5 -0
  67. package/components/Description.js +17 -0
  68. package/components/Description.js.map +1 -0
  69. package/components/ExtensionApiContext.d.ts +31 -0
  70. package/components/ExtensionApiContext.js +17 -0
  71. package/components/ExtensionApiContext.js.map +1 -0
  72. package/components/ExternalLogin.d.ts +18 -0
  73. package/components/ExternalLogin.js +142 -0
  74. package/components/ExternalLogin.js.map +1 -0
  75. package/components/Filter.d.ts +15 -0
  76. package/components/Filter.js +143 -0
  77. package/components/Filter.js.map +1 -0
  78. package/components/FormDialog.d.ts +55 -0
  79. package/components/FormDialog.js +227 -0
  80. package/components/FormDialog.js.map +1 -0
  81. package/components/Loading.d.ts +4 -0
  82. package/components/Loading.js +36 -0
  83. package/components/Loading.js.map +1 -0
  84. package/components/MenuItemSelect.d.ts +17 -0
  85. package/components/MenuItemSelect.js +24 -0
  86. package/components/MenuItemSelect.js.map +1 -0
  87. package/components/OauthPanel.d.ts +7 -0
  88. package/components/OauthPanel.js +31 -0
  89. package/components/OauthPanel.js.map +1 -0
  90. package/components/OauthSelect.d.ts +5 -0
  91. package/components/OauthSelect.js +26 -0
  92. package/components/OauthSelect.js.map +1 -0
  93. package/components/PageInput.d.ts +6 -0
  94. package/components/PageInput.js +14 -0
  95. package/components/PageInput.js.map +1 -0
  96. package/components/PageLink.d.ts +6 -0
  97. package/components/PageLink.js +32 -0
  98. package/components/PageLink.js.map +1 -0
  99. package/components/ProgressDialog.d.ts +11 -0
  100. package/components/ProgressDialog.js +61 -0
  101. package/components/ProgressDialog.js.map +1 -0
  102. package/components/SimpleAlert.d.ts +15 -0
  103. package/components/SimpleAlert.js +48 -0
  104. package/components/SimpleAlert.js.map +1 -0
  105. package/components/Toast.d.ts +15 -0
  106. package/components/Toast.js +51 -0
  107. package/components/Toast.js.map +1 -0
  108. package/components/index.d.ts +0 -0
  109. package/components/index.js +5 -0
  110. package/components/index.js.map +1 -0
  111. package/components.d.ts +5 -0
  112. package/components.js +173 -0
  113. package/components.js.map +1 -0
  114. package/date/constants.d.ts +3 -0
  115. package/date/constants.js +20 -0
  116. package/date/constants.js.map +1 -0
  117. package/{src/date/index.ts → date/index.d.ts} +3 -3
  118. package/date/index.js +10 -0
  119. package/date/index.js.map +1 -0
  120. package/date/parseNlpDate.d.ts +5 -0
  121. package/date/parseNlpDate.js +227 -0
  122. package/date/parseNlpDate.js.map +1 -0
  123. package/date/parseRoamDateUid.d.ts +2 -0
  124. package/date/parseRoamDateUid.js +8 -0
  125. package/date/parseRoamDateUid.js.map +1 -0
  126. package/dom/addBlockCommand.d.ts +5 -0
  127. package/dom/addBlockCommand.js +54 -0
  128. package/dom/addBlockCommand.js.map +1 -0
  129. package/dom/addKeyboardTriggers.d.ts +11 -0
  130. package/dom/addKeyboardTriggers.js +39 -0
  131. package/dom/addKeyboardTriggers.js.map +1 -0
  132. package/dom/addOldRoamJSDependency.d.ts +2 -0
  133. package/dom/addOldRoamJSDependency.js +11 -0
  134. package/dom/addOldRoamJSDependency.js.map +1 -0
  135. package/dom/addRoamJSDependency.d.ts +2 -0
  136. package/dom/addRoamJSDependency.js +9 -0
  137. package/dom/addRoamJSDependency.js.map +1 -0
  138. package/dom/addScriptAsDependency.d.ts +6 -0
  139. package/dom/addScriptAsDependency.js +17 -0
  140. package/dom/addScriptAsDependency.js.map +1 -0
  141. package/dom/addStyle.d.ts +2 -0
  142. package/dom/addStyle.js +15 -0
  143. package/dom/addStyle.js.map +1 -0
  144. package/dom/constants.d.ts +1 -0
  145. package/dom/constants.js +5 -0
  146. package/dom/constants.js.map +1 -0
  147. package/dom/createBlockObserver.d.ts +7 -0
  148. package/dom/createBlockObserver.js +44 -0
  149. package/dom/createBlockObserver.js.map +1 -0
  150. package/dom/createButtonObserver.d.ts +6 -0
  151. package/dom/createButtonObserver.js +22 -0
  152. package/dom/createButtonObserver.js.map +1 -0
  153. package/dom/createDivObserver.d.ts +2 -0
  154. package/dom/createDivObserver.js +14 -0
  155. package/dom/createDivObserver.js.map +1 -0
  156. package/dom/createHTMLObserver.d.ts +8 -0
  157. package/dom/createHTMLObserver.js +25 -0
  158. package/dom/createHTMLObserver.js.map +1 -0
  159. package/dom/createHashtagObserver.d.ts +5 -0
  160. package/dom/createHashtagObserver.js +17 -0
  161. package/dom/createHashtagObserver.js.map +1 -0
  162. package/dom/createIconButton.d.ts +2 -0
  163. package/dom/createIconButton.js +13 -0
  164. package/dom/createIconButton.js.map +1 -0
  165. package/dom/createObserver.d.ts +2 -0
  166. package/dom/createObserver.js +10 -0
  167. package/dom/createObserver.js.map +1 -0
  168. package/dom/createOverlayObserver.d.ts +2 -0
  169. package/dom/createOverlayObserver.js +7 -0
  170. package/dom/createOverlayObserver.js.map +1 -0
  171. package/dom/createPageObserver.d.ts +2 -0
  172. package/dom/createPageObserver.js +35 -0
  173. package/dom/createPageObserver.js.map +1 -0
  174. package/dom/createPageTitleObserver.d.ts +6 -0
  175. package/dom/createPageTitleObserver.js +32 -0
  176. package/dom/createPageTitleObserver.js.map +1 -0
  177. package/dom/elToTitle.d.ts +2 -0
  178. package/dom/elToTitle.js +23 -0
  179. package/dom/elToTitle.js.map +1 -0
  180. package/dom/genericError.d.ts +3 -0
  181. package/dom/genericError.js +12 -0
  182. package/dom/genericError.js.map +1 -0
  183. package/dom/getActiveUids.d.ts +3 -0
  184. package/dom/getActiveUids.js +7 -0
  185. package/dom/getActiveUids.js.map +1 -0
  186. package/dom/getBlockUidFromTarget.d.ts +2 -0
  187. package/dom/getBlockUidFromTarget.js +34 -0
  188. package/dom/getBlockUidFromTarget.js.map +1 -0
  189. package/dom/getCurrentPageUid.d.ts +2 -0
  190. package/dom/getCurrentPageUid.js +9 -0
  191. package/dom/getCurrentPageUid.js.map +1 -0
  192. package/dom/getDomRefs.d.ts +2 -0
  193. package/dom/getDomRefs.js +13 -0
  194. package/dom/getDomRefs.js.map +1 -0
  195. package/dom/getDropUidOffset.d.ts +5 -0
  196. package/dom/getDropUidOffset.js +28 -0
  197. package/dom/getDropUidOffset.js.map +1 -0
  198. package/dom/getMutatedNodes.d.ts +7 -0
  199. package/dom/getMutatedNodes.js +12 -0
  200. package/dom/getMutatedNodes.js.map +1 -0
  201. package/dom/getPageTitleByHtmlElement.d.ts +2 -0
  202. package/dom/getPageTitleByHtmlElement.js +13 -0
  203. package/dom/getPageTitleByHtmlElement.js.map +1 -0
  204. package/dom/getPageTitleValueByHtmlElement.d.ts +2 -0
  205. package/dom/getPageTitleValueByHtmlElement.js +10 -0
  206. package/dom/getPageTitleValueByHtmlElement.js.map +1 -0
  207. package/dom/getReferenceBlockUid.d.ts +2 -0
  208. package/dom/getReferenceBlockUid.js +19 -0
  209. package/dom/getReferenceBlockUid.js.map +1 -0
  210. package/dom/getRoamUrl.d.ts +2 -0
  211. package/dom/getRoamUrl.js +5 -0
  212. package/dom/getRoamUrl.js.map +1 -0
  213. package/dom/getRoamUrlByPage.d.ts +2 -0
  214. package/dom/getRoamUrlByPage.js +11 -0
  215. package/dom/getRoamUrlByPage.js.map +1 -0
  216. package/dom/getUids.d.ts +3 -0
  217. package/dom/getUids.js +9 -0
  218. package/dom/getUids.js.map +1 -0
  219. package/dom/getUidsFromButton.d.ts +3 -0
  220. package/dom/getUidsFromButton.js +9 -0
  221. package/dom/getUidsFromButton.js.map +1 -0
  222. package/dom/getUidsFromId.d.ts +5 -0
  223. package/dom/getUidsFromId.js +16 -0
  224. package/dom/getUidsFromId.js.map +1 -0
  225. package/{src/dom/index.ts → dom/index.d.ts} +30 -30
  226. package/dom/index.js +64 -0
  227. package/dom/index.js.map +1 -0
  228. package/dom/parseRoamBlocksToHtml.d.ts +11 -0
  229. package/dom/parseRoamBlocksToHtml.js +80 -0
  230. package/dom/parseRoamBlocksToHtml.js.map +1 -0
  231. package/dom/resolveRefs.d.ts +2 -0
  232. package/dom/resolveRefs.js +25 -0
  233. package/dom/resolveRefs.js.map +1 -0
  234. package/{src/events/index.ts → events/index.d.ts} +1 -1
  235. package/events/index.js +9 -0
  236. package/events/index.js.map +1 -0
  237. package/events/watchOnce.d.ts +3 -0
  238. package/events/watchOnce.js +13 -0
  239. package/events/watchOnce.js.map +1 -0
  240. package/{src/hooks/index.ts → hooks/index.d.ts} +2 -2
  241. package/hooks/index.js +11 -0
  242. package/hooks/index.js.map +1 -0
  243. package/hooks/useArrowKeyDown.d.ts +10 -0
  244. package/hooks/useArrowKeyDown.js +55 -0
  245. package/hooks/useArrowKeyDown.js.map +1 -0
  246. package/hooks/useSubTree.d.ts +3 -0
  247. package/hooks/useSubTree.js +12 -0
  248. package/hooks/useSubTree.js.map +1 -0
  249. package/marked/index.d.ts +25 -0
  250. package/marked/index.js +568 -0
  251. package/marked/index.js.map +1 -0
  252. package/package.json +116 -125
  253. package/queries/compileDatalog.d.ts +3 -0
  254. package/queries/compileDatalog.js +64 -0
  255. package/queries/compileDatalog.js.map +1 -0
  256. package/queries/getAllBlockUids.d.ts +2 -0
  257. package/queries/getAllBlockUids.js +7 -0
  258. package/queries/getAllBlockUids.js.map +1 -0
  259. package/queries/getAllBlockUidsAndTexts.d.ts +5 -0
  260. package/queries/getAllBlockUidsAndTexts.js +7 -0
  261. package/queries/getAllBlockUidsAndTexts.js.map +1 -0
  262. package/queries/getAllPageNames.d.ts +2 -0
  263. package/queries/getAllPageNames.js +7 -0
  264. package/queries/getAllPageNames.js.map +1 -0
  265. package/queries/getAttributeValueByBlockAndName.d.ts +5 -0
  266. package/queries/getAttributeValueByBlockAndName.js +12 -0
  267. package/queries/getAttributeValueByBlockAndName.js.map +1 -0
  268. package/queries/getBasicTreeByParentUid.d.ts +3 -0
  269. package/queries/getBasicTreeByParentUid.js +14 -0
  270. package/queries/getBasicTreeByParentUid.js.map +1 -0
  271. package/queries/getBlockUidAndTextIncludingText.d.ts +5 -0
  272. package/queries/getBlockUidAndTextIncludingText.js +8 -0
  273. package/queries/getBlockUidAndTextIncludingText.js.map +1 -0
  274. package/queries/getBlockUidByTextOnPage.d.ts +5 -0
  275. package/queries/getBlockUidByTextOnPage.js +8 -0
  276. package/queries/getBlockUidByTextOnPage.js.map +1 -0
  277. package/queries/getBlockUidsAndTextsReferencingPage.d.ts +5 -0
  278. package/queries/getBlockUidsAndTextsReferencingPage.js +10 -0
  279. package/queries/getBlockUidsAndTextsReferencingPage.js.map +1 -0
  280. package/queries/getBlockUidsByPageTitle.d.ts +2 -0
  281. package/queries/getBlockUidsByPageTitle.js +9 -0
  282. package/queries/getBlockUidsByPageTitle.js.map +1 -0
  283. package/queries/getBlockUidsReferencingBlock.d.ts +2 -0
  284. package/queries/getBlockUidsReferencingBlock.js +5 -0
  285. package/queries/getBlockUidsReferencingBlock.js.map +1 -0
  286. package/queries/getBlockUidsReferencingPage.d.ts +2 -0
  287. package/queries/getBlockUidsReferencingPage.js +7 -0
  288. package/queries/getBlockUidsReferencingPage.js.map +1 -0
  289. package/queries/getBlockUidsWithParentUid.d.ts +2 -0
  290. package/queries/getBlockUidsWithParentUid.js +7 -0
  291. package/queries/getBlockUidsWithParentUid.js.map +1 -0
  292. package/queries/getChildrenLengthByPageUid.d.ts +2 -0
  293. package/queries/getChildrenLengthByPageUid.js +9 -0
  294. package/queries/getChildrenLengthByPageUid.js.map +1 -0
  295. package/queries/getChildrenLengthByParentUid.d.ts +2 -0
  296. package/queries/getChildrenLengthByParentUid.js +8 -0
  297. package/queries/getChildrenLengthByParentUid.js.map +1 -0
  298. package/queries/getCreateTimeByBlockUid.d.ts +2 -0
  299. package/queries/getCreateTimeByBlockUid.js +8 -0
  300. package/queries/getCreateTimeByBlockUid.js.map +1 -0
  301. package/queries/getCurrentUser.d.ts +2 -0
  302. package/queries/getCurrentUser.js +12 -0
  303. package/queries/getCurrentUser.js.map +1 -0
  304. package/queries/getCurrentUserDisplayName.d.ts +2 -0
  305. package/queries/getCurrentUserDisplayName.js +11 -0
  306. package/queries/getCurrentUserDisplayName.js.map +1 -0
  307. package/queries/getCurrentUserEmail.d.ts +2 -0
  308. package/queries/getCurrentUserEmail.js +14 -0
  309. package/queries/getCurrentUserEmail.js.map +1 -0
  310. package/queries/getCurrentUserUid.d.ts +2 -0
  311. package/queries/getCurrentUserUid.js +14 -0
  312. package/queries/getCurrentUserUid.js.map +1 -0
  313. package/queries/getDisplayNameByEmail.d.ts +2 -0
  314. package/queries/getDisplayNameByEmail.js +8 -0
  315. package/queries/getDisplayNameByEmail.js.map +1 -0
  316. package/queries/getDisplayNameByUid.d.ts +2 -0
  317. package/queries/getDisplayNameByUid.js +8 -0
  318. package/queries/getDisplayNameByUid.js.map +1 -0
  319. package/queries/getEditTimeByBlockUid.d.ts +2 -0
  320. package/queries/getEditTimeByBlockUid.js +8 -0
  321. package/queries/getEditTimeByBlockUid.js.map +1 -0
  322. package/queries/getEditedUserEmailByBlockUid.d.ts +2 -0
  323. package/queries/getEditedUserEmailByBlockUid.js +8 -0
  324. package/queries/getEditedUserEmailByBlockUid.js.map +1 -0
  325. package/queries/getFirstChildTextByBlockUid.d.ts +2 -0
  326. package/queries/getFirstChildTextByBlockUid.js +8 -0
  327. package/queries/getFirstChildTextByBlockUid.js.map +1 -0
  328. package/queries/getFirstChildUidByBlockUid.d.ts +2 -0
  329. package/queries/getFirstChildUidByBlockUid.js +7 -0
  330. package/queries/getFirstChildUidByBlockUid.js.map +1 -0
  331. package/queries/getFullTreeByParentUid.d.ts +3 -0
  332. package/queries/getFullTreeByParentUid.js +52 -0
  333. package/queries/getFullTreeByParentUid.js.map +1 -0
  334. package/queries/getLinkedPageTitlesUnderUid.d.ts +2 -0
  335. package/queries/getLinkedPageTitlesUnderUid.js +7 -0
  336. package/queries/getLinkedPageTitlesUnderUid.js.map +1 -0
  337. package/queries/getNthChildUidByBlockUid.d.ts +5 -0
  338. package/queries/getNthChildUidByBlockUid.js +8 -0
  339. package/queries/getNthChildUidByBlockUid.js.map +1 -0
  340. package/queries/getOrderByBlockUid.d.ts +2 -0
  341. package/queries/getOrderByBlockUid.js +8 -0
  342. package/queries/getOrderByBlockUid.js.map +1 -0
  343. package/queries/getPageTitleByBlockUid.d.ts +2 -0
  344. package/queries/getPageTitleByBlockUid.js +8 -0
  345. package/queries/getPageTitleByBlockUid.js.map +1 -0
  346. package/queries/getPageTitleByPageUid.d.ts +2 -0
  347. package/queries/getPageTitleByPageUid.js +13 -0
  348. package/queries/getPageTitleByPageUid.js.map +1 -0
  349. package/queries/getPageTitleReferencesByPageTitle.d.ts +2 -0
  350. package/queries/getPageTitleReferencesByPageTitle.js +7 -0
  351. package/queries/getPageTitleReferencesByPageTitle.js.map +1 -0
  352. package/queries/getPageTitlesAndBlockUidsReferencingPage.d.ts +5 -0
  353. package/queries/getPageTitlesAndBlockUidsReferencingPage.js +10 -0
  354. package/queries/getPageTitlesAndBlockUidsReferencingPage.js.map +1 -0
  355. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.d.ts +5 -0
  356. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.js +10 -0
  357. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.js.map +1 -0
  358. package/queries/getPageTitlesReferencingBlockUid.d.ts +2 -0
  359. package/queries/getPageTitlesReferencingBlockUid.js +5 -0
  360. package/queries/getPageTitlesReferencingBlockUid.js.map +1 -0
  361. package/queries/getPageTitlesStartingWithPrefix.d.ts +2 -0
  362. package/queries/getPageTitlesStartingWithPrefix.js +7 -0
  363. package/queries/getPageTitlesStartingWithPrefix.js.map +1 -0
  364. package/queries/getPageUidByBlockUid.d.ts +2 -0
  365. package/queries/getPageUidByBlockUid.js +8 -0
  366. package/queries/getPageUidByBlockUid.js.map +1 -0
  367. package/queries/getPageUidByPageTitle.d.ts +2 -0
  368. package/queries/getPageUidByPageTitle.js +10 -0
  369. package/queries/getPageUidByPageTitle.js.map +1 -0
  370. package/queries/getPageViewType.d.ts +3 -0
  371. package/queries/getPageViewType.js +10 -0
  372. package/queries/getPageViewType.js.map +1 -0
  373. package/queries/getParentTextByBlockUid.d.ts +2 -0
  374. package/queries/getParentTextByBlockUid.js +8 -0
  375. package/queries/getParentTextByBlockUid.js.map +1 -0
  376. package/queries/getParentTextByBlockUidAndTag.d.ts +5 -0
  377. package/queries/getParentTextByBlockUidAndTag.js +8 -0
  378. package/queries/getParentTextByBlockUidAndTag.js.map +1 -0
  379. package/queries/getParentUidByBlockUid.d.ts +2 -0
  380. package/queries/getParentUidByBlockUid.js +8 -0
  381. package/queries/getParentUidByBlockUid.js.map +1 -0
  382. package/queries/getParentUidsOfBlockUid.d.ts +2 -0
  383. package/queries/getParentUidsOfBlockUid.js +5 -0
  384. package/queries/getParentUidsOfBlockUid.js.map +1 -0
  385. package/queries/getSettingsByEmail.d.ts +3 -0
  386. package/queries/getSettingsByEmail.js +8 -0
  387. package/queries/getSettingsByEmail.js.map +1 -0
  388. package/queries/getShallowTreeByParentUid.d.ts +5 -0
  389. package/queries/getShallowTreeByParentUid.js +10 -0
  390. package/queries/getShallowTreeByParentUid.js.map +1 -0
  391. package/queries/getTextByBlockUid.d.ts +2 -0
  392. package/queries/getTextByBlockUid.js +10 -0
  393. package/queries/getTextByBlockUid.js.map +1 -0
  394. package/queries/index.d.ts +0 -0
  395. package/queries/index.js +5 -0
  396. package/queries/index.js.map +1 -0
  397. package/queries/isLiveBlock.d.ts +2 -0
  398. package/queries/isLiveBlock.js +5 -0
  399. package/queries/isLiveBlock.js.map +1 -0
  400. package/queries/isTagOnPage.d.ts +5 -0
  401. package/queries/isTagOnPage.js +10 -0
  402. package/queries/isTagOnPage.js.map +1 -0
  403. package/queries/normalizePageTitle.d.ts +2 -0
  404. package/queries/normalizePageTitle.js +5 -0
  405. package/queries/normalizePageTitle.js.map +1 -0
  406. package/scripts/index.d.ts +1 -0
  407. package/scripts/index.js +27 -0
  408. package/scripts/index.js.map +1 -0
  409. package/scripts/publishToRoamDepot.d.ts +7 -0
  410. package/scripts/publishToRoamDepot.js +114 -0
  411. package/scripts/publishToRoamDepot.js.map +1 -0
  412. package/testing/mockRoamEnvironment.d.ts +2 -0
  413. package/testing/mockRoamEnvironment.js +1254 -0
  414. package/testing/mockRoamEnvironment.js.map +1 -0
  415. package/types/index.d.ts +393 -0
  416. package/types/index.js +5 -0
  417. package/types/index.js.map +1 -0
  418. package/types/native.d.ts +405 -0
  419. package/types/native.js +5 -0
  420. package/types/native.js.map +1 -0
  421. package/types/query-builder.d.ts +10 -0
  422. package/types/query-builder.js +3 -0
  423. package/types/query-builder.js.map +1 -0
  424. package/types/smartblocks.d.ts +35 -0
  425. package/types/smartblocks.js +3 -0
  426. package/types/smartblocks.js.map +1 -0
  427. package/util/addInputSetting.d.ts +7 -0
  428. package/util/addInputSetting.js +26 -0
  429. package/util/addInputSetting.js.map +1 -0
  430. package/util/apiDelete.d.ts +2 -0
  431. package/util/apiDelete.js +7 -0
  432. package/util/apiDelete.js.map +1 -0
  433. package/util/apiGet.d.ts +2 -0
  434. package/util/apiGet.js +7 -0
  435. package/util/apiGet.js.map +1 -0
  436. package/util/apiPost.d.ts +2 -0
  437. package/util/apiPost.js +7 -0
  438. package/util/apiPost.js.map +1 -0
  439. package/util/apiPut.d.ts +2 -0
  440. package/util/apiPut.js +7 -0
  441. package/util/apiPut.js.map +1 -0
  442. package/util/createOverlayRender.d.ts +4 -0
  443. package/util/createOverlayRender.js +7 -0
  444. package/util/createOverlayRender.js.map +1 -0
  445. package/util/createTagRegex.d.ts +2 -0
  446. package/util/createTagRegex.js +8 -0
  447. package/util/createTagRegex.js.map +1 -0
  448. package/util/dispatchToRegistry.d.ts +3 -0
  449. package/util/dispatchToRegistry.js +8 -0
  450. package/util/dispatchToRegistry.js.map +1 -0
  451. package/util/env.d.ts +4 -0
  452. package/util/env.js +48 -0
  453. package/util/env.js.map +1 -0
  454. package/util/extensionApiContext.d.ts +29 -0
  455. package/util/extensionApiContext.js +18 -0
  456. package/util/extensionApiContext.js.map +1 -0
  457. package/util/extensionDeprecatedWarning.d.ts +5 -0
  458. package/util/extensionDeprecatedWarning.js +40 -0
  459. package/util/extensionDeprecatedWarning.js.map +1 -0
  460. package/util/extractRef.d.ts +2 -0
  461. package/util/extractRef.js +9 -0
  462. package/util/extractRef.js.map +1 -0
  463. package/util/extractTag.d.ts +2 -0
  464. package/util/extractTag.js +16 -0
  465. package/util/extractTag.js.map +1 -0
  466. package/util/focusMainWindowBlock.d.ts +2 -0
  467. package/util/focusMainWindowBlock.js +13 -0
  468. package/util/focusMainWindowBlock.js.map +1 -0
  469. package/util/getAuthorizationHeader.d.ts +2 -0
  470. package/util/getAuthorizationHeader.js +13 -0
  471. package/util/getAuthorizationHeader.js.map +1 -0
  472. package/util/getLocalStorageKey.d.ts +2 -0
  473. package/util/getLocalStorageKey.js +5 -0
  474. package/util/getLocalStorageKey.js.map +1 -0
  475. package/util/getOauth.d.ts +2 -0
  476. package/util/getOauth.js +53 -0
  477. package/util/getOauth.js.map +1 -0
  478. package/util/getOauthAccounts.d.ts +2 -0
  479. package/util/getOauthAccounts.js +23 -0
  480. package/util/getOauthAccounts.js.map +1 -0
  481. package/util/getRenderRoot.d.ts +2 -0
  482. package/util/getRenderRoot.js +19 -0
  483. package/util/getRenderRoot.js.map +1 -0
  484. package/util/getSettingIntFromTree.d.ts +7 -0
  485. package/util/getSettingIntFromTree.js +12 -0
  486. package/util/getSettingIntFromTree.js.map +1 -0
  487. package/util/getSettingValueFromTree.d.ts +8 -0
  488. package/util/getSettingValueFromTree.js +15 -0
  489. package/util/getSettingValueFromTree.js.map +1 -0
  490. package/util/getSettingValuesFromTree.d.ts +7 -0
  491. package/util/getSettingValuesFromTree.js +13 -0
  492. package/util/getSettingValuesFromTree.js.map +1 -0
  493. package/util/getSubTree.d.ts +8 -0
  494. package/util/getSubTree.js +20 -0
  495. package/util/getSubTree.js.map +1 -0
  496. package/util/getToken.d.ts +2 -0
  497. package/util/getToken.js +11 -0
  498. package/util/getToken.js.map +1 -0
  499. package/util/getTokenFromTree.d.ts +3 -0
  500. package/util/getTokenFromTree.js +5 -0
  501. package/util/getTokenFromTree.js.map +1 -0
  502. package/util/getWorkerClient.d.ts +12 -0
  503. package/util/getWorkerClient.js +42 -0
  504. package/util/getWorkerClient.js.map +1 -0
  505. package/util/handleBodyFetch.d.ts +3 -0
  506. package/util/handleBodyFetch.js +22 -0
  507. package/util/handleBodyFetch.js.map +1 -0
  508. package/util/handleFetch.d.ts +13 -0
  509. package/util/handleFetch.js +41 -0
  510. package/util/handleFetch.js.map +1 -0
  511. package/util/handleUrlFetch.d.ts +3 -0
  512. package/util/handleUrlFetch.js +20 -0
  513. package/util/handleUrlFetch.js.map +1 -0
  514. package/util/idToTitle.d.ts +2 -0
  515. package/util/idToTitle.js +9 -0
  516. package/util/idToTitle.js.map +1 -0
  517. package/{src/util/index.ts → util/index.d.ts} +24 -24
  518. package/util/index.js +55 -0
  519. package/util/index.js.map +1 -0
  520. package/util/isControl.d.ts +2 -0
  521. package/util/isControl.js +5 -0
  522. package/util/isControl.js.map +1 -0
  523. package/util/localStorageGet.d.ts +2 -0
  524. package/util/localStorageGet.js +9 -0
  525. package/util/localStorageGet.js.map +1 -0
  526. package/util/localStorageRemove.d.ts +2 -0
  527. package/util/localStorageRemove.js +7 -0
  528. package/util/localStorageRemove.js.map +1 -0
  529. package/util/localStorageSet.d.ts +2 -0
  530. package/util/localStorageSet.js +9 -0
  531. package/util/localStorageSet.js.map +1 -0
  532. package/util/registerExperimentalMode.d.ts +6 -0
  533. package/util/registerExperimentalMode.js +66 -0
  534. package/util/registerExperimentalMode.js.map +1 -0
  535. package/util/registerSmartBlocksCommand.d.ts +3 -0
  536. package/util/registerSmartBlocksCommand.js +24 -0
  537. package/util/registerSmartBlocksCommand.js.map +1 -0
  538. package/util/removeFromRegistry.d.ts +3 -0
  539. package/util/removeFromRegistry.js +8 -0
  540. package/util/removeFromRegistry.js.map +1 -0
  541. package/util/renderOverlay.d.ts +12 -0
  542. package/util/renderOverlay.js +49 -0
  543. package/util/renderOverlay.js.map +1 -0
  544. package/util/renderWithUnmount.d.ts +4 -0
  545. package/util/renderWithUnmount.js +45 -0
  546. package/util/renderWithUnmount.js.map +1 -0
  547. package/util/runExtension.d.ts +11 -0
  548. package/util/runExtension.js +175 -0
  549. package/util/runExtension.js.map +1 -0
  550. package/util/setInputSetting.d.ts +7 -0
  551. package/util/setInputSetting.js +38 -0
  552. package/util/setInputSetting.js.map +1 -0
  553. package/util/setInputSettings.d.ts +7 -0
  554. package/util/setInputSettings.js +29 -0
  555. package/util/setInputSettings.js.map +1 -0
  556. package/util/stripUid.d.ts +3 -0
  557. package/util/stripUid.js +11 -0
  558. package/util/stripUid.js.map +1 -0
  559. package/util/toConfigPageName.d.ts +2 -0
  560. package/util/toConfigPageName.js +5 -0
  561. package/util/toConfigPageName.js.map +1 -0
  562. package/util/toFlexRegex.d.ts +2 -0
  563. package/util/toFlexRegex.js +5 -0
  564. package/util/toFlexRegex.js.map +1 -0
  565. package/writes/clearBlockById.d.ts +2 -0
  566. package/writes/clearBlockById.js +18 -0
  567. package/writes/clearBlockById.js.map +1 -0
  568. package/writes/clearBlockByUid.d.ts +2 -0
  569. package/writes/clearBlockByUid.js +17 -0
  570. package/writes/clearBlockByUid.js.map +1 -0
  571. package/writes/createBlock.d.ts +8 -0
  572. package/writes/createBlock.js +29 -0
  573. package/writes/createBlock.js.map +1 -0
  574. package/writes/createPage.d.ts +7 -0
  575. package/writes/createPage.js +21 -0
  576. package/writes/createPage.js.map +1 -0
  577. package/writes/deleteBlock.d.ts +2 -0
  578. package/writes/deleteBlock.js +11 -0
  579. package/writes/deleteBlock.js.map +1 -0
  580. package/{src/writes/index.ts → writes/index.d.ts} +8 -8
  581. package/writes/index.js +23 -0
  582. package/writes/index.js.map +1 -0
  583. package/writes/openBlockInSidebar.d.ts +2 -0
  584. package/writes/openBlockInSidebar.js +14 -0
  585. package/writes/openBlockInSidebar.js.map +1 -0
  586. package/writes/submitActions.d.ts +8 -0
  587. package/writes/submitActions.js +37 -0
  588. package/writes/submitActions.js.map +1 -0
  589. package/writes/updateActiveBlock.d.ts +2 -0
  590. package/writes/updateActiveBlock.js +18 -0
  591. package/writes/updateActiveBlock.js.map +1 -0
  592. package/writes/updateBlock.d.ts +5 -0
  593. package/writes/updateBlock.js +24 -0
  594. package/writes/updateBlock.js.map +1 -0
  595. package/.eslintrc.json +0 -19
  596. package/.github/workflows/main.yaml +0 -34
  597. package/docs/components.md +0 -32
  598. package/docs/date.md +0 -13
  599. package/docs/dom.md +0 -58
  600. package/docs/events.md +0 -16
  601. package/docs/hooks.md +0 -15
  602. package/docs/marked.md +0 -56
  603. package/docs/queries.md +0 -24
  604. package/docs/scripts.md +0 -20
  605. package/docs/types.md +0 -32
  606. package/docs/util.md +0 -38
  607. package/docs/writes.md +0 -23
  608. package/patches/@blueprintjs+core+3.50.4.patch +0 -48
  609. package/patches/@blueprintjs+select+3.18.6.patch +0 -12
  610. package/patches/dotenv+16.3.1.patch +0 -12
  611. package/src/components/AutocompleteInput.tsx +0 -248
  612. package/src/components/BlockErrorBoundary.tsx +0 -39
  613. package/src/components/BlockInput.tsx +0 -117
  614. package/src/components/ComponentContainer.tsx +0 -70
  615. package/src/components/ConfigPage.tsx +0 -320
  616. package/src/components/ConfigPanels/BlockPanel.tsx +0 -60
  617. package/src/components/ConfigPanels/BlocksPanel.tsx +0 -100
  618. package/src/components/ConfigPanels/CustomPanel.tsx +0 -41
  619. package/src/components/ConfigPanels/FlagPanel.tsx +0 -48
  620. package/src/components/ConfigPanels/MultiChildPanel.tsx +0 -99
  621. package/src/components/ConfigPanels/MultiTextPanel.tsx +0 -23
  622. package/src/components/ConfigPanels/NumberPanel.tsx +0 -36
  623. package/src/components/ConfigPanels/OauthPanel.tsx +0 -127
  624. package/src/components/ConfigPanels/PagesPanel.tsx +0 -19
  625. package/src/components/ConfigPanels/SelectPanel.tsx +0 -46
  626. package/src/components/ConfigPanels/TextPanel.tsx +0 -44
  627. package/src/components/ConfigPanels/TimePanel.tsx +0 -45
  628. package/src/components/ConfigPanels/getBrandColors.tsx +0 -31
  629. package/src/components/ConfigPanels/types.ts +0 -111
  630. package/src/components/ConfigPanels/useSingleChildValue.tsx +0 -63
  631. package/src/components/CursorMenu.tsx +0 -286
  632. package/src/components/Description.tsx +0 -31
  633. package/src/components/ExtensionApiContext.tsx +0 -24
  634. package/src/components/ExternalLogin.tsx +0 -190
  635. package/src/components/Filter.tsx +0 -313
  636. package/src/components/FormDialog.tsx +0 -503
  637. package/src/components/Loading.tsx +0 -33
  638. package/src/components/MenuItemSelect.tsx +0 -93
  639. package/src/components/OauthPanel.tsx +0 -62
  640. package/src/components/OauthSelect.tsx +0 -40
  641. package/src/components/PageInput.tsx +0 -17
  642. package/src/components/PageLink.tsx +0 -50
  643. package/src/components/ProgressDialog.tsx +0 -85
  644. package/src/components/SimpleAlert.tsx +0 -103
  645. package/src/components/Toast.tsx +0 -85
  646. package/src/components/index.ts +0 -5
  647. package/src/components.tsx +0 -285
  648. package/src/date/constants.ts +0 -19
  649. package/src/date/parseNlpDate.ts +0 -255
  650. package/src/date/parseRoamDateUid.ts +0 -6
  651. package/src/dom/addBlockCommand.ts +0 -59
  652. package/src/dom/addKeyboardTriggers.ts +0 -52
  653. package/src/dom/addOldRoamJSDependency.ts +0 -10
  654. package/src/dom/addRoamJSDependency.ts +0 -7
  655. package/src/dom/addScriptAsDependency.ts +0 -24
  656. package/src/dom/addStyle.ts +0 -11
  657. package/src/dom/constants.ts +0 -1
  658. package/src/dom/createBlockObserver.ts +0 -44
  659. package/src/dom/createButtonObserver.ts +0 -31
  660. package/src/dom/createDivObserver.ts +0 -15
  661. package/src/dom/createHTMLObserver.ts +0 -44
  662. package/src/dom/createHashtagObserver.ts +0 -22
  663. package/src/dom/createIconButton.ts +0 -13
  664. package/src/dom/createObserver.ts +0 -15
  665. package/src/dom/createOverlayObserver.ts +0 -7
  666. package/src/dom/createPageObserver.ts +0 -37
  667. package/src/dom/createPageTitleObserver.ts +0 -43
  668. package/src/dom/elToTitle.ts +0 -21
  669. package/src/dom/genericError.ts +0 -13
  670. package/src/dom/getActiveUids.ts +0 -6
  671. package/src/dom/getBlockUidFromTarget.ts +0 -39
  672. package/src/dom/getCurrentPageUid.ts +0 -5
  673. package/src/dom/getDomRefs.ts +0 -15
  674. package/src/dom/getDropUidOffset.ts +0 -36
  675. package/src/dom/getMutatedNodes.ts +0 -31
  676. package/src/dom/getPageTitleByHtmlElement.ts +0 -19
  677. package/src/dom/getPageTitleValueByHtmlElement.ts +0 -8
  678. package/src/dom/getReferenceBlockUid.ts +0 -22
  679. package/src/dom/getRoamUrl.ts +0 -6
  680. package/src/dom/getRoamUrlByPage.ts +0 -9
  681. package/src/dom/getUids.ts +0 -9
  682. package/src/dom/getUidsFromButton.ts +0 -9
  683. package/src/dom/getUidsFromId.ts +0 -13
  684. package/src/dom/parseRoamBlocksToHtml.ts +0 -118
  685. package/src/dom/resolveRefs.ts +0 -31
  686. package/src/events/watchOnce.ts +0 -17
  687. package/src/hooks/useArrowKeyDown.ts +0 -72
  688. package/src/hooks/useSubTree.ts +0 -16
  689. package/src/marked/index.ts +0 -619
  690. package/src/queries/compileDatalog.ts +0 -81
  691. package/src/queries/getAllBlockUids.ts +0 -6
  692. package/src/queries/getAllBlockUidsAndTexts.ts +0 -6
  693. package/src/queries/getAllPageNames.ts +0 -6
  694. package/src/queries/getAttributeValueByBlockAndName.ts +0 -23
  695. package/src/queries/getBasicTreeByParentUid.ts +0 -21
  696. package/src/queries/getBlockUidAndTextIncludingText.ts +0 -15
  697. package/src/queries/getBlockUidByTextOnPage.ts +0 -12
  698. package/src/queries/getBlockUidsAndTextsReferencingPage.ts +0 -18
  699. package/src/queries/getBlockUidsByPageTitle.ts +0 -12
  700. package/src/queries/getBlockUidsReferencingBlock.ts +0 -10
  701. package/src/queries/getBlockUidsReferencingPage.ts +0 -13
  702. package/src/queries/getBlockUidsWithParentUid.ts +0 -10
  703. package/src/queries/getChildrenLengthByPageUid.ts +0 -7
  704. package/src/queries/getChildrenLengthByParentUid.ts +0 -6
  705. package/src/queries/getCreateTimeByBlockUid.ts +0 -6
  706. package/src/queries/getCurrentUser.ts +0 -12
  707. package/src/queries/getCurrentUserDisplayName.ts +0 -9
  708. package/src/queries/getCurrentUserEmail.ts +0 -12
  709. package/src/queries/getCurrentUserUid.ts +0 -12
  710. package/src/queries/getDisplayNameByEmail.ts +0 -6
  711. package/src/queries/getDisplayNameByUid.ts +0 -6
  712. package/src/queries/getEditTimeByBlockUid.ts +0 -6
  713. package/src/queries/getEditedUserEmailByBlockUid.ts +0 -6
  714. package/src/queries/getFirstChildTextByBlockUid.ts +0 -8
  715. package/src/queries/getFirstChildUidByBlockUid.ts +0 -6
  716. package/src/queries/getFullTreeByParentUid.ts +0 -60
  717. package/src/queries/getLinkedPageTitlesUnderUid.ts +0 -8
  718. package/src/queries/getNthChildUidByBlockUid.ts +0 -16
  719. package/src/queries/getOrderByBlockUid.ts +0 -6
  720. package/src/queries/getPageTitleByBlockUid.ts +0 -8
  721. package/src/queries/getPageTitleByPageUid.ts +0 -11
  722. package/src/queries/getPageTitleReferencesByPageTitle.ts +0 -13
  723. package/src/queries/getPageTitlesAndBlockUidsReferencingPage.ts +0 -18
  724. package/src/queries/getPageTitlesAndUidsDirectlyReferencingPage.ts +0 -18
  725. package/src/queries/getPageTitlesReferencingBlockUid.ts +0 -10
  726. package/src/queries/getPageTitlesStartingWithPrefix.ts +0 -8
  727. package/src/queries/getPageUidByBlockUid.ts +0 -8
  728. package/src/queries/getPageUidByPageTitle.ts +0 -10
  729. package/src/queries/getPageViewType.ts +0 -11
  730. package/src/queries/getParentTextByBlockUid.ts +0 -6
  731. package/src/queries/getParentTextByBlockUidAndTag.ts +0 -12
  732. package/src/queries/getParentUidByBlockUid.ts +0 -10
  733. package/src/queries/getParentUidsOfBlockUid.ts +0 -10
  734. package/src/queries/getSettingsByEmail.ts +0 -8
  735. package/src/queries/getShallowTreeByParentUid.ts +0 -17
  736. package/src/queries/getTextByBlockUid.ts +0 -8
  737. package/src/queries/index.ts +0 -5
  738. package/src/queries/isLiveBlock.ts +0 -4
  739. package/src/queries/isTagOnPage.ts +0 -12
  740. package/src/queries/normalizePageTitle.ts +0 -4
  741. package/src/scripts/index.ts +0 -2
  742. package/src/scripts/publishToRoamDepot.ts +0 -163
  743. package/src/testing/mockRoamEnvironment.ts +0 -1489
  744. package/src/types/index.ts +0 -260
  745. package/src/types/native.ts +0 -495
  746. package/src/types/query-builder.ts +0 -10
  747. package/src/types/smartblocks.ts +0 -39
  748. package/src/util/addInputSetting.ts +0 -33
  749. package/src/util/apiDelete.ts +0 -5
  750. package/src/util/apiGet.ts +0 -5
  751. package/src/util/apiPost.ts +0 -5
  752. package/src/util/apiPut.ts +0 -5
  753. package/src/util/createOverlayRender.ts +0 -12
  754. package/src/util/createTagRegex.ts +0 -7
  755. package/src/util/dispatchToRegistry.ts +0 -11
  756. package/src/util/env.ts +0 -44
  757. package/src/util/extensionApiContext.ts +0 -17
  758. package/src/util/extensionDeprecatedWarning.ts +0 -57
  759. package/src/util/extractRef.ts +0 -8
  760. package/src/util/extractTag.ts +0 -15
  761. package/src/util/focusMainWindowBlock.ts +0 -13
  762. package/src/util/getAuthorizationHeader.ts +0 -11
  763. package/src/util/getLocalStorageKey.ts +0 -4
  764. package/src/util/getOauth.ts +0 -57
  765. package/src/util/getOauthAccounts.ts +0 -26
  766. package/src/util/getRenderRoot.ts +0 -17
  767. package/src/util/getSettingIntFromTree.ts +0 -18
  768. package/src/util/getSettingValueFromTree.ts +0 -23
  769. package/src/util/getSettingValuesFromTree.ts +0 -20
  770. package/src/util/getSubTree.ts +0 -31
  771. package/src/util/getToken.ts +0 -12
  772. package/src/util/getTokenFromTree.ts +0 -6
  773. package/src/util/getWorkerClient.ts +0 -55
  774. package/src/util/handleBodyFetch.ts +0 -38
  775. package/src/util/handleFetch.ts +0 -70
  776. package/src/util/handleUrlFetch.ts +0 -30
  777. package/src/util/idToTitle.ts +0 -8
  778. package/src/util/isControl.ts +0 -4
  779. package/src/util/localStorageGet.ts +0 -6
  780. package/src/util/localStorageRemove.ts +0 -6
  781. package/src/util/localStorageSet.ts +0 -6
  782. package/src/util/registerExperimentalMode.ts +0 -76
  783. package/src/util/registerSmartBlocksCommand.ts +0 -23
  784. package/src/util/removeFromRegistry.ts +0 -11
  785. package/src/util/renderOverlay.ts +0 -69
  786. package/src/util/renderWithUnmount.ts +0 -50
  787. package/src/util/runExtension.ts +0 -206
  788. package/src/util/setInputSetting.ts +0 -46
  789. package/src/util/setInputSettings.ts +0 -37
  790. package/src/util/stripUid.ts +0 -10
  791. package/src/util/toConfigPageName.ts +0 -3
  792. package/src/util/toFlexRegex.ts +0 -7
  793. package/src/writes/clearBlockById.ts +0 -17
  794. package/src/writes/clearBlockByUid.ts +0 -16
  795. package/src/writes/createBlock.ts +0 -50
  796. package/src/writes/createPage.ts +0 -30
  797. package/src/writes/deleteBlock.ts +0 -9
  798. package/src/writes/openBlockInSidebar.ts +0 -13
  799. package/src/writes/submitActions.ts +0 -54
  800. package/src/writes/updateActiveBlock.ts +0 -17
  801. package/src/writes/updateBlock.ts +0 -33
  802. package/tests/backend.test.tsx +0 -28
  803. package/tests/date.test.ts +0 -26
  804. package/tests/dom.test.tsx +0 -10
  805. package/tests/index.test.tsx +0 -25
  806. package/tests/marked.test.ts +0 -474
  807. package/tests/util/createTagRegex.test.ts +0 -63
  808. package/tests/util/extractTag.test.ts +0 -17
  809. package/tests/util/toFlexRegex.test.ts +0 -7
  810. package/tsconfig.json +0 -26
package/docs/types.md DELETED
@@ -1,32 +0,0 @@
1
- ## Type Definitions
2
-
3
- https://github.com/RoamJS/roamjs-components/blob/main/src/types
4
-
5
- The `https://github.com/RoamJS/roamjs-components/blob/main/src/types` directory defines the core types and interfaces used throughout the Roam Research extension ecosystem. These types cover a wide range of functionalities, from data structures and queries to user interface components and SmartBlocks.
6
-
7
- The [`index.ts`](https://github.com/RoamJS/roamjs-components/blob/main/src/dom/index.ts#L0) file serves as the entry point, importing and re-exporting types from other modules such as [`native`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L0), [`query-builder`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/query-builder.ts#L0), and [`smartblocks`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/index.ts#L15). It also defines the [`Registry`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/index.ts#L22) type, which centralizes the storage of various elements, event listeners, and other state used by the extension. Additionally, it extends the global [`Window`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/index.ts#L57) object with Roam Research-specific APIs and utilities, including the [`roamAlphaAPI`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/index.ts#L83) and [`roamjs`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/index.ts#L234) namespaces.
8
-
9
- The [`native.ts`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L0) file provides a comprehensive set of types for working with the Roam Research application. Key types include:
10
-
11
- - **Datalog Types**: These types, such as [`DatalogSrcVar`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L6) and [`DatalogVariable`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L11), model the structure of Datalog queries, which are integral to the Roam Research data model.
12
- - **Roam Research Data Structures**: Types like [`RoamBasicBlock`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L139), [`RoamBasicPage`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L144), and [`RoamBasicNode`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L146) represent the various elements of Roam Research, such as blocks, pages, and nodes.
13
- - **User Interface Components**: Types such as [`Action`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L447), [`ButtonAction`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L419), and [`SwitchAction`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L425) model the user interface components that can be added to the Roam Research application.
14
- - **Client-Side Actions**: Types like [`ClientParams`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L324) and [`ActionParams`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L341) represent the parameters for various client-side actions, such as creating or updating blocks and pages.
15
- - **User Settings**: The [`UserSettings`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L363) type represents the user settings for the Roam Research application.
16
- - **Sidebar Functionality**: Types like [`SidebarWindowInput`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L376) and [`SidebarBlockWindow`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/native.ts#L381) model the sidebar functionality of the Roam Research application.
17
-
18
- The [`query-builder.ts`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/query-builder.ts#L0) file defines types related to querying and working with data in [Query Builder](https://github.com/RoamJS/query-builder). Key types include:
19
-
20
- - **Result**: Represents the result of a query, containing fields like [`text`](https://github.com/RoamJS/roamjs-components/blob/main/src/marked/index.ts#L211) and [`uid`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/getOauth.ts#L45).
21
- - **RunQuery** and **RunQuerySync**: Function types that execute a query and return the results.
22
- - **ListActiveQueries**: A function type that returns active queries.
23
- - **IsDiscourseNode**: A function type that determines if a node is a discourse node.
24
-
25
- The [`smartblocks.ts`](https://github.com/RoamJS/roamjs-components/blob/main/src/types/smartblocks.ts#L0) file defines types and interfaces used in the [SmartBlocks](https://github.com/RoamJS/smartblocks) extension. Key types include:
26
-
27
- - **CommandOutput**: Represents the output of a command handler.
28
- - **CommandHandler**: A function type that handles commands.
29
- - **SmartBlocksContext**: Represents the context in which a SmartBlock is executed.
30
- - **RegisterCommand** and **UnregisterCommand**: Function types for registering and unregistering commands.
31
-
32
- These types are essential for building robust and extensible Roam Research applications and integrations. For more detailed information on specific types, refer to the subsections on [Index Types](https://wiki.mutable.ai/RoamJS/roamjs-components#index-types), [Native Types](https://wiki.mutable.ai/RoamJS/roamjs-components#native-types), [Query Builder Types](https://wiki.mutable.ai/RoamJS/roamjs-components#query-builder-types), and [SmartBlocks Types](https://wiki.mutable.ai/RoamJS/roamjs-components#smartblocks-types).
package/docs/util.md DELETED
@@ -1,38 +0,0 @@
1
- ## Utility Functions
2
-
3
- https://github.com/RoamJS/roamjs-components/blob/main/src/util
4
-
5
- Utility functions in the RoamJS ecosystem provide essential support for various operations, including API interactions, DOM manipulation, data extraction, settings management, extension management, and miscellaneous tasks.
6
-
7
- ## API Interaction Utilities
8
-
9
- Functions like [`apiDelete()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/apiDelete.ts#L3), [`apiGet()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/apiGet.ts#L3), [`apiPost()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/apiPost.ts#L3), and [`apiPut()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/apiPut.ts#L3) standardize HTTP requests, while [`getOauth()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/getOauth.ts#L8) and [`getOauthAccounts()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/getOauthAccounts.ts#L7) manage OAuth authentication. For more details, see [API Interaction Utilities](https://wiki.mutable.ai/RoamJS/roamjs-components#api-interaction-utilities).
10
-
11
- ## DOM and Rendering Utilities
12
-
13
- Utilities such as [`createOverlayRender()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/createOverlayRender.ts#L4), [`getRenderRoot()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/getRenderRoot.ts#L3), and [`renderOverlay()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/renderOverlay.ts#L16) facilitate DOM manipulation and component rendering within the Roam application. For more details, see [DOM and Rendering Utilities](https://wiki.mutable.ai/RoamJS/roamjs-components#dom-and-rendering-utilities).
14
-
15
- ## Data Extraction and Transformation Utilities
16
-
17
- Functions like [`extractRef()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/extractRef.ts#L3), [`extractTag()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/extractTag.ts#L1), and [`createTagRegex()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/createTagRegex.ts#L1) handle the extraction and transformation of data from Roam page content. For more details, see [Data Extraction and Transformation Utilities](https://wiki.mutable.ai/RoamJS/roamjs-components#setting-and-configuration-utilities).
18
-
19
- ## Setting and Configuration Utilities
20
-
21
- Utilities such as [`addInputSetting()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/addInputSetting.ts#L5), [`setInputSetting()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/setInputSetting.ts#L6), and [`getSettingValueFromTree()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/getSettingValueFromTree.ts#L5) manage settings and configurations within Roam extensions. For more details, see [Setting and Configuration Utilities](https://wiki.mutable.ai/RoamJS/roamjs-components#extension-management-utilities).
22
-
23
- ## Extension Management Utilities
24
-
25
- Functions like [`extensionDeprecatedWarning()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/extensionDeprecatedWarning.ts#L11) and [`runExtension()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/runExtension.ts#L22) manage and run Roam extensions. For more details, see [Extension Management Utilities](https://wiki.mutable.ai/RoamJS/roamjs-components#extension-management-utilities).
26
-
27
- ## Miscellaneous Utilities
28
-
29
- Various other utilities include [`isControl()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/isControl.ts#L1), [`toFlexRegex()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/toFlexRegex.ts#L1), and [`getWorkerClient()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/getWorkerClient.ts#L1), which handle tasks like checking DOM elements and interacting with web workers.
30
-
31
- ## Key Design Choices and Important Implementations
32
-
33
- - **OAuth Management**: [`getOauth()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/getOauth.ts#L8) retrieves OAuth information from local storage or the Roam Research database, ensuring efficient access to authentication data.
34
- - **Overlay Rendering**: [`createOverlayRender()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/createOverlayRender.ts#L4) and [`renderOverlay()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/renderOverlay.ts#L16) manage the rendering of React components as overlays, providing a flexible way to display modal content.
35
- - **Extension Lifecycle Management**: [`runExtension()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/runExtension.ts#L22) handles the setup and cleanup of Roam extensions, including event listeners and registry management.
36
- - **Settings Management**: [`setInputSetting()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/setInputSetting.ts#L6) and [`getSettingValueFromTree()`](https://github.com/RoamJS/roamjs-components/blob/main/src/util/getSettingValueFromTree.ts#L5) streamline the process of managing input settings within Roam blocks, ensuring consistent configuration handling.
37
-
38
- These utilities are designed to be reusable and modular, promoting code organization and maintainability across the RoamJS ecosystem.
package/docs/writes.md DELETED
@@ -1,23 +0,0 @@
1
- # Write Operations
2
-
3
- https://github.com/RoamJS/roamjs-components/blob/main/src/writes
4
-
5
- `https://github.com/RoamJS/roamjs-components/blob/main/src/writes` contains functions that handle various write operations in a Roam. These functions include clearing, creating, updating, and deleting blocks, as well as creating pages and managing sidebar operations.
6
-
7
- - [`clearBlockById`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/clearBlockById.ts#L4): Clears the content of a block by its ID. It uses [`getUidsFromId`](https://github.com/RoamJS/roamjs-components/blob/main/src/dom/getUidsFromId.ts#L1) to extract the block UID and then calls [`submitActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/submitActions.ts#L19) to update the block content to an empty string.
8
- - [`clearBlockByUid`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/clearBlockByUid.ts#L3): Clears the content of a block by its UID. It directly calls [`submitActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/submitActions.ts#L19) with an update action to set the block content to an empty string.
9
- - [`createBlock`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/createBlock.ts#L41): Creates a new block with the provided content and options. It gathers the necessary actions using [`gatherActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/createBlock.ts#L4) and submits them using [`submitActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/submitActions.ts#L19).
10
- - [`createPage`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/createPage.ts#L6): Creates a new page with the provided title. It checks if the title matches a daily note pattern and generates a UID if necessary. It then submits actions to create the page and any child blocks using [`submitActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/submitActions.ts#L19).
11
- - [`deleteBlock`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/deleteBlock.ts#L3): Deletes a block by its UID. It submits a delete action using [`submitActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/submitActions.ts#L19).
12
- - [`openBlockInSidebar`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/openBlockInSidebar.ts#L1): Opens a block in the sidebar. It checks if the block is already open in the sidebar and either opens the sidebar or adds a new window with the block UID.
13
- - [`updateActiveBlock`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/updateActiveBlock.ts#L4): Updates the content of the currently active block. It retrieves the active block UID using [`getActiveUids`](https://github.com/RoamJS/roamjs-components/blob/main/src/dom/getActiveUids.ts#L3) and submits an update action using [`submitActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/submitActions.ts#L19).
14
- - [`updateBlock`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/updateBlock.ts#L4): Updates the properties of a block, including text, heading, text alignment, view type, and open state. It submits these updates using [`submitActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/submitActions.ts#L19).
15
-
16
- The [`submitActions`](https://github.com/RoamJS/roamjs-components/blob/main/src/writes/submitActions.ts#L19) function is central to these operations, handling the submission of various actions to the Roam Research API. It manages an action queue and retries actions in case of API errors.
17
-
18
- For more details on see
19
-
20
- - [Block Operations](https://wiki.mutable.ai/RoamJS/roamjs-components#block-operations)
21
- - [Page Operations](https://wiki.mutable.ai/RoamJS/roamjs-components#page-operations)
22
- - [Sidebar Operations](https://wiki.mutable.ai/RoamJS/roamjs-components#sidebar-operations)
23
- - [Action Submission](https://wiki.mutable.ai/RoamJS/roamjs-components#action-submission)
@@ -1,48 +0,0 @@
1
- diff --git a/node_modules/@blueprintjs/core/lib/esm/components/alert/alert.d.ts b/node_modules/@blueprintjs/core/lib/esm/components/alert/alert.d.ts
2
- index 09b06be..f74f6a3 100644
3
- --- a/node_modules/@blueprintjs/core/lib/esm/components/alert/alert.d.ts
4
- +++ b/node_modules/@blueprintjs/core/lib/esm/components/alert/alert.d.ts
5
- @@ -5,6 +5,7 @@ import { IOverlayLifecycleProps } from "../overlay/overlay";
6
- export declare type AlertProps = IAlertProps;
7
- /** @deprecated use AlertProps */
8
- export interface IAlertProps extends IOverlayLifecycleProps, Props {
9
- + children?: React.ReactNode;
10
- /**
11
- * Whether pressing <kbd>escape</kbd> when focused on the Alert should cancel the alert.
12
- * If this prop is enabled, then either `onCancel` or `onClose` must also be defined.
13
- diff --git a/node_modules/@blueprintjs/core/lib/esm/components/dialog/dialog.d.ts b/node_modules/@blueprintjs/core/lib/esm/components/dialog/dialog.d.ts
14
- index e90ee31..3e4f4ef 100644
15
- --- a/node_modules/@blueprintjs/core/lib/esm/components/dialog/dialog.d.ts
16
- +++ b/node_modules/@blueprintjs/core/lib/esm/components/dialog/dialog.d.ts
17
- @@ -6,6 +6,7 @@ import { IBackdropProps, OverlayableProps } from "../overlay/overlay";
18
- export declare type DialogProps = IDialogProps;
19
- /** @deprecated use DialogProps */
20
- export interface IDialogProps extends OverlayableProps, IBackdropProps, Props {
21
- + children?: React.ReactNode;
22
- /**
23
- * Toggles the visibility of the overlay and its children.
24
- * This prop is required because the component is controlled.
25
- diff --git a/node_modules/@blueprintjs/core/lib/esm/components/tabs/tabs.d.ts b/node_modules/@blueprintjs/core/lib/esm/components/tabs/tabs.d.ts
26
- index 2ca5fe5..870a32e 100644
27
- --- a/node_modules/@blueprintjs/core/lib/esm/components/tabs/tabs.d.ts
28
- +++ b/node_modules/@blueprintjs/core/lib/esm/components/tabs/tabs.d.ts
29
- @@ -6,6 +6,7 @@ export declare const Expander: React.FunctionComponent;
30
- export declare type TabsProps = ITabsProps;
31
- /** @deprecated use TabsProps */
32
- export interface ITabsProps extends Props {
33
- + children?: React.ReactNode;
34
- /**
35
- * Whether the selected tab indicator should animate its movement.
36
- *
37
- diff --git a/node_modules/@blueprintjs/core/lib/esm/components/tooltip/tooltip.d.ts b/node_modules/@blueprintjs/core/lib/esm/components/tooltip/tooltip.d.ts
38
- index 94f4af9..4db48a9 100644
39
- --- a/node_modules/@blueprintjs/core/lib/esm/components/tooltip/tooltip.d.ts
40
- +++ b/node_modules/@blueprintjs/core/lib/esm/components/tooltip/tooltip.d.ts
41
- @@ -6,6 +6,7 @@ import { IPopoverSharedProps } from "../popover/popoverSharedProps";
42
- export declare type TooltipProps = ITooltipProps;
43
- /** @deprecated use TooltipProps */
44
- export interface ITooltipProps extends IPopoverSharedProps, IntentProps {
45
- + children?: React.ReactNode;
46
- /**
47
- * The content that will be displayed inside of the tooltip.
48
- */
@@ -1,12 +0,0 @@
1
- diff --git a/node_modules/@blueprintjs/select/lib/esm/components/select/select.d.ts b/node_modules/@blueprintjs/select/lib/esm/components/select/select.d.ts
2
- index f8b9bc6..ee0b6da 100644
3
- --- a/node_modules/@blueprintjs/select/lib/esm/components/select/select.d.ts
4
- +++ b/node_modules/@blueprintjs/select/lib/esm/components/select/select.d.ts
5
- @@ -4,6 +4,7 @@ import { IListItemsProps } from "../../common";
6
- export declare type SelectProps<T> = ISelectProps<T>;
7
- /** @deprecated use SelectProps */
8
- export interface ISelectProps<T> extends IListItemsProps<T> {
9
- + children?: React.ReactNode;
10
- /**
11
- * Whether the component should take up the full width of its container.
12
- * This overrides `popoverProps.fill`. You also have to ensure that the child
@@ -1,12 +0,0 @@
1
- diff --git a/node_modules/dotenv/lib/main.d.ts b/node_modules/dotenv/lib/main.d.ts
2
- index af84746..2247963 100644
3
- --- a/node_modules/dotenv/lib/main.d.ts
4
- +++ b/node_modules/dotenv/lib/main.d.ts
5
- @@ -1,6 +1,6 @@
6
- // TypeScript Version: 3.0
7
- /// <reference types="node" />
8
- -import type { URL } from 'node:url';
9
- +import type { URL } from 'url';
10
-
11
- export interface DotenvParseOutput {
12
- [name: string]: string;
@@ -1,248 +0,0 @@
1
- import {
2
- InputGroup,
3
- Menu,
4
- MenuItem,
5
- PopoverPosition,
6
- Popover,
7
- Button,
8
- TextArea,
9
- } from "@blueprintjs/core";
10
- import React, {
11
- useState,
12
- useCallback,
13
- useMemo,
14
- useRef,
15
- useEffect,
16
- } from "react";
17
- import useArrowKeyDown from "../hooks/useArrowKeyDown";
18
- import fuzzy from "fuzzy";
19
-
20
- type FilterOptions<T> = (options: T[], query: string) => T[];
21
- type OnNewItem<T> = (s: string) => T;
22
- type ItemToQuery<T> = (t?: T) => string;
23
-
24
- export type AutocompleteInputProps<T = string> = {
25
- value?: T;
26
- setValue: (q: T) => void;
27
- showButton?: boolean;
28
- onBlur?: (v: string) => void;
29
- onConfirm?: () => void;
30
- options?: T[];
31
- placeholder?: string;
32
- autoFocus?: boolean;
33
- multiline?: boolean;
34
- id?: string;
35
- filterOptions?: FilterOptions<T>;
36
- itemToQuery?: ItemToQuery<T>;
37
- renderItem?: (props: {
38
- item: T;
39
- onClick: () => void;
40
- active: boolean;
41
- }) => React.ReactElement;
42
- onNewItem?: OnNewItem<T>;
43
- disabled?: boolean;
44
- maxItemsDisplayed?: number;
45
- };
46
-
47
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-constraint
48
- const AutocompleteInput = <T extends unknown = string>({
49
- value,
50
- setValue,
51
- onBlur,
52
- onConfirm,
53
- showButton,
54
- options = [],
55
- placeholder = "Enter value",
56
- autoFocus,
57
- multiline,
58
- id,
59
- filterOptions: _filterOptions,
60
- itemToQuery: _itemToQuery,
61
- renderItem,
62
- onNewItem: _onNewItem,
63
- disabled,
64
- maxItemsDisplayed = Infinity,
65
- }: AutocompleteInputProps<T>): React.ReactElement => {
66
- const [isOpen, setIsOpen] = useState(false);
67
- const itemToQuery = useMemo<ItemToQuery<T>>(
68
- () => _itemToQuery || ((s) => (s ? `${s}` : "")),
69
- [_itemToQuery]
70
- );
71
- const [query, setQuery] = useState<string>(() => itemToQuery(value));
72
- const open = useCallback(() => setIsOpen(true), [setIsOpen]);
73
- const close = useCallback(() => setIsOpen(false), [setIsOpen]);
74
- const [isTyping, setIsTyping] = useState(false);
75
- const filterOptions = useMemo<FilterOptions<T>>(
76
- () =>
77
- _filterOptions ||
78
- ((o, q) =>
79
- fuzzy
80
- .filter(q, o, { extract: itemToQuery })
81
- .map((f) => f.original)
82
- .filter((f): f is T => !!f)),
83
- [_filterOptions, itemToQuery]
84
- );
85
- const onNewItem = useMemo<OnNewItem<T>>(
86
- () => _onNewItem || ((s) => s as T),
87
- [_onNewItem]
88
- );
89
-
90
- const items = useMemo(
91
- () =>
92
- (query ? filterOptions(options, query) : options).slice(
93
- 0,
94
- maxItemsDisplayed
95
- ),
96
- [query, options, filterOptions, maxItemsDisplayed]
97
- );
98
- const menuRef = useRef<HTMLUListElement>(null);
99
- const inputRef = useRef<HTMLInputElement & HTMLTextAreaElement>(null);
100
- const onEnter = useCallback(
101
- (value?: T) => {
102
- if (isOpen && value) {
103
- setQuery(itemToQuery(value));
104
- setValue(value);
105
- setIsTyping(false);
106
- } else if (onConfirm) {
107
- onConfirm();
108
- } else {
109
- setIsOpen(true);
110
- }
111
- },
112
- [setValue, onConfirm, isOpen]
113
- );
114
- const { activeIndex, onKeyDown } = useArrowKeyDown({
115
- onEnter,
116
- results: items,
117
- menuRef,
118
- });
119
- useEffect(() => {
120
- if (!items.length || !isTyping) close();
121
- else open();
122
- }, [items, close, open, isTyping]);
123
- useEffect(() => {
124
- if (query && isOpen) setValue(items[activeIndex] || onNewItem(query));
125
- else if (query) setValue(onNewItem(query));
126
- }, [setValue, activeIndex, items, onNewItem, query]);
127
- useEffect(() => {
128
- if (
129
- inputRef.current &&
130
- inputRef.current === document.activeElement &&
131
- value
132
- ) {
133
- const index = itemToQuery(value).length;
134
- inputRef.current.setSelectionRange(index, index);
135
- }
136
- const touchEndListener = (e: TouchEvent) => {
137
- if (
138
- !e.target ||
139
- !menuRef.current ||
140
- menuRef.current.contains(e.target as Element)
141
- ) {
142
- return;
143
- }
144
- if (!inputRef.current || inputRef.current.contains(e.target as Element)) {
145
- return;
146
- }
147
- close();
148
- };
149
- document.body.addEventListener("touchend", touchEndListener);
150
- return () =>
151
- document.body.removeEventListener("touchend", touchEndListener);
152
- }, [inputRef, menuRef, close]);
153
- const Input = useMemo(() => (multiline ? TextArea : InputGroup), [multiline]);
154
- return (
155
- <Popover
156
- portalClassName={"roamjs-autocomplete-input"}
157
- targetClassName={"roamjs-autocomplete-input-target"}
158
- captureDismiss={true}
159
- isOpen={isOpen}
160
- onOpened={open}
161
- minimal
162
- autoFocus={false}
163
- enforceFocus={false}
164
- position={PopoverPosition.BOTTOM_LEFT}
165
- modifiers={{
166
- flip: { enabled: false },
167
- preventOverflow: { enabled: false },
168
- }}
169
- content={
170
- <Menu className={"max-h-64 overflow-auto max-w-md"} ulRef={menuRef}>
171
- {items.map((t, i) => {
172
- const onClick = () => {
173
- setIsTyping(false);
174
- setValue(t);
175
- setQuery(itemToQuery(t));
176
- inputRef.current?.focus();
177
- };
178
- const sharedProps = {
179
- onClick,
180
- onTouchEnd: onClick,
181
- active: activeIndex === i,
182
- };
183
- return renderItem ? (
184
- <React.Fragment key={i}>
185
- {renderItem?.({
186
- item: t,
187
- ...sharedProps,
188
- })}
189
- </React.Fragment>
190
- ) : (
191
- <MenuItem
192
- text={itemToQuery(t)}
193
- key={i}
194
- multiline
195
- {...sharedProps}
196
- />
197
- );
198
- })}
199
- </Menu>
200
- }
201
- target={
202
- <Input
203
- disabled={disabled}
204
- value={query}
205
- onChange={(e) => {
206
- setIsTyping(true);
207
- setQuery(e.target.value);
208
- }}
209
- autoFocus={autoFocus}
210
- placeholder={placeholder}
211
- onKeyDown={(e) => {
212
- if (e.key === "Escape") {
213
- e.stopPropagation();
214
- close();
215
- } else {
216
- onKeyDown(e);
217
- }
218
- }}
219
- id={id}
220
- onClick={() => setIsTyping(true)}
221
- onBlur={(e) => {
222
- if (
223
- e.relatedTarget === null ||
224
- !(e.relatedTarget as HTMLElement).closest?.(
225
- ".roamjs-autocomplete-input"
226
- )
227
- ) {
228
- setIsTyping(false);
229
- }
230
- if (onBlur) {
231
- onBlur(e.target.value);
232
- }
233
- }}
234
- inputRef={inputRef}
235
- {...(showButton
236
- ? {
237
- rightElement: (
238
- <Button icon={"add"} minimal onClick={() => onEnter()} />
239
- ),
240
- }
241
- : {})}
242
- />
243
- }
244
- />
245
- );
246
- };
247
-
248
- export default AutocompleteInput;
@@ -1,39 +0,0 @@
1
- import React from "react";
2
- import createBlock from "../writes/createBlock";
3
-
4
- type BlockErrorBoundaryProps = {
5
- blockUid: string;
6
- message: string;
7
- children: React.ReactNode;
8
- };
9
- type BlockErrorBoundaryState = { hasError: boolean };
10
-
11
- class BlockErrorBoundary extends React.Component<
12
- BlockErrorBoundaryProps,
13
- BlockErrorBoundaryState
14
- > {
15
- constructor(props: BlockErrorBoundaryProps) {
16
- super(props);
17
- this.state = { hasError: false };
18
- }
19
-
20
- static getDerivedStateFromError(): BlockErrorBoundaryState {
21
- return { hasError: true };
22
- }
23
-
24
- componentDidCatch(error: Error): void {
25
- createBlock({
26
- node: { text: this.props.message.replace("{ERROR}", error.message) },
27
- parentUid: this.props.blockUid,
28
- });
29
- }
30
-
31
- render(): React.ReactNode {
32
- if (this.state.hasError) {
33
- return <div>Component Failed To Load</div>;
34
- }
35
- return this.props.children;
36
- }
37
- }
38
-
39
- export default BlockErrorBoundary;
@@ -1,117 +0,0 @@
1
- import {
2
- Popover,
3
- PopoverPosition,
4
- Menu,
5
- MenuItem,
6
- InputGroup,
7
- } from "@blueprintjs/core";
8
- import React, { useCallback, useMemo, useRef, useState } from "react";
9
- import getAllBlockUidsAndTexts from "../queries/getAllBlockUidsAndTexts";
10
- import useArrowKeyDown from "../hooks/useArrowKeyDown";
11
-
12
- const searchBlocksByString = (
13
- q: string,
14
- blocks: { text: string; uid: string }[]
15
- ) => {
16
- const regex = new RegExp(q, "i");
17
- return blocks.filter((a) => regex.test(a.text)).slice(0, 9);
18
- };
19
-
20
- const BlockInput = ({
21
- value,
22
- setValue,
23
- onBlur,
24
- onConfirm,
25
- getAllBlocks = getAllBlockUidsAndTexts,
26
- autoFocus,
27
- }: {
28
- value: string;
29
- setValue: (q: string, uid?: string) => void;
30
- onBlur?: (v: string) => void;
31
- onConfirm?: () => void;
32
- getAllBlocks?: () => { text: string; uid: string }[];
33
- autoFocus?: boolean;
34
- }): React.ReactElement => {
35
- const [isOpen, setIsOpen] = useState(false);
36
- const open = useCallback(() => setIsOpen(true), [setIsOpen]);
37
- const close = useCallback(() => setIsOpen(false), [setIsOpen]);
38
- const allBlocks = useMemo(getAllBlocks, []);
39
- const items = useMemo(
40
- () => (value && isOpen ? searchBlocksByString(value, allBlocks) : []),
41
- [value, allBlocks]
42
- );
43
- const menuRef = useRef<HTMLUListElement>(null);
44
- const inputRef = useRef<HTMLInputElement>(null);
45
- const { activeIndex, onKeyDown } = useArrowKeyDown({
46
- onEnter: (value) => {
47
- if (isOpen) {
48
- setValue(value.text, value.uid);
49
- close();
50
- } else if (onConfirm) {
51
- onConfirm();
52
- }
53
- },
54
- results: items,
55
- menuRef,
56
- });
57
- return (
58
- <Popover
59
- portalClassName={"roamjs-block-input"}
60
- targetClassName={"roamjs-block-input-target"}
61
- captureDismiss={true}
62
- isOpen={isOpen}
63
- onOpened={open}
64
- minimal={true}
65
- autoFocus={false}
66
- enforceFocus={false}
67
- position={PopoverPosition.BOTTOM_LEFT}
68
- modifiers={{
69
- flip: { enabled: false },
70
- preventOverflow: { enabled: false },
71
- }}
72
- content={
73
- <Menu className={"max-h-64 overflow-auto max-w-md"} ulRef={menuRef}>
74
- {items.map((t, i) => (
75
- <MenuItem
76
- text={t.text}
77
- active={activeIndex === i}
78
- key={t.uid}
79
- multiline
80
- onClick={() => {
81
- setValue(t.text, t.uid);
82
- close();
83
- inputRef.current?.focus();
84
- }}
85
- />
86
- ))}
87
- </Menu>
88
- }
89
- target={
90
- <InputGroup
91
- value={value || ""}
92
- onChange={(e: React.ChangeEvent<HTMLInputElement>) => {
93
- setValue(e.target.value);
94
- setIsOpen(!!e.target.value);
95
- }}
96
- placeholder={"Search for a block"}
97
- onKeyDown={onKeyDown}
98
- onBlur={(e) => {
99
- if (
100
- e.relatedTarget &&
101
- !(e.relatedTarget as HTMLElement).closest?.(".roamjs-block-input")
102
- ) {
103
- close();
104
- }
105
- if (onBlur) {
106
- onBlur(e.target.value);
107
- }
108
- }}
109
- inputRef={inputRef}
110
- autoFocus={autoFocus}
111
- />
112
- }
113
- />
114
- );
115
- };
116
-
117
- export default BlockInput;
@@ -1,70 +0,0 @@
1
- import { Button } from "@blueprintjs/core";
2
- import React, { useCallback, useState } from "react";
3
- import getUidsFromId from "../dom/getUidsFromId";
4
- import getBlockUidFromTarget from "../dom/getBlockUidFromTarget";
5
- import renderWithUnmount from "../util/renderWithUnmount";
6
- import { OnloadArgs } from "../types/native";
7
-
8
- const ComponentContainer: React.FunctionComponent<{
9
- blockId?: string;
10
- className?: string;
11
- children?: React.ReactNode;
12
- }> = ({ blockId, className, children }) => {
13
- const [showIcons, setShowIcons] = useState(false);
14
- const appear = useCallback(() => setShowIcons(true), [setShowIcons]);
15
- const disappear = useCallback(() => setShowIcons(false), [setShowIcons]);
16
-
17
- const { blockUid, windowId } = getUidsFromId(blockId);
18
- return (
19
- <div
20
- className={className}
21
- onMouseOver={appear}
22
- onMouseLeave={disappear}
23
- style={{ position: "relative", width: "fit-content", minWidth: 300 }}
24
- >
25
- {showIcons && (
26
- <div className={"roamjs-edit-component absolute top-2 right-2 z-50"}>
27
- {blockId && (
28
- <Button
29
- icon="edit"
30
- minimal
31
- onClick={() =>
32
- window.roamAlphaAPI.ui.setBlockFocusAndSelection({
33
- location: { "block-uid": blockUid, "window-id": windowId },
34
- })
35
- }
36
- />
37
- )}
38
- </div>
39
- )}
40
- {children}
41
- </div>
42
- );
43
- };
44
-
45
- export const createComponentRender =
46
- (
47
- Fc: (props: { blockUid: string }) => React.ReactElement,
48
- className?: string
49
- ) =>
50
- (b: HTMLButtonElement, args?: OnloadArgs): void => {
51
- if (b.parentElement) {
52
- b.parentElement.onmousedown = (e: MouseEvent) => e.stopPropagation();
53
- const blockUid = getBlockUidFromTarget(b);
54
- const possibleBlockId = b.closest(".roam-block")?.id;
55
- const blockId = possibleBlockId?.endsWith?.(blockUid)
56
- ? possibleBlockId
57
- : undefined;
58
- if (blockUid) {
59
- renderWithUnmount(
60
- <ComponentContainer blockId={blockId} className={className}>
61
- <Fc blockUid={blockUid} />
62
- </ComponentContainer>,
63
- b.parentElement,
64
- args
65
- );
66
- }
67
- }
68
- };
69
-
70
- export default ComponentContainer;