@atlaskit/adf-schema 37.2.0 → 38.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (430) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/index.js +12 -0
  3. package/dist/cjs/next-schema/generated/markTypes.js +21 -21
  4. package/dist/cjs/next-schema/generated/nodeTypes.js +191 -110
  5. package/dist/cjs/next-schema/groups/nonNestableBlockContentGroup.js +1 -1
  6. package/dist/cjs/next-schema/groups/tableCellContentPseudoGroup.js +1 -1
  7. package/dist/cjs/next-schema/index.js +32 -505
  8. package/dist/cjs/next-schema/nodes/blockCard.js +1 -1
  9. package/dist/cjs/next-schema/nodes/blockquote.js +2 -2
  10. package/dist/cjs/next-schema/nodes/bodiedExtension.js +2 -2
  11. package/dist/cjs/next-schema/nodes/caption.js +1 -1
  12. package/dist/cjs/next-schema/nodes/codeBlock.js +2 -2
  13. package/dist/cjs/next-schema/nodes/date.js +4 -1
  14. package/dist/cjs/next-schema/nodes/decisionItem.js +1 -1
  15. package/dist/cjs/next-schema/nodes/decisionList.js +1 -1
  16. package/dist/cjs/next-schema/nodes/embedCard.js +1 -1
  17. package/dist/cjs/next-schema/nodes/emoji.js +4 -1
  18. package/dist/cjs/next-schema/nodes/expand.js +2 -2
  19. package/dist/cjs/next-schema/nodes/extension.js +2 -2
  20. package/dist/cjs/next-schema/nodes/extensionFrame.js +3 -2
  21. package/dist/cjs/next-schema/nodes/hardBreak.js +1 -1
  22. package/dist/cjs/next-schema/nodes/heading.js +3 -3
  23. package/dist/cjs/next-schema/nodes/inlineCard.js +5 -2
  24. package/dist/cjs/next-schema/nodes/inlineExtension.js +2 -2
  25. package/dist/cjs/next-schema/nodes/layoutColumn.js +1 -1
  26. package/dist/cjs/next-schema/nodes/layoutSection.js +3 -2
  27. package/dist/cjs/next-schema/nodes/list.js +5 -5
  28. package/dist/cjs/next-schema/nodes/media.js +1 -1
  29. package/dist/cjs/next-schema/nodes/mediaGroup.js +1 -1
  30. package/dist/cjs/next-schema/nodes/mediaInline.js +1 -1
  31. package/dist/cjs/next-schema/nodes/mediaSingle.js +5 -5
  32. package/dist/cjs/next-schema/nodes/mention.js +4 -1
  33. package/dist/cjs/next-schema/nodes/multiBodiedExtension.js +1 -3
  34. package/dist/cjs/next-schema/nodes/nestedExpand.js +2 -2
  35. package/dist/cjs/next-schema/nodes/panel.js +3 -3
  36. package/dist/cjs/next-schema/nodes/paragraph.js +4 -4
  37. package/dist/cjs/next-schema/nodes/placeholder.js +1 -1
  38. package/dist/cjs/next-schema/nodes/status.js +4 -1
  39. package/dist/cjs/next-schema/nodes/table.js +1 -1
  40. package/dist/cjs/next-schema/nodes/tableCell.js +1 -1
  41. package/dist/cjs/next-schema/nodes/tableHeader.js +1 -1
  42. package/dist/cjs/next-schema/nodes/tableRow.js +1 -1
  43. package/dist/cjs/next-schema/nodes/task.js +2 -2
  44. package/dist/cjs/next-schema/nodes/text.js +1 -1
  45. package/dist/cjs/schema/createPMSpecFactory.js +57 -0
  46. package/dist/cjs/schema/index.js +14 -1
  47. package/dist/cjs/schema/marks/alignment.js +3 -8
  48. package/dist/cjs/schema/marks/annotation.js +3 -13
  49. package/dist/cjs/schema/marks/background-color.js +3 -9
  50. package/dist/cjs/schema/marks/border.js +3 -7
  51. package/dist/cjs/schema/marks/breakout.js +3 -9
  52. package/dist/cjs/schema/marks/code.js +3 -5
  53. package/dist/cjs/schema/marks/confluence-inline-comment.js +3 -9
  54. package/dist/cjs/schema/marks/data-consumer.js +3 -7
  55. package/dist/cjs/schema/marks/em.js +3 -5
  56. package/dist/cjs/schema/marks/fragment.js +3 -12
  57. package/dist/cjs/schema/marks/indentation.js +3 -8
  58. package/dist/cjs/schema/marks/link.js +3 -13
  59. package/dist/cjs/schema/marks/strike.js +3 -5
  60. package/dist/cjs/schema/marks/strong.js +3 -5
  61. package/dist/cjs/schema/marks/subsup.js +3 -10
  62. package/dist/cjs/schema/marks/text-color.js +3 -8
  63. package/dist/cjs/schema/marks/type-ahead-query.js +3 -10
  64. package/dist/cjs/schema/marks/underline.js +3 -5
  65. package/dist/cjs/schema/marks/unsupported-mark.js +3 -6
  66. package/dist/cjs/schema/marks/unsupported-node-attributes.js +3 -6
  67. package/dist/cjs/schema/nodes/block-card.js +3 -23
  68. package/dist/cjs/schema/nodes/blockquote.js +17 -20
  69. package/dist/cjs/schema/nodes/bodied-extension.js +24 -54
  70. package/dist/cjs/schema/nodes/bullet-list.js +3 -6
  71. package/dist/cjs/schema/nodes/caption.js +3 -6
  72. package/dist/cjs/schema/nodes/code-block.js +31 -16
  73. package/dist/cjs/schema/nodes/confluence-jira-issue.js +3 -22
  74. package/dist/cjs/schema/nodes/confluence-unsupported-block.js +3 -8
  75. package/dist/cjs/schema/nodes/confluence-unsupported-inline.js +3 -10
  76. package/dist/cjs/schema/nodes/date.js +3 -10
  77. package/dist/cjs/schema/nodes/decision-item.js +3 -13
  78. package/dist/cjs/schema/nodes/decision-list.js +3 -12
  79. package/dist/cjs/schema/nodes/doc.js +2 -4
  80. package/dist/cjs/schema/nodes/embed-card.js +3 -22
  81. package/dist/cjs/schema/nodes/emoji.js +3 -16
  82. package/dist/cjs/schema/nodes/expand.js +3 -16
  83. package/dist/cjs/schema/nodes/extension.js +20 -47
  84. package/dist/cjs/schema/nodes/hard-break.js +3 -5
  85. package/dist/cjs/schema/nodes/heading.js +3 -14
  86. package/dist/cjs/schema/nodes/image.js +3 -16
  87. package/dist/cjs/schema/nodes/inline-card.js +3 -14
  88. package/dist/cjs/schema/nodes/inline-extension.js +19 -42
  89. package/dist/cjs/schema/nodes/layout-column.js +4 -12
  90. package/dist/cjs/schema/nodes/layout-section.js +23 -11
  91. package/dist/cjs/schema/nodes/list-item.js +5 -12
  92. package/dist/cjs/schema/nodes/media-group.js +3 -8
  93. package/dist/cjs/schema/nodes/media-inline.js +2 -1
  94. package/dist/cjs/schema/nodes/media-single.js +35 -14
  95. package/dist/cjs/schema/nodes/media.js +35 -83
  96. package/dist/cjs/schema/nodes/mention.js +3 -22
  97. package/dist/cjs/schema/nodes/multi-bodied-extension.js +26 -64
  98. package/dist/cjs/schema/nodes/nested-expand.js +31 -48
  99. package/dist/cjs/schema/nodes/ordered-list.js +4 -16
  100. package/dist/cjs/schema/nodes/panel.js +5 -34
  101. package/dist/cjs/schema/nodes/paragraph.js +3 -11
  102. package/dist/cjs/schema/nodes/placeholder.js +3 -11
  103. package/dist/cjs/schema/nodes/rule.js +3 -3
  104. package/dist/cjs/schema/nodes/status.js +3 -19
  105. package/dist/cjs/schema/nodes/tableNodes.js +9 -52
  106. package/dist/cjs/schema/nodes/task-item.js +3 -14
  107. package/dist/cjs/schema/nodes/task-list.js +3 -12
  108. package/dist/cjs/schema/nodes/text.js +3 -4
  109. package/dist/cjs/schema/nodes/unsupported-block.js +3 -11
  110. package/dist/cjs/schema/nodes/unsupported-inline.js +3 -10
  111. package/dist/es2019/index.js +5 -1
  112. package/dist/es2019/next-schema/generated/markTypes.js +1 -1
  113. package/dist/es2019/next-schema/generated/nodeTypes.js +123 -42
  114. package/dist/es2019/next-schema/groups/nonNestableBlockContentGroup.js +1 -1
  115. package/dist/es2019/next-schema/groups/tableCellContentPseudoGroup.js +1 -1
  116. package/dist/es2019/next-schema/index.js +3 -2
  117. package/dist/es2019/next-schema/nodes/blockCard.js +1 -1
  118. package/dist/es2019/next-schema/nodes/blockquote.js +2 -2
  119. package/dist/es2019/next-schema/nodes/bodiedExtension.js +2 -2
  120. package/dist/es2019/next-schema/nodes/caption.js +1 -1
  121. package/dist/es2019/next-schema/nodes/codeBlock.js +2 -2
  122. package/dist/es2019/next-schema/nodes/date.js +4 -1
  123. package/dist/es2019/next-schema/nodes/decisionItem.js +1 -1
  124. package/dist/es2019/next-schema/nodes/decisionList.js +1 -1
  125. package/dist/es2019/next-schema/nodes/embedCard.js +1 -1
  126. package/dist/es2019/next-schema/nodes/emoji.js +4 -1
  127. package/dist/es2019/next-schema/nodes/expand.js +2 -2
  128. package/dist/es2019/next-schema/nodes/extension.js +2 -2
  129. package/dist/es2019/next-schema/nodes/extensionFrame.js +3 -2
  130. package/dist/es2019/next-schema/nodes/hardBreak.js +1 -1
  131. package/dist/es2019/next-schema/nodes/heading.js +3 -3
  132. package/dist/es2019/next-schema/nodes/inlineCard.js +5 -2
  133. package/dist/es2019/next-schema/nodes/inlineExtension.js +2 -2
  134. package/dist/es2019/next-schema/nodes/layoutColumn.js +1 -1
  135. package/dist/es2019/next-schema/nodes/layoutSection.js +3 -2
  136. package/dist/es2019/next-schema/nodes/list.js +5 -5
  137. package/dist/es2019/next-schema/nodes/media.js +1 -1
  138. package/dist/es2019/next-schema/nodes/mediaGroup.js +1 -1
  139. package/dist/es2019/next-schema/nodes/mediaInline.js +1 -1
  140. package/dist/es2019/next-schema/nodes/mediaSingle.js +5 -5
  141. package/dist/es2019/next-schema/nodes/mention.js +4 -1
  142. package/dist/es2019/next-schema/nodes/multiBodiedExtension.js +1 -3
  143. package/dist/es2019/next-schema/nodes/nestedExpand.js +2 -2
  144. package/dist/es2019/next-schema/nodes/panel.js +3 -3
  145. package/dist/es2019/next-schema/nodes/paragraph.js +4 -4
  146. package/dist/es2019/next-schema/nodes/placeholder.js +1 -1
  147. package/dist/es2019/next-schema/nodes/status.js +4 -1
  148. package/dist/es2019/next-schema/nodes/table.js +1 -1
  149. package/dist/es2019/next-schema/nodes/tableCell.js +1 -1
  150. package/dist/es2019/next-schema/nodes/tableHeader.js +1 -1
  151. package/dist/es2019/next-schema/nodes/tableRow.js +1 -1
  152. package/dist/es2019/next-schema/nodes/task.js +2 -2
  153. package/dist/es2019/next-schema/nodes/text.js +1 -1
  154. package/dist/es2019/schema/createPMSpecFactory.js +55 -0
  155. package/dist/es2019/schema/index.js +5 -1
  156. package/dist/es2019/schema/marks/alignment.js +3 -8
  157. package/dist/es2019/schema/marks/annotation.js +4 -13
  158. package/dist/es2019/schema/marks/background-color.js +3 -9
  159. package/dist/es2019/schema/marks/border.js +3 -7
  160. package/dist/es2019/schema/marks/breakout.js +3 -9
  161. package/dist/es2019/schema/marks/code.js +3 -5
  162. package/dist/es2019/schema/marks/confluence-inline-comment.js +4 -9
  163. package/dist/es2019/schema/marks/data-consumer.js +3 -7
  164. package/dist/es2019/schema/marks/em.js +3 -5
  165. package/dist/es2019/schema/marks/fragment.js +3 -12
  166. package/dist/es2019/schema/marks/indentation.js +3 -8
  167. package/dist/es2019/schema/marks/link.js +3 -13
  168. package/dist/es2019/schema/marks/strike.js +3 -5
  169. package/dist/es2019/schema/marks/strong.js +3 -5
  170. package/dist/es2019/schema/marks/subsup.js +3 -10
  171. package/dist/es2019/schema/marks/text-color.js +3 -8
  172. package/dist/es2019/schema/marks/type-ahead-query.js +3 -10
  173. package/dist/es2019/schema/marks/underline.js +3 -5
  174. package/dist/es2019/schema/marks/unsupported-mark.js +3 -6
  175. package/dist/es2019/schema/marks/unsupported-node-attributes.js +3 -6
  176. package/dist/es2019/schema/nodes/block-card.js +4 -23
  177. package/dist/es2019/schema/nodes/blockquote.js +19 -20
  178. package/dist/es2019/schema/nodes/bodied-extension.js +23 -53
  179. package/dist/es2019/schema/nodes/bullet-list.js +3 -6
  180. package/dist/es2019/schema/nodes/caption.js +4 -6
  181. package/dist/es2019/schema/nodes/code-block.js +31 -16
  182. package/dist/es2019/schema/nodes/confluence-jira-issue.js +3 -22
  183. package/dist/es2019/schema/nodes/confluence-unsupported-block.js +3 -8
  184. package/dist/es2019/schema/nodes/confluence-unsupported-inline.js +3 -10
  185. package/dist/es2019/schema/nodes/date.js +4 -10
  186. package/dist/es2019/schema/nodes/decision-item.js +3 -13
  187. package/dist/es2019/schema/nodes/decision-list.js +3 -12
  188. package/dist/es2019/schema/nodes/doc.js +3 -4
  189. package/dist/es2019/schema/nodes/embed-card.js +4 -22
  190. package/dist/es2019/schema/nodes/emoji.js +3 -16
  191. package/dist/es2019/schema/nodes/expand.js +4 -16
  192. package/dist/es2019/schema/nodes/extension.js +19 -46
  193. package/dist/es2019/schema/nodes/hard-break.js +4 -5
  194. package/dist/es2019/schema/nodes/heading.js +4 -14
  195. package/dist/es2019/schema/nodes/image.js +3 -16
  196. package/dist/es2019/schema/nodes/inline-card.js +4 -14
  197. package/dist/es2019/schema/nodes/inline-extension.js +18 -41
  198. package/dist/es2019/schema/nodes/layout-column.js +5 -12
  199. package/dist/es2019/schema/nodes/layout-section.js +24 -10
  200. package/dist/es2019/schema/nodes/list-item.js +6 -12
  201. package/dist/es2019/schema/nodes/media-group.js +4 -8
  202. package/dist/es2019/schema/nodes/media-inline.js +3 -2
  203. package/dist/es2019/schema/nodes/media-single.js +35 -15
  204. package/dist/es2019/schema/nodes/media.js +35 -78
  205. package/dist/es2019/schema/nodes/mention.js +3 -22
  206. package/dist/es2019/schema/nodes/multi-bodied-extension.js +26 -63
  207. package/dist/es2019/schema/nodes/nested-expand.js +32 -48
  208. package/dist/es2019/schema/nodes/ordered-list.js +5 -14
  209. package/dist/es2019/schema/nodes/panel.js +5 -34
  210. package/dist/es2019/schema/nodes/paragraph.js +4 -11
  211. package/dist/es2019/schema/nodes/placeholder.js +4 -11
  212. package/dist/es2019/schema/nodes/rule.js +4 -3
  213. package/dist/es2019/schema/nodes/status.js +3 -19
  214. package/dist/es2019/schema/nodes/tableNodes.js +40 -82
  215. package/dist/es2019/schema/nodes/task-item.js +3 -14
  216. package/dist/es2019/schema/nodes/task-list.js +3 -12
  217. package/dist/es2019/schema/nodes/text.js +4 -4
  218. package/dist/es2019/schema/nodes/unsupported-block.js +3 -11
  219. package/dist/es2019/schema/nodes/unsupported-inline.js +3 -10
  220. package/dist/esm/index.js +5 -1
  221. package/dist/esm/next-schema/generated/markTypes.js +1 -1
  222. package/dist/esm/next-schema/generated/nodeTypes.js +123 -42
  223. package/dist/esm/next-schema/groups/nonNestableBlockContentGroup.js +1 -1
  224. package/dist/esm/next-schema/groups/tableCellContentPseudoGroup.js +1 -1
  225. package/dist/esm/next-schema/index.js +3 -2
  226. package/dist/esm/next-schema/nodes/blockCard.js +1 -1
  227. package/dist/esm/next-schema/nodes/blockquote.js +2 -2
  228. package/dist/esm/next-schema/nodes/bodiedExtension.js +2 -2
  229. package/dist/esm/next-schema/nodes/caption.js +1 -1
  230. package/dist/esm/next-schema/nodes/codeBlock.js +2 -2
  231. package/dist/esm/next-schema/nodes/date.js +4 -1
  232. package/dist/esm/next-schema/nodes/decisionItem.js +1 -1
  233. package/dist/esm/next-schema/nodes/decisionList.js +1 -1
  234. package/dist/esm/next-schema/nodes/embedCard.js +1 -1
  235. package/dist/esm/next-schema/nodes/emoji.js +4 -1
  236. package/dist/esm/next-schema/nodes/expand.js +2 -2
  237. package/dist/esm/next-schema/nodes/extension.js +2 -2
  238. package/dist/esm/next-schema/nodes/extensionFrame.js +3 -2
  239. package/dist/esm/next-schema/nodes/hardBreak.js +1 -1
  240. package/dist/esm/next-schema/nodes/heading.js +3 -3
  241. package/dist/esm/next-schema/nodes/inlineCard.js +5 -2
  242. package/dist/esm/next-schema/nodes/inlineExtension.js +2 -2
  243. package/dist/esm/next-schema/nodes/layoutColumn.js +1 -1
  244. package/dist/esm/next-schema/nodes/layoutSection.js +3 -2
  245. package/dist/esm/next-schema/nodes/list.js +5 -5
  246. package/dist/esm/next-schema/nodes/media.js +1 -1
  247. package/dist/esm/next-schema/nodes/mediaGroup.js +1 -1
  248. package/dist/esm/next-schema/nodes/mediaInline.js +1 -1
  249. package/dist/esm/next-schema/nodes/mediaSingle.js +5 -5
  250. package/dist/esm/next-schema/nodes/mention.js +4 -1
  251. package/dist/esm/next-schema/nodes/multiBodiedExtension.js +1 -3
  252. package/dist/esm/next-schema/nodes/nestedExpand.js +2 -2
  253. package/dist/esm/next-schema/nodes/panel.js +3 -3
  254. package/dist/esm/next-schema/nodes/paragraph.js +4 -4
  255. package/dist/esm/next-schema/nodes/placeholder.js +1 -1
  256. package/dist/esm/next-schema/nodes/status.js +4 -1
  257. package/dist/esm/next-schema/nodes/table.js +1 -1
  258. package/dist/esm/next-schema/nodes/tableCell.js +1 -1
  259. package/dist/esm/next-schema/nodes/tableHeader.js +1 -1
  260. package/dist/esm/next-schema/nodes/tableRow.js +1 -1
  261. package/dist/esm/next-schema/nodes/task.js +2 -2
  262. package/dist/esm/next-schema/nodes/text.js +1 -1
  263. package/dist/esm/schema/createPMSpecFactory.js +50 -0
  264. package/dist/esm/schema/index.js +5 -1
  265. package/dist/esm/schema/marks/alignment.js +3 -8
  266. package/dist/esm/schema/marks/annotation.js +4 -13
  267. package/dist/esm/schema/marks/background-color.js +3 -9
  268. package/dist/esm/schema/marks/border.js +3 -7
  269. package/dist/esm/schema/marks/breakout.js +3 -9
  270. package/dist/esm/schema/marks/code.js +3 -5
  271. package/dist/esm/schema/marks/confluence-inline-comment.js +4 -9
  272. package/dist/esm/schema/marks/data-consumer.js +3 -7
  273. package/dist/esm/schema/marks/em.js +3 -5
  274. package/dist/esm/schema/marks/fragment.js +3 -12
  275. package/dist/esm/schema/marks/indentation.js +3 -8
  276. package/dist/esm/schema/marks/link.js +3 -13
  277. package/dist/esm/schema/marks/strike.js +3 -5
  278. package/dist/esm/schema/marks/strong.js +3 -5
  279. package/dist/esm/schema/marks/subsup.js +3 -10
  280. package/dist/esm/schema/marks/text-color.js +3 -8
  281. package/dist/esm/schema/marks/type-ahead-query.js +3 -10
  282. package/dist/esm/schema/marks/underline.js +3 -5
  283. package/dist/esm/schema/marks/unsupported-mark.js +3 -6
  284. package/dist/esm/schema/marks/unsupported-node-attributes.js +3 -6
  285. package/dist/esm/schema/nodes/block-card.js +4 -23
  286. package/dist/esm/schema/nodes/blockquote.js +19 -20
  287. package/dist/esm/schema/nodes/bodied-extension.js +24 -54
  288. package/dist/esm/schema/nodes/bullet-list.js +3 -6
  289. package/dist/esm/schema/nodes/caption.js +4 -6
  290. package/dist/esm/schema/nodes/code-block.js +31 -16
  291. package/dist/esm/schema/nodes/confluence-jira-issue.js +3 -22
  292. package/dist/esm/schema/nodes/confluence-unsupported-block.js +3 -8
  293. package/dist/esm/schema/nodes/confluence-unsupported-inline.js +3 -10
  294. package/dist/esm/schema/nodes/date.js +4 -10
  295. package/dist/esm/schema/nodes/decision-item.js +3 -13
  296. package/dist/esm/schema/nodes/decision-list.js +3 -12
  297. package/dist/esm/schema/nodes/doc.js +3 -4
  298. package/dist/esm/schema/nodes/embed-card.js +4 -22
  299. package/dist/esm/schema/nodes/emoji.js +3 -16
  300. package/dist/esm/schema/nodes/expand.js +4 -16
  301. package/dist/esm/schema/nodes/extension.js +20 -47
  302. package/dist/esm/schema/nodes/hard-break.js +4 -5
  303. package/dist/esm/schema/nodes/heading.js +4 -14
  304. package/dist/esm/schema/nodes/image.js +3 -16
  305. package/dist/esm/schema/nodes/inline-card.js +4 -14
  306. package/dist/esm/schema/nodes/inline-extension.js +19 -42
  307. package/dist/esm/schema/nodes/layout-column.js +5 -12
  308. package/dist/esm/schema/nodes/layout-section.js +24 -10
  309. package/dist/esm/schema/nodes/list-item.js +6 -12
  310. package/dist/esm/schema/nodes/media-group.js +4 -8
  311. package/dist/esm/schema/nodes/media-inline.js +3 -2
  312. package/dist/esm/schema/nodes/media-single.js +35 -14
  313. package/dist/esm/schema/nodes/media.js +36 -82
  314. package/dist/esm/schema/nodes/mention.js +3 -22
  315. package/dist/esm/schema/nodes/multi-bodied-extension.js +27 -64
  316. package/dist/esm/schema/nodes/nested-expand.js +32 -48
  317. package/dist/esm/schema/nodes/ordered-list.js +4 -15
  318. package/dist/esm/schema/nodes/panel.js +5 -34
  319. package/dist/esm/schema/nodes/paragraph.js +4 -11
  320. package/dist/esm/schema/nodes/placeholder.js +4 -11
  321. package/dist/esm/schema/nodes/rule.js +4 -3
  322. package/dist/esm/schema/nodes/status.js +3 -19
  323. package/dist/esm/schema/nodes/tableNodes.js +12 -52
  324. package/dist/esm/schema/nodes/task-item.js +3 -14
  325. package/dist/esm/schema/nodes/task-list.js +3 -12
  326. package/dist/esm/schema/nodes/text.js +4 -4
  327. package/dist/esm/schema/nodes/unsupported-block.js +3 -11
  328. package/dist/esm/schema/nodes/unsupported-inline.js +3 -10
  329. package/dist/types/index.d.ts +2 -0
  330. package/dist/types/next-schema/full-schema.adf.d.ts +1 -30
  331. package/dist/types/next-schema/generated/markTypes.d.ts +20 -20
  332. package/dist/types/next-schema/generated/nodeGroupTypes.d.ts +4 -4
  333. package/dist/types/next-schema/generated/nodeTypes.d.ts +143 -85
  334. package/dist/types/next-schema/groups/nonNestableBlockContentGroup.d.ts +3 -119
  335. package/dist/types/next-schema/index.d.ts +3 -5
  336. package/dist/types/next-schema/nodes/blockCard.d.ts +1 -30
  337. package/dist/types/next-schema/nodes/blockquote.d.ts +1 -30
  338. package/dist/types/next-schema/nodes/bodiedExtension.d.ts +1 -30
  339. package/dist/types/next-schema/nodes/caption.d.ts +1 -30
  340. package/dist/types/next-schema/nodes/codeBlock.d.ts +2 -60
  341. package/dist/types/next-schema/nodes/confluenceJiraIssue.d.ts +1 -30
  342. package/dist/types/next-schema/nodes/confluenceUnsupportedBlock.d.ts +1 -30
  343. package/dist/types/next-schema/nodes/confluenceUnsupportedInline.d.ts +1 -30
  344. package/dist/types/next-schema/nodes/date.d.ts +1 -30
  345. package/dist/types/next-schema/nodes/decisionItem.d.ts +1 -30
  346. package/dist/types/next-schema/nodes/decisionList.d.ts +1 -30
  347. package/dist/types/next-schema/nodes/embedCard.d.ts +1 -30
  348. package/dist/types/next-schema/nodes/emoji.d.ts +1 -30
  349. package/dist/types/next-schema/nodes/expand.d.ts +1 -30
  350. package/dist/types/next-schema/nodes/extension.d.ts +1 -30
  351. package/dist/types/next-schema/nodes/extensionFrame.d.ts +1 -30
  352. package/dist/types/next-schema/nodes/hardBreak.d.ts +1 -30
  353. package/dist/types/next-schema/nodes/heading.d.ts +2 -60
  354. package/dist/types/next-schema/nodes/image.d.ts +1 -30
  355. package/dist/types/next-schema/nodes/inlineCard.d.ts +1 -30
  356. package/dist/types/next-schema/nodes/inlineExtension.d.ts +1 -30
  357. package/dist/types/next-schema/nodes/layoutColumn.d.ts +1 -30
  358. package/dist/types/next-schema/nodes/layoutSection.d.ts +2 -30
  359. package/dist/types/next-schema/nodes/list.d.ts +2 -60
  360. package/dist/types/next-schema/nodes/media.d.ts +1 -30
  361. package/dist/types/next-schema/nodes/mediaGroup.d.ts +1 -30
  362. package/dist/types/next-schema/nodes/mediaInline.d.ts +1 -30
  363. package/dist/types/next-schema/nodes/mediaSingle.d.ts +1 -30
  364. package/dist/types/next-schema/nodes/mention.d.ts +1 -30
  365. package/dist/types/next-schema/nodes/multiBodiedExtension.d.ts +1 -30
  366. package/dist/types/next-schema/nodes/nestedExpand.d.ts +1 -30
  367. package/dist/types/next-schema/nodes/panel.d.ts +1 -30
  368. package/dist/types/next-schema/nodes/paragraph.d.ts +1 -30
  369. package/dist/types/next-schema/nodes/placeholder.d.ts +1 -30
  370. package/dist/types/next-schema/nodes/rule.d.ts +1 -30
  371. package/dist/types/next-schema/nodes/status.d.ts +1 -30
  372. package/dist/types/next-schema/nodes/table.d.ts +1 -30
  373. package/dist/types/next-schema/nodes/tableCell.d.ts +1 -30
  374. package/dist/types/next-schema/nodes/tableCellContent.d.ts +1 -30
  375. package/dist/types/next-schema/nodes/tableHeader.d.ts +1 -30
  376. package/dist/types/next-schema/nodes/tableRow.d.ts +1 -30
  377. package/dist/types/next-schema/nodes/task.d.ts +2 -60
  378. package/dist/types/next-schema/nodes/text.d.ts +1 -30
  379. package/dist/types/next-schema/nodes/unsupportedBlock.d.ts +1 -30
  380. package/dist/types/next-schema/nodes/unsupportedInline.d.ts +1 -30
  381. package/dist/types/schema/createPMSpecFactory.d.ts +33 -0
  382. package/dist/types/schema/index.d.ts +2 -0
  383. package/dist/types/schema/nodes/block-card.d.ts +1 -2
  384. package/dist/types/schema/nodes/blockquote.d.ts +2 -3
  385. package/dist/types/schema/nodes/bodied-extension.d.ts +1 -2
  386. package/dist/types/schema/nodes/bullet-list.d.ts +1 -2
  387. package/dist/types/schema/nodes/caption.d.ts +1 -2
  388. package/dist/types/schema/nodes/code-block.d.ts +2 -2
  389. package/dist/types/schema/nodes/confluence-jira-issue.d.ts +1 -2
  390. package/dist/types/schema/nodes/confluence-unsupported-block.d.ts +1 -2
  391. package/dist/types/schema/nodes/confluence-unsupported-inline.d.ts +1 -2
  392. package/dist/types/schema/nodes/date.d.ts +1 -2
  393. package/dist/types/schema/nodes/decision-item.d.ts +1 -2
  394. package/dist/types/schema/nodes/decision-list.d.ts +1 -2
  395. package/dist/types/schema/nodes/doc.d.ts +1 -2
  396. package/dist/types/schema/nodes/embed-card.d.ts +1 -2
  397. package/dist/types/schema/nodes/emoji.d.ts +1 -2
  398. package/dist/types/schema/nodes/expand.d.ts +2 -2
  399. package/dist/types/schema/nodes/extension.d.ts +1 -2
  400. package/dist/types/schema/nodes/hard-break.d.ts +1 -2
  401. package/dist/types/schema/nodes/heading.d.ts +1 -2
  402. package/dist/types/schema/nodes/image.d.ts +1 -2
  403. package/dist/types/schema/nodes/inline-card.d.ts +1 -2
  404. package/dist/types/schema/nodes/inline-extension.d.ts +1 -2
  405. package/dist/types/schema/nodes/layout-column.d.ts +1 -2
  406. package/dist/types/schema/nodes/layout-section.d.ts +3 -3
  407. package/dist/types/schema/nodes/list-item.d.ts +2 -3
  408. package/dist/types/schema/nodes/media-group.d.ts +1 -2
  409. package/dist/types/schema/nodes/media.d.ts +3 -1
  410. package/dist/types/schema/nodes/mention.d.ts +2 -2
  411. package/dist/types/schema/nodes/multi-bodied-extension.d.ts +2 -3
  412. package/dist/types/schema/nodes/nested-expand.d.ts +1 -2
  413. package/dist/types/schema/nodes/ordered-list.d.ts +2 -3
  414. package/dist/types/schema/nodes/panel.d.ts +2 -3
  415. package/dist/types/schema/nodes/paragraph.d.ts +1 -2
  416. package/dist/types/schema/nodes/placeholder.d.ts +1 -2
  417. package/dist/types/schema/nodes/rule.d.ts +1 -2
  418. package/dist/types/schema/nodes/status.d.ts +1 -2
  419. package/dist/types/schema/nodes/tableNodes.d.ts +7 -7
  420. package/dist/types/schema/nodes/task-item.d.ts +1 -2
  421. package/dist/types/schema/nodes/task-list.d.ts +1 -2
  422. package/dist/types/schema/nodes/text.d.ts +1 -4
  423. package/dist/types/schema/nodes/unsupported-block.d.ts +1 -2
  424. package/dist/types/schema/nodes/unsupported-inline.d.ts +1 -2
  425. package/package.json +7 -4
  426. package/schema-generators/__tests__/unit/adfToValidatorSpec.unit.ts +7 -7
  427. package/schema-generators/__tests__/unit/validate-pm-schema.unit.ts +6 -4
  428. package/schema-generators/json-full-schema.ts +5 -4
  429. package/schema-generators/pm-full-schema.ts +3 -3
  430. package/schema-generators/validator-full-schema.ts +1 -1
@@ -7,7 +7,7 @@ import { unsupportedNodeAttribute } from '../marks/unsupportedNodeAttribute';
7
7
  export const heading = adfNode('heading').define({
8
8
  defining: true,
9
9
  selectable: false,
10
- marks: [unsupportedNodeAttribute, unsupportedMark],
10
+ marks: [unsupportedMark, unsupportedNodeAttribute],
11
11
  hasEmptyMarks: true,
12
12
  attrs: {
13
13
  level: {
@@ -36,11 +36,11 @@ export const heading = adfNode('heading').define({
36
36
  }
37
37
  }
38
38
  }).variant('with_alignment', {
39
- marks: [alignment, unsupportedNodeAttribute, unsupportedMark],
39
+ marks: [alignment, unsupportedMark, unsupportedNodeAttribute],
40
40
  content: [],
41
41
  ignore: []
42
42
  }).variant('with_indentation', {
43
- marks: [indentation, unsupportedNodeAttribute, unsupportedMark],
43
+ marks: [indentation, unsupportedMark, unsupportedNodeAttribute],
44
44
  content: [],
45
45
  ignore: []
46
46
  }).variant('with_no_marks', {
@@ -6,7 +6,7 @@ export const inlineCard = adfNode('inlineCard').define({
6
6
  inline: true,
7
7
  selectable: true,
8
8
  draggable: true,
9
- marks: [unsupportedNodeAttribute, unsupportedMark],
9
+ marks: [unsupportedMark, unsupportedNodeAttribute],
10
10
  attrs: {
11
11
  anyOf: [{
12
12
  url: {
@@ -21,6 +21,9 @@ export const inlineCard = adfNode('inlineCard').define({
21
21
  }
22
22
  }]
23
23
  },
24
+ stage0: {
25
+ marks: [annotation, unsupportedNodeAttribute, unsupportedMark]
26
+ },
24
27
  DANGEROUS_MANUAL_OVERRIDE: {
25
28
  'validator-spec': {
26
29
  'props.marks': {
@@ -34,5 +37,5 @@ export const inlineCard = adfNode('inlineCard').define({
34
37
  }
35
38
  }
36
39
  }).variant('with_annotation', {
37
- marks: [annotation, unsupportedNodeAttribute, unsupportedMark]
40
+ marks: [annotation, unsupportedMark, unsupportedNodeAttribute]
38
41
  });
@@ -6,7 +6,7 @@ import { unsupportedNodeAttribute } from '../marks/unsupportedNodeAttribute';
6
6
  export const inlineExtension = adfNode('inlineExtension').define({
7
7
  inline: true,
8
8
  selectable: true,
9
- marks: [unsupportedNodeAttribute, unsupportedMark],
9
+ marks: [unsupportedMark, unsupportedNodeAttribute],
10
10
  hasEmptyMarks: true,
11
11
  attrs: {
12
12
  extensionKey: {
@@ -37,5 +37,5 @@ export const inlineExtension = adfNode('inlineExtension').define({
37
37
  }
38
38
  }
39
39
  }).variant('with_marks', {
40
- marks: [dataConsumer, fragment, unsupportedNodeAttribute, unsupportedMark]
40
+ marks: [dataConsumer, fragment, unsupportedMark, unsupportedNodeAttribute]
41
41
  });
@@ -7,7 +7,7 @@ import { unsupportedBlock } from '../nodes/unsupportedBlock';
7
7
  export const layoutColumn = adfNode('layoutColumn').define({
8
8
  isolating: true,
9
9
  selectable: false,
10
- marks: [unsupportedNodeAttribute, unsupportedMark],
10
+ marks: [unsupportedMark, unsupportedNodeAttribute],
11
11
  attrs: {
12
12
  width: {
13
13
  type: 'number',
@@ -6,7 +6,7 @@ import { layoutColumn } from './layoutColumn';
6
6
  import { unsupportedBlock } from './unsupportedBlock';
7
7
  export const layoutSection = adfNode('layoutSection').define({
8
8
  isolating: true,
9
- marks: [breakout, unsupportedNodeAttribute, unsupportedMark],
9
+ marks: [breakout, unsupportedMark, unsupportedNodeAttribute],
10
10
  content: [$or(layoutColumn, unsupportedBlock)],
11
11
  DANGEROUS_MANUAL_OVERRIDE: {
12
12
  'pm-spec': {
@@ -23,6 +23,7 @@ export const layoutSection = adfNode('layoutSection').define({
23
23
  }
24
24
  }
25
25
  }).variant('with_single_column', {
26
+ stage0: true,
26
27
  content: [$range(1, 3, $or(layoutColumn, unsupportedBlock))],
27
28
  ignore: [],
28
29
  DANGEROUS_MANUAL_OVERRIDE: {
@@ -45,7 +46,7 @@ export const layoutSection = adfNode('layoutSection').define({
45
46
  }
46
47
  }
47
48
  }).variant('full', {
48
- marks: [breakout, unsupportedNodeAttribute, unsupportedMark],
49
+ marks: [breakout, unsupportedMark, unsupportedNodeAttribute],
49
50
  content: [$range(2, 3, $or(layoutColumn, unsupportedBlock))],
50
51
  ignore: [],
51
52
  DANGEROUS_MANUAL_OVERRIDE: {
@@ -11,16 +11,16 @@ export const bulletList = adfNode('bulletList');
11
11
  const listItem = adfNode('listItem').define({
12
12
  defining: true,
13
13
  selectable: false,
14
- marks: [unsupportedNodeAttribute, unsupportedMark],
14
+ marks: [unsupportedMark, unsupportedNodeAttribute],
15
15
  contentMinItems: 1,
16
- content: [$or(codeBlock.use('with_no_marks'), paragraph.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), unsupportedBlock), $zeroPlus($or(codeBlock.use('with_no_marks'), paragraph.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), taskList, bulletList, orderedList, unsupportedBlock))]
16
+ content: [$or(paragraph.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), codeBlock.use('with_no_marks'), unsupportedBlock), $zeroPlus($or(paragraph.use('with_no_marks'), bulletList, orderedList, taskList, mediaSingle.use('caption'), mediaSingle.use('full'), codeBlock.use('with_no_marks'), unsupportedBlock))]
17
17
  }).variant('legacy', {
18
- content: [$or(codeBlock.use('with_no_marks'), paragraph.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), unsupportedBlock), $zeroPlus($or(codeBlock.use('with_no_marks'), paragraph.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), bulletList, orderedList, unsupportedBlock))],
18
+ content: [$or(paragraph.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), codeBlock.use('with_no_marks'), unsupportedBlock), $zeroPlus($or(paragraph.use('with_no_marks'), bulletList, orderedList, mediaSingle.use('caption'), mediaSingle.use('full'), codeBlock.use('with_no_marks'), unsupportedBlock))],
19
19
  ignore: ['json-schema', 'validator-spec']
20
20
  });
21
21
  orderedList.define({
22
22
  selectable: false,
23
- marks: [unsupportedNodeAttribute, unsupportedMark],
23
+ marks: [unsupportedMark, unsupportedNodeAttribute],
24
24
  attrs: {
25
25
  order: {
26
26
  type: 'number',
@@ -33,6 +33,6 @@ orderedList.define({
33
33
  });
34
34
  bulletList.define({
35
35
  selectable: false,
36
- marks: [unsupportedNodeAttribute, unsupportedMark],
36
+ marks: [unsupportedMark, unsupportedNodeAttribute],
37
37
  content: [$onePlus($or(listItem, listItem.use('legacy')))]
38
38
  });
@@ -6,7 +6,7 @@ import { unsupportedMark } from '../marks/unsupportedMark';
6
6
  import { unsupportedNodeAttribute } from '../marks/unsupportedNodeAttribute';
7
7
  export const media = adfNode('media').define({
8
8
  selectable: true,
9
- marks: [link, annotation, border, unsupportedNodeAttribute, unsupportedMark],
9
+ marks: [link, annotation, border, unsupportedMark, unsupportedNodeAttribute],
10
10
  attrs: {
11
11
  anyOf: [{
12
12
  type: {
@@ -5,7 +5,7 @@ import { media } from './media';
5
5
  import { unsupportedBlock } from './unsupportedBlock';
6
6
  export const mediaGroup = adfNode('mediaGroup').define({
7
7
  selectable: false,
8
- marks: [unsupportedNodeAttribute, unsupportedMark],
8
+ marks: [unsupportedMark, unsupportedNodeAttribute],
9
9
  // Need to be empty object to match old PM Spec
10
10
  attrs: {},
11
11
  content: [$onePlus($or(media, unsupportedBlock))]
@@ -8,7 +8,7 @@ export const mediaInline = adfNode('mediaInline').define({
8
8
  selectable: true,
9
9
  // atom: false,
10
10
  inline: true,
11
- marks: [link, annotation, border, unsupportedNodeAttribute, unsupportedMark],
11
+ marks: [link, annotation, border, unsupportedMark, unsupportedNodeAttribute],
12
12
  attrs: {
13
13
  type: {
14
14
  type: 'enum',
@@ -8,7 +8,7 @@ import { unsupportedBlock } from './unsupportedBlock';
8
8
  export const mediaSingle = adfNode('mediaSingle').define({
9
9
  atom: true,
10
10
  selectable: true,
11
- marks: [link, unsupportedNodeAttribute, unsupportedMark],
11
+ marks: [link, unsupportedMark, unsupportedNodeAttribute],
12
12
  attrs: {
13
13
  anyOf: [{
14
14
  width: {
@@ -50,7 +50,7 @@ export const mediaSingle = adfNode('mediaSingle').define({
50
50
  DANGEROUS_MANUAL_OVERRIDE: {
51
51
  'pm-spec': {
52
52
  content: {
53
- value: 'media|media|unsupportedBlock+ unsupportedBlock+',
53
+ value: 'media|unsupportedBlock+|media unsupportedBlock+',
54
54
  reason: 'The content expression is not correct or redundant around `media|media|unsupportedBlock+`. This case is not supported by the DSL.'
55
55
  },
56
56
  attrs: {
@@ -86,7 +86,7 @@ export const mediaSingle = adfNode('mediaSingle').define({
86
86
  DANGEROUS_MANUAL_OVERRIDE: {
87
87
  'pm-spec': {
88
88
  content: {
89
- value: 'media|media|unsupportedBlock+ (caption|unsupportedBlock) unsupportedBlock*',
89
+ value: 'media|unsupportedBlock+|media (caption|unsupportedBlock) unsupportedBlock*',
90
90
  reason: 'The content expression is not correct or redundant around `media|media|unsupportedBlock+`. This case is not supported by the DSL.'
91
91
  },
92
92
  attrs: {
@@ -110,7 +110,7 @@ export const mediaSingle = adfNode('mediaSingle').define({
110
110
  DANGEROUS_MANUAL_OVERRIDE: {
111
111
  'pm-spec': {
112
112
  content: {
113
- value: 'media|media|unsupportedBlock+ (caption|unsupportedBlock) unsupportedBlock*',
113
+ value: 'media|unsupportedBlock+|media (caption|unsupportedBlock) unsupportedBlock*',
114
114
  reason: 'The content expression is not correct or redundant around `media|media|unsupportedBlock+`. This case is not supported by the DSL.'
115
115
  }
116
116
  }
@@ -124,7 +124,7 @@ export const mediaSingle = adfNode('mediaSingle').define({
124
124
  DANGEROUS_MANUAL_OVERRIDE: {
125
125
  'pm-spec': {
126
126
  content: {
127
- value: 'media|media|unsupportedBlock+ unsupportedBlock+',
127
+ value: 'media|unsupportedBlock+|media unsupportedBlock+',
128
128
  reason: 'The content expression is not correct or redundant around `media|media|unsupportedBlock+`. This case is not supported by the DSL.'
129
129
  }
130
130
  }
@@ -5,7 +5,7 @@ import { unsupportedNodeAttribute } from '../marks/unsupportedNodeAttribute';
5
5
  export const mention = adfNode('mention').define({
6
6
  inline: true,
7
7
  selectable: true,
8
- marks: [unsupportedNodeAttribute, unsupportedMark, annotation],
8
+ marks: [unsupportedNodeAttribute, unsupportedMark],
9
9
  attrs: {
10
10
  id: {
11
11
  type: 'string',
@@ -32,5 +32,8 @@ export const mention = adfNode('mention').define({
32
32
  default: null,
33
33
  optional: true
34
34
  }
35
+ },
36
+ stage0: {
37
+ marks: [unsupportedNodeAttribute, unsupportedMark, annotation]
35
38
  }
36
39
  });
@@ -1,12 +1,11 @@
1
1
  import { $onePlus, $or, adfNode } from '@atlaskit/adf-schema-generator';
2
- import { blockRootOnlyGroup } from '../groups/blockRootOnlyGroup';
3
2
  import { unsupportedMark } from '../marks/unsupportedMark';
4
3
  import { unsupportedNodeAttribute } from '../marks/unsupportedNodeAttribute';
5
4
  import { extensionFrame } from './extensionFrame';
6
5
  export const multiBodiedExtension = adfNode('multiBodiedExtension').define({
6
+ stage0: true,
7
7
  definingAsContext: true,
8
8
  selectable: true,
9
- group: blockRootOnlyGroup,
10
9
  marks: [unsupportedNodeAttribute, unsupportedMark],
11
10
  hasEmptyMarks: true,
12
11
  attrs: {
@@ -44,7 +43,6 @@ export const multiBodiedExtension = adfNode('multiBodiedExtension').define({
44
43
  }
45
44
  },
46
45
  content: [$onePlus($or(extensionFrame))],
47
- ignore: [],
48
46
  DANGEROUS_MANUAL_OVERRIDE: {
49
47
  'validator-spec': {
50
48
  'props.content.minItems': {
@@ -16,7 +16,7 @@ import { unsupportedBlock } from './unsupportedBlock';
16
16
  export const nestedExpand = adfNode('nestedExpand').define({
17
17
  isolating: true,
18
18
  selectable: true,
19
- marks: [unsupportedNodeAttribute, unsupportedMark],
19
+ marks: [unsupportedMark, unsupportedNodeAttribute],
20
20
  attrs: {
21
21
  title: {
22
22
  type: 'string',
@@ -29,7 +29,7 @@ export const nestedExpand = adfNode('nestedExpand').define({
29
29
  optional: true
30
30
  }
31
31
  },
32
- content: [$onePlus($or(codeBlock.use('with_no_marks'), paragraph.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), taskList, bulletList, orderedList, heading.use('with_no_marks'), mediaGroup, decisionList, rule, panel, blockquote, unsupportedBlock))],
32
+ content: [$onePlus($or(paragraph.use('with_no_marks'), heading.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), mediaGroup, codeBlock.use('with_no_marks'), bulletList, orderedList, taskList, decisionList, rule, panel, blockquote, unsupportedBlock))],
33
33
  DANGEROUS_MANUAL_OVERRIDE: {
34
34
  'validator-spec': {
35
35
  'props.attrs.optional': {
@@ -14,7 +14,7 @@ import { taskList } from './task';
14
14
  import { unsupportedBlock } from './unsupportedBlock';
15
15
  export const panel = adfNode('panel').define({
16
16
  selectable: true,
17
- marks: [unsupportedNodeAttribute, unsupportedMark],
17
+ marks: [unsupportedMark, unsupportedNodeAttribute],
18
18
  attrs: {
19
19
  panelType: {
20
20
  type: 'enum',
@@ -42,8 +42,8 @@ export const panel = adfNode('panel').define({
42
42
  optional: true
43
43
  }
44
44
  },
45
- content: [$onePlus($or(codeBlock.use('with_no_marks'), blockCard, paragraph.use('with_no_marks'), mediaSingle.use('caption'), mediaSingle.use('full'), taskList, bulletList, orderedList, heading.use('with_no_marks'), mediaGroup, decisionList, rule, unsupportedBlock))]
45
+ content: [$onePlus($or(paragraph.use('with_no_marks'), heading.use('with_no_marks'), bulletList, orderedList, blockCard, mediaGroup, mediaSingle.use('caption'), mediaSingle.use('full'), codeBlock.use('with_no_marks'), taskList, rule, decisionList, unsupportedBlock))]
46
46
  }).variant('legacy', {
47
- content: [$onePlus($or(blockCard, paragraph.use('with_no_marks'), bulletList, orderedList, heading.use('with_no_marks'), unsupportedBlock))],
47
+ content: [$onePlus($or(paragraph.use('with_no_marks'), heading.use('with_no_marks'), bulletList, orderedList, blockCard, unsupportedBlock))],
48
48
  ignore: ['json-schema', 'validator-spec']
49
49
  });
@@ -14,7 +14,7 @@ export const paragraph = adfNode('paragraph').define({
14
14
  }
15
15
  },
16
16
  selectable: false,
17
- marks: [unsupportedNodeAttribute, unsupportedMark],
17
+ marks: [unsupportedMark, unsupportedNodeAttribute],
18
18
  hasEmptyMarks: true,
19
19
  content: [$zeroPlus($or(inlineGroup, atomicInlineGroup, inlineContentGroup))],
20
20
  DANGEROUS_MANUAL_OVERRIDE: {
@@ -30,15 +30,15 @@ export const paragraph = adfNode('paragraph').define({
30
30
  }
31
31
  }
32
32
  }).variant('with_alignment', {
33
- marks: [alignment, unsupportedNodeAttribute, unsupportedMark],
33
+ marks: [alignment, unsupportedMark, unsupportedNodeAttribute],
34
34
  content: [],
35
35
  ignore: []
36
36
  }).variant('with_indentation', {
37
- marks: [indentation, unsupportedNodeAttribute, unsupportedMark],
37
+ marks: [indentation, unsupportedMark, unsupportedNodeAttribute],
38
38
  content: [],
39
39
  ignore: []
40
40
  }).variant('with_marks', {
41
- marks: [alignment, unsupportedNodeAttribute, unsupportedMark],
41
+ marks: [alignment, unsupportedMark, unsupportedNodeAttribute],
42
42
  content: [],
43
43
  ignore: []
44
44
  }).variant('with_no_marks', {
@@ -4,7 +4,7 @@ import { unsupportedNodeAttribute } from '../marks/unsupportedNodeAttribute';
4
4
  export const placeholder = adfNode('placeholder').define({
5
5
  selectable: false,
6
6
  inline: true,
7
- marks: [unsupportedNodeAttribute, unsupportedMark],
7
+ marks: [unsupportedMark, unsupportedNodeAttribute],
8
8
  allowNoChildMark: true,
9
9
  attrs: {
10
10
  text: {
@@ -5,7 +5,7 @@ import { unsupportedNodeAttribute } from '../marks/unsupportedNodeAttribute';
5
5
  export const status = adfNode('status').define({
6
6
  inline: true,
7
7
  selectable: true,
8
- marks: [unsupportedNodeAttribute, unsupportedMark, annotation],
8
+ marks: [unsupportedNodeAttribute, unsupportedMark],
9
9
  attrs: {
10
10
  text: {
11
11
  minLength: 1,
@@ -27,5 +27,8 @@ export const status = adfNode('status').define({
27
27
  optional: true,
28
28
  default: ''
29
29
  }
30
+ },
31
+ stage0: {
32
+ marks: [unsupportedNodeAttribute, unsupportedMark, annotation]
30
33
  }
31
34
  });
@@ -7,7 +7,7 @@ export const table = adfNode('table').define({
7
7
  isolating: true,
8
8
  selectable: true,
9
9
  tableRole: 'table',
10
- marks: [fragment, unsupportedNodeAttribute, unsupportedMark],
10
+ marks: [fragment, unsupportedMark, unsupportedNodeAttribute],
11
11
  attrs: {
12
12
  displayMode: {
13
13
  type: 'enum',
@@ -6,7 +6,7 @@ export const tableCell = adfNode('tableCell').define({
6
6
  isolating: true,
7
7
  selectable: false,
8
8
  tableRole: 'cell',
9
- marks: [unsupportedNodeAttribute, unsupportedMark],
9
+ marks: [unsupportedMark, unsupportedNodeAttribute],
10
10
  attrs: {
11
11
  colspan: {
12
12
  type: 'number',
@@ -6,7 +6,7 @@ export const tableHeader = adfNode('tableHeader').define({
6
6
  isolating: true,
7
7
  selectable: false,
8
8
  tableRole: 'header_cell',
9
- marks: [unsupportedNodeAttribute, unsupportedMark],
9
+ marks: [unsupportedMark, unsupportedNodeAttribute],
10
10
  attrs: {
11
11
  colspan: {
12
12
  type: 'number',
@@ -6,7 +6,7 @@ import { tableHeader } from './tableHeader';
6
6
  import { tableCellContent } from './tableCellContent';
7
7
  export const tableRow = adfNode('tableRow').define({
8
8
  selectable: false,
9
- marks: [unsupportedNodeAttribute, unsupportedMark],
9
+ marks: [unsupportedMark, unsupportedNodeAttribute],
10
10
  content: [$onePlus($or(tableCell, tableHeader, tableCellContent))],
11
11
  tableRole: 'row',
12
12
  DANGEROUS_MANUAL_OVERRIDE: {
@@ -9,7 +9,7 @@ export const taskList = adfNode('taskList');
9
9
  taskItem.define({
10
10
  defining: true,
11
11
  selectable: false,
12
- marks: [unsupportedNodeAttribute, unsupportedMark],
12
+ marks: [unsupportedMark, unsupportedNodeAttribute],
13
13
  allowAnyChildMark: true,
14
14
  attrs: {
15
15
  localId: {
@@ -27,7 +27,7 @@ taskItem.define({
27
27
  taskList.define({
28
28
  defining: true,
29
29
  selectable: false,
30
- marks: [unsupportedNodeAttribute, unsupportedMark],
30
+ marks: [unsupportedMark, unsupportedNodeAttribute],
31
31
  attrs: {
32
32
  localId: {
33
33
  type: 'string',
@@ -30,5 +30,5 @@ export const text = adfNode('text').define({
30
30
  }
31
31
  }
32
32
  }).variant('code_inline', {
33
- marks: [code, link, annotation, unsupportedNodeAttribute, unsupportedMark]
33
+ marks: [code, link, annotation, unsupportedMark, unsupportedNodeAttribute]
34
34
  });
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Factory method to attach custom parseDOM and/or toDOM for nodeSpec
3
+ *
4
+ * @example
5
+ * createPMNodeSpecFactory<SomeNode>(node)({parseDOM: {}, toDOM: (node) => {} });
6
+ *
7
+ * @param nodeSpec - NodeSpec without toDom and parseDom
8
+ * @returns A function for a node which allows the consumer to define toDom and parseDom
9
+ */
10
+ export const createPMNodeSpecFactory = nodeSpec => ({
11
+ parseDOM,
12
+ toDOM,
13
+ toDebugString
14
+ }) => {
15
+ return {
16
+ ...nodeSpec,
17
+ ...(parseDOM && {
18
+ parseDOM
19
+ }),
20
+ ...(toDOM && {
21
+ toDOM
22
+ }),
23
+ ...(toDebugString && {
24
+ toDebugString
25
+ })
26
+ };
27
+ };
28
+
29
+ /**
30
+ * Factory method to attach custom parseDOM and/or toDOM for markSpec
31
+ *
32
+ * @example
33
+ * createPMMarkSpecFactory<SomeMark>(mark)({parseDOM: {}, toDOM: (mark, inline) => {} });
34
+ *
35
+ * @param markSpec - Markspec without toDom and parseDom
36
+ * @returns A function for a mark which allows the consumer to define toDom and parseDom
37
+ */
38
+ export const createPMMarkSpecFactory = markSpec => ({
39
+ parseDOM,
40
+ toDOM,
41
+ toDebugString
42
+ }) => {
43
+ return {
44
+ ...markSpec,
45
+ ...(parseDOM && {
46
+ parseDOM
47
+ }),
48
+ ...(toDOM && {
49
+ toDOM
50
+ }),
51
+ ...(toDebugString && {
52
+ toDebugString
53
+ })
54
+ };
55
+ };
@@ -3,4 +3,8 @@ export { AnnotationTypes, alignment, alignmentPositionMap, annotation, breakout,
3
3
  colorPaletteExtended, confluenceInlineComment, dataConsumer, dataConsumerToJSON, em, fragment, fragmentToJSON, indentation, link, linkToJSON, strike, strong, subsup, textColor, typeAheadQuery, underline, buildAnnotationMarkDataAttributes, AnnotationMarkStates, unsupportedMark, unsupportedNodeAttribute, border, borderColorPalette, backgroundColor, backgroundColorPalette } from './marks';
4
4
  export { unsupportedNodeTypesForMediaCards } from './unsupported';
5
5
  export { inlineNodes } from './inline-nodes';
6
- export { sanitizeNodes, createSchema } from './create-schema';
6
+ export { sanitizeNodes, createSchema } from './create-schema';
7
+
8
+ // ADF createPMSpecFactory
9
+
10
+ export { createPMNodeSpecFactory, createPMMarkSpecFactory } from './createPMSpecFactory';
@@ -1,4 +1,4 @@
1
- import { ALIGNMENT, INDENTATION } from '../groups';
1
+ import { alignment as alignmentFactory } from '../../next-schema/generated/markTypes';
2
2
 
3
3
  /** TODO: Flip these positions for RTL */
4
4
  export const alignmentPositionMap = {
@@ -11,12 +11,7 @@ export const alignmentPositionMap = {
11
11
  * @name alignment_mark
12
12
  */
13
13
 
14
- export const alignment = {
15
- excludes: `alignment ${INDENTATION}`,
16
- group: ALIGNMENT,
17
- attrs: {
18
- align: {}
19
- },
14
+ export const alignment = alignmentFactory({
20
15
  parseDOM: [{
21
16
  tag: 'div.fabric-editor-block-mark',
22
17
  getAttrs: dom => {
@@ -32,4 +27,4 @@ export const alignment = {
32
27
  'data-align': mark.attrs.align
33
28
  }, 0];
34
29
  }
35
- };
30
+ });
@@ -1,3 +1,5 @@
1
+ import { annotation as annotationFactory } from '../../next-schema/generated/markTypes';
2
+
1
3
  /**
2
4
  * @name annotation_mark
3
5
  */
@@ -29,18 +31,7 @@ export function buildDataAttributes({
29
31
  }
30
32
  return data;
31
33
  }
32
- export const annotation = {
33
- inclusive: true,
34
- group: 'annotation',
35
- excludes: '',
36
- attrs: {
37
- id: {
38
- default: ''
39
- },
40
- annotationType: {
41
- default: AnnotationTypes.INLINE_COMMENT
42
- }
43
- },
34
+ export const annotation = annotationFactory({
44
35
  parseDOM: [{
45
36
  tag: 'span[data-mark-type="annotation"]',
46
37
  mark: 'annotation',
@@ -71,4 +62,4 @@ export const annotation = {
71
62
  })
72
63
  }, 0];
73
64
  }
74
- };
65
+ });
@@ -1,5 +1,5 @@
1
+ import { backgroundColor as backgroundColorFactory } from '../../next-schema/generated/markTypes';
1
2
  import { hexToEditorTextBackgroundPaletteColor } from '../../utils/editor-palette';
2
- import { COLOR } from '../groups';
3
3
  import { rgbToHex, L200, T200, P200, M200, Neutral300, O200 } from '../../utils/colors';
4
4
  import { getGlobalTheme } from './text-color';
5
5
  import { getDarkModeLCHColor } from '../../utils/lch-color-inversion';
@@ -24,13 +24,7 @@ const colorArrayPalette = [[Neutral300, 'Gray'],
24
24
  // @see https://product-fabric.atlassian.net/wiki/spaces/E/pages/55979455/Colour+picker+decisions#Colourpickerdecisions-Visualdesigndecisions
25
25
  export const backgroundColorPalette = new Map();
26
26
  colorArrayPalette.forEach(([color, label]) => backgroundColorPalette.set(color.toLowerCase(), label));
27
- export const backgroundColor = {
28
- attrs: {
29
- color: {}
30
- },
31
- inclusive: true,
32
- group: COLOR,
33
- excludes: `${COLOR}`,
27
+ export const backgroundColor = backgroundColorFactory({
34
28
  parseDOM: [{
35
29
  style: 'background-color',
36
30
  getAttrs: maybeValue => {
@@ -103,4 +97,4 @@ export const backgroundColor = {
103
97
  ['data-background-custom-color']: mark.attrs.color
104
98
  }];
105
99
  }
106
- };
100
+ });
@@ -1,3 +1,4 @@
1
+ import { border as borderFactory } from '../../next-schema/generated/markTypes';
1
2
  import { hexToEditorBorderPaletteColor } from '../../utils/editor-palette';
2
3
  import { N300A, N600, N1000 } from '../../utils/colors';
3
4
 
@@ -9,8 +10,7 @@ import { N300A, N600, N1000 } from '../../utils/colors';
9
10
  const borderColorArrayPalette = [[N300A, 'Subtle gray'], [N600, 'Gray'], [N1000, 'Bold gray']];
10
11
  export const borderColorPalette = new Map();
11
12
  borderColorArrayPalette.forEach(([color, label]) => borderColorPalette.set(color.toLowerCase(), label));
12
- export const border = {
13
- inclusive: false,
13
+ export const border = borderFactory({
14
14
  parseDOM: [{
15
15
  tag: '[data-mark-type="border"]',
16
16
  getAttrs: domNode => {
@@ -24,10 +24,6 @@ export const border = {
24
24
  };
25
25
  }
26
26
  }],
27
- attrs: {
28
- color: {},
29
- size: {}
30
- },
31
27
  toDOM(mark, isInline) {
32
28
  const wrapperStyle = isInline ? 'span' : 'div';
33
29
 
@@ -42,4 +38,4 @@ export const border = {
42
38
  style: `--custom-palette-color: ${paletteColorValue}`
43
39
  }];
44
40
  }
45
- };
41
+ });
@@ -1,12 +1,11 @@
1
+ import { breakout as breakoutFactory } from '../../next-schema/generated/markTypes';
1
2
  const allowedTypes = ['wide', 'full-width'];
2
3
 
3
4
  /**
4
5
  * @name breakout_mark
5
6
  */
6
7
 
7
- export const breakout = {
8
- spanning: false,
9
- inclusive: false,
8
+ export const breakout = breakoutFactory({
10
9
  parseDOM: [{
11
10
  tag: 'div.fabric-editor-breakout-mark',
12
11
  getAttrs(dom) {
@@ -16,15 +15,10 @@ export const breakout = {
16
15
  };
17
16
  }
18
17
  }],
19
- attrs: {
20
- mode: {
21
- default: 'wide'
22
- }
23
- },
24
18
  toDOM(mark) {
25
19
  return ['div', {
26
20
  class: 'fabric-editor-breakout-mark',
27
21
  'data-mode': mark.attrs.mode
28
22
  }, 0];
29
23
  }
30
- };
24
+ });
@@ -1,12 +1,10 @@
1
- import { COLOR, FONT_STYLE, LINK, SEARCH_QUERY } from '../groups';
1
+ import { code as codeFactory } from '../../next-schema/generated/markTypes';
2
2
 
3
3
  /**
4
4
  * @name code_mark
5
5
  */
6
6
 
7
- export const code = {
8
- excludes: `${FONT_STYLE} ${LINK} ${SEARCH_QUERY} ${COLOR}`,
9
- inclusive: true,
7
+ export const code = codeFactory({
10
8
  parseDOM: [{
11
9
  tag: 'span.code',
12
10
  preserveWhitespace: true
@@ -36,4 +34,4 @@ export const code = {
36
34
  spellcheck: 'false'
37
35
  }];
38
36
  }
39
- };
37
+ });