@keystrokehq/notion 0.0.16 → 0.1.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 (407) hide show
  1. package/README.md +11 -41
  2. package/dist/action.cjs +21 -0
  3. package/dist/action.cjs.map +1 -0
  4. package/dist/action.mjs +21 -0
  5. package/dist/action.mjs.map +1 -0
  6. package/dist/actions/add-multiple-page-content.cjs +80 -0
  7. package/dist/actions/add-multiple-page-content.cjs.map +1 -0
  8. package/dist/actions/add-multiple-page-content.d.cts +94 -0
  9. package/dist/actions/add-multiple-page-content.d.cts.map +1 -0
  10. package/dist/actions/add-multiple-page-content.d.mts +94 -0
  11. package/dist/actions/add-multiple-page-content.d.mts.map +1 -0
  12. package/dist/actions/add-multiple-page-content.mjs +79 -0
  13. package/dist/actions/add-multiple-page-content.mjs.map +1 -0
  14. package/dist/actions/append-code-blocks.cjs +446 -0
  15. package/dist/actions/append-code-blocks.cjs.map +1 -0
  16. package/dist/actions/append-code-blocks.d.cts +855 -0
  17. package/dist/actions/append-code-blocks.d.cts.map +1 -0
  18. package/dist/actions/append-code-blocks.d.mts +855 -0
  19. package/dist/actions/append-code-blocks.d.mts.map +1 -0
  20. package/dist/actions/append-code-blocks.mjs +445 -0
  21. package/dist/actions/append-code-blocks.mjs.map +1 -0
  22. package/dist/actions/append-layout-blocks.cjs +278 -0
  23. package/dist/actions/append-layout-blocks.cjs.map +1 -0
  24. package/dist/actions/append-layout-blocks.d.cts +648 -0
  25. package/dist/actions/append-layout-blocks.d.cts.map +1 -0
  26. package/dist/actions/append-layout-blocks.d.mts +648 -0
  27. package/dist/actions/append-layout-blocks.d.mts.map +1 -0
  28. package/dist/actions/append-layout-blocks.mjs +277 -0
  29. package/dist/actions/append-layout-blocks.mjs.map +1 -0
  30. package/dist/actions/append-media-blocks.cjs +491 -0
  31. package/dist/actions/append-media-blocks.cjs.map +1 -0
  32. package/dist/actions/append-media-blocks.d.cts +1002 -0
  33. package/dist/actions/append-media-blocks.d.cts.map +1 -0
  34. package/dist/actions/append-media-blocks.d.mts +1002 -0
  35. package/dist/actions/append-media-blocks.d.mts.map +1 -0
  36. package/dist/actions/append-media-blocks.mjs +490 -0
  37. package/dist/actions/append-media-blocks.mjs.map +1 -0
  38. package/dist/actions/append-table-blocks.cjs +267 -0
  39. package/dist/actions/append-table-blocks.cjs.map +1 -0
  40. package/dist/actions/append-table-blocks.d.cts +630 -0
  41. package/dist/actions/append-table-blocks.d.cts.map +1 -0
  42. package/dist/actions/append-table-blocks.d.mts +630 -0
  43. package/dist/actions/append-table-blocks.d.mts.map +1 -0
  44. package/dist/actions/append-table-blocks.mjs +266 -0
  45. package/dist/actions/append-table-blocks.mjs.map +1 -0
  46. package/dist/actions/append-task-blocks.cjs +420 -0
  47. package/dist/actions/append-task-blocks.cjs.map +1 -0
  48. package/dist/actions/append-task-blocks.d.cts +832 -0
  49. package/dist/actions/append-task-blocks.d.cts.map +1 -0
  50. package/dist/actions/append-task-blocks.d.mts +832 -0
  51. package/dist/actions/append-task-blocks.d.mts.map +1 -0
  52. package/dist/actions/append-task-blocks.mjs +419 -0
  53. package/dist/actions/append-task-blocks.mjs.map +1 -0
  54. package/dist/actions/append-text-blocks.cjs +604 -0
  55. package/dist/actions/append-text-blocks.cjs.map +1 -0
  56. package/dist/actions/append-text-blocks.d.cts +1086 -0
  57. package/dist/actions/append-text-blocks.d.cts.map +1 -0
  58. package/dist/actions/append-text-blocks.d.mts +1086 -0
  59. package/dist/actions/append-text-blocks.d.mts.map +1 -0
  60. package/dist/actions/append-text-blocks.mjs +603 -0
  61. package/dist/actions/append-text-blocks.mjs.map +1 -0
  62. package/dist/actions/archive-notion-page.cjs +104 -0
  63. package/dist/actions/archive-notion-page.cjs.map +1 -0
  64. package/dist/actions/archive-notion-page.d.cts +84 -0
  65. package/dist/actions/archive-notion-page.d.cts.map +1 -0
  66. package/dist/actions/archive-notion-page.d.mts +84 -0
  67. package/dist/actions/archive-notion-page.d.mts.map +1 -0
  68. package/dist/actions/archive-notion-page.mjs +103 -0
  69. package/dist/actions/archive-notion-page.mjs.map +1 -0
  70. package/dist/actions/create-comment.cjs +45 -0
  71. package/dist/actions/create-comment.cjs.map +1 -0
  72. package/dist/actions/create-comment.d.cts +52 -0
  73. package/dist/actions/create-comment.d.cts.map +1 -0
  74. package/dist/actions/create-comment.d.mts +52 -0
  75. package/dist/actions/create-comment.d.mts.map +1 -0
  76. package/dist/actions/create-comment.mjs +42 -0
  77. package/dist/actions/create-comment.mjs.map +1 -0
  78. package/dist/actions/create-database.cjs +125 -0
  79. package/dist/actions/create-database.cjs.map +1 -0
  80. package/dist/actions/create-database.d.cts +145 -0
  81. package/dist/actions/create-database.d.cts.map +1 -0
  82. package/dist/actions/create-database.d.mts +145 -0
  83. package/dist/actions/create-database.d.mts.map +1 -0
  84. package/dist/actions/create-database.mjs +124 -0
  85. package/dist/actions/create-database.mjs.map +1 -0
  86. package/dist/actions/create-file-upload.cjs +45 -0
  87. package/dist/actions/create-file-upload.cjs.map +1 -0
  88. package/dist/actions/create-file-upload.d.cts +44 -0
  89. package/dist/actions/create-file-upload.d.cts.map +1 -0
  90. package/dist/actions/create-file-upload.d.mts +44 -0
  91. package/dist/actions/create-file-upload.d.mts.map +1 -0
  92. package/dist/actions/create-file-upload.mjs +42 -0
  93. package/dist/actions/create-file-upload.mjs.map +1 -0
  94. package/dist/actions/create-notion-page.cjs +94 -0
  95. package/dist/actions/create-notion-page.cjs.map +1 -0
  96. package/dist/actions/create-notion-page.d.cts +89 -0
  97. package/dist/actions/create-notion-page.d.cts.map +1 -0
  98. package/dist/actions/create-notion-page.d.mts +89 -0
  99. package/dist/actions/create-notion-page.d.mts.map +1 -0
  100. package/dist/actions/create-notion-page.mjs +93 -0
  101. package/dist/actions/create-notion-page.mjs.map +1 -0
  102. package/dist/actions/delete-block.cjs +411 -0
  103. package/dist/actions/delete-block.cjs.map +1 -0
  104. package/dist/actions/delete-block.d.cts +2187 -0
  105. package/dist/actions/delete-block.d.cts.map +1 -0
  106. package/dist/actions/delete-block.d.mts +2187 -0
  107. package/dist/actions/delete-block.d.mts.map +1 -0
  108. package/dist/actions/delete-block.mjs +410 -0
  109. package/dist/actions/delete-block.mjs.map +1 -0
  110. package/dist/actions/duplicate-page.cjs +119 -0
  111. package/dist/actions/duplicate-page.cjs.map +1 -0
  112. package/dist/actions/duplicate-page.d.cts +96 -0
  113. package/dist/actions/duplicate-page.d.cts.map +1 -0
  114. package/dist/actions/duplicate-page.d.mts +96 -0
  115. package/dist/actions/duplicate-page.d.mts.map +1 -0
  116. package/dist/actions/duplicate-page.mjs +118 -0
  117. package/dist/actions/duplicate-page.mjs.map +1 -0
  118. package/dist/actions/fetch-all-block-contents.cjs +270 -0
  119. package/dist/actions/fetch-all-block-contents.cjs.map +1 -0
  120. package/dist/actions/fetch-all-block-contents.d.cts +44 -0
  121. package/dist/actions/fetch-all-block-contents.d.cts.map +1 -0
  122. package/dist/actions/fetch-all-block-contents.d.mts +44 -0
  123. package/dist/actions/fetch-all-block-contents.d.mts.map +1 -0
  124. package/dist/actions/fetch-all-block-contents.mjs +269 -0
  125. package/dist/actions/fetch-all-block-contents.mjs.map +1 -0
  126. package/dist/actions/fetch-block-contents.cjs +232 -0
  127. package/dist/actions/fetch-block-contents.cjs.map +1 -0
  128. package/dist/actions/fetch-block-contents.d.cts +693 -0
  129. package/dist/actions/fetch-block-contents.d.cts.map +1 -0
  130. package/dist/actions/fetch-block-contents.d.mts +693 -0
  131. package/dist/actions/fetch-block-contents.d.mts.map +1 -0
  132. package/dist/actions/fetch-block-contents.mjs +231 -0
  133. package/dist/actions/fetch-block-contents.mjs.map +1 -0
  134. package/dist/actions/fetch-block-metadata.cjs +406 -0
  135. package/dist/actions/fetch-block-metadata.cjs.map +1 -0
  136. package/dist/actions/fetch-block-metadata.d.cts +2109 -0
  137. package/dist/actions/fetch-block-metadata.d.cts.map +1 -0
  138. package/dist/actions/fetch-block-metadata.d.mts +2109 -0
  139. package/dist/actions/fetch-block-metadata.d.mts.map +1 -0
  140. package/dist/actions/fetch-block-metadata.mjs +405 -0
  141. package/dist/actions/fetch-block-metadata.mjs.map +1 -0
  142. package/dist/actions/fetch-comments.cjs +136 -0
  143. package/dist/actions/fetch-comments.cjs.map +1 -0
  144. package/dist/actions/fetch-comments.d.cts +154 -0
  145. package/dist/actions/fetch-comments.d.cts.map +1 -0
  146. package/dist/actions/fetch-comments.d.mts +154 -0
  147. package/dist/actions/fetch-comments.d.mts.map +1 -0
  148. package/dist/actions/fetch-comments.mjs +135 -0
  149. package/dist/actions/fetch-comments.mjs.map +1 -0
  150. package/dist/actions/fetch-data.cjs +227 -0
  151. package/dist/actions/fetch-data.cjs.map +1 -0
  152. package/dist/actions/fetch-data.d.cts +600 -0
  153. package/dist/actions/fetch-data.d.cts.map +1 -0
  154. package/dist/actions/fetch-data.d.mts +600 -0
  155. package/dist/actions/fetch-data.d.mts.map +1 -0
  156. package/dist/actions/fetch-data.mjs +226 -0
  157. package/dist/actions/fetch-data.mjs.map +1 -0
  158. package/dist/actions/fetch-database.cjs +84 -0
  159. package/dist/actions/fetch-database.cjs.map +1 -0
  160. package/dist/actions/fetch-database.d.cts +95 -0
  161. package/dist/actions/fetch-database.d.cts.map +1 -0
  162. package/dist/actions/fetch-database.d.mts +95 -0
  163. package/dist/actions/fetch-database.d.mts.map +1 -0
  164. package/dist/actions/fetch-database.mjs +83 -0
  165. package/dist/actions/fetch-database.mjs.map +1 -0
  166. package/dist/actions/fetch-row.cjs +133 -0
  167. package/dist/actions/fetch-row.cjs.map +1 -0
  168. package/dist/actions/fetch-row.d.cts +157 -0
  169. package/dist/actions/fetch-row.d.cts.map +1 -0
  170. package/dist/actions/fetch-row.d.mts +157 -0
  171. package/dist/actions/fetch-row.d.mts.map +1 -0
  172. package/dist/actions/fetch-row.mjs +132 -0
  173. package/dist/actions/fetch-row.mjs.map +1 -0
  174. package/dist/actions/get-about-user.cjs +46 -0
  175. package/dist/actions/get-about-user.cjs.map +1 -0
  176. package/dist/actions/get-about-user.d.cts +50 -0
  177. package/dist/actions/get-about-user.d.cts.map +1 -0
  178. package/dist/actions/get-about-user.d.mts +50 -0
  179. package/dist/actions/get-about-user.d.mts.map +1 -0
  180. package/dist/actions/get-about-user.mjs +45 -0
  181. package/dist/actions/get-about-user.mjs.map +1 -0
  182. package/dist/actions/get-page-markdown.cjs +25 -0
  183. package/dist/actions/get-page-markdown.cjs.map +1 -0
  184. package/dist/actions/get-page-markdown.d.cts +21 -0
  185. package/dist/actions/get-page-markdown.d.cts.map +1 -0
  186. package/dist/actions/get-page-markdown.d.mts +21 -0
  187. package/dist/actions/get-page-markdown.d.mts.map +1 -0
  188. package/dist/actions/get-page-markdown.mjs +22 -0
  189. package/dist/actions/get-page-markdown.mjs.map +1 -0
  190. package/dist/actions/get-page-property-action.cjs +21 -0
  191. package/dist/actions/get-page-property-action.cjs.map +1 -0
  192. package/dist/actions/get-page-property-action.d.cts +19 -0
  193. package/dist/actions/get-page-property-action.d.cts.map +1 -0
  194. package/dist/actions/get-page-property-action.d.mts +19 -0
  195. package/dist/actions/get-page-property-action.d.mts.map +1 -0
  196. package/dist/actions/get-page-property-action.mjs +18 -0
  197. package/dist/actions/get-page-property-action.mjs.map +1 -0
  198. package/dist/actions/index.cjs +91 -0
  199. package/dist/actions/index.d.cts +46 -0
  200. package/dist/actions/index.d.mts +46 -0
  201. package/dist/actions/index.mjs +46 -0
  202. package/dist/actions/insert-row-database.cjs +176 -0
  203. package/dist/actions/insert-row-database.cjs.map +1 -0
  204. package/dist/actions/insert-row-database.d.cts +169 -0
  205. package/dist/actions/insert-row-database.d.cts.map +1 -0
  206. package/dist/actions/insert-row-database.d.mts +169 -0
  207. package/dist/actions/insert-row-database.d.mts.map +1 -0
  208. package/dist/actions/insert-row-database.mjs +175 -0
  209. package/dist/actions/insert-row-database.mjs.map +1 -0
  210. package/dist/actions/insert-row-from-nl.cjs +27 -0
  211. package/dist/actions/insert-row-from-nl.cjs.map +1 -0
  212. package/dist/actions/insert-row-from-nl.d.cts +25 -0
  213. package/dist/actions/insert-row-from-nl.d.cts.map +1 -0
  214. package/dist/actions/insert-row-from-nl.d.mts +25 -0
  215. package/dist/actions/insert-row-from-nl.d.mts.map +1 -0
  216. package/dist/actions/insert-row-from-nl.mjs +24 -0
  217. package/dist/actions/insert-row-from-nl.mjs.map +1 -0
  218. package/dist/actions/list-data-source-templates.cjs +29 -0
  219. package/dist/actions/list-data-source-templates.cjs.map +1 -0
  220. package/dist/actions/list-data-source-templates.d.cts +25 -0
  221. package/dist/actions/list-data-source-templates.d.cts.map +1 -0
  222. package/dist/actions/list-data-source-templates.d.mts +25 -0
  223. package/dist/actions/list-data-source-templates.d.mts.map +1 -0
  224. package/dist/actions/list-data-source-templates.mjs +28 -0
  225. package/dist/actions/list-data-source-templates.mjs.map +1 -0
  226. package/dist/actions/list-file-uploads.cjs +43 -0
  227. package/dist/actions/list-file-uploads.cjs.map +1 -0
  228. package/dist/actions/list-file-uploads.d.cts +38 -0
  229. package/dist/actions/list-file-uploads.d.cts.map +1 -0
  230. package/dist/actions/list-file-uploads.d.mts +38 -0
  231. package/dist/actions/list-file-uploads.d.mts.map +1 -0
  232. package/dist/actions/list-file-uploads.mjs +42 -0
  233. package/dist/actions/list-file-uploads.mjs.map +1 -0
  234. package/dist/actions/list-users.cjs +58 -0
  235. package/dist/actions/list-users.cjs.map +1 -0
  236. package/dist/actions/list-users.d.cts +64 -0
  237. package/dist/actions/list-users.d.cts.map +1 -0
  238. package/dist/actions/list-users.d.mts +64 -0
  239. package/dist/actions/list-users.d.mts.map +1 -0
  240. package/dist/actions/list-users.mjs +57 -0
  241. package/dist/actions/list-users.mjs.map +1 -0
  242. package/dist/actions/move-page.cjs +110 -0
  243. package/dist/actions/move-page.cjs.map +1 -0
  244. package/dist/actions/move-page.d.cts +96 -0
  245. package/dist/actions/move-page.d.cts.map +1 -0
  246. package/dist/actions/move-page.d.mts +96 -0
  247. package/dist/actions/move-page.d.mts.map +1 -0
  248. package/dist/actions/move-page.mjs +109 -0
  249. package/dist/actions/move-page.mjs.map +1 -0
  250. package/dist/actions/query-data-source.cjs +118 -0
  251. package/dist/actions/query-data-source.cjs.map +1 -0
  252. package/dist/actions/query-data-source.d.cts +165 -0
  253. package/dist/actions/query-data-source.d.cts.map +1 -0
  254. package/dist/actions/query-data-source.d.mts +165 -0
  255. package/dist/actions/query-data-source.d.mts.map +1 -0
  256. package/dist/actions/query-data-source.mjs +117 -0
  257. package/dist/actions/query-data-source.mjs.map +1 -0
  258. package/dist/actions/query-database-with-filter.cjs +172 -0
  259. package/dist/actions/query-database-with-filter.cjs.map +1 -0
  260. package/dist/actions/query-database-with-filter.d.cts +220 -0
  261. package/dist/actions/query-database-with-filter.d.cts.map +1 -0
  262. package/dist/actions/query-database-with-filter.d.mts +220 -0
  263. package/dist/actions/query-database-with-filter.d.mts.map +1 -0
  264. package/dist/actions/query-database-with-filter.mjs +171 -0
  265. package/dist/actions/query-database-with-filter.mjs.map +1 -0
  266. package/dist/actions/query-database.cjs +171 -0
  267. package/dist/actions/query-database.cjs.map +1 -0
  268. package/dist/actions/query-database.d.cts +214 -0
  269. package/dist/actions/query-database.d.cts.map +1 -0
  270. package/dist/actions/query-database.d.mts +214 -0
  271. package/dist/actions/query-database.d.mts.map +1 -0
  272. package/dist/actions/query-database.mjs +170 -0
  273. package/dist/actions/query-database.mjs.map +1 -0
  274. package/dist/actions/replace-page-content.cjs +1175 -0
  275. package/dist/actions/replace-page-content.cjs.map +1 -0
  276. package/dist/actions/replace-page-content.d.cts +1712 -0
  277. package/dist/actions/replace-page-content.d.cts.map +1 -0
  278. package/dist/actions/replace-page-content.d.mts +1712 -0
  279. package/dist/actions/replace-page-content.d.mts.map +1 -0
  280. package/dist/actions/replace-page-content.mjs +1172 -0
  281. package/dist/actions/replace-page-content.mjs.map +1 -0
  282. package/dist/actions/retrieve-comment.cjs +16 -0
  283. package/dist/actions/retrieve-comment.cjs.map +1 -0
  284. package/dist/actions/retrieve-comment.d.cts +13 -0
  285. package/dist/actions/retrieve-comment.d.cts.map +1 -0
  286. package/dist/actions/retrieve-comment.d.mts +13 -0
  287. package/dist/actions/retrieve-comment.d.mts.map +1 -0
  288. package/dist/actions/retrieve-comment.mjs +13 -0
  289. package/dist/actions/retrieve-comment.mjs.map +1 -0
  290. package/dist/actions/retrieve-database-property.cjs +80 -0
  291. package/dist/actions/retrieve-database-property.cjs.map +1 -0
  292. package/dist/actions/retrieve-database-property.d.cts +84 -0
  293. package/dist/actions/retrieve-database-property.d.cts.map +1 -0
  294. package/dist/actions/retrieve-database-property.d.mts +84 -0
  295. package/dist/actions/retrieve-database-property.d.mts.map +1 -0
  296. package/dist/actions/retrieve-database-property.mjs +79 -0
  297. package/dist/actions/retrieve-database-property.mjs.map +1 -0
  298. package/dist/actions/retrieve-file-upload.cjs +34 -0
  299. package/dist/actions/retrieve-file-upload.cjs.map +1 -0
  300. package/dist/actions/retrieve-file-upload.d.cts +31 -0
  301. package/dist/actions/retrieve-file-upload.d.cts.map +1 -0
  302. package/dist/actions/retrieve-file-upload.d.mts +31 -0
  303. package/dist/actions/retrieve-file-upload.d.mts.map +1 -0
  304. package/dist/actions/retrieve-file-upload.mjs +31 -0
  305. package/dist/actions/retrieve-file-upload.mjs.map +1 -0
  306. package/dist/actions/retrieve-page.cjs +129 -0
  307. package/dist/actions/retrieve-page.cjs.map +1 -0
  308. package/dist/actions/retrieve-page.d.cts +145 -0
  309. package/dist/actions/retrieve-page.d.cts.map +1 -0
  310. package/dist/actions/retrieve-page.d.mts +145 -0
  311. package/dist/actions/retrieve-page.d.mts.map +1 -0
  312. package/dist/actions/retrieve-page.mjs +128 -0
  313. package/dist/actions/retrieve-page.mjs.map +1 -0
  314. package/dist/actions/search-notion-page.cjs +245 -0
  315. package/dist/actions/search-notion-page.cjs.map +1 -0
  316. package/dist/actions/search-notion-page.d.cts +757 -0
  317. package/dist/actions/search-notion-page.d.cts.map +1 -0
  318. package/dist/actions/search-notion-page.d.mts +757 -0
  319. package/dist/actions/search-notion-page.d.mts.map +1 -0
  320. package/dist/actions/search-notion-page.mjs +244 -0
  321. package/dist/actions/search-notion-page.mjs.map +1 -0
  322. package/dist/actions/send-file-upload.cjs +37 -0
  323. package/dist/actions/send-file-upload.cjs.map +1 -0
  324. package/dist/actions/send-file-upload.d.cts +39 -0
  325. package/dist/actions/send-file-upload.d.cts.map +1 -0
  326. package/dist/actions/send-file-upload.d.mts +39 -0
  327. package/dist/actions/send-file-upload.d.mts.map +1 -0
  328. package/dist/actions/send-file-upload.mjs +34 -0
  329. package/dist/actions/send-file-upload.mjs.map +1 -0
  330. package/dist/actions/update-block.cjs +250 -0
  331. package/dist/actions/update-block.cjs.map +1 -0
  332. package/dist/actions/update-block.d.cts +570 -0
  333. package/dist/actions/update-block.d.cts.map +1 -0
  334. package/dist/actions/update-block.d.mts +570 -0
  335. package/dist/actions/update-block.d.mts.map +1 -0
  336. package/dist/actions/update-block.mjs +249 -0
  337. package/dist/actions/update-block.mjs.map +1 -0
  338. package/dist/actions/update-page.cjs +115 -0
  339. package/dist/actions/update-page.cjs.map +1 -0
  340. package/dist/actions/update-page.d.cts +109 -0
  341. package/dist/actions/update-page.d.cts.map +1 -0
  342. package/dist/actions/update-page.d.mts +109 -0
  343. package/dist/actions/update-page.d.mts.map +1 -0
  344. package/dist/actions/update-page.mjs +114 -0
  345. package/dist/actions/update-page.mjs.map +1 -0
  346. package/dist/actions/update-row-database.cjs +149 -0
  347. package/dist/actions/update-row-database.cjs.map +1 -0
  348. package/dist/actions/update-row-database.d.cts +132 -0
  349. package/dist/actions/update-row-database.d.cts.map +1 -0
  350. package/dist/actions/update-row-database.d.mts +132 -0
  351. package/dist/actions/update-row-database.d.mts.map +1 -0
  352. package/dist/actions/update-row-database.mjs +148 -0
  353. package/dist/actions/update-row-database.mjs.map +1 -0
  354. package/dist/actions/update-schema-database.cjs +198 -0
  355. package/dist/actions/update-schema-database.cjs.map +1 -0
  356. package/dist/actions/update-schema-database.d.cts +320 -0
  357. package/dist/actions/update-schema-database.d.cts.map +1 -0
  358. package/dist/actions/update-schema-database.d.mts +320 -0
  359. package/dist/actions/update-schema-database.d.mts.map +1 -0
  360. package/dist/actions/update-schema-database.mjs +197 -0
  361. package/dist/actions/update-schema-database.mjs.map +1 -0
  362. package/dist/actions/upsert-row-database.cjs +141 -0
  363. package/dist/actions/upsert-row-database.cjs.map +1 -0
  364. package/dist/actions/upsert-row-database.d.cts +224 -0
  365. package/dist/actions/upsert-row-database.d.cts.map +1 -0
  366. package/dist/actions/upsert-row-database.d.mts +224 -0
  367. package/dist/actions/upsert-row-database.d.mts.map +1 -0
  368. package/dist/actions/upsert-row-database.mjs +140 -0
  369. package/dist/actions/upsert-row-database.mjs.map +1 -0
  370. package/dist/app.cjs +9 -0
  371. package/dist/app.cjs.map +1 -0
  372. package/dist/app.d.cts +5 -0
  373. package/dist/app.d.cts.map +1 -0
  374. package/dist/app.d.mts +5 -0
  375. package/dist/app.d.mts.map +1 -0
  376. package/dist/app.mjs +10 -0
  377. package/dist/app.mjs.map +1 -0
  378. package/dist/catalog.cjs +15 -0
  379. package/dist/catalog.cjs.map +1 -0
  380. package/dist/catalog.d.cts +14 -0
  381. package/dist/catalog.d.cts.map +1 -0
  382. package/dist/catalog.d.mts +14 -0
  383. package/dist/catalog.d.mts.map +1 -0
  384. package/dist/catalog.mjs +15 -0
  385. package/dist/catalog.mjs.map +1 -0
  386. package/dist/execute.cjs +18 -0
  387. package/dist/execute.cjs.map +1 -0
  388. package/dist/execute.mjs +18 -0
  389. package/dist/execute.mjs.map +1 -0
  390. package/dist/index.cjs +96 -0
  391. package/dist/index.d.cts +48 -0
  392. package/dist/index.d.mts +48 -5
  393. package/dist/index.mjs +49 -7
  394. package/package.json +31 -53
  395. package/LICENSE +0 -21
  396. package/dist/credential-sets/index.d.mts +0 -2
  397. package/dist/credential-sets/index.mjs +0 -4
  398. package/dist/notion-webhook.credential-set-5tXWld_L.d.mts +0 -53
  399. package/dist/notion-webhook.credential-set-D_tczh8M.mjs +0 -25
  400. package/dist/notion.credential-set-BfA-EG9z.mjs +0 -44
  401. package/dist/operations/index.d.mts +0 -1104
  402. package/dist/operations/index.mjs +0 -32
  403. package/dist/schemas/index.d.mts +0 -190
  404. package/dist/schemas/index.mjs +0 -3
  405. package/dist/search-D4wvUAjS.mjs +0 -277
  406. package/dist/update-page.operation-6lf05oVs.d.mts +0 -1147
  407. package/dist/update-page.operation-BQWJrCll.mjs +0 -794
@@ -1,794 +0,0 @@
1
- import { t as notionCredentialSet } from "./notion.credential-set-BfA-EG9z.mjs";
2
- import { C as normalizeListMeta, E as notionListResponseSchema, O as notionSuccessResponseSchema, _ as notionUserSchema, a as notionDataSourceSchema, c as normalizePage, d as notionPageSchema, f as pageParentInputSchema, g as normalizeUser, h as notionCommentSchema, i as normalizeDataSource, l as normalizePagePropertyItem, m as normalizeComment, n as notionSearchResultSchema, o as normalizeBlock, p as commentTargetSchema, r as databaseDiscoverySchema, s as notionBlockSchema, t as normalizeSearchResult, u as notionPagePropertyItemSchema } from "./search-D4wvUAjS.mjs";
3
- import { Operation } from "@keystrokehq/core";
4
- import { z } from "zod";
5
- import { CredentialRevokedError } from "@keystrokehq/core/errors";
6
- import "@keystrokehq/core/trigger";
7
- import { Client } from "@notionhq/client";
8
-
9
- //#region ../../packages/integration-authoring/dist/index.mjs
10
- function isThenable(value) {
11
- return !!value && typeof value === "object" && "then" in value && typeof value.then === "function";
12
- }
13
- function createErrorNormalizingProxy(target, normalizeError, path = []) {
14
- return new Proxy(target, { get(obj, property, receiver) {
15
- const value = Reflect.get(obj, property, receiver);
16
- if (typeof value === "function") return (...args) => {
17
- try {
18
- const result = value.apply(obj, args);
19
- if (isThenable(result)) return result.then(void 0, (error) => {
20
- throw normalizeError(error, { methodPath: [...path, String(property)].join(".") });
21
- });
22
- return result;
23
- } catch (error) {
24
- throw normalizeError(error, { methodPath: [...path, String(property)].join(".") });
25
- }
26
- };
27
- if (value && typeof value === "object") return createErrorNormalizingProxy(value, normalizeError, [...path, String(property)]);
28
- return value;
29
- } });
30
- }
31
- const IntegrationConfigSchema = z.object({
32
- id: z.string().min(1),
33
- name: z.string().min(1),
34
- description: z.string().optional()
35
- });
36
-
37
- //#endregion
38
- //#region src/utils/client.ts
39
- const NOTION_API_VERSION = "2026-03-11";
40
- const NOTION_MAX_BLOCK_CHILDREN_PER_REQUEST = 100;
41
- const NOTION_MAX_RETRY_ATTEMPTS = 3;
42
- function getErrorStatus(error) {
43
- if (!(error instanceof Error)) return void 0;
44
- const record = error;
45
- return record.status ?? record.statusCode;
46
- }
47
- function getErrorCode(error) {
48
- if (!(error instanceof Error)) return void 0;
49
- return error.code;
50
- }
51
- function isAuthError(error) {
52
- const status = getErrorStatus(error);
53
- const code = getErrorCode(error);
54
- return status === 401 || code === "unauthorized";
55
- }
56
- function isRateLimitError(error) {
57
- return getErrorStatus(error) === 429 || getErrorCode(error) === "rate_limited";
58
- }
59
- function normalizeNotionError(error, context) {
60
- if (isAuthError(error)) return new CredentialRevokedError(notionCredentialSet.id, `Notion authentication failed while calling \`${context.methodPath}\`. The stored credentials for ${notionCredentialSet.id} may be revoked or expired.`);
61
- if (error instanceof Error) return new Error(`Notion API call failed while calling \`${context.methodPath}\`: ${error.message}`, { cause: error });
62
- return /* @__PURE__ */ new Error(`Notion API call failed while calling \`${context.methodPath}\`.`);
63
- }
64
- function wait(ms) {
65
- return new Promise((resolve) => {
66
- setTimeout(resolve, ms);
67
- });
68
- }
69
- function getRetryDelayMs(error, attempt) {
70
- if (error instanceof Error) {
71
- const retryAfter = error.headers?.["retry-after"];
72
- if (retryAfter) {
73
- const retryAfterSeconds = Number.parseInt(retryAfter, 10);
74
- if (!Number.isNaN(retryAfterSeconds)) return retryAfterSeconds * 1e3;
75
- }
76
- }
77
- return Math.min(2 ** attempt * 500, 5e3);
78
- }
79
- async function withRateLimitRetry(operation, maxAttempts = NOTION_MAX_RETRY_ATTEMPTS) {
80
- let attempt = 0;
81
- for (;;) try {
82
- return await operation();
83
- } catch (error) {
84
- attempt += 1;
85
- if (!isRateLimitError(error) || attempt >= maxAttempts) throw error;
86
- await wait(getRetryDelayMs(error, attempt));
87
- }
88
- }
89
- function createNotionClient(credentials) {
90
- return createErrorNormalizingProxy(new Client({
91
- auth: credentials.NOTION_ACCESS_TOKEN,
92
- notionVersion: NOTION_API_VERSION
93
- }), normalizeNotionError);
94
- }
95
- function chunkArray(items, chunkSize) {
96
- const chunks = [];
97
- for (let index = 0; index < items.length; index += chunkSize) chunks.push([...items.slice(index, index + chunkSize)]);
98
- return chunks;
99
- }
100
- async function listAllPaginatedResults(getPage) {
101
- const results = [];
102
- let nextCursor;
103
- do {
104
- const page = await withRateLimitRetry(() => getPage(nextCursor));
105
- results.push(...page.results);
106
- nextCursor = page.next_cursor ?? void 0;
107
- } while (nextCursor);
108
- return results;
109
- }
110
- async function appendBlockChildrenInChunks(client, blockId, children) {
111
- for (const chunk of chunkArray(children, NOTION_MAX_BLOCK_CHILDREN_PER_REQUEST)) await withRateLimitRetry(() => client.blocks.children.append({
112
- block_id: blockId,
113
- children: chunk
114
- }));
115
- }
116
- async function appendBlockChildrenAndReturnResults(client, blockId, children) {
117
- const results = (await withRateLimitRetry(() => client.blocks.children.append({
118
- block_id: blockId,
119
- children
120
- }))).results;
121
- if (!Array.isArray(results)) throw new Error("Notion append block children response did not include created blocks.");
122
- return results;
123
- }
124
-
125
- //#endregion
126
- //#region src/operations/append-block-children.operation.ts
127
- const appendBlockChildrenOperation = new Operation({
128
- credentialSets: [notionCredentialSet],
129
- id: "notion.append-notion-block-children",
130
- name: "Append Notion Block Children",
131
- description: "Append one or more child blocks to a Notion block or page",
132
- input: z.object({
133
- blockId: z.string().min(1),
134
- children: z.array(z.record(z.string(), z.unknown())).min(1)
135
- }),
136
- output: notionSuccessResponseSchema,
137
- needsApproval: true,
138
- run: async (input, context) => {
139
- await appendBlockChildrenInChunks(createNotionClient(context.credentials.notion), input.blockId, input.children);
140
- return { success: true };
141
- }
142
- });
143
-
144
- //#endregion
145
- //#region src/utils/shared.ts
146
- function buildPageParent(parent) {
147
- if (parent.dataSourceId) return {
148
- type: "data_source_id",
149
- data_source_id: parent.dataSourceId
150
- };
151
- if (parent.databaseId) return {
152
- type: "database_id",
153
- database_id: parent.databaseId
154
- };
155
- if (parent.pageId) return {
156
- type: "page_id",
157
- page_id: parent.pageId
158
- };
159
- throw new Error("Provide one of pageId, databaseId, or dataSourceId.");
160
- }
161
- function buildCommentTarget(input) {
162
- if (input.discussionId) return { discussion_id: input.discussionId };
163
- if (input.blockId) return { parent: {
164
- type: "block_id",
165
- block_id: input.blockId
166
- } };
167
- if (input.pageId) return { parent: {
168
- type: "page_id",
169
- page_id: input.pageId
170
- } };
171
- throw new Error("Provide one of pageId, blockId, or discussionId.");
172
- }
173
- function buildPlainTextRichText(content) {
174
- return [{
175
- type: "text",
176
- text: { content }
177
- }];
178
- }
179
- function buildPaginationInput(limit, startCursor) {
180
- return {
181
- ...limit !== void 0 ? { page_size: limit } : {},
182
- ...startCursor ? { start_cursor: startCursor } : {}
183
- };
184
- }
185
-
186
- //#endregion
187
- //#region src/utils/page-copy-helpers.ts
188
- const unsupportedCopyBlockTypes = new Set([
189
- "child_page",
190
- "child_database",
191
- "link_preview",
192
- "meeting_notes",
193
- "template",
194
- "unsupported"
195
- ]);
196
- function asRecord(value) {
197
- return typeof value === "object" && value !== null ? value : {};
198
- }
199
- function asString(value) {
200
- return typeof value === "string" && value.length > 0 ? value : void 0;
201
- }
202
- function sanitizeBlockValueForCreate(value) {
203
- if (Array.isArray(value)) return value.map((entry) => sanitizeBlockValueForCreate(entry));
204
- if (typeof value !== "object" || value === null) return value;
205
- const sanitized = {};
206
- for (const [key, nestedValue] of Object.entries(value)) {
207
- if (key === "children" || key === "plain_text" || key === "href") continue;
208
- if (nestedValue === null) continue;
209
- sanitized[key] = sanitizeBlockValueForCreate(nestedValue);
210
- }
211
- return sanitized;
212
- }
213
- async function buildCopyableBlockNode(client, block) {
214
- const record = asRecord(block);
215
- const blockId = asString(record.id);
216
- if (!blockId) throw new Error("Cannot copy a Notion block without an ID.");
217
- const type = asString(record.type);
218
- if (!type) throw new Error("Cannot copy a Notion block without a type.");
219
- if (unsupportedCopyBlockTypes.has(type)) throw new Error(`Notion block type \`${type}\` cannot be copied through the API. Use a template or a more specific page-creation flow instead.`);
220
- const requestValue = sanitizeBlockValueForCreate(record[type]);
221
- return {
222
- request: {
223
- object: "block",
224
- type,
225
- [type]: typeof requestValue === "object" && requestValue !== null ? requestValue : {}
226
- },
227
- children: record.has_children === true ? await listCopyableBlockTree(client, blockId) : []
228
- };
229
- }
230
- async function listCopyableBlockTree(client, blockId) {
231
- const blocks = await listAllPaginatedResults((cursor) => client.blocks.children.list({
232
- block_id: blockId,
233
- ...buildPaginationInput(void 0, cursor)
234
- }));
235
- return Promise.all(blocks.map((block) => buildCopyableBlockNode(client, block)));
236
- }
237
- function getCreatedBlockId(value) {
238
- const id = asString(asRecord(value).id);
239
- if (!id) throw new Error("Notion append block children response did not include a created block ID.");
240
- return id;
241
- }
242
- async function appendCopyableBlockTree(client, targetBlockId, nodes) {
243
- for (const chunk of chunkArray(nodes, NOTION_MAX_BLOCK_CHILDREN_PER_REQUEST)) {
244
- const createdBlocks = await appendBlockChildrenAndReturnResults(client, targetBlockId, chunk.map((node) => node.request));
245
- for (const [index, node] of chunk.entries()) {
246
- if (node.children.length === 0) continue;
247
- await appendCopyableBlockTree(client, getCreatedBlockId(createdBlocks[index]), node.children);
248
- }
249
- }
250
- }
251
- async function copyPageBlockTree(client, sourcePageId, targetPageId) {
252
- const sourceBlocks = await listCopyableBlockTree(client, sourcePageId);
253
- if (sourceBlocks.length > 0) await appendCopyableBlockTree(client, targetPageId, sourceBlocks);
254
- }
255
-
256
- //#endregion
257
- //#region src/operations/copy-page-content.operation.ts
258
- const copyPageContentOperation = new Operation({
259
- credentialSets: [notionCredentialSet],
260
- id: "notion.copy-notion-page-content",
261
- name: "Copy Notion Page Content",
262
- description: "Copy block content from one Notion page into another page",
263
- input: z.object({
264
- sourcePageId: z.string().min(1),
265
- targetPageId: z.string().min(1)
266
- }).refine((value) => value.sourcePageId !== value.targetPageId, { error: "Source and target pages must be different." }),
267
- output: notionSuccessResponseSchema,
268
- needsApproval: true,
269
- run: async (input, context) => {
270
- await copyPageBlockTree(createNotionClient(context.credentials.notion), input.sourcePageId, input.targetPageId);
271
- return { success: true };
272
- }
273
- });
274
-
275
- //#endregion
276
- //#region src/operations/create-comment.operation.ts
277
- const createCommentOperation = new Operation({
278
- credentialSets: [notionCredentialSet],
279
- id: "notion.create-notion-comment",
280
- name: "Create Notion Comment",
281
- description: "Create a page comment or reply to an existing Notion discussion",
282
- input: z.object({
283
- target: commentTargetSchema,
284
- markdown: z.string().min(1).optional(),
285
- richText: z.array(z.record(z.string(), z.unknown())).min(1).optional()
286
- }).refine((value) => Boolean(value.markdown) || Boolean(value.richText), { error: "Provide markdown or richText." }),
287
- output: notionCommentSchema,
288
- needsApproval: true,
289
- run: async (input, context) => {
290
- const client = createNotionClient(context.credentials.notion);
291
- const target = buildCommentTarget(input.target);
292
- if (input.markdown !== void 0) return normalizeComment(await withRateLimitRetry(() => client.comments.create({
293
- ...target,
294
- markdown: input.markdown
295
- })));
296
- return normalizeComment(await withRateLimitRetry(() => client.comments.create({
297
- ...target,
298
- rich_text: input.richText ?? buildPlainTextRichText("")
299
- })));
300
- }
301
- });
302
-
303
- //#endregion
304
- //#region src/operations/create-data-source-entry.operation.ts
305
- const createDataSourceEntryOperation = new Operation({
306
- credentialSets: [notionCredentialSet],
307
- id: "notion.create-notion-data-source-entry",
308
- name: "Create Notion Data Source Entry",
309
- description: "Create a new page inside a Notion data source",
310
- input: z.object({
311
- dataSourceId: z.string().min(1),
312
- properties: z.record(z.string(), z.unknown()),
313
- children: z.array(z.record(z.string(), z.unknown())).max(100).optional()
314
- }),
315
- output: notionPageSchema,
316
- needsApproval: true,
317
- run: async (input, context) => {
318
- const client = createNotionClient(context.credentials.notion);
319
- return normalizePage(await withRateLimitRetry(() => client.pages.create({
320
- parent: {
321
- type: "data_source_id",
322
- data_source_id: input.dataSourceId
323
- },
324
- properties: input.properties,
325
- ...input.children ? { children: input.children } : {}
326
- })));
327
- }
328
- });
329
-
330
- //#endregion
331
- //#region src/operations/create-page.operation.ts
332
- const createPageOperation = new Operation({
333
- credentialSets: [notionCredentialSet],
334
- id: "notion.create-notion-page",
335
- name: "Create Notion Page",
336
- description: "Create a Notion page in a page, database, or data source parent",
337
- input: z.object({
338
- parent: pageParentInputSchema,
339
- title: z.string().min(1).optional(),
340
- properties: z.record(z.string(), z.unknown()).optional(),
341
- children: z.array(z.record(z.string(), z.unknown())).max(100).optional()
342
- }),
343
- output: notionPageSchema,
344
- needsApproval: true,
345
- run: async (input, context) => {
346
- const client = createNotionClient(context.credentials.notion);
347
- const properties = input.properties ?? (input.title ? { title: { title: buildPlainTextRichText(input.title) } } : void 0);
348
- return normalizePage(await withRateLimitRetry(() => client.pages.create({
349
- parent: buildPageParent(input.parent),
350
- ...properties ? { properties } : {},
351
- ...input.children ? { children: input.children } : {}
352
- })));
353
- }
354
- });
355
-
356
- //#endregion
357
- //#region src/operations/delete-block.operation.ts
358
- const deleteBlockOperation = new Operation({
359
- credentialSets: [notionCredentialSet],
360
- id: "notion.delete-notion-block",
361
- name: "Delete Notion Block",
362
- description: "Delete a Notion block",
363
- input: z.object({ blockId: z.string().min(1) }),
364
- output: notionBlockSchema,
365
- needsApproval: true,
366
- run: async (input, context) => {
367
- const client = createNotionClient(context.credentials.notion);
368
- return normalizeBlock(await withRateLimitRetry(() => client.blocks.delete({ block_id: input.blockId })));
369
- }
370
- });
371
-
372
- //#endregion
373
- //#region src/operations/discover-database-data-sources.operation.ts
374
- const discoverDatabaseDataSourcesOperation = new Operation({
375
- credentialSets: [notionCredentialSet],
376
- id: "notion.discover-notion-database-data-sources",
377
- name: "Discover Notion Database Data Sources",
378
- description: "Retrieve the data-source references that belong to a Notion database",
379
- input: z.object({ databaseId: z.string().min(1) }),
380
- output: databaseDiscoverySchema,
381
- run: async (input, context) => {
382
- const client = createNotionClient(context.credentials.notion);
383
- const response = await withRateLimitRetry(() => client.databases.retrieve({ database_id: input.databaseId }));
384
- return databaseDiscoverySchema.parse({
385
- databaseId: input.databaseId,
386
- dataSources: "data_sources" in response ? response.data_sources.map((dataSource) => ({
387
- id: dataSource.id,
388
- name: dataSource.name
389
- })) : []
390
- });
391
- }
392
- });
393
-
394
- //#endregion
395
- //#region src/operations/get-block.operation.ts
396
- const getBlockOperation = new Operation({
397
- credentialSets: [notionCredentialSet],
398
- id: "notion.get-notion-block",
399
- name: "Get Notion Block",
400
- description: "Retrieve a Notion block by ID",
401
- input: z.object({ blockId: z.string().min(1) }),
402
- output: notionBlockSchema,
403
- run: async (input, context) => {
404
- const client = createNotionClient(context.credentials.notion);
405
- return normalizeBlock(await withRateLimitRetry(() => client.blocks.retrieve({ block_id: input.blockId })));
406
- }
407
- });
408
-
409
- //#endregion
410
- //#region src/operations/get-comment.operation.ts
411
- const getCommentOperation = new Operation({
412
- credentialSets: [notionCredentialSet],
413
- id: "notion.get-notion-comment",
414
- name: "Get Notion Comment",
415
- description: "Retrieve a Notion comment by ID",
416
- input: z.object({ commentId: z.string().min(1) }),
417
- output: notionCommentSchema,
418
- run: async (input, context) => {
419
- const client = createNotionClient(context.credentials.notion);
420
- return normalizeComment(await withRateLimitRetry(() => client.comments.retrieve({ comment_id: input.commentId })));
421
- }
422
- });
423
-
424
- //#endregion
425
- //#region src/operations/get-data-source.operation.ts
426
- const getDataSourceOperation = new Operation({
427
- credentialSets: [notionCredentialSet],
428
- id: "notion.get-notion-data-source",
429
- name: "Get Notion Data Source",
430
- description: "Retrieve a Notion data source by ID",
431
- input: z.object({ dataSourceId: z.string().min(1) }),
432
- output: notionDataSourceSchema,
433
- run: async (input, context) => {
434
- const client = createNotionClient(context.credentials.notion);
435
- return normalizeDataSource(await withRateLimitRetry(() => client.dataSources.retrieve({ data_source_id: input.dataSourceId })));
436
- }
437
- });
438
-
439
- //#endregion
440
- //#region src/operations/get-me.operation.ts
441
- const getMeOperation = new Operation({
442
- credentialSets: [notionCredentialSet],
443
- id: "notion.get-notion-me",
444
- name: "Get Notion Bot User",
445
- description: "Retrieve the bot user associated with the current Notion token",
446
- input: z.object({}),
447
- output: notionUserSchema,
448
- run: async (_input, context) => {
449
- const client = createNotionClient(context.credentials.notion);
450
- return normalizeUser(await withRateLimitRetry(() => client.users.me({})));
451
- }
452
- });
453
-
454
- //#endregion
455
- //#region src/operations/get-page.operation.ts
456
- const getPageOperation = new Operation({
457
- credentialSets: [notionCredentialSet],
458
- id: "notion.get-notion-page",
459
- name: "Get Notion Page",
460
- description: "Retrieve a Notion page by ID",
461
- input: z.object({ pageId: z.string().min(1) }),
462
- output: notionPageSchema,
463
- run: async (input, context) => {
464
- const client = createNotionClient(context.credentials.notion);
465
- return normalizePage(await withRateLimitRetry(() => client.pages.retrieve({ page_id: input.pageId })));
466
- }
467
- });
468
-
469
- //#endregion
470
- //#region src/operations/get-page-property.operation.ts
471
- const getPagePropertyOperation = new Operation({
472
- credentialSets: [notionCredentialSet],
473
- id: "notion.get-notion-page-property",
474
- name: "Get Notion Page Property",
475
- description: "Retrieve a single Notion page property item by property ID",
476
- input: z.object({
477
- pageId: z.string().min(1),
478
- propertyId: z.string().min(1),
479
- limit: z.number().int().positive().max(100).optional(),
480
- startCursor: z.string().optional()
481
- }),
482
- output: notionPagePropertyItemSchema,
483
- run: async (input, context) => {
484
- const client = createNotionClient(context.credentials.notion);
485
- return normalizePagePropertyItem(await withRateLimitRetry(() => client.pages.properties.retrieve({
486
- page_id: input.pageId,
487
- property_id: input.propertyId,
488
- ...buildPaginationInput(input.limit, input.startCursor)
489
- })));
490
- }
491
- });
492
-
493
- //#endregion
494
- //#region src/operations/get-user.operation.ts
495
- const getUserOperation = new Operation({
496
- credentialSets: [notionCredentialSet],
497
- id: "notion.get-notion-user",
498
- name: "Get Notion User",
499
- description: "Retrieve a Notion user by ID",
500
- input: z.object({ userId: z.string().min(1) }),
501
- output: notionUserSchema,
502
- run: async (input, context) => {
503
- const client = createNotionClient(context.credentials.notion);
504
- return normalizeUser(await withRateLimitRetry(() => client.users.retrieve({ user_id: input.userId })));
505
- }
506
- });
507
-
508
- //#endregion
509
- //#region src/utils/block-operation-helpers.ts
510
- async function listBlockChildrenRecursively(client, blockId) {
511
- const normalized = (await listAllPaginatedResults((cursor) => client.blocks.children.list({
512
- block_id: blockId,
513
- ...buildPaginationInput(void 0, cursor)
514
- }))).map(normalizeBlock);
515
- const nested = await Promise.all(normalized.filter((block) => block.hasChildren).map((block) => listBlockChildrenRecursively(client, block.id)));
516
- return normalized.concat(...nested);
517
- }
518
- async function listBlockChildrenPage(client, blockId, limit, startCursor) {
519
- return withRateLimitRetry(() => client.blocks.children.list({
520
- block_id: blockId,
521
- ...buildPaginationInput(limit, startCursor)
522
- }));
523
- }
524
-
525
- //#endregion
526
- //#region src/operations/list-block-children.operation.ts
527
- const listBlockChildrenOperation = new Operation({
528
- credentialSets: [notionCredentialSet],
529
- id: "notion.list-notion-block-children",
530
- name: "List Notion Block Children",
531
- description: "List the children for a Notion block or page",
532
- input: z.object({
533
- blockId: z.string().min(1),
534
- limit: z.number().int().positive().max(100).optional(),
535
- startCursor: z.string().optional(),
536
- recursive: z.boolean().optional()
537
- }),
538
- output: notionListResponseSchema(notionBlockSchema),
539
- run: async (input, context) => {
540
- const client = createNotionClient(context.credentials.notion);
541
- if (input.recursive) return {
542
- results: await listBlockChildrenRecursively(client, input.blockId),
543
- hasMore: false,
544
- nextCursor: null
545
- };
546
- const response = await listBlockChildrenPage(client, input.blockId, input.limit, input.startCursor);
547
- const meta = normalizeListMeta(response);
548
- return {
549
- results: response.results.map(normalizeBlock),
550
- hasMore: meta.hasMore,
551
- nextCursor: meta.nextCursor
552
- };
553
- }
554
- });
555
-
556
- //#endregion
557
- //#region src/operations/list-comments.operation.ts
558
- const listCommentsOperation = new Operation({
559
- credentialSets: [notionCredentialSet],
560
- id: "notion.list-notion-comments",
561
- name: "List Notion Comments",
562
- description: "List the open comments for a Notion page or block",
563
- input: z.object({
564
- blockId: z.string().min(1),
565
- limit: z.number().int().positive().max(100).optional(),
566
- startCursor: z.string().optional()
567
- }),
568
- output: notionListResponseSchema(notionCommentSchema),
569
- run: async (input, context) => {
570
- const client = createNotionClient(context.credentials.notion);
571
- const response = await withRateLimitRetry(() => client.comments.list({
572
- block_id: input.blockId,
573
- ...buildPaginationInput(input.limit, input.startCursor)
574
- }));
575
- const meta = normalizeListMeta(response);
576
- return {
577
- results: response.results.map(normalizeComment),
578
- hasMore: meta.hasMore,
579
- nextCursor: meta.nextCursor
580
- };
581
- }
582
- });
583
-
584
- //#endregion
585
- //#region src/operations/list-users.operation.ts
586
- const listUsersOperation = new Operation({
587
- credentialSets: [notionCredentialSet],
588
- id: "notion.list-notion-users",
589
- name: "List Notion Users",
590
- description: "List users visible to the current Notion integration",
591
- input: z.object({
592
- limit: z.number().int().positive().max(100).optional(),
593
- startCursor: z.string().optional()
594
- }),
595
- output: notionListResponseSchema(notionUserSchema),
596
- run: async (input, context) => {
597
- const client = createNotionClient(context.credentials.notion);
598
- const response = await withRateLimitRetry(() => client.users.list(buildPaginationInput(input.limit, input.startCursor)));
599
- const meta = normalizeListMeta(response);
600
- return {
601
- results: response.results.map(normalizeUser),
602
- hasMore: meta.hasMore,
603
- nextCursor: meta.nextCursor
604
- };
605
- }
606
- });
607
-
608
- //#endregion
609
- //#region src/operations/query-data-source.operation.ts
610
- const queryDataSourceOperation = new Operation({
611
- credentialSets: [notionCredentialSet],
612
- id: "notion.query-notion-data-source",
613
- name: "Query Notion Data Source",
614
- description: "Query pages in a Notion data source with filters, sorts, and pagination",
615
- input: z.object({
616
- dataSourceId: z.string().min(1),
617
- filter: z.record(z.string(), z.unknown()).optional(),
618
- sorts: z.array(z.record(z.string(), z.unknown())).optional(),
619
- startCursor: z.string().optional(),
620
- pageSize: z.number().int().positive().max(100).optional()
621
- }),
622
- output: notionListResponseSchema(notionPageSchema),
623
- run: async (input, context) => {
624
- const client = createNotionClient(context.credentials.notion);
625
- const response = await withRateLimitRetry(() => client.dataSources.query({
626
- data_source_id: input.dataSourceId,
627
- ...input.filter ? { filter: input.filter } : {},
628
- ...input.sorts ? { sorts: input.sorts } : {},
629
- ...buildPaginationInput(input.pageSize, input.startCursor)
630
- }));
631
- const meta = normalizeListMeta(response);
632
- return {
633
- results: response.results.map(normalizePage),
634
- hasMore: meta.hasMore,
635
- nextCursor: meta.nextCursor
636
- };
637
- }
638
- });
639
-
640
- //#endregion
641
- //#region src/operations/restore-page.operation.ts
642
- const restorePageOperation = new Operation({
643
- credentialSets: [notionCredentialSet],
644
- id: "notion.restore-notion-page",
645
- name: "Restore Notion Page",
646
- description: "Restore a trashed Notion page",
647
- input: z.object({ pageId: z.string().min(1) }),
648
- output: notionPageSchema,
649
- needsApproval: true,
650
- run: async (input, context) => {
651
- const client = createNotionClient(context.credentials.notion);
652
- return normalizePage(await withRateLimitRetry(() => client.pages.update({
653
- page_id: input.pageId,
654
- in_trash: false
655
- })));
656
- }
657
- });
658
-
659
- //#endregion
660
- //#region src/operations/search-workspace.operation.ts
661
- const searchWorkspaceOperation = new Operation({
662
- credentialSets: [notionCredentialSet],
663
- id: "notion.search-notion-workspace",
664
- name: "Search Notion Workspace",
665
- description: "Search shared Notion pages or data sources by title",
666
- input: z.object({
667
- query: z.string().optional(),
668
- object: z.enum(["page", "data_source"]).optional(),
669
- sortDirection: z.enum(["ascending", "descending"]).optional(),
670
- startCursor: z.string().optional(),
671
- pageSize: z.number().int().positive().max(100).optional()
672
- }),
673
- output: notionListResponseSchema(notionSearchResultSchema),
674
- run: async (input, context) => {
675
- const client = createNotionClient(context.credentials.notion);
676
- const response = await withRateLimitRetry(() => client.search({
677
- ...input.query ? { query: input.query } : {},
678
- ...input.object ? { filter: {
679
- property: "object",
680
- value: input.object
681
- } } : {},
682
- sort: {
683
- timestamp: "last_edited_time",
684
- direction: input.sortDirection ?? "descending"
685
- },
686
- ...input.startCursor ? { start_cursor: input.startCursor } : {},
687
- ...input.pageSize !== void 0 ? { page_size: input.pageSize } : {}
688
- }));
689
- const meta = normalizeListMeta(response);
690
- return {
691
- results: response.results.map(normalizeSearchResult),
692
- hasMore: meta.hasMore,
693
- nextCursor: meta.nextCursor
694
- };
695
- }
696
- });
697
-
698
- //#endregion
699
- //#region src/operations/trash-page.operation.ts
700
- const trashPageOperation = new Operation({
701
- credentialSets: [notionCredentialSet],
702
- id: "notion.trash-notion-page",
703
- name: "Trash Notion Page",
704
- description: "Move a Notion page to the trash",
705
- input: z.object({ pageId: z.string().min(1) }),
706
- output: notionPageSchema,
707
- needsApproval: true,
708
- run: async (input, context) => {
709
- const client = createNotionClient(context.credentials.notion);
710
- return normalizePage(await withRateLimitRetry(() => client.pages.update({
711
- page_id: input.pageId,
712
- in_trash: true
713
- })));
714
- }
715
- });
716
-
717
- //#endregion
718
- //#region src/operations/update-block.operation.ts
719
- const updateBlockOperation = new Operation({
720
- credentialSets: [notionCredentialSet],
721
- id: "notion.update-notion-block",
722
- name: "Update Notion Block",
723
- description: "Update a Notion block by applying a typed block patch",
724
- input: z.object({
725
- blockId: z.string().min(1),
726
- block: z.record(z.string(), z.unknown())
727
- }),
728
- output: notionBlockSchema,
729
- needsApproval: true,
730
- run: async (input, context) => {
731
- const client = createNotionClient(context.credentials.notion);
732
- return normalizeBlock(await withRateLimitRetry(() => client.blocks.update({
733
- block_id: input.blockId,
734
- ...input.block
735
- })));
736
- }
737
- });
738
-
739
- //#endregion
740
- //#region src/operations/update-data-source-entry.operation.ts
741
- const updateDataSourceEntryOperation = new Operation({
742
- credentialSets: [notionCredentialSet],
743
- id: "notion.update-notion-data-source-entry",
744
- name: "Update Notion Data Source Entry",
745
- description: "Update the properties for a page that belongs to a Notion data source",
746
- input: z.object({
747
- pageId: z.string().min(1),
748
- properties: z.record(z.string(), z.unknown()).optional(),
749
- inTrash: z.boolean().optional()
750
- }),
751
- output: notionPageSchema,
752
- needsApproval: true,
753
- run: async (input, context) => {
754
- const client = createNotionClient(context.credentials.notion);
755
- return normalizePage(await withRateLimitRetry(() => client.pages.update({
756
- page_id: input.pageId,
757
- ...input.properties ? { properties: input.properties } : {},
758
- ...input.inTrash !== void 0 ? { in_trash: input.inTrash } : {}
759
- })));
760
- }
761
- });
762
-
763
- //#endregion
764
- //#region src/operations/update-page.operation.ts
765
- const updatePageOperation = new Operation({
766
- credentialSets: [notionCredentialSet],
767
- id: "notion.update-notion-page",
768
- name: "Update Notion Page",
769
- description: "Update Notion page properties or presentation metadata",
770
- input: z.object({
771
- pageId: z.string().min(1),
772
- properties: z.record(z.string(), z.unknown()).optional(),
773
- icon: z.record(z.string(), z.unknown()).nullable().optional(),
774
- cover: z.record(z.string(), z.unknown()).nullable().optional(),
775
- isLocked: z.boolean().optional(),
776
- inTrash: z.boolean().optional()
777
- }),
778
- output: notionPageSchema,
779
- needsApproval: true,
780
- run: async (input, context) => {
781
- const client = createNotionClient(context.credentials.notion);
782
- return normalizePage(await withRateLimitRetry(() => client.pages.update({
783
- page_id: input.pageId,
784
- ...input.properties ? { properties: input.properties } : {},
785
- ...input.icon !== void 0 ? { icon: input.icon } : {},
786
- ...input.cover !== void 0 ? { cover: input.cover } : {},
787
- ...input.isLocked !== void 0 ? { is_locked: input.isLocked } : {},
788
- ...input.inTrash !== void 0 ? { in_trash: input.inTrash } : {}
789
- })));
790
- }
791
- });
792
-
793
- //#endregion
794
- export { copyPageContentOperation as C, createCommentOperation as S, getBlockOperation as _, searchWorkspaceOperation as a, createPageOperation as b, listUsersOperation as c, getUserOperation as d, getPagePropertyOperation as f, getCommentOperation as g, getDataSourceOperation as h, trashPageOperation as i, listCommentsOperation as l, getMeOperation as m, updateDataSourceEntryOperation as n, restorePageOperation as o, getPageOperation as p, updateBlockOperation as r, queryDataSourceOperation as s, updatePageOperation as t, listBlockChildrenOperation as u, discoverDatabaseDataSourcesOperation as v, appendBlockChildrenOperation as w, createDataSourceEntryOperation as x, deleteBlockOperation as y };