@tiptap/core 2.0.0-beta.18 → 2.0.0-beta.182

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 (333) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +2 -2
  3. package/dist/packages/core/src/CommandManager.d.ts +13 -6
  4. package/dist/packages/core/src/Editor.d.ts +24 -19
  5. package/dist/packages/core/src/EventEmitter.d.ts +8 -4
  6. package/dist/packages/core/src/Extension.d.ts +99 -27
  7. package/dist/packages/core/src/ExtensionManager.d.ts +7 -13
  8. package/dist/packages/core/src/InputRule.d.ts +42 -0
  9. package/dist/packages/core/src/Mark.d.ts +131 -31
  10. package/dist/packages/core/src/Node.d.ts +157 -33
  11. package/dist/packages/core/src/NodeView.d.ts +8 -12
  12. package/dist/packages/core/src/PasteRule.d.ts +42 -0
  13. package/dist/packages/core/src/Tracker.d.ts +11 -0
  14. package/dist/packages/core/src/commands/blur.d.ts +3 -3
  15. package/dist/packages/core/src/commands/clearContent.d.ts +3 -3
  16. package/dist/packages/core/src/commands/clearNodes.d.ts +3 -3
  17. package/dist/packages/core/src/commands/command.d.ts +2 -2
  18. package/dist/packages/core/src/commands/createParagraphNear.d.ts +3 -3
  19. package/dist/packages/core/src/commands/deleteNode.d.ts +13 -0
  20. package/dist/packages/core/src/commands/deleteRange.d.ts +3 -3
  21. package/dist/packages/core/src/commands/deleteSelection.d.ts +3 -3
  22. package/dist/packages/core/src/commands/enter.d.ts +3 -3
  23. package/dist/packages/core/src/commands/exitCode.d.ts +3 -3
  24. package/dist/packages/core/src/commands/extendMarkRange.d.ts +3 -3
  25. package/dist/packages/core/src/commands/first.d.ts +3 -3
  26. package/dist/packages/core/src/commands/focus.d.ts +5 -3
  27. package/dist/packages/core/src/commands/forEach.d.ts +14 -0
  28. package/dist/packages/core/src/commands/index.d.ts +50 -0
  29. package/dist/packages/core/src/commands/insertContent.d.ts +7 -3
  30. package/dist/packages/core/src/commands/insertContentAt.d.ts +16 -0
  31. package/dist/packages/core/src/commands/joinBackward.d.ts +3 -3
  32. package/dist/packages/core/src/commands/joinForward.d.ts +3 -3
  33. package/dist/packages/core/src/commands/keyboardShortcut.d.ts +3 -3
  34. package/dist/packages/core/src/commands/lift.d.ts +3 -3
  35. package/dist/packages/core/src/commands/liftEmptyBlock.d.ts +3 -3
  36. package/dist/packages/core/src/commands/liftListItem.d.ts +3 -3
  37. package/dist/packages/core/src/commands/newlineInCode.d.ts +3 -3
  38. package/dist/packages/core/src/commands/resetAttributes.d.ts +13 -0
  39. package/dist/packages/core/src/commands/scrollIntoView.d.ts +3 -3
  40. package/dist/packages/core/src/commands/selectAll.d.ts +3 -3
  41. package/dist/packages/core/src/commands/selectNodeBackward.d.ts +3 -3
  42. package/dist/packages/core/src/commands/selectNodeForward.d.ts +3 -3
  43. package/dist/packages/core/src/commands/selectParentNode.d.ts +3 -3
  44. package/dist/packages/core/src/commands/selectTextblockEnd.d.ts +12 -0
  45. package/dist/packages/core/src/commands/selectTextblockStart.d.ts +12 -0
  46. package/dist/packages/core/src/commands/setContent.d.ts +4 -3
  47. package/dist/packages/core/src/commands/setMark.d.ts +3 -3
  48. package/dist/packages/core/src/commands/setMeta.d.ts +12 -0
  49. package/dist/packages/core/src/commands/setNode.d.ts +3 -3
  50. package/dist/packages/core/src/commands/setNodeSelection.d.ts +12 -0
  51. package/dist/packages/core/src/commands/setTextSelection.d.ts +12 -0
  52. package/dist/packages/core/src/commands/sinkListItem.d.ts +3 -3
  53. package/dist/packages/core/src/commands/splitBlock.d.ts +3 -3
  54. package/dist/packages/core/src/commands/splitListItem.d.ts +3 -3
  55. package/dist/packages/core/src/commands/toggleList.d.ts +3 -3
  56. package/dist/packages/core/src/commands/toggleMark.d.ts +8 -3
  57. package/dist/packages/core/src/commands/toggleNode.d.ts +3 -3
  58. package/dist/packages/core/src/commands/toggleWrap.d.ts +3 -3
  59. package/dist/packages/core/src/commands/undoInputRule.d.ts +3 -3
  60. package/dist/packages/core/src/commands/unsetAllMarks.d.ts +3 -3
  61. package/dist/packages/core/src/commands/unsetMark.d.ts +8 -3
  62. package/dist/packages/core/src/commands/updateAttributes.d.ts +13 -0
  63. package/dist/packages/core/src/commands/wrapIn.d.ts +3 -3
  64. package/dist/packages/core/src/commands/wrapInList.d.ts +3 -3
  65. package/dist/packages/core/src/extensions/clipboardTextSerializer.d.ts +1 -1
  66. package/dist/packages/core/src/extensions/commands.d.ts +2 -95
  67. package/dist/packages/core/src/extensions/editable.d.ts +1 -1
  68. package/dist/packages/core/src/extensions/focusEvents.d.ts +1 -1
  69. package/dist/packages/core/src/extensions/index.d.ts +1 -0
  70. package/dist/packages/core/src/extensions/keymap.d.ts +1 -1
  71. package/dist/packages/core/src/extensions/tabindex.d.ts +2 -0
  72. package/dist/packages/core/src/helpers/combineTransactionSteps.d.ts +7 -0
  73. package/dist/packages/core/src/helpers/createChainableState.d.ts +5 -0
  74. package/dist/packages/core/src/helpers/createDocument.d.ts +3 -4
  75. package/dist/packages/core/src/helpers/createNodeFromContent.d.ts +4 -5
  76. package/dist/packages/core/src/helpers/defaultBlockAt.d.ts +2 -0
  77. package/dist/packages/core/src/helpers/findChildren.d.ts +3 -0
  78. package/dist/packages/core/src/helpers/findChildrenInRange.d.ts +6 -0
  79. package/dist/packages/core/src/helpers/findParentNode.d.ts +2 -3
  80. package/dist/packages/core/src/helpers/findParentNodeClosestToPos.d.ts +2 -2
  81. package/dist/packages/core/src/helpers/generateHTML.d.ts +2 -2
  82. package/dist/packages/core/src/helpers/generateJSON.d.ts +2 -0
  83. package/dist/packages/core/src/helpers/generateText.d.ts +5 -0
  84. package/dist/packages/core/src/helpers/getAttributes.d.ts +3 -0
  85. package/dist/packages/core/src/helpers/getAttributesFromExtensions.d.ts +2 -2
  86. package/dist/packages/core/src/helpers/getChangedRanges.d.ts +11 -0
  87. package/dist/packages/core/src/helpers/getDebugJSON.d.ts +8 -0
  88. package/dist/packages/core/src/helpers/getExtensionField.d.ts +2 -0
  89. package/dist/packages/core/src/helpers/getHTMLFromFragment.d.ts +2 -2
  90. package/dist/packages/core/src/helpers/getMarkAttributes.d.ts +2 -3
  91. package/dist/packages/core/src/helpers/getMarkRange.d.ts +1 -1
  92. package/dist/packages/core/src/helpers/getMarkType.d.ts +1 -1
  93. package/dist/packages/core/src/helpers/getMarksBetween.d.ts +2 -2
  94. package/dist/packages/core/src/helpers/getNodeAttributes.d.ts +2 -3
  95. package/dist/packages/core/src/helpers/getNodeType.d.ts +1 -1
  96. package/dist/packages/core/src/helpers/getRenderedAttributes.d.ts +3 -3
  97. package/dist/packages/core/src/helpers/getSchema.d.ts +1 -1
  98. package/dist/packages/core/src/helpers/getSchemaByResolvedExtensions.d.ts +3 -0
  99. package/dist/packages/core/src/helpers/getSchemaTypeByName.d.ts +1 -1
  100. package/dist/packages/core/src/helpers/getSchemaTypeNameByName.d.ts +1 -1
  101. package/dist/packages/core/src/helpers/getSplittedAttributes.d.ts +2 -2
  102. package/dist/packages/core/src/helpers/getText.d.ts +6 -0
  103. package/dist/packages/core/src/helpers/getTextBetween.d.ts +6 -0
  104. package/dist/packages/core/src/helpers/getTextContentFromNodes.d.ts +2 -0
  105. package/dist/packages/core/src/helpers/getTextSerializersFromSchema.d.ts +3 -0
  106. package/dist/packages/core/src/helpers/index.d.ts +33 -0
  107. package/dist/packages/core/src/helpers/injectExtensionAttributesToParseRule.d.ts +1 -1
  108. package/dist/packages/core/src/helpers/isActive.d.ts +1 -2
  109. package/dist/packages/core/src/helpers/isExtensionRulesEnabled.d.ts +2 -0
  110. package/dist/packages/core/src/helpers/isList.d.ts +1 -1
  111. package/dist/packages/core/src/helpers/isMarkActive.d.ts +2 -3
  112. package/dist/packages/core/src/helpers/isNodeActive.d.ts +2 -3
  113. package/dist/packages/core/src/helpers/isNodeEmpty.d.ts +1 -1
  114. package/dist/packages/core/src/helpers/isNodeSelection.d.ts +1 -1
  115. package/dist/packages/core/src/helpers/isTextSelection.d.ts +1 -1
  116. package/dist/packages/core/src/helpers/posToDOMRect.d.ts +2 -0
  117. package/dist/packages/core/src/helpers/resolveFocusPosition.d.ts +4 -0
  118. package/dist/packages/core/src/helpers/selectionToInsertionEnd.d.ts +1 -1
  119. package/dist/packages/core/src/helpers/splitExtensions.d.ts +6 -6
  120. package/dist/packages/core/src/index.d.ts +14 -21
  121. package/dist/packages/core/src/inputRules/index.d.ts +5 -0
  122. package/dist/packages/core/src/inputRules/markInputRule.d.ts +11 -2
  123. package/dist/packages/core/src/inputRules/nodeInputRule.d.ts +11 -2
  124. package/dist/packages/core/src/inputRules/textInputRule.d.ts +9 -0
  125. package/dist/packages/core/src/inputRules/textblockTypeInputRule.d.ts +14 -0
  126. package/dist/packages/core/src/inputRules/wrappingInputRule.d.ts +23 -0
  127. package/dist/packages/core/src/pasteRules/index.d.ts +3 -0
  128. package/dist/packages/core/src/pasteRules/markPasteRule.d.ts +11 -2
  129. package/dist/packages/core/src/pasteRules/nodePasteRule.d.ts +12 -0
  130. package/dist/packages/core/src/pasteRules/textPasteRule.d.ts +9 -0
  131. package/dist/packages/core/src/style.d.ts +1 -2
  132. package/dist/packages/core/src/types.d.ts +112 -56
  133. package/dist/packages/core/src/utilities/callOrReturn.d.ts +2 -1
  134. package/dist/packages/core/src/utilities/createStyleTag.d.ts +1 -1
  135. package/dist/packages/core/src/utilities/deleteProps.d.ts +1 -2
  136. package/dist/packages/core/src/utilities/elementFromString.d.ts +1 -1
  137. package/dist/packages/core/src/utilities/escapeForRegEx.d.ts +1 -0
  138. package/dist/packages/core/src/utilities/findDuplicates.d.ts +1 -0
  139. package/dist/packages/core/src/utilities/fromString.d.ts +1 -1
  140. package/dist/packages/core/src/utilities/index.d.ts +3 -0
  141. package/dist/packages/core/src/utilities/isClass.d.ts +1 -1
  142. package/dist/packages/core/src/utilities/isEmptyObject.d.ts +1 -1
  143. package/dist/packages/core/src/utilities/isFunction.d.ts +1 -0
  144. package/dist/packages/core/src/utilities/isMacOS.d.ts +1 -0
  145. package/dist/packages/core/src/utilities/isNumber.d.ts +1 -0
  146. package/dist/packages/core/src/utilities/isObject.d.ts +1 -1
  147. package/dist/packages/core/src/utilities/isPlainObject.d.ts +1 -1
  148. package/dist/packages/core/src/utilities/isRegExp.d.ts +1 -0
  149. package/dist/packages/core/src/utilities/isiOS.d.ts +1 -0
  150. package/dist/packages/core/src/utilities/mergeAttributes.d.ts +1 -2
  151. package/dist/packages/core/src/utilities/mergeDeep.d.ts +1 -2
  152. package/dist/packages/core/src/utilities/minMax.d.ts +1 -1
  153. package/dist/packages/core/src/utilities/objectIncludes.d.ts +3 -2
  154. package/dist/packages/core/src/utilities/removeDuplicates.d.ts +8 -0
  155. package/dist/tiptap-core.cjs.js +2696 -1374
  156. package/dist/tiptap-core.cjs.js.map +1 -1
  157. package/dist/tiptap-core.esm.js +2630 -1342
  158. package/dist/tiptap-core.esm.js.map +1 -1
  159. package/dist/tiptap-core.umd.js +2648 -1325
  160. package/dist/tiptap-core.umd.js.map +1 -1
  161. package/package.json +17 -20
  162. package/src/CommandManager.ts +63 -64
  163. package/src/Editor.ts +115 -78
  164. package/src/EventEmitter.ts +14 -4
  165. package/src/Extension.ts +193 -43
  166. package/src/ExtensionManager.ts +232 -83
  167. package/src/InputRule.ts +265 -0
  168. package/src/Mark.ts +239 -49
  169. package/src/Node.ts +279 -57
  170. package/src/NodeView.ts +115 -47
  171. package/src/PasteRule.ts +247 -0
  172. package/src/Tracker.ts +42 -0
  173. package/src/commands/blur.ts +12 -6
  174. package/src/commands/clearContent.ts +3 -3
  175. package/src/commands/clearNodes.ts +30 -18
  176. package/src/commands/command.ts +2 -2
  177. package/src/commands/createParagraphNear.ts +4 -3
  178. package/src/commands/deleteNode.ts +37 -0
  179. package/src/commands/deleteRange.ts +3 -3
  180. package/src/commands/deleteSelection.ts +4 -3
  181. package/src/commands/enter.ts +3 -3
  182. package/src/commands/exitCode.ts +4 -3
  183. package/src/commands/extendMarkRange.ts +12 -11
  184. package/src/commands/first.ts +3 -3
  185. package/src/commands/focus.ts +47 -44
  186. package/src/commands/forEach.ts +24 -0
  187. package/src/commands/index.ts +50 -0
  188. package/src/commands/insertContent.ts +13 -24
  189. package/src/commands/insertContentAt.ts +108 -0
  190. package/src/commands/joinBackward.ts +4 -3
  191. package/src/commands/joinForward.ts +4 -3
  192. package/src/commands/keyboardShortcut.ts +6 -6
  193. package/src/commands/lift.ts +6 -5
  194. package/src/commands/liftEmptyBlock.ts +4 -3
  195. package/src/commands/liftListItem.ts +6 -5
  196. package/src/commands/newlineInCode.ts +4 -3
  197. package/src/commands/resetAttributes.ts +62 -0
  198. package/src/commands/scrollIntoView.ts +3 -3
  199. package/src/commands/selectAll.ts +8 -6
  200. package/src/commands/selectNodeBackward.ts +4 -3
  201. package/src/commands/selectNodeForward.ts +4 -3
  202. package/src/commands/selectParentNode.ts +4 -3
  203. package/src/commands/selectTextblockEnd.ts +20 -0
  204. package/src/commands/selectTextblockStart.ts +20 -0
  205. package/src/commands/setContent.ts +9 -15
  206. package/src/commands/setMark.ts +36 -12
  207. package/src/commands/setMeta.ts +18 -0
  208. package/src/commands/setNode.ts +29 -7
  209. package/src/commands/setNodeSelection.ts +29 -0
  210. package/src/commands/setTextSelection.ts +33 -0
  211. package/src/commands/sinkListItem.ts +6 -5
  212. package/src/commands/splitBlock.ts +16 -10
  213. package/src/commands/splitListItem.ts +45 -18
  214. package/src/commands/toggleList.ts +83 -18
  215. package/src/commands/toggleMark.ts +18 -7
  216. package/src/commands/toggleNode.ts +6 -5
  217. package/src/commands/toggleWrap.ts +9 -9
  218. package/src/commands/undoInputRule.ts +34 -5
  219. package/src/commands/unsetAllMarks.ts +7 -11
  220. package/src/commands/unsetMark.ts +35 -22
  221. package/src/commands/updateAttributes.ts +73 -0
  222. package/src/commands/wrapIn.ts +5 -10
  223. package/src/commands/wrapInList.ts +6 -5
  224. package/src/extensions/clipboardTextSerializer.ts +14 -35
  225. package/src/extensions/commands.ts +3 -141
  226. package/src/extensions/editable.ts +1 -0
  227. package/src/extensions/focusEvents.ts +3 -5
  228. package/src/extensions/index.ts +1 -0
  229. package/src/extensions/keymap.ts +110 -13
  230. package/src/extensions/tabindex.ts +18 -0
  231. package/src/helpers/combineTransactionSteps.ts +18 -0
  232. package/src/helpers/createChainableState.ts +38 -0
  233. package/src/helpers/createDocument.ts +5 -6
  234. package/src/helpers/createNodeFromContent.ts +17 -19
  235. package/src/helpers/defaultBlockAt.ts +13 -0
  236. package/src/helpers/findChildren.ts +18 -0
  237. package/src/helpers/findChildrenInRange.ts +32 -0
  238. package/src/helpers/findParentNode.ts +3 -2
  239. package/src/helpers/findParentNodeClosestToPos.ts +3 -2
  240. package/src/helpers/generateHTML.ts +6 -5
  241. package/src/helpers/generateJSON.ts +14 -0
  242. package/src/helpers/generateText.ts +30 -0
  243. package/src/helpers/getAttributes.ts +28 -0
  244. package/src/helpers/getAttributesFromExtensions.ts +42 -14
  245. package/src/helpers/getChangedRanges.ts +83 -0
  246. package/src/helpers/getDebugJSON.ts +54 -0
  247. package/src/helpers/getExtensionField.ts +25 -0
  248. package/src/helpers/getHTMLFromFragment.ts +6 -5
  249. package/src/helpers/getMarkAttributes.ts +14 -10
  250. package/src/helpers/getMarkRange.ts +41 -8
  251. package/src/helpers/getMarkType.ts +5 -1
  252. package/src/helpers/getMarksBetween.ts +32 -10
  253. package/src/helpers/getNodeAttributes.ts +9 -9
  254. package/src/helpers/getNodeType.ts +5 -1
  255. package/src/helpers/getRenderedAttributes.ts +6 -7
  256. package/src/helpers/getSchema.ts +7 -133
  257. package/src/helpers/getSchemaByResolvedExtensions.ts +148 -0
  258. package/src/helpers/getSchemaTypeByName.ts +2 -10
  259. package/src/helpers/getSchemaTypeNameByName.ts +1 -1
  260. package/src/helpers/getSplittedAttributes.ts +4 -4
  261. package/src/helpers/getText.ts +19 -0
  262. package/src/helpers/getTextBetween.ts +49 -0
  263. package/src/helpers/getTextContentFromNodes.ts +17 -0
  264. package/src/helpers/getTextSerializersFromSchema.ts +10 -0
  265. package/src/helpers/index.ts +33 -0
  266. package/src/helpers/injectExtensionAttributesToParseRule.ts +17 -19
  267. package/src/helpers/isActive.ts +5 -5
  268. package/src/helpers/isExtensionRulesEnabled.ts +15 -0
  269. package/src/helpers/isList.ts +14 -7
  270. package/src/helpers/isMarkActive.ts +45 -20
  271. package/src/helpers/isNodeActive.ts +28 -35
  272. package/src/helpers/isNodeEmpty.ts +1 -1
  273. package/src/helpers/isNodeSelection.ts +3 -2
  274. package/src/helpers/isTextSelection.ts +3 -2
  275. package/src/helpers/posToDOMRect.ts +35 -0
  276. package/src/helpers/resolveFocusPosition.ts +43 -0
  277. package/src/helpers/selectionToInsertionEnd.ts +2 -2
  278. package/src/helpers/splitExtensions.ts +3 -3
  279. package/src/index.ts +15 -24
  280. package/src/inputRules/index.ts +5 -0
  281. package/src/inputRules/markInputRule.ts +59 -39
  282. package/src/inputRules/nodeInputRule.ts +45 -11
  283. package/src/inputRules/textInputRule.ts +35 -0
  284. package/src/inputRules/textblockTypeInputRule.ts +38 -0
  285. package/src/inputRules/wrappingInputRule.ts +60 -0
  286. package/src/pasteRules/index.ts +3 -0
  287. package/src/pasteRules/markPasteRule.ts +62 -53
  288. package/src/pasteRules/nodePasteRule.ts +39 -0
  289. package/src/pasteRules/textPasteRule.ts +35 -0
  290. package/src/style.ts +16 -3
  291. package/src/types.ts +129 -43
  292. package/src/utilities/callOrReturn.ts +6 -3
  293. package/src/utilities/createStyleTag.ts +12 -1
  294. package/src/utilities/deleteProps.ts +2 -4
  295. package/src/utilities/elementFromString.ts +4 -5
  296. package/src/utilities/escapeForRegEx.ts +4 -0
  297. package/src/utilities/findDuplicates.ts +5 -0
  298. package/src/utilities/fromString.ts +2 -2
  299. package/src/utilities/index.ts +3 -0
  300. package/src/utilities/isClass.ts +2 -2
  301. package/src/utilities/isEmptyObject.ts +2 -2
  302. package/src/utilities/isFunction.ts +3 -0
  303. package/src/utilities/isMacOS.ts +5 -0
  304. package/src/utilities/isNumber.ts +3 -0
  305. package/src/utilities/isObject.ts +6 -6
  306. package/src/utilities/isPlainObject.ts +8 -5
  307. package/src/utilities/isRegExp.ts +3 -0
  308. package/src/utilities/isString.ts +3 -0
  309. package/src/utilities/isiOS.ts +12 -0
  310. package/src/utilities/mergeAttributes.ts +2 -3
  311. package/src/utilities/mergeDeep.ts +2 -3
  312. package/src/utilities/minMax.ts +1 -1
  313. package/src/utilities/objectIncludes.ts +17 -5
  314. package/src/utilities/removeDuplicates.ts +15 -0
  315. package/CHANGELOG.md +0 -335
  316. package/dist/packages/core/src/commands/insertHTML.d.ts +0 -12
  317. package/dist/packages/core/src/commands/insertNode.d.ts +0 -13
  318. package/dist/packages/core/src/commands/insertText.d.ts +0 -12
  319. package/dist/packages/core/src/commands/replace.d.ts +0 -13
  320. package/dist/packages/core/src/commands/replaceRange.d.ts +0 -13
  321. package/dist/packages/core/src/commands/resetNodeAttributes.d.ts +0 -13
  322. package/dist/packages/core/src/commands/updateNodeAttributes.d.ts +0 -13
  323. package/dist/packages/core/src/utilities/removeElement.d.ts +0 -1
  324. package/dist/tiptap-core.bundle.umd.min.js +0 -17
  325. package/dist/tiptap-core.bundle.umd.min.js.map +0 -1
  326. package/src/commands/insertHTML.ts +0 -30
  327. package/src/commands/insertNode.ts +0 -33
  328. package/src/commands/insertText.ts +0 -22
  329. package/src/commands/replace.ts +0 -20
  330. package/src/commands/replaceRange.ts +0 -36
  331. package/src/commands/resetNodeAttributes.ts +0 -31
  332. package/src/commands/updateNodeAttributes.ts +0 -33
  333. package/src/utilities/removeElement.ts +0 -5
@@ -0,0 +1,3 @@
1
+ export * from './callOrReturn'
2
+ export * from './escapeForRegEx'
3
+ export * from './mergeAttributes'
@@ -1,5 +1,5 @@
1
- export default function isClass(item: any): boolean {
2
- if (item.constructor?.toString().substring(0, 5) !== 'class') {
1
+ export function isClass(value: any): boolean {
2
+ if (value.constructor?.toString().substring(0, 5) !== 'class') {
3
3
  return false
4
4
  }
5
5
 
@@ -1,3 +1,3 @@
1
- export default function isEmptyObject(object = {}): boolean {
2
- return Object.keys(object).length === 0 && object.constructor === Object
1
+ export function isEmptyObject(value = {}): boolean {
2
+ return Object.keys(value).length === 0 && value.constructor === Object
3
3
  }
@@ -0,0 +1,3 @@
1
+ export function isFunction(value: any): value is Function {
2
+ return typeof value === 'function'
3
+ }
@@ -0,0 +1,5 @@
1
+ export function isMacOS(): boolean {
2
+ return typeof navigator !== 'undefined'
3
+ ? /Mac/.test(navigator.platform)
4
+ : false
5
+ }
@@ -0,0 +1,3 @@
1
+ export function isNumber(value: any): value is number {
2
+ return typeof value === 'number'
3
+ }
@@ -1,10 +1,10 @@
1
- import isClass from './isClass'
1
+ import { isClass } from './isClass'
2
2
 
3
- export default function isObject(item: any): boolean {
3
+ export function isObject(value: any): boolean {
4
4
  return (
5
- item
6
- && typeof item === 'object'
7
- && !Array.isArray(item)
8
- && !isClass(item)
5
+ value
6
+ && typeof value === 'object'
7
+ && !Array.isArray(value)
8
+ && !isClass(value)
9
9
  )
10
10
  }
@@ -1,10 +1,13 @@
1
1
  // see: https://github.com/mesqueeb/is-what/blob/88d6e4ca92fb2baab6003c54e02eedf4e729e5ab/src/index.ts
2
2
 
3
- function getType(payload: any): string {
4
- return Object.prototype.toString.call(payload).slice(8, -1)
3
+ function getType(value: any): string {
4
+ return Object.prototype.toString.call(value).slice(8, -1)
5
5
  }
6
6
 
7
- export default function isPlainObject(payload: any): payload is Record<string, any> {
8
- if (getType(payload) !== 'Object') return false
9
- return payload.constructor === Object && Object.getPrototypeOf(payload) === Object.prototype
7
+ export function isPlainObject(value: any): value is Record<string, any> {
8
+ if (getType(value) !== 'Object') {
9
+ return false
10
+ }
11
+
12
+ return value.constructor === Object && Object.getPrototypeOf(value) === Object.prototype
10
13
  }
@@ -0,0 +1,3 @@
1
+ export function isRegExp(value: any): value is RegExp {
2
+ return Object.prototype.toString.call(value) === '[object RegExp]'
3
+ }
@@ -0,0 +1,3 @@
1
+ export function isString(value: any): value is string {
2
+ return typeof value === 'string'
3
+ }
@@ -0,0 +1,12 @@
1
+ export function isiOS(): boolean {
2
+ return [
3
+ 'iPad Simulator',
4
+ 'iPhone Simulator',
5
+ 'iPod Simulator',
6
+ 'iPad',
7
+ 'iPhone',
8
+ 'iPod',
9
+ ].includes(navigator.platform)
10
+ // iPad on iOS 13 detection
11
+ || (navigator.userAgent.includes('Mac') && 'ontouchend' in document)
12
+ }
@@ -1,6 +1,4 @@
1
- import { AnyObject } from '../types'
2
-
3
- export default function mergeAttributes(...objects: AnyObject[]): AnyObject {
1
+ export function mergeAttributes(...objects: Record<string, any>[]): Record<string, any> {
4
2
  return objects
5
3
  .filter(item => !!item)
6
4
  .reduce((items, item) => {
@@ -11,6 +9,7 @@ export default function mergeAttributes(...objects: AnyObject[]): AnyObject {
11
9
 
12
10
  if (!exists) {
13
11
  mergedAttributes[key] = value
12
+
14
13
  return
15
14
  }
16
15
 
@@ -1,7 +1,6 @@
1
- import { AnyObject } from '../types'
2
- import isPlainObject from './isPlainObject'
1
+ import { isPlainObject } from './isPlainObject'
3
2
 
4
- export default function mergeDeep(target: AnyObject, source: AnyObject): AnyObject {
3
+ export function mergeDeep(target: Record<string, any>, source: Record<string, any>): Record<string, any> {
5
4
  const output = { ...target }
6
5
 
7
6
  if (isPlainObject(target) && isPlainObject(source)) {
@@ -1,3 +1,3 @@
1
- export default function minMax(value = 0, min = 0, max = 0): number {
1
+ export function minMax(value = 0, min = 0, max = 0): number {
2
2
  return Math.min(Math.max(value, min), max)
3
3
  }
@@ -1,18 +1,30 @@
1
- import { AnyObject } from '../types'
1
+ import { isRegExp } from './isRegExp'
2
2
 
3
3
  /**
4
4
  * Check if object1 includes object2
5
5
  * @param object1 Object
6
6
  * @param object2 Object
7
7
  */
8
- export default function objectIncludes(object1: AnyObject, object2: AnyObject): boolean {
8
+ export function objectIncludes(
9
+ object1: Record<string, any>,
10
+ object2: Record<string, any>,
11
+ options: { strict: boolean } = { strict: true },
12
+ ): boolean {
9
13
  const keys = Object.keys(object2)
10
14
 
11
15
  if (!keys.length) {
12
16
  return true
13
17
  }
14
18
 
15
- return !!keys
16
- .filter(key => object2[key] === object1[key])
17
- .length
19
+ return keys.every(key => {
20
+ if (options.strict) {
21
+ return object2[key] === object1[key]
22
+ }
23
+
24
+ if (isRegExp(object2[key])) {
25
+ return object2[key].test(object1[key])
26
+ }
27
+
28
+ return object2[key] === object1[key]
29
+ })
18
30
  }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Removes duplicated values within an array.
3
+ * Supports numbers, strings and objects.
4
+ */
5
+ export function removeDuplicates<T>(array: T[], by = JSON.stringify): T[] {
6
+ const seen: Record<any, any> = {}
7
+
8
+ return array.filter(item => {
9
+ const key = by(item)
10
+
11
+ return Object.prototype.hasOwnProperty.call(seen, key)
12
+ ? false
13
+ : (seen[key] = true)
14
+ })
15
+ }
package/CHANGELOG.md DELETED
@@ -1,335 +0,0 @@
1
- # Change Log
2
-
3
- All notable changes to this project will be documented in this file.
4
- See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
-
6
- # [2.0.0-beta.18](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.17...@tiptap/core@2.0.0-beta.18) (2021-04-07)
7
-
8
-
9
- ### Features
10
-
11
- * add priority option to extensions ([bb1ae65](https://github.com/ueberdosis/tiptap-next/commit/bb1ae659a463e97a7ada15af711347b5c004897a))
12
-
13
-
14
-
15
-
16
-
17
- # [2.0.0-beta.17](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.16...@tiptap/core@2.0.0-beta.17) (2021-04-07)
18
-
19
-
20
- ### Bug Fixes
21
-
22
- * remove debug log ([beb96c5](https://github.com/ueberdosis/tiptap-next/commit/beb96c5cbfdb81869763e23f82f5ab270c30f0ea))
23
-
24
-
25
-
26
-
27
-
28
- # [2.0.0-beta.16](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.15...@tiptap/core@2.0.0-beta.16) (2021-04-07)
29
-
30
-
31
- ### Features
32
-
33
- * add insertContent() command, deprecate insertText(), insertHTML() and insertNode() ([b8d9b7d](https://github.com/ueberdosis/tiptap-next/commit/b8d9b7d4c70b38fb9eec3c079be8243d30166e5e))
34
-
35
-
36
-
37
-
38
-
39
- # [2.0.0-beta.15](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.14...@tiptap/core@2.0.0-beta.15) (2021-04-06)
40
-
41
- **Note:** Version bump only for package @tiptap/core
42
-
43
-
44
-
45
-
46
-
47
- # [2.0.0-beta.14](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.13...@tiptap/core@2.0.0-beta.14) (2021-04-04)
48
-
49
- **Note:** Version bump only for package @tiptap/core
50
-
51
-
52
-
53
-
54
-
55
- # [2.0.0-beta.13](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.12...@tiptap/core@2.0.0-beta.13) (2021-04-02)
56
-
57
- **Note:** Version bump only for package @tiptap/core
58
-
59
-
60
-
61
-
62
-
63
- # [2.0.0-beta.12](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.11...@tiptap/core@2.0.0-beta.12) (2021-04-01)
64
-
65
- **Note:** Version bump only for package @tiptap/core
66
-
67
-
68
-
69
-
70
-
71
- # [2.0.0-beta.11](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.10...@tiptap/core@2.0.0-beta.11) (2021-04-01)
72
-
73
- **Note:** Version bump only for package @tiptap/core
74
-
75
-
76
-
77
-
78
-
79
- # [2.0.0-beta.10](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.9...@tiptap/core@2.0.0-beta.10) (2021-03-31)
80
-
81
- **Note:** Version bump only for package @tiptap/core
82
-
83
-
84
-
85
-
86
-
87
- # [2.0.0-beta.9](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.8...@tiptap/core@2.0.0-beta.9) (2021-03-28)
88
-
89
- **Note:** Version bump only for package @tiptap/core
90
-
91
-
92
-
93
-
94
-
95
- # [2.0.0-beta.8](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.7...@tiptap/core@2.0.0-beta.8) (2021-03-28)
96
-
97
- **Note:** Version bump only for package @tiptap/core
98
-
99
-
100
-
101
-
102
-
103
- # [2.0.0-beta.7](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.6...@tiptap/core@2.0.0-beta.7) (2021-03-28)
104
-
105
- **Note:** Version bump only for package @tiptap/core
106
-
107
-
108
-
109
-
110
-
111
- # [2.0.0-beta.6](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.5...@tiptap/core@2.0.0-beta.6) (2021-03-24)
112
-
113
- **Note:** Version bump only for package @tiptap/core
114
-
115
-
116
-
117
-
118
-
119
- # [2.0.0-beta.5](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.4...@tiptap/core@2.0.0-beta.5) (2021-03-18)
120
-
121
- **Note:** Version bump only for package @tiptap/core
122
-
123
-
124
-
125
-
126
-
127
- # [2.0.0-beta.4](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.3...@tiptap/core@2.0.0-beta.4) (2021-03-18)
128
-
129
- **Note:** Version bump only for package @tiptap/core
130
-
131
-
132
-
133
-
134
-
135
- # [2.0.0-beta.3](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.2...@tiptap/core@2.0.0-beta.3) (2021-03-16)
136
-
137
- **Note:** Version bump only for package @tiptap/core
138
-
139
-
140
-
141
-
142
-
143
- # [2.0.0-beta.2](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.1...@tiptap/core@2.0.0-beta.2) (2021-03-09)
144
-
145
- **Note:** Version bump only for package @tiptap/core
146
-
147
-
148
-
149
-
150
-
151
- # [2.0.0-beta.1](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.22...@tiptap/core@2.0.0-beta.1) (2021-03-05)
152
-
153
- **Note:** Version bump only for package @tiptap/core
154
-
155
-
156
-
157
-
158
-
159
- # [2.0.0-alpha.22](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.21...@tiptap/core@2.0.0-alpha.22) (2021-02-28)
160
-
161
- **Note:** Version bump only for package @tiptap/core
162
-
163
-
164
-
165
-
166
-
167
- # [2.0.0-alpha.21](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.20...@tiptap/core@2.0.0-alpha.21) (2021-02-26)
168
-
169
- **Note:** Version bump only for package @tiptap/core
170
-
171
-
172
-
173
-
174
-
175
- # [2.0.0-alpha.20](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.19...@tiptap/core@2.0.0-alpha.20) (2021-02-26)
176
-
177
- **Note:** Version bump only for package @tiptap/core
178
-
179
-
180
-
181
-
182
-
183
- # [2.0.0-alpha.19](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.18...@tiptap/core@2.0.0-alpha.19) (2021-02-18)
184
-
185
- **Note:** Version bump only for package @tiptap/core
186
-
187
-
188
-
189
-
190
-
191
- # [2.0.0-alpha.18](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.17...@tiptap/core@2.0.0-alpha.18) (2021-02-16)
192
-
193
- **Note:** Version bump only for package @tiptap/core
194
-
195
-
196
-
197
-
198
-
199
- # [2.0.0-alpha.17](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.16...@tiptap/core@2.0.0-alpha.17) (2021-02-16)
200
-
201
- **Note:** Version bump only for package @tiptap/core
202
-
203
-
204
-
205
-
206
-
207
- # [2.0.0-alpha.16](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.15...@tiptap/core@2.0.0-alpha.16) (2021-02-07)
208
-
209
- **Note:** Version bump only for package @tiptap/core
210
-
211
-
212
-
213
-
214
-
215
- # [2.0.0-alpha.15](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.14...@tiptap/core@2.0.0-alpha.15) (2021-02-05)
216
-
217
- **Note:** Version bump only for package @tiptap/core
218
-
219
-
220
-
221
-
222
-
223
- # [2.0.0-alpha.14](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.13...@tiptap/core@2.0.0-alpha.14) (2021-01-29)
224
-
225
- **Note:** Version bump only for package @tiptap/core
226
-
227
-
228
-
229
-
230
-
231
- # [2.0.0-alpha.13](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.12...@tiptap/core@2.0.0-alpha.13) (2021-01-29)
232
-
233
- **Note:** Version bump only for package @tiptap/core
234
-
235
-
236
-
237
-
238
-
239
- # [2.0.0-alpha.12](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.11...@tiptap/core@2.0.0-alpha.12) (2021-01-28)
240
-
241
- **Note:** Version bump only for package @tiptap/core
242
-
243
-
244
-
245
-
246
-
247
- # [2.0.0-alpha.11](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.10...@tiptap/core@2.0.0-alpha.11) (2021-01-28)
248
-
249
-
250
- ### Bug Fixes
251
-
252
- * don’t merge classes ([dba0c1a](https://github.com/ueberdosis/tiptap-next/commit/dba0c1ac15e9beda3ebd027c67c969a4fe7ae7c7))
253
-
254
-
255
-
256
-
257
-
258
- # [2.0.0-alpha.10](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.9...@tiptap/core@2.0.0-alpha.10) (2021-01-06)
259
-
260
- **Note:** Version bump only for package @tiptap/core
261
-
262
-
263
-
264
-
265
-
266
- # [2.0.0-alpha.9](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.8...@tiptap/core@2.0.0-alpha.9) (2020-12-18)
267
-
268
- **Note:** Version bump only for package @tiptap/core
269
-
270
-
271
-
272
-
273
-
274
- # [2.0.0-alpha.8](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.7...@tiptap/core@2.0.0-alpha.8) (2020-12-18)
275
-
276
- **Note:** Version bump only for package @tiptap/core
277
-
278
-
279
-
280
-
281
-
282
- # [2.0.0-alpha.7](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.6...@tiptap/core@2.0.0-alpha.7) (2020-12-02)
283
-
284
- **Note:** Version bump only for package @tiptap/core
285
-
286
-
287
-
288
-
289
-
290
- # [2.0.0-alpha.6](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.5...@tiptap/core@2.0.0-alpha.6) (2020-11-19)
291
-
292
- **Note:** Version bump only for package @tiptap/core
293
-
294
-
295
-
296
-
297
-
298
- # [2.0.0-alpha.5](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.4...@tiptap/core@2.0.0-alpha.5) (2020-11-18)
299
-
300
- **Note:** Version bump only for package @tiptap/core
301
-
302
-
303
-
304
-
305
-
306
- # [2.0.0-alpha.4](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.3...@tiptap/core@2.0.0-alpha.4) (2020-11-16)
307
-
308
- **Note:** Version bump only for package @tiptap/core
309
-
310
-
311
-
312
-
313
-
314
- # [2.0.0-alpha.3](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.2...@tiptap/core@2.0.0-alpha.3) (2020-11-16)
315
-
316
-
317
- ### Reverts
318
-
319
- * Revert "use global namespace" ([0c9ce26](https://github.com/ueberdosis/tiptap-next/commit/0c9ce26c02c07d88a757c01b0a9d7f9e2b0b7502))
320
-
321
-
322
-
323
-
324
-
325
- # [2.0.0-alpha.2](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.1...@tiptap/core@2.0.0-alpha.2) (2020-11-16)
326
-
327
- **Note:** Version bump only for package @tiptap/core
328
-
329
-
330
-
331
-
332
-
333
- # [2.0.0-alpha.1](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-alpha.0...@tiptap/core@2.0.0-alpha.1) (2020-11-16)
334
-
335
- **Note:** Version bump only for package @tiptap/core
@@ -1,12 +0,0 @@
1
- import { Command, RawCommands } from '../types';
2
- declare module '@tiptap/core' {
3
- interface Commands {
4
- insertHTML: {
5
- /**
6
- * Insert a string of HTML at the current position.
7
- */
8
- insertHTML: (value: string) => Command;
9
- };
10
- }
11
- }
12
- export declare const insertHTML: RawCommands['insertHTML'];
@@ -1,13 +0,0 @@
1
- import { NodeType } from 'prosemirror-model';
2
- import { Command, RawCommands, AnyObject } from '../types';
3
- declare module '@tiptap/core' {
4
- interface Commands {
5
- insertNode: {
6
- /**
7
- * Insert a node at the current position.
8
- */
9
- insertNode: (typeOrName: string | NodeType, attributes?: AnyObject) => Command;
10
- };
11
- }
12
- }
13
- export declare const insertNode: RawCommands['insertNode'];
@@ -1,12 +0,0 @@
1
- import { Command, RawCommands } from '../types';
2
- declare module '@tiptap/core' {
3
- interface Commands {
4
- insertText: {
5
- /**
6
- * Insert a string of text at the current position.
7
- */
8
- insertText: (value: string) => Command;
9
- };
10
- }
11
- }
12
- export declare const insertText: RawCommands['insertText'];
@@ -1,13 +0,0 @@
1
- import { NodeType } from 'prosemirror-model';
2
- import { Command, RawCommands, AnyObject } from '../types';
3
- declare module '@tiptap/core' {
4
- interface Commands {
5
- replace: {
6
- /**
7
- * Replaces text with a node.
8
- */
9
- replace: (typeOrName: string | NodeType, attributes?: AnyObject) => Command;
10
- };
11
- }
12
- }
13
- export declare const replace: RawCommands['replace'];
@@ -1,13 +0,0 @@
1
- import { NodeType } from 'prosemirror-model';
2
- import { Command, RawCommands, Range, AnyObject } from '../types';
3
- declare module '@tiptap/core' {
4
- interface Commands {
5
- replaceRange: {
6
- /**
7
- * Replaces text with a node within a range.
8
- */
9
- replaceRange: (range: Range, typeOrName: string | NodeType, attributes?: AnyObject) => Command;
10
- };
11
- }
12
- }
13
- export declare const replaceRange: RawCommands['replaceRange'];
@@ -1,13 +0,0 @@
1
- import { NodeType } from 'prosemirror-model';
2
- import { Command, RawCommands } from '../types';
3
- declare module '@tiptap/core' {
4
- interface Commands {
5
- resetNodeAttributes: {
6
- /**
7
- * Resets node attributes to the default value.
8
- */
9
- resetNodeAttributes: (typeOrName: string | NodeType, attributes: string | string[]) => Command;
10
- };
11
- }
12
- }
13
- export declare const resetNodeAttributes: RawCommands['resetNodeAttributes'];
@@ -1,13 +0,0 @@
1
- import { NodeType } from 'prosemirror-model';
2
- import { AnyObject, Command, RawCommands } from '../types';
3
- declare module '@tiptap/core' {
4
- interface Commands {
5
- updateNodeAttributes: {
6
- /**
7
- * Update attributes of a node.
8
- */
9
- updateNodeAttributes: (typeOrName: string | NodeType, attributes: AnyObject) => Command;
10
- };
11
- }
12
- }
13
- export declare const updateNodeAttributes: RawCommands['updateNodeAttributes'];
@@ -1 +0,0 @@
1
- export default function removeElement(element: HTMLElement): void;