jssm 5.85.5 → 5.85.8

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.
@@ -0,0 +1,53 @@
1
+ import { JssmArrow, JssmArrowDirection, JssmArrowKind } from './jssm_types';
2
+ /*********
3
+ *
4
+ * Return the direction of an arrow - `right`, `left`, or `both`.
5
+ *
6
+ * ```typescript
7
+ * import { arrow_direction } from 'jssm';
8
+ *
9
+ * arrow_direction('->'); // 'right'
10
+ * arrow_direction('<~=>'); // 'both'
11
+ * ```
12
+ *
13
+ * @param arrow The arrow to be evaluated
14
+ *
15
+ */
16
+ declare function arrow_direction(arrow: JssmArrow): JssmArrowDirection;
17
+ /*********
18
+ *
19
+ * Return the direction of an arrow - `right`, `left`, or `both`.
20
+ *
21
+ * ```typescript
22
+ * import { arrow_left_kind } from 'jssm';
23
+ *
24
+ * arrow_left_kind('<-'); // 'legal'
25
+ * arrow_left_kind('<='); // 'main'
26
+ * arrow_left_kind('<~'); // 'forced'
27
+ * arrow_left_kind('<->'); // 'legal'
28
+ * arrow_left_kind('->'); // 'none'
29
+ * ```
30
+ *
31
+ * @param arrow The arrow to be evaluated
32
+ *
33
+ */
34
+ declare function arrow_left_kind(arrow: JssmArrow): JssmArrowKind;
35
+ /*********
36
+ *
37
+ * Return the direction of an arrow - `right`, `left`, or `both`.
38
+ *
39
+ * ```typescript
40
+ * import { arrow_left_kind } from 'jssm';
41
+ *
42
+ * arrow_left_kind('->'); // 'legal'
43
+ * arrow_left_kind('=>'); // 'main'
44
+ * arrow_left_kind('~>'); // 'forced'
45
+ * arrow_left_kind('<->'); // 'legal'
46
+ * arrow_left_kind('<-'); // 'none'
47
+ * ```
48
+ *
49
+ * @param arrow The arrow to be evaluated
50
+ *
51
+ */
52
+ declare function arrow_right_kind(arrow: JssmArrow): JssmArrowKind;
53
+ export { arrow_direction, arrow_left_kind, arrow_right_kind };
@@ -0,0 +1,187 @@
1
+ import { JssmError } from './jssm_error';
2
+ /* eslint-disable complexity */
3
+ /*********
4
+ *
5
+ * Return the direction of an arrow - `right`, `left`, or `both`.
6
+ *
7
+ * ```typescript
8
+ * import { arrow_direction } from 'jssm';
9
+ *
10
+ * arrow_direction('->'); // 'right'
11
+ * arrow_direction('<~=>'); // 'both'
12
+ * ```
13
+ *
14
+ * @param arrow The arrow to be evaluated
15
+ *
16
+ */
17
+ function arrow_direction(arrow) {
18
+ switch (String(arrow)) {
19
+ case '->':
20
+ case '→':
21
+ case '=>':
22
+ case '⇒':
23
+ case '~>':
24
+ case '↛':
25
+ return 'right';
26
+ case '<-':
27
+ case '←':
28
+ case '<=':
29
+ case '⇐':
30
+ case '<~':
31
+ case '↚':
32
+ return 'left';
33
+ case '<->':
34
+ case '↔':
35
+ case '<-=>':
36
+ case '←⇒':
37
+ case '←=>':
38
+ case '<-⇒':
39
+ case '<-~>':
40
+ case '←↛':
41
+ case '←~>':
42
+ case '<-↛':
43
+ case '<=>':
44
+ case '⇔':
45
+ case '<=->':
46
+ case '⇐→':
47
+ case '⇐->':
48
+ case '<=→':
49
+ case '<=~>':
50
+ case '⇐↛':
51
+ case '⇐~>':
52
+ case '<=↛':
53
+ case '<~>':
54
+ case '↮':
55
+ case '<~->':
56
+ case '↚→':
57
+ case '↚->':
58
+ case '<~→':
59
+ case '<~=>':
60
+ case '↚⇒':
61
+ case '↚=>':
62
+ case '<~⇒':
63
+ return 'both';
64
+ default:
65
+ throw new JssmError(undefined, `arrow_direction: unknown arrow type ${arrow}`);
66
+ }
67
+ }
68
+ /* eslint-enable complexity */
69
+ /* eslint-disable complexity */
70
+ /*********
71
+ *
72
+ * Return the direction of an arrow - `right`, `left`, or `both`.
73
+ *
74
+ * ```typescript
75
+ * import { arrow_left_kind } from 'jssm';
76
+ *
77
+ * arrow_left_kind('<-'); // 'legal'
78
+ * arrow_left_kind('<='); // 'main'
79
+ * arrow_left_kind('<~'); // 'forced'
80
+ * arrow_left_kind('<->'); // 'legal'
81
+ * arrow_left_kind('->'); // 'none'
82
+ * ```
83
+ *
84
+ * @param arrow The arrow to be evaluated
85
+ *
86
+ */
87
+ function arrow_left_kind(arrow) {
88
+ switch (String(arrow)) {
89
+ case '->':
90
+ case '→':
91
+ case '=>':
92
+ case '⇒':
93
+ case '~>':
94
+ case '↛':
95
+ return 'none';
96
+ case '<-':
97
+ case '←':
98
+ case '<->':
99
+ case '↔':
100
+ case '<-=>':
101
+ case '←⇒':
102
+ case '<-~>':
103
+ case '←↛':
104
+ return 'legal';
105
+ case '<=':
106
+ case '⇐':
107
+ case '<=>':
108
+ case '⇔':
109
+ case '<=->':
110
+ case '⇐→':
111
+ case '<=~>':
112
+ case '⇐↛':
113
+ return 'main';
114
+ case '<~':
115
+ case '↚':
116
+ case '<~>':
117
+ case '↮':
118
+ case '<~->':
119
+ case '↚→':
120
+ case '<~=>':
121
+ case '↚⇒':
122
+ return 'forced';
123
+ default:
124
+ throw new JssmError(undefined, `arrow_direction: unknown arrow type ${arrow}`);
125
+ }
126
+ }
127
+ /* eslint-enable complexity */
128
+ /* eslint-disable complexity */
129
+ /*********
130
+ *
131
+ * Return the direction of an arrow - `right`, `left`, or `both`.
132
+ *
133
+ * ```typescript
134
+ * import { arrow_left_kind } from 'jssm';
135
+ *
136
+ * arrow_left_kind('->'); // 'legal'
137
+ * arrow_left_kind('=>'); // 'main'
138
+ * arrow_left_kind('~>'); // 'forced'
139
+ * arrow_left_kind('<->'); // 'legal'
140
+ * arrow_left_kind('<-'); // 'none'
141
+ * ```
142
+ *
143
+ * @param arrow The arrow to be evaluated
144
+ *
145
+ */
146
+ function arrow_right_kind(arrow) {
147
+ switch (String(arrow)) {
148
+ case '<-':
149
+ case '←':
150
+ case '<=':
151
+ case '⇐':
152
+ case '<~':
153
+ case '↚':
154
+ return 'none';
155
+ case '->':
156
+ case '→':
157
+ case '<->':
158
+ case '↔':
159
+ case '<=->':
160
+ case '⇐→':
161
+ case '<~->':
162
+ case '↚→':
163
+ return 'legal';
164
+ case '=>':
165
+ case '⇒':
166
+ case '<=>':
167
+ case '⇔':
168
+ case '<-=>':
169
+ case '←⇒':
170
+ case '<~=>':
171
+ case '↚⇒':
172
+ return 'main';
173
+ case '~>':
174
+ case '↛':
175
+ case '<~>':
176
+ case '↮':
177
+ case '<-~>':
178
+ case '←↛':
179
+ case '<=~>':
180
+ case '⇐↛':
181
+ return 'forced';
182
+ default:
183
+ throw new JssmError(undefined, `arrow_direction: unknown arrow type ${arrow}`);
184
+ }
185
+ }
186
+ /* eslint-enable complexity */
187
+ export { arrow_direction, arrow_left_kind, arrow_right_kind };
@@ -1,2 +1,2 @@
1
- const version = "5.85.5", build_time = 1663020507687;
1
+ const version = "5.85.8", build_time = 1663038933181;
2
2
  export { version, build_time };