roamjs-components 0.29.4 → 0.32.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 (370) hide show
  1. package/README.md +25 -11
  2. package/components/BlockErrorBoundary.js +1 -1
  3. package/components/BlockErrorBoundary.js.map +1 -1
  4. package/components/BlockInput.js +1 -1
  5. package/components/BlockInput.js.map +1 -1
  6. package/components/ComponentContainer.js +1 -1
  7. package/components/ComponentContainer.js.map +1 -1
  8. package/components/ConfigPage.d.ts +1 -1
  9. package/components/ConfigPage.js +6 -1
  10. package/components/ConfigPage.js.map +1 -1
  11. package/components/CursorMenu.js +2 -1
  12. package/components/CursorMenu.js.map +1 -1
  13. package/components/ExternalLogin.js +5 -2
  14. package/components/ExternalLogin.js.map +1 -1
  15. package/components/OauthSelect.js +3 -2
  16. package/components/OauthSelect.js.map +1 -1
  17. package/components/PageInput.js +1 -1
  18. package/components/PageInput.js.map +1 -1
  19. package/components/ServiceComponents.d.ts +3 -3
  20. package/components/ServiceComponents.js +16 -9
  21. package/components/ServiceComponents.js.map +1 -1
  22. package/date/constants.d.ts +2 -0
  23. package/date/constants.js +3 -0
  24. package/date/constants.js.map +1 -0
  25. package/date/index.d.ts +5 -0
  26. package/date/index.js +6 -0
  27. package/date/index.js.map +1 -0
  28. package/date/parseRoamDate.d.ts +2 -0
  29. package/date/parseRoamDate.js +4 -0
  30. package/date/parseRoamDate.js.map +1 -0
  31. package/date/parseRoamDateUid.d.ts +2 -0
  32. package/date/parseRoamDateUid.js +4 -0
  33. package/date/parseRoamDateUid.js.map +1 -0
  34. package/date/toRoamDate.d.ts +2 -0
  35. package/date/toRoamDate.js +4 -0
  36. package/date/toRoamDate.js.map +1 -0
  37. package/date/toRoamDateUid.d.ts +2 -0
  38. package/date/toRoamDateUid.js +4 -0
  39. package/date/toRoamDateUid.js.map +1 -0
  40. package/dom/addBlockCommand.d.ts +5 -0
  41. package/dom/addBlockCommand.js +52 -0
  42. package/dom/addBlockCommand.js.map +1 -0
  43. package/dom/addOldRoamJSDependency.d.ts +2 -0
  44. package/dom/addOldRoamJSDependency.js +15 -0
  45. package/dom/addOldRoamJSDependency.js.map +1 -0
  46. package/dom/addRoamJSDependency.d.ts +2 -0
  47. package/dom/addRoamJSDependency.js +6 -0
  48. package/dom/addRoamJSDependency.js.map +1 -0
  49. package/dom/addStyle.d.ts +2 -0
  50. package/dom/addStyle.js +13 -0
  51. package/dom/addStyle.js.map +1 -0
  52. package/dom/constants.d.ts +1 -0
  53. package/dom/constants.js +2 -0
  54. package/dom/constants.js.map +1 -0
  55. package/dom/createBlockObserver.d.ts +2 -0
  56. package/dom/createBlockObserver.js +17 -0
  57. package/dom/createBlockObserver.js.map +1 -0
  58. package/dom/createButtonObserver.d.ts +6 -0
  59. package/dom/createButtonObserver.js +19 -0
  60. package/dom/createButtonObserver.js.map +1 -0
  61. package/dom/createDivObserver.d.ts +2 -0
  62. package/dom/createDivObserver.js +6 -0
  63. package/dom/createDivObserver.js.map +1 -0
  64. package/dom/createHTMLObserver.d.ts +8 -0
  65. package/dom/createHTMLObserver.js +27 -0
  66. package/dom/createHTMLObserver.js.map +1 -0
  67. package/dom/createHashtagObserver.d.ts +5 -0
  68. package/dom/createHashtagObserver.js +14 -0
  69. package/dom/createHashtagObserver.js.map +1 -0
  70. package/dom/createIconButton.d.ts +2 -0
  71. package/dom/createIconButton.js +11 -0
  72. package/dom/createIconButton.js.map +1 -0
  73. package/dom/createObserver.d.ts +2 -0
  74. package/dom/createObserver.js +4 -0
  75. package/dom/createObserver.js.map +1 -0
  76. package/dom/createOverlayObserver.d.ts +2 -0
  77. package/dom/createOverlayObserver.js +4 -0
  78. package/dom/createOverlayObserver.js.map +1 -0
  79. package/dom/createPageObserver.d.ts +2 -0
  80. package/dom/createPageObserver.js +32 -0
  81. package/dom/createPageObserver.js.map +1 -0
  82. package/dom/createPageTitleObserver.d.ts +6 -0
  83. package/dom/createPageTitleObserver.js +27 -0
  84. package/dom/createPageTitleObserver.js.map +1 -0
  85. package/dom/genericError.d.ts +4 -0
  86. package/dom/genericError.js +15 -0
  87. package/dom/genericError.js.map +1 -0
  88. package/dom/getActiveUids.d.ts +3 -0
  89. package/dom/getActiveUids.js +4 -0
  90. package/dom/getActiveUids.js.map +1 -0
  91. package/dom/getBlockUidFromTarget.d.ts +2 -0
  92. package/dom/getBlockUidFromTarget.js +31 -0
  93. package/dom/getBlockUidFromTarget.js.map +1 -0
  94. package/dom/getCurrentPageUid.d.ts +2 -0
  95. package/dom/getCurrentPageUid.js +4 -0
  96. package/dom/getCurrentPageUid.js.map +1 -0
  97. package/dom/getDomRefs.d.ts +2 -0
  98. package/dom/getDomRefs.js +10 -0
  99. package/dom/getDomRefs.js.map +1 -0
  100. package/dom/getDropUidOffset.d.ts +5 -0
  101. package/dom/getDropUidOffset.js +25 -0
  102. package/dom/getDropUidOffset.js.map +1 -0
  103. package/dom/getMutatedNodes.d.ts +7 -0
  104. package/dom/getMutatedNodes.js +10 -0
  105. package/dom/getMutatedNodes.js.map +1 -0
  106. package/dom/getPageTitleByHtmlElement.d.ts +2 -0
  107. package/dom/getPageTitleByHtmlElement.js +11 -0
  108. package/dom/getPageTitleByHtmlElement.js.map +1 -0
  109. package/dom/getPageTitleValueByHtmlElement.d.ts +2 -0
  110. package/dom/getPageTitleValueByHtmlElement.js +25 -0
  111. package/dom/getPageTitleValueByHtmlElement.js.map +1 -0
  112. package/dom/getReferenceBlockUid.d.ts +2 -0
  113. package/dom/getReferenceBlockUid.js +16 -0
  114. package/dom/getReferenceBlockUid.js.map +1 -0
  115. package/dom/getRoamUrl.d.ts +2 -0
  116. package/dom/getRoamUrl.js +3 -0
  117. package/dom/getRoamUrl.js.map +1 -0
  118. package/dom/getRoamUrlByPage.d.ts +2 -0
  119. package/dom/getRoamUrlByPage.js +8 -0
  120. package/dom/getRoamUrlByPage.js.map +1 -0
  121. package/dom/getUids.d.ts +3 -0
  122. package/dom/getUids.js +6 -0
  123. package/dom/getUids.js.map +1 -0
  124. package/dom/getUidsFromButton.d.ts +3 -0
  125. package/dom/getUidsFromButton.js +7 -0
  126. package/dom/getUidsFromButton.js.map +1 -0
  127. package/dom/getUidsFromId.d.ts +5 -0
  128. package/dom/getUidsFromId.js +14 -0
  129. package/dom/getUidsFromId.js.map +1 -0
  130. package/dom/index.d.ts +30 -0
  131. package/dom/index.js +31 -0
  132. package/dom/index.js.map +1 -0
  133. package/dom/openBlock.d.ts +2 -0
  134. package/dom/openBlock.js +4 -0
  135. package/dom/openBlock.js.map +1 -0
  136. package/dom/openBlockElement.d.ts +2 -0
  137. package/dom/openBlockElement.js +15 -0
  138. package/dom/openBlockElement.js.map +1 -0
  139. package/dom/parseRoamBlocksToHtml.d.ts +9 -0
  140. package/dom/parseRoamBlocksToHtml.js +74 -0
  141. package/dom/parseRoamBlocksToHtml.js.map +1 -0
  142. package/dom/resolveRefs.d.ts +2 -0
  143. package/dom/resolveRefs.js +22 -0
  144. package/dom/resolveRefs.js.map +1 -0
  145. package/events/watchOnce.d.ts +3 -0
  146. package/events/watchOnce.js +10 -0
  147. package/events/watchOnce.js.map +1 -0
  148. package/hooks/useRoamJSTokenWarning.js +4 -1
  149. package/hooks/useRoamJSTokenWarning.js.map +1 -1
  150. package/marked/index.d.ts +14 -0
  151. package/marked/index.js +540 -0
  152. package/marked/index.js.map +1 -0
  153. package/package.json +15 -3
  154. package/queries/getAllBlockUids.d.ts +2 -0
  155. package/queries/getAllBlockUids.js +5 -0
  156. package/queries/getAllBlockUids.js.map +1 -0
  157. package/queries/getAllBlockUidsAndTexts.d.ts +5 -0
  158. package/queries/getAllBlockUidsAndTexts.js +5 -0
  159. package/queries/getAllBlockUidsAndTexts.js.map +1 -0
  160. package/queries/getAllPageNames.d.ts +2 -0
  161. package/queries/getAllPageNames.js +5 -0
  162. package/queries/getAllPageNames.js.map +1 -0
  163. package/queries/getBasicTreeByParentUid.d.ts +3 -0
  164. package/queries/getBasicTreeByParentUid.js +12 -0
  165. package/queries/getBasicTreeByParentUid.js.map +1 -0
  166. package/queries/getBlockUidAndTextIncludingText.d.ts +5 -0
  167. package/queries/getBlockUidAndTextIncludingText.js +5 -0
  168. package/queries/getBlockUidAndTextIncludingText.js.map +1 -0
  169. package/queries/getBlockUidByTextOnPage.d.ts +5 -0
  170. package/queries/getBlockUidByTextOnPage.js +6 -0
  171. package/queries/getBlockUidByTextOnPage.js.map +1 -0
  172. package/queries/getBlockUidsAndTextsReferencingPage.d.ts +5 -0
  173. package/queries/getBlockUidsAndTextsReferencingPage.js +6 -0
  174. package/queries/getBlockUidsAndTextsReferencingPage.js.map +1 -0
  175. package/queries/getBlockUidsByPageTitle.d.ts +2 -0
  176. package/queries/getBlockUidsByPageTitle.js +6 -0
  177. package/queries/getBlockUidsByPageTitle.js.map +1 -0
  178. package/queries/getBlockUidsReferencingBlock.d.ts +2 -0
  179. package/queries/getBlockUidsReferencingBlock.js +5 -0
  180. package/queries/getBlockUidsReferencingBlock.js.map +1 -0
  181. package/queries/getBlockUidsReferencingPage.d.ts +2 -0
  182. package/queries/getBlockUidsReferencingPage.js +6 -0
  183. package/queries/getBlockUidsReferencingPage.js.map +1 -0
  184. package/queries/getBlockUidsWithParentUid.d.ts +2 -0
  185. package/queries/getBlockUidsWithParentUid.js +5 -0
  186. package/queries/getBlockUidsWithParentUid.js.map +1 -0
  187. package/queries/getChildrenLengthByPageUid.d.ts +2 -0
  188. package/queries/getChildrenLengthByPageUid.js +3 -0
  189. package/queries/getChildrenLengthByPageUid.js.map +1 -0
  190. package/queries/getCreateTimeByBlockUid.d.ts +2 -0
  191. package/queries/getCreateTimeByBlockUid.js +6 -0
  192. package/queries/getCreateTimeByBlockUid.js.map +1 -0
  193. package/queries/getCurrentUser.d.ts +2 -0
  194. package/queries/getCurrentUser.js +10 -0
  195. package/queries/getCurrentUser.js.map +1 -0
  196. package/queries/getCurrentUserDisplayName.d.ts +2 -0
  197. package/queries/getCurrentUserDisplayName.js +11 -0
  198. package/queries/getCurrentUserDisplayName.js.map +1 -0
  199. package/queries/getCurrentUserEmail.d.ts +2 -0
  200. package/queries/getCurrentUserEmail.js +11 -0
  201. package/queries/getCurrentUserEmail.js.map +1 -0
  202. package/queries/getCurrentUserUid.d.ts +2 -0
  203. package/queries/getCurrentUserUid.js +11 -0
  204. package/queries/getCurrentUserUid.js.map +1 -0
  205. package/queries/getDisplayNameByEmail.d.ts +2 -0
  206. package/queries/getDisplayNameByEmail.js +6 -0
  207. package/queries/getDisplayNameByEmail.js.map +1 -0
  208. package/queries/getDisplayNameByUid.d.ts +2 -0
  209. package/queries/getDisplayNameByUid.js +6 -0
  210. package/queries/getDisplayNameByUid.js.map +1 -0
  211. package/queries/getEditTimeByBlockUid.d.ts +2 -0
  212. package/queries/getEditTimeByBlockUid.js +6 -0
  213. package/queries/getEditTimeByBlockUid.js.map +1 -0
  214. package/queries/getEditedUserEmailByBlockUid.d.ts +2 -0
  215. package/queries/getEditedUserEmailByBlockUid.js +6 -0
  216. package/queries/getEditedUserEmailByBlockUid.js.map +1 -0
  217. package/queries/getFirstChildTextByBlockUid.d.ts +2 -0
  218. package/queries/getFirstChildTextByBlockUid.js +6 -0
  219. package/queries/getFirstChildTextByBlockUid.js.map +1 -0
  220. package/queries/getFirstChildUidByBlockUid.d.ts +2 -0
  221. package/queries/getFirstChildUidByBlockUid.js +4 -0
  222. package/queries/getFirstChildUidByBlockUid.js.map +1 -0
  223. package/queries/getFullTreeByParentUid.d.ts +3 -0
  224. package/queries/getFullTreeByParentUid.js +39 -0
  225. package/queries/getFullTreeByParentUid.js.map +1 -0
  226. package/queries/getLinkedPageTitlesUnderUid.d.ts +2 -0
  227. package/queries/getLinkedPageTitlesUnderUid.js +5 -0
  228. package/queries/getLinkedPageTitlesUnderUid.js.map +1 -0
  229. package/queries/getNthChildUidByBlockUid.d.ts +5 -0
  230. package/queries/getNthChildUidByBlockUid.js +6 -0
  231. package/queries/getNthChildUidByBlockUid.js.map +1 -0
  232. package/queries/getOrderByBlockUid.d.ts +2 -0
  233. package/queries/getOrderByBlockUid.js +6 -0
  234. package/queries/getOrderByBlockUid.js.map +1 -0
  235. package/queries/getPageTitleByBlockUid.d.ts +2 -0
  236. package/queries/getPageTitleByBlockUid.js +6 -0
  237. package/queries/getPageTitleByBlockUid.js.map +1 -0
  238. package/queries/getPageTitleReferencesByPageTitle.d.ts +2 -0
  239. package/queries/getPageTitleReferencesByPageTitle.js +6 -0
  240. package/queries/getPageTitleReferencesByPageTitle.js.map +1 -0
  241. package/queries/getPageTitlesAndBlockUidsReferencingPage.d.ts +5 -0
  242. package/queries/getPageTitlesAndBlockUidsReferencingPage.js +6 -0
  243. package/queries/getPageTitlesAndBlockUidsReferencingPage.js.map +1 -0
  244. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.d.ts +5 -0
  245. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.js +6 -0
  246. package/queries/getPageTitlesAndUidsDirectlyReferencingPage.js.map +1 -0
  247. package/queries/getPageTitlesReferencingBlockUid.d.ts +2 -0
  248. package/queries/getPageTitlesReferencingBlockUid.js +5 -0
  249. package/queries/getPageTitlesReferencingBlockUid.js.map +1 -0
  250. package/queries/getPageTitlesStartingWithPrefix.d.ts +2 -0
  251. package/queries/getPageTitlesStartingWithPrefix.js +5 -0
  252. package/queries/getPageTitlesStartingWithPrefix.js.map +1 -0
  253. package/queries/getPageUidByPageTitle.d.ts +2 -0
  254. package/queries/getPageUidByPageTitle.js +7 -0
  255. package/queries/getPageUidByPageTitle.js.map +1 -0
  256. package/queries/getPageViewType.d.ts +3 -0
  257. package/queries/getPageViewType.js +7 -0
  258. package/queries/getPageViewType.js.map +1 -0
  259. package/queries/getParentTextByBlockUid.d.ts +2 -0
  260. package/queries/getParentTextByBlockUid.js +6 -0
  261. package/queries/getParentTextByBlockUid.js.map +1 -0
  262. package/queries/getParentTextByBlockUidAndTag.d.ts +5 -0
  263. package/queries/getParentTextByBlockUidAndTag.js +6 -0
  264. package/queries/getParentTextByBlockUidAndTag.js.map +1 -0
  265. package/queries/getParentUidByBlockUid.d.ts +2 -0
  266. package/queries/getParentUidByBlockUid.js +6 -0
  267. package/queries/getParentUidByBlockUid.js.map +1 -0
  268. package/queries/getParentUidsOfBlockUid.d.ts +2 -0
  269. package/queries/getParentUidsOfBlockUid.js +5 -0
  270. package/queries/getParentUidsOfBlockUid.js.map +1 -0
  271. package/queries/getSettingsByEmail.d.ts +3 -0
  272. package/queries/getSettingsByEmail.js +6 -0
  273. package/queries/getSettingsByEmail.js.map +1 -0
  274. package/queries/getShallowTreeByParentUid.d.ts +5 -0
  275. package/queries/getShallowTreeByParentUid.js +9 -0
  276. package/queries/getShallowTreeByParentUid.js.map +1 -0
  277. package/queries/getTextByBlockUid.d.ts +2 -0
  278. package/queries/getTextByBlockUid.js +6 -0
  279. package/queries/getTextByBlockUid.js.map +1 -0
  280. package/queries/index.d.ts +43 -0
  281. package/queries/index.js +44 -0
  282. package/queries/index.js.map +1 -0
  283. package/queries/isTagOnPage.d.ts +5 -0
  284. package/queries/isTagOnPage.js +7 -0
  285. package/queries/isTagOnPage.js.map +1 -0
  286. package/queries/normalizePageTitle.d.ts +2 -0
  287. package/queries/normalizePageTitle.js +3 -0
  288. package/queries/normalizePageTitle.js.map +1 -0
  289. package/types/index.d.ts +330 -0
  290. package/types/index.js +2 -0
  291. package/types/index.js.map +1 -0
  292. package/util/addInputSetting.js +4 -3
  293. package/util/addInputSetting.js.map +1 -1
  294. package/util/createTagRegex.d.ts +2 -0
  295. package/util/createTagRegex.js +3 -0
  296. package/util/createTagRegex.js.map +1 -0
  297. package/util/extractRef.d.ts +2 -0
  298. package/util/extractRef.js +7 -0
  299. package/util/extractRef.js.map +1 -0
  300. package/util/extractTag.d.ts +2 -0
  301. package/util/extractTag.js +11 -0
  302. package/util/extractTag.js.map +1 -0
  303. package/util/getGraph.d.ts +2 -0
  304. package/util/getGraph.js +7 -0
  305. package/util/getGraph.js.map +1 -0
  306. package/util/getLocalStorageKey.d.ts +2 -0
  307. package/util/getLocalStorageKey.js +4 -0
  308. package/util/getLocalStorageKey.js.map +1 -0
  309. package/util/getOauth.js +4 -2
  310. package/util/getOauth.js.map +1 -1
  311. package/util/getOauthAccounts.js +4 -2
  312. package/util/getOauthAccounts.js.map +1 -1
  313. package/util/getSettingIntFromTree.d.ts +1 -1
  314. package/util/getSettingValueFromTree.d.ts +1 -1
  315. package/util/getSettingValuesFromTree.d.ts +1 -1
  316. package/util/getSubTree.d.ts +1 -1
  317. package/util/getSubTree.js +2 -1
  318. package/util/getSubTree.js.map +1 -1
  319. package/util/getToken.js +2 -1
  320. package/util/getToken.js.map +1 -1
  321. package/util/getTokenFromTree.d.ts +1 -1
  322. package/util/localStorageGet.d.ts +2 -0
  323. package/util/localStorageGet.js +4 -0
  324. package/util/localStorageGet.js.map +1 -0
  325. package/util/localStorageRemove.d.ts +2 -0
  326. package/util/localStorageRemove.js +4 -0
  327. package/util/localStorageRemove.js.map +1 -0
  328. package/util/localStorageSet.d.ts +2 -0
  329. package/util/localStorageSet.js +4 -0
  330. package/util/localStorageSet.js.map +1 -0
  331. package/util/registerSmartBlocksCommand.d.ts +8 -0
  332. package/util/registerSmartBlocksCommand.js +23 -0
  333. package/util/registerSmartBlocksCommand.js.map +1 -0
  334. package/util/runExtension.d.ts +3 -0
  335. package/util/runExtension.js +28 -0
  336. package/util/runExtension.js.map +1 -0
  337. package/util/setInputSetting.js +3 -3
  338. package/util/setInputSetting.js.map +1 -1
  339. package/util/setInputSettings.js +4 -3
  340. package/util/setInputSettings.js.map +1 -1
  341. package/util/toConfigPageName.d.ts +2 -0
  342. package/util/toConfigPageName.js +3 -0
  343. package/util/toConfigPageName.js.map +1 -0
  344. package/writes/clearBlockById.d.ts +2 -0
  345. package/writes/clearBlockById.js +9 -0
  346. package/writes/clearBlockById.js.map +1 -0
  347. package/writes/clearBlockByUid.d.ts +2 -0
  348. package/writes/clearBlockByUid.js +8 -0
  349. package/writes/clearBlockByUid.js.map +1 -0
  350. package/writes/createBlock.d.ts +7 -0
  351. package/writes/createBlock.js +19 -0
  352. package/writes/createBlock.js.map +1 -0
  353. package/writes/createPage.d.ts +6 -0
  354. package/writes/createPage.js +14 -0
  355. package/writes/createPage.js.map +1 -0
  356. package/writes/deleteBlock.d.ts +2 -0
  357. package/writes/deleteBlock.js +6 -0
  358. package/writes/deleteBlock.js.map +1 -0
  359. package/writes/index.d.ts +8 -0
  360. package/writes/index.js +9 -0
  361. package/writes/index.js.map +1 -0
  362. package/writes/openBlockInSidebar.d.ts +2 -0
  363. package/writes/openBlockInSidebar.js +12 -0
  364. package/writes/openBlockInSidebar.js.map +1 -0
  365. package/writes/updateActiveBlock.d.ts +2 -0
  366. package/writes/updateActiveBlock.js +9 -0
  367. package/writes/updateActiveBlock.js.map +1 -0
  368. package/writes/updateBlock.d.ts +5 -0
  369. package/writes/updateBlock.js +15 -0
  370. package/writes/updateBlock.js.map +1 -0
@@ -0,0 +1,540 @@
1
+ import marked, { Lexer } from "marked";
2
+ import XRegExp from "xregexp";
3
+ import refractor from "refractor";
4
+ import markdown from "refractor/lang/markdown";
5
+ import yaml from "refractor/lang/yaml";
6
+ import css from "refractor/lang/css";
7
+ import bash from "refractor/lang/bash";
8
+ import java from "refractor/lang/java";
9
+ import rust from "refractor/lang/rust";
10
+ import python from "refractor/lang/python";
11
+ import csharp from "refractor/lang/csharp";
12
+ import clojure from "refractor/lang/clojure";
13
+ import hcl from "refractor/lang/hcl";
14
+ import toHtml from "hast-util-to-html";
15
+ refractor.register(markdown);
16
+ refractor.register(yaml);
17
+ refractor.register(css);
18
+ refractor.register(bash);
19
+ refractor.register(java);
20
+ refractor.register(rust);
21
+ refractor.register(python);
22
+ refractor.register(csharp);
23
+ refractor.register(clojure);
24
+ refractor.register(hcl);
25
+ const RENDERED_TODO = '<span><label class="check-container"><input type="checkbox" disabled=""><span class="checkmark"></span></label></span>';
26
+ const RENDERED_DONE = '<span><label class="check-container"><input type="checkbox" checked="" disabled=""><span class="checkmark"></span></label></span>';
27
+ const URL_REGEX = /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=$]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_+.~#?&//=$]*)/;
28
+ const TODO_REGEX = /^{{(?:\[\[)?TODO(?:\]\])?}}/;
29
+ const DONE_REGEX = /^{{(?:\[\[)?DONE(?:\]\])?}}/;
30
+ const IFRAME_REGEX = new RegExp(`^{{(?:\\[\\[)?iframe(?:\\]\\])?:\\s*(${URL_REGEX.source})}}`);
31
+ const BUTTON_REGEX = /^{{(?:\[\[)?((?:(?!}}[^}])[\w\s-/])*)(?:\]\])?(?::(.*))?}}/;
32
+ const TAG_REGEX = /^#?\[\[(.*?)\]\]/;
33
+ const BLOCK_REF_REGEX = /^\(\((.*?)\)\)/;
34
+ const toAlias = (r) => new RegExp(`^\\[([^\\]]*?)\\]\\(${r.source.substring(1)}\\)`);
35
+ const ALIAS_REGEX = toAlias(TAG_REGEX);
36
+ const ALIAS_REF_REGEX = toAlias(BLOCK_REF_REGEX);
37
+ const HASHTAG_REGEX = /^#([^\s]*)/;
38
+ const ATTRIBUTE_REGEX = /^(.*?)::/;
39
+ const BOLD_REGEX = /^\*\*(.*?)\*\*/;
40
+ const ITALICS_REGEX = /^__(.*?)__/;
41
+ const HIGHLIGHT_REGEX = /^\^\^([^^]*)\^\^/;
42
+ const INLINE_STOP_REGEX = /({{|\*\*([^*]+?)\*\*|__([^_]+?)__|\^\^([^^]+?)\^\^|#?\[\[(.*?)\]\]|#[^\s]|\(\(.*?\)\)|\[(.*?)\]\((.*?)\))/;
43
+ const HR_REGEX = /^---$/;
44
+ const BQ_REGEX = /^(?:>|\[\[>\]\]) (.*)$/s;
45
+ const TWEET_STATUS_REGEX = /\/status\/(.*?)(?:\?s=\d*)?$/;
46
+ const HTML_REGEXES = [BUTTON_REGEX, BLOCK_REF_REGEX, HR_REGEX];
47
+ const HTML_WITH_CHILD_REGEXES = [
48
+ { rgx: BQ_REGEX, title: "blockquote" },
49
+ { rgx: HIGHLIGHT_REGEX, title: "highlight" },
50
+ ];
51
+ const CODESPAN_REGEX = new RegExp("^```([\\w]*)\n(.*)```$", "s");
52
+ const defaultComponents = (component, afterColon) => {
53
+ var _a;
54
+ const opts = ((_a = afterColon === null || afterColon === void 0 ? void 0 : afterColon.trim) === null || _a === void 0 ? void 0 : _a.call(afterColon)) || "";
55
+ switch (component) {
56
+ case "youtube":
57
+ case "video":
58
+ return `<div class="rm-iframe-container"><iframe src="${opts
59
+ .replace("youtu.be", "www.youtube.com/embed")
60
+ .replace("watch?v=", "embed/")
61
+ .replace("vimeo.com", "player.vimeo.com/video")}" class="rm-iframe rm-video-player"></iframe></div>`;
62
+ case "pdf":
63
+ return `<div class="rm-iframe-container"><iframe src="${opts}" class="rm-iframe"></iframe></div>`;
64
+ default:
65
+ return "";
66
+ }
67
+ };
68
+ let lastSrc = "";
69
+ // https://github.com/markedjs/marked/blob/d2347e9b9ae517d02138fa6a9844bd8d586acfeb/src/Tokenizer.js#L33-L59
70
+ function indentCodeCompensation(raw, text) {
71
+ const matchIndentToCode = raw.match(/^(\s+)(?:```)/);
72
+ if (matchIndentToCode === null) {
73
+ return text;
74
+ }
75
+ const indentToCode = matchIndentToCode[1];
76
+ return text
77
+ .split("\n")
78
+ .map((node) => {
79
+ const matchIndentInNode = node.match(/^\s+/);
80
+ if (matchIndentInNode === null) {
81
+ return node;
82
+ }
83
+ const [indentInNode] = matchIndentInNode;
84
+ if (indentInNode.length >= indentToCode.length) {
85
+ return node.slice(indentToCode.length);
86
+ }
87
+ return node;
88
+ })
89
+ .join("\n");
90
+ }
91
+ const opts = {
92
+ tokenizer: {
93
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
94
+ // @ts-ignore should accept boolean return value
95
+ tag(src) {
96
+ for (const r of HTML_REGEXES) {
97
+ const match = r.exec(src);
98
+ if (match) {
99
+ return {
100
+ type: "html",
101
+ raw: match[0],
102
+ text: match[0],
103
+ };
104
+ }
105
+ }
106
+ return false;
107
+ },
108
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
109
+ // @ts-ignore should accept boolean return value
110
+ del(src) {
111
+ const match = /^~[^~]/.exec(src);
112
+ if (match) {
113
+ return {
114
+ type: "text",
115
+ raw: "~",
116
+ text: "~",
117
+ };
118
+ }
119
+ return false;
120
+ },
121
+ emStrong(src) {
122
+ var _a, _b;
123
+ const match = BOLD_REGEX.exec(src);
124
+ if (match && ((_a = match[1]) === null || _a === void 0 ? void 0 : _a.length)) {
125
+ return {
126
+ type: "strong",
127
+ raw: match[0],
128
+ text: match[1],
129
+ };
130
+ }
131
+ const emMatch = ITALICS_REGEX.exec(src);
132
+ if (emMatch && ((_b = emMatch[1]) === null || _b === void 0 ? void 0 : _b.length)) {
133
+ return {
134
+ type: "em",
135
+ raw: emMatch[0],
136
+ text: emMatch[1],
137
+ };
138
+ }
139
+ return false;
140
+ },
141
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
142
+ // @ts-ignore should accept boolean return value
143
+ fences(src) {
144
+ const newSrc = src.replace(/```$/, "\n```");
145
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
146
+ // @ts-ignore should accept boolean return value
147
+ const rules = this.rules;
148
+ const cap = rules.block.fences.exec(newSrc);
149
+ if (cap) {
150
+ const raw = cap[0];
151
+ const text = indentCodeCompensation(raw, cap[3] || "");
152
+ return {
153
+ type: "code",
154
+ raw,
155
+ lang: cap[2] ? cap[2].trim() : cap[2],
156
+ text,
157
+ };
158
+ }
159
+ return false;
160
+ },
161
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
162
+ // @ts-ignore should accept boolean return value
163
+ inlineText(src) {
164
+ var _a, _b, _c;
165
+ if (src === lastSrc) {
166
+ throw new Error(`Infinite loop on byte: ${src.charCodeAt(0)} of string ${src}`);
167
+ }
168
+ lastSrc = src;
169
+ const match = INLINE_STOP_REGEX.exec(src);
170
+ if (match) {
171
+ const raw = src.substring(0, match.index);
172
+ const tickMatch = raw.match(/([^`]`|`[^`])/g);
173
+ const numberOfTicks = (tickMatch || []).length;
174
+ if (numberOfTicks % 2 === 0) {
175
+ const index = numberOfTicks > 0 ? (_a = /`/.exec(raw)) === null || _a === void 0 ? void 0 : _a.index : match.index;
176
+ return {
177
+ type: "text",
178
+ raw: src.substring(0, index),
179
+ text: src.substring(0, index),
180
+ };
181
+ }
182
+ }
183
+ const attribute = ATTRIBUTE_REGEX.exec(src);
184
+ if (attribute) {
185
+ const raw = attribute[0];
186
+ const numberOfTicks = (raw.match(/([^`]`|`[^`])/g) || []).length;
187
+ if (numberOfTicks % 2 === 0) {
188
+ const page = attribute[1];
189
+ const href = (_c = (_b = this.context()).pagesToHrefs) === null || _c === void 0 ? void 0 : _c.call(_b, page);
190
+ const text = `${page}:`;
191
+ if (href) {
192
+ return {
193
+ type: "strong",
194
+ raw,
195
+ text,
196
+ tokens: [
197
+ {
198
+ type: "link",
199
+ raw: text,
200
+ text,
201
+ href,
202
+ tokens: [
203
+ {
204
+ type: "text",
205
+ raw: text,
206
+ text,
207
+ },
208
+ ],
209
+ },
210
+ ],
211
+ };
212
+ }
213
+ else {
214
+ return {
215
+ type: "strong",
216
+ raw,
217
+ text,
218
+ tokens: [
219
+ {
220
+ type: "text",
221
+ raw: text,
222
+ text,
223
+ },
224
+ ],
225
+ };
226
+ }
227
+ }
228
+ }
229
+ return false;
230
+ },
231
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
232
+ // @ts-ignore should accept boolean return value
233
+ codespan(src) {
234
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
235
+ // @ts-ignore should accept boolean return value
236
+ const cap = this.rules.inline.code.exec(src);
237
+ if (cap) {
238
+ if (cap[0].startsWith("```")) {
239
+ return {
240
+ type: "codespan",
241
+ raw: cap[0],
242
+ text: cap[0],
243
+ };
244
+ }
245
+ }
246
+ return false;
247
+ },
248
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
249
+ // @ts-ignore should accept boolean return value
250
+ link(src) {
251
+ var _a, _b, _c;
252
+ // hijacking link for html elements with tokens
253
+ for (const { rgx, title } of HTML_WITH_CHILD_REGEXES) {
254
+ const match = rgx.exec(src);
255
+ if (match) {
256
+ return {
257
+ type: "link",
258
+ raw: match[0],
259
+ text: match[1],
260
+ title,
261
+ };
262
+ }
263
+ }
264
+ const context = this.context();
265
+ if (TAG_REGEX.test(src)) {
266
+ const match = XRegExp.matchRecursive(src, "#?\\[\\[", "\\]\\]", "i", {
267
+ valueNames: ["between", "left", "match", "right"],
268
+ });
269
+ const raw = match.map((m) => m.value).join("");
270
+ if (context.pagesToHrefs) {
271
+ const text = match[1].value;
272
+ const href = context.pagesToHrefs(text);
273
+ if (href) {
274
+ return {
275
+ type: "link",
276
+ raw,
277
+ href,
278
+ text,
279
+ title: `tag:${text}`,
280
+ };
281
+ }
282
+ else {
283
+ return {
284
+ type: "text",
285
+ raw,
286
+ text,
287
+ };
288
+ }
289
+ }
290
+ else {
291
+ return {
292
+ type: "text",
293
+ raw,
294
+ text: raw,
295
+ };
296
+ }
297
+ }
298
+ const hashMatch = HASHTAG_REGEX.exec(src);
299
+ if (hashMatch) {
300
+ const raw = hashMatch[0];
301
+ if (context.pagesToHrefs) {
302
+ const text = hashMatch[1];
303
+ const href = context.pagesToHrefs(text);
304
+ if (href) {
305
+ return {
306
+ type: "link",
307
+ raw,
308
+ href,
309
+ text,
310
+ title: `tag:${text}`,
311
+ };
312
+ }
313
+ else {
314
+ return {
315
+ type: "text",
316
+ raw,
317
+ text,
318
+ };
319
+ }
320
+ }
321
+ else {
322
+ return {
323
+ type: "text",
324
+ raw,
325
+ text: raw,
326
+ };
327
+ }
328
+ }
329
+ const aliasMatch = ALIAS_REGEX.exec(src);
330
+ if (aliasMatch) {
331
+ const raw = aliasMatch[0];
332
+ if (context.pagesToHrefs) {
333
+ const text = aliasMatch[1];
334
+ const href = context.pagesToHrefs(aliasMatch[2]);
335
+ if (href) {
336
+ return {
337
+ type: "link",
338
+ raw,
339
+ href,
340
+ text,
341
+ title: "alias",
342
+ };
343
+ }
344
+ else {
345
+ return {
346
+ type: "text",
347
+ raw,
348
+ text,
349
+ };
350
+ }
351
+ }
352
+ else {
353
+ return {
354
+ type: "text",
355
+ raw,
356
+ text: raw,
357
+ };
358
+ }
359
+ }
360
+ const aliasRefMatch = ALIAS_REF_REGEX.exec(src);
361
+ if (aliasRefMatch) {
362
+ const raw = aliasRefMatch[0];
363
+ const text = aliasRefMatch[1];
364
+ const ref = aliasRefMatch[2];
365
+ const href = (_a = context.pagesToHrefs) === null || _a === void 0 ? void 0 : _a.call(context, ((_c = (_b = context.blockReferences) === null || _b === void 0 ? void 0 : _b.call(context, ref)) === null || _c === void 0 ? void 0 : _c.page) || "", ref);
366
+ if (href) {
367
+ return {
368
+ type: "link",
369
+ raw,
370
+ href,
371
+ text,
372
+ title: "alias",
373
+ };
374
+ }
375
+ else {
376
+ return {
377
+ type: "text",
378
+ raw,
379
+ text,
380
+ };
381
+ }
382
+ }
383
+ return false;
384
+ },
385
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
386
+ // @ts-ignore should acce
387
+ context: () => ({}),
388
+ },
389
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
390
+ // @ts-ignore should be optional
391
+ renderer: {
392
+ link(href, title, text) {
393
+ var _a;
394
+ if (title === "alias") {
395
+ const html = this.link(href, undefined, text);
396
+ if (html) {
397
+ return html.replace("href=", 'class="rm-alias" href=');
398
+ }
399
+ }
400
+ else if (title === null || title === void 0 ? void 0 : title.startsWith("tag:")) {
401
+ const html = this.link(href, undefined, text);
402
+ if (html) {
403
+ return html.replace("href=", `class="rm-page-ref" data-tag="${title.substring(4)}" href=`);
404
+ }
405
+ }
406
+ else if (title === "highlight") {
407
+ return `<span class="rm-highlight">${text}</span>`;
408
+ }
409
+ else if (title === "blockquote") {
410
+ return `<blockquote class="rm-bq">${text}</blockquote>`;
411
+ }
412
+ else if (href.startsWith("https://twitter.com") && text === href) {
413
+ const tweetId = (_a = TWEET_STATUS_REGEX.exec(href)) === null || _a === void 0 ? void 0 : _a[1];
414
+ const options = {
415
+ dnt: false,
416
+ frame: false,
417
+ hideCard: false,
418
+ hideThread: true,
419
+ id: tweetId,
420
+ lang: "en",
421
+ theme: "light",
422
+ width: "550px",
423
+ };
424
+ if (tweetId) {
425
+ return `<div>
426
+ <iframe scrolling="no" frameborder="0" allowtransparency="true" allowfullscreen="true" class="" style="position: static; visibility: visible; width: ${options.width}; height: ${options.width}; display: block; flex-grow: 1; pointer-events: auto;" title="Twitter Tweet" src="https://platform.twitter.com/embed/Tweet.html?${new URLSearchParams(Object.fromEntries(Object.entries(options).map(([k, v]) => [k, `${v}`])))
427
+ .toString()
428
+ .replace(/&/g, "&amp;")}" data-tweet-id="${tweetId}"></iframe>
429
+ <script>const cs = document.currentScript;
430
+ const iframe = cs.previousElementSibling;
431
+ const tweetId = iframe.getAttribute('data-tweet-id');
432
+ const renderTweet = () => {
433
+ const container = cs.parentElement;
434
+ container.style.height = '${options.width}';
435
+ window['twttr'].ready().then(({widgets}) =>
436
+ widgets.createTweetEmbed(tweetId, cs.parentElement, ${JSON.stringify(options)})).then(() => {
437
+ iframe.remove();
438
+ cs.remove();
439
+ container.style.height = 'unset';
440
+ });
441
+ }
442
+ const twttr = window['twttr']
443
+ if (!(twttr && twttr.ready)) {
444
+ var s = document.createElement('script');
445
+ s.setAttribute('src', "https://platform.twitter.com/widgets.js");
446
+ s.onload = renderTweet;
447
+ document.body.appendChild(s);
448
+ } else {
449
+ renderTweet()
450
+ }
451
+ </script>
452
+ </div>`;
453
+ }
454
+ }
455
+ return false;
456
+ },
457
+ codespan(code) {
458
+ const match = CODESPAN_REGEX.exec(code);
459
+ if (match) {
460
+ const nodes = refractor.highlight(match[2], match[1]);
461
+ return `<pre><code class="language-${match[1]}">${toHtml(
462
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
463
+ //@ts-ignore
464
+ nodes)}</code></pre>`;
465
+ }
466
+ return false;
467
+ },
468
+ strong: (text) => `<span class="rm-bold">${text}</span>`,
469
+ em: (text) => `<em class="rm-italics">${text}</em>`,
470
+ html(text) {
471
+ var _a, _b, _c, _d, _e, _f;
472
+ if (TODO_REGEX.test(text)) {
473
+ return RENDERED_TODO;
474
+ }
475
+ else if (DONE_REGEX.test(text)) {
476
+ return RENDERED_DONE;
477
+ }
478
+ else if (HR_REGEX.test(text)) {
479
+ return "<hr>";
480
+ }
481
+ else if (IFRAME_REGEX.test(text)) {
482
+ const match = IFRAME_REGEX.exec(text);
483
+ return `<div class="rm-iframe-container"><iframe src="${match === null || match === void 0 ? void 0 : match[1]}" frameborder="0" class="rm-iframe"></iframe></div>`;
484
+ }
485
+ else if (HIGHLIGHT_REGEX.test(text)) {
486
+ const match = HIGHLIGHT_REGEX.exec(text);
487
+ return `<span class="rm-highlight">${match === null || match === void 0 ? void 0 : match[1]}</span>`;
488
+ }
489
+ else if (BUTTON_REGEX.test(text)) {
490
+ const match = ((_a = BUTTON_REGEX.exec(text)) === null || _a === void 0 ? void 0 : _a[1]) || "";
491
+ const afterColon = (_b = BUTTON_REGEX.exec(text)) === null || _b === void 0 ? void 0 : _b[2];
492
+ const context = this.context();
493
+ return (((_c = context.components) === null || _c === void 0 ? void 0 : _c.call(context, match, afterColon)) ||
494
+ defaultComponents(match, afterColon) ||
495
+ `<button class="bp3-button">${match}</button>`);
496
+ }
497
+ else if (BLOCK_REF_REGEX.test(text)) {
498
+ const match = ((_d = BLOCK_REF_REGEX.exec(text)) === null || _d === void 0 ? void 0 : _d[1]) || "";
499
+ const context = this.context();
500
+ const blockRefInfo = (_e = context.blockReferences) === null || _e === void 0 ? void 0 : _e.call(context, match);
501
+ if (!blockRefInfo) {
502
+ return text;
503
+ }
504
+ const page = blockRefInfo.page || "";
505
+ const blockText = parseInline(blockRefInfo.text || "", context);
506
+ if (!page)
507
+ return blockText;
508
+ const href = (_f = context.pagesToHrefs) === null || _f === void 0 ? void 0 : _f.call(context, page, match);
509
+ return `<a class="rm-block-ref" href="${href}">${blockText}</a>`;
510
+ }
511
+ else if (BQ_REGEX.test(text)) {
512
+ const match = BQ_REGEX.exec(text);
513
+ return `<blockquote class="rm-bq">${match === null || match === void 0 ? void 0 : match[1]}</blockquote>`;
514
+ }
515
+ else {
516
+ return text;
517
+ }
518
+ },
519
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
520
+ // @ts-ignore should acce
521
+ context: () => ({}),
522
+ },
523
+ };
524
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
525
+ // @ts-ignore should accept boolean return value
526
+ marked.use(opts);
527
+ const contextualize = (method) => (text, context) => {
528
+ opts.tokenizer.context = () => (Object.assign({}, context));
529
+ opts.renderer.context = () => (Object.assign({}, context));
530
+ lastSrc = "";
531
+ return method(text);
532
+ };
533
+ export const inlineLexer = contextualize((s) =>
534
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
535
+ //@ts-ignore types are out of date
536
+ Lexer.lexInline(s));
537
+ export const lexer = contextualize(marked.lexer);
538
+ export const parseInline = contextualize(marked.parseInline);
539
+ export default contextualize(marked);
540
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/marked/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "roamjs-components",
3
3
  "description": "Description for roamjs-components",
4
- "version": "0.29.4",
4
+ "version": "0.32.2",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
7
7
  "scripts": {
@@ -19,8 +19,15 @@
19
19
  "license": "MIT",
20
20
  "files": [
21
21
  "/components",
22
+ "/date",
23
+ "/dom",
24
+ "/events",
22
25
  "/hooks",
23
- "/util"
26
+ "/marked",
27
+ "/queries",
28
+ "/types",
29
+ "/util",
30
+ "/writes"
24
31
  ],
25
32
  "peerDependencies": {
26
33
  "react": "^16.8.0 || ^17",
@@ -33,12 +40,16 @@
33
40
  "axios": "^0.21.4",
34
41
  "color": "^4.0.1",
35
42
  "crypto-js": "^4.1.1",
43
+ "date-fns": "^2.27.0",
36
44
  "fuzzy": "^0.1.3",
45
+ "hast-util-to-html": "^7.1.3",
37
46
  "markdown-to-jsx": "^7.1.3",
47
+ "marked": "^2.0.0",
38
48
  "randomstring": "^1.2.1",
39
49
  "react": "^17.0.2",
40
50
  "react-dom": "^17.0.2",
41
- "roam-client": "^1.94.9"
51
+ "refractor": "^3.3.1",
52
+ "xregexp": "^5.0.1"
42
53
  },
43
54
  "devDependencies": {
44
55
  "@testing-library/jest-dom": "^5.13.0",
@@ -52,6 +63,7 @@
52
63
  "@types/randomstring": "^1.1.7",
53
64
  "@types/react": "^17.0.9",
54
65
  "@types/react-dom": "^17.0.6",
66
+ "@types/refractor": "^3.0.2",
55
67
  "@typescript-eslint/eslint-plugin": "^5.5.0",
56
68
  "@typescript-eslint/parser": "^5.5.0",
57
69
  "@vercel/ncc": "^0.28.6",
@@ -0,0 +1,2 @@
1
+ declare const getAllBlockUids: () => string[];
2
+ export default getAllBlockUids;
@@ -0,0 +1,5 @@
1
+ const getAllBlockUids = () => window.roamAlphaAPI
2
+ .q(`[:find ?u :where [?e :block/uid ?u] [?e :block/string]]`)
3
+ .map((f) => f[0]);
4
+ export default getAllBlockUids;
5
+ //# sourceMappingURL=getAllBlockUids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAllBlockUids.js","sourceRoot":"","sources":["../src/queries/getAllBlockUids.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,GAAa,EAAE,CACrC,MAAM,CAAC,YAAY;KAChB,CAAC,CAAC,yDAAyD,CAAC;KAC5D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAW,CAAC,CAAC;AAEhC,eAAe,eAAe,CAAC"}
@@ -0,0 +1,5 @@
1
+ declare const getAllBlockUidsAndTexts: () => {
2
+ uid: string;
3
+ text: string;
4
+ }[];
5
+ export default getAllBlockUidsAndTexts;
@@ -0,0 +1,5 @@
1
+ const getAllBlockUidsAndTexts = () => window.roamAlphaAPI
2
+ .q(`[:find ?u ?s :where [?e :block/uid ?u] [?e :block/string ?s]]`)
3
+ .map((f) => ({ uid: f[0], text: f[1] }));
4
+ export default getAllBlockUidsAndTexts;
5
+ //# sourceMappingURL=getAllBlockUidsAndTexts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAllBlockUidsAndTexts.js","sourceRoot":"","sources":["../src/queries/getAllBlockUidsAndTexts.ts"],"names":[],"mappings":"AAAA,MAAM,uBAAuB,GAAG,GAAoC,EAAE,CACpE,MAAM,CAAC,YAAY;KAChB,CAAC,CAAC,+DAA+D,CAAC;KAClE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAW,EAAE,CAAC,CAAC,CAAC;AAEjE,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const getAllPageNames: () => string[];
2
+ export default getAllPageNames;
@@ -0,0 +1,5 @@
1
+ const getAllPageNames = () => window.roamAlphaAPI
2
+ .q("[:find ?s :where [?e :node/title ?s]]")
3
+ .map((b) => b[0]);
4
+ export default getAllPageNames;
5
+ //# sourceMappingURL=getAllPageNames.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAllPageNames.js","sourceRoot":"","sources":["../src/queries/getAllPageNames.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,GAAa,EAAE,CACrC,MAAM,CAAC,YAAY;KAChB,CAAC,CAAC,uCAAuC,CAAC;KAC1C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAW,CAAC,CAAC;AAEhC,eAAe,eAAe,CAAC"}