UNPKG

liquid-node

Version:

Node.js port of Tobias Lütke's Liquid template engine.

25 lines (24 loc) 1.65 kB
module.exports = class Liquid @FilterSeparator = /\|/ @ArgumentSeparator = /,/ @FilterArgumentSeparator = /\:/ @VariableAttributeSeparator = /\./ @TagStart = /\{\%/ @TagEnd = /\%\}/ @VariableSignature = /\(?[\w\-\.\[\]]\)?/ @VariableSegment = /[\w\-]/ @VariableStart = /\{\{/ @VariableEnd = /\}\}/ @VariableIncompleteEnd = /\}\}?/ @QuotedString = /"[^"]*"|'[^']*'/ @QuotedFragment = ///#{@QuotedString.source}|(?:[^\s,\|'"]|#{@QuotedString.source})+/// @StrictQuotedFragment = /"[^"]+"|'[^']+'|[^\s|:,]+/ @FirstFilterArgument = ///#{@FilterArgumentSeparator.source}(?:#{@StrictQuotedFragment.source})/// @OtherFilterArgument = ///#{@ArgumentSeparator.source}(?:#{@StrictQuotedFragment.source})/// @SpacelessFilter = ///^(?:'[^']+'|"[^"]+"|[^'"])*#{@FilterSeparator.source}(?:#{@StrictQuotedFragment.source})(?:#{@FirstFilterArgument.source}(?:#{@OtherFilterArgument.source})*)?/// @Expression = ///(?:#{@QuotedFragment.source}(?:#{@SpacelessFilter.source})*)/// @TagAttributes = ///(\w+)\s*\:\s*(#{@QuotedFragment.source})/// @AnyStartingTag = /\{\{|\{\%/ @PartialTemplateParser = ///#{@TagStart.source}.*?#{@TagEnd.source}|#{@VariableStart.source}.*?#{@VariableIncompleteEnd.source}/// @TemplateParser = ///(#{@PartialTemplateParser.source}|#{@AnyStartingTag.source})/// @VariableParser = ///\[[^\]]+\]|#{@VariableSegment.source}+\??///