@textlint/ast-node-types
Advanced tools
Comparing version 12.6.1 to 13.0.0
@@ -1,117 +0,4 @@ | ||
/** | ||
* AST Node types list on TxtNode. | ||
* Constant value of types | ||
* @see https://github.com/textlint/textlint/blob/master/docs/txtnode.md | ||
*/ | ||
import { TypeofTxtNode } from "./TypeofTxtNode"; | ||
export declare enum ASTNodeTypes { | ||
Document = "Document", | ||
DocumentExit = "Document:exit", | ||
Paragraph = "Paragraph", | ||
ParagraphExit = "Paragraph:exit", | ||
BlockQuote = "BlockQuote", | ||
BlockQuoteExit = "BlockQuote:exit", | ||
ListItem = "ListItem", | ||
ListItemExit = "ListItem:exit", | ||
List = "List", | ||
ListExit = "List:exit", | ||
Header = "Header", | ||
HeaderExit = "Header:exit", | ||
CodeBlock = "CodeBlock", | ||
CodeBlockExit = "CodeBlock:exit", | ||
HtmlBlock = "HtmlBlock", | ||
HtmlBlockExit = "HtmlBlock:exit", | ||
HorizontalRule = "HorizontalRule", | ||
HorizontalRuleExit = "HorizontalRule:exit", | ||
Comment = "Comment", | ||
CommentExit = "Comment:exit", | ||
/** | ||
* @deprecated | ||
*/ | ||
ReferenceDef = "ReferenceDef", | ||
/** | ||
* @deprecated | ||
*/ | ||
ReferenceDefExit = "ReferenceDef:exit", | ||
Str = "Str", | ||
StrExit = "Str:exit", | ||
Break = "Break", | ||
BreakExit = "Break:exit", | ||
Emphasis = "Emphasis", | ||
EmphasisExit = "Emphasis:exit", | ||
Strong = "Strong", | ||
StrongExit = "Strong:exit", | ||
Html = "Html", | ||
HtmlExit = "Html:exit", | ||
Link = "Link", | ||
LinkExit = "Link:exit", | ||
Image = "Image", | ||
ImageExit = "Image:exit", | ||
Code = "Code", | ||
CodeExit = "Code:exit", | ||
Delete = "Delete", | ||
DeleteExit = "Delete:exit" | ||
} | ||
/** | ||
* Key of ASTNodeTypes or any string | ||
* For example, TxtNodeType is "Document". | ||
*/ | ||
export type TxtNodeType = keyof typeof ASTNodeTypes | string; | ||
/** | ||
* Type utility for TxtNodeType | ||
* Return TxtNode interface for the TxtNodeTYpe | ||
*/ | ||
export { TypeofTxtNode }; | ||
/** | ||
* Any TxtNode types | ||
*/ | ||
export type AnyTxtNode = TxtNode | TxtTextNode | TxtParentNode; | ||
/** | ||
* Basic TxtNode | ||
* Probably, Real TxtNode implementation has more properties. | ||
*/ | ||
export interface TxtNode { | ||
type: TxtNodeType; | ||
raw: string; | ||
range: TextNodeRange; | ||
loc: TxtNodeLineLocation; | ||
parent?: TxtNode; | ||
[index: string]: any; | ||
} | ||
/** | ||
* Location | ||
*/ | ||
export interface TxtNodeLineLocation { | ||
start: TxtNodePosition; | ||
end: TxtNodePosition; | ||
} | ||
/** | ||
* Position's line start with 1. | ||
* Position's column start with 0. | ||
* This is for compatibility with JavaScript AST. | ||
* https://gist.github.com/azu/8866b2cb9b7a933e01fe | ||
*/ | ||
export interface TxtNodePosition { | ||
line: number; | ||
column: number; | ||
} | ||
/** | ||
* Range starts with 0 | ||
*/ | ||
export type TextNodeRange = readonly [startIndex: number, endIndex: number]; | ||
/** | ||
* Text Node. | ||
* Text Node has inline value. | ||
* For example, `Str` Node is an TxtTextNode. | ||
*/ | ||
export interface TxtTextNode extends TxtNode { | ||
value: string; | ||
} | ||
/** | ||
* Parent Node. | ||
* Parent Node has children that are consist of TxtNode or TxtTextNode | ||
*/ | ||
export interface TxtParentNode extends TxtNode { | ||
children: Array<TxtNode | TxtTextNode>; | ||
} | ||
export { ASTNodeTypes } from "./ASTNodeTypes"; | ||
export type { AnyTxtNode, TxtNode, TxtParentNode, TxtTextNode, TxtBlockQuoteNode, TxtBreakNode, TxtCodeBlockNode, TxtCommentNode, TxtDeleteNode, TxtDocumentNode, TxtEmphasisNode, TxtHeaderNode, TxtHorizontalRuleNode, TxtHtmlNode, TxtImageNode, TxtLinkNode, TxtListItemNode, TxtListNode, TxtParagraphNode, TxtCodeNode, TxtStrNode, TxtStrongNode, TxtTableNode, TxtTableRowNode, TxtTableCellNode } from "./NodeType"; | ||
export type { TypeofTxtNode } from "./TypeofTxtNode"; | ||
//# sourceMappingURL=index.d.ts.map |
@@ -1,55 +0,6 @@ | ||
// MIT © 2017 azu | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.ASTNodeTypes = void 0; | ||
var ASTNodeTypes; | ||
(function (ASTNodeTypes) { | ||
ASTNodeTypes["Document"] = "Document"; | ||
ASTNodeTypes["DocumentExit"] = "Document:exit"; | ||
ASTNodeTypes["Paragraph"] = "Paragraph"; | ||
ASTNodeTypes["ParagraphExit"] = "Paragraph:exit"; | ||
ASTNodeTypes["BlockQuote"] = "BlockQuote"; | ||
ASTNodeTypes["BlockQuoteExit"] = "BlockQuote:exit"; | ||
ASTNodeTypes["ListItem"] = "ListItem"; | ||
ASTNodeTypes["ListItemExit"] = "ListItem:exit"; | ||
ASTNodeTypes["List"] = "List"; | ||
ASTNodeTypes["ListExit"] = "List:exit"; | ||
ASTNodeTypes["Header"] = "Header"; | ||
ASTNodeTypes["HeaderExit"] = "Header:exit"; | ||
ASTNodeTypes["CodeBlock"] = "CodeBlock"; | ||
ASTNodeTypes["CodeBlockExit"] = "CodeBlock:exit"; | ||
ASTNodeTypes["HtmlBlock"] = "HtmlBlock"; | ||
ASTNodeTypes["HtmlBlockExit"] = "HtmlBlock:exit"; | ||
ASTNodeTypes["HorizontalRule"] = "HorizontalRule"; | ||
ASTNodeTypes["HorizontalRuleExit"] = "HorizontalRule:exit"; | ||
ASTNodeTypes["Comment"] = "Comment"; | ||
ASTNodeTypes["CommentExit"] = "Comment:exit"; | ||
/** | ||
* @deprecated | ||
*/ | ||
ASTNodeTypes["ReferenceDef"] = "ReferenceDef"; | ||
/** | ||
* @deprecated | ||
*/ | ||
ASTNodeTypes["ReferenceDefExit"] = "ReferenceDef:exit"; | ||
// inline | ||
ASTNodeTypes["Str"] = "Str"; | ||
ASTNodeTypes["StrExit"] = "Str:exit"; | ||
ASTNodeTypes["Break"] = "Break"; | ||
ASTNodeTypes["BreakExit"] = "Break:exit"; | ||
ASTNodeTypes["Emphasis"] = "Emphasis"; | ||
ASTNodeTypes["EmphasisExit"] = "Emphasis:exit"; | ||
ASTNodeTypes["Strong"] = "Strong"; | ||
ASTNodeTypes["StrongExit"] = "Strong:exit"; | ||
ASTNodeTypes["Html"] = "Html"; | ||
ASTNodeTypes["HtmlExit"] = "Html:exit"; | ||
ASTNodeTypes["Link"] = "Link"; | ||
ASTNodeTypes["LinkExit"] = "Link:exit"; | ||
ASTNodeTypes["Image"] = "Image"; | ||
ASTNodeTypes["ImageExit"] = "Image:exit"; | ||
ASTNodeTypes["Code"] = "Code"; | ||
ASTNodeTypes["CodeExit"] = "Code:exit"; | ||
ASTNodeTypes["Delete"] = "Delete"; | ||
ASTNodeTypes["DeleteExit"] = "Delete:exit"; | ||
})(ASTNodeTypes = exports.ASTNodeTypes || (exports.ASTNodeTypes = {})); | ||
var ASTNodeTypes_1 = require("./ASTNodeTypes"); | ||
Object.defineProperty(exports, "ASTNodeTypes", { enumerable: true, get: function () { return ASTNodeTypes_1.ASTNodeTypes; } }); | ||
//# sourceMappingURL=index.js.map |
@@ -1,10 +0,13 @@ | ||
import { ASTNodeTypes, TxtNode, TxtParentNode, TxtTextNode } from "./index"; | ||
import type { ASTNodeTypes } from "./ASTNodeTypes"; | ||
import type { AnyTxtNode, TxtBlockQuoteNode, TxtBreakNode, TxtCodeBlockNode, TxtCommentNode, TxtDeleteNode, TxtDocumentNode, TxtEmphasisNode, TxtHeaderNode, TxtHorizontalRuleNode, TxtHtmlNode, TxtImageNode, TxtCodeNode, TxtLinkNode, TxtListItemNode, TxtListNode, TxtParagraphNode, TxtStrNode, TxtStrongNode, TxtTableCellNode, TxtTableNode, TxtTableRowNode } from "./NodeType"; | ||
/** | ||
* Return TxtNode type of ASTNodeTypes | string | ||
* Type utility for TxtNodeType | ||
* Return TxtNode interface for the TxtNodeTYpe | ||
* | ||
* @example | ||
* ```ts | ||
* type NodeType = TxtNodeTypeOfNode<ASTNodeTypes.Document>; | ||
* ``` | ||
* type NodeType = TxtNodeTypeOfNode<ASTNodeTypes.Document>; | ||
*/ | ||
export type TypeofTxtNode<T extends ASTNodeTypes | string> = T extends ASTNodeTypes.Document ? TxtParentNode : T extends ASTNodeTypes.DocumentExit ? TxtParentNode : T extends ASTNodeTypes.Paragraph ? TxtParentNode : T extends ASTNodeTypes.ParagraphExit ? TxtParentNode : T extends ASTNodeTypes.BlockQuote ? TxtParentNode : T extends ASTNodeTypes.BlockQuoteExit ? TxtParentNode : T extends ASTNodeTypes.List ? TxtParentNode : T extends ASTNodeTypes.ListExit ? TxtParentNode : T extends ASTNodeTypes.ListItem ? TxtParentNode : T extends ASTNodeTypes.ListItemExit ? TxtParentNode : T extends ASTNodeTypes.Header ? TxtParentNode : T extends ASTNodeTypes.HeaderExit ? TxtParentNode : T extends ASTNodeTypes.CodeBlock ? TxtParentNode : T extends ASTNodeTypes.CodeBlockExit ? TxtParentNode : T extends ASTNodeTypes.HtmlBlock ? TxtParentNode : T extends ASTNodeTypes.HtmlBlockExit ? TxtParentNode : T extends ASTNodeTypes.Link ? TxtParentNode : T extends ASTNodeTypes.LinkExit ? TxtParentNode : T extends ASTNodeTypes.Delete ? TxtParentNode : T extends ASTNodeTypes.DeleteExit ? TxtParentNode : T extends ASTNodeTypes.Emphasis ? TxtParentNode : T extends ASTNodeTypes.EmphasisExit ? TxtParentNode : T extends ASTNodeTypes.Strong ? TxtParentNode : T extends ASTNodeTypes.StrongExit ? TxtParentNode : T extends ASTNodeTypes.Break ? TxtNode : T extends ASTNodeTypes.BreakExit ? TxtNode : T extends ASTNodeTypes.Image ? TxtNode : T extends ASTNodeTypes.ImageExit ? TxtNode : T extends ASTNodeTypes.HorizontalRule ? TxtNode : T extends ASTNodeTypes.HorizontalRuleExit ? TxtNode : T extends ASTNodeTypes.Comment ? TxtTextNode : T extends ASTNodeTypes.CommentExit ? TxtTextNode : T extends ASTNodeTypes.Str ? TxtTextNode : T extends ASTNodeTypes.StrExit ? TxtTextNode : T extends ASTNodeTypes.Code ? TxtTextNode : T extends ASTNodeTypes.CodeExit ? TxtTextNode : T extends ASTNodeTypes.Html ? TxtTextNode : T extends ASTNodeTypes.HtmlExit ? TxtTextNode : any; | ||
export type TypeofTxtNode<T extends ASTNodeTypes | string> = T extends ASTNodeTypes.Document ? TxtDocumentNode : T extends ASTNodeTypes.DocumentExit ? TxtDocumentNode : T extends ASTNodeTypes.Paragraph ? TxtParagraphNode : T extends ASTNodeTypes.ParagraphExit ? TxtParagraphNode : T extends ASTNodeTypes.BlockQuote ? TxtBlockQuoteNode : T extends ASTNodeTypes.BlockQuoteExit ? TxtBlockQuoteNode : T extends ASTNodeTypes.List ? TxtListNode : T extends ASTNodeTypes.ListExit ? TxtListNode : T extends ASTNodeTypes.ListItem ? TxtListItemNode : T extends ASTNodeTypes.ListItemExit ? TxtListItemNode : T extends ASTNodeTypes.Header ? TxtHeaderNode : T extends ASTNodeTypes.HeaderExit ? TxtHeaderNode : T extends ASTNodeTypes.CodeBlock ? TxtCodeBlockNode : T extends ASTNodeTypes.CodeBlockExit ? TxtCodeBlockNode : T extends ASTNodeTypes.HtmlBlock ? TxtHtmlNode : T extends ASTNodeTypes.HtmlBlockExit ? TxtHtmlNode : T extends ASTNodeTypes.Link ? TxtLinkNode : T extends ASTNodeTypes.LinkExit ? TxtLinkNode : T extends ASTNodeTypes.Delete ? TxtDeleteNode : T extends ASTNodeTypes.DeleteExit ? TxtDeleteNode : T extends ASTNodeTypes.Emphasis ? TxtEmphasisNode : T extends ASTNodeTypes.EmphasisExit ? TxtEmphasisNode : T extends ASTNodeTypes.Strong ? TxtStrongNode : T extends ASTNodeTypes.StrongExit ? TxtStrongNode : T extends ASTNodeTypes.Break ? TxtBreakNode : T extends ASTNodeTypes.BreakExit ? TxtBreakNode : T extends ASTNodeTypes.Image ? TxtImageNode : T extends ASTNodeTypes.ImageExit ? TxtImageNode : T extends ASTNodeTypes.HorizontalRule ? TxtHorizontalRuleNode : T extends ASTNodeTypes.HorizontalRuleExit ? TxtHorizontalRuleNode : T extends ASTNodeTypes.Comment ? TxtCommentNode : T extends ASTNodeTypes.CommentExit ? TxtCommentNode : T extends ASTNodeTypes.Str ? TxtStrNode : T extends ASTNodeTypes.StrExit ? TxtStrNode : T extends ASTNodeTypes.Code ? TxtCodeNode : T extends ASTNodeTypes.CodeExit ? TxtCodeNode : T extends ASTNodeTypes.Html ? TxtHtmlNode : T extends ASTNodeTypes.HtmlExit ? TxtHtmlNode : T extends ASTNodeTypes.Table ? TxtTableNode : T extends ASTNodeTypes.TableExit ? TxtTableNode : T extends ASTNodeTypes.TableRow ? TxtTableRowNode : T extends ASTNodeTypes.TableRowExit ? TxtTableRowNode : T extends ASTNodeTypes.TableCell ? TxtTableCellNode : T extends ASTNodeTypes.TableCellExit ? TxtTableCellNode : AnyTxtNode; | ||
//# sourceMappingURL=TypeofTxtNode.d.ts.map |
@@ -1,117 +0,4 @@ | ||
/** | ||
* AST Node types list on TxtNode. | ||
* Constant value of types | ||
* @see https://github.com/textlint/textlint/blob/master/docs/txtnode.md | ||
*/ | ||
import { TypeofTxtNode } from "./TypeofTxtNode"; | ||
export declare enum ASTNodeTypes { | ||
Document = "Document", | ||
DocumentExit = "Document:exit", | ||
Paragraph = "Paragraph", | ||
ParagraphExit = "Paragraph:exit", | ||
BlockQuote = "BlockQuote", | ||
BlockQuoteExit = "BlockQuote:exit", | ||
ListItem = "ListItem", | ||
ListItemExit = "ListItem:exit", | ||
List = "List", | ||
ListExit = "List:exit", | ||
Header = "Header", | ||
HeaderExit = "Header:exit", | ||
CodeBlock = "CodeBlock", | ||
CodeBlockExit = "CodeBlock:exit", | ||
HtmlBlock = "HtmlBlock", | ||
HtmlBlockExit = "HtmlBlock:exit", | ||
HorizontalRule = "HorizontalRule", | ||
HorizontalRuleExit = "HorizontalRule:exit", | ||
Comment = "Comment", | ||
CommentExit = "Comment:exit", | ||
/** | ||
* @deprecated | ||
*/ | ||
ReferenceDef = "ReferenceDef", | ||
/** | ||
* @deprecated | ||
*/ | ||
ReferenceDefExit = "ReferenceDef:exit", | ||
Str = "Str", | ||
StrExit = "Str:exit", | ||
Break = "Break", | ||
BreakExit = "Break:exit", | ||
Emphasis = "Emphasis", | ||
EmphasisExit = "Emphasis:exit", | ||
Strong = "Strong", | ||
StrongExit = "Strong:exit", | ||
Html = "Html", | ||
HtmlExit = "Html:exit", | ||
Link = "Link", | ||
LinkExit = "Link:exit", | ||
Image = "Image", | ||
ImageExit = "Image:exit", | ||
Code = "Code", | ||
CodeExit = "Code:exit", | ||
Delete = "Delete", | ||
DeleteExit = "Delete:exit" | ||
} | ||
/** | ||
* Key of ASTNodeTypes or any string | ||
* For example, TxtNodeType is "Document". | ||
*/ | ||
export type TxtNodeType = keyof typeof ASTNodeTypes | string; | ||
/** | ||
* Type utility for TxtNodeType | ||
* Return TxtNode interface for the TxtNodeTYpe | ||
*/ | ||
export { TypeofTxtNode }; | ||
/** | ||
* Any TxtNode types | ||
*/ | ||
export type AnyTxtNode = TxtNode | TxtTextNode | TxtParentNode; | ||
/** | ||
* Basic TxtNode | ||
* Probably, Real TxtNode implementation has more properties. | ||
*/ | ||
export interface TxtNode { | ||
type: TxtNodeType; | ||
raw: string; | ||
range: TextNodeRange; | ||
loc: TxtNodeLineLocation; | ||
parent?: TxtNode; | ||
[index: string]: any; | ||
} | ||
/** | ||
* Location | ||
*/ | ||
export interface TxtNodeLineLocation { | ||
start: TxtNodePosition; | ||
end: TxtNodePosition; | ||
} | ||
/** | ||
* Position's line start with 1. | ||
* Position's column start with 0. | ||
* This is for compatibility with JavaScript AST. | ||
* https://gist.github.com/azu/8866b2cb9b7a933e01fe | ||
*/ | ||
export interface TxtNodePosition { | ||
line: number; | ||
column: number; | ||
} | ||
/** | ||
* Range starts with 0 | ||
*/ | ||
export type TextNodeRange = readonly [startIndex: number, endIndex: number]; | ||
/** | ||
* Text Node. | ||
* Text Node has inline value. | ||
* For example, `Str` Node is an TxtTextNode. | ||
*/ | ||
export interface TxtTextNode extends TxtNode { | ||
value: string; | ||
} | ||
/** | ||
* Parent Node. | ||
* Parent Node has children that are consist of TxtNode or TxtTextNode | ||
*/ | ||
export interface TxtParentNode extends TxtNode { | ||
children: Array<TxtNode | TxtTextNode>; | ||
} | ||
export { ASTNodeTypes } from "./ASTNodeTypes"; | ||
export type { AnyTxtNode, TxtNode, TxtParentNode, TxtTextNode, TxtBlockQuoteNode, TxtBreakNode, TxtCodeBlockNode, TxtCommentNode, TxtDeleteNode, TxtDocumentNode, TxtEmphasisNode, TxtHeaderNode, TxtHorizontalRuleNode, TxtHtmlNode, TxtImageNode, TxtLinkNode, TxtListItemNode, TxtListNode, TxtParagraphNode, TxtCodeNode, TxtStrNode, TxtStrongNode, TxtTableNode, TxtTableRowNode, TxtTableCellNode } from "./NodeType"; | ||
export type { TypeofTxtNode } from "./TypeofTxtNode"; | ||
//# sourceMappingURL=index.d.ts.map |
@@ -1,53 +0,2 @@ | ||
// MIT © 2017 azu | ||
"use strict"; | ||
export var ASTNodeTypes; | ||
(function (ASTNodeTypes) { | ||
ASTNodeTypes["Document"] = "Document"; | ||
ASTNodeTypes["DocumentExit"] = "Document:exit"; | ||
ASTNodeTypes["Paragraph"] = "Paragraph"; | ||
ASTNodeTypes["ParagraphExit"] = "Paragraph:exit"; | ||
ASTNodeTypes["BlockQuote"] = "BlockQuote"; | ||
ASTNodeTypes["BlockQuoteExit"] = "BlockQuote:exit"; | ||
ASTNodeTypes["ListItem"] = "ListItem"; | ||
ASTNodeTypes["ListItemExit"] = "ListItem:exit"; | ||
ASTNodeTypes["List"] = "List"; | ||
ASTNodeTypes["ListExit"] = "List:exit"; | ||
ASTNodeTypes["Header"] = "Header"; | ||
ASTNodeTypes["HeaderExit"] = "Header:exit"; | ||
ASTNodeTypes["CodeBlock"] = "CodeBlock"; | ||
ASTNodeTypes["CodeBlockExit"] = "CodeBlock:exit"; | ||
ASTNodeTypes["HtmlBlock"] = "HtmlBlock"; | ||
ASTNodeTypes["HtmlBlockExit"] = "HtmlBlock:exit"; | ||
ASTNodeTypes["HorizontalRule"] = "HorizontalRule"; | ||
ASTNodeTypes["HorizontalRuleExit"] = "HorizontalRule:exit"; | ||
ASTNodeTypes["Comment"] = "Comment"; | ||
ASTNodeTypes["CommentExit"] = "Comment:exit"; | ||
/** | ||
* @deprecated | ||
*/ | ||
ASTNodeTypes["ReferenceDef"] = "ReferenceDef"; | ||
/** | ||
* @deprecated | ||
*/ | ||
ASTNodeTypes["ReferenceDefExit"] = "ReferenceDef:exit"; | ||
// inline | ||
ASTNodeTypes["Str"] = "Str"; | ||
ASTNodeTypes["StrExit"] = "Str:exit"; | ||
ASTNodeTypes["Break"] = "Break"; | ||
ASTNodeTypes["BreakExit"] = "Break:exit"; | ||
ASTNodeTypes["Emphasis"] = "Emphasis"; | ||
ASTNodeTypes["EmphasisExit"] = "Emphasis:exit"; | ||
ASTNodeTypes["Strong"] = "Strong"; | ||
ASTNodeTypes["StrongExit"] = "Strong:exit"; | ||
ASTNodeTypes["Html"] = "Html"; | ||
ASTNodeTypes["HtmlExit"] = "Html:exit"; | ||
ASTNodeTypes["Link"] = "Link"; | ||
ASTNodeTypes["LinkExit"] = "Link:exit"; | ||
ASTNodeTypes["Image"] = "Image"; | ||
ASTNodeTypes["ImageExit"] = "Image:exit"; | ||
ASTNodeTypes["Code"] = "Code"; | ||
ASTNodeTypes["CodeExit"] = "Code:exit"; | ||
ASTNodeTypes["Delete"] = "Delete"; | ||
ASTNodeTypes["DeleteExit"] = "Delete:exit"; | ||
})(ASTNodeTypes || (ASTNodeTypes = {})); | ||
export { ASTNodeTypes } from "./ASTNodeTypes"; | ||
//# sourceMappingURL=index.js.map |
@@ -1,10 +0,13 @@ | ||
import { ASTNodeTypes, TxtNode, TxtParentNode, TxtTextNode } from "./index"; | ||
import type { ASTNodeTypes } from "./ASTNodeTypes"; | ||
import type { AnyTxtNode, TxtBlockQuoteNode, TxtBreakNode, TxtCodeBlockNode, TxtCommentNode, TxtDeleteNode, TxtDocumentNode, TxtEmphasisNode, TxtHeaderNode, TxtHorizontalRuleNode, TxtHtmlNode, TxtImageNode, TxtCodeNode, TxtLinkNode, TxtListItemNode, TxtListNode, TxtParagraphNode, TxtStrNode, TxtStrongNode, TxtTableCellNode, TxtTableNode, TxtTableRowNode } from "./NodeType"; | ||
/** | ||
* Return TxtNode type of ASTNodeTypes | string | ||
* Type utility for TxtNodeType | ||
* Return TxtNode interface for the TxtNodeTYpe | ||
* | ||
* @example | ||
* ```ts | ||
* type NodeType = TxtNodeTypeOfNode<ASTNodeTypes.Document>; | ||
* ``` | ||
* type NodeType = TxtNodeTypeOfNode<ASTNodeTypes.Document>; | ||
*/ | ||
export type TypeofTxtNode<T extends ASTNodeTypes | string> = T extends ASTNodeTypes.Document ? TxtParentNode : T extends ASTNodeTypes.DocumentExit ? TxtParentNode : T extends ASTNodeTypes.Paragraph ? TxtParentNode : T extends ASTNodeTypes.ParagraphExit ? TxtParentNode : T extends ASTNodeTypes.BlockQuote ? TxtParentNode : T extends ASTNodeTypes.BlockQuoteExit ? TxtParentNode : T extends ASTNodeTypes.List ? TxtParentNode : T extends ASTNodeTypes.ListExit ? TxtParentNode : T extends ASTNodeTypes.ListItem ? TxtParentNode : T extends ASTNodeTypes.ListItemExit ? TxtParentNode : T extends ASTNodeTypes.Header ? TxtParentNode : T extends ASTNodeTypes.HeaderExit ? TxtParentNode : T extends ASTNodeTypes.CodeBlock ? TxtParentNode : T extends ASTNodeTypes.CodeBlockExit ? TxtParentNode : T extends ASTNodeTypes.HtmlBlock ? TxtParentNode : T extends ASTNodeTypes.HtmlBlockExit ? TxtParentNode : T extends ASTNodeTypes.Link ? TxtParentNode : T extends ASTNodeTypes.LinkExit ? TxtParentNode : T extends ASTNodeTypes.Delete ? TxtParentNode : T extends ASTNodeTypes.DeleteExit ? TxtParentNode : T extends ASTNodeTypes.Emphasis ? TxtParentNode : T extends ASTNodeTypes.EmphasisExit ? TxtParentNode : T extends ASTNodeTypes.Strong ? TxtParentNode : T extends ASTNodeTypes.StrongExit ? TxtParentNode : T extends ASTNodeTypes.Break ? TxtNode : T extends ASTNodeTypes.BreakExit ? TxtNode : T extends ASTNodeTypes.Image ? TxtNode : T extends ASTNodeTypes.ImageExit ? TxtNode : T extends ASTNodeTypes.HorizontalRule ? TxtNode : T extends ASTNodeTypes.HorizontalRuleExit ? TxtNode : T extends ASTNodeTypes.Comment ? TxtTextNode : T extends ASTNodeTypes.CommentExit ? TxtTextNode : T extends ASTNodeTypes.Str ? TxtTextNode : T extends ASTNodeTypes.StrExit ? TxtTextNode : T extends ASTNodeTypes.Code ? TxtTextNode : T extends ASTNodeTypes.CodeExit ? TxtTextNode : T extends ASTNodeTypes.Html ? TxtTextNode : T extends ASTNodeTypes.HtmlExit ? TxtTextNode : any; | ||
export type TypeofTxtNode<T extends ASTNodeTypes | string> = T extends ASTNodeTypes.Document ? TxtDocumentNode : T extends ASTNodeTypes.DocumentExit ? TxtDocumentNode : T extends ASTNodeTypes.Paragraph ? TxtParagraphNode : T extends ASTNodeTypes.ParagraphExit ? TxtParagraphNode : T extends ASTNodeTypes.BlockQuote ? TxtBlockQuoteNode : T extends ASTNodeTypes.BlockQuoteExit ? TxtBlockQuoteNode : T extends ASTNodeTypes.List ? TxtListNode : T extends ASTNodeTypes.ListExit ? TxtListNode : T extends ASTNodeTypes.ListItem ? TxtListItemNode : T extends ASTNodeTypes.ListItemExit ? TxtListItemNode : T extends ASTNodeTypes.Header ? TxtHeaderNode : T extends ASTNodeTypes.HeaderExit ? TxtHeaderNode : T extends ASTNodeTypes.CodeBlock ? TxtCodeBlockNode : T extends ASTNodeTypes.CodeBlockExit ? TxtCodeBlockNode : T extends ASTNodeTypes.HtmlBlock ? TxtHtmlNode : T extends ASTNodeTypes.HtmlBlockExit ? TxtHtmlNode : T extends ASTNodeTypes.Link ? TxtLinkNode : T extends ASTNodeTypes.LinkExit ? TxtLinkNode : T extends ASTNodeTypes.Delete ? TxtDeleteNode : T extends ASTNodeTypes.DeleteExit ? TxtDeleteNode : T extends ASTNodeTypes.Emphasis ? TxtEmphasisNode : T extends ASTNodeTypes.EmphasisExit ? TxtEmphasisNode : T extends ASTNodeTypes.Strong ? TxtStrongNode : T extends ASTNodeTypes.StrongExit ? TxtStrongNode : T extends ASTNodeTypes.Break ? TxtBreakNode : T extends ASTNodeTypes.BreakExit ? TxtBreakNode : T extends ASTNodeTypes.Image ? TxtImageNode : T extends ASTNodeTypes.ImageExit ? TxtImageNode : T extends ASTNodeTypes.HorizontalRule ? TxtHorizontalRuleNode : T extends ASTNodeTypes.HorizontalRuleExit ? TxtHorizontalRuleNode : T extends ASTNodeTypes.Comment ? TxtCommentNode : T extends ASTNodeTypes.CommentExit ? TxtCommentNode : T extends ASTNodeTypes.Str ? TxtStrNode : T extends ASTNodeTypes.StrExit ? TxtStrNode : T extends ASTNodeTypes.Code ? TxtCodeNode : T extends ASTNodeTypes.CodeExit ? TxtCodeNode : T extends ASTNodeTypes.Html ? TxtHtmlNode : T extends ASTNodeTypes.HtmlExit ? TxtHtmlNode : T extends ASTNodeTypes.Table ? TxtTableNode : T extends ASTNodeTypes.TableExit ? TxtTableNode : T extends ASTNodeTypes.TableRow ? TxtTableRowNode : T extends ASTNodeTypes.TableRowExit ? TxtTableRowNode : T extends ASTNodeTypes.TableCell ? TxtTableCellNode : T extends ASTNodeTypes.TableCellExit ? TxtTableCellNode : AnyTxtNode; | ||
//# sourceMappingURL=TypeofTxtNode.d.ts.map |
{ | ||
"name": "@textlint/ast-node-types", | ||
"version": "12.6.1", | ||
"version": "13.0.0", | ||
"description": "textlint AST node type definition.", | ||
@@ -38,3 +38,3 @@ "keywords": [ | ||
}, | ||
"gitHead": "d2b1ea21b70dd86190f530ba3c1ecad697c8f39d" | ||
"gitHead": "5ab6892e6c3f100751542f2c84bc91e78c584f7f" | ||
} |
165
src/index.ts
@@ -1,134 +0,31 @@ | ||
// MIT © 2017 azu | ||
"use strict"; | ||
/** | ||
* AST Node types list on TxtNode. | ||
* Constant value of types | ||
* @see https://github.com/textlint/textlint/blob/master/docs/txtnode.md | ||
*/ | ||
import { TypeofTxtNode } from "./TypeofTxtNode"; | ||
export enum ASTNodeTypes { | ||
Document = "Document", | ||
DocumentExit = "Document:exit", | ||
Paragraph = "Paragraph", | ||
ParagraphExit = "Paragraph:exit", | ||
BlockQuote = "BlockQuote", | ||
BlockQuoteExit = "BlockQuote:exit", | ||
ListItem = "ListItem", | ||
ListItemExit = "ListItem:exit", | ||
List = "List", | ||
ListExit = "List:exit", | ||
Header = "Header", | ||
HeaderExit = "Header:exit", | ||
CodeBlock = "CodeBlock", | ||
CodeBlockExit = "CodeBlock:exit", | ||
HtmlBlock = "HtmlBlock", | ||
HtmlBlockExit = "HtmlBlock:exit", | ||
HorizontalRule = "HorizontalRule", | ||
HorizontalRuleExit = "HorizontalRule:exit", | ||
Comment = "Comment", | ||
CommentExit = "Comment:exit", | ||
/** | ||
* @deprecated | ||
*/ | ||
ReferenceDef = "ReferenceDef", | ||
/** | ||
* @deprecated | ||
*/ | ||
ReferenceDefExit = "ReferenceDef:exit", | ||
// inline | ||
Str = "Str", | ||
StrExit = "Str:exit", | ||
Break = "Break", // well-known Hard Break | ||
BreakExit = "Break:exit", // well-known Hard Break | ||
Emphasis = "Emphasis", | ||
EmphasisExit = "Emphasis:exit", | ||
Strong = "Strong", | ||
StrongExit = "Strong:exit", | ||
Html = "Html", | ||
HtmlExit = "Html:exit", | ||
Link = "Link", | ||
LinkExit = "Link:exit", | ||
Image = "Image", | ||
ImageExit = "Image:exit", | ||
Code = "Code", | ||
CodeExit = "Code:exit", | ||
Delete = "Delete", | ||
DeleteExit = "Delete:exit" | ||
} | ||
/** | ||
* Key of ASTNodeTypes or any string | ||
* For example, TxtNodeType is "Document". | ||
*/ | ||
export type TxtNodeType = keyof typeof ASTNodeTypes | string; | ||
/** | ||
* Type utility for TxtNodeType | ||
* Return TxtNode interface for the TxtNodeTYpe | ||
*/ | ||
export { TypeofTxtNode }; | ||
/** | ||
* Any TxtNode types | ||
*/ | ||
export type AnyTxtNode = TxtNode | TxtTextNode | TxtParentNode; | ||
/** | ||
* Basic TxtNode | ||
* Probably, Real TxtNode implementation has more properties. | ||
*/ | ||
export interface TxtNode { | ||
type: TxtNodeType; | ||
raw: string; | ||
range: TextNodeRange; | ||
loc: TxtNodeLineLocation; | ||
// parent is runtime information | ||
// Not need in AST | ||
// For example, top Root Node like `Document` has not parent. | ||
parent?: TxtNode; | ||
[index: string]: any; | ||
} | ||
/** | ||
* Location | ||
*/ | ||
export interface TxtNodeLineLocation { | ||
start: TxtNodePosition; | ||
end: TxtNodePosition; | ||
} | ||
/** | ||
* Position's line start with 1. | ||
* Position's column start with 0. | ||
* This is for compatibility with JavaScript AST. | ||
* https://gist.github.com/azu/8866b2cb9b7a933e01fe | ||
*/ | ||
export interface TxtNodePosition { | ||
line: number; // start with 1 | ||
column: number; // start with 0 | ||
} | ||
/** | ||
* Range starts with 0 | ||
*/ | ||
export type TextNodeRange = readonly [startIndex: number, endIndex: number]; | ||
/** | ||
* Text Node. | ||
* Text Node has inline value. | ||
* For example, `Str` Node is an TxtTextNode. | ||
*/ | ||
export interface TxtTextNode extends TxtNode { | ||
value: string; | ||
} | ||
/** | ||
* Parent Node. | ||
* Parent Node has children that are consist of TxtNode or TxtTextNode | ||
*/ | ||
export interface TxtParentNode extends TxtNode { | ||
children: Array<TxtNode | TxtTextNode>; | ||
} | ||
export { ASTNodeTypes } from "./ASTNodeTypes"; | ||
export type { | ||
// abstract node types | ||
AnyTxtNode, | ||
TxtNode, | ||
TxtParentNode, | ||
TxtTextNode, | ||
// node types | ||
TxtBlockQuoteNode, | ||
TxtBreakNode, | ||
TxtCodeBlockNode, | ||
TxtCommentNode, | ||
TxtDeleteNode, | ||
TxtDocumentNode, | ||
TxtEmphasisNode, | ||
TxtHeaderNode, | ||
TxtHorizontalRuleNode, | ||
TxtHtmlNode, | ||
TxtImageNode, | ||
TxtLinkNode, | ||
TxtListItemNode, | ||
TxtListNode, | ||
TxtParagraphNode, | ||
TxtCodeNode, | ||
TxtStrNode, | ||
TxtStrongNode, | ||
TxtTableNode, | ||
TxtTableRowNode, | ||
TxtTableCellNode | ||
} from "./NodeType"; | ||
export type { TypeofTxtNode } from "./TypeofTxtNode"; |
@@ -1,8 +0,35 @@ | ||
import { ASTNodeTypes, TxtNode, TxtParentNode, TxtTextNode } from "./index"; | ||
import type { ASTNodeTypes } from "./ASTNodeTypes"; | ||
import type { | ||
AnyTxtNode, | ||
TxtBlockQuoteNode, | ||
TxtBreakNode, | ||
TxtCodeBlockNode, | ||
TxtCommentNode, | ||
TxtDeleteNode, | ||
TxtDocumentNode, | ||
TxtEmphasisNode, | ||
TxtHeaderNode, | ||
TxtHorizontalRuleNode, | ||
TxtHtmlNode, | ||
TxtImageNode, | ||
TxtCodeNode, | ||
TxtLinkNode, | ||
TxtListItemNode, | ||
TxtListNode, | ||
TxtParagraphNode, | ||
TxtStrNode, | ||
TxtStrongNode, | ||
TxtTableCellNode, | ||
TxtTableNode, | ||
TxtTableRowNode | ||
} from "./NodeType"; | ||
/** | ||
* Return TxtNode type of ASTNodeTypes | string | ||
* Type utility for TxtNodeType | ||
* Return TxtNode interface for the TxtNodeTYpe | ||
* | ||
* @example | ||
* ```ts | ||
* type NodeType = TxtNodeTypeOfNode<ASTNodeTypes.Document>; | ||
* ``` | ||
* type NodeType = TxtNodeTypeOfNode<ASTNodeTypes.Document>; | ||
*/ | ||
@@ -12,81 +39,93 @@ export type TypeofTxtNode<T extends ASTNodeTypes | string> = | ||
T extends ASTNodeTypes.Document | ||
? TxtParentNode | ||
? TxtDocumentNode | ||
: T extends ASTNodeTypes.DocumentExit | ||
? TxtParentNode // Paragraph Str. | ||
: T extends ASTNodeTypes.Paragraph | ||
? TxtParentNode | ||
? TxtDocumentNode | ||
: T extends ASTNodeTypes.Paragraph // Paragraph Str. | ||
? TxtParagraphNode | ||
: T extends ASTNodeTypes.ParagraphExit | ||
? TxtParentNode // > Str | ||
: T extends ASTNodeTypes.BlockQuote | ||
? TxtParentNode | ||
? TxtParagraphNode | ||
: T extends ASTNodeTypes.BlockQuote // > Str | ||
? TxtBlockQuoteNode | ||
: T extends ASTNodeTypes.BlockQuoteExit | ||
? TxtParentNode // - item | ||
: T extends ASTNodeTypes.List | ||
? TxtParentNode | ||
? TxtBlockQuoteNode | ||
: T extends ASTNodeTypes.List // - item | ||
? TxtListNode | ||
: T extends ASTNodeTypes.ListExit | ||
? TxtParentNode // - item | ||
: T extends ASTNodeTypes.ListItem | ||
? TxtParentNode | ||
? TxtListNode | ||
: T extends ASTNodeTypes.ListItem // - item | ||
? TxtListItemNode | ||
: T extends ASTNodeTypes.ListItemExit | ||
? TxtParentNode // # Str | ||
: T extends ASTNodeTypes.Header | ||
? TxtParentNode | ||
? TxtListItemNode | ||
: T extends ASTNodeTypes.Header // # Str | ||
? TxtHeaderNode | ||
: T extends ASTNodeTypes.HeaderExit | ||
? TxtParentNode | ||
: /* ``` | ||
* code | ||
* ``` | ||
*/ | ||
T extends ASTNodeTypes.CodeBlock | ||
? TxtParentNode | ||
? TxtHeaderNode | ||
: T extends ASTNodeTypes.CodeBlock | ||
? /* ``` | ||
* code block | ||
* ``` | ||
*/ | ||
TxtCodeBlockNode | ||
: T extends ASTNodeTypes.CodeBlockExit | ||
? TxtParentNode // <div>\n</div> | ||
: T extends ASTNodeTypes.HtmlBlock | ||
? TxtParentNode | ||
? TxtCodeBlockNode | ||
: T extends ASTNodeTypes.HtmlBlock // <div>\n</div> | ||
? TxtHtmlNode | ||
: T extends ASTNodeTypes.HtmlBlockExit | ||
? TxtParentNode // [link](https://example.com) | ||
: T extends ASTNodeTypes.Link | ||
? TxtParentNode | ||
? TxtHtmlNode | ||
: T extends ASTNodeTypes.Link // [link](https://example.com) | ||
? TxtLinkNode | ||
: T extends ASTNodeTypes.LinkExit | ||
? TxtParentNode // ~~Str~~ | ||
: T extends ASTNodeTypes.Delete | ||
? TxtParentNode | ||
? TxtLinkNode | ||
: T extends ASTNodeTypes.Delete // ~~Str~~ | ||
? TxtDeleteNode | ||
: T extends ASTNodeTypes.DeleteExit | ||
? TxtParentNode // *Str* | ||
: T extends ASTNodeTypes.Emphasis | ||
? TxtParentNode | ||
? TxtDeleteNode | ||
: T extends ASTNodeTypes.Emphasis // *Str* | ||
? TxtEmphasisNode | ||
: T extends ASTNodeTypes.EmphasisExit | ||
? TxtParentNode // __Str__ | ||
: T extends ASTNodeTypes.Strong | ||
? TxtParentNode | ||
? TxtEmphasisNode | ||
: T extends ASTNodeTypes.Strong // __Str__ | ||
? TxtStrongNode | ||
: T extends ASTNodeTypes.StrongExit | ||
? TxtParentNode // Str<space><space> | ||
: T extends ASTNodeTypes.Break | ||
? TxtNode | ||
? TxtStrongNode | ||
: T extends ASTNodeTypes.Break // Str<space><space> | ||
? TxtBreakNode | ||
: T extends ASTNodeTypes.BreakExit | ||
? TxtNode // ![alt](https://example.com/img) | ||
: T extends ASTNodeTypes.Image | ||
? TxtNode | ||
? TxtBreakNode | ||
: T extends ASTNodeTypes.Image // ![alt](https://example.com/img) | ||
? TxtImageNode | ||
: T extends ASTNodeTypes.ImageExit | ||
? TxtNode // ---- | ||
: T extends ASTNodeTypes.HorizontalRule | ||
? TxtNode | ||
? TxtImageNode | ||
: T extends ASTNodeTypes.HorizontalRule // ---- | ||
? TxtHorizontalRuleNode | ||
: T extends ASTNodeTypes.HorizontalRuleExit | ||
? TxtNode // <!-- Str --> | ||
: T extends ASTNodeTypes.Comment | ||
? TxtTextNode | ||
? TxtHorizontalRuleNode | ||
: T extends ASTNodeTypes.Comment // Markdown does not have comment(It is Html comment). Some plugins use comment as a marker. | ||
? TxtCommentNode | ||
: T extends ASTNodeTypes.CommentExit | ||
? TxtTextNode // Str | ||
: T extends ASTNodeTypes.Str | ||
? TxtTextNode | ||
? TxtCommentNode | ||
: T extends ASTNodeTypes.Str // Str | ||
? TxtStrNode | ||
: T extends ASTNodeTypes.StrExit | ||
? TxtTextNode // `code` | ||
: T extends ASTNodeTypes.Code | ||
? TxtTextNode | ||
? TxtStrNode | ||
: T extends ASTNodeTypes.Code // `code` | ||
? TxtCodeNode | ||
: T extends ASTNodeTypes.CodeExit | ||
? TxtTextNode // <span>Str</span> | ||
: T extends ASTNodeTypes.Html | ||
? TxtTextNode | ||
? TxtCodeNode | ||
: T extends ASTNodeTypes.Html // <span>Str</span> | ||
? TxtHtmlNode | ||
: T extends ASTNodeTypes.HtmlExit | ||
? TxtTextNode | ||
: any; | ||
? TxtHtmlNode | ||
: T extends ASTNodeTypes.Table | ||
? TxtTableNode | ||
: T extends ASTNodeTypes.TableExit | ||
? TxtTableNode | ||
: T extends ASTNodeTypes.TableRow | ||
? TxtTableRowNode | ||
: T extends ASTNodeTypes.TableRowExit | ||
? TxtTableRowNode | ||
: T extends ASTNodeTypes.TableCell | ||
? TxtTableCellNode | ||
: T extends ASTNodeTypes.TableCellExit | ||
? TxtTableCellNode | ||
: AnyTxtNode; |
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
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
Sorry, the diff of this file is not supported yet
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
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
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
135739
41
1231
1