@tiptap/core 2.22.1 → 2.22.3
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.
- package/dist/NodePos.d.ts.map +1 -1
- package/dist/index.cjs +29 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +29 -1
- package/dist/index.js.map +1 -1
- package/dist/index.umd.js +29 -0
- package/dist/index.umd.js.map +1 -1
- package/dist/utilities/canInsertNode.d.ts +4 -0
- package/dist/utilities/canInsertNode.d.ts.map +1 -0
- package/dist/utilities/index.d.ts +1 -0
- package/dist/utilities/index.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/NodePos.ts +6 -0
- package/src/utilities/canInsertNode.ts +31 -0
- package/src/utilities/index.ts +1 -0
package/dist/NodePos.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodePos.d.ts","sourceRoot":"","sources":["../src/NodePos.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAAE,IAAI,EAAE,WAAW,EAC5B,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAE3C,qBAAa,OAAO;IAClB,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,MAAM,CAAQ;IAEtB,OAAO,KAAK,IAAI,GAEf;gBAEW,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,UAAQ,EAAE,IAAI,GAAE,IAAI,GAAG,IAAW;IAOvF,OAAO,CAAC,WAAW,CAAoB;IAEvC,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,OAAO,IAAI,WAAW,CAEzB;IAEM,WAAW,EAAE,MAAM,GAAG,IAAI,CAAO;IAExC,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,OAAO,EAe3B;IAED,IAAI,UAAU,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAEvC;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAMjB;IAED,IAAI,KAAK,IAAI,KAAK,CAKjB;IAED,IAAI,EAAE,IAAI,MAAM,CAMf;IAED,IAAI,MAAM,IAAI,OAAO,GAAG,IAAI,CAS3B;IAED,IAAI,MAAM,IAAI,OAAO,GAAG,IAAI,CAQ3B;IAED,IAAI,KAAK,IAAI,OAAO,GAAG,IAAI,CAQ1B;IAED,IAAI,QAAQ,IAAI,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"NodePos.d.ts","sourceRoot":"","sources":["../src/NodePos.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAAE,IAAI,EAAE,WAAW,EAC5B,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAE3C,qBAAa,OAAO;IAClB,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,MAAM,CAAQ;IAEtB,OAAO,KAAK,IAAI,GAEf;gBAEW,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,UAAQ,EAAE,IAAI,GAAE,IAAI,GAAG,IAAW;IAOvF,OAAO,CAAC,WAAW,CAAoB;IAEvC,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,OAAO,IAAI,WAAW,CAEzB;IAEM,WAAW,EAAE,MAAM,GAAG,IAAI,CAAO;IAExC,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,OAAO,EAe3B;IAED,IAAI,UAAU,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAEvC;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAMjB;IAED,IAAI,KAAK,IAAI,KAAK,CAKjB;IAED,IAAI,EAAE,IAAI,MAAM,CAMf;IAED,IAAI,MAAM,IAAI,OAAO,GAAG,IAAI,CAS3B;IAED,IAAI,MAAM,IAAI,OAAO,GAAG,IAAI,CAQ3B;IAED,IAAI,KAAK,IAAI,OAAO,GAAG,IAAI,CAQ1B;IAED,IAAI,QAAQ,IAAI,OAAO,EAAE,CA8BxB;IAED,IAAI,UAAU,IAAI,OAAO,GAAG,IAAI,CAE/B;IAED,IAAI,SAAS,IAAI,OAAO,GAAG,IAAI,CAI9B;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GAAG,OAAO,GAAG,IAAI;IA4BlF,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GAAG,OAAO,GAAG,IAAI;IAIxF,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,EAAE,aAAa,UAAQ,GAAG,OAAO,EAAE;IAqC7G,YAAY,CAAC,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE;CAUhD"}
|
package/dist/index.cjs
CHANGED
|
@@ -4214,6 +4214,10 @@ class NodePos {
|
|
|
4214
4214
|
const isBlock = node.isBlock && !node.isTextblock;
|
|
4215
4215
|
const isNonTextAtom = node.isAtom && !node.isText;
|
|
4216
4216
|
const targetPos = this.pos + offset + (isNonTextAtom ? 0 : 1);
|
|
4217
|
+
// Check if targetPos is within valid document range
|
|
4218
|
+
if (targetPos < 0 || targetPos > this.resolvedPos.doc.nodeSize - 2) {
|
|
4219
|
+
return;
|
|
4220
|
+
}
|
|
4217
4221
|
const $pos = this.resolvedPos.doc.resolve(targetPos);
|
|
4218
4222
|
if (!isBlock && $pos.depth <= this.depth) {
|
|
4219
4223
|
return;
|
|
@@ -5366,6 +5370,30 @@ function markPasteRule(config) {
|
|
|
5366
5370
|
});
|
|
5367
5371
|
}
|
|
5368
5372
|
|
|
5373
|
+
function canInsertNode(state$1, nodeType) {
|
|
5374
|
+
const { selection } = state$1;
|
|
5375
|
+
const { $from } = selection;
|
|
5376
|
+
// Special handling for NodeSelection
|
|
5377
|
+
if (selection instanceof state.NodeSelection) {
|
|
5378
|
+
const index = $from.index();
|
|
5379
|
+
const parent = $from.parent;
|
|
5380
|
+
// Can we replace the selected node with the horizontal rule?
|
|
5381
|
+
return parent.canReplaceWith(index, index + 1, nodeType);
|
|
5382
|
+
}
|
|
5383
|
+
// Default: check if we can insert at the current position
|
|
5384
|
+
let depth = $from.depth;
|
|
5385
|
+
while (depth >= 0) {
|
|
5386
|
+
const index = $from.index(depth);
|
|
5387
|
+
const parent = $from.node(depth);
|
|
5388
|
+
const match = parent.contentMatchAt(index);
|
|
5389
|
+
if (match.matchType(nodeType)) {
|
|
5390
|
+
return true;
|
|
5391
|
+
}
|
|
5392
|
+
depth -= 1;
|
|
5393
|
+
}
|
|
5394
|
+
return false;
|
|
5395
|
+
}
|
|
5396
|
+
|
|
5369
5397
|
// source: https://stackoverflow.com/a/6969486
|
|
5370
5398
|
function escapeForRegEx(string) {
|
|
5371
5399
|
return string.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
@@ -5461,6 +5489,7 @@ exports.NodeView = NodeView;
|
|
|
5461
5489
|
exports.PasteRule = PasteRule;
|
|
5462
5490
|
exports.Tracker = Tracker;
|
|
5463
5491
|
exports.callOrReturn = callOrReturn;
|
|
5492
|
+
exports.canInsertNode = canInsertNode;
|
|
5464
5493
|
exports.combineTransactionSteps = combineTransactionSteps;
|
|
5465
5494
|
exports.createChainableState = createChainableState;
|
|
5466
5495
|
exports.createDocument = createDocument;
|