@atlaskit/adf-schema-generator
Advanced tools
Comparing version 1.15.0 to 1.16.0
# @atlaskit/adf-schema-generator | ||
## 1.15.0 | ||
## 1.16.0 | ||
### Minor Changes | ||
- bd85ab9: Fix handling of anyOf in PM Spec | ||
- d4cf757: Align newly generated PM spec to old PM spec, only 2 nodes are still not 100% aligned |
@@ -15,2 +15,3 @@ "use strict"; | ||
var _buildPmNodeTypes = require("./buildPmNodeTypes"); | ||
var _transformerNames = require("../transformerNames"); | ||
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } | ||
@@ -20,6 +21,6 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
function isNodeReturnValue(value) { | ||
return 'node' in value; | ||
return value && 'node' in value; | ||
} | ||
function isGroupReturnValue(value) { | ||
return 'group' in value; | ||
return value && 'group' in value; | ||
} | ||
@@ -33,2 +34,5 @@ function transform(adf) { | ||
var _node$getSpec$marks; | ||
if (_node.isIgnored(_transformerNames.PMSpecTransformerName)) { | ||
return; | ||
} | ||
var marks = (_node$getSpec$marks = _node.getSpec().marks) !== null && _node$getSpec$marks !== void 0 ? _node$getSpec$marks : []; | ||
@@ -35,0 +39,0 @@ marks.forEach(function (mark) { |
@@ -21,2 +21,11 @@ "use strict"; | ||
var excludesIndentationNodes = ['tableHeader', 'tableCell']; | ||
var NODES_WITHOUT_ATTRIBUTES = new Set(['hardBreak']); | ||
var NODES_MARKS_OVERRIDES = { | ||
blockquote: [], | ||
bodiedExtension: ['dataConsumer', 'fragment'], | ||
codeBlock: ['unsupportedMark', 'unsupportedNodeAttribute'], | ||
extensionFrame: ['dataConsumer', 'fragment'], | ||
heading: [], | ||
multiBodiedExtension: [] | ||
}; | ||
var buildAttrs = exports.buildAttrs = function buildAttrs(attrs) { | ||
@@ -83,3 +92,2 @@ var attributes = attrs; | ||
}; | ||
var NODES_WITH_UNDEFINED_MARKS = new Set(['heading']); | ||
var buildNodeSpec = exports.buildNodeSpec = function buildNodeSpec(node, content) { | ||
@@ -103,4 +111,4 @@ var pmNodeSpec = {}; | ||
} | ||
if (NODES_WITH_UNDEFINED_MARKS.has(node.getType())) { | ||
marks = []; | ||
if (node.getType() in NODES_MARKS_OVERRIDES) { | ||
marks = NODES_MARKS_OVERRIDES[node.getType()]; | ||
} else if (node.getSpec().allowAnyChildMark) { | ||
@@ -122,3 +130,5 @@ marks = ['_']; | ||
pmNodeSpec.atom = node.getSpec().atom; | ||
pmNodeSpec.attrs = buildAttrs(node.getSpec().attrs); | ||
if (!NODES_WITHOUT_ATTRIBUTES.has(node.getType())) { | ||
pmNodeSpec.attrs = buildAttrs(node.getSpec().attrs); | ||
} | ||
pmNodeSpec.selectable = node.getSpec().selectable; | ||
@@ -125,0 +135,0 @@ pmNodeSpec.draggable = node.getSpec().draggable; |
@@ -17,3 +17,3 @@ "use strict"; | ||
var _attrs = function _attrs(name, attrs) { | ||
if (!attrs) return null; | ||
if (!attrs || !Object.keys(attrs).length) return null; | ||
return "".concat(name, ": {\n ").concat((0, _codeGenHelpers.buildADFAttributesTypes)(attrs).join(';'), "\n },"); | ||
@@ -66,3 +66,3 @@ }; | ||
function pmNodesCodeGen(nodeResMap) { | ||
return (0, _codeGenHelpers._codeBlock)((0, _codeGenHelpers._namedImport)('@atlaskit/adf-schema-generator', 'createPMNodeSpecFactory'), (0, _codeGenHelpers._namedImport)('@atlaskit/editor-prosemirror/model', 'Node as PMNode'), _codeGenHelpers._namedImport.apply(void 0, ['./nodeGroupTypes'].concat(['InlineDefinition', 'BlockDefinition'])), _codeGenHelpers._namedImport.apply(void 0, ['./markTypes'].concat((0, _toConsumableArray2.default)(buildNodeMarksForImport(nodeResMap)))), Object.entries(nodeResMap).map(function (_ref2) { | ||
return (0, _codeGenHelpers._codeBlock)((0, _codeGenHelpers._namedImport)('@atlaskit/adf-schema-generator', 'createPMNodeSpecFactory'), (0, _codeGenHelpers._namedImport)('@atlaskit/editor-prosemirror/model', 'Node as PMNode'), _codeGenHelpers._namedImport.apply(void 0, ['./nodeGroupTypes'].concat(['InlineDefinition', 'BlockDefinition', 'BlockRootOnlyDefinition'])), _codeGenHelpers._namedImport.apply(void 0, ['./markTypes'].concat((0, _toConsumableArray2.default)(buildNodeMarksForImport(nodeResMap)))), Object.entries(nodeResMap).map(function (_ref2) { | ||
var _ref3 = (0, _slicedToArray2.default)(_ref2, 2), | ||
@@ -69,0 +69,0 @@ key = _ref3[0], |
@@ -8,7 +8,8 @@ import { traverse } from '../../traverse'; | ||
import { buildNodeTypeDefinition } from './buildPmNodeTypes'; | ||
import { PMSpecTransformerName } from '../transformerNames'; | ||
function isNodeReturnValue(value) { | ||
return 'node' in value; | ||
return value && 'node' in value; | ||
} | ||
function isGroupReturnValue(value) { | ||
return 'group' in value; | ||
return value && 'group' in value; | ||
} | ||
@@ -22,2 +23,5 @@ export function transform(adf) { | ||
var _node$getSpec$marks; | ||
if (node.isIgnored(PMSpecTransformerName)) { | ||
return; | ||
} | ||
const marks = (_node$getSpec$marks = node.getSpec().marks) !== null && _node$getSpec$marks !== void 0 ? _node$getSpec$marks : []; | ||
@@ -24,0 +28,0 @@ marks.forEach(mark => { |
@@ -6,2 +6,11 @@ import merge from 'lodash/merge'; | ||
const excludesIndentationNodes = ['tableHeader', 'tableCell']; | ||
const NODES_WITHOUT_ATTRIBUTES = new Set(['hardBreak']); | ||
const NODES_MARKS_OVERRIDES = { | ||
blockquote: [], | ||
bodiedExtension: ['dataConsumer', 'fragment'], | ||
codeBlock: ['unsupportedMark', 'unsupportedNodeAttribute'], | ||
extensionFrame: ['dataConsumer', 'fragment'], | ||
heading: [], | ||
multiBodiedExtension: [] | ||
}; | ||
export const buildAttrs = attrs => { | ||
@@ -66,3 +75,2 @@ let attributes = attrs; | ||
}; | ||
const NODES_WITH_UNDEFINED_MARKS = new Set(['heading']); | ||
export const buildNodeSpec = (node, content) => { | ||
@@ -76,4 +84,4 @@ const pmNodeSpec = {}; | ||
} | ||
if (NODES_WITH_UNDEFINED_MARKS.has(node.getType())) { | ||
marks = []; | ||
if (node.getType() in NODES_MARKS_OVERRIDES) { | ||
marks = NODES_MARKS_OVERRIDES[node.getType()]; | ||
} else if (node.getSpec().allowAnyChildMark) { | ||
@@ -95,3 +103,5 @@ marks = ['_']; | ||
pmNodeSpec.atom = node.getSpec().atom; | ||
pmNodeSpec.attrs = buildAttrs(node.getSpec().attrs); | ||
if (!NODES_WITHOUT_ATTRIBUTES.has(node.getType())) { | ||
pmNodeSpec.attrs = buildAttrs(node.getSpec().attrs); | ||
} | ||
pmNodeSpec.selectable = node.getSpec().selectable; | ||
@@ -98,0 +108,0 @@ pmNodeSpec.draggable = node.getSpec().draggable; |
@@ -7,3 +7,3 @@ import camelCase from 'lodash/camelCase'; | ||
const _attrs = (name, attrs) => { | ||
if (!attrs) return null; | ||
if (!attrs || !Object.keys(attrs).length) return null; | ||
return `${name}: { | ||
@@ -55,3 +55,3 @@ ${buildADFAttributesTypes(attrs).join(';')} | ||
export function pmNodesCodeGen(nodeResMap) { | ||
return _codeBlock(_namedImport('@atlaskit/adf-schema-generator', 'createPMNodeSpecFactory'), _namedImport('@atlaskit/editor-prosemirror/model', 'Node as PMNode'), _namedImport('./nodeGroupTypes', ...['InlineDefinition', 'BlockDefinition']), _namedImport('./markTypes', ...buildNodeMarksForImport(nodeResMap)), Object.entries(nodeResMap).map(([key, { | ||
return _codeBlock(_namedImport('@atlaskit/adf-schema-generator', 'createPMNodeSpecFactory'), _namedImport('@atlaskit/editor-prosemirror/model', 'Node as PMNode'), _namedImport('./nodeGroupTypes', ...['InlineDefinition', 'BlockDefinition', 'BlockRootOnlyDefinition']), _namedImport('./markTypes', ...buildNodeMarksForImport(nodeResMap)), Object.entries(nodeResMap).map(([key, { | ||
nodeTypeDefintion, | ||
@@ -58,0 +58,0 @@ pmNodeSpec |
@@ -11,7 +11,8 @@ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } | ||
import { buildNodeTypeDefinition } from './buildPmNodeTypes'; | ||
import { PMSpecTransformerName } from '../transformerNames'; | ||
function isNodeReturnValue(value) { | ||
return 'node' in value; | ||
return value && 'node' in value; | ||
} | ||
function isGroupReturnValue(value) { | ||
return 'group' in value; | ||
return value && 'group' in value; | ||
} | ||
@@ -25,2 +26,5 @@ export function transform(adf) { | ||
var _node$getSpec$marks; | ||
if (_node.isIgnored(PMSpecTransformerName)) { | ||
return; | ||
} | ||
var marks = (_node$getSpec$marks = _node.getSpec().marks) !== null && _node$getSpec$marks !== void 0 ? _node$getSpec$marks : []; | ||
@@ -27,0 +31,0 @@ marks.forEach(function (mark) { |
@@ -14,2 +14,11 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty"; | ||
var excludesIndentationNodes = ['tableHeader', 'tableCell']; | ||
var NODES_WITHOUT_ATTRIBUTES = new Set(['hardBreak']); | ||
var NODES_MARKS_OVERRIDES = { | ||
blockquote: [], | ||
bodiedExtension: ['dataConsumer', 'fragment'], | ||
codeBlock: ['unsupportedMark', 'unsupportedNodeAttribute'], | ||
extensionFrame: ['dataConsumer', 'fragment'], | ||
heading: [], | ||
multiBodiedExtension: [] | ||
}; | ||
export var buildAttrs = function buildAttrs(attrs) { | ||
@@ -76,3 +85,2 @@ var attributes = attrs; | ||
}; | ||
var NODES_WITH_UNDEFINED_MARKS = new Set(['heading']); | ||
export var buildNodeSpec = function buildNodeSpec(node, content) { | ||
@@ -96,4 +104,4 @@ var pmNodeSpec = {}; | ||
} | ||
if (NODES_WITH_UNDEFINED_MARKS.has(node.getType())) { | ||
marks = []; | ||
if (node.getType() in NODES_MARKS_OVERRIDES) { | ||
marks = NODES_MARKS_OVERRIDES[node.getType()]; | ||
} else if (node.getSpec().allowAnyChildMark) { | ||
@@ -115,3 +123,5 @@ marks = ['_']; | ||
pmNodeSpec.atom = node.getSpec().atom; | ||
pmNodeSpec.attrs = buildAttrs(node.getSpec().attrs); | ||
if (!NODES_WITHOUT_ATTRIBUTES.has(node.getType())) { | ||
pmNodeSpec.attrs = buildAttrs(node.getSpec().attrs); | ||
} | ||
pmNodeSpec.selectable = node.getSpec().selectable; | ||
@@ -118,0 +128,0 @@ pmNodeSpec.draggable = node.getSpec().draggable; |
@@ -9,3 +9,3 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray"; | ||
var _attrs = function _attrs(name, attrs) { | ||
if (!attrs) return null; | ||
if (!attrs || !Object.keys(attrs).length) return null; | ||
return "".concat(name, ": {\n ").concat(buildADFAttributesTypes(attrs).join(';'), "\n },"); | ||
@@ -58,3 +58,3 @@ }; | ||
export function pmNodesCodeGen(nodeResMap) { | ||
return _codeBlock(_namedImport('@atlaskit/adf-schema-generator', 'createPMNodeSpecFactory'), _namedImport('@atlaskit/editor-prosemirror/model', 'Node as PMNode'), _namedImport.apply(void 0, ['./nodeGroupTypes'].concat(['InlineDefinition', 'BlockDefinition'])), _namedImport.apply(void 0, ['./markTypes'].concat(_toConsumableArray(buildNodeMarksForImport(nodeResMap)))), Object.entries(nodeResMap).map(function (_ref2) { | ||
return _codeBlock(_namedImport('@atlaskit/adf-schema-generator', 'createPMNodeSpecFactory'), _namedImport('@atlaskit/editor-prosemirror/model', 'Node as PMNode'), _namedImport.apply(void 0, ['./nodeGroupTypes'].concat(['InlineDefinition', 'BlockDefinition', 'BlockRootOnlyDefinition'])), _namedImport.apply(void 0, ['./markTypes'].concat(_toConsumableArray(buildNodeMarksForImport(nodeResMap)))), Object.entries(nodeResMap).map(function (_ref2) { | ||
var _ref3 = _slicedToArray(_ref2, 2), | ||
@@ -61,0 +61,0 @@ key = _ref3[0], |
{ | ||
"name": "@atlaskit/adf-schema-generator", | ||
"version": "1.15.0", | ||
"version": "1.16.0", | ||
"description": "Generates ADF and PM schemas", | ||
@@ -5,0 +5,0 @@ "repository": "https://bitbucket.org/atlassian/adf-schema", |
@@ -16,2 +16,3 @@ import type { ADFNode } from '../../adfNode'; | ||
} from './types'; | ||
import { PMSpecTransformerName } from '../transformerNames'; | ||
@@ -21,3 +22,3 @@ function isNodeReturnValue( | ||
): value is NodeVisitorReturnType { | ||
return 'node' in value; | ||
return value && 'node' in value; | ||
} | ||
@@ -28,3 +29,3 @@ | ||
): value is GroupVisitorReturnType { | ||
return 'group' in value; | ||
return value && 'group' in value; | ||
} | ||
@@ -43,2 +44,5 @@ | ||
node: (node, content, cycle) => { | ||
if (node.isIgnored(PMSpecTransformerName)) { | ||
return; | ||
} | ||
const marks = node.getSpec().marks ?? []; | ||
@@ -45,0 +49,0 @@ marks.forEach((mark) => { |
@@ -20,2 +20,12 @@ import { MarkSpec, NodeSpec } from '@atlaskit/editor-prosemirror/model'; | ||
const NODES_WITHOUT_ATTRIBUTES = new Set(['hardBreak']); | ||
const NODES_MARKS_OVERRIDES = { | ||
blockquote: [], | ||
bodiedExtension: ['dataConsumer', 'fragment'], | ||
codeBlock: ['unsupportedMark', 'unsupportedNodeAttribute'], | ||
extensionFrame: ['dataConsumer', 'fragment'], | ||
heading: [], | ||
multiBodiedExtension: [], | ||
}; | ||
export const buildAttrs = ( | ||
@@ -93,4 +103,2 @@ attrs?: ADFAttributes, | ||
const NODES_WITH_UNDEFINED_MARKS = new Set(['heading']); | ||
export const buildNodeSpec = ( | ||
@@ -108,4 +116,4 @@ node: ADFNode<any>, | ||
if (NODES_WITH_UNDEFINED_MARKS.has(node.getType())) { | ||
marks = []; | ||
if (node.getType() in NODES_MARKS_OVERRIDES) { | ||
marks = NODES_MARKS_OVERRIDES[node.getType()]; | ||
} else if (node.getSpec().allowAnyChildMark) { | ||
@@ -130,3 +138,7 @@ marks = ['_']; | ||
pmNodeSpec.atom = node.getSpec().atom; | ||
pmNodeSpec.attrs = buildAttrs(node.getSpec().attrs); | ||
if (!NODES_WITHOUT_ATTRIBUTES.has(node.getType())) { | ||
pmNodeSpec.attrs = buildAttrs(node.getSpec().attrs); | ||
} | ||
pmNodeSpec.selectable = node.getSpec().selectable; | ||
@@ -133,0 +145,0 @@ pmNodeSpec.draggable = node.getSpec().draggable; |
@@ -23,3 +23,3 @@ import camelCase from 'lodash/camelCase'; | ||
const _attrs = (name: string, attrs: ADFAttributes): string | null => { | ||
if (!attrs) return null; | ||
if (!attrs || !Object.keys(attrs).length) return null; | ||
return `${name}: { | ||
@@ -100,3 +100,3 @@ ${buildADFAttributesTypes(attrs).join(';')} | ||
'./nodeGroupTypes', | ||
...['InlineDefinition', 'BlockDefinition'], | ||
...['InlineDefinition', 'BlockDefinition', 'BlockRootOnlyDefinition'], | ||
), | ||
@@ -103,0 +103,0 @@ _namedImport('./markTypes', ...buildNodeMarksForImport(nodeResMap)), |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
367537
9339