@atlaskit/adf-schema-generator
Advanced tools
Comparing version 1.31.1 to 1.32.0
# @atlaskit/adf-schema-generator | ||
## 1.31.1 | ||
## 1.32.0 | ||
### Patch Changes | ||
### Minor Changes | ||
- 35a84ef: [HOT-111702] Added missing marks in PM node specs due to overrides in the ADF generator | ||
- 52bf2ea: [ED-23241] Set hardBreak as the Prosemirror `linebreakReplacement` which is used when converting between codeBlocks and other block types. Implementation of feature introduced to Prosemirror after [this GitHub discussion](https://github.com/ProseMirror/prosemirror/issues/1460) |
@@ -155,2 +155,3 @@ "use strict"; | ||
pmNodeSpec.tableRole = nodeSpec.tableRole; | ||
pmNodeSpec.linebreakReplacement = nodeSpec.linebreakReplacement; | ||
var overrides = ((_nodeSpec$DANGEROUS_M = nodeSpec.DANGEROUS_MANUAL_OVERRIDE) === null || _nodeSpec$DANGEROUS_M === void 0 ? void 0 : _nodeSpec$DANGEROUS_M['pm-spec']) || {}; | ||
@@ -157,0 +158,0 @@ for (var _i = 0, _Object$entries = Object.entries(overrides); _i < _Object$entries.length; _i++) { |
@@ -128,2 +128,3 @@ import merge from 'lodash/merge'; | ||
pmNodeSpec.tableRole = nodeSpec.tableRole; | ||
pmNodeSpec.linebreakReplacement = nodeSpec.linebreakReplacement; | ||
const overrides = ((_nodeSpec$DANGEROUS_M = nodeSpec.DANGEROUS_MANUAL_OVERRIDE) === null || _nodeSpec$DANGEROUS_M === void 0 ? void 0 : _nodeSpec$DANGEROUS_M['pm-spec']) || {}; | ||
@@ -130,0 +131,0 @@ for (const [key, override] of Object.entries(overrides)) { |
@@ -148,2 +148,3 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty"; | ||
pmNodeSpec.tableRole = nodeSpec.tableRole; | ||
pmNodeSpec.linebreakReplacement = nodeSpec.linebreakReplacement; | ||
var overrides = ((_nodeSpec$DANGEROUS_M = nodeSpec.DANGEROUS_MANUAL_OVERRIDE) === null || _nodeSpec$DANGEROUS_M === void 0 ? void 0 : _nodeSpec$DANGEROUS_M['pm-spec']) || {}; | ||
@@ -150,0 +151,0 @@ for (var _i = 0, _Object$entries = Object.entries(overrides); _i < _Object$entries.length; _i++) { |
@@ -142,2 +142,9 @@ import { ADFNode } from '../adfNode'; | ||
/** | ||
* https://prosemirror.net/docs/ref/#model.NodeSpec.linebreakReplacement | ||
* | ||
* A single inline node in a schema can be set to be a linebreak equivalent. When converting between block types that support the node | ||
* and block types that don't but have whitespace set to "pre", setBlockType will convert between newline characters to or from linebreak nodes as appropriate. | ||
*/ | ||
linebreakReplacement?: boolean; | ||
/** | ||
* https://prosemirror.net/docs/ref/#model.NodeSpec.whitespace | ||
@@ -144,0 +151,0 @@ * |
{ | ||
"name": "@atlaskit/adf-schema-generator", | ||
"version": "1.31.1", | ||
"version": "1.32.0", | ||
"description": "Generates ADF and PM schemas", | ||
@@ -5,0 +5,0 @@ "repository": "https://bitbucket.org/atlassian/adf-schema", |
@@ -66,2 +66,7 @@ import { JSONSchema4 } from 'json-schema'; | ||
}); | ||
const hardBreak = adfNode('hardBreak').define({ | ||
inline: true, | ||
selectable: false, | ||
linebreakReplacement: true, | ||
}); | ||
const inlineGroup = adfNodeGroup('inline', [ | ||
@@ -71,2 +76,3 @@ text.use('code_inline'), | ||
placeholder, | ||
hardBreak, | ||
]); | ||
@@ -103,4 +109,4 @@ const paragraph = adfNode('paragraph') | ||
'export type BlockDefinition = Array<ParagraphWithAlignmentDefinition|ParagraphWithNoMarksDefinition|DecisionListDefinition>', | ||
'export type InlineDefinition = Array<TextCodeInlineDefinition|EmojiDefinition|PlaceholderDefinition>', | ||
"import type { DecisionListDefinition, EmojiDefinition, ParagraphWithAlignmentDefinition, ParagraphWithNoMarksDefinition, PlaceholderDefinition, TextCodeInlineDefinition } from './nodeTypes'", | ||
'export type InlineDefinition = Array<TextCodeInlineDefinition|EmojiDefinition|PlaceholderDefinition|HardBreakDefinition>', | ||
"import type { DecisionListDefinition, EmojiDefinition, HardBreakDefinition, ParagraphWithAlignmentDefinition, ParagraphWithNoMarksDefinition, PlaceholderDefinition, TextCodeInlineDefinition } from './nodeTypes'", | ||
]; | ||
@@ -117,4 +123,7 @@ | ||
"export interface EmojiDefinition {type: 'emoji',attrs: {shortName: string;id?: string;text?: string},}", | ||
"export interface HardBreakDefinition {type: 'hardBreak'}", | ||
'export type EmojiNode = PMNode & EmojiDefinition', | ||
'export type HardBreakNode = PMNode & HardBreakDefinition', | ||
'export const emoji = createPMNodeSpecFactory<EmojiNode>({"group":"inline","inline":true,"attrs":{"shortName":{"default":""},"id":{"default":""},"text":{"default":""}},"selectable":true})', | ||
'export const hardBreak = createPMNodeSpecFactory<HardBreakNode>({"group":"inline","inline":true,"selectable":false,"linebreakReplacement":true})', | ||
"export interface ParagraphWithAlignmentDefinition {type: 'paragraph',content: Array<InlineDefinition>,marks: Array<AlignmentMark>}", | ||
@@ -250,2 +259,8 @@ 'export type ParagraphWithAlignmentNode = PMNode & ParagraphWithAlignmentDefinition', | ||
}, | ||
hardBreak_node: { | ||
type: 'object', | ||
properties: { type: { enum: ['hardBreak'] } }, | ||
additionalProperties: false, | ||
required: ['type'], | ||
}, | ||
inline_node: { | ||
@@ -256,2 +271,3 @@ anyOf: [ | ||
{ $ref: '#/definitions/placeholder_node' }, | ||
{ $ref: '#/definitions/hardBreak_node' }, | ||
], | ||
@@ -258,0 +274,0 @@ }, |
@@ -91,3 +91,3 @@ import { adfToPmAutogeneratedMessage } from '../../../transforms/adfToPm/adfToPmAutogeneratedMessage'; | ||
blockRootOnly: [], | ||
inline: ['text_code_inline', 'emoji', 'placeholder'], | ||
inline: ['text_code_inline', 'emoji', 'placeholder', 'hardBreak'], | ||
}); | ||
@@ -121,2 +121,15 @@ }); | ||
}, | ||
hardBreak: { | ||
nodeTypeDefinition: { | ||
content: [], | ||
marks: [], | ||
type: 'hardBreak', | ||
}, | ||
pmNodeSpec: { | ||
group: 'inline', | ||
inline: true, | ||
linebreakReplacement: true, | ||
selectable: false, | ||
}, | ||
}, | ||
paragraph_with_alignment: { | ||
@@ -123,0 +136,0 @@ nodeTypeDefinition: { |
@@ -184,2 +184,3 @@ import { MarkSpec, NodeSpec } from '@atlaskit/editor-prosemirror/model'; | ||
pmNodeSpec.tableRole = nodeSpec.tableRole; | ||
pmNodeSpec.linebreakReplacement = nodeSpec.linebreakReplacement; | ||
@@ -186,0 +187,0 @@ const overrides = nodeSpec.DANGEROUS_MANUAL_OVERRIDE?.['pm-spec'] || {}; |
@@ -166,2 +166,10 @@ import { ADFNode } from '../adfNode'; | ||
/** | ||
* https://prosemirror.net/docs/ref/#model.NodeSpec.linebreakReplacement | ||
* | ||
* A single inline node in a schema can be set to be a linebreak equivalent. When converting between block types that support the node | ||
* and block types that don't but have whitespace set to "pre", setBlockType will convert between newline characters to or from linebreak nodes as appropriate. | ||
*/ | ||
linebreakReplacement?: boolean; | ||
/** | ||
* https://prosemirror.net/docs/ref/#model.NodeSpec.whitespace | ||
@@ -168,0 +176,0 @@ * |
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
586942
15433