@webiny/api-website-builder 6.0.0-alpha.5 → 6.0.0-rc.1

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 (640) hide show
  1. package/README.md +7 -29
  2. package/constants.js +3 -9
  3. package/constants.js.map +1 -1
  4. package/domain/page/EntryToPageMapper.d.ts +5 -0
  5. package/domain/page/EntryToPageMapper.js +30 -0
  6. package/domain/page/EntryToPageMapper.js.map +1 -0
  7. package/domain/page/abstractions.d.ts +33 -0
  8. package/domain/page/abstractions.js +8 -0
  9. package/domain/page/abstractions.js.map +1 -0
  10. package/domain/page/errors.d.ts +19 -0
  11. package/domain/page/errors.js +38 -0
  12. package/domain/page/errors.js.map +1 -0
  13. package/domain/page/page.model.d.ts +2 -0
  14. package/domain/page/page.model.js +32 -0
  15. package/domain/page/page.model.js.map +1 -0
  16. package/domain/permissions.d.ts +133 -0
  17. package/domain/permissions.js +35 -0
  18. package/domain/permissions.js.map +1 -0
  19. package/domain/redirect/EntryToRedirectMapper.d.ts +5 -0
  20. package/domain/redirect/EntryToRedirectMapper.js +24 -0
  21. package/domain/redirect/EntryToRedirectMapper.js.map +1 -0
  22. package/domain/redirect/abstractions.d.ts +30 -0
  23. package/domain/redirect/abstractions.js +12 -0
  24. package/domain/redirect/abstractions.js.map +1 -0
  25. package/domain/redirect/errors.d.ts +19 -0
  26. package/domain/redirect/errors.js +38 -0
  27. package/domain/redirect/errors.js.map +1 -0
  28. package/domain/redirect/redirect.model.d.ts +2 -0
  29. package/domain/redirect/redirect.model.js +32 -0
  30. package/domain/redirect/redirect.model.js.map +1 -0
  31. package/domain/shared/abstractions.d.ts +5 -0
  32. package/domain/shared/abstractions.js +3 -0
  33. package/domain/shared/abstractions.js.map +1 -0
  34. package/exports/api/website-builder/nextjs.d.ts +1 -0
  35. package/exports/api/website-builder/nextjs.js +3 -0
  36. package/exports/api/website-builder/nextjs.js.map +1 -0
  37. package/exports/api/website-builder/page.d.ts +12 -0
  38. package/exports/api/website-builder/page.js +14 -0
  39. package/exports/api/website-builder/page.js.map +1 -0
  40. package/exports/api/website-builder/redirect.d.ts +8 -0
  41. package/exports/api/website-builder/redirect.js +10 -0
  42. package/exports/api/website-builder/redirect.js.map +1 -0
  43. package/features/installer/ApiKeyInstaller.d.ts +20 -0
  44. package/features/installer/ApiKeyInstaller.js +44 -0
  45. package/features/installer/ApiKeyInstaller.js.map +1 -0
  46. package/features/installer/feature.d.ts +1 -0
  47. package/features/installer/feature.js +10 -0
  48. package/features/installer/feature.js.map +1 -0
  49. package/features/nextjs/MarkdownContentBuilder.d.ts +31 -0
  50. package/features/nextjs/MarkdownContentBuilder.js +86 -0
  51. package/features/nextjs/MarkdownContentBuilder.js.map +1 -0
  52. package/features/nextjs/MarkdownContentBuilder.test.d.ts +1 -0
  53. package/features/nextjs/MarkdownContentBuilder.test.js +278 -0
  54. package/features/nextjs/MarkdownContentBuilder.test.js.map +1 -0
  55. package/features/nextjs/NextjsConfig.d.ts +14 -0
  56. package/features/nextjs/NextjsConfig.js +58 -0
  57. package/features/nextjs/NextjsConfig.js.map +1 -0
  58. package/features/nextjs/abstractions.d.ts +9 -0
  59. package/features/nextjs/abstractions.js +4 -0
  60. package/features/nextjs/abstractions.js.map +1 -0
  61. package/features/nextjs/feature.d.ts +1 -0
  62. package/features/nextjs/feature.js +10 -0
  63. package/features/nextjs/feature.js.map +1 -0
  64. package/features/nextjs/index.d.ts +1 -0
  65. package/features/nextjs/index.js +3 -0
  66. package/features/nextjs/index.js.map +1 -0
  67. package/features/pages/CreatePage/CreatePageRepository.d.ts +13 -0
  68. package/features/pages/CreatePage/CreatePageRepository.js +36 -0
  69. package/features/pages/CreatePage/CreatePageRepository.js.map +1 -0
  70. package/features/pages/CreatePage/CreatePageUseCase.d.ts +14 -0
  71. package/features/pages/CreatePage/CreatePageUseCase.js +45 -0
  72. package/features/pages/CreatePage/CreatePageUseCase.js.map +1 -0
  73. package/features/pages/CreatePage/abstractions.d.ts +56 -0
  74. package/features/pages/CreatePage/abstractions.js +30 -0
  75. package/features/pages/CreatePage/abstractions.js.map +1 -0
  76. package/features/pages/CreatePage/events.d.ts +10 -0
  77. package/features/pages/CreatePage/events.js +19 -0
  78. package/features/pages/CreatePage/events.js.map +1 -0
  79. package/features/pages/CreatePage/feature.d.ts +1 -0
  80. package/features/pages/CreatePage/feature.js +12 -0
  81. package/features/pages/CreatePage/feature.js.map +1 -0
  82. package/features/pages/CreatePage/index.d.ts +1 -15
  83. package/features/pages/CreatePage/index.js +1 -16
  84. package/features/pages/CreatePage/index.js.map +1 -1
  85. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.d.ts +15 -0
  86. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.js +49 -0
  87. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.js.map +1 -0
  88. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.d.ts +16 -0
  89. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js +53 -0
  90. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js.map +1 -0
  91. package/features/pages/CreatePageRevisionFrom/abstractions.d.ts +61 -0
  92. package/features/pages/CreatePageRevisionFrom/abstractions.js +30 -0
  93. package/features/pages/CreatePageRevisionFrom/abstractions.js.map +1 -0
  94. package/features/pages/CreatePageRevisionFrom/events.d.ts +10 -0
  95. package/features/pages/CreatePageRevisionFrom/events.js +19 -0
  96. package/features/pages/CreatePageRevisionFrom/events.js.map +1 -0
  97. package/features/pages/CreatePageRevisionFrom/feature.d.ts +1 -0
  98. package/features/pages/CreatePageRevisionFrom/feature.js +12 -0
  99. package/features/pages/CreatePageRevisionFrom/feature.js.map +1 -0
  100. package/features/pages/CreatePageRevisionFrom/index.d.ts +1 -16
  101. package/features/pages/CreatePageRevisionFrom/index.js +1 -16
  102. package/features/pages/CreatePageRevisionFrom/index.js.map +1 -1
  103. package/features/pages/DeletePage/DeletePageRepository.d.ts +15 -0
  104. package/features/pages/DeletePage/DeletePageRepository.js +39 -0
  105. package/features/pages/DeletePage/DeletePageRepository.js.map +1 -0
  106. package/features/pages/DeletePage/DeletePageUseCase.d.ts +16 -0
  107. package/features/pages/DeletePage/DeletePageUseCase.js +52 -0
  108. package/features/pages/DeletePage/DeletePageUseCase.js.map +1 -0
  109. package/features/pages/DeletePage/abstractions.d.ts +58 -0
  110. package/features/pages/DeletePage/abstractions.js +30 -0
  111. package/features/pages/DeletePage/abstractions.js.map +1 -0
  112. package/features/pages/DeletePage/events.d.ts +10 -0
  113. package/features/pages/DeletePage/events.js +19 -0
  114. package/features/pages/DeletePage/events.js.map +1 -0
  115. package/features/pages/DeletePage/feature.d.ts +1 -0
  116. package/features/pages/DeletePage/feature.js +12 -0
  117. package/features/pages/DeletePage/feature.js.map +1 -0
  118. package/features/pages/DeletePage/index.d.ts +1 -16
  119. package/features/pages/DeletePage/index.js +1 -16
  120. package/features/pages/DeletePage/index.js.map +1 -1
  121. package/features/pages/DuplicatePage/DuplicatePageRepository.d.ts +15 -0
  122. package/features/pages/DuplicatePage/DuplicatePageRepository.js +59 -0
  123. package/features/pages/DuplicatePage/DuplicatePageRepository.js.map +1 -0
  124. package/features/pages/DuplicatePage/DuplicatePageUseCase.d.ts +14 -0
  125. package/features/pages/DuplicatePage/DuplicatePageUseCase.js +55 -0
  126. package/features/pages/DuplicatePage/DuplicatePageUseCase.js.map +1 -0
  127. package/features/pages/DuplicatePage/abstractions.d.ts +62 -0
  128. package/features/pages/DuplicatePage/abstractions.js +30 -0
  129. package/features/pages/DuplicatePage/abstractions.js.map +1 -0
  130. package/features/pages/DuplicatePage/events.d.ts +10 -0
  131. package/features/pages/DuplicatePage/events.js +19 -0
  132. package/features/pages/DuplicatePage/events.js.map +1 -0
  133. package/features/pages/DuplicatePage/feature.d.ts +1 -0
  134. package/features/pages/DuplicatePage/feature.js +12 -0
  135. package/features/pages/DuplicatePage/feature.js.map +1 -0
  136. package/features/pages/DuplicatePage/index.d.ts +1 -16
  137. package/features/pages/DuplicatePage/index.js +1 -16
  138. package/features/pages/DuplicatePage/index.js.map +1 -1
  139. package/features/pages/GetPageById/GetPageByIdRepository.d.ts +13 -0
  140. package/features/pages/GetPageById/GetPageByIdRepository.js +29 -0
  141. package/features/pages/GetPageById/GetPageByIdRepository.js.map +1 -0
  142. package/features/pages/GetPageById/GetPageByIdUseCase.d.ts +12 -0
  143. package/features/pages/GetPageById/GetPageByIdUseCase.js +31 -0
  144. package/features/pages/GetPageById/GetPageByIdUseCase.js.map +1 -0
  145. package/features/pages/GetPageById/abstractions.d.ts +40 -0
  146. package/features/pages/GetPageById/abstractions.js +15 -0
  147. package/features/pages/GetPageById/abstractions.js.map +1 -0
  148. package/features/pages/GetPageById/feature.d.ts +1 -0
  149. package/features/pages/GetPageById/feature.js +12 -0
  150. package/features/pages/GetPageById/feature.js.map +1 -0
  151. package/features/pages/GetPageById/index.d.ts +1 -9
  152. package/features/pages/GetPageById/index.js +1 -14
  153. package/features/pages/GetPageById/index.js.map +1 -1
  154. package/features/pages/GetPageByPath/GetPageByPathRepository.d.ts +13 -0
  155. package/features/pages/GetPageByPath/GetPageByPathRepository.js +38 -0
  156. package/features/pages/GetPageByPath/GetPageByPathRepository.js.map +1 -0
  157. package/features/pages/GetPageByPath/GetPageByPathUseCase.d.ts +12 -0
  158. package/features/pages/GetPageByPath/GetPageByPathUseCase.js +31 -0
  159. package/features/pages/GetPageByPath/GetPageByPathUseCase.js.map +1 -0
  160. package/features/pages/GetPageByPath/abstractions.d.ts +40 -0
  161. package/features/pages/GetPageByPath/abstractions.js +15 -0
  162. package/features/pages/GetPageByPath/abstractions.js.map +1 -0
  163. package/features/pages/GetPageByPath/feature.d.ts +1 -0
  164. package/features/pages/GetPageByPath/feature.js +12 -0
  165. package/features/pages/GetPageByPath/feature.js.map +1 -0
  166. package/features/pages/GetPageByPath/index.d.ts +1 -9
  167. package/features/pages/GetPageByPath/index.js +1 -14
  168. package/features/pages/GetPageByPath/index.js.map +1 -1
  169. package/features/pages/GetPageRevisions/GetPageRevisionsRepository.d.ts +13 -0
  170. package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js +26 -0
  171. package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js.map +1 -0
  172. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.d.ts +12 -0
  173. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js +34 -0
  174. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js.map +1 -0
  175. package/features/pages/GetPageRevisions/abstractions.d.ts +38 -0
  176. package/features/pages/GetPageRevisions/abstractions.js +15 -0
  177. package/features/pages/GetPageRevisions/abstractions.js.map +1 -0
  178. package/features/pages/GetPageRevisions/feature.d.ts +1 -0
  179. package/features/pages/GetPageRevisions/feature.js +12 -0
  180. package/features/pages/GetPageRevisions/feature.js.map +1 -0
  181. package/features/pages/GetPageRevisions/index.d.ts +1 -9
  182. package/features/pages/GetPageRevisions/index.js +1 -14
  183. package/features/pages/GetPageRevisions/index.js.map +1 -1
  184. package/features/pages/ListPages/ListPagesRepository.d.ts +13 -0
  185. package/features/pages/ListPages/ListPagesRepository.js +39 -0
  186. package/features/pages/ListPages/ListPagesRepository.js.map +1 -0
  187. package/features/pages/ListPages/ListPagesUseCase.d.ts +14 -0
  188. package/features/pages/ListPages/ListPagesUseCase.js +35 -0
  189. package/features/pages/ListPages/ListPagesUseCase.js.map +1 -0
  190. package/features/pages/ListPages/abstractions.d.ts +56 -0
  191. package/features/pages/ListPages/abstractions.js +15 -0
  192. package/features/pages/ListPages/abstractions.js.map +1 -0
  193. package/features/pages/ListPages/feature.d.ts +1 -0
  194. package/features/pages/ListPages/feature.js +12 -0
  195. package/features/pages/ListPages/feature.js.map +1 -0
  196. package/features/pages/ListPages/index.d.ts +1 -9
  197. package/features/pages/ListPages/index.js +1 -14
  198. package/features/pages/ListPages/index.js.map +1 -1
  199. package/features/pages/MovePage/MovePageRepository.d.ts +15 -0
  200. package/features/pages/MovePage/MovePageRepository.js +39 -0
  201. package/features/pages/MovePage/MovePageRepository.js.map +1 -0
  202. package/features/pages/MovePage/MovePageUseCase.d.ts +14 -0
  203. package/features/pages/MovePage/MovePageUseCase.js +61 -0
  204. package/features/pages/MovePage/MovePageUseCase.js.map +1 -0
  205. package/features/pages/MovePage/abstractions.d.ts +63 -0
  206. package/features/pages/MovePage/abstractions.js +30 -0
  207. package/features/pages/MovePage/abstractions.js.map +1 -0
  208. package/features/pages/MovePage/events.d.ts +10 -0
  209. package/features/pages/MovePage/events.js +19 -0
  210. package/features/pages/MovePage/events.js.map +1 -0
  211. package/features/pages/MovePage/feature.d.ts +1 -0
  212. package/features/pages/MovePage/feature.js +12 -0
  213. package/features/pages/MovePage/feature.js.map +1 -0
  214. package/features/pages/MovePage/index.d.ts +1 -16
  215. package/features/pages/MovePage/index.js +1 -16
  216. package/features/pages/MovePage/index.js.map +1 -1
  217. package/features/pages/PublishPage/PublishPageRepository.d.ts +15 -0
  218. package/features/pages/PublishPage/PublishPageRepository.js +41 -0
  219. package/features/pages/PublishPage/PublishPageRepository.js.map +1 -0
  220. package/features/pages/PublishPage/PublishPageUseCase.d.ts +14 -0
  221. package/features/pages/PublishPage/PublishPageUseCase.js +58 -0
  222. package/features/pages/PublishPage/PublishPageUseCase.js.map +1 -0
  223. package/features/pages/PublishPage/abstractions.d.ts +59 -0
  224. package/features/pages/PublishPage/abstractions.js +30 -0
  225. package/features/pages/PublishPage/abstractions.js.map +1 -0
  226. package/features/pages/PublishPage/events.d.ts +10 -0
  227. package/features/pages/PublishPage/events.js +19 -0
  228. package/features/pages/PublishPage/events.js.map +1 -0
  229. package/features/pages/PublishPage/feature.d.ts +1 -0
  230. package/features/pages/PublishPage/feature.js +12 -0
  231. package/features/pages/PublishPage/feature.js.map +1 -0
  232. package/features/pages/PublishPage/index.d.ts +1 -16
  233. package/features/pages/PublishPage/index.js +1 -16
  234. package/features/pages/PublishPage/index.js.map +1 -1
  235. package/features/pages/UnpublishPage/UnpublishPageRepository.d.ts +15 -0
  236. package/features/pages/UnpublishPage/UnpublishPageRepository.js +41 -0
  237. package/features/pages/UnpublishPage/UnpublishPageRepository.js.map +1 -0
  238. package/features/pages/UnpublishPage/UnpublishPageUseCase.d.ts +16 -0
  239. package/features/pages/UnpublishPage/UnpublishPageUseCase.js +57 -0
  240. package/features/pages/UnpublishPage/UnpublishPageUseCase.js.map +1 -0
  241. package/features/pages/UnpublishPage/abstractions.d.ts +59 -0
  242. package/features/pages/UnpublishPage/abstractions.js +30 -0
  243. package/features/pages/UnpublishPage/abstractions.js.map +1 -0
  244. package/features/pages/UnpublishPage/events.d.ts +10 -0
  245. package/features/pages/UnpublishPage/events.js +19 -0
  246. package/features/pages/UnpublishPage/events.js.map +1 -0
  247. package/features/pages/UnpublishPage/feature.d.ts +1 -0
  248. package/features/pages/UnpublishPage/feature.js +12 -0
  249. package/features/pages/UnpublishPage/feature.js.map +1 -0
  250. package/features/pages/UnpublishPage/index.d.ts +1 -16
  251. package/features/pages/UnpublishPage/index.js +1 -16
  252. package/features/pages/UnpublishPage/index.js.map +1 -1
  253. package/features/pages/UpdatePage/UpdatePageRepository.d.ts +15 -0
  254. package/features/pages/UpdatePage/UpdatePageRepository.js +47 -0
  255. package/features/pages/UpdatePage/UpdatePageRepository.js.map +1 -0
  256. package/features/pages/UpdatePage/UpdatePageUseCase.d.ts +16 -0
  257. package/features/pages/UpdatePage/UpdatePageUseCase.js +66 -0
  258. package/features/pages/UpdatePage/UpdatePageUseCase.js.map +1 -0
  259. package/features/pages/UpdatePage/abstractions.d.ts +77 -0
  260. package/features/pages/UpdatePage/abstractions.js +30 -0
  261. package/features/pages/UpdatePage/abstractions.js.map +1 -0
  262. package/features/pages/UpdatePage/events.d.ts +10 -0
  263. package/features/pages/UpdatePage/events.js +19 -0
  264. package/features/pages/UpdatePage/events.js.map +1 -0
  265. package/features/pages/UpdatePage/feature.d.ts +1 -0
  266. package/features/pages/UpdatePage/feature.js +12 -0
  267. package/features/pages/UpdatePage/feature.js.map +1 -0
  268. package/features/pages/UpdatePage/index.d.ts +1 -16
  269. package/features/pages/UpdatePage/index.js +1 -16
  270. package/features/pages/UpdatePage/index.js.map +1 -1
  271. package/features/redirects/CreateRedirect/CreateRedirectRepository.d.ts +13 -0
  272. package/features/redirects/CreateRedirect/CreateRedirectRepository.js +32 -0
  273. package/features/redirects/CreateRedirect/CreateRedirectRepository.js.map +1 -0
  274. package/features/redirects/CreateRedirect/CreateRedirectUseCase.d.ts +12 -0
  275. package/features/redirects/CreateRedirect/CreateRedirectUseCase.js +45 -0
  276. package/features/redirects/CreateRedirect/CreateRedirectUseCase.js.map +1 -0
  277. package/features/redirects/CreateRedirect/abstractions.d.ts +58 -0
  278. package/features/redirects/CreateRedirect/abstractions.js +30 -0
  279. package/features/redirects/CreateRedirect/abstractions.js.map +1 -0
  280. package/features/redirects/CreateRedirect/events.d.ts +10 -0
  281. package/features/redirects/CreateRedirect/events.js +19 -0
  282. package/features/redirects/CreateRedirect/events.js.map +1 -0
  283. package/features/redirects/CreateRedirect/feature.d.ts +1 -0
  284. package/features/redirects/CreateRedirect/feature.js +12 -0
  285. package/features/redirects/CreateRedirect/feature.js.map +1 -0
  286. package/features/redirects/CreateRedirect/index.d.ts +1 -15
  287. package/features/redirects/CreateRedirect/index.js +1 -16
  288. package/features/redirects/CreateRedirect/index.js.map +1 -1
  289. package/features/redirects/DeleteRedirect/DeleteRedirectRepository.d.ts +13 -0
  290. package/features/redirects/DeleteRedirect/DeleteRedirectRepository.js +27 -0
  291. package/features/redirects/DeleteRedirect/DeleteRedirectRepository.js.map +1 -0
  292. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.d.ts +14 -0
  293. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js +53 -0
  294. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js.map +1 -0
  295. package/features/redirects/DeleteRedirect/abstractions.d.ts +58 -0
  296. package/features/redirects/DeleteRedirect/abstractions.js +30 -0
  297. package/features/redirects/DeleteRedirect/abstractions.js.map +1 -0
  298. package/features/redirects/DeleteRedirect/events.d.ts +10 -0
  299. package/features/redirects/DeleteRedirect/events.js +19 -0
  300. package/features/redirects/DeleteRedirect/events.js.map +1 -0
  301. package/features/redirects/DeleteRedirect/feature.d.ts +1 -0
  302. package/features/redirects/DeleteRedirect/feature.js +12 -0
  303. package/features/redirects/DeleteRedirect/feature.js.map +1 -0
  304. package/features/redirects/DeleteRedirect/index.d.ts +1 -16
  305. package/features/redirects/DeleteRedirect/index.js +1 -16
  306. package/features/redirects/DeleteRedirect/index.js.map +1 -1
  307. package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.d.ts +11 -0
  308. package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js +30 -0
  309. package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js.map +1 -0
  310. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.d.ts +10 -0
  311. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js +24 -0
  312. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js.map +1 -0
  313. package/features/redirects/GetActiveRedirects/abstractions.d.ts +39 -0
  314. package/features/redirects/GetActiveRedirects/abstractions.js +15 -0
  315. package/features/redirects/GetActiveRedirects/abstractions.js.map +1 -0
  316. package/features/redirects/GetActiveRedirects/feature.d.ts +1 -0
  317. package/features/redirects/GetActiveRedirects/feature.js +12 -0
  318. package/features/redirects/GetActiveRedirects/feature.js.map +1 -0
  319. package/features/redirects/GetActiveRedirects/index.d.ts +1 -7
  320. package/features/redirects/GetActiveRedirects/index.js +1 -11
  321. package/features/redirects/GetActiveRedirects/index.js.map +1 -1
  322. package/features/redirects/GetRedirectById/GetRedirectByIdRepository.d.ts +13 -0
  323. package/features/redirects/GetRedirectById/GetRedirectByIdRepository.js +29 -0
  324. package/features/redirects/GetRedirectById/GetRedirectByIdRepository.js.map +1 -0
  325. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.d.ts +10 -0
  326. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js +32 -0
  327. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js.map +1 -0
  328. package/features/redirects/GetRedirectById/abstractions.d.ts +41 -0
  329. package/features/redirects/GetRedirectById/abstractions.js +15 -0
  330. package/features/redirects/GetRedirectById/abstractions.js.map +1 -0
  331. package/features/redirects/GetRedirectById/feature.d.ts +1 -0
  332. package/features/redirects/GetRedirectById/feature.js +12 -0
  333. package/features/redirects/GetRedirectById/feature.js.map +1 -0
  334. package/features/redirects/GetRedirectById/index.d.ts +1 -9
  335. package/features/redirects/GetRedirectById/index.js +1 -14
  336. package/features/redirects/GetRedirectById/index.js.map +1 -1
  337. package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.d.ts +12 -0
  338. package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.js +28 -0
  339. package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.js.map +1 -0
  340. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.d.ts +9 -0
  341. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js +25 -0
  342. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js.map +1 -0
  343. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.d.ts +9 -0
  344. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js +25 -0
  345. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js.map +1 -0
  346. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.d.ts +9 -0
  347. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js +26 -0
  348. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js.map +1 -0
  349. package/features/redirects/InvalidateRedirectsCache/abstractions.d.ts +15 -0
  350. package/features/redirects/InvalidateRedirectsCache/abstractions.js +9 -0
  351. package/features/redirects/InvalidateRedirectsCache/abstractions.js.map +1 -0
  352. package/features/redirects/InvalidateRedirectsCache/feature.d.ts +1 -0
  353. package/features/redirects/InvalidateRedirectsCache/feature.js +16 -0
  354. package/features/redirects/InvalidateRedirectsCache/feature.js.map +1 -0
  355. package/features/redirects/InvalidateRedirectsCache/index.d.ts +1 -0
  356. package/features/redirects/InvalidateRedirectsCache/index.js +3 -0
  357. package/features/redirects/InvalidateRedirectsCache/index.js.map +1 -0
  358. package/features/redirects/ListRedirects/ListRedirectsRepository.d.ts +16 -0
  359. package/features/redirects/ListRedirects/ListRedirectsRepository.js +46 -0
  360. package/features/redirects/ListRedirects/ListRedirectsRepository.js.map +1 -0
  361. package/features/redirects/ListRedirects/ListRedirectsUseCase.d.ts +12 -0
  362. package/features/redirects/ListRedirects/ListRedirectsUseCase.js +36 -0
  363. package/features/redirects/ListRedirects/ListRedirectsUseCase.js.map +1 -0
  364. package/features/redirects/ListRedirects/abstractions.d.ts +69 -0
  365. package/features/redirects/ListRedirects/abstractions.js +19 -0
  366. package/features/redirects/ListRedirects/abstractions.js.map +1 -0
  367. package/features/redirects/ListRedirects/feature.d.ts +1 -0
  368. package/features/redirects/ListRedirects/feature.js +12 -0
  369. package/features/redirects/ListRedirects/feature.js.map +1 -0
  370. package/features/redirects/ListRedirects/index.d.ts +1 -9
  371. package/features/redirects/ListRedirects/index.js +1 -14
  372. package/features/redirects/ListRedirects/index.js.map +1 -1
  373. package/features/redirects/MoveRedirect/MoveRedirectRepository.d.ts +15 -0
  374. package/features/redirects/MoveRedirect/MoveRedirectRepository.js +39 -0
  375. package/features/redirects/MoveRedirect/MoveRedirectRepository.js.map +1 -0
  376. package/features/redirects/MoveRedirect/MoveRedirectUseCase.d.ts +14 -0
  377. package/features/redirects/MoveRedirect/MoveRedirectUseCase.js +61 -0
  378. package/features/redirects/MoveRedirect/MoveRedirectUseCase.js.map +1 -0
  379. package/features/redirects/MoveRedirect/abstractions.d.ts +64 -0
  380. package/features/redirects/MoveRedirect/abstractions.js +30 -0
  381. package/features/redirects/MoveRedirect/abstractions.js.map +1 -0
  382. package/features/redirects/MoveRedirect/events.d.ts +10 -0
  383. package/features/redirects/MoveRedirect/events.js +19 -0
  384. package/features/redirects/MoveRedirect/events.js.map +1 -0
  385. package/features/redirects/MoveRedirect/feature.d.ts +1 -0
  386. package/features/redirects/MoveRedirect/feature.js +12 -0
  387. package/features/redirects/MoveRedirect/feature.js.map +1 -0
  388. package/features/redirects/MoveRedirect/index.d.ts +1 -16
  389. package/features/redirects/MoveRedirect/index.js +1 -16
  390. package/features/redirects/MoveRedirect/index.js.map +1 -1
  391. package/features/redirects/UpdateRedirect/UpdateRedirectRepository.d.ts +15 -0
  392. package/features/redirects/UpdateRedirect/UpdateRedirectRepository.js +47 -0
  393. package/features/redirects/UpdateRedirect/UpdateRedirectRepository.js.map +1 -0
  394. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.d.ts +16 -0
  395. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js +66 -0
  396. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js.map +1 -0
  397. package/features/redirects/UpdateRedirect/abstractions.d.ts +76 -0
  398. package/features/redirects/UpdateRedirect/abstractions.js +30 -0
  399. package/features/redirects/UpdateRedirect/abstractions.js.map +1 -0
  400. package/features/redirects/UpdateRedirect/events.d.ts +10 -0
  401. package/features/redirects/UpdateRedirect/events.js +19 -0
  402. package/features/redirects/UpdateRedirect/events.js.map +1 -0
  403. package/features/redirects/UpdateRedirect/feature.d.ts +1 -0
  404. package/features/redirects/UpdateRedirect/feature.js +12 -0
  405. package/features/redirects/UpdateRedirect/feature.js.map +1 -0
  406. package/features/redirects/UpdateRedirect/index.d.ts +1 -16
  407. package/features/redirects/UpdateRedirect/index.js +1 -16
  408. package/features/redirects/UpdateRedirect/index.js.map +1 -1
  409. package/features/tenantManager/TenantModelExtension.d.ts +8 -0
  410. package/features/tenantManager/TenantModelExtension.js +36 -0
  411. package/features/tenantManager/TenantModelExtension.js.map +1 -0
  412. package/features/tenantManager/feature.d.ts +1 -0
  413. package/features/tenantManager/feature.js +10 -0
  414. package/features/tenantManager/feature.js.map +1 -0
  415. package/graphql/createGraphQL.d.ts +1 -1
  416. package/graphql/createGraphQL.js +6 -13
  417. package/graphql/createGraphQL.js.map +1 -1
  418. package/graphql/nextjs/NextjsGraphQLSchema.d.ts +9 -0
  419. package/graphql/nextjs/NextjsGraphQLSchema.js +48 -0
  420. package/graphql/nextjs/NextjsGraphQLSchema.js.map +1 -0
  421. package/graphql/pages/pages.gql.d.ts +2 -2
  422. package/graphql/pages/pages.gql.js +164 -85
  423. package/graphql/pages/pages.gql.js.map +1 -1
  424. package/graphql/pages/pages.typeDefs.d.ts +1 -1
  425. package/graphql/pages/pages.typeDefs.js +4 -10
  426. package/graphql/pages/pages.typeDefs.js.map +1 -1
  427. package/graphql/redirects/redirects.gql.d.ts +2 -2
  428. package/graphql/redirects/redirects.gql.js +61 -33
  429. package/graphql/redirects/redirects.gql.js.map +1 -1
  430. package/graphql/redirects/redirects.typeDefs.js +5 -10
  431. package/graphql/redirects/redirects.typeDefs.js.map +1 -1
  432. package/index.d.ts +1 -3
  433. package/index.js +81 -14
  434. package/index.js.map +1 -1
  435. package/package.json +24 -32
  436. package/rest/ActiveRedirectDto.js +1 -5
  437. package/rest/ActiveRedirectRestMapper.d.ts +2 -2
  438. package/rest/ActiveRedirectRestMapper.js +1 -8
  439. package/rest/ActiveRedirectRestMapper.js.map +1 -1
  440. package/rest/getRedirects.d.ts +2 -2
  441. package/rest/getRedirects.js +10 -15
  442. package/rest/getRedirects.js.map +1 -1
  443. package/utils/ensureAuthentication.d.ts +6 -2
  444. package/utils/ensureAuthentication.js +10 -12
  445. package/utils/ensureAuthentication.js.map +1 -1
  446. package/utils/resolve.d.ts +1 -2
  447. package/utils/resolve.js +4 -20
  448. package/utils/resolve.js.map +1 -1
  449. package/context/BaseContext.d.ts +0 -11
  450. package/context/BaseContext.js +0 -41
  451. package/context/BaseContext.js.map +0 -1
  452. package/context/WebsiteBuilder.d.ts +0 -15
  453. package/context/WebsiteBuilder.js +0 -65
  454. package/context/WebsiteBuilder.js.map +0 -1
  455. package/context/pages/PagesStorage.d.ts +0 -33
  456. package/context/pages/PagesStorage.js +0 -123
  457. package/context/pages/PagesStorage.js.map +0 -1
  458. package/context/pages/pages.context.d.ts +0 -11
  459. package/context/pages/pages.context.js +0 -82
  460. package/context/pages/pages.context.js.map +0 -1
  461. package/context/pages/pages.crud.d.ts +0 -3
  462. package/context/pages/pages.crud.js +0 -208
  463. package/context/pages/pages.crud.js.map +0 -1
  464. package/context/pages/pages.types.d.ts +0 -247
  465. package/context/pages/pages.types.js +0 -7
  466. package/context/pages/pages.types.js.map +0 -1
  467. package/context/redirects/RedirectsStorage.d.ts +0 -21
  468. package/context/redirects/RedirectsStorage.js +0 -88
  469. package/context/redirects/RedirectsStorage.js.map +0 -1
  470. package/context/redirects/redirects.context.d.ts +0 -11
  471. package/context/redirects/redirects.context.js +0 -80
  472. package/context/redirects/redirects.context.js.map +0 -1
  473. package/context/redirects/redirects.crud.d.ts +0 -3
  474. package/context/redirects/redirects.crud.js +0 -116
  475. package/context/redirects/redirects.crud.js.map +0 -1
  476. package/context/redirects/redirects.types.d.ts +0 -147
  477. package/context/redirects/redirects.types.js +0 -7
  478. package/context/redirects/redirects.types.js.map +0 -1
  479. package/context/types.d.ts +0 -29
  480. package/context/types.js +0 -7
  481. package/context/types.js.map +0 -1
  482. package/features/pages/CreatePage/CreatePage.d.ts +0 -7
  483. package/features/pages/CreatePage/CreatePage.js +0 -19
  484. package/features/pages/CreatePage/CreatePage.js.map +0 -1
  485. package/features/pages/CreatePage/CreatePageWithEvents.d.ts +0 -9
  486. package/features/pages/CreatePage/CreatePageWithEvents.js +0 -25
  487. package/features/pages/CreatePage/CreatePageWithEvents.js.map +0 -1
  488. package/features/pages/CreatePage/ICreatePage.d.ts +0 -4
  489. package/features/pages/CreatePage/ICreatePage.js +0 -7
  490. package/features/pages/CreatePage/ICreatePage.js.map +0 -1
  491. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.d.ts +0 -7
  492. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.js +0 -17
  493. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.js.map +0 -1
  494. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.d.ts +0 -10
  495. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js +0 -32
  496. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js.map +0 -1
  497. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.d.ts +0 -4
  498. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.js +0 -7
  499. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.js.map +0 -1
  500. package/features/pages/DeletePage/DeletePage.d.ts +0 -7
  501. package/features/pages/DeletePage/DeletePage.js +0 -17
  502. package/features/pages/DeletePage/DeletePage.js.map +0 -1
  503. package/features/pages/DeletePage/DeletePageWithEvents.d.ts +0 -10
  504. package/features/pages/DeletePage/DeletePageWithEvents.js +0 -30
  505. package/features/pages/DeletePage/DeletePageWithEvents.js.map +0 -1
  506. package/features/pages/DeletePage/IDeletePage.d.ts +0 -4
  507. package/features/pages/DeletePage/IDeletePage.js +0 -7
  508. package/features/pages/DeletePage/IDeletePage.js.map +0 -1
  509. package/features/pages/DuplicatePage/DuplicatePage.d.ts +0 -9
  510. package/features/pages/DuplicatePage/DuplicatePage.js +0 -39
  511. package/features/pages/DuplicatePage/DuplicatePage.js.map +0 -1
  512. package/features/pages/DuplicatePage/DuplicatePageWithEvents.d.ts +0 -10
  513. package/features/pages/DuplicatePage/DuplicatePageWithEvents.js +0 -32
  514. package/features/pages/DuplicatePage/DuplicatePageWithEvents.js.map +0 -1
  515. package/features/pages/DuplicatePage/IDuplicatePage.d.ts +0 -4
  516. package/features/pages/DuplicatePage/IDuplicatePage.js +0 -7
  517. package/features/pages/DuplicatePage/IDuplicatePage.js.map +0 -1
  518. package/features/pages/GetPageById/GetPageById.d.ts +0 -7
  519. package/features/pages/GetPageById/GetPageById.js +0 -17
  520. package/features/pages/GetPageById/GetPageById.js.map +0 -1
  521. package/features/pages/GetPageById/IGetPageById.d.ts +0 -4
  522. package/features/pages/GetPageById/IGetPageById.js +0 -7
  523. package/features/pages/GetPageById/IGetPageById.js.map +0 -1
  524. package/features/pages/GetPageByPath/GetPageByPath.d.ts +0 -11
  525. package/features/pages/GetPageByPath/GetPageByPath.js +0 -28
  526. package/features/pages/GetPageByPath/GetPageByPath.js.map +0 -1
  527. package/features/pages/GetPageByPath/IGetPageByPath.d.ts +0 -4
  528. package/features/pages/GetPageByPath/IGetPageByPath.js +0 -7
  529. package/features/pages/GetPageByPath/IGetPageByPath.js.map +0 -1
  530. package/features/pages/GetPageRevisions/GetPageRevisions.d.ts +0 -7
  531. package/features/pages/GetPageRevisions/GetPageRevisions.js +0 -17
  532. package/features/pages/GetPageRevisions/GetPageRevisions.js.map +0 -1
  533. package/features/pages/GetPageRevisions/IGetPageById.d.ts +0 -4
  534. package/features/pages/GetPageRevisions/IGetPageById.js +0 -7
  535. package/features/pages/GetPageRevisions/IGetPageById.js.map +0 -1
  536. package/features/pages/ListPages/IListPages.d.ts +0 -17
  537. package/features/pages/ListPages/IListPages.js +0 -7
  538. package/features/pages/ListPages/IListPages.js.map +0 -1
  539. package/features/pages/ListPages/ListPages.d.ts +0 -7
  540. package/features/pages/ListPages/ListPages.js +0 -17
  541. package/features/pages/ListPages/ListPages.js.map +0 -1
  542. package/features/pages/MovePage/IMovePage.d.ts +0 -4
  543. package/features/pages/MovePage/IMovePage.js +0 -7
  544. package/features/pages/MovePage/IMovePage.js.map +0 -1
  545. package/features/pages/MovePage/MovePage.d.ts +0 -7
  546. package/features/pages/MovePage/MovePage.js +0 -17
  547. package/features/pages/MovePage/MovePage.js.map +0 -1
  548. package/features/pages/MovePage/MovePageWithEvents.d.ts +0 -10
  549. package/features/pages/MovePage/MovePageWithEvents.js +0 -32
  550. package/features/pages/MovePage/MovePageWithEvents.js.map +0 -1
  551. package/features/pages/PublishPage/IPublishPage.d.ts +0 -4
  552. package/features/pages/PublishPage/IPublishPage.js +0 -7
  553. package/features/pages/PublishPage/IPublishPage.js.map +0 -1
  554. package/features/pages/PublishPage/PublishPage.d.ts +0 -7
  555. package/features/pages/PublishPage/PublishPage.js +0 -17
  556. package/features/pages/PublishPage/PublishPage.js.map +0 -1
  557. package/features/pages/PublishPage/PublishPageWithEvents.d.ts +0 -10
  558. package/features/pages/PublishPage/PublishPageWithEvents.js +0 -31
  559. package/features/pages/PublishPage/PublishPageWithEvents.js.map +0 -1
  560. package/features/pages/UnpublishPage/IUnpublishPage.d.ts +0 -4
  561. package/features/pages/UnpublishPage/IUnpublishPage.js +0 -7
  562. package/features/pages/UnpublishPage/IUnpublishPage.js.map +0 -1
  563. package/features/pages/UnpublishPage/UnpublishPage.d.ts +0 -7
  564. package/features/pages/UnpublishPage/UnpublishPage.js +0 -17
  565. package/features/pages/UnpublishPage/UnpublishPage.js.map +0 -1
  566. package/features/pages/UnpublishPage/UnpublishPageWithEvents.d.ts +0 -10
  567. package/features/pages/UnpublishPage/UnpublishPageWithEvents.js +0 -31
  568. package/features/pages/UnpublishPage/UnpublishPageWithEvents.js.map +0 -1
  569. package/features/pages/UpdatePage/IUpdatePage.d.ts +0 -4
  570. package/features/pages/UpdatePage/IUpdatePage.js +0 -7
  571. package/features/pages/UpdatePage/IUpdatePage.js.map +0 -1
  572. package/features/pages/UpdatePage/UpdatePage.d.ts +0 -7
  573. package/features/pages/UpdatePage/UpdatePage.js +0 -20
  574. package/features/pages/UpdatePage/UpdatePage.js.map +0 -1
  575. package/features/pages/UpdatePage/UpdatePageWithEvents.d.ts +0 -10
  576. package/features/pages/UpdatePage/UpdatePageWithEvents.js +0 -40
  577. package/features/pages/UpdatePage/UpdatePageWithEvents.js.map +0 -1
  578. package/features/pages/index.d.ts +0 -9
  579. package/features/pages/index.js +0 -106
  580. package/features/pages/index.js.map +0 -1
  581. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.d.ts +0 -9
  582. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.js +0 -25
  583. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.js.map +0 -1
  584. package/features/redirects/CreateRedirect/CreateRevision.d.ts +0 -7
  585. package/features/redirects/CreateRedirect/CreateRevision.js +0 -19
  586. package/features/redirects/CreateRedirect/CreateRevision.js.map +0 -1
  587. package/features/redirects/CreateRedirect/ICreateRedirect.d.ts +0 -4
  588. package/features/redirects/CreateRedirect/ICreateRedirect.js +0 -7
  589. package/features/redirects/CreateRedirect/ICreateRedirect.js.map +0 -1
  590. package/features/redirects/DeleteRedirect/DeleteRedirect.d.ts +0 -7
  591. package/features/redirects/DeleteRedirect/DeleteRedirect.js +0 -17
  592. package/features/redirects/DeleteRedirect/DeleteRedirect.js.map +0 -1
  593. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.d.ts +0 -10
  594. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.js +0 -30
  595. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.js.map +0 -1
  596. package/features/redirects/DeleteRedirect/IDeleteRedirect.d.ts +0 -4
  597. package/features/redirects/DeleteRedirect/IDeleteRedirect.js +0 -7
  598. package/features/redirects/DeleteRedirect/IDeleteRedirect.js.map +0 -1
  599. package/features/redirects/GetActiveRedirects/GetActiveRedirects.d.ts +0 -7
  600. package/features/redirects/GetActiveRedirects/GetActiveRedirects.js +0 -26
  601. package/features/redirects/GetActiveRedirects/GetActiveRedirects.js.map +0 -1
  602. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.d.ts +0 -4
  603. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.js +0 -7
  604. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.js.map +0 -1
  605. package/features/redirects/GetRedirectById/GetRedirectById.d.ts +0 -7
  606. package/features/redirects/GetRedirectById/GetRedirectById.js +0 -17
  607. package/features/redirects/GetRedirectById/GetRedirectById.js.map +0 -1
  608. package/features/redirects/GetRedirectById/IGetRedirectById.d.ts +0 -4
  609. package/features/redirects/GetRedirectById/IGetRedirectById.js +0 -7
  610. package/features/redirects/GetRedirectById/IGetRedirectById.js.map +0 -1
  611. package/features/redirects/InvalidateRedirectsCache.d.ts +0 -7
  612. package/features/redirects/InvalidateRedirectsCache.js +0 -24
  613. package/features/redirects/InvalidateRedirectsCache.js.map +0 -1
  614. package/features/redirects/ListRedirects/IListRedirects.d.ts +0 -17
  615. package/features/redirects/ListRedirects/IListRedirects.js +0 -7
  616. package/features/redirects/ListRedirects/IListRedirects.js.map +0 -1
  617. package/features/redirects/ListRedirects/ListRedirects.d.ts +0 -7
  618. package/features/redirects/ListRedirects/ListRedirects.js +0 -17
  619. package/features/redirects/ListRedirects/ListRedirects.js.map +0 -1
  620. package/features/redirects/MoveRedirect/IMoveRedirect.d.ts +0 -4
  621. package/features/redirects/MoveRedirect/IMoveRedirect.js +0 -7
  622. package/features/redirects/MoveRedirect/IMoveRedirect.js.map +0 -1
  623. package/features/redirects/MoveRedirect/MoveRedirect.d.ts +0 -7
  624. package/features/redirects/MoveRedirect/MoveRedirect.js +0 -17
  625. package/features/redirects/MoveRedirect/MoveRedirect.js.map +0 -1
  626. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.d.ts +0 -10
  627. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.js +0 -32
  628. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.js.map +0 -1
  629. package/features/redirects/UpdateRedirect/IUpdateRedirect.d.ts +0 -4
  630. package/features/redirects/UpdateRedirect/IUpdateRedirect.js +0 -7
  631. package/features/redirects/UpdateRedirect/IUpdateRedirect.js.map +0 -1
  632. package/features/redirects/UpdateRedirect/UpdateRedirect.d.ts +0 -7
  633. package/features/redirects/UpdateRedirect/UpdateRedirect.js +0 -20
  634. package/features/redirects/UpdateRedirect/UpdateRedirect.js.map +0 -1
  635. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.d.ts +0 -10
  636. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.js +0 -40
  637. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.js.map +0 -1
  638. package/features/redirects/index.d.ts +0 -7
  639. package/features/redirects/index.js +0 -84
  640. package/features/redirects/index.js.map +0 -1
@@ -0,0 +1,5 @@
1
+ import type { CmsIdentity } from "@webiny/api-headless-cms/types/index.js";
2
+ export interface WbLocation {
3
+ folderId: string;
4
+ }
5
+ export type WbIdentity = CmsIdentity;
@@ -0,0 +1,3 @@
1
+ export {};
2
+
3
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["abstractions.ts"],"sourcesContent":["import type { CmsIdentity } from \"@webiny/api-headless-cms/types/index.js\";\n\nexport interface WbLocation {\n folderId: string;\n}\n\nexport type WbIdentity = CmsIdentity;\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export { NextjsConfig } from "../../../features/nextjs/abstractions.js";
@@ -0,0 +1,3 @@
1
+ export { NextjsConfig } from "../../../features/nextjs/abstractions.js";
2
+
3
+ //# sourceMappingURL=nextjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["NextjsConfig"],"sources":["nextjs.ts"],"sourcesContent":["export { NextjsConfig } from \"~/features/nextjs/abstractions.js\";\n"],"mappings":"AAAA,SAASA,YAAY","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ export { CreatePageUseCase, PageAfterCreateHandler, PageBeforeCreateHandler } from "../../../features/pages/CreatePage/abstractions.js";
2
+ export { CreatePageRevisionFromUseCase, PageAfterCreateRevisionFromHandler, PageBeforeCreateRevisionFromHandler } from "../../../features/pages/CreatePageRevisionFrom/abstractions.js";
3
+ export { DeletePageUseCase, PageAfterDeleteHandler, PageBeforeDeleteHandler } from "../../../features/pages/DeletePage/abstractions.js";
4
+ export { DuplicatePageUseCase, PageAfterDuplicateHandler, PageBeforeDuplicateHandler } from "../../../features/pages/DuplicatePage/abstractions.js";
5
+ export { GetPageByIdUseCase } from "../../../features/pages/GetPageById/abstractions.js";
6
+ export { GetPageByPathUseCase } from "../../../features/pages/GetPageByPath/abstractions.js";
7
+ export { GetPageRevisionsUseCase } from "../../../features/pages/GetPageRevisions/abstractions.js";
8
+ export { ListPagesUseCase } from "../../../features/pages/ListPages/abstractions.js";
9
+ export { MovePageUseCase, PageAfterMoveHandler, PageBeforeMoveHandler } from "../../../features/pages/MovePage/abstractions.js";
10
+ export { PublishPageUseCase, PageAfterPublishHandler, PageBeforePublishHandler } from "../../../features/pages/PublishPage/abstractions.js";
11
+ export { UnpublishPageUseCase, PageAfterUnpublishHandler, PageBeforeUnpublishHandler } from "../../../features/pages/UnpublishPage/abstractions.js";
12
+ export { UpdatePageUseCase, PageAfterUpdateHandler, PageBeforeUpdateHandler } from "../../../features/pages/UpdatePage/abstractions.js";
@@ -0,0 +1,14 @@
1
+ export { CreatePageUseCase, PageAfterCreateHandler, PageBeforeCreateHandler } from "../../../features/pages/CreatePage/abstractions.js";
2
+ export { CreatePageRevisionFromUseCase, PageAfterCreateRevisionFromHandler, PageBeforeCreateRevisionFromHandler } from "../../../features/pages/CreatePageRevisionFrom/abstractions.js";
3
+ export { DeletePageUseCase, PageAfterDeleteHandler, PageBeforeDeleteHandler } from "../../../features/pages/DeletePage/abstractions.js";
4
+ export { DuplicatePageUseCase, PageAfterDuplicateHandler, PageBeforeDuplicateHandler } from "../../../features/pages/DuplicatePage/abstractions.js";
5
+ export { GetPageByIdUseCase } from "../../../features/pages/GetPageById/abstractions.js";
6
+ export { GetPageByPathUseCase } from "../../../features/pages/GetPageByPath/abstractions.js";
7
+ export { GetPageRevisionsUseCase } from "../../../features/pages/GetPageRevisions/abstractions.js";
8
+ export { ListPagesUseCase } from "../../../features/pages/ListPages/abstractions.js";
9
+ export { MovePageUseCase, PageAfterMoveHandler, PageBeforeMoveHandler } from "../../../features/pages/MovePage/abstractions.js";
10
+ export { PublishPageUseCase, PageAfterPublishHandler, PageBeforePublishHandler } from "../../../features/pages/PublishPage/abstractions.js";
11
+ export { UnpublishPageUseCase, PageAfterUnpublishHandler, PageBeforeUnpublishHandler } from "../../../features/pages/UnpublishPage/abstractions.js";
12
+ export { UpdatePageUseCase, PageAfterUpdateHandler, PageBeforeUpdateHandler } from "../../../features/pages/UpdatePage/abstractions.js";
13
+
14
+ //# sourceMappingURL=page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CreatePageUseCase","PageAfterCreateHandler","PageBeforeCreateHandler","CreatePageRevisionFromUseCase","PageAfterCreateRevisionFromHandler","PageBeforeCreateRevisionFromHandler","DeletePageUseCase","PageAfterDeleteHandler","PageBeforeDeleteHandler","DuplicatePageUseCase","PageAfterDuplicateHandler","PageBeforeDuplicateHandler","GetPageByIdUseCase","GetPageByPathUseCase","GetPageRevisionsUseCase","ListPagesUseCase","MovePageUseCase","PageAfterMoveHandler","PageBeforeMoveHandler","PublishPageUseCase","PageAfterPublishHandler","PageBeforePublishHandler","UnpublishPageUseCase","PageAfterUnpublishHandler","PageBeforeUnpublishHandler","UpdatePageUseCase","PageAfterUpdateHandler","PageBeforeUpdateHandler"],"sources":["page.ts"],"sourcesContent":["export {\n CreatePageUseCase,\n PageAfterCreateHandler,\n PageBeforeCreateHandler\n} from \"~/features/pages/CreatePage/abstractions.js\";\nexport {\n CreatePageRevisionFromUseCase,\n PageAfterCreateRevisionFromHandler,\n PageBeforeCreateRevisionFromHandler\n} from \"~/features/pages/CreatePageRevisionFrom/abstractions.js\";\nexport {\n DeletePageUseCase,\n PageAfterDeleteHandler,\n PageBeforeDeleteHandler\n} from \"~/features/pages/DeletePage/abstractions.js\";\nexport {\n DuplicatePageUseCase,\n PageAfterDuplicateHandler,\n PageBeforeDuplicateHandler\n} from \"~/features/pages/DuplicatePage/abstractions.js\";\nexport { GetPageByIdUseCase } from \"~/features/pages/GetPageById/abstractions.js\";\nexport { GetPageByPathUseCase } from \"~/features/pages/GetPageByPath/abstractions.js\";\nexport { GetPageRevisionsUseCase } from \"~/features/pages/GetPageRevisions/abstractions.js\";\nexport { ListPagesUseCase } from \"~/features/pages/ListPages/abstractions.js\";\nexport {\n MovePageUseCase,\n PageAfterMoveHandler,\n PageBeforeMoveHandler\n} from \"~/features/pages/MovePage/abstractions.js\";\nexport {\n PublishPageUseCase,\n PageAfterPublishHandler,\n PageBeforePublishHandler\n} from \"~/features/pages/PublishPage/abstractions.js\";\nexport {\n UnpublishPageUseCase,\n PageAfterUnpublishHandler,\n PageBeforeUnpublishHandler\n} from \"~/features/pages/UnpublishPage/abstractions.js\";\nexport {\n UpdatePageUseCase,\n PageAfterUpdateHandler,\n PageBeforeUpdateHandler\n} from \"~/features/pages/UpdatePage/abstractions.js\";\n"],"mappings":"AAAA,SACIA,iBAAiB,EACjBC,sBAAsB,EACtBC,uBAAuB;AAE3B,SACIC,6BAA6B,EAC7BC,kCAAkC,EAClCC,mCAAmC;AAEvC,SACIC,iBAAiB,EACjBC,sBAAsB,EACtBC,uBAAuB;AAE3B,SACIC,oBAAoB,EACpBC,yBAAyB,EACzBC,0BAA0B;AAE9B,SAASC,kBAAkB;AAC3B,SAASC,oBAAoB;AAC7B,SAASC,uBAAuB;AAChC,SAASC,gBAAgB;AACzB,SACIC,eAAe,EACfC,oBAAoB,EACpBC,qBAAqB;AAEzB,SACIC,kBAAkB,EAClBC,uBAAuB,EACvBC,wBAAwB;AAE5B,SACIC,oBAAoB,EACpBC,yBAAyB,EACzBC,0BAA0B;AAE9B,SACIC,iBAAiB,EACjBC,sBAAsB,EACtBC,uBAAuB","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ export { CreateRedirectUseCase, RedirectAfterCreateHandler, RedirectBeforeCreateHandler } from "../../../features/redirects/CreateRedirect/abstractions.js";
2
+ export { DeleteRedirectUseCase, RedirectAfterDeleteHandler, RedirectBeforeDeleteHandler } from "../../../features/redirects/DeleteRedirect/abstractions.js";
3
+ export { GetActiveRedirectsUseCase } from "../../../features/redirects/GetActiveRedirects/abstractions.js";
4
+ export { GetRedirectByIdUseCase } from "../../../features/redirects/GetRedirectById/abstractions.js";
5
+ export { InvalidateRedirectsCacheUseCase } from "../../../features/redirects/InvalidateRedirectsCache/abstractions.js";
6
+ export { ListRedirectsUseCase } from "../../../features/redirects/ListRedirects/abstractions.js";
7
+ export { MoveRedirectUseCase, RedirectAfterMoveHandler, RedirectBeforeMoveHandler } from "../../../features/redirects/MoveRedirect/abstractions.js";
8
+ export { UpdateRedirectUseCase, RedirectAfterUpdateHandler, RedirectBeforeUpdateHandler } from "../../../features/redirects/UpdateRedirect/abstractions.js";
@@ -0,0 +1,10 @@
1
+ export { CreateRedirectUseCase, RedirectAfterCreateHandler, RedirectBeforeCreateHandler } from "../../../features/redirects/CreateRedirect/abstractions.js";
2
+ export { DeleteRedirectUseCase, RedirectAfterDeleteHandler, RedirectBeforeDeleteHandler } from "../../../features/redirects/DeleteRedirect/abstractions.js";
3
+ export { GetActiveRedirectsUseCase } from "../../../features/redirects/GetActiveRedirects/abstractions.js";
4
+ export { GetRedirectByIdUseCase } from "../../../features/redirects/GetRedirectById/abstractions.js";
5
+ export { InvalidateRedirectsCacheUseCase } from "../../../features/redirects/InvalidateRedirectsCache/abstractions.js";
6
+ export { ListRedirectsUseCase } from "../../../features/redirects/ListRedirects/abstractions.js";
7
+ export { MoveRedirectUseCase, RedirectAfterMoveHandler, RedirectBeforeMoveHandler } from "../../../features/redirects/MoveRedirect/abstractions.js";
8
+ export { UpdateRedirectUseCase, RedirectAfterUpdateHandler, RedirectBeforeUpdateHandler } from "../../../features/redirects/UpdateRedirect/abstractions.js";
9
+
10
+ //# sourceMappingURL=redirect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CreateRedirectUseCase","RedirectAfterCreateHandler","RedirectBeforeCreateHandler","DeleteRedirectUseCase","RedirectAfterDeleteHandler","RedirectBeforeDeleteHandler","GetActiveRedirectsUseCase","GetRedirectByIdUseCase","InvalidateRedirectsCacheUseCase","ListRedirectsUseCase","MoveRedirectUseCase","RedirectAfterMoveHandler","RedirectBeforeMoveHandler","UpdateRedirectUseCase","RedirectAfterUpdateHandler","RedirectBeforeUpdateHandler"],"sources":["redirect.ts"],"sourcesContent":["export {\n CreateRedirectUseCase,\n RedirectAfterCreateHandler,\n RedirectBeforeCreateHandler\n} from \"~/features/redirects/CreateRedirect/abstractions.js\";\nexport {\n DeleteRedirectUseCase,\n RedirectAfterDeleteHandler,\n RedirectBeforeDeleteHandler\n} from \"~/features/redirects/DeleteRedirect/abstractions.js\";\nexport { GetActiveRedirectsUseCase } from \"~/features/redirects/GetActiveRedirects/abstractions.js\";\nexport { GetRedirectByIdUseCase } from \"~/features/redirects/GetRedirectById/abstractions.js\";\nexport { InvalidateRedirectsCacheUseCase } from \"~/features/redirects/InvalidateRedirectsCache/abstractions.js\";\nexport { ListRedirectsUseCase } from \"~/features/redirects/ListRedirects/abstractions.js\";\nexport {\n MoveRedirectUseCase,\n RedirectAfterMoveHandler,\n RedirectBeforeMoveHandler\n} from \"~/features/redirects/MoveRedirect/abstractions.js\";\nexport {\n UpdateRedirectUseCase,\n RedirectAfterUpdateHandler,\n RedirectBeforeUpdateHandler\n} from \"~/features/redirects/UpdateRedirect/abstractions.js\";\n"],"mappings":"AAAA,SACIA,qBAAqB,EACrBC,0BAA0B,EAC1BC,2BAA2B;AAE/B,SACIC,qBAAqB,EACrBC,0BAA0B,EAC1BC,2BAA2B;AAE/B,SAASC,yBAAyB;AAClC,SAASC,sBAAsB;AAC/B,SAASC,+BAA+B;AACxC,SAASC,oBAAoB;AAC7B,SACIC,mBAAmB,EACnBC,wBAAwB,EACxBC,yBAAyB;AAE7B,SACIC,qBAAqB,EACrBC,0BAA0B,EAC1BC,2BAA2B","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ import { AppInstaller } from "@webiny/api-core/features/InstallTenant";
2
+ import { CreateApiKeyUseCase } from "@webiny/api-core/features/security/apiKeys/CreateApiKey/index.js";
3
+ import { DeleteApiKeyUseCase } from "@webiny/api-core/features/security/apiKeys/DeleteApiKey/index.js";
4
+ import { WcpContext } from "@webiny/api-core/features/wcp/WcpContext/index.js";
5
+ declare class ApiKeyInstallerImpl implements AppInstaller.Interface {
6
+ private wcpContext;
7
+ private createApiKey;
8
+ private deleteApiKey;
9
+ readonly alwaysRun = true;
10
+ readonly appName = "WebsiteBuilder";
11
+ readonly dependsOn: never[];
12
+ private apiKey;
13
+ constructor(wcpContext: WcpContext.Interface, createApiKey: CreateApiKeyUseCase.Interface, deleteApiKey: DeleteApiKeyUseCase.Interface);
14
+ install(): Promise<void>;
15
+ uninstall(): Promise<void>;
16
+ }
17
+ export declare const ApiKeyInstaller: typeof ApiKeyInstallerImpl & {
18
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/api-core/features/tenancy/InstallTenant/abstractions").IAppInstaller<Record<string, any>>>;
19
+ };
20
+ export {};
@@ -0,0 +1,44 @@
1
+ import { AppInstaller } from "@webiny/api-core/features/InstallTenant";
2
+ import { CreateApiKeyUseCase } from "@webiny/api-core/features/security/apiKeys/CreateApiKey/index.js";
3
+ import { DeleteApiKeyUseCase } from "@webiny/api-core/features/security/apiKeys/DeleteApiKey/index.js";
4
+ import { WcpContext } from "@webiny/api-core/features/wcp/WcpContext/index.js";
5
+ class ApiKeyInstallerImpl {
6
+ alwaysRun = true;
7
+ appName = "WebsiteBuilder";
8
+ dependsOn = [];
9
+ apiKey = undefined;
10
+ constructor(wcpContext, createApiKey, deleteApiKey) {
11
+ this.wcpContext = wcpContext;
12
+ this.createApiKey = createApiKey;
13
+ this.deleteApiKey = deleteApiKey;
14
+ }
15
+ async install() {
16
+ const aacl = this.wcpContext.canUseAacl();
17
+ const permissions = aacl ? [{
18
+ name: "wb.page",
19
+ rwd: "r"
20
+ }] : [{
21
+ name: "wb.*"
22
+ }];
23
+ const result = await this.createApiKey.execute({
24
+ name: "Website Builder",
25
+ description: "Integrate Next.js or custom frontend with Website Builder.",
26
+ slug: "website-builder",
27
+ permissions
28
+ });
29
+ if (result.isOk()) {
30
+ this.apiKey = result.value;
31
+ }
32
+ }
33
+ async uninstall() {
34
+ if (this.apiKey) {
35
+ await this.deleteApiKey.execute(this.apiKey.id);
36
+ }
37
+ }
38
+ }
39
+ export const ApiKeyInstaller = AppInstaller.createImplementation({
40
+ implementation: ApiKeyInstallerImpl,
41
+ dependencies: [WcpContext, CreateApiKeyUseCase, DeleteApiKeyUseCase]
42
+ });
43
+
44
+ //# sourceMappingURL=ApiKeyInstaller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AppInstaller","CreateApiKeyUseCase","DeleteApiKeyUseCase","WcpContext","ApiKeyInstallerImpl","alwaysRun","appName","dependsOn","apiKey","undefined","constructor","wcpContext","createApiKey","deleteApiKey","install","aacl","canUseAacl","permissions","name","rwd","result","execute","description","slug","isOk","value","uninstall","id","ApiKeyInstaller","createImplementation","implementation","dependencies"],"sources":["ApiKeyInstaller.ts"],"sourcesContent":["import { AppInstaller } from \"@webiny/api-core/features/InstallTenant\";\nimport { CreateApiKeyUseCase } from \"@webiny/api-core/features/security/apiKeys/CreateApiKey/index.js\";\nimport { DeleteApiKeyUseCase } from \"@webiny/api-core/features/security/apiKeys/DeleteApiKey/index.js\";\nimport type { ApiKey } from \"@webiny/api-core/types/security.js\";\nimport { WcpContext } from \"@webiny/api-core/features/wcp/WcpContext/index.js\";\n\nclass ApiKeyInstallerImpl implements AppInstaller.Interface {\n readonly alwaysRun = true;\n readonly appName = \"WebsiteBuilder\";\n readonly dependsOn = [];\n private apiKey: ApiKey | undefined = undefined;\n\n constructor(\n private wcpContext: WcpContext.Interface,\n private createApiKey: CreateApiKeyUseCase.Interface,\n private deleteApiKey: DeleteApiKeyUseCase.Interface\n ) {}\n\n async install(): Promise<void> {\n const aacl = this.wcpContext.canUseAacl();\n\n const permissions = aacl ? [{ name: \"wb.page\", rwd: \"r\" }] : [{ name: \"wb.*\" }];\n\n const result = await this.createApiKey.execute({\n name: \"Website Builder\",\n description: \"Integrate Next.js or custom frontend with Website Builder.\",\n slug: \"website-builder\",\n permissions\n });\n\n if (result.isOk()) {\n this.apiKey = result.value;\n }\n }\n\n async uninstall(): Promise<void> {\n if (this.apiKey) {\n await this.deleteApiKey.execute(this.apiKey.id);\n }\n }\n}\n\nexport const ApiKeyInstaller = AppInstaller.createImplementation({\n implementation: ApiKeyInstallerImpl,\n dependencies: [WcpContext, CreateApiKeyUseCase, DeleteApiKeyUseCase]\n});\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,yCAAyC;AACtE,SAASC,mBAAmB,QAAQ,kEAAkE;AACtG,SAASC,mBAAmB,QAAQ,kEAAkE;AAEtG,SAASC,UAAU,QAAQ,mDAAmD;AAE9E,MAAMC,mBAAmB,CAAmC;EAC/CC,SAAS,GAAG,IAAI;EAChBC,OAAO,GAAG,gBAAgB;EAC1BC,SAAS,GAAG,EAAE;EACfC,MAAM,GAAuBC,SAAS;EAE9CC,WAAWA,CACCC,UAAgC,EAChCC,YAA2C,EAC3CC,YAA2C,EACrD;IAAA,KAHUF,UAAgC,GAAhCA,UAAgC;IAAA,KAChCC,YAA2C,GAA3CA,YAA2C;IAAA,KAC3CC,YAA2C,GAA3CA,YAA2C;EACpD;EAEH,MAAMC,OAAOA,CAAA,EAAkB;IAC3B,MAAMC,IAAI,GAAG,IAAI,CAACJ,UAAU,CAACK,UAAU,CAAC,CAAC;IAEzC,MAAMC,WAAW,GAAGF,IAAI,GAAG,CAAC;MAAEG,IAAI,EAAE,SAAS;MAAEC,GAAG,EAAE;IAAI,CAAC,CAAC,GAAG,CAAC;MAAED,IAAI,EAAE;IAAO,CAAC,CAAC;IAE/E,MAAME,MAAM,GAAG,MAAM,IAAI,CAACR,YAAY,CAACS,OAAO,CAAC;MAC3CH,IAAI,EAAE,iBAAiB;MACvBI,WAAW,EAAE,4DAA4D;MACzEC,IAAI,EAAE,iBAAiB;MACvBN;IACJ,CAAC,CAAC;IAEF,IAAIG,MAAM,CAACI,IAAI,CAAC,CAAC,EAAE;MACf,IAAI,CAAChB,MAAM,GAAGY,MAAM,CAACK,KAAK;IAC9B;EACJ;EAEA,MAAMC,SAASA,CAAA,EAAkB;IAC7B,IAAI,IAAI,CAAClB,MAAM,EAAE;MACb,MAAM,IAAI,CAACK,YAAY,CAACQ,OAAO,CAAC,IAAI,CAACb,MAAM,CAACmB,EAAE,CAAC;IACnD;EACJ;AACJ;AAEA,OAAO,MAAMC,eAAe,GAAG5B,YAAY,CAAC6B,oBAAoB,CAAC;EAC7DC,cAAc,EAAE1B,mBAAmB;EACnC2B,YAAY,EAAE,CAAC5B,UAAU,EAAEF,mBAAmB,EAAEC,mBAAmB;AACvE,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const ApiKeyInstallerFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
@@ -0,0 +1,10 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { ApiKeyInstaller } from "./ApiKeyInstaller.js";
3
+ export const ApiKeyInstallerFeature = createFeature({
4
+ name: "WebsiteBuilder/ApiKeyInstaller",
5
+ register(container) {
6
+ container.register(ApiKeyInstaller);
7
+ }
8
+ });
9
+
10
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","ApiKeyInstaller","ApiKeyInstallerFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ApiKeyInstaller } from \"./ApiKeyInstaller.js\";\n\nexport const ApiKeyInstallerFeature = createFeature({\n name: \"WebsiteBuilder/ApiKeyInstaller\",\n register(container) {\n container.register(ApiKeyInstaller);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,eAAe;AAExB,OAAO,MAAMC,sBAAsB,GAAGF,aAAa,CAAC;EAChDG,IAAI,EAAE,gCAAgC;EACtCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,eAAe,CAAC;EACvC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,31 @@
1
+ export interface ISection {
2
+ id: string;
3
+ content: string;
4
+ }
5
+ export interface IPositionOptions {
6
+ before?: string;
7
+ after?: string;
8
+ }
9
+ export interface IMarkdownContentBuilder {
10
+ add(id: string, text: string, position?: IPositionOptions): this;
11
+ remove(id: string): this;
12
+ replace(id: string, markdown: string | ((currentContent: string) => string)): this;
13
+ setVariable(key: string, value: string): this;
14
+ setVariables(vars: Record<string, string>): this;
15
+ getVariable(key: string): string | undefined;
16
+ build(joinWith?: string): string;
17
+ }
18
+ export declare class MarkdownContentBuilder implements IMarkdownContentBuilder {
19
+ private sections;
20
+ private variables;
21
+ private readonly MAX_INTERPOLATION_DEPTH;
22
+ add(id: string, markdown: string, position?: IPositionOptions): this;
23
+ remove(id: string): this;
24
+ replace(id: string, markdown: string | ((currentContent: string) => string)): this;
25
+ setVariable(key: string, value: string): this;
26
+ setVariables(vars: Record<string, string>): this;
27
+ getVariable(key: string): string | undefined;
28
+ private substituteVariables;
29
+ private escapeRegex;
30
+ build(joinWith?: string): string;
31
+ }
@@ -0,0 +1,86 @@
1
+ export class MarkdownContentBuilder {
2
+ sections = [];
3
+ variables = new Map();
4
+ MAX_INTERPOLATION_DEPTH = 10; // Prevent infinite loops
5
+
6
+ add(id, markdown, position) {
7
+ const section = {
8
+ id,
9
+ content: markdown
10
+ };
11
+ if (position?.before) {
12
+ const index = this.sections.findIndex(s => s.id === position.before);
13
+ if (index !== -1) {
14
+ this.sections.splice(index, 0, section);
15
+ return this;
16
+ }
17
+ }
18
+ if (position?.after) {
19
+ const index = this.sections.findIndex(s => s.id === position.after);
20
+ if (index !== -1) {
21
+ this.sections.splice(index + 1, 0, section);
22
+ return this;
23
+ }
24
+ }
25
+ this.sections.push(section);
26
+ return this;
27
+ }
28
+ remove(id) {
29
+ this.sections = this.sections.filter(s => s.id !== id);
30
+ return this;
31
+ }
32
+ replace(id, markdown) {
33
+ const section = this.sections.find(s => s.id === id);
34
+ if (section) {
35
+ if (typeof markdown === "function") {
36
+ section.content = markdown(section.content);
37
+ } else {
38
+ section.content = markdown;
39
+ }
40
+ }
41
+ return this;
42
+ }
43
+ setVariable(key, value) {
44
+ this.variables.set(key, value);
45
+ return this;
46
+ }
47
+ setVariables(vars) {
48
+ Object.entries(vars).forEach(([key, value]) => {
49
+ this.variables.set(key, value);
50
+ });
51
+ return this;
52
+ }
53
+ getVariable(key) {
54
+ return this.variables.get(key);
55
+ }
56
+ substituteVariables(text) {
57
+ let result = text;
58
+ let previousResult = "";
59
+ let depth = 0;
60
+
61
+ // Keep substituting until no more changes occur or max depth reached
62
+ while (result !== previousResult && depth < this.MAX_INTERPOLATION_DEPTH) {
63
+ previousResult = result;
64
+ this.variables.forEach((value, key) => {
65
+ const regex = new RegExp(`\\{${this.escapeRegex(key)}\\}`, "g");
66
+ result = result.replace(regex, value);
67
+ });
68
+ depth++;
69
+ }
70
+
71
+ // Warn about potential circular reference if max depth reached
72
+ if (depth === this.MAX_INTERPOLATION_DEPTH && result !== previousResult) {
73
+ console.warn("Maximum interpolation depth reached. Possible circular variable reference.");
74
+ }
75
+ return result;
76
+ }
77
+ escapeRegex(str) {
78
+ return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
79
+ }
80
+ build(joinWith = "\n") {
81
+ const content = this.sections.map(s => s.content).join(joinWith);
82
+ return this.substituteVariables(content);
83
+ }
84
+ }
85
+
86
+ //# sourceMappingURL=MarkdownContentBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MarkdownContentBuilder","sections","variables","Map","MAX_INTERPOLATION_DEPTH","add","id","markdown","position","section","content","before","index","findIndex","s","splice","after","push","remove","filter","replace","find","setVariable","key","value","set","setVariables","vars","Object","entries","forEach","getVariable","get","substituteVariables","text","result","previousResult","depth","regex","RegExp","escapeRegex","console","warn","str","build","joinWith","map","join"],"sources":["MarkdownContentBuilder.ts"],"sourcesContent":["export interface ISection {\n id: string;\n content: string;\n}\n\nexport interface IPositionOptions {\n before?: string;\n after?: string;\n}\nexport interface IMarkdownContentBuilder {\n add(id: string, text: string, position?: IPositionOptions): this;\n remove(id: string): this;\n replace(id: string, markdown: string | ((currentContent: string) => string)): this;\n setVariable(key: string, value: string): this;\n setVariables(vars: Record<string, string>): this;\n getVariable(key: string): string | undefined;\n build(joinWith?: string): string;\n}\n\nexport class MarkdownContentBuilder implements IMarkdownContentBuilder {\n private sections: ISection[] = [];\n private variables: Map<string, string> = new Map();\n private readonly MAX_INTERPOLATION_DEPTH = 10; // Prevent infinite loops\n\n add(id: string, markdown: string, position?: IPositionOptions): this {\n const section: ISection = { id, content: markdown };\n\n if (position?.before) {\n const index = this.sections.findIndex(s => s.id === position.before);\n if (index !== -1) {\n this.sections.splice(index, 0, section);\n return this;\n }\n }\n\n if (position?.after) {\n const index = this.sections.findIndex(s => s.id === position.after);\n if (index !== -1) {\n this.sections.splice(index + 1, 0, section);\n return this;\n }\n }\n\n this.sections.push(section);\n return this;\n }\n\n remove(id: string): this {\n this.sections = this.sections.filter(s => s.id !== id);\n return this;\n }\n\n replace(id: string, markdown: string | ((currentContent: string) => string)): this {\n const section = this.sections.find(s => s.id === id);\n if (section) {\n if (typeof markdown === \"function\") {\n section.content = markdown(section.content);\n } else {\n section.content = markdown;\n }\n }\n return this;\n }\n\n setVariable(key: string, value: string): this {\n this.variables.set(key, value);\n return this;\n }\n\n setVariables(vars: Record<string, string>): this {\n Object.entries(vars).forEach(([key, value]) => {\n this.variables.set(key, value);\n });\n return this;\n }\n\n getVariable(key: string): string | undefined {\n return this.variables.get(key);\n }\n\n private substituteVariables(text: string): string {\n let result = text;\n let previousResult = \"\";\n let depth = 0;\n\n // Keep substituting until no more changes occur or max depth reached\n while (result !== previousResult && depth < this.MAX_INTERPOLATION_DEPTH) {\n previousResult = result;\n\n this.variables.forEach((value, key) => {\n const regex = new RegExp(`\\\\{${this.escapeRegex(key)}\\\\}`, \"g\");\n result = result.replace(regex, value);\n });\n\n depth++;\n }\n\n // Warn about potential circular reference if max depth reached\n if (depth === this.MAX_INTERPOLATION_DEPTH && result !== previousResult) {\n console.warn(\n \"Maximum interpolation depth reached. Possible circular variable reference.\"\n );\n }\n\n return result;\n }\n\n private escapeRegex(str: string): string {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n }\n\n build(joinWith = \"\\n\"): string {\n const content = this.sections.map(s => s.content).join(joinWith);\n return this.substituteVariables(content);\n }\n}\n"],"mappings":"AAmBA,OAAO,MAAMA,sBAAsB,CAAoC;EAC3DC,QAAQ,GAAe,EAAE;EACzBC,SAAS,GAAwB,IAAIC,GAAG,CAAC,CAAC;EACjCC,uBAAuB,GAAG,EAAE,CAAC,CAAC;;EAE/CC,GAAGA,CAACC,EAAU,EAAEC,QAAgB,EAAEC,QAA2B,EAAQ;IACjE,MAAMC,OAAiB,GAAG;MAAEH,EAAE;MAAEI,OAAO,EAAEH;IAAS,CAAC;IAEnD,IAAIC,QAAQ,EAAEG,MAAM,EAAE;MAClB,MAAMC,KAAK,GAAG,IAAI,CAACX,QAAQ,CAACY,SAAS,CAACC,CAAC,IAAIA,CAAC,CAACR,EAAE,KAAKE,QAAQ,CAACG,MAAM,CAAC;MACpE,IAAIC,KAAK,KAAK,CAAC,CAAC,EAAE;QACd,IAAI,CAACX,QAAQ,CAACc,MAAM,CAACH,KAAK,EAAE,CAAC,EAAEH,OAAO,CAAC;QACvC,OAAO,IAAI;MACf;IACJ;IAEA,IAAID,QAAQ,EAAEQ,KAAK,EAAE;MACjB,MAAMJ,KAAK,GAAG,IAAI,CAACX,QAAQ,CAACY,SAAS,CAACC,CAAC,IAAIA,CAAC,CAACR,EAAE,KAAKE,QAAQ,CAACQ,KAAK,CAAC;MACnE,IAAIJ,KAAK,KAAK,CAAC,CAAC,EAAE;QACd,IAAI,CAACX,QAAQ,CAACc,MAAM,CAACH,KAAK,GAAG,CAAC,EAAE,CAAC,EAAEH,OAAO,CAAC;QAC3C,OAAO,IAAI;MACf;IACJ;IAEA,IAAI,CAACR,QAAQ,CAACgB,IAAI,CAACR,OAAO,CAAC;IAC3B,OAAO,IAAI;EACf;EAEAS,MAAMA,CAACZ,EAAU,EAAQ;IACrB,IAAI,CAACL,QAAQ,GAAG,IAAI,CAACA,QAAQ,CAACkB,MAAM,CAACL,CAAC,IAAIA,CAAC,CAACR,EAAE,KAAKA,EAAE,CAAC;IACtD,OAAO,IAAI;EACf;EAEAc,OAAOA,CAACd,EAAU,EAAEC,QAAuD,EAAQ;IAC/E,MAAME,OAAO,GAAG,IAAI,CAACR,QAAQ,CAACoB,IAAI,CAACP,CAAC,IAAIA,CAAC,CAACR,EAAE,KAAKA,EAAE,CAAC;IACpD,IAAIG,OAAO,EAAE;MACT,IAAI,OAAOF,QAAQ,KAAK,UAAU,EAAE;QAChCE,OAAO,CAACC,OAAO,GAAGH,QAAQ,CAACE,OAAO,CAACC,OAAO,CAAC;MAC/C,CAAC,MAAM;QACHD,OAAO,CAACC,OAAO,GAAGH,QAAQ;MAC9B;IACJ;IACA,OAAO,IAAI;EACf;EAEAe,WAAWA,CAACC,GAAW,EAAEC,KAAa,EAAQ;IAC1C,IAAI,CAACtB,SAAS,CAACuB,GAAG,CAACF,GAAG,EAAEC,KAAK,CAAC;IAC9B,OAAO,IAAI;EACf;EAEAE,YAAYA,CAACC,IAA4B,EAAQ;IAC7CC,MAAM,CAACC,OAAO,CAACF,IAAI,CAAC,CAACG,OAAO,CAAC,CAAC,CAACP,GAAG,EAAEC,KAAK,CAAC,KAAK;MAC3C,IAAI,CAACtB,SAAS,CAACuB,GAAG,CAACF,GAAG,EAAEC,KAAK,CAAC;IAClC,CAAC,CAAC;IACF,OAAO,IAAI;EACf;EAEAO,WAAWA,CAACR,GAAW,EAAsB;IACzC,OAAO,IAAI,CAACrB,SAAS,CAAC8B,GAAG,CAACT,GAAG,CAAC;EAClC;EAEQU,mBAAmBA,CAACC,IAAY,EAAU;IAC9C,IAAIC,MAAM,GAAGD,IAAI;IACjB,IAAIE,cAAc,GAAG,EAAE;IACvB,IAAIC,KAAK,GAAG,CAAC;;IAEb;IACA,OAAOF,MAAM,KAAKC,cAAc,IAAIC,KAAK,GAAG,IAAI,CAACjC,uBAAuB,EAAE;MACtEgC,cAAc,GAAGD,MAAM;MAEvB,IAAI,CAACjC,SAAS,CAAC4B,OAAO,CAAC,CAACN,KAAK,EAAED,GAAG,KAAK;QACnC,MAAMe,KAAK,GAAG,IAAIC,MAAM,CAAC,MAAM,IAAI,CAACC,WAAW,CAACjB,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC;QAC/DY,MAAM,GAAGA,MAAM,CAACf,OAAO,CAACkB,KAAK,EAAEd,KAAK,CAAC;MACzC,CAAC,CAAC;MAEFa,KAAK,EAAE;IACX;;IAEA;IACA,IAAIA,KAAK,KAAK,IAAI,CAACjC,uBAAuB,IAAI+B,MAAM,KAAKC,cAAc,EAAE;MACrEK,OAAO,CAACC,IAAI,CACR,4EACJ,CAAC;IACL;IAEA,OAAOP,MAAM;EACjB;EAEQK,WAAWA,CAACG,GAAW,EAAU;IACrC,OAAOA,GAAG,CAACvB,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;EACrD;EAEAwB,KAAKA,CAACC,QAAQ,GAAG,IAAI,EAAU;IAC3B,MAAMnC,OAAO,GAAG,IAAI,CAACT,QAAQ,CAAC6C,GAAG,CAAChC,CAAC,IAAIA,CAAC,CAACJ,OAAO,CAAC,CAACqC,IAAI,CAACF,QAAQ,CAAC;IAChE,OAAO,IAAI,CAACZ,mBAAmB,CAACvB,OAAO,CAAC;EAC5C;AACJ","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,278 @@
1
+ import { describe, it, expect, beforeEach, vi } from "vitest";
2
+ import { MarkdownContentBuilder } from "./MarkdownContentBuilder.js";
3
+ describe("MarkdownContentBuilder", () => {
4
+ let builder;
5
+ beforeEach(() => {
6
+ builder = new MarkdownContentBuilder();
7
+ });
8
+ describe("add", () => {
9
+ it("should add sections to the end by default", () => {
10
+ builder.add("section1", "First section").add("section2", "Second section");
11
+ expect(builder.build()).toBe("First section\nSecond section");
12
+ });
13
+ it("should add section before specified id", () => {
14
+ builder.add("section1", "First").add("section2", "Second").add("section-middle", "Middle", {
15
+ before: "section2"
16
+ });
17
+ expect(builder.build()).toBe("First\nMiddle\nSecond");
18
+ });
19
+ it("should add section after specified id", () => {
20
+ builder.add("section1", "First").add("section2", "Second").add("section-middle", "Middle", {
21
+ after: "section1"
22
+ });
23
+ expect(builder.build()).toBe("First\nMiddle\nSecond");
24
+ });
25
+ it("should append to end if before id not found", () => {
26
+ builder.add("section1", "First").add("section2", "Second", {
27
+ before: "non-existent"
28
+ });
29
+ expect(builder.build()).toBe("First\nSecond");
30
+ });
31
+ it("should append to end if after id not found", () => {
32
+ builder.add("section1", "First").add("section2", "Second", {
33
+ after: "non-existent"
34
+ });
35
+ expect(builder.build()).toBe("First\nSecond");
36
+ });
37
+ });
38
+ describe("remove", () => {
39
+ it("should remove section by id", () => {
40
+ builder.add("section1", "First").add("section2", "Second").add("section3", "Third").remove("section2");
41
+ expect(builder.build()).toBe("First\nThird");
42
+ });
43
+ it("should handle removing non-existent id gracefully", () => {
44
+ builder.add("section1", "First").remove("non-existent");
45
+ expect(builder.build()).toBe("First");
46
+ });
47
+ it("should handle removing from empty builder", () => {
48
+ builder.remove("section1");
49
+ expect(builder.build()).toBe("");
50
+ });
51
+ });
52
+ describe("replace", () => {
53
+ it("should replace section content with string", () => {
54
+ builder.add("section1", "Original content").replace("section1", "Replaced content");
55
+ expect(builder.build()).toBe("Replaced content");
56
+ });
57
+ it("should replace section content with callback", () => {
58
+ builder.add("section1", "Original content").replace("section1", current => current.toUpperCase());
59
+ expect(builder.build()).toBe("ORIGINAL CONTENT");
60
+ });
61
+ it("should pass current content to callback", () => {
62
+ builder.add("section1", "Hello").replace("section1", current => `${current} World`);
63
+ expect(builder.build()).toBe("Hello World");
64
+ });
65
+ it("should handle callback that transforms content", () => {
66
+ builder.add("code", '```bash\necho "test"\n```').replace("code", current => current.replace("bash", "javascript"));
67
+ expect(builder.build()).toBe('```javascript\necho "test"\n```');
68
+ });
69
+ it("should handle callback returning empty string", () => {
70
+ builder.add("section1", "Original").replace("section1", () => "");
71
+ expect(builder.build()).toBe("");
72
+ });
73
+ it("should handle replacing non-existent id with callback gracefully", () => {
74
+ builder.add("section1", "First").replace("non-existent", current => current + " modified");
75
+ expect(builder.build()).toBe("First");
76
+ });
77
+ it("should maintain section position when replacing with callback", () => {
78
+ builder.add("section1", "First").add("section2", "Second").add("section3", "Third").replace("section2", current => current.toUpperCase());
79
+ expect(builder.build()).toBe("First\nSECOND\nThird");
80
+ });
81
+ });
82
+ describe("complex scenarios with callbacks", () => {
83
+ it("should support plugin decoration with transformations", () => {
84
+ builder.setVariable("API_KEY", "wat_12345").add("section1", "Key: {API_KEY}").add("code", "```bash\nAPI_KEY={API_KEY}\n```");
85
+
86
+ // Plugin adds warning to code section
87
+ builder.replace("code", current => {
88
+ return `⚠️ **Security Warning**: Keep this private!\n\n${current}`;
89
+ });
90
+ const result = builder.build();
91
+ expect(result).toContain("Security Warning");
92
+ expect(result).toContain("```bash");
93
+ });
94
+ it("should chain multiple replace operations", () => {
95
+ builder.add("text", "hello world").replace("text", s => s.toUpperCase()).replace("text", s => `**${s}**`).replace("text", s => `${s}!!!`);
96
+ expect(builder.build()).toBe("**HELLO WORLD**!!!");
97
+ });
98
+ });
99
+ describe("variables", () => {
100
+ it("should set and substitute single variable", () => {
101
+ builder.setVariable("API_KEY", "wat_12345").add("section1", "Your API key is {API_KEY}");
102
+ expect(builder.build()).toBe("Your API key is wat_12345");
103
+ });
104
+ it("should set and substitute multiple variables", () => {
105
+ builder.setVariables({
106
+ API_KEY: "wat_12345",
107
+ HOST: "https://api.example.com",
108
+ TENANT: "root"
109
+ }).add("section1", "Key: {API_KEY}, Host: {HOST}, Tenant: {TENANT}");
110
+ expect(builder.build()).toBe("Key: wat_12345, Host: https://api.example.com, Tenant: root");
111
+ });
112
+ it("should substitute variables in multiple sections", () => {
113
+ builder.setVariable("API_KEY", "wat_12345").add("section1", "Section 1: {API_KEY}").add("section2", "Section 2: {API_KEY}");
114
+ expect(builder.build()).toBe("Section 1: wat_12345\nSection 2: wat_12345");
115
+ });
116
+ it("should handle variable replacement in code blocks", () => {
117
+ builder.setVariables({
118
+ API_KEY: "wat_12345",
119
+ HOST: "https://api.example.com"
120
+ }).add("code", "```bash\nAPI_KEY={API_KEY}\nHOST={HOST}\n```");
121
+ expect(builder.build()).toBe("```bash\nAPI_KEY=wat_12345\nHOST=https://api.example.com\n```");
122
+ });
123
+ it("should leave unmatched variables unchanged", () => {
124
+ builder.setVariable("API_KEY", "wat_12345").add("section1", "Key: {API_KEY}, Unknown: {UNKNOWN}");
125
+ expect(builder.build()).toBe("Key: wat_12345, Unknown: {UNKNOWN}");
126
+ });
127
+ it("should handle variables with special regex characters", () => {
128
+ builder.setVariable("VAR.NAME", "value1").setVariable("VAR$NAME", "value2").add("section1", "{VAR.NAME} and {VAR$NAME}");
129
+ expect(builder.build()).toBe("value1 and value2");
130
+ });
131
+ it("should get variable value", () => {
132
+ builder.setVariable("API_KEY", "wat_12345");
133
+ expect(builder.getVariable("API_KEY")).toBe("wat_12345");
134
+ });
135
+ it("should return undefined for non-existent variable", () => {
136
+ expect(builder.getVariable("NON_EXISTENT")).toBeUndefined();
137
+ });
138
+ it("should override variable when set multiple times", () => {
139
+ builder.setVariable("API_KEY", "old_value").setVariable("API_KEY", "new_value").add("section1", "{API_KEY}");
140
+ expect(builder.build()).toBe("new_value");
141
+ });
142
+ it("should handle multiple occurrences of same variable", () => {
143
+ builder.setVariable("NAME", "John").add("section1", "Hello {NAME}, welcome {NAME}!");
144
+ expect(builder.build()).toBe("Hello John, welcome John!");
145
+ });
146
+ });
147
+ describe("build", () => {
148
+ it("should use default newline separator", () => {
149
+ builder.add("section1", "First").add("section2", "Second");
150
+ expect(builder.build()).toBe("First\nSecond");
151
+ });
152
+ it("should use custom separator", () => {
153
+ builder.add("section1", "First").add("section2", "Second");
154
+ expect(builder.build("\n\n")).toBe("First\n\nSecond");
155
+ });
156
+ it("should return empty string for empty builder", () => {
157
+ expect(builder.build()).toBe("");
158
+ });
159
+ it("should handle single section", () => {
160
+ builder.add("section1", "Only section");
161
+ expect(builder.build()).toBe("Only section");
162
+ });
163
+ });
164
+ describe("method chaining", () => {
165
+ it("should support fluent interface", () => {
166
+ const result = builder.setVariable("NAME", "Test").add("section1", "Hello {NAME}").add("section2", "Second").remove("section2").add("section3", "Third").replace("section3", "Replaced").build();
167
+ expect(result).toBe("Hello Test\nReplaced");
168
+ });
169
+ });
170
+ describe("complex scenarios", () => {
171
+ it("should handle Next.js config example", () => {
172
+ const result = builder.setVariables({
173
+ API_KEY: "wat_12345678",
174
+ API_HOST: "https://example.cloudfront.net",
175
+ TENANT: "root"
176
+ }).add("description", "This is a configuration for **Webiny Next.js starter kit**:").add("env-vars", "```bash\nNEXT_PUBLIC_WEBSITE_BUILDER_API_KEY={API_KEY}\nNEXT_PUBLIC_WEBSITE_BUILDER_API_HOST={API_HOST}\nNEXT_PUBLIC_WEBSITE_BUILDER_API_TENANT={TENANT}\n```").build();
177
+ expect(result).toContain("wat_12345678");
178
+ expect(result).toContain("https://example.cloudfront.net");
179
+ expect(result).toContain("root");
180
+ expect(result).toContain("Webiny Next.js starter kit");
181
+ });
182
+ it("should support plugin decoration pattern", () => {
183
+ // Initial builder
184
+ builder.setVariable("API_KEY", "original_key").add("section1", "Key: {API_KEY}");
185
+
186
+ // Plugin modifies
187
+ builder.setVariable("API_KEY", "plugin_key").add("plugin-section", "Added by plugin: {API_KEY}", {
188
+ after: "section1"
189
+ });
190
+ const result = builder.build();
191
+ expect(result).toBe("Key: plugin_key\nAdded by plugin: plugin_key");
192
+ });
193
+ });
194
+ describe("deep variable interpolation", () => {
195
+ it("should handle single level nested variables", () => {
196
+ builder.setVariables({
197
+ LINK: "https://example.com",
198
+ DESCRIPTION: "Visit {LINK} for more info"
199
+ }).add("section1", "{DESCRIPTION}");
200
+ expect(builder.build()).toBe("Visit https://example.com for more info");
201
+ });
202
+ it("should handle multiple levels of nested variables", () => {
203
+ builder.setVariables({
204
+ BASE_URL: "https://example.com",
205
+ API_PATH: "{BASE_URL}/api",
206
+ FULL_ENDPOINT: "{API_PATH}/v1/users"
207
+ }).add("section1", "Endpoint: {FULL_ENDPOINT}");
208
+ expect(builder.build()).toBe("Endpoint: https://example.com/api/v1/users");
209
+ });
210
+ it("should handle variables in HTML links", () => {
211
+ builder.setVariables({
212
+ STARTER_KIT_LINK: "https://github.com/webiny/website-builder-nextjs",
213
+ DESCRIPTION: '<a href="{STARTER_KIT_LINK}" target="_blank">Webiny Next.js starter kit</a>'
214
+ }).add("section1", "{DESCRIPTION}");
215
+ expect(builder.build()).toBe('<a href="https://github.com/webiny/website-builder-nextjs" target="_blank">Webiny Next.js starter kit</a>');
216
+ });
217
+ it("should handle complex nested scenario from example", () => {
218
+ builder.setVariables({
219
+ DESCRIPTION: 'This is a configuration for <a href="{STARTER_KIT_LINK}" target="_blank">Webiny Next.js starter kit:</a>',
220
+ STARTER_KIT_LINK: "https://github.com/webiny/website-builder-nextjs",
221
+ API_TOKEN: "wat_12345",
222
+ API_HOST: "https://api.example.com",
223
+ ADMIN_HOST: "https://admin.example.com",
224
+ TENANT_ID: "root"
225
+ }).add("description", "{DESCRIPTION}");
226
+ const result = builder.build();
227
+ expect(result).toContain("https://github.com/webiny/website-builder-nextjs");
228
+ expect(result).toContain("Webiny Next.js starter kit");
229
+ expect(result).not.toContain("{STARTER_KIT_LINK}");
230
+ });
231
+ it("should handle variable that references another variable multiple times", () => {
232
+ builder.setVariables({
233
+ NAME: "John",
234
+ GREETING: "Hello {NAME}, welcome {NAME}!"
235
+ }).add("section1", "{GREETING}");
236
+ expect(builder.build()).toBe("Hello John, welcome John!");
237
+ });
238
+ it("should handle deep nesting (3+ levels)", () => {
239
+ builder.setVariables({
240
+ LEVEL_1: "base",
241
+ LEVEL_2: "{LEVEL_1}/path",
242
+ LEVEL_3: "{LEVEL_2}/more",
243
+ LEVEL_4: "{LEVEL_3}/final"
244
+ }).add("section1", "{LEVEL_4}");
245
+ expect(builder.build()).toBe("base/path/more/final");
246
+ });
247
+ it("should handle circular references gracefully", () => {
248
+ const consoleSpy = vi.spyOn(console, "warn").mockImplementation(() => {});
249
+ builder.setVariables({
250
+ VAR_A: "Start {VAR_B}",
251
+ VAR_B: "{VAR_A} End"
252
+ }).add("section1", "{VAR_A}");
253
+ builder.build();
254
+ expect(consoleSpy).toHaveBeenCalledWith(expect.stringContaining("Maximum interpolation depth reached"));
255
+ consoleSpy.mockRestore();
256
+ });
257
+ it("should stop at undefined variables and leave them as-is", () => {
258
+ builder.setVariables({
259
+ DEFINED: "value",
260
+ HAS_UNDEFINED: "{DEFINED} and {UNDEFINED}"
261
+ }).add("section1", "{HAS_UNDEFINED}");
262
+ expect(builder.build()).toBe("value and {UNDEFINED}");
263
+ });
264
+ it("should handle mixed defined and nested variables", () => {
265
+ builder.setVariables({
266
+ API_KEY: "key123",
267
+ HOST: "example.com",
268
+ CONFIG: "API_KEY={API_KEY}\nHOST={HOST}\nUNDEFINED={UNKNOWN}"
269
+ }).add("section1", "{CONFIG}");
270
+ const result = builder.build();
271
+ expect(result).toContain("API_KEY=key123");
272
+ expect(result).toContain("HOST=example.com");
273
+ expect(result).toContain("UNDEFINED={UNKNOWN}");
274
+ });
275
+ });
276
+ });
277
+
278
+ //# sourceMappingURL=MarkdownContentBuilder.test.js.map