UNPKG

@airtasker/form-schema-compiler

Version:
108 lines (94 loc) 4.78 kB
"use strict"; exports.__esModule = true; var _PRECEDENCE, _ANNOTATION_TYPES, _ANNOTATIONS; function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var TYPES = exports.TYPES = { Numeric: "Numeric", String: "String", Boolean: "Boolean", Object: "Object", Array: "Array", Null: "Null", RegExp: "RegExp", Identifier: "Identifier", Keyword: 'Keyword', AssignExpression: "AssignExpression", ObjectExpression: "ObjectExpression", ObjectProperty: "ObjectProperty", ArrayExpression: "ArrayExpression", BinaryExpression: "BinaryExpression", UnaryExpression: "UnaryExpression", CallExpression: "CallExpression", TemplateLiteral: "TemplateLiteral", MemberExpression: "MemberExpression", IfStatement: "IfStatement", Components: "Components", Operator: "Operator", Punctuation: "Punctuation", Raw: "Raw", Program: 'Program', BlockStatement: 'BlockStatement', PropertyBinding: 'PropertyBinding', EventBinding: 'EventBinding' }; /** those const not used in the app, leave here for reference export const PRIMITIVES = [ TYPES.Numeric, TYPES.String, TYPES.Boolean, TYPES.Null ]; export const OBJECTS = [TYPES.RegExp, TYPES.Identifier, TYPES.Component]; export const EXPRESSIONS = [ TYPES.ObjectExpression, TYPES.ArrayExpression, TYPES.BinaryExpression, TYPES.AssignExpression, TYPES.CallExpression, TYPES.UnaryExpression, TYPES.TemplateLiteral, ]; */ var OPERATORS = exports.OPERATORS = { Assign: "=", Add: "+", Subtract: "-", Multiply: "*", Remainder: "%", Divide: "/", GreaterThan: ">", GreaterThanOrEqualTo: ">=", LessThan: "<", LessThanOrEqualTo: "<=", EqualTo: "is", NotEqualTo: "isnt", And: "and", Or: "or", Match: "match", Not: "not" }; var PRECEDENCE = exports.PRECEDENCE = (_PRECEDENCE = {}, _defineProperty(_PRECEDENCE, OPERATORS.Assign, 1), _defineProperty(_PRECEDENCE, OPERATORS.Or, 2), _defineProperty(_PRECEDENCE, OPERATORS.And, 3), _defineProperty(_PRECEDENCE, OPERATORS.GreaterThan, 7), _defineProperty(_PRECEDENCE, OPERATORS.GreaterThanOrEqualTo, 7), _defineProperty(_PRECEDENCE, OPERATORS.LessThan, 7), _defineProperty(_PRECEDENCE, OPERATORS.LessThanOrEqualTo, 7), _defineProperty(_PRECEDENCE, OPERATORS.EqualTo, 7), _defineProperty(_PRECEDENCE, OPERATORS.NotEqualTo, 7), _defineProperty(_PRECEDENCE, OPERATORS.Match, 7), _defineProperty(_PRECEDENCE, OPERATORS.Add, 10), _defineProperty(_PRECEDENCE, OPERATORS.Subtract, 10), _defineProperty(_PRECEDENCE, OPERATORS.Multiply, 20), _defineProperty(_PRECEDENCE, OPERATORS.Divide, 20), _defineProperty(_PRECEDENCE, OPERATORS.Remainder, 20), _PRECEDENCE); var BOOLEANS = exports.BOOLEANS = ["false", "true"]; var IF_KEYWORDS = exports.IF_KEYWORDS = { If: 'if', Else: 'else', Then: 'then' }; var KEYWORDS = exports.KEYWORDS = [].concat(BOOLEANS, _toConsumableArray(Object.values(IF_KEYWORDS))); var PUNCTUATIONS = exports.PUNCTUATIONS = { Braces: ["{", "}"], SquareBrackets: ["[", "]"], Parentheses: ["(", ")"], Separator: ",", Colon: ":", BackQuote: "`", SemiColon: ";" }; var ANNOTATION_TYPES = exports.ANNOTATION_TYPES = (_ANNOTATION_TYPES = {}, _defineProperty(_ANNOTATION_TYPES, TYPES.PropertyBinding, TYPES.PropertyBinding), _defineProperty(_ANNOTATION_TYPES, TYPES.EventBinding, TYPES.EventBinding), _defineProperty(_ANNOTATION_TYPES, "Template", "Template"), _defineProperty(_ANNOTATION_TYPES, "Components", "Components"), _defineProperty(_ANNOTATION_TYPES, "TwoWayBinding", "TwoWayBinding"), _ANNOTATION_TYPES); var ANNOTATIONS = exports.ANNOTATIONS = (_ANNOTATIONS = {}, _defineProperty(_ANNOTATIONS, ANNOTATION_TYPES.PropertyBinding, ["{", "}"]), _defineProperty(_ANNOTATIONS, ANNOTATION_TYPES.Template, ["#", "#"]), _defineProperty(_ANNOTATIONS, ANNOTATION_TYPES.Components, ["<", ">"]), _defineProperty(_ANNOTATIONS, ANNOTATION_TYPES.EventBinding, ["(", ")"]), _defineProperty(_ANNOTATIONS, ANNOTATION_TYPES.TwoWayBinding, ["[", "]"]), _ANNOTATIONS); // [minimum version, maximum version] var COMPATIBLE_SCHEMA_VERSION = exports.COMPATIBLE_SCHEMA_VERSION = ["0.0.16", "0.1.3"];