pareto 0.80.74 → 0.80.76

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 (79) hide show
  1. package/dist/modules/pareto_new/schemas/module/shorthands/target.d.ts +10 -0
  2. package/dist/modules/pareto_new/schemas/module/shorthands/target.js +11 -1
  3. package/dist/modules/pareto_new/schemas/refiner/schema.d.ts +406 -37
  4. package/dist/modules/pareto_new/schemas/refiner/schema.js +3 -4
  5. package/dist/modules/pareto_new/schemas/refiner/shorthands/target.d.ts +77 -5
  6. package/dist/modules/pareto_new/schemas/refiner/shorthands/target.js +205 -8
  7. package/dist/modules/pareto_new/schemas/refiner/transformers/typescript_light.d.ts +6 -0
  8. package/dist/modules/pareto_new/schemas/refiner/transformers/typescript_light.js +363 -18
  9. package/dist/modules/pareto_new/schemas/schema/schema.d.ts +123 -56
  10. package/dist/modules/pareto_new/schemas/schema/schema.js +3 -3
  11. package/dist/modules/pareto_new/schemas/schema/shorthands/target.d.ts +12 -11
  12. package/dist/modules/pareto_new/schemas/schema/shorthands/target.js +9 -6
  13. package/dist/modules/pareto_new/schemas/schema/transformers/typescript_light.js +6 -6
  14. package/dist/modules/pareto_new/schemas/schema_reference/schema.d.ts +48 -11
  15. package/dist/modules/pareto_new/schemas/schema_reference/schema.js +2 -1
  16. package/dist/modules/pareto_new/schemas/schema_reference/shorthands/target.d.ts +11 -2
  17. package/dist/modules/pareto_new/schemas/schema_reference/shorthands/target.js +29 -6
  18. package/dist/modules/pareto_new/schemas/schema_reference/transformers/typescript_light.d.ts +8 -0
  19. package/dist/modules/pareto_new/schemas/schema_reference/transformers/typescript_light.js +24 -4
  20. package/dist/modules/pareto_new/schemas/transformer/schema.d.ts +388 -33
  21. package/dist/modules/pareto_new/schemas/transformer/schema.js +3 -4
  22. package/dist/modules/pareto_new/schemas/transformer/shorthands/target.d.ts +75 -3
  23. package/dist/modules/pareto_new/schemas/transformer/shorthands/target.js +196 -47
  24. package/dist/modules/pareto_new/schemas/transformer/transformers/typescript_light.d.ts +7 -1
  25. package/dist/modules/pareto_new/schemas/transformer/transformers/typescript_light.js +313 -30
  26. package/dist/modules/typescript_light/schemas/typescript_light/schema.d.ts +293 -259
  27. package/dist/modules/typescript_light/schemas/typescript_light/schema.js +3 -3
  28. package/dist/modules/typescript_light/schemas/{primitives → typescript_light}/serializers.d.ts +7 -8
  29. package/dist/modules/typescript_light/schemas/typescript_light/serializers.js +487 -0
  30. package/dist/modules/typescript_light/schemas/typescript_light/shorthands/target.d.ts +16 -14
  31. package/dist/modules/typescript_light/schemas/typescript_light/shorthands/target.js +39 -37
  32. package/dist/modules/typescript_light/schemas/typescript_light/transformers/paragraph.d.ts +8 -1
  33. package/dist/modules/typescript_light/schemas/typescript_light/transformers/paragraph.js +206 -222
  34. package/package.json +1 -1
  35. package/dist/modules/file_name/schemas/file_name/schema.d.ts +0 -1
  36. package/dist/modules/file_name/schemas/file_name/schema.js +0 -2
  37. package/dist/modules/file_name/schemas/file_name/serializers.d.ts +0 -6
  38. package/dist/modules/file_name/schemas/file_name/serializers.js +0 -23
  39. package/dist/modules/implementation_old/schemas/resolved/schema.d.ts +0 -748
  40. package/dist/modules/implementation_old/schemas/resolved/schema.js +0 -4
  41. package/dist/modules/implementation_old/schemas/resolved/shorthands/target.d.ts +0 -134
  42. package/dist/modules/implementation_old/schemas/resolved/shorthands/target.js +0 -460
  43. package/dist/modules/implementation_old/schemas/resolved/transformers/typescript_project.d.ts +0 -5
  44. package/dist/modules/implementation_old/schemas/resolved/transformers/typescript_project.js +0 -9
  45. package/dist/modules/implementation_old/schemas/resolved/transformers/typescript_source_file.d.ts +0 -9
  46. package/dist/modules/implementation_old/schemas/resolved/transformers/typescript_source_file.js +0 -647
  47. package/dist/modules/implementation_old/schemas/unresolved/schema.d.ts +0 -1288
  48. package/dist/modules/implementation_old/schemas/unresolved/schema.js +0 -4
  49. package/dist/modules/interface_old/schemas/resolved/schema.d.ts +0 -160
  50. package/dist/modules/interface_old/schemas/resolved/schema.js +0 -3
  51. package/dist/modules/interface_old/schemas/resolved/shorthands/target.d.ts +0 -47
  52. package/dist/modules/interface_old/schemas/resolved/shorthands/target.js +0 -185
  53. package/dist/modules/interface_old/schemas/resolved/transformers/to_be_written_directory_content.d.ts +0 -5
  54. package/dist/modules/interface_old/schemas/resolved/transformers/to_be_written_directory_content.js +0 -9
  55. package/dist/modules/interface_old/schemas/resolved/transformers/typescript.d.ts +0 -10
  56. package/dist/modules/interface_old/schemas/resolved/transformers/typescript.js +0 -270
  57. package/dist/modules/interface_old/schemas/unresolved/schema.d.ts +0 -371
  58. package/dist/modules/interface_old/schemas/unresolved/schema.js +0 -4
  59. package/dist/modules/pareto_new/schemas/type_reference/schema.d.ts +0 -18
  60. package/dist/modules/pareto_new/schemas/type_reference/schema.js +0 -2
  61. package/dist/modules/pareto_new/schemas/type_reference/shorthands/target.d.ts +0 -3
  62. package/dist/modules/pareto_new/schemas/type_reference/shorthands/target.js +0 -8
  63. package/dist/modules/pareto_new/schemas/value_reference/schema.d.ts +0 -18
  64. package/dist/modules/pareto_new/schemas/value_reference/schema.js +0 -3
  65. package/dist/modules/pareto_new/schemas/value_reference/shorthands/target.d.ts +0 -10
  66. package/dist/modules/pareto_new/schemas/value_reference/shorthands/target.js +0 -18
  67. package/dist/modules/pareto_old/schemas/library/schema.d.ts +0 -1
  68. package/dist/modules/pareto_old/schemas/library/schema.js +0 -2
  69. package/dist/modules/pareto_old/schemas/library/transformers/typescript_light.d.ts +0 -12
  70. package/dist/modules/pareto_old/schemas/library/transformers/typescript_light.js +0 -13
  71. package/dist/modules/typescript_light/schemas/identifier/schema.d.ts +0 -1
  72. package/dist/modules/typescript_light/schemas/identifier/schema.js +0 -2
  73. package/dist/modules/typescript_light/schemas/identifier/serializers.d.ts +0 -2
  74. package/dist/modules/typescript_light/schemas/identifier/serializers.js +0 -230
  75. package/dist/modules/typescript_light/schemas/primitives/schema.d.ts +0 -2
  76. package/dist/modules/typescript_light/schemas/primitives/schema.js +0 -2
  77. package/dist/modules/typescript_light/schemas/primitives/serializers.js +0 -255
  78. package/dist/temp/single_entry_dictionary.d.ts +0 -2
  79. package/dist/temp/single_entry_dictionary.js +0 -8
@@ -2,10 +2,28 @@ import * as p_ from 'pareto-core/transformer';
2
2
  //shorthands
3
3
  import * as sh from "pareto-fountain-pen/modules/paragraph/schemas/paragraph/shorthands/deprecated";
4
4
  //dependencies
5
- import * as ser_primitives from "../../primitives/serializers.js";
5
+ import * as ser_primitives from "../serializers.js";
6
+ export const Function_Declaration = ($, $p) => sh.ph.composed([
7
+ sh.ph.rich_phrase(p_.from.list($['type parameters']).map(($) => Type($, $p.ts)), sh.ph.nothing(), sh.ph.text("<"), sh.ph.text(", "), sh.ph.text(">")),
8
+ sh.ph.text("("),
9
+ sh.ph.indent(sh.pg.sentences(p_.from.list($['parameters']).map(($) => sh.sentence(p_.literal.list([
10
+ Identifier($.name),
11
+ p_.from.optional($.type).decide(($) => sh.ph.composed([
12
+ sh.ph.text(": "),
13
+ Type($, $p.ts)
14
+ ]), () => sh.ph.nothing()),
15
+ sh.ph.text(",")
16
+ ]))))),
17
+ sh.ph.text(")"),
18
+ p_.from.optional($['return type']).decide(($) => sh.ph.composed([
19
+ $p['return token'],
20
+ sh.ph.text(" "),
21
+ Type($, $p.ts)
22
+ ]), () => sh.ph.nothing())
23
+ ]);
6
24
  export const Source_File = ($, $p) => Statements($.statements, $p);
7
25
  export const Identifier = ($) => {
8
- return sh.ph.text($.value);
26
+ return sh.ph.text(ser_primitives.Identifier($));
9
27
  };
10
28
  export const String_Literal_pseudo = ($, $p) => {
11
29
  return sh.ph.text($p.delimiter === "quote"
@@ -17,189 +35,176 @@ export const String_Literal = ($) => {
17
35
  ? ser_primitives.Quoted_Text($.value)
18
36
  : ser_primitives.Apostrophed_Text($.value));
19
37
  };
20
- export const Statements = ($, $p) => sh.pg.deprecated_composed(p_.from.list($).map(($) => p_.from.state($).decide(($) => {
38
+ export const Statement = ($, $p) => p_.from.state($).decide(($) => {
21
39
  switch ($[0]) {
22
- case 'block': return p_.option($, ($) => sh.pg.sentences([
23
- sh.sentence([
24
- sh.ph.text("{"),
25
- sh.ph.indent(Statements($, $p)),
26
- sh.ph.text("}"),
27
- ])
28
- ]));
29
- case 'empty line': return p_.option($, ($) => sh.pg.sentences([
30
- sh.sentence([]),
40
+ case 'block': return p_.option($, ($) => sh.sentence([
41
+ sh.ph.text("{"),
42
+ sh.ph.indent(Statements($, $p)),
43
+ sh.ph.text("}"),
31
44
  ]));
32
- case 'export': return p_.option($, ($) => sh.pg.sentences([
33
- sh.sentence([
34
- sh.ph.text("export "),
35
- p_.from.state($.type).decide(($) => {
36
- switch ($[0]) {
37
- case 'named exports': return p_.option($, ($) => sh.ph.composed([
38
- sh.ph.text("{ "),
39
- sh.ph.indent(sh.pg.sentences(p_.from.list($.specifiers).map(($) => sh.sentence([
40
- $['type only'] ? sh.ph.text("type ") : sh.ph.nothing(),
41
- Identifier($.name),
42
- p_.from.optional($.as).decide(($) => sh.ph.composed([
43
- sh.ph.text(" as "),
44
- Identifier($),
45
- ]), () => sh.ph.nothing()),
46
- sh.ph.text(", ")
47
- ])))),
48
- sh.ph.text("}"),
49
- p_.from.optional($.from).decide(($) => sh.ph.composed([
50
- sh.ph.text(" from "),
51
- String_Literal($),
52
- ]), () => sh.ph.nothing())
53
- ]));
54
- default: return p_.exhaustive($[0]);
55
- }
56
- }),
57
- ])
45
+ case 'empty line': return p_.option($, ($) => sh.sentence([]));
46
+ case 'export': return p_.option($, ($) => sh.sentence([
47
+ sh.ph.text("export "),
48
+ p_.from.state($.type).decide(($) => {
49
+ switch ($[0]) {
50
+ case 'named exports': return p_.option($, ($) => sh.ph.composed([
51
+ sh.ph.text("{ "),
52
+ sh.ph.indent(sh.pg.sentences(p_.from.list($.specifiers).map(($) => sh.sentence([
53
+ $['type only'] ? sh.ph.text("type ") : sh.ph.nothing(),
54
+ Identifier($.name),
55
+ p_.from.optional($.as).decide(($) => sh.ph.composed([
56
+ sh.ph.text(" as "),
57
+ Identifier($),
58
+ ]), () => sh.ph.nothing()),
59
+ sh.ph.text(", ")
60
+ ])))),
61
+ sh.ph.text("}"),
62
+ p_.from.optional($.from).decide(($) => sh.ph.composed([
63
+ sh.ph.text(" from "),
64
+ String_Literal($),
65
+ ]), () => sh.ph.nothing())
66
+ ]));
67
+ default: return p_.exhaustive($[0]);
68
+ }
69
+ }),
58
70
  ]));
59
- case 'expression': return p_.option($, ($) => sh.pg.sentences([
60
- sh.sentence(Expression($, {
61
- 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
62
- 'object literal needs parentheses': true,
63
- }))
71
+ case 'expression': return p_.option($, ($) => sh.sentence(Expression($, {
72
+ 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
73
+ 'object literal needs parentheses': true,
74
+ })));
75
+ case 'import': return p_.option($, ($) => sh.sentence([
76
+ sh.ph.text("import "),
77
+ p_.from.state($.type).decide(($) => {
78
+ switch ($[0]) {
79
+ case 'default': return p_.option($, ($) => sh.ph.composed([
80
+ Identifier($),
81
+ ]));
82
+ case 'named': return p_.option($, ($) => sh.ph.composed([
83
+ sh.ph.text("{"),
84
+ sh.ph.indent(sh.pg.sentences(p_.from.list($.specifiers).map(($) => sh.sentence([
85
+ Identifier($.name),
86
+ p_.from.optional($.as).decide(($) => sh.ph.composed([
87
+ sh.ph.text(" as "),
88
+ Identifier($),
89
+ ]), () => sh.ph.nothing()),
90
+ sh.ph.text(",")
91
+ ])))),
92
+ sh.ph.text("}"),
93
+ ]));
94
+ case 'namespace': return p_.option($, ($) => sh.ph.composed([
95
+ sh.ph.text("* as "),
96
+ Identifier($),
97
+ ]));
98
+ default: return p_.exhaustive($[0]);
99
+ }
100
+ }),
101
+ sh.ph.text(" from "),
102
+ String_Literal($.from),
64
103
  ]));
65
- case 'import': return p_.option($, ($) => sh.pg.sentences([
66
- sh.sentence([
67
- sh.ph.text("import "),
68
- p_.from.state($.type).decide(($) => {
69
- switch ($[0]) {
70
- case 'default': return p_.option($, ($) => sh.ph.composed([
71
- Identifier($),
72
- ]));
73
- case 'named': return p_.option($, ($) => sh.ph.composed([
74
- sh.ph.text("{"),
75
- sh.ph.indent(sh.pg.sentences(p_.from.list($.specifiers).map(($) => sh.sentence([
76
- Identifier($.name),
77
- p_.from.optional($.as).decide(($) => sh.ph.composed([
78
- sh.ph.text(" as "),
79
- Identifier($),
80
- ]), () => sh.ph.nothing()),
81
- sh.ph.text(",")
82
- ])))),
83
- sh.ph.text("}"),
84
- ]));
85
- case 'namespace': return p_.option($, ($) => sh.ph.composed([
86
- sh.ph.text("* as "),
87
- Identifier($),
88
- ]));
89
- default: return p_.exhaustive($[0]);
90
- }
91
- }),
92
- sh.ph.text(" from "),
93
- String_Literal($.from),
94
- ])
104
+ case 'line comment': return p_.option($, ($) => sh.sentence([
105
+ sh.ph.composed([
106
+ sh.ph.text("// "),
107
+ sh.ph.text($)
108
+ ]),
95
109
  ]));
96
- case 'line comment': return p_.option($, ($) => sh.pg.sentences([
97
- sh.sentence([
98
- sh.ph.composed([
99
- sh.ph.text("// "),
100
- sh.ph.text($)
101
- ]),
110
+ case 'namespace': return p_.option($, ($) => sh.sentence([
111
+ $.export ?
112
+ sh.ph.text("export ")
113
+ : sh.ph.nothing(),
114
+ sh.ph.text("namespace "),
115
+ Identifier($['name']),
116
+ sh.ph.text(" "),
117
+ sh.ph.composed([
118
+ sh.ph.text("{"),
119
+ sh.ph.indent(Statements($.block, $p)),
120
+ sh.ph.text("}"),
102
121
  ])
103
122
  ]));
104
- case 'module declaration': return p_.option($, ($) => sh.pg.sentences([
105
- sh.sentence([
106
- $.export ?
107
- sh.ph.text("export ")
108
- : sh.ph.nothing(),
109
- sh.ph.text("namespace "),
110
- Identifier($['name']),
111
- sh.ph.text(" "),
112
- sh.ph.composed([
113
- sh.ph.text("{"),
114
- sh.ph.indent(Statements($.block, $p)),
115
- sh.ph.text("}"),
116
- ])
123
+ case 'return': return p_.option($, ($) => sh.sentence(p_.literal.segmented_list([
124
+ p_.literal.list([
125
+ sh.ph.text("return "),
126
+ ]),
127
+ p_.from.optional($).decide(($) => Expression($, {
128
+ 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
129
+ 'object literal needs parentheses': false,
130
+ }), () => p_.literal.list([]))
131
+ ])));
132
+ case 'switch': return p_.option($, ($) => sh.sentence(p_.literal.segmented_list([
133
+ p_.literal.list([
134
+ sh.ph.text("switch ("),
135
+ ]),
136
+ Expression($.expression, {
137
+ 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
138
+ 'object literal needs parentheses': false,
139
+ }),
140
+ p_.literal.list([
141
+ sh.ph.text(") {"),
142
+ sh.ph.indent(sh.pg.sentences(p_.from.list($.clauses).map(($) => sh.sentence(p_.literal.segmented_list([
143
+ p_.from.state($.type).decide(($) => {
144
+ switch ($[0]) {
145
+ case 'case': return p_.option($, ($) => p_.literal.segmented_list([
146
+ p_.literal.list([
147
+ sh.ph.text("case "),
148
+ ]),
149
+ Expression($, {
150
+ 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
151
+ 'object literal needs parentheses': true,
152
+ }),
153
+ p_.literal.list([
154
+ sh.ph.text(": "),
155
+ ]),
156
+ ]));
157
+ case 'default': return p_.option($, ($) => p_.literal.list([
158
+ sh.ph.text("default: ")
159
+ ]));
160
+ default: return p_.exhaustive($[0]);
161
+ }
162
+ }),
163
+ p_.from.state($.body).decide(($) => {
164
+ switch ($[0]) {
165
+ case 'statement': return p_.option($, ($) => Statement($, $p));
166
+ case 'statements': return p_.option($, ($) => p_.literal.list([
167
+ sh.ph.indent(Statements($, $p))
168
+ ]));
169
+ default: return p_.exhaustive($[0]);
170
+ }
171
+ }),
172
+ ]))))),
173
+ sh.ph.text("}"),
117
174
  ])
175
+ ])));
176
+ case 'type alias declaration': return p_.option($, ($) => sh.sentence([
177
+ $.export ? sh.ph.text("export ") : sh.ph.nothing(),
178
+ sh.ph.text("type "),
179
+ Identifier($['name']),
180
+ sh.ph.rich_phrase(p_.from.list($['parameters']).map(($) => Identifier($)), sh.ph.nothing(), sh.ph.text("<"), sh.ph.text(", "), sh.ph.text(">")),
181
+ sh.ph.text(" = "),
182
+ Type($['type'], $p),
118
183
  ]));
119
- case 'return': return p_.option($, ($) => sh.pg.sentences([
120
- sh.sentence(p_.literal.segmented_list([
184
+ case 'variable': return p_.option($, ($) => sh.sentence([
185
+ $.export ? sh.ph.text("export ") : sh.ph.nothing(),
186
+ $.const ? sh.ph.text("const ") : sh.ph.text("let "),
187
+ Identifier($['name']),
188
+ p_.from.optional($.type).decide(($) => sh.ph.composed([
189
+ sh.ph.text(": "),
190
+ Type($, $p)
191
+ ]), () => sh.ph.nothing()),
192
+ sh.ph.composed(p_.from.optional($.expression).decide(($) => p_.literal.segmented_list([
121
193
  p_.literal.list([
122
- sh.ph.text("return "),
194
+ sh.ph.text(" = "),
123
195
  ]),
124
- p_.from.optional($).decide(($) => Expression($, {
196
+ Expression($, {
125
197
  'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
126
198
  'object literal needs parentheses': false,
127
- }), () => p_.literal.list([]))
128
- ])),
129
- ]));
130
- case 'switch': return p_.option($, ($) => sh.pg.sentences([
131
- sh.sentence(p_.literal.segmented_list([
132
- p_.literal.list([
133
- sh.ph.text("switch ("),
134
- ]),
135
- Expression($.expression, {
136
- 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
137
- 'object literal needs parentheses': false,
138
- }),
139
- p_.literal.list([
140
- sh.ph.text(") {"),
141
- sh.ph.indent(sh.pg.sentences(p_.from.list($.clauses).map(($) => sh.sentence(p_.literal.segmented_list([
142
- p_.from.state($.type).decide(($) => {
143
- switch ($[0]) {
144
- case 'case': return p_.option($, ($) => p_.literal.segmented_list([
145
- p_.literal.list([
146
- sh.ph.text("case "),
147
- ]),
148
- Expression($, {
149
- 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
150
- 'object literal needs parentheses': true,
151
- }),
152
- p_.literal.list([
153
- sh.ph.text(":"),
154
- ]),
155
- ]));
156
- case 'default': return p_.option($, ($) => p_.literal.list([
157
- sh.ph.text("default:")
158
- ]));
159
- default: return p_.exhaustive($[0]);
160
- }
161
- }),
162
- p_.literal.list([
163
- sh.ph.indent(Statements($.statements, $p))
164
- ]),
165
- ]))))),
166
- sh.ph.text("}"),
167
- ])
168
- ])),
169
- ]));
170
- case 'type alias declaration': return p_.option($, ($) => sh.pg.sentences([
171
- sh.sentence([
172
- $.export ? sh.ph.text("export ") : sh.ph.nothing(),
173
- sh.ph.text("type "),
174
- Identifier($['name']),
175
- sh.ph.rich_phrase(p_.from.list($['parameters']).map(($) => Identifier($)), sh.ph.nothing(), sh.ph.text("<"), sh.ph.text(", "), sh.ph.text(">")),
176
- sh.ph.text(" = "),
177
- Type($['type'], $p),
178
- ])
179
- ]));
180
- case 'variable': return p_.option($, ($) => sh.pg.sentences([
181
- sh.sentence([
182
- $.export ? sh.ph.text("export ") : sh.ph.nothing(),
183
- $.const ? sh.ph.text("const ") : sh.ph.text("let "),
184
- Identifier($['name']),
185
- p_.from.optional($.type).decide(($) => sh.ph.composed([
186
- sh.ph.text(": "),
187
- Type($, $p)
188
- ]), () => sh.ph.nothing()),
189
- sh.ph.composed(p_.from.optional($.expression).decide(($) => p_.literal.segmented_list([
190
- p_.literal.list([
191
- sh.ph.text(" = "),
192
- ]),
193
- Expression($, {
194
- 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
195
- 'object literal needs parentheses': false,
196
- })
197
- ]), () => p_.literal.list([]))),
198
- ])
199
+ })
200
+ ]), () => p_.literal.list([]))),
199
201
  ]));
200
202
  default: return p_.exhaustive($[0]);
201
203
  }
202
- })));
204
+ });
205
+ export const Statements = ($, $p) => sh.pg.deprecated_composed(p_.from.list($).map(($) => sh.pg.sentences([
206
+ Statement($, $p)
207
+ ])));
203
208
  export const Expression = ($, $p) => p_.from.state($).decide(($) => {
204
209
  switch ($[0]) {
205
210
  case 'assignment': return p_.option($, ($) => p_.literal.segmented_list([
@@ -212,38 +217,21 @@ export const Expression = ($, $p) => p_.from.state($).decide(($) => {
212
217
  'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
213
218
  }),
214
219
  ]));
215
- case 'array literal': return p_.option($, ($) => p_.literal.segmented_list([
216
- p_.literal.list([
217
- sh.ph.text("["),
218
- sh.ph.rich_phrase(p_.from.list($).flatten(($) => Expression($, {
219
- 'object literal needs parentheses': false,
220
- 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
221
- })), sh.ph.nothing(), sh.ph.nothing(), sh.ph.text(", "), sh.ph.nothing())
222
- ]),
223
- p_.literal.list([
224
- sh.ph.text("]"),
225
- ]),
220
+ case 'array literal': return p_.option($, ($) => p_.literal.list([
221
+ sh.ph.text("["),
222
+ sh.ph.rich_phrase(p_.from.list($).map(($) => sh.ph.composed(Expression($, {
223
+ 'object literal needs parentheses': false,
224
+ 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
225
+ }))), sh.ph.nothing(), sh.ph.nothing(), sh.ph.text(", "), sh.ph.nothing()),
226
+ sh.ph.text("]"),
226
227
  ]));
227
228
  case 'arrow function': return p_.option($, ($) => p_.literal.segmented_list([
228
229
  p_.literal.list([
229
- sh.ph.text("("),
230
- sh.ph.rich_phrase(p_.from.list($.parameters).map(($) => sh.ph.composed([
231
- Identifier($.name),
232
- p_.from.optional($.type).decide(($) => sh.ph.composed([
233
- sh.ph.text(": "),
234
- Type($, $p)
235
- ]), () => sh.ph.nothing()),
236
- ])), sh.ph.nothing(), sh.ph.nothing(), sh.ph.text(", "), sh.ph.nothing()),
237
- sh.ph.text(")"),
230
+ Function_Declaration($.declaration, {
231
+ 'return token': sh.ph.text(":"),
232
+ 'ts': $p,
233
+ })
238
234
  ]),
239
- p_.from.optional($['return type']).decide(($) => p_.literal.segmented_list([
240
- p_.literal.list([
241
- sh.ph.text(": "),
242
- ]),
243
- p_.literal.list([
244
- Type($, $p)
245
- ])
246
- ]), () => p_.literal.list([])),
247
235
  p_.literal.list([
248
236
  sh.ph.text(" => "),
249
237
  ]),
@@ -266,15 +254,20 @@ export const Expression = ($, $p) => p_.from.state($).decide(($) => {
266
254
  Expression($['function selection'], $p),
267
255
  p_.literal.list([
268
256
  sh.ph.text("("),
269
- sh.ph.indent(sh.pg.sentences(p_.from.list($['arguments']).map(($) => sh.sentence(p_.literal.segmented_list([
270
- Expression($, {
257
+ $['arguments on own line']
258
+ ? sh.ph.indent(sh.pg.sentences(p_.from.list($['arguments']).map(($) => sh.sentence(p_.literal.segmented_list([
259
+ Expression($, {
260
+ 'object literal needs parentheses': false,
261
+ 'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
262
+ }),
263
+ p_.literal.list([
264
+ sh.ph.text(",")
265
+ ]),
266
+ ])))))
267
+ : sh.ph.rich_phrase(p_.from.list($['arguments']).map(($) => sh.ph.composed(Expression($, {
271
268
  'object literal needs parentheses': false,
272
269
  'replace empty type literals by symbol': $p['replace empty type literals by symbol'],
273
- }),
274
- p_.literal.list([
275
- sh.ph.text(",")
276
- ]),
277
- ]))))),
270
+ }))), sh.ph.nothing(), sh.ph.nothing(), sh.ph.text(", "), sh.ph.nothing()),
278
271
  sh.ph.text(")"),
279
272
  ])
280
273
  ]));
@@ -284,9 +277,9 @@ export const Expression = ($, $p) => p_.from.state($).decide(($) => {
284
277
  sh.ph.text(" "),
285
278
  p_.from.state($.operator).decide(($) => {
286
279
  switch ($[0]) {
287
- case 'loosely equal': return p_.option($, ($) => sh.ph.text("=="));
280
+ // case 'loosely equal': return p_.option($, ($) => sh.ph.text("=="))
288
281
  case 'strictly equal': return p_.option($, ($) => sh.ph.text("==="));
289
- case 'loosely not equal': return p_.option($, ($) => sh.ph.text("!="));
282
+ // case 'loosely not equal': return p_.option($, ($) => sh.ph.text("!="))
290
283
  case 'strictly not equal': return p_.option($, ($) => sh.ph.text("!=="));
291
284
  case 'smaller than': return p_.option($, ($) => sh.ph.text("<"));
292
285
  case 'smaller than or equal': return p_.option($, ($) => sh.ph.text("<="));
@@ -426,20 +419,10 @@ export const Expression = ($, $p) => p_.from.state($).decide(($) => {
426
419
  export const Type = ($, $p) => p_.from.state($).decide(($) => {
427
420
  switch ($[0]) {
428
421
  case 'boolean': return p_.option($, ($) => sh.ph.text("boolean"));
429
- case 'function': return p_.option($, ($) => sh.ph.composed([
430
- sh.ph.rich_phrase(p_.from.list($['type parameters']).map(($) => Type($, $p)), sh.ph.nothing(), sh.ph.text("<"), sh.ph.text(", "), sh.ph.text(">")),
431
- sh.ph.text("("),
432
- sh.ph.indent(sh.pg.sentences(p_.from.list($['parameters']).map(($) => sh.sentence(p_.literal.list([
433
- Identifier($.name),
434
- p_.from.optional($.type).decide(($) => sh.ph.composed([
435
- sh.ph.text(": "),
436
- Type($, $p)
437
- ]), () => sh.ph.nothing()),
438
- sh.ph.text(",")
439
- ]))))),
440
- sh.ph.text(") => "),
441
- Type($['return'], $p)
442
- ]));
422
+ case 'function': return p_.option($, ($) => Function_Declaration($.declaration, {
423
+ 'return token': sh.ph.text(" =>"),
424
+ 'ts': $p,
425
+ }));
443
426
  case 'literal type': return p_.option($, ($) => String_Literal($)); //FIX, implement a switch for the delimiter
444
427
  case 'never': return p_.option($, ($) => sh.ph.text("never"));
445
428
  case 'null': return p_.option($, ($) => sh.ph.text("null"));
@@ -451,7 +434,7 @@ export const Type = ($, $p) => p_.from.state($).decide(($) => {
451
434
  sh.ph.rich_phrase(p_.from.list($.elements).map(($) => Type($, $p)), sh.ph.nothing(), sh.ph.nothing(), sh.ph.text(", "), sh.ph.nothing()),
452
435
  sh.ph.text("]"),
453
436
  ]));
454
- case 'type literal': return p_.option($, ($) => $p['replace empty type literals by symbol'] && p_.from.list($.properties).on_has_items(() => true, () => false)
437
+ case 'type literal': return p_.option($, ($) => $p['replace empty type literals by symbol'] && p_.from.list($.properties).on_has_items(() => false, () => true)
455
438
  ? sh.ph.text("symbol")
456
439
  : sh.ph.composed([
457
440
  sh.ph.text("{"),
@@ -471,6 +454,7 @@ export const Type = ($, $p) => p_.from.state($).decide(($) => {
471
454
  ])))),
472
455
  sh.ph.text("}")
473
456
  ]));
457
+ case 'undefined': return p_.option($, ($) => sh.ph.text("undefined"));
474
458
  case 'type reference': return p_.option($, ($) => sh.ph.composed([
475
459
  Identifier($['start']),
476
460
  sh.ph.composed(p_.from.list($['tail']).map(($) => sh.ph.composed([
@@ -493,4 +477,4 @@ export const Type = ($, $p) => p_.from.state($).decide(($) => {
493
477
  default: return p_.exhaustive($[0]);
494
478
  }
495
479
  });
496
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWdyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvdHlwZXNjcmlwdF9saWdodC9zY2hlbWFzL3R5cGVzY3JpcHRfbGlnaHQvdHJhbnNmb3JtZXJzL3BhcmFncmFwaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBUTdDLFlBQVk7QUFDWixPQUFPLEtBQUssRUFBRSxNQUFNLCtFQUErRSxDQUFBO0FBRW5HLGNBQWM7QUFDZCxPQUFPLEtBQUssY0FBYyxNQUFNLGlDQUFpQyxDQUFBO0FBbURqRSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQTZCLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUE7QUFHNUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUE0QixDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ3JELE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBQzlCLENBQUMsQ0FBQTtBQUdELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUF1QyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTtJQUMvRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEtBQUssT0FBTztRQUN0QyxDQUFDLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQzdDLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBZ0MsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUM3RCxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFB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QUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQzdELEtBQUssTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtRQUMzRCxLQUFLLFFBQVEsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUE7UUFDL0QsS0FBSyxRQUFRLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFBO1FBQy9ELEtBQUssT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFDcEQsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFO1lBQ3RELEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNmLEVBQUUsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUNiLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQ3hCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMs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RSxDQUFDLE9BQU8sRUFBRSxDQUN4QjtTQUNKLENBQUMsQ0FBQyxDQUFBO1FBQ0gsS0FBSyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FDakQsRUFBRSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUMvQixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FDZCxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztZQUNaLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNoQixJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztTQUNkLENBQUMsQ0FDTCxDQUNKLENBQUMsQ0FDTCxDQUFDLENBQUE7UUFDRixLQUFLLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7UUFDM0QsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3ZDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQSJ9
480
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWdyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvdHlwZXNjcmlwdF9saWdodC9zY2hlbWFzL3R5cGVzY3JpcHRfbGlnaHQvdHJhbnNmb3JtZXJzL3BhcmFncmFwaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBUTdDLFlBQVk7QUFDWixPQUFPLEtBQUssRUFBRSxNQUFNLCtFQUErRSxDQUFBO0FBRW5HLGNBQWM7QUFDZCxPQUFPLEtBQUssY0FBYyxNQUFNLG1CQUFtQixDQUFBO0FBa0VuRCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBc0MsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQztJQUM3RixFQUFFLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FDYixFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQzFCLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQ2YsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQ2YsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQ2hCLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUNsQjtJQUNELEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNmLEVBQUUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUNSLEVBQUUsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJ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akQsRUFBRSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUMvQixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FDZCxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztZQUNaLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNoQixJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztTQUNkLENBQUMsQ0FDTCxDQUNKLENBQUMsQ0FDTCxDQUFDLENBQUE7UUFDRixLQUFLLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7UUFDM0QsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3ZDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQSJ9