yapp 2.2.45 → 2.2.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/README.md +2 -2
  2. package/example.html +1 -2
  3. package/example.js +824 -653
  4. package/index.html +1 -2
  5. package/lib/element/scrollable.js +3 -5
  6. package/lib/example/div/sizeable/left.js +2 -3
  7. package/lib/example/div/sizeable/middle.js +2 -3
  8. package/lib/example/div/sizeable/right.js +2 -3
  9. package/lib/example/div/sizeable/top.js +2 -3
  10. package/lib/example/textarea/bnf.js +2 -3
  11. package/lib/example/textarea/lexicalEntries.js +2 -3
  12. package/lib/example/textarea/parseTree.js +2 -3
  13. package/lib/example/textarea/tokens.js +2 -3
  14. package/lib/example/view/javascript.js +6 -8
  15. package/lib/example/view/json.js +6 -8
  16. package/lib/example/view/xml.js +6 -8
  17. package/lib/example/view.js +13 -17
  18. package/lib/example/yapp.js +2 -4
  19. package/lib/gutter.js +4 -7
  20. package/lib/index.js +20 -6
  21. package/lib/lexer/javascript.js +23 -13
  22. package/lib/lexer/json.js +23 -13
  23. package/lib/lexer/plainText.js +23 -13
  24. package/lib/lexer/xml.js +23 -13
  25. package/lib/lexer/yapp.js +88 -0
  26. package/lib/lineNumbers.js +3 -5
  27. package/lib/parser/javascript.js +19 -18
  28. package/lib/parser/json.js +19 -18
  29. package/lib/parser/plainText.js +19 -18
  30. package/lib/parser/xml.js +19 -18
  31. package/lib/parser/yapp.js +140 -0
  32. package/lib/plugin/javascript.js +3 -5
  33. package/lib/plugin/json.js +3 -5
  34. package/lib/plugin/plainText.js +3 -5
  35. package/lib/plugin/xml.js +3 -5
  36. package/lib/prettyPrinter.js +4 -7
  37. package/lib/processor/javascript.js +2 -3
  38. package/lib/processor/json.js +2 -3
  39. package/lib/processor/plainText.js +3 -5
  40. package/lib/processor/xml.js +2 -3
  41. package/lib/richTextarea.js +2 -3
  42. package/lib/syntax.js +2 -3
  43. package/lib/token/significant/argument.js +2 -3
  44. package/lib/token/significant/attribute.js +2 -3
  45. package/lib/token/significant/comment.js +2 -3
  46. package/lib/token/significant/error.js +2 -3
  47. package/lib/token/significant/jsx.js +2 -3
  48. package/lib/token/significant/name.js +2 -3
  49. package/lib/token/significant/string.js +2 -3
  50. package/lib/token/significant/variable.js +2 -3
  51. package/lib/utilities/rules.js +2 -3
  52. package/lib/yapp.js +3 -5
  53. package/package.json +4 -4
  54. package/src/example/view/javascript.js +4 -2
  55. package/src/example/view/json.js +4 -2
  56. package/src/example/view/xml.js +4 -2
  57. package/src/example/view.js +8 -8
  58. package/src/example/yapp.js +0 -1
  59. package/src/index.js +3 -1
  60. package/src/lexer/javascript.js +6 -4
  61. package/src/lexer/json.js +6 -4
  62. package/src/lexer/plainText.js +6 -4
  63. package/src/lexer/xml.js +6 -4
  64. package/src/lexer/yapp.js +5 -0
  65. package/src/parser/javascript.js +5 -26
  66. package/src/parser/json.js +5 -26
  67. package/src/parser/plainText.js +5 -26
  68. package/src/parser/xml.js +5 -26
  69. package/src/parser/yapp.js +52 -0
  70. package/lib/example/div/columns.js +0 -35
  71. package/lib/example/div/splitter/horizontal.js +0 -35
  72. package/lib/example/div/splitter/vertical.js +0 -35
  73. package/src/example/div/columns.js +0 -11
  74. package/src/example/div/splitter/horizontal.js +0 -12
  75. package/src/example/div/splitter/vertical.js +0 -12
package/src/parser/xml.js CHANGED
@@ -1,13 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { BNFLexer } from "occam-lexers";
4
- import { eliminateLeftRecursion } from "occam-grammar-utilities";
5
- import { BNFParser, CommonParser } from "occam-parsers";
6
-
7
- import { ruleMapFromRules, startRuleFromRules } from "../utilities/rules";
8
-
9
- const bnfLexer = BNFLexer.fromNothing(),
10
- bnfParser = BNFParser.fromNothing();
3
+ import YappParser from "./yapp";
11
4
 
12
5
  const bnf = `
13
6
 
@@ -48,26 +41,12 @@ const bnf = `
48
41
 
49
42
  `;
50
43
 
51
- export default class XMLParser extends CommonParser {
44
+ export default class XMLParser extends YappParser {
52
45
  static bnf = bnf;
53
46
 
54
- static fromNothing() {
55
- const tokens = bnfLexer.tokensFromBNF(bnf),
56
- rules = bnfParser.rulesFromTokens(tokens),
57
- xmlParser = XMLParser.fromRules(rules);
58
-
59
- return xmlParser;
60
- }
61
-
62
- static fromRules(rules) {
63
- const ruleMap = ruleMapFromRules(rules);
64
-
65
- let startRule = startRuleFromRules(rules);
66
-
67
- startRule = eliminateLeftRecursion(startRule, ruleMap);
47
+ static fromNothing() { return YappParser.fromNothing(XMLParser); }
68
48
 
69
- const xmlParser = new XMLParser(startRule, ruleMap);
49
+ static fromBNF(bnf) { return YappParser.fromBNF(XMLParser, bnf); }
70
50
 
71
- return xmlParser;
72
- }
51
+ static fromRules(rules) { return YappParser.fromRules(XMLParser, rules); }
73
52
  }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ import { BNFLexer } from "occam-lexers";
4
+ import { eliminateLeftRecursion } from "occam-grammar-utilities";
5
+ import { BNFParser, CommonParser } from "occam-parsers";
6
+
7
+ import { startRuleFromRules, ruleMapFromRules } from "../utilities/rules";
8
+
9
+ const bnfLexer = BNFLexer.fromNothing(),
10
+ bnfParser = BNFParser.fromNothing();
11
+
12
+ export default class YappParser extends CommonParser {
13
+ static fromNothing(Class) {
14
+ const { bnf } = Class,
15
+ rules = rulesFromBNF(bnf),
16
+ parser = parserFromRules(Class, rules);
17
+
18
+ return parser;
19
+ }
20
+
21
+ static fromBNF(Class, bnf) {
22
+ const rules = rulesFromBNF(bnf),
23
+ parser = parserFromRules(Class, rules);
24
+
25
+ return parser;
26
+ }
27
+
28
+ static fromRules(Class, rules) {
29
+ const parser = parserFromRules(Class, rules);
30
+
31
+ return parser;
32
+ }
33
+ }
34
+
35
+ function rulesFromBNF(bnf) {
36
+ const tokens = bnfLexer.tokensFromBNF(bnf),
37
+ rules = bnfParser.rulesFromTokens(tokens);
38
+
39
+ return rules;
40
+ }
41
+
42
+ function parserFromRules(Class, rules) {
43
+ const ruleMap = ruleMapFromRules(rules);
44
+
45
+ let startRule = startRuleFromRules(rules);
46
+
47
+ startRule = eliminateLeftRecursion(startRule, ruleMap);
48
+
49
+ const parser = new Class(startRule, ruleMap);
50
+
51
+ return parser;
52
+ }
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- exports.default = void 0;
6
- var _easyWithStyle = _interopRequireDefault(require("easy-with-style"));
7
- var _easyLayout = require("easy-layout");
8
- function _interopRequireDefault(obj) {
9
- return obj && obj.__esModule ? obj : {
10
- default: obj
11
- };
12
- }
13
- function _taggedTemplateLiteral(strings, raw) {
14
- if (!raw) {
15
- raw = strings.slice(0);
16
- }
17
- return Object.freeze(Object.defineProperties(strings, {
18
- raw: {
19
- value: Object.freeze(raw)
20
- }
21
- }));
22
- }
23
- function _templateObject() {
24
- var data = _taggedTemplateLiteral([
25
- "\n\n padding: 1rem;\n \n"
26
- ]);
27
- _templateObject = function _templateObject() {
28
- return data;
29
- };
30
- return data;
31
- }
32
- var _default = (0, _easyWithStyle).default(_easyLayout.ColumnsDiv)(_templateObject());
33
- exports.default = _default;
34
-
35
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9jb2x1bW5zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyBDb2x1bW5zRGl2IH0gZnJvbSBcImVhc3ktbGF5b3V0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZShDb2x1bW5zRGl2KWBcblxuICBwYWRkaW5nOiAxcmVtO1xuICBcbmA7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsQ0FBWTs7Ozs7QUFFVSxHQUFpQixDQUFqQixjQUFpQjtBQUVaLEdBQWEsQ0FBYixXQUFhOzs7Ozs7Ozs7Ozs7Ozs7Ozs7UUFFSCxDQUlyQzs7Ozs7OzttQkFSc0IsY0FBaUIsVUFFWixXQUFhIn0=
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- exports.default = void 0;
6
- var _easyWithStyle = _interopRequireDefault(require("easy-with-style"));
7
- var _easyLayout = require("easy-layout");
8
- function _interopRequireDefault(obj) {
9
- return obj && obj.__esModule ? obj : {
10
- default: obj
11
- };
12
- }
13
- function _taggedTemplateLiteral(strings, raw) {
14
- if (!raw) {
15
- raw = strings.slice(0);
16
- }
17
- return Object.freeze(Object.defineProperties(strings, {
18
- raw: {
19
- value: Object.freeze(raw)
20
- }
21
- }));
22
- }
23
- function _templateObject() {
24
- var data = _taggedTemplateLiteral([
25
- "\n\n height: 1rem;\n background-color: white;\n \n"
26
- ]);
27
- _templateObject = function _templateObject() {
28
- return data;
29
- };
30
- return data;
31
- }
32
- var _default = (0, _easyWithStyle).default(_easyLayout.HorizontalSplitterDiv)(_templateObject());
33
- exports.default = _default;
34
-
35
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9zcGxpdHRlci9ob3Jpem9udGFsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyBIb3Jpem9udGFsU3BsaXR0ZXJEaXYgfSBmcm9tIFwiZWFzeS1sYXlvdXRcIjtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlKEhvcml6b250YWxTcGxpdHRlckRpdilgXG5cbiAgaGVpZ2h0OiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgXG5gO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLENBQVk7Ozs7O0FBRVUsR0FBaUIsQ0FBakIsY0FBaUI7QUFFRCxHQUFhLENBQWIsV0FBYTs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBRUgsQ0FLaEQ7Ozs7Ozs7bUJBVHNCLGNBQWlCLFVBRUQsV0FBYSJ9
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- exports.default = void 0;
6
- var _easyWithStyle = _interopRequireDefault(require("easy-with-style"));
7
- var _easyLayout = require("easy-layout");
8
- function _interopRequireDefault(obj) {
9
- return obj && obj.__esModule ? obj : {
10
- default: obj
11
- };
12
- }
13
- function _taggedTemplateLiteral(strings, raw) {
14
- if (!raw) {
15
- raw = strings.slice(0);
16
- }
17
- return Object.freeze(Object.defineProperties(strings, {
18
- raw: {
19
- value: Object.freeze(raw)
20
- }
21
- }));
22
- }
23
- function _templateObject() {
24
- var data = _taggedTemplateLiteral([
25
- "\n\n width: 1rem;\n background-color: white;\n \n"
26
- ]);
27
- _templateObject = function _templateObject() {
28
- return data;
29
- };
30
- return data;
31
- }
32
- var _default = (0, _easyWithStyle).default(_easyLayout.VerticalSplitterDiv)(_templateObject());
33
- exports.default = _default;
34
-
35
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9zcGxpdHRlci92ZXJ0aWNhbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHdpdGhTdHlsZSBmcm9tIFwiZWFzeS13aXRoLXN0eWxlXCI7ICAvLy9cblxuaW1wb3J0IHsgVmVydGljYWxTcGxpdHRlckRpdiB9IGZyb20gXCJlYXN5LWxheW91dFwiO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoVmVydGljYWxTcGxpdHRlckRpdilgXG5cbiAgd2lkdGg6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBcbmA7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsQ0FBWTs7Ozs7QUFFVSxHQUFpQixDQUFqQixjQUFpQjtBQUVILEdBQWEsQ0FBYixXQUFhOzs7Ozs7Ozs7Ozs7Ozs7Ozs7UUFFSCxDQUs5Qzs7Ozs7OzttQkFUc0IsY0FBaUIsVUFFSCxXQUFhIn0=
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- import withStyle from "easy-with-style"; ///
4
-
5
- import { ColumnsDiv } from "easy-layout";
6
-
7
- export default withStyle(ColumnsDiv)`
8
-
9
- padding: 1rem;
10
-
11
- `;
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- import withStyle from "easy-with-style"; ///
4
-
5
- import { HorizontalSplitterDiv } from "easy-layout";
6
-
7
- export default withStyle(HorizontalSplitterDiv)`
8
-
9
- height: 1rem;
10
- background-color: white;
11
-
12
- `;
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- import withStyle from "easy-with-style"; ///
4
-
5
- import { VerticalSplitterDiv } from "easy-layout";
6
-
7
- export default withStyle(VerticalSplitterDiv)`
8
-
9
- width: 1rem;
10
- background-color: white;
11
-
12
- `;