roamjs-components 0.85.1 → 1.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (808) hide show
  1. package/.eslintrc.json +19 -0
  2. package/.github/workflows/main.yaml +34 -0
  3. package/LICENSE +21 -21
  4. package/README.md +29 -29
  5. package/docs/components.md +32 -0
  6. package/docs/date.md +13 -0
  7. package/docs/dom.md +58 -0
  8. package/docs/events.md +16 -0
  9. package/docs/hooks.md +15 -0
  10. package/docs/marked.md +56 -0
  11. package/docs/queries.md +24 -0
  12. package/docs/scripts.md +20 -0
  13. package/docs/types.md +32 -0
  14. package/docs/util.md +38 -0
  15. package/docs/writes.md +23 -0
  16. package/package.json +117 -117
  17. package/patches/dotenv+16.3.1.patch +12 -0
  18. package/src/components/AutocompleteInput.tsx +248 -0
  19. package/src/components/BlockErrorBoundary.tsx +35 -0
  20. package/src/components/BlockInput.tsx +130 -0
  21. package/src/components/ComponentContainer.tsx +71 -0
  22. package/src/components/ConfigPage.tsx +340 -0
  23. package/src/components/ConfigPanels/BlockPanel.tsx +60 -0
  24. package/src/components/ConfigPanels/BlocksPanel.tsx +102 -0
  25. package/src/components/ConfigPanels/CustomPanel.tsx +41 -0
  26. package/src/components/ConfigPanels/FlagPanel.tsx +48 -0
  27. package/src/components/ConfigPanels/MultiChildPanel.tsx +108 -0
  28. package/src/components/ConfigPanels/MultiTextPanel.tsx +23 -0
  29. package/src/components/ConfigPanels/NumberPanel.tsx +36 -0
  30. package/src/components/ConfigPanels/OauthPanel.tsx +134 -0
  31. package/src/components/ConfigPanels/PagesPanel.tsx +19 -0
  32. package/src/components/ConfigPanels/SelectPanel.tsx +46 -0
  33. package/src/components/ConfigPanels/TextPanel.tsx +44 -0
  34. package/src/components/ConfigPanels/TimePanel.tsx +45 -0
  35. package/src/components/ConfigPanels/getBrandColors.tsx +31 -0
  36. package/src/components/ConfigPanels/types.ts +111 -0
  37. package/src/components/ConfigPanels/useSingleChildValue.tsx +80 -0
  38. package/src/components/CursorMenu.tsx +286 -0
  39. package/src/components/Description.tsx +31 -0
  40. package/src/components/ExtensionApiContext.tsx +24 -0
  41. package/src/components/ExternalLogin.tsx +201 -0
  42. package/src/components/Filter.tsx +313 -0
  43. package/src/components/FormDialog.tsx +517 -0
  44. package/src/components/Loading.tsx +33 -0
  45. package/src/components/MenuItemSelect.tsx +88 -0
  46. package/src/components/OauthPanel.tsx +62 -0
  47. package/src/components/OauthSelect.tsx +49 -0
  48. package/src/components/PageInput.tsx +31 -0
  49. package/src/components/PageLink.tsx +50 -0
  50. package/src/components/ProgressDialog.tsx +85 -0
  51. package/src/components/SimpleAlert.tsx +103 -0
  52. package/src/components/Toast.tsx +85 -0
  53. package/src/components/index.ts +5 -0
  54. package/src/components.tsx +242 -0
  55. package/src/date/constants.ts +19 -0
  56. package/{date/index.d.ts → src/date/index.ts} +3 -3
  57. package/src/date/parseNlpDate.ts +270 -0
  58. package/src/date/parseRoamDateUid.ts +6 -0
  59. package/src/dom/addBlockCommand.ts +59 -0
  60. package/src/dom/addKeyboardTriggers.ts +56 -0
  61. package/src/dom/addOldRoamJSDependency.ts +10 -0
  62. package/src/dom/addRoamJSDependency.ts +7 -0
  63. package/src/dom/addScriptAsDependency.ts +24 -0
  64. package/src/dom/addStyle.ts +11 -0
  65. package/src/dom/constants.ts +1 -0
  66. package/src/dom/createBlockObserver.ts +44 -0
  67. package/src/dom/createButtonObserver.ts +31 -0
  68. package/src/dom/createDivObserver.ts +15 -0
  69. package/src/dom/createHTMLObserver.ts +44 -0
  70. package/src/dom/createHashtagObserver.ts +22 -0
  71. package/src/dom/createIconButton.ts +13 -0
  72. package/src/dom/createObserver.ts +15 -0
  73. package/src/dom/createOverlayObserver.ts +7 -0
  74. package/src/dom/createPageObserver.ts +39 -0
  75. package/src/dom/createPageTitleObserver.ts +44 -0
  76. package/src/dom/elToTitle.ts +21 -0
  77. package/src/dom/genericError.ts +13 -0
  78. package/src/dom/getActiveUids.ts +6 -0
  79. package/src/dom/getBlockUidFromTarget.ts +39 -0
  80. package/src/dom/getCurrentPageUid.ts +5 -0
  81. package/src/dom/getDomRefs.ts +15 -0
  82. package/src/dom/getDropUidOffset.ts +36 -0
  83. package/src/dom/getMutatedNodes.ts +31 -0
  84. package/src/dom/getPageTitleByHtmlElement.ts +19 -0
  85. package/src/dom/getPageTitleValueByHtmlElement.ts +8 -0
  86. package/src/dom/getReferenceBlockUid.ts +22 -0
  87. package/src/dom/getRoamUrl.ts +6 -0
  88. package/src/dom/getRoamUrlByPage.ts +9 -0
  89. package/src/dom/getUids.ts +9 -0
  90. package/src/dom/getUidsFromButton.ts +9 -0
  91. package/src/dom/getUidsFromId.ts +13 -0
  92. package/{dom/index.d.ts → src/dom/index.ts} +30 -30
  93. package/src/dom/parseRoamBlocksToHtml.ts +118 -0
  94. package/src/dom/resolveRefs.ts +46 -0
  95. package/{events/index.d.ts → src/events/index.ts} +1 -1
  96. package/src/events/watchOnce.ts +17 -0
  97. package/{hooks/index.d.ts → src/hooks/index.ts} +2 -2
  98. package/src/hooks/useArrowKeyDown.ts +72 -0
  99. package/src/hooks/useSubTree.ts +16 -0
  100. package/src/marked/index.ts +619 -0
  101. package/src/queries/compileDatalog.ts +81 -0
  102. package/src/queries/getAllBlockUids.ts +8 -0
  103. package/src/queries/getAllBlockUidsAndTexts.ts +10 -0
  104. package/src/queries/getAllPageNames.ts +8 -0
  105. package/src/queries/getAttributeValueByBlockAndName.ts +20 -0
  106. package/src/queries/getBasicTreeByParentUid.ts +21 -0
  107. package/src/queries/getBlockUidAndTextIncludingText.ts +15 -0
  108. package/src/queries/getBlockUidByTextOnPage.ts +14 -0
  109. package/src/queries/getBlockUidsAndTextsReferencingPage.ts +18 -0
  110. package/src/queries/getBlockUidsByPageTitle.ts +12 -0
  111. package/src/queries/getBlockUidsReferencingBlock.ts +10 -0
  112. package/src/queries/getBlockUidsReferencingPage.ts +15 -0
  113. package/src/queries/getBlockUidsWithParentUid.ts +8 -0
  114. package/src/queries/getChildrenLengthByPageUid.ts +10 -0
  115. package/src/queries/getChildrenLengthByParentUid.ts +9 -0
  116. package/src/queries/getCreateTimeByBlockUid.ts +9 -0
  117. package/src/queries/getCurrentUser.ts +12 -0
  118. package/src/queries/getCurrentUserDisplayName.ts +9 -0
  119. package/src/queries/getCurrentUserEmail.ts +12 -0
  120. package/src/queries/getCurrentUserUid.ts +12 -0
  121. package/src/queries/getDisplayNameByEmail.ts +8 -0
  122. package/src/queries/getDisplayNameByUid.ts +8 -0
  123. package/src/queries/getEditTimeByBlockUid.ts +9 -0
  124. package/src/queries/getEditedUserEmailByBlockUid.ts +10 -0
  125. package/src/queries/getFirstChildTextByBlockUid.ts +10 -0
  126. package/src/queries/getFirstChildUidByBlockUid.ts +6 -0
  127. package/src/queries/getFullTreeByParentUid.ts +60 -0
  128. package/src/queries/getLinkedPageTitlesUnderUid.ts +8 -0
  129. package/src/queries/getNthChildUidByBlockUid.ts +16 -0
  130. package/src/queries/getOrderByBlockUid.ts +8 -0
  131. package/src/queries/getPageTitleByBlockUid.ts +8 -0
  132. package/src/queries/getPageTitleByPageUid.ts +13 -0
  133. package/src/queries/getPageTitleReferencesByPageTitle.ts +15 -0
  134. package/src/queries/getPageTitlesAndBlockUidsReferencingPage.ts +18 -0
  135. package/src/queries/getPageTitlesAndUidsDirectlyReferencingPage.ts +18 -0
  136. package/src/queries/getPageTitlesReferencingBlockUid.ts +12 -0
  137. package/src/queries/getPageTitlesStartingWithPrefix.ts +10 -0
  138. package/src/queries/getPageUidByBlockUid.ts +8 -0
  139. package/src/queries/getPageUidByPageTitle.ts +10 -0
  140. package/src/queries/getPageViewType.ts +13 -0
  141. package/src/queries/getParentTextByBlockUid.ts +8 -0
  142. package/src/queries/getParentTextByBlockUidAndTag.ts +14 -0
  143. package/src/queries/getParentUidByBlockUid.ts +10 -0
  144. package/src/queries/getParentUidsOfBlockUid.ts +10 -0
  145. package/src/queries/getSettingsByEmail.ts +10 -0
  146. package/src/queries/getShallowTreeByParentUid.ts +17 -0
  147. package/src/queries/getTextByBlockUid.ts +10 -0
  148. package/src/queries/index.ts +5 -0
  149. package/src/queries/isLiveBlock.ts +9 -0
  150. package/src/queries/isTagOnPage.ts +20 -0
  151. package/src/queries/normalizePageTitle.ts +4 -0
  152. package/src/scripts/index.ts +2 -0
  153. package/src/scripts/publishToRoamDepot.ts +163 -0
  154. package/src/testing/mockRoamEnvironment.ts +1493 -0
  155. package/src/types/index.ts +266 -0
  156. package/src/types/native.ts +495 -0
  157. package/src/types/query-builder.ts +10 -0
  158. package/src/types/smartblocks.ts +39 -0
  159. package/src/util/addInputSetting.ts +33 -0
  160. package/src/util/apiDelete.ts +5 -0
  161. package/src/util/apiGet.ts +5 -0
  162. package/src/util/apiPost.ts +5 -0
  163. package/src/util/apiPut.ts +5 -0
  164. package/src/util/createOverlayRender.ts +12 -0
  165. package/src/util/createTagRegex.ts +7 -0
  166. package/src/util/dispatchToRegistry.ts +11 -0
  167. package/src/util/env.ts +44 -0
  168. package/src/util/extensionApiContext.ts +17 -0
  169. package/src/util/extensionDeprecatedWarning.ts +58 -0
  170. package/src/util/extractRef.ts +8 -0
  171. package/src/util/extractTag.ts +15 -0
  172. package/src/util/focusMainWindowBlock.ts +13 -0
  173. package/src/util/getAuthorizationHeader.ts +11 -0
  174. package/src/util/getLocalStorageKey.ts +4 -0
  175. package/src/util/getOauth.ts +56 -0
  176. package/src/util/getOauthAccounts.ts +26 -0
  177. package/src/util/getRenderRoot.ts +17 -0
  178. package/src/util/getSettingIntFromTree.ts +18 -0
  179. package/src/util/getSettingValueFromTree.ts +27 -0
  180. package/src/util/getSettingValuesFromTree.ts +20 -0
  181. package/src/util/getSubTree.ts +33 -0
  182. package/src/util/getToken.ts +17 -0
  183. package/src/util/getTokenFromTree.ts +6 -0
  184. package/src/util/getWorkerClient.ts +55 -0
  185. package/src/util/handleBodyFetch.ts +38 -0
  186. package/src/util/handleFetch.ts +70 -0
  187. package/src/util/handleUrlFetch.ts +30 -0
  188. package/src/util/idToTitle.ts +8 -0
  189. package/{util/index.d.ts → src/util/index.ts} +24 -24
  190. package/src/util/isControl.ts +4 -0
  191. package/src/util/localStorageGet.ts +6 -0
  192. package/src/util/localStorageRemove.ts +6 -0
  193. package/src/util/localStorageSet.ts +6 -0
  194. package/src/util/registerExperimentalMode.ts +76 -0
  195. package/src/util/registerSmartBlocksCommand.ts +23 -0
  196. package/src/util/removeFromRegistry.ts +11 -0
  197. package/src/util/renderOverlay.ts +69 -0
  198. package/src/util/renderWithUnmount.ts +50 -0
  199. package/src/util/runExtension.ts +206 -0
  200. package/src/util/setInputSetting.ts +46 -0
  201. package/src/util/setInputSettings.ts +37 -0
  202. package/src/util/stripUid.ts +10 -0
  203. package/src/util/toConfigPageName.ts +3 -0
  204. package/src/util/toFlexRegex.ts +7 -0
  205. package/src/writes/clearBlockById.ts +17 -0
  206. package/src/writes/clearBlockByUid.ts +16 -0
  207. package/src/writes/createBlock.ts +50 -0
  208. package/src/writes/createPage.ts +30 -0
  209. package/src/writes/deleteBlock.ts +9 -0
  210. package/{writes/index.d.ts → src/writes/index.ts} +8 -8
  211. package/src/writes/openBlockInSidebar.ts +13 -0
  212. package/src/writes/submitActions.ts +54 -0
  213. package/src/writes/updateActiveBlock.ts +17 -0
  214. package/src/writes/updateBlock.ts +33 -0
  215. package/tests/backend.test.tsx +28 -0
  216. package/tests/date.test.ts +26 -0
  217. package/tests/dom.test.tsx +10 -0
  218. package/tests/index.test.tsx +25 -0
  219. package/tests/marked.test.ts +474 -0
  220. package/tests/util/createTagRegex.test.ts +63 -0
  221. package/tests/util/extractTag.test.ts +17 -0
  222. package/tests/util/toFlexRegex.test.ts +7 -0
  223. package/tsconfig.json +26 -0
  224. package/components/AutocompleteInput.d.ts +0 -28
  225. package/components/AutocompleteInput.js +0 -121
  226. package/components/AutocompleteInput.js.map +0 -1
  227. package/components/BlockErrorBoundary.d.ts +0 -15
  228. package/components/BlockErrorBoundary.js +0 -28
  229. package/components/BlockErrorBoundary.js.map +0 -1
  230. package/components/BlockInput.d.ts +0 -13
  231. package/components/BlockInput.js +0 -56
  232. package/components/BlockInput.js.map +0 -1
  233. package/components/ComponentContainer.d.ts +0 -10
  234. package/components/ComponentContainer.js +0 -38
  235. package/components/ComponentContainer.js.map +0 -1
  236. package/components/ConfigPage.d.ts +0 -35
  237. package/components/ConfigPage.js +0 -160
  238. package/components/ConfigPage.js.map +0 -1
  239. package/components/ConfigPanels/BlockPanel.d.ts +0 -3
  240. package/components/ConfigPanels/BlockPanel.js +0 -43
  241. package/components/ConfigPanels/BlockPanel.js.map +0 -1
  242. package/components/ConfigPanels/BlocksPanel.d.ts +0 -3
  243. package/components/ConfigPanels/BlocksPanel.js +0 -69
  244. package/components/ConfigPanels/BlocksPanel.js.map +0 -1
  245. package/components/ConfigPanels/CustomPanel.d.ts +0 -3
  246. package/components/ConfigPanels/CustomPanel.js +0 -25
  247. package/components/ConfigPanels/CustomPanel.js.map +0 -1
  248. package/components/ConfigPanels/FlagPanel.d.ts +0 -3
  249. package/components/ConfigPanels/FlagPanel.js +0 -32
  250. package/components/ConfigPanels/FlagPanel.js.map +0 -1
  251. package/components/ConfigPanels/MultiChildPanel.d.ts +0 -9
  252. package/components/ConfigPanels/MultiChildPanel.js +0 -59
  253. package/components/ConfigPanels/MultiChildPanel.js.map +0 -1
  254. package/components/ConfigPanels/MultiTextPanel.d.ts +0 -3
  255. package/components/ConfigPanels/MultiTextPanel.js +0 -15
  256. package/components/ConfigPanels/MultiTextPanel.js.map +0 -1
  257. package/components/ConfigPanels/NumberPanel.d.ts +0 -3
  258. package/components/ConfigPanels/NumberPanel.js +0 -26
  259. package/components/ConfigPanels/NumberPanel.js.map +0 -1
  260. package/components/ConfigPanels/OauthPanel.d.ts +0 -3
  261. package/components/ConfigPanels/OauthPanel.js +0 -82
  262. package/components/ConfigPanels/OauthPanel.js.map +0 -1
  263. package/components/ConfigPanels/PagesPanel.d.ts +0 -3
  264. package/components/ConfigPanels/PagesPanel.js +0 -12
  265. package/components/ConfigPanels/PagesPanel.js.map +0 -1
  266. package/components/ConfigPanels/SelectPanel.d.ts +0 -3
  267. package/components/ConfigPanels/SelectPanel.js +0 -28
  268. package/components/ConfigPanels/SelectPanel.js.map +0 -1
  269. package/components/ConfigPanels/TextPanel.d.ts +0 -3
  270. package/components/ConfigPanels/TextPanel.js +0 -29
  271. package/components/ConfigPanels/TextPanel.js.map +0 -1
  272. package/components/ConfigPanels/TimePanel.d.ts +0 -3
  273. package/components/ConfigPanels/TimePanel.js +0 -35
  274. package/components/ConfigPanels/TimePanel.js.map +0 -1
  275. package/components/ConfigPanels/getBrandColors.d.ts +0 -7
  276. package/components/ConfigPanels/getBrandColors.js +0 -29
  277. package/components/ConfigPanels/getBrandColors.js.map +0 -1
  278. package/components/ConfigPanels/types.d.ts +0 -84
  279. package/components/ConfigPanels/types.js +0 -3
  280. package/components/ConfigPanels/types.js.map +0 -1
  281. package/components/ConfigPanels/useSingleChildValue.d.ts +0 -13
  282. package/components/ConfigPanels/useSingleChildValue.js +0 -44
  283. package/components/ConfigPanels/useSingleChildValue.js.map +0 -1
  284. package/components/CursorMenu.d.ts +0 -21
  285. package/components/CursorMenu.js +0 -182
  286. package/components/CursorMenu.js.map +0 -1
  287. package/components/Description.d.ts +0 -5
  288. package/components/Description.js +0 -17
  289. package/components/Description.js.map +0 -1
  290. package/components/ExtensionApiContext.d.ts +0 -31
  291. package/components/ExtensionApiContext.js +0 -17
  292. package/components/ExtensionApiContext.js.map +0 -1
  293. package/components/ExternalLogin.d.ts +0 -18
  294. package/components/ExternalLogin.js +0 -142
  295. package/components/ExternalLogin.js.map +0 -1
  296. package/components/Filter.d.ts +0 -15
  297. package/components/Filter.js +0 -143
  298. package/components/Filter.js.map +0 -1
  299. package/components/FormDialog.d.ts +0 -55
  300. package/components/FormDialog.js +0 -224
  301. package/components/FormDialog.js.map +0 -1
  302. package/components/Loading.d.ts +0 -4
  303. package/components/Loading.js +0 -36
  304. package/components/Loading.js.map +0 -1
  305. package/components/MenuItemSelect.d.ts +0 -17
  306. package/components/MenuItemSelect.js +0 -24
  307. package/components/MenuItemSelect.js.map +0 -1
  308. package/components/OauthPanel.d.ts +0 -7
  309. package/components/OauthPanel.js +0 -31
  310. package/components/OauthPanel.js.map +0 -1
  311. package/components/OauthSelect.d.ts +0 -5
  312. package/components/OauthSelect.js +0 -26
  313. package/components/OauthSelect.js.map +0 -1
  314. package/components/PageInput.d.ts +0 -6
  315. package/components/PageInput.js +0 -14
  316. package/components/PageInput.js.map +0 -1
  317. package/components/PageLink.d.ts +0 -6
  318. package/components/PageLink.js +0 -32
  319. package/components/PageLink.js.map +0 -1
  320. package/components/ProgressDialog.d.ts +0 -11
  321. package/components/ProgressDialog.js +0 -61
  322. package/components/ProgressDialog.js.map +0 -1
  323. package/components/SimpleAlert.d.ts +0 -15
  324. package/components/SimpleAlert.js +0 -48
  325. package/components/SimpleAlert.js.map +0 -1
  326. package/components/Toast.d.ts +0 -15
  327. package/components/Toast.js +0 -51
  328. package/components/Toast.js.map +0 -1
  329. package/components/index.d.ts +0 -0
  330. package/components/index.js +0 -5
  331. package/components/index.js.map +0 -1
  332. package/components.d.ts +0 -5
  333. package/components.js +0 -171
  334. package/components.js.map +0 -1
  335. package/date/constants.d.ts +0 -3
  336. package/date/constants.js +0 -20
  337. package/date/constants.js.map +0 -1
  338. package/date/index.js +0 -10
  339. package/date/index.js.map +0 -1
  340. package/date/parseNlpDate.d.ts +0 -5
  341. package/date/parseNlpDate.js +0 -227
  342. package/date/parseNlpDate.js.map +0 -1
  343. package/date/parseRoamDateUid.d.ts +0 -2
  344. package/date/parseRoamDateUid.js +0 -8
  345. package/date/parseRoamDateUid.js.map +0 -1
  346. package/dom/addBlockCommand.d.ts +0 -5
  347. package/dom/addBlockCommand.js +0 -54
  348. package/dom/addBlockCommand.js.map +0 -1
  349. package/dom/addKeyboardTriggers.d.ts +0 -11
  350. package/dom/addKeyboardTriggers.js +0 -39
  351. package/dom/addKeyboardTriggers.js.map +0 -1
  352. package/dom/addOldRoamJSDependency.d.ts +0 -2
  353. package/dom/addOldRoamJSDependency.js +0 -11
  354. package/dom/addOldRoamJSDependency.js.map +0 -1
  355. package/dom/addRoamJSDependency.d.ts +0 -2
  356. package/dom/addRoamJSDependency.js +0 -9
  357. package/dom/addRoamJSDependency.js.map +0 -1
  358. package/dom/addScriptAsDependency.d.ts +0 -6
  359. package/dom/addScriptAsDependency.js +0 -17
  360. package/dom/addScriptAsDependency.js.map +0 -1
  361. package/dom/addStyle.d.ts +0 -2
  362. package/dom/addStyle.js +0 -15
  363. package/dom/addStyle.js.map +0 -1
  364. package/dom/constants.d.ts +0 -1
  365. package/dom/constants.js +0 -5
  366. package/dom/constants.js.map +0 -1
  367. package/dom/createBlockObserver.d.ts +0 -7
  368. package/dom/createBlockObserver.js +0 -44
  369. package/dom/createBlockObserver.js.map +0 -1
  370. package/dom/createButtonObserver.d.ts +0 -6
  371. package/dom/createButtonObserver.js +0 -22
  372. package/dom/createButtonObserver.js.map +0 -1
  373. package/dom/createDivObserver.d.ts +0 -2
  374. package/dom/createDivObserver.js +0 -14
  375. package/dom/createDivObserver.js.map +0 -1
  376. package/dom/createHTMLObserver.d.ts +0 -8
  377. package/dom/createHTMLObserver.js +0 -25
  378. package/dom/createHTMLObserver.js.map +0 -1
  379. package/dom/createHashtagObserver.d.ts +0 -5
  380. package/dom/createHashtagObserver.js +0 -17
  381. package/dom/createHashtagObserver.js.map +0 -1
  382. package/dom/createIconButton.d.ts +0 -2
  383. package/dom/createIconButton.js +0 -13
  384. package/dom/createIconButton.js.map +0 -1
  385. package/dom/createObserver.d.ts +0 -2
  386. package/dom/createObserver.js +0 -10
  387. package/dom/createObserver.js.map +0 -1
  388. package/dom/createOverlayObserver.d.ts +0 -2
  389. package/dom/createOverlayObserver.js +0 -7
  390. package/dom/createOverlayObserver.js.map +0 -1
  391. package/dom/createPageObserver.d.ts +0 -2
  392. package/dom/createPageObserver.js +0 -35
  393. package/dom/createPageObserver.js.map +0 -1
  394. package/dom/createPageTitleObserver.d.ts +0 -6
  395. package/dom/createPageTitleObserver.js +0 -32
  396. package/dom/createPageTitleObserver.js.map +0 -1
  397. package/dom/elToTitle.d.ts +0 -2
  398. package/dom/elToTitle.js +0 -23
  399. package/dom/elToTitle.js.map +0 -1
  400. package/dom/genericError.d.ts +0 -3
  401. package/dom/genericError.js +0 -12
  402. package/dom/genericError.js.map +0 -1
  403. package/dom/getActiveUids.d.ts +0 -3
  404. package/dom/getActiveUids.js +0 -7
  405. package/dom/getActiveUids.js.map +0 -1
  406. package/dom/getBlockUidFromTarget.d.ts +0 -2
  407. package/dom/getBlockUidFromTarget.js +0 -34
  408. package/dom/getBlockUidFromTarget.js.map +0 -1
  409. package/dom/getCurrentPageUid.d.ts +0 -2
  410. package/dom/getCurrentPageUid.js +0 -9
  411. package/dom/getCurrentPageUid.js.map +0 -1
  412. package/dom/getDomRefs.d.ts +0 -2
  413. package/dom/getDomRefs.js +0 -13
  414. package/dom/getDomRefs.js.map +0 -1
  415. package/dom/getDropUidOffset.d.ts +0 -5
  416. package/dom/getDropUidOffset.js +0 -28
  417. package/dom/getDropUidOffset.js.map +0 -1
  418. package/dom/getMutatedNodes.d.ts +0 -7
  419. package/dom/getMutatedNodes.js +0 -12
  420. package/dom/getMutatedNodes.js.map +0 -1
  421. package/dom/getPageTitleByHtmlElement.d.ts +0 -2
  422. package/dom/getPageTitleByHtmlElement.js +0 -13
  423. package/dom/getPageTitleByHtmlElement.js.map +0 -1
  424. package/dom/getPageTitleValueByHtmlElement.d.ts +0 -2
  425. package/dom/getPageTitleValueByHtmlElement.js +0 -10
  426. package/dom/getPageTitleValueByHtmlElement.js.map +0 -1
  427. package/dom/getReferenceBlockUid.d.ts +0 -2
  428. package/dom/getReferenceBlockUid.js +0 -19
  429. package/dom/getReferenceBlockUid.js.map +0 -1
  430. package/dom/getRoamUrl.d.ts +0 -2
  431. package/dom/getRoamUrl.js +0 -5
  432. package/dom/getRoamUrl.js.map +0 -1
  433. package/dom/getRoamUrlByPage.d.ts +0 -2
  434. package/dom/getRoamUrlByPage.js +0 -11
  435. package/dom/getRoamUrlByPage.js.map +0 -1
  436. package/dom/getUids.d.ts +0 -3
  437. package/dom/getUids.js +0 -9
  438. package/dom/getUids.js.map +0 -1
  439. package/dom/getUidsFromButton.d.ts +0 -3
  440. package/dom/getUidsFromButton.js +0 -9
  441. package/dom/getUidsFromButton.js.map +0 -1
  442. package/dom/getUidsFromId.d.ts +0 -5
  443. package/dom/getUidsFromId.js +0 -16
  444. package/dom/getUidsFromId.js.map +0 -1
  445. package/dom/index.js +0 -64
  446. package/dom/index.js.map +0 -1
  447. package/dom/parseRoamBlocksToHtml.d.ts +0 -11
  448. package/dom/parseRoamBlocksToHtml.js +0 -80
  449. package/dom/parseRoamBlocksToHtml.js.map +0 -1
  450. package/dom/resolveRefs.d.ts +0 -2
  451. package/dom/resolveRefs.js +0 -25
  452. package/dom/resolveRefs.js.map +0 -1
  453. package/events/index.js +0 -9
  454. package/events/index.js.map +0 -1
  455. package/events/watchOnce.d.ts +0 -3
  456. package/events/watchOnce.js +0 -13
  457. package/events/watchOnce.js.map +0 -1
  458. package/hooks/index.js +0 -11
  459. package/hooks/index.js.map +0 -1
  460. package/hooks/useArrowKeyDown.d.ts +0 -10
  461. package/hooks/useArrowKeyDown.js +0 -55
  462. package/hooks/useArrowKeyDown.js.map +0 -1
  463. package/hooks/useSubTree.d.ts +0 -3
  464. package/hooks/useSubTree.js +0 -12
  465. package/hooks/useSubTree.js.map +0 -1
  466. package/marked/index.d.ts +0 -25
  467. package/marked/index.js +0 -568
  468. package/marked/index.js.map +0 -1
  469. package/queries/compileDatalog.d.ts +0 -3
  470. package/queries/compileDatalog.js +0 -64
  471. package/queries/compileDatalog.js.map +0 -1
  472. package/queries/getAllBlockUids.d.ts +0 -2
  473. package/queries/getAllBlockUids.js +0 -7
  474. package/queries/getAllBlockUids.js.map +0 -1
  475. package/queries/getAllBlockUidsAndTexts.d.ts +0 -5
  476. package/queries/getAllBlockUidsAndTexts.js +0 -7
  477. package/queries/getAllBlockUidsAndTexts.js.map +0 -1
  478. package/queries/getAllPageNames.d.ts +0 -2
  479. package/queries/getAllPageNames.js +0 -7
  480. package/queries/getAllPageNames.js.map +0 -1
  481. package/queries/getAttributeValueByBlockAndName.d.ts +0 -5
  482. package/queries/getAttributeValueByBlockAndName.js +0 -12
  483. package/queries/getAttributeValueByBlockAndName.js.map +0 -1
  484. package/queries/getBasicTreeByParentUid.d.ts +0 -3
  485. package/queries/getBasicTreeByParentUid.js +0 -14
  486. package/queries/getBasicTreeByParentUid.js.map +0 -1
  487. package/queries/getBlockUidAndTextIncludingText.d.ts +0 -5
  488. package/queries/getBlockUidAndTextIncludingText.js +0 -8
  489. package/queries/getBlockUidAndTextIncludingText.js.map +0 -1
  490. package/queries/getBlockUidByTextOnPage.d.ts +0 -5
  491. package/queries/getBlockUidByTextOnPage.js +0 -8
  492. package/queries/getBlockUidByTextOnPage.js.map +0 -1
  493. package/queries/getBlockUidsAndTextsReferencingPage.d.ts +0 -5
  494. package/queries/getBlockUidsAndTextsReferencingPage.js +0 -10
  495. package/queries/getBlockUidsAndTextsReferencingPage.js.map +0 -1
  496. package/queries/getBlockUidsByPageTitle.d.ts +0 -2
  497. package/queries/getBlockUidsByPageTitle.js +0 -9
  498. package/queries/getBlockUidsByPageTitle.js.map +0 -1
  499. package/queries/getBlockUidsReferencingBlock.d.ts +0 -2
  500. package/queries/getBlockUidsReferencingBlock.js +0 -5
  501. package/queries/getBlockUidsReferencingBlock.js.map +0 -1
  502. package/queries/getBlockUidsReferencingPage.d.ts +0 -2
  503. package/queries/getBlockUidsReferencingPage.js +0 -7
  504. package/queries/getBlockUidsReferencingPage.js.map +0 -1
  505. package/queries/getBlockUidsWithParentUid.d.ts +0 -2
  506. package/queries/getBlockUidsWithParentUid.js +0 -7
  507. package/queries/getBlockUidsWithParentUid.js.map +0 -1
  508. package/queries/getChildrenLengthByPageUid.d.ts +0 -2
  509. package/queries/getChildrenLengthByPageUid.js +0 -9
  510. package/queries/getChildrenLengthByPageUid.js.map +0 -1
  511. package/queries/getChildrenLengthByParentUid.d.ts +0 -2
  512. package/queries/getChildrenLengthByParentUid.js +0 -8
  513. package/queries/getChildrenLengthByParentUid.js.map +0 -1
  514. package/queries/getCreateTimeByBlockUid.d.ts +0 -2
  515. package/queries/getCreateTimeByBlockUid.js +0 -8
  516. package/queries/getCreateTimeByBlockUid.js.map +0 -1
  517. package/queries/getCurrentUser.d.ts +0 -2
  518. package/queries/getCurrentUser.js +0 -12
  519. package/queries/getCurrentUser.js.map +0 -1
  520. package/queries/getCurrentUserDisplayName.d.ts +0 -2
  521. package/queries/getCurrentUserDisplayName.js +0 -11
  522. package/queries/getCurrentUserDisplayName.js.map +0 -1
  523. package/queries/getCurrentUserEmail.d.ts +0 -2
  524. package/queries/getCurrentUserEmail.js +0 -14
  525. package/queries/getCurrentUserEmail.js.map +0 -1
  526. package/queries/getCurrentUserUid.d.ts +0 -2
  527. package/queries/getCurrentUserUid.js +0 -14
  528. package/queries/getCurrentUserUid.js.map +0 -1
  529. package/queries/getDisplayNameByEmail.d.ts +0 -2
  530. package/queries/getDisplayNameByEmail.js +0 -8
  531. package/queries/getDisplayNameByEmail.js.map +0 -1
  532. package/queries/getDisplayNameByUid.d.ts +0 -2
  533. package/queries/getDisplayNameByUid.js +0 -8
  534. package/queries/getDisplayNameByUid.js.map +0 -1
  535. package/queries/getEditTimeByBlockUid.d.ts +0 -2
  536. package/queries/getEditTimeByBlockUid.js +0 -8
  537. package/queries/getEditTimeByBlockUid.js.map +0 -1
  538. package/queries/getEditedUserEmailByBlockUid.d.ts +0 -2
  539. package/queries/getEditedUserEmailByBlockUid.js +0 -8
  540. package/queries/getEditedUserEmailByBlockUid.js.map +0 -1
  541. package/queries/getFirstChildTextByBlockUid.d.ts +0 -2
  542. package/queries/getFirstChildTextByBlockUid.js +0 -8
  543. package/queries/getFirstChildTextByBlockUid.js.map +0 -1
  544. package/queries/getFirstChildUidByBlockUid.d.ts +0 -2
  545. package/queries/getFirstChildUidByBlockUid.js +0 -7
  546. package/queries/getFirstChildUidByBlockUid.js.map +0 -1
  547. package/queries/getFullTreeByParentUid.d.ts +0 -3
  548. package/queries/getFullTreeByParentUid.js +0 -52
  549. package/queries/getFullTreeByParentUid.js.map +0 -1
  550. package/queries/getLinkedPageTitlesUnderUid.d.ts +0 -2
  551. package/queries/getLinkedPageTitlesUnderUid.js +0 -7
  552. package/queries/getLinkedPageTitlesUnderUid.js.map +0 -1
  553. package/queries/getNthChildUidByBlockUid.d.ts +0 -5
  554. package/queries/getNthChildUidByBlockUid.js +0 -8
  555. package/queries/getNthChildUidByBlockUid.js.map +0 -1
  556. package/queries/getOrderByBlockUid.d.ts +0 -2
  557. package/queries/getOrderByBlockUid.js +0 -8
  558. package/queries/getOrderByBlockUid.js.map +0 -1
  559. package/queries/getPageTitleByBlockUid.d.ts +0 -2
  560. package/queries/getPageTitleByBlockUid.js +0 -8
  561. package/queries/getPageTitleByBlockUid.js.map +0 -1
  562. package/queries/getPageTitleByPageUid.d.ts +0 -2
  563. package/queries/getPageTitleByPageUid.js +0 -13
  564. package/queries/getPageTitleByPageUid.js.map +0 -1
  565. package/queries/getPageTitleReferencesByPageTitle.d.ts +0 -2
  566. package/queries/getPageTitleReferencesByPageTitle.js +0 -7
  567. package/queries/getPageTitleReferencesByPageTitle.js.map +0 -1
  568. package/queries/getPageTitlesAndBlockUidsReferencingPage.d.ts +0 -5
  569. package/queries/getPageTitlesAndBlockUidsReferencingPage.js +0 -10
  570. package/queries/getPageTitlesAndBlockUidsReferencingPage.js.map +0 -1
  571. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.d.ts +0 -5
  572. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.js +0 -10
  573. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.js.map +0 -1
  574. package/queries/getPageTitlesReferencingBlockUid.d.ts +0 -2
  575. package/queries/getPageTitlesReferencingBlockUid.js +0 -5
  576. package/queries/getPageTitlesReferencingBlockUid.js.map +0 -1
  577. package/queries/getPageTitlesStartingWithPrefix.d.ts +0 -2
  578. package/queries/getPageTitlesStartingWithPrefix.js +0 -7
  579. package/queries/getPageTitlesStartingWithPrefix.js.map +0 -1
  580. package/queries/getPageUidByBlockUid.d.ts +0 -2
  581. package/queries/getPageUidByBlockUid.js +0 -8
  582. package/queries/getPageUidByBlockUid.js.map +0 -1
  583. package/queries/getPageUidByPageTitle.d.ts +0 -2
  584. package/queries/getPageUidByPageTitle.js +0 -10
  585. package/queries/getPageUidByPageTitle.js.map +0 -1
  586. package/queries/getPageViewType.d.ts +0 -3
  587. package/queries/getPageViewType.js +0 -10
  588. package/queries/getPageViewType.js.map +0 -1
  589. package/queries/getParentTextByBlockUid.d.ts +0 -2
  590. package/queries/getParentTextByBlockUid.js +0 -8
  591. package/queries/getParentTextByBlockUid.js.map +0 -1
  592. package/queries/getParentTextByBlockUidAndTag.d.ts +0 -5
  593. package/queries/getParentTextByBlockUidAndTag.js +0 -8
  594. package/queries/getParentTextByBlockUidAndTag.js.map +0 -1
  595. package/queries/getParentUidByBlockUid.d.ts +0 -2
  596. package/queries/getParentUidByBlockUid.js +0 -8
  597. package/queries/getParentUidByBlockUid.js.map +0 -1
  598. package/queries/getParentUidsOfBlockUid.d.ts +0 -2
  599. package/queries/getParentUidsOfBlockUid.js +0 -5
  600. package/queries/getParentUidsOfBlockUid.js.map +0 -1
  601. package/queries/getSettingsByEmail.d.ts +0 -3
  602. package/queries/getSettingsByEmail.js +0 -8
  603. package/queries/getSettingsByEmail.js.map +0 -1
  604. package/queries/getShallowTreeByParentUid.d.ts +0 -5
  605. package/queries/getShallowTreeByParentUid.js +0 -10
  606. package/queries/getShallowTreeByParentUid.js.map +0 -1
  607. package/queries/getTextByBlockUid.d.ts +0 -2
  608. package/queries/getTextByBlockUid.js +0 -10
  609. package/queries/getTextByBlockUid.js.map +0 -1
  610. package/queries/index.d.ts +0 -0
  611. package/queries/index.js +0 -5
  612. package/queries/index.js.map +0 -1
  613. package/queries/isLiveBlock.d.ts +0 -2
  614. package/queries/isLiveBlock.js +0 -5
  615. package/queries/isLiveBlock.js.map +0 -1
  616. package/queries/isTagOnPage.d.ts +0 -5
  617. package/queries/isTagOnPage.js +0 -10
  618. package/queries/isTagOnPage.js.map +0 -1
  619. package/queries/normalizePageTitle.d.ts +0 -2
  620. package/queries/normalizePageTitle.js +0 -5
  621. package/queries/normalizePageTitle.js.map +0 -1
  622. package/scripts/index.d.ts +0 -1
  623. package/scripts/index.js +0 -27
  624. package/scripts/index.js.map +0 -1
  625. package/scripts/publishToRoamDepot.d.ts +0 -7
  626. package/scripts/publishToRoamDepot.js +0 -114
  627. package/scripts/publishToRoamDepot.js.map +0 -1
  628. package/testing/mockRoamEnvironment.d.ts +0 -2
  629. package/testing/mockRoamEnvironment.js +0 -1254
  630. package/testing/mockRoamEnvironment.js.map +0 -1
  631. package/types/index.d.ts +0 -250
  632. package/types/index.js +0 -5
  633. package/types/index.js.map +0 -1
  634. package/types/native.d.ts +0 -402
  635. package/types/native.js +0 -5
  636. package/types/native.js.map +0 -1
  637. package/types/query-builder.d.ts +0 -10
  638. package/types/query-builder.js +0 -3
  639. package/types/query-builder.js.map +0 -1
  640. package/types/smartblocks.d.ts +0 -35
  641. package/types/smartblocks.js +0 -3
  642. package/types/smartblocks.js.map +0 -1
  643. package/util/addInputSetting.d.ts +0 -7
  644. package/util/addInputSetting.js +0 -26
  645. package/util/addInputSetting.js.map +0 -1
  646. package/util/apiDelete.d.ts +0 -2
  647. package/util/apiDelete.js +0 -7
  648. package/util/apiDelete.js.map +0 -1
  649. package/util/apiGet.d.ts +0 -2
  650. package/util/apiGet.js +0 -7
  651. package/util/apiGet.js.map +0 -1
  652. package/util/apiPost.d.ts +0 -2
  653. package/util/apiPost.js +0 -7
  654. package/util/apiPost.js.map +0 -1
  655. package/util/apiPut.d.ts +0 -2
  656. package/util/apiPut.js +0 -7
  657. package/util/apiPut.js.map +0 -1
  658. package/util/createOverlayRender.d.ts +0 -4
  659. package/util/createOverlayRender.js +0 -7
  660. package/util/createOverlayRender.js.map +0 -1
  661. package/util/createTagRegex.d.ts +0 -2
  662. package/util/createTagRegex.js +0 -8
  663. package/util/createTagRegex.js.map +0 -1
  664. package/util/dispatchToRegistry.d.ts +0 -3
  665. package/util/dispatchToRegistry.js +0 -8
  666. package/util/dispatchToRegistry.js.map +0 -1
  667. package/util/env.d.ts +0 -4
  668. package/util/env.js +0 -48
  669. package/util/env.js.map +0 -1
  670. package/util/extensionApiContext.d.ts +0 -29
  671. package/util/extensionApiContext.js +0 -18
  672. package/util/extensionApiContext.js.map +0 -1
  673. package/util/extensionDeprecatedWarning.d.ts +0 -5
  674. package/util/extensionDeprecatedWarning.js +0 -40
  675. package/util/extensionDeprecatedWarning.js.map +0 -1
  676. package/util/extractRef.d.ts +0 -2
  677. package/util/extractRef.js +0 -9
  678. package/util/extractRef.js.map +0 -1
  679. package/util/extractTag.d.ts +0 -2
  680. package/util/extractTag.js +0 -16
  681. package/util/extractTag.js.map +0 -1
  682. package/util/focusMainWindowBlock.d.ts +0 -2
  683. package/util/focusMainWindowBlock.js +0 -13
  684. package/util/focusMainWindowBlock.js.map +0 -1
  685. package/util/getAuthorizationHeader.d.ts +0 -2
  686. package/util/getAuthorizationHeader.js +0 -13
  687. package/util/getAuthorizationHeader.js.map +0 -1
  688. package/util/getLocalStorageKey.d.ts +0 -2
  689. package/util/getLocalStorageKey.js +0 -5
  690. package/util/getLocalStorageKey.js.map +0 -1
  691. package/util/getOauth.d.ts +0 -2
  692. package/util/getOauth.js +0 -53
  693. package/util/getOauth.js.map +0 -1
  694. package/util/getOauthAccounts.d.ts +0 -2
  695. package/util/getOauthAccounts.js +0 -23
  696. package/util/getOauthAccounts.js.map +0 -1
  697. package/util/getRenderRoot.d.ts +0 -2
  698. package/util/getRenderRoot.js +0 -19
  699. package/util/getRenderRoot.js.map +0 -1
  700. package/util/getSettingIntFromTree.d.ts +0 -7
  701. package/util/getSettingIntFromTree.js +0 -12
  702. package/util/getSettingIntFromTree.js.map +0 -1
  703. package/util/getSettingValueFromTree.d.ts +0 -8
  704. package/util/getSettingValueFromTree.js +0 -15
  705. package/util/getSettingValueFromTree.js.map +0 -1
  706. package/util/getSettingValuesFromTree.d.ts +0 -7
  707. package/util/getSettingValuesFromTree.js +0 -13
  708. package/util/getSettingValuesFromTree.js.map +0 -1
  709. package/util/getSubTree.d.ts +0 -8
  710. package/util/getSubTree.js +0 -20
  711. package/util/getSubTree.js.map +0 -1
  712. package/util/getToken.d.ts +0 -2
  713. package/util/getToken.js +0 -11
  714. package/util/getToken.js.map +0 -1
  715. package/util/getTokenFromTree.d.ts +0 -3
  716. package/util/getTokenFromTree.js +0 -5
  717. package/util/getTokenFromTree.js.map +0 -1
  718. package/util/getWorkerClient.d.ts +0 -12
  719. package/util/getWorkerClient.js +0 -42
  720. package/util/getWorkerClient.js.map +0 -1
  721. package/util/handleBodyFetch.d.ts +0 -3
  722. package/util/handleBodyFetch.js +0 -22
  723. package/util/handleBodyFetch.js.map +0 -1
  724. package/util/handleFetch.d.ts +0 -13
  725. package/util/handleFetch.js +0 -41
  726. package/util/handleFetch.js.map +0 -1
  727. package/util/handleUrlFetch.d.ts +0 -3
  728. package/util/handleUrlFetch.js +0 -20
  729. package/util/handleUrlFetch.js.map +0 -1
  730. package/util/idToTitle.d.ts +0 -2
  731. package/util/idToTitle.js +0 -9
  732. package/util/idToTitle.js.map +0 -1
  733. package/util/index.js +0 -55
  734. package/util/index.js.map +0 -1
  735. package/util/isControl.d.ts +0 -2
  736. package/util/isControl.js +0 -5
  737. package/util/isControl.js.map +0 -1
  738. package/util/localStorageGet.d.ts +0 -2
  739. package/util/localStorageGet.js +0 -9
  740. package/util/localStorageGet.js.map +0 -1
  741. package/util/localStorageRemove.d.ts +0 -2
  742. package/util/localStorageRemove.js +0 -7
  743. package/util/localStorageRemove.js.map +0 -1
  744. package/util/localStorageSet.d.ts +0 -2
  745. package/util/localStorageSet.js +0 -9
  746. package/util/localStorageSet.js.map +0 -1
  747. package/util/registerExperimentalMode.d.ts +0 -6
  748. package/util/registerExperimentalMode.js +0 -66
  749. package/util/registerExperimentalMode.js.map +0 -1
  750. package/util/registerSmartBlocksCommand.d.ts +0 -3
  751. package/util/registerSmartBlocksCommand.js +0 -24
  752. package/util/registerSmartBlocksCommand.js.map +0 -1
  753. package/util/removeFromRegistry.d.ts +0 -3
  754. package/util/removeFromRegistry.js +0 -8
  755. package/util/removeFromRegistry.js.map +0 -1
  756. package/util/renderOverlay.d.ts +0 -12
  757. package/util/renderOverlay.js +0 -49
  758. package/util/renderOverlay.js.map +0 -1
  759. package/util/renderWithUnmount.d.ts +0 -4
  760. package/util/renderWithUnmount.js +0 -45
  761. package/util/renderWithUnmount.js.map +0 -1
  762. package/util/runExtension.d.ts +0 -11
  763. package/util/runExtension.js +0 -175
  764. package/util/runExtension.js.map +0 -1
  765. package/util/setInputSetting.d.ts +0 -7
  766. package/util/setInputSetting.js +0 -38
  767. package/util/setInputSetting.js.map +0 -1
  768. package/util/setInputSettings.d.ts +0 -7
  769. package/util/setInputSettings.js +0 -29
  770. package/util/setInputSettings.js.map +0 -1
  771. package/util/stripUid.d.ts +0 -3
  772. package/util/stripUid.js +0 -11
  773. package/util/stripUid.js.map +0 -1
  774. package/util/toConfigPageName.d.ts +0 -2
  775. package/util/toConfigPageName.js +0 -5
  776. package/util/toConfigPageName.js.map +0 -1
  777. package/util/toFlexRegex.d.ts +0 -2
  778. package/util/toFlexRegex.js +0 -5
  779. package/util/toFlexRegex.js.map +0 -1
  780. package/writes/clearBlockById.d.ts +0 -2
  781. package/writes/clearBlockById.js +0 -18
  782. package/writes/clearBlockById.js.map +0 -1
  783. package/writes/clearBlockByUid.d.ts +0 -2
  784. package/writes/clearBlockByUid.js +0 -17
  785. package/writes/clearBlockByUid.js.map +0 -1
  786. package/writes/createBlock.d.ts +0 -8
  787. package/writes/createBlock.js +0 -29
  788. package/writes/createBlock.js.map +0 -1
  789. package/writes/createPage.d.ts +0 -7
  790. package/writes/createPage.js +0 -21
  791. package/writes/createPage.js.map +0 -1
  792. package/writes/deleteBlock.d.ts +0 -2
  793. package/writes/deleteBlock.js +0 -11
  794. package/writes/deleteBlock.js.map +0 -1
  795. package/writes/index.js +0 -23
  796. package/writes/index.js.map +0 -1
  797. package/writes/openBlockInSidebar.d.ts +0 -2
  798. package/writes/openBlockInSidebar.js +0 -14
  799. package/writes/openBlockInSidebar.js.map +0 -1
  800. package/writes/submitActions.d.ts +0 -8
  801. package/writes/submitActions.js +0 -37
  802. package/writes/submitActions.js.map +0 -1
  803. package/writes/updateActiveBlock.d.ts +0 -2
  804. package/writes/updateActiveBlock.js +0 -18
  805. package/writes/updateActiveBlock.js.map +0 -1
  806. package/writes/updateBlock.d.ts +0 -5
  807. package/writes/updateBlock.js +0 -24
  808. package/writes/updateBlock.js.map +0 -1
@@ -0,0 +1,39 @@
1
+ import getBlockUidsByPageTitle from "../queries/getBlockUidsByPageTitle";
2
+ import createObserver from "./createObserver";
3
+ import getMutatedNodes from "./getMutatedNodes";
4
+ import getUids from "./getUids";
5
+
6
+ const createPageObserver = (
7
+ name: string,
8
+ callback: (blockUid: string, added: boolean) => void
9
+ ): MutationObserver =>
10
+ createObserver((ms) => {
11
+ const addedNodes = getMutatedNodes({
12
+ ms,
13
+ nodeList: "addedNodes",
14
+ tag: "DIV",
15
+ className: "roam-block",
16
+ }).map((blockNode) => ({
17
+ blockUid: getUids(blockNode as HTMLDivElement).blockUid,
18
+ added: true,
19
+ }));
20
+ const removedNodes = getMutatedNodes({
21
+ ms,
22
+ nodeList: "removedNodes",
23
+ tag: "DIV",
24
+ className: "roam-block",
25
+ }).map((blockNode) => ({
26
+ blockUid: getUids(blockNode as HTMLDivElement).blockUid,
27
+ added: false,
28
+ }));
29
+ if (addedNodes.length || removedNodes.length) {
30
+ getBlockUidsByPageTitle(name).then((blockUids) => {
31
+ const blockUidSet = new Set(blockUids);
32
+ [...removedNodes, ...addedNodes]
33
+ .filter(({ blockUid }) => blockUidSet.has(blockUid))
34
+ .forEach(({ blockUid, added }) => callback(blockUid, added));
35
+ });
36
+ }
37
+ });
38
+
39
+ export default createPageObserver;
@@ -0,0 +1,44 @@
1
+ import getPageUidByPageTitle from "../queries/getPageUidByPageTitle";
2
+ import getRoamUrl from "./getRoamUrl";
3
+
4
+ const createPageTitleObserver = ({
5
+ title,
6
+ callback,
7
+ log = false,
8
+ }: {
9
+ title: string;
10
+ callback: (d: HTMLDivElement) => void;
11
+ log?: boolean;
12
+ }): (() => void) => {
13
+ const listener = (url: string) => {
14
+ const d = document.getElementsByClassName(
15
+ "roam-article"
16
+ )[0] as HTMLDivElement;
17
+ if (d) {
18
+ getPageUidByPageTitle(title).then((uid) => {
19
+ const attribute = `data-roamjs-${uid}`;
20
+ if ((uid && url === getRoamUrl(uid)) || (log && url === getRoamUrl())) {
21
+ // React's rerender crushes the old article/heading
22
+ setTimeout(() => {
23
+ if (!d.hasAttribute(attribute)) {
24
+ d.setAttribute(attribute, "true");
25
+ callback(
26
+ document.getElementsByClassName(
27
+ "roam-article"
28
+ )[0] as HTMLDivElement
29
+ );
30
+ }
31
+ }, 1);
32
+ } else {
33
+ d.removeAttribute(attribute);
34
+ }
35
+ });
36
+ }
37
+ };
38
+ const wrapped = (e: HashChangeEvent) => listener(e.newURL);
39
+ window.addEventListener("hashchange", wrapped);
40
+ listener(window.location.href);
41
+ return () => window.removeEventListener("hashchange", wrapped);
42
+ };
43
+
44
+ export default createPageTitleObserver;
@@ -0,0 +1,21 @@
1
+ const elToTitle = (e?: Node): string => {
2
+ if (!e) {
3
+ return "";
4
+ } else if (e.nodeName === "#text") {
5
+ return e.nodeValue || "";
6
+ } else if (
7
+ e.nodeName === "SPAN" &&
8
+ (e as HTMLSpanElement).classList.contains("rm-page-ref__brackets")
9
+ ) {
10
+ return "";
11
+ } else if (
12
+ e.nodeName === "SPAN" &&
13
+ (e as HTMLSpanElement).classList.contains("rm-page-ref")
14
+ ) {
15
+ return `[[${Array.from(e.childNodes).map(elToTitle).join("")}]]`;
16
+ } else {
17
+ return Array.from(e.childNodes).map(elToTitle).join("");
18
+ }
19
+ };
20
+
21
+ export default elToTitle;
@@ -0,0 +1,13 @@
1
+ import type { RoamError } from "../types";
2
+ import updateActiveBlock from "../writes/updateActiveBlock";
3
+
4
+ const genericError = (e: Partial<Error & RoamError>): string => {
5
+ const message = e.message || e.raw || "Unknown Error Occurred";
6
+ const errMsg = `Error: ${
7
+ message.length > 50 ? `${message.substring(0, 50)}...` : message
8
+ }`;
9
+ updateActiveBlock(errMsg);
10
+ return errMsg;
11
+ };
12
+
13
+ export default genericError;
@@ -0,0 +1,6 @@
1
+ import getUids from "./getUids";
2
+
3
+ const getActiveUids = (): ReturnType<typeof getUids> =>
4
+ getUids(document.activeElement as HTMLTextAreaElement)
5
+
6
+ export default getActiveUids;
@@ -0,0 +1,39 @@
1
+ import getNthChildUidByBlockUid from "../queries/getNthChildUidByBlockUid";
2
+ import getReferenceBlockUid from "./getReferenceBlockUid";
3
+ import getUids from "./getUids";
4
+
5
+ const getBlockUidFromTarget = async (target: HTMLElement): Promise<string> => {
6
+ const ref = target.closest(".rm-block-ref") as HTMLSpanElement;
7
+ if (ref) {
8
+ return ref.getAttribute("data-uid") || "";
9
+ }
10
+
11
+ const customView = target.closest(".roamjs-block-view") as HTMLDivElement;
12
+ if (customView) {
13
+ return getUids(customView).blockUid;
14
+ }
15
+
16
+ const aliasTooltip = target.closest(".rm-alias-tooltip__content");
17
+ if (aliasTooltip) {
18
+ const aliasRef = document.querySelector(
19
+ ".bp3-popover-open .rm-alias--block"
20
+ ) as HTMLAnchorElement;
21
+ return getReferenceBlockUid(aliasRef, "rm-alias--block");
22
+ }
23
+
24
+ const { blockUid } = getUids(target.closest(".roam-block") as HTMLDivElement);
25
+ const kanbanTitle = target.closest(".kanban-title");
26
+ if (kanbanTitle) {
27
+ const container = kanbanTitle.closest(".kanban-column-container");
28
+ if (container) {
29
+ const column = kanbanTitle.closest(".kanban-column");
30
+ const order = Array.from(container.children).findIndex(
31
+ (d) => d === column
32
+ );
33
+ return await getNthChildUidByBlockUid({ blockUid, order });
34
+ }
35
+ }
36
+ return blockUid;
37
+ };
38
+
39
+ export default getBlockUidFromTarget;
@@ -0,0 +1,5 @@
1
+ const getCurrentPageUid = (): string =>
2
+ window.location.hash.match(/\/page\/(.*)$/)?.[1] ||
3
+ window.roamAlphaAPI.util.dateToPageUid(new Date());
4
+
5
+ export default getCurrentPageUid;
@@ -0,0 +1,15 @@
1
+ import getUids from "./getUids";
2
+
3
+ const getDomRefs = (blockUid: string): string[] => {
4
+ const currentlyEditingBlock = document.querySelector(
5
+ "textarea.rm-block-input"
6
+ ) as HTMLTextAreaElement;
7
+ if (getUids(currentlyEditingBlock).blockUid === blockUid) {
8
+ return (
9
+ currentlyEditingBlock.value.match(/\(\(([\w\d-]{9})\)\)/g) || []
10
+ ).map((s) => s.slice(2, -2));
11
+ }
12
+ return [];
13
+ };
14
+
15
+ export default getDomRefs;
@@ -0,0 +1,36 @@
1
+ import getPageUidByPageTitle from "../queries/getPageUidByPageTitle";
2
+ import getPageTitleByHtmlElement from "./getPageTitleByHtmlElement";
3
+ import getUids from "./getUids";
4
+
5
+ const getDropUidOffset = async (
6
+ d: HTMLDivElement
7
+ ): Promise<{ parentUid: string; offset: number }> => {
8
+ const separator = d.parentElement;
9
+ const childrenContainer = separator?.parentElement;
10
+ const children = Array.from(childrenContainer?.children || []);
11
+ const index = children.findIndex((c) => c === separator);
12
+ const offset = children.reduce(
13
+ (prev, cur, ind) =>
14
+ cur.classList.contains("roam-block-container") && ind < index
15
+ ? prev + 1
16
+ : prev,
17
+ 0
18
+ );
19
+ const parentBlock =
20
+ childrenContainer?.previousElementSibling?.getElementsByClassName(
21
+ "roam-block"
22
+ )?.[0] as HTMLDivElement;
23
+ const parentUid = parentBlock
24
+ ? getUids(parentBlock).blockUid
25
+ : childrenContainer
26
+ ? await getPageUidByPageTitle(
27
+ getPageTitleByHtmlElement(childrenContainer)?.textContent || ""
28
+ )
29
+ : "";
30
+ return {
31
+ parentUid,
32
+ offset,
33
+ };
34
+ };
35
+
36
+ export default getDropUidOffset;
@@ -0,0 +1,31 @@
1
+
2
+
3
+ const getMutatedNodes = ({
4
+ ms,
5
+ tag,
6
+ className,
7
+ nodeList,
8
+ }: {
9
+ ms: MutationRecord[];
10
+ tag: string;
11
+ className: string;
12
+ nodeList: "addedNodes" | "removedNodes";
13
+ }): Node[] => {
14
+ const blocks = ms.flatMap((m) =>
15
+ Array.from(m[nodeList]).filter(
16
+ (d: Node) =>
17
+ d.nodeName === tag &&
18
+ Array.from((d as HTMLElement).classList).includes(className)
19
+ )
20
+ );
21
+ const childBlocks = ms.flatMap((m) =>
22
+ Array.from(m[nodeList])
23
+ .filter((n) => n.hasChildNodes())
24
+ .flatMap((d) =>
25
+ Array.from((d as HTMLElement).getElementsByClassName(className))
26
+ )
27
+ );
28
+ return [...blocks, ...childBlocks];
29
+ }
30
+
31
+ export default getMutatedNodes;
@@ -0,0 +1,19 @@
1
+ const getPageTitleByHtmlElement = (e: Element): ChildNode | undefined => {
2
+ const container =
3
+ e.closest(".roam-log-page") ||
4
+ e.closest(".rm-sidebar-outline") ||
5
+ e.closest(".roam-article") ||
6
+ document;
7
+ const heading =
8
+ (container.getElementsByClassName(
9
+ "rm-title-display"
10
+ )[0] as HTMLHeadingElement) ||
11
+ (container.getElementsByClassName(
12
+ "rm-zoom-item-content"
13
+ )[0] as HTMLSpanElement);
14
+ return Array.from(heading.childNodes).find(
15
+ (n) => n.nodeName === "#text" || n.nodeName === "SPAN"
16
+ );
17
+ };
18
+
19
+ export default getPageTitleByHtmlElement;
@@ -0,0 +1,8 @@
1
+ import elToTitle from "./elToTitle";
2
+ import getPageTitleByHtmlElement from "./getPageTitleByHtmlElement";
3
+
4
+ const getPageTitleValueByHtmlElement = (e: Element): string => {
5
+ return elToTitle(getPageTitleByHtmlElement(e));
6
+ };
7
+
8
+ export default getPageTitleValueByHtmlElement;
@@ -0,0 +1,22 @@
1
+ import getBlockUidsReferencingBlock from "../queries/getBlockUidsReferencingBlock";
2
+ import getDomRefs from "./getDomRefs";
3
+ import getUids from "./getUids";
4
+
5
+ const getReferenceBlockUid = async (
6
+ e: HTMLElement,
7
+ className: "rm-block-ref" | "rm-alias--block"
8
+ ): Promise<string> => {
9
+ const parent = e.closest(".roam-block") as HTMLDivElement;
10
+ if (!parent) {
11
+ return "";
12
+ }
13
+ const { blockUid } = getUids(parent);
14
+ const childRefs = await getBlockUidsReferencingBlock(blockUid);
15
+ const refs = childRefs.length ? childRefs : getDomRefs(blockUid);
16
+ const index = Array.from(parent.getElementsByClassName(className)).findIndex(
17
+ (el) => el === e || el.contains(e)
18
+ );
19
+ return refs[index];
20
+ };
21
+
22
+ export default getReferenceBlockUid;
@@ -0,0 +1,6 @@
1
+ const getRoamUrl = (blockUid?: string): string =>
2
+ `${window.location.href.replace(/\/page\/.*$/, "")}${
3
+ blockUid ? `/page/${blockUid}` : ""
4
+ }`;
5
+
6
+ export default getRoamUrl;
@@ -0,0 +1,9 @@
1
+ import getPageUidByPageTitle from "../queries/getPageUidByPageTitle";
2
+ import getRoamUrl from "./getRoamUrl";
3
+
4
+ const getRoamUrlByPage = async (page: string): Promise<string> => {
5
+ const uid = await getPageUidByPageTitle(page);
6
+ return uid && getRoamUrl(uid);
7
+ };
8
+
9
+ export default getRoamUrlByPage;
@@ -0,0 +1,9 @@
1
+ import getUidsFromId from "./getUidsFromId";
2
+
3
+ const getUids = (
4
+ block?: HTMLDivElement | HTMLTextAreaElement | null
5
+ ): ReturnType<typeof getUidsFromId> => {
6
+ return block ? getUidsFromId(block.id) : { blockUid: "", windowId: "" };
7
+ };
8
+
9
+ export default getUids;
@@ -0,0 +1,9 @@
1
+ import getUids from "./getUids";
2
+
3
+ const getUidsFromButton = (
4
+ button: HTMLButtonElement
5
+ ): ReturnType<typeof getUids> => {
6
+ return getUids(button.closest<HTMLDivElement>(".roam-block"));
7
+ };
8
+
9
+ export default getUidsFromButton;
@@ -0,0 +1,13 @@
1
+ const getUidsFromId = (id?: string): { blockUid: string; windowId: string } => {
2
+ if (!id) return { blockUid: "", windowId: "" };
3
+ const blockUid = id.substring(id.length - 9, id.length);
4
+ const restOfHTMLId = id.substring(0, id.length - 10);
5
+ const windowId =
6
+ restOfHTMLId.match(/^block-input-([a-zA-Z0-9_-]+)$/)?.[1] || "";
7
+ return {
8
+ blockUid,
9
+ windowId,
10
+ };
11
+ };
12
+
13
+ export default getUidsFromId;
@@ -1,30 +1,30 @@
1
- export * from "./constants";
2
- export { default as addBlockCommand } from "./addBlockCommand";
3
- export { default as addOldRoamJSDependency } from "./addOldRoamJSDependency";
4
- export { default as addRoamJSDependency } from "./addRoamJSDependency";
5
- export { default as addScriptAsDependency } from "./addScriptAsDependency";
6
- export { default as addStyle } from "./addStyle";
7
- export { default as createBlockObserver } from "./createBlockObserver";
8
- export { default as createButtonObserver } from "./createButtonObserver";
9
- export { default as createHTMLObserver } from "./createHTMLObserver";
10
- export { default as createHashtagObserver } from "./createHashtagObserver";
11
- export { default as createIconButton } from "./createIconButton";
12
- export { default as createObserver } from "./createObserver";
13
- export { default as createOverlayObserver } from "./createOverlayObserver";
14
- export { default as createPageObserver } from "./createPageObserver";
15
- export { default as createPageTitleObserver } from "./createPageTitleObserver";
16
- export { default as genericError } from "./genericError";
17
- export { default as getActiveUids } from "./getActiveUids";
18
- export { default as getBlockUidFromTarget } from "./getBlockUidFromTarget";
19
- export { default as getCurrentPageUid } from "./getCurrentPageUid";
20
- export { default as getDropUidOffset } from "./getDropUidOffset";
21
- export { default as getPageTitleByHtmlElement } from "./getPageTitleByHtmlElement";
22
- export { default as getPageTitleValueByHtmlElement } from "./getPageTitleValueByHtmlElement";
23
- export { default as getReferenceBlockUid } from "./getReferenceBlockUid";
24
- export { default as getRoamUrl } from "./getRoamUrl";
25
- export { default as getRoamUrlByPage } from "./getRoamUrlByPage";
26
- export { default as getUids } from "./getUids";
27
- export { default as getUidsFromButton } from "./getUidsFromButton";
28
- export { default as getUidsFromId } from "./getUidsFromId";
29
- export { default as parseRoamBlocksToHtml } from "./parseRoamBlocksToHtml";
30
- export { default as resolveRefs } from "./resolveRefs";
1
+ export * from "./constants";
2
+ export { default as addBlockCommand } from "./addBlockCommand";
3
+ export { default as addOldRoamJSDependency } from "./addOldRoamJSDependency";
4
+ export { default as addRoamJSDependency } from "./addRoamJSDependency";
5
+ export { default as addScriptAsDependency } from "./addScriptAsDependency";
6
+ export { default as addStyle } from "./addStyle";
7
+ export { default as createBlockObserver } from "./createBlockObserver";
8
+ export { default as createButtonObserver } from "./createButtonObserver";
9
+ export { default as createHTMLObserver } from "./createHTMLObserver";
10
+ export { default as createHashtagObserver } from "./createHashtagObserver";
11
+ export { default as createIconButton } from "./createIconButton";
12
+ export { default as createObserver } from "./createObserver";
13
+ export { default as createOverlayObserver } from "./createOverlayObserver";
14
+ export { default as createPageObserver } from "./createPageObserver";
15
+ export { default as createPageTitleObserver } from "./createPageTitleObserver";
16
+ export { default as genericError } from "./genericError";
17
+ export { default as getActiveUids } from "./getActiveUids";
18
+ export { default as getBlockUidFromTarget } from "./getBlockUidFromTarget";
19
+ export { default as getCurrentPageUid } from "./getCurrentPageUid";
20
+ export { default as getDropUidOffset } from "./getDropUidOffset";
21
+ export { default as getPageTitleByHtmlElement } from "./getPageTitleByHtmlElement";
22
+ export { default as getPageTitleValueByHtmlElement } from "./getPageTitleValueByHtmlElement";
23
+ export { default as getReferenceBlockUid } from "./getReferenceBlockUid";
24
+ export { default as getRoamUrl } from "./getRoamUrl";
25
+ export { default as getRoamUrlByPage } from "./getRoamUrlByPage";
26
+ export { default as getUids } from "./getUids";
27
+ export { default as getUidsFromButton } from "./getUidsFromButton";
28
+ export { default as getUidsFromId } from "./getUidsFromId";
29
+ export { default as parseRoamBlocksToHtml } from "./parseRoamBlocksToHtml";
30
+ export { default as resolveRefs } from "./resolveRefs";
@@ -0,0 +1,118 @@
1
+ import { getParseInline, RoamContext } from "../marked";
2
+ import type { TreeNode, ViewType } from "../types";
3
+
4
+ const VIEW_CONTAINER = {
5
+ bullet: "ul",
6
+ document: "div",
7
+ numbered: "ol",
8
+ };
9
+ const HEADINGS = ["p", "h1", "h2", "h3"];
10
+
11
+ export const syncParseRoamBlocksToHtml = ({
12
+ content,
13
+ viewType,
14
+ level,
15
+ context,
16
+ parseInline,
17
+ }: {
18
+ level: number;
19
+ context: Required<RoamContext>;
20
+ content: TreeNode[];
21
+ viewType: ViewType;
22
+ parseInline: Awaited<ReturnType<typeof getParseInline>>;
23
+ }): string => {
24
+ if (content.length === 0) {
25
+ return "";
26
+ }
27
+ const items = content.map((t) => {
28
+ let skipChildren = false;
29
+ const componentsWithChildren = (s: string, ac?: string): string | false => {
30
+ const parent = context.components(s, ac);
31
+ if (parent) {
32
+ return parent;
33
+ } else if (/table/i.test(s)) {
34
+ skipChildren = true;
35
+ const flatten = (n: TreeNode): TreeNode[][] =>
36
+ n.children.length
37
+ ? n.children
38
+ .map((c) => flatten(c))
39
+ .flatMap((c) => c.map((cc) => [n, ...cc]))
40
+ : [[n]];
41
+ const rows = flatten(t).map((row) =>
42
+ row.slice(1).map(
43
+ (td) =>
44
+ `<td>${parseInline(td.text, {
45
+ ...context,
46
+ components: componentsWithChildren,
47
+ })}</td`
48
+ )
49
+ );
50
+ const columns = Math.max(...rows.map((row) => row.length), 0);
51
+ const fill = Array<string>(columns).fill("<td></td>");
52
+ const normalizedRows = rows.map((row) =>
53
+ [...row, ...fill.slice(0, columns - row.length)].join("")
54
+ );
55
+ return `<table class="roam-table"><tbody>${normalizedRows
56
+ .map((row) => `<tr>${row}</tr>`)
57
+ .join("")}</tbody></table>`;
58
+ } else if (/roam\/render/i.test(s)) {
59
+ skipChildren = true;
60
+ const acCode = ac || "";
61
+ return `<div class="roam-render">${acCode}</div>`;
62
+ }
63
+ return false;
64
+ };
65
+ const classlist =
66
+ t.textAlign === "left"
67
+ ? ["text-align-left"]
68
+ : t.textAlign === "center"
69
+ ? ["text-align-center"]
70
+ : t.textAlign === "right"
71
+ ? ["text-align-right"]
72
+ : [];
73
+ const textToParse = t.text.replace(/#\.([^\s]*)/g, (_, className) => {
74
+ classlist.push(className);
75
+ return "";
76
+ });
77
+ const inlineMarked = parseInline(textToParse, {
78
+ ...context,
79
+ components: componentsWithChildren,
80
+ });
81
+ const innerHtml = `<${HEADINGS[t.heading]}>${inlineMarked}</${
82
+ HEADINGS[t.heading]
83
+ }>\n${
84
+ skipChildren
85
+ ? ""
86
+ : syncParseRoamBlocksToHtml({
87
+ content: t.children,
88
+ viewType: t.viewType,
89
+ level: level + 1,
90
+ context,
91
+ parseInline,
92
+ })
93
+ }`;
94
+ if (level > 0 && viewType === "document") {
95
+ classlist.push("document-bullet");
96
+ }
97
+ const attrs = `id="${t.uid}"${
98
+ classlist.length ? ` class="${classlist.join(" ")}"` : ""
99
+ }`;
100
+ const blockHtml =
101
+ level === 0 && viewType === "document"
102
+ ? `<div ${attrs}>${innerHtml}</div>`
103
+ : `<li ${attrs}>${innerHtml}</li>`;
104
+ return blockHtml;
105
+ });
106
+ const containerTag =
107
+ level > 0 && viewType === "document" ? "ul" : VIEW_CONTAINER[viewType];
108
+ return `<${containerTag}>${items.join("\n")}</${containerTag}>`;
109
+ };
110
+
111
+ const parseRoamBlocksToHtml = (
112
+ args: Omit<Parameters<typeof syncParseRoamBlocksToHtml>[0], "parseInline">
113
+ ) =>
114
+ getParseInline().then((parseInline) =>
115
+ syncParseRoamBlocksToHtml({ ...args, parseInline })
116
+ );
117
+
118
+ export default parseRoamBlocksToHtml;
@@ -0,0 +1,46 @@
1
+ import getPageUidByPageTitle from "../queries/getPageUidByPageTitle";
2
+ import getTextByBlockUid from "../queries/getTextByBlockUid";
3
+ import { BLOCK_REF_REGEX } from "./constants";
4
+ import getRoamUrl from "./getRoamUrl";
5
+
6
+ const aliasTagRegex = new RegExp(
7
+ `\\[[^\\]]*\\]\\((\\[\\[([^\\]]*)\\]\\])\\)`,
8
+ "g"
9
+ );
10
+
11
+ const aliasRefRegex = new RegExp(
12
+ `\\[[^\\]]*\\]\\((${BLOCK_REF_REGEX.source})\\)`,
13
+ "g"
14
+ );
15
+
16
+ const resolveRefs = async (text: string): Promise<string> => {
17
+ let result = text;
18
+
19
+ const aliasTagMatches = [...text.matchAll(aliasTagRegex)];
20
+ for (const match of aliasTagMatches) {
21
+ const [alias, del, pageName] = match;
22
+ const blockUid = await getPageUidByPageTitle(pageName);
23
+ const url = getRoamUrl(blockUid);
24
+ const newAlias = alias.replace(del, url);
25
+ result = result.replace(alias, newAlias);
26
+ }
27
+
28
+ const aliasRefMatches = [...text.matchAll(aliasRefRegex)];
29
+ for (const match of aliasRefMatches) {
30
+ const [alias, del, blockUid] = match;
31
+ const url = getRoamUrl(blockUid);
32
+ const newAlias = alias.replace(del, url);
33
+ result = result.replace(alias, newAlias);
34
+ }
35
+
36
+ const blockRefMatches = [...text.matchAll(new RegExp(BLOCK_REF_REGEX, "g"))];
37
+ for (const match of blockRefMatches) {
38
+ const [_, blockUid] = match;
39
+ const reference = await getTextByBlockUid(blockUid);
40
+ result = result.replace(_, reference || blockUid);
41
+ }
42
+
43
+ return result;
44
+ };
45
+
46
+ export default resolveRefs;
@@ -1 +1 @@
1
- export { default as watchOnce } from "./watchOnce";
1
+ export { default as watchOnce } from "./watchOnce";
@@ -0,0 +1,17 @@
1
+ import type { AddPullWatch, PullBlock } from "../types/native";
2
+
3
+ const watchOnce = (
4
+ pullPattern: string,
5
+ entityId: string,
6
+ callback: (before: PullBlock | null, after: PullBlock | null) => boolean
7
+ ): void => {
8
+ const watcher: Parameters<AddPullWatch>[2] = (before, after) => {
9
+ if (callback(before, after)) {
10
+ window.roamAlphaAPI.data.removePullWatch(pullPattern, entityId, watcher);
11
+ }
12
+ return true;
13
+ };
14
+ window.roamAlphaAPI.data.addPullWatch(pullPattern, entityId, watcher);
15
+ };
16
+
17
+ export default watchOnce;
@@ -1,2 +1,2 @@
1
- export { default as useArrowKeyDown } from "./useArrowKeyDown";
2
- export { default as useSubTree } from "./useSubTree";
1
+ export { default as useArrowKeyDown } from "./useArrowKeyDown";
2
+ export { default as useSubTree } from "./useSubTree";