Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@remirror/extension-doc

Package Overview
Dependencies
Maintainers
2
Versions
280
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@remirror/extension-doc - npm Package Compare versions

Comparing version 0.0.0-pr2128.4 to 0.0.0-pr2166.1

dist/_tsup-dts-rollup.d.mts

100

dist/remirror-extension-doc.d.ts

@@ -1,99 +0,1 @@

import { Static, NodeExtension, ApplySchemaAttributes, NodeSpecOverride, NodeExtensionSpec, ProsemirrorAttributes, CommandFunction, Helper, EditorStateProps, DefaultDocNodeOptions } from '@remirror/core';
interface DocOptions {
/**
* Adjust the content allowed in this prosemirror document.
*
* This will alter the schema if changed after initialization and can cause
* errors. It should only be set **once** per editor.
*
* @remarks
*
* This field controls what sequences of child nodes are valid for this node
* type.
*
* Taken from https://prosemirror.net/docs/guide/#schema.content_expressions
*
* You can say, for example "paragraph" for “one paragraph”, or "paragraph+"
* to express “one or more paragraphs”. Similarly, "paragraph*" means “zero or
* more paragraphs” and "caption?" means “zero or one caption node”. You can
* also use regular-expression-like ranges, such as {2} (“exactly two”) {1, 5}
* (“one to five”) or {2,} (“two or more”) after node names.
*
* Such expressions can be combined to create a sequence, for example "heading
* paragraph+" means ‘first a heading, then one or more paragraphs’. You can
* also use the pipe | operator to indicate a choice between two expressions,
* as in "(paragraph | blockquote)+".
*
* Some groups of element types will appear multiple types in your schema—for
* example you might have a concept of “block” nodes, that may appear at the
* top level but also nested inside of blockquotes. You can create a node
* group by giving your node specs a group property, and then refer to that
* group by its name in your expressions.
*
* @core
*/
content?: Static<string>;
/**
* The doc node doesn't support `extraAttribute`. If you need to add support
* for adding new attributes then this property can be used to apply attributes
* directly to the doc node.
*
* @remarks
*
* Passing an array of strings, will initialise each key with the value null
*
* ```ts
* new DocExtension({ docAttributes: ['key1', 'key2'] })
* ```
*
* Passing an object, will initialise each key with an initial value
*
* ```ts
* new DocExtension({
* docAttributes: {
* key1: 'value1',
* key2: null
* }
* })
* ```
*/
docAttributes?: Static<string[]> | Static<Record<string, string | null>>;
}
/**
* This is the default parent node. It is required in the Prosemirror Schema and
* a representation of the `doc` is required as the top level node in all
* editors.
*
* Extra attributes are disallowed for the doc extension.
*
* @required
* @core
*/
declare class DocExtension extends NodeExtension<DocOptions> {
get name(): "doc";
/**
* Create the node spec for the `doc` the content that you've provided.
*/
createNodeSpec(_: ApplySchemaAttributes, override: NodeSpecOverride): NodeExtensionSpec;
/**
* Update the attributes for the doc node.
*/
setDocAttributes(attrs: ProsemirrorAttributes): CommandFunction;
isDefaultDocNode({ state, options, }?: IsDefaultDocNodeHelperOptions): Helper<boolean>;
}
interface IsDefaultDocNodeHelperOptions extends Partial<EditorStateProps> {
/**
* The options passed to the isDefaultDocNode util
*/
options?: DefaultDocNodeOptions;
}
declare global {
namespace Remirror {
interface AllExtensions {
doc: DocExtension;
}
}
}
export { DocExtension, DocOptions };
export {};

@@ -1,27 +0,38 @@

var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __decorateClass = (decorators, target, key, kind) => {
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
for (var i = decorators.length - 1, decorator; i >= 0; i--)
if (decorator = decorators[i])
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
if (kind && result)
__defProp(target, key, result);
return result;
};
var _initClass, _DocExtension, _dec, _dec2, _dec3, _initProto;
function createAddInitializerMethod(initializers, decoratorFinishedRef) { return function (initializer) { assertNotFinished(decoratorFinishedRef, "addInitializer"), assertCallable(initializer, "An initializer"), initializers.push(initializer); }; }
function assertInstanceIfPrivate(has, target) { if (!has(target)) throw new TypeError("Attempted to access private element on non-instance"); }
function memberDec(dec, thisArg, name, desc, initializers, kind, isStatic, isPrivate, value, hasPrivateBrand) { var kindStr; switch (kind) { case 1: kindStr = "accessor"; break; case 2: kindStr = "method"; break; case 3: kindStr = "getter"; break; case 4: kindStr = "setter"; break; default: kindStr = "field"; } var get, set, ctx = { kind: kindStr, name: isPrivate ? "#" + name : name, static: isStatic, private: isPrivate }, decoratorFinishedRef = { v: !1 }; if (0 !== kind && (ctx.addInitializer = createAddInitializerMethod(initializers, decoratorFinishedRef)), isPrivate || 0 !== kind && 2 !== kind) { if (2 === kind) get = function (target) { return assertInstanceIfPrivate(hasPrivateBrand, target), desc.value; };else { var t = 0 === kind || 1 === kind; (t || 3 === kind) && (get = isPrivate ? function (target) { return assertInstanceIfPrivate(hasPrivateBrand, target), desc.get.call(target); } : function (target) { return desc.get.call(target); }), (t || 4 === kind) && (set = isPrivate ? function (target, value) { assertInstanceIfPrivate(hasPrivateBrand, target), desc.set.call(target, value); } : function (target, value) { desc.set.call(target, value); }); } } else get = function (target) { return target[name]; }, 0 === kind && (set = function (target, v) { target[name] = v; }); var has = isPrivate ? hasPrivateBrand.bind() : function (target) { return name in target; }; ctx.access = get && set ? { get: get, set: set, has: has } : get ? { get: get, has: has } : { set: set, has: has }; try { return dec.call(thisArg, value, ctx); } finally { decoratorFinishedRef.v = !0; } }
function assertNotFinished(decoratorFinishedRef, fnName) { if (decoratorFinishedRef.v) throw new Error("attempted to call " + fnName + " after decoration was finished"); }
function assertCallable(fn, hint) { if ("function" != typeof fn) throw new TypeError(hint + " must be a function"); }
function assertValidReturnValue(kind, value) { var type = typeof value; if (1 === kind) { if ("object" !== type || null === value) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); void 0 !== value.get && assertCallable(value.get, "accessor.get"), void 0 !== value.set && assertCallable(value.set, "accessor.set"), void 0 !== value.init && assertCallable(value.init, "accessor.init"); } else if ("function" !== type) { var hint; throw hint = 0 === kind ? "field" : 5 === kind ? "class" : "method", new TypeError(hint + " decorators must return a function or void 0"); } }
function curryThis1(fn) { return function () { return fn(this); }; }
function curryThis2(fn) { return function (value) { fn(this, value); }; }
function applyMemberDec(ret, base, decInfo, decoratorsHaveThis, name, kind, isStatic, isPrivate, initializers, hasPrivateBrand) { var desc, init, value, newValue, get, set, decs = decInfo[0]; decoratorsHaveThis || Array.isArray(decs) || (decs = [decs]), isPrivate ? desc = 0 === kind || 1 === kind ? { get: curryThis1(decInfo[3]), set: curryThis2(decInfo[4]) } : 3 === kind ? { get: decInfo[3] } : 4 === kind ? { set: decInfo[3] } : { value: decInfo[3] } : 0 !== kind && (desc = Object.getOwnPropertyDescriptor(base, name)), 1 === kind ? value = { get: desc.get, set: desc.set } : 2 === kind ? value = desc.value : 3 === kind ? value = desc.get : 4 === kind && (value = desc.set); for (var inc = decoratorsHaveThis ? 2 : 1, i = decs.length - 1; i >= 0; i -= inc) { var newInit; if (void 0 !== (newValue = memberDec(decs[i], decoratorsHaveThis ? decs[i - 1] : void 0, name, desc, initializers, kind, isStatic, isPrivate, value, hasPrivateBrand))) assertValidReturnValue(kind, newValue), 0 === kind ? newInit = newValue : 1 === kind ? (newInit = newValue.init, get = newValue.get || value.get, set = newValue.set || value.set, value = { get: get, set: set }) : value = newValue, void 0 !== newInit && (void 0 === init ? init = newInit : "function" == typeof init ? init = [init, newInit] : init.push(newInit)); } if (0 === kind || 1 === kind) { if (void 0 === init) init = function (instance, init) { return init; };else if ("function" != typeof init) { var ownInitializers = init; init = function (instance, init) { for (var value = init, i = ownInitializers.length - 1; i >= 0; i--) value = ownInitializers[i].call(instance, value); return value; }; } else { var originalInitializer = init; init = function (instance, init) { return originalInitializer.call(instance, init); }; } ret.push(init); } 0 !== kind && (1 === kind ? (desc.get = value.get, desc.set = value.set) : 2 === kind ? desc.value = value : 3 === kind ? desc.get = value : 4 === kind && (desc.set = value), isPrivate ? 1 === kind ? (ret.push(function (instance, args) { return value.get.call(instance, args); }), ret.push(function (instance, args) { return value.set.call(instance, args); })) : 2 === kind ? ret.push(value) : ret.push(function (instance, args) { return value.call(instance, args); }) : Object.defineProperty(base, name, desc)); }
function applyMemberDecs(Class, decInfos, instanceBrand) { for (var protoInitializers, staticInitializers, staticBrand, ret = [], existingProtoNonFields = new Map(), existingStaticNonFields = new Map(), i = 0; i < decInfos.length; i++) { var decInfo = decInfos[i]; if (Array.isArray(decInfo)) { var base, initializers, kind = decInfo[1], name = decInfo[2], isPrivate = decInfo.length > 3, decoratorsHaveThis = 16 & kind, isStatic = !!(8 & kind), hasPrivateBrand = instanceBrand; if (kind &= 7, isStatic ? (base = Class, 0 !== kind && (initializers = staticInitializers = staticInitializers || []), isPrivate && !staticBrand && (staticBrand = function (_) { return _checkInRHS(_) === Class; }), hasPrivateBrand = staticBrand) : (base = Class.prototype, 0 !== kind && (initializers = protoInitializers = protoInitializers || [])), 0 !== kind && !isPrivate) { var existingNonFields = isStatic ? existingStaticNonFields : existingProtoNonFields, existingKind = existingNonFields.get(name) || 0; if (!0 === existingKind || 3 === existingKind && 4 !== kind || 4 === existingKind && 3 !== kind) throw new Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + name); existingNonFields.set(name, !(!existingKind && kind > 2) || kind); } applyMemberDec(ret, base, decInfo, decoratorsHaveThis, name, kind, isStatic, isPrivate, initializers, hasPrivateBrand); } } return pushInitializers(ret, protoInitializers), pushInitializers(ret, staticInitializers), ret; }
function pushInitializers(ret, initializers) { initializers && ret.push(function (instance) { for (var i = 0; i < initializers.length; i++) initializers[i].call(instance); return instance; }); }
function applyClassDecs(targetClass, classDecs, decoratorsHaveThis) { if (classDecs.length) { for (var initializers = [], newClass = targetClass, name = targetClass.name, inc = decoratorsHaveThis ? 2 : 1, i = classDecs.length - 1; i >= 0; i -= inc) { var decoratorFinishedRef = { v: !1 }; try { var nextNewClass = classDecs[i].call(decoratorsHaveThis ? classDecs[i - 1] : void 0, newClass, { kind: "class", name: name, addInitializer: createAddInitializerMethod(initializers, decoratorFinishedRef) }); } finally { decoratorFinishedRef.v = !0; } void 0 !== nextNewClass && (assertValidReturnValue(5, nextNewClass), newClass = nextNewClass); } return [newClass, function () { for (var i = 0; i < initializers.length; i++) initializers[i].call(newClass); }]; } }
function _applyDecs(targetClass, memberDecs, classDecs, classDecsHaveThis, instanceBrand) { return { e: applyMemberDecs(targetClass, memberDecs, instanceBrand), get c() { return applyClassDecs(targetClass, classDecs, classDecsHaveThis); } }; }
function _checkInRHS(value) { if (Object(value) !== value) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== value ? typeof value : "null")); return value; }
// packages/remirror__extension-doc/src/doc-extension.ts
import {
command,
entries,
extension,
ExtensionPriority,
helper,
isDefaultDocNode,
isPlainObject,
NodeExtension,
object
} from "@remirror/core";
import { command, entries, extension, ExtensionPriority, helper, isDefaultDocNode, isPlainObject, NodeExtension, object } from "@remirror/core";
import { Step, StepResult } from "@remirror/pm/transform";
var DocExtension = class extends NodeExtension {
var DocExtension = ((_dec = extension({
defaultOptions: {
content: "block+",
docAttributes: []
},
defaultPriority: ExtensionPriority.Medium,
staticKeys: ["content", "docAttributes"],
disableExtraAttributes: true
}), _dec2 = command(), _dec3 = helper(), class DocExtension extends NodeExtension {
static {
({
e: [_initProto],
c: [_DocExtension, _initClass]
} = _applyDecs(this, [[_dec2, 2, "setDocAttributes"], [_dec3, 2, "isDefaultDocNode"]], [_dec]));
}
constructor(...args) {
super(...args);
_initProto(this);
}
get name() {

@@ -34,11 +45,18 @@ return "doc";

createNodeSpec(_, override) {
const { docAttributes, content } = this.options;
const {
docAttributes,
content
} = this.options;
const attrs = object();
if (isPlainObject(docAttributes)) {
for (const [key, value] of entries(docAttributes)) {
attrs[key] = { default: value };
attrs[key] = {
default: value
};
}
} else {
for (const key of docAttributes) {
attrs[key] = { default: null };
attrs[key] = {
default: null
};
}

@@ -53,3 +71,6 @@ }

setDocAttributes(attrs) {
return ({ tr, dispatch }) => {
return ({
tr,
dispatch
}) => {
if (dispatch) {

@@ -70,23 +91,30 @@ for (const [key, value] of Object.entries(attrs)) {

}
};
__decorateClass([
command()
], DocExtension.prototype, "setDocAttributes", 1);
__decorateClass([
helper()
], DocExtension.prototype, "isDefaultDocNode", 1);
DocExtension = __decorateClass([
extension({
defaultOptions: {
content: "block+",
docAttributes: []
},
defaultPriority: ExtensionPriority.Medium,
staticKeys: ["content", "docAttributes"],
disableExtraAttributes: true
})
], DocExtension);
static {
_initClass();
}
}), _DocExtension);
var STEP_TYPE = "SetDocAttribute";
var REVERT_STEP_TYPE = "RevertSetDocAttribute";
var SetDocAttributeStep = class extends Step {
var SetDocAttributeStep = class _SetDocAttributeStep extends Step {
static fromJSON(_, json) {
return new _SetDocAttributeStep(json.key, json.value, json.stepType);
}
/**
* The attribute key.
*/
key;
/**
* A custom name for the step type.
*
* @defaultValue 'SetDocAttribute'
*/
stepType;
/**
* The value to be added.
*/
value;
/**
* The previous value.
*/
previous;
constructor(key, value, stepType = STEP_TYPE) {

@@ -98,5 +126,2 @@ super();

}
static fromJSON(_, json) {
return new SetDocAttributeStep(json.key, json.value, json.stepType);
}
apply(doc) {

@@ -111,3 +136,3 @@ this.previous = doc.attrs[this.key];

invert() {
return new SetDocAttributeStep(this.key, this.previous, REVERT_STEP_TYPE);
return new _SetDocAttributeStep(this.key, this.previous, REVERT_STEP_TYPE);
}

@@ -136,4 +161,2 @@ /**

}
export {
DocExtension
};
export { DocExtension };
{
"name": "@remirror/extension-doc",
"version": "0.0.0-pr2128.4",
"version": "0.0.0-pr2166.1",
"description": "The root of your text-editor. One doc to rule them all.",

@@ -41,10 +41,10 @@ "keywords": [

"@babel/runtime": "^7.22.3",
"@remirror/core": "0.0.0-pr2128.4",
"@remirror/messages": "0.0.0-pr2128.4"
"@remirror/core": "0.0.0-pr2166.1",
"@remirror/messages": "0.0.0-pr2166.1"
},
"devDependencies": {
"@remirror/pm": "0.0.0-pr2128.4"
"@remirror/pm": "0.0.0-pr2166.1"
},
"peerDependencies": {
"@remirror/pm": "0.0.0-pr2128.4"
"@remirror/pm": "0.0.0-pr2166.1"
},

@@ -51,0 +51,0 @@ "publishConfig": {

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc