nadesiko3 3.7.13 → 3.7.14
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.
- package/batch/command.txt +473 -473
- package/batch/jsplugin2text.nako3 +2 -0
- package/core/package.json +1 -1
- package/core/src/nako3.mjs +0 -4
- package/core/src/nako3.mts +55 -55
- package/core/src/nako_ast.mjs +0 -1
- package/core/src/nako_ast.mts +1 -1
- package/core/src/nako_colors.mjs +0 -1
- package/core/src/nako_colors.mts +1 -1
- package/core/src/nako_core_version.mjs +2 -2
- package/core/src/nako_core_version.mts +2 -2
- package/core/src/nako_csv.mjs +0 -1
- package/core/src/nako_csv.mts +9 -9
- package/core/src/nako_errors.mts +8 -8
- package/core/src/nako_from_dncl.mts +5 -5
- package/core/src/nako_from_dncl2.mjs +0 -1
- package/core/src/nako_from_dncl2.mts +5 -5
- package/core/src/nako_gen.mjs +13 -15
- package/core/src/nako_gen.mts +224 -220
- package/core/src/nako_global.mts +11 -11
- package/core/src/nako_indent.mts +92 -92
- package/core/src/nako_indent_chars.mts +1 -1
- package/core/src/nako_indent_inline.mjs +11 -11
- package/core/src/nako_indent_inline.mts +20 -20
- package/core/src/nako_lex_rules.mjs +0 -1
- package/core/src/nako_lex_rules.mts +8 -8
- package/core/src/nako_lexer.mjs +0 -1
- package/core/src/nako_lexer.mts +23 -23
- package/core/src/nako_logger.mjs +1 -1
- package/core/src/nako_logger.mts +38 -38
- package/core/src/nako_parser3.mjs +4 -5
- package/core/src/nako_parser3.mts +79 -79
- package/core/src/nako_parser_base.mjs +1 -1
- package/core/src/nako_parser_base.mts +68 -68
- package/core/src/nako_parser_const.mjs +0 -1
- package/core/src/nako_parser_const.mts +1 -1
- package/core/src/nako_prepare.mts +12 -12
- package/core/src/nako_source_mapping.mts +9 -9
- package/core/src/nako_token.mjs +0 -1
- package/core/src/nako_token.mts +2 -2
- package/core/src/nako_tools.mjs +0 -1
- package/core/src/nako_tools.mts +4 -4
- package/core/src/nako_types.mjs +0 -1
- package/core/src/nako_types.mts +3 -3
- package/core/src/plugin_api.mjs +0 -1
- package/core/src/plugin_api.mts +1 -1
- package/core/src/plugin_csv.mjs +0 -1
- package/core/src/plugin_csv.mts +7 -7
- package/core/src/plugin_math.mjs +0 -1
- package/core/src/plugin_math.mts +39 -40
- package/core/src/plugin_promise.mjs +1 -1
- package/core/src/plugin_promise.mts +9 -9
- package/core/src/plugin_system.mjs +1 -10
- package/core/src/plugin_system.mts +319 -321
- package/core/src/plugin_test.mjs +0 -2
- package/core/src/plugin_test.mts +6 -6
- package/core/src/plugin_toml.mjs +1 -1
- package/core/src/plugin_toml.mts +4 -4
- package/core/test/flow_test.mjs +22 -0
- package/package.json +31 -34
- package/release/_hash.txt +24 -24
- package/release/_script-tags.txt +16 -16
- package/release/command_cnako3.json +1 -1
- package/release/edit_main.js +33 -21
- package/release/edit_main.js.map +4 -4
- package/release/editor.js +33 -21
- package/release/plugin_keigo.js.map +2 -2
- package/release/plugin_turtle.js.map +2 -2
- package/release/plugin_weykturtle3d.js.map +2 -2
- package/release/version.js +29 -17
- package/release/version_main.js +29 -17
- package/release/version_main.js.map +4 -4
- package/release/wnako3.js +51 -44
- package/release/wnako3.js.map +3 -3
- package/release/wnako3webworker.js +45 -38
- package/release/wnako3webworker.js.map +2 -2
- package/src/cnako3.mts +1 -1
- package/src/cnako3mod.mjs +4 -7
- package/src/cnako3mod.mts +24 -24
- package/src/commander_ja.mts +8 -8
- package/src/deno_wrapper.mjs +0 -1
- package/src/deno_wrapper.mts +5 -5
- package/src/nako_version.mjs +2 -2
- package/src/nako_version.mts +2 -2
- package/src/plugin_browser.mjs +21 -29
- package/src/plugin_browser.mts +30 -35
- package/src/plugin_browser_ajax.mts +27 -27
- package/src/plugin_browser_audio.mjs +0 -1
- package/src/plugin_browser_audio.mts +11 -11
- package/src/plugin_browser_camera.mts +8 -8
- package/src/plugin_browser_canvas.mjs +0 -2
- package/src/plugin_browser_canvas.mts +34 -34
- package/src/plugin_browser_chart.mjs +0 -1
- package/src/plugin_browser_chart.mts +13 -13
- package/src/plugin_browser_color.mts +2 -2
- package/src/plugin_browser_crypto.mts +5 -5
- package/src/plugin_browser_dialog.mts +4 -4
- package/src/plugin_browser_dom_basic.mts +42 -42
- package/src/plugin_browser_dom_event.mjs +0 -1
- package/src/plugin_browser_dom_event.mts +27 -28
- package/src/plugin_browser_dom_parts.mjs +0 -2
- package/src/plugin_browser_dom_parts.mts +31 -31
- package/src/plugin_browser_geolocation.mts +3 -3
- package/src/plugin_browser_hotkey.mts +3 -3
- package/src/plugin_browser_html.mts +4 -4
- package/src/plugin_browser_in_worker.mts +1 -1
- package/src/plugin_browser_location.mts +2 -2
- package/src/plugin_browser_speech.mts +7 -7
- package/src/plugin_browser_storage.mts +11 -11
- package/src/plugin_browser_system.mts +2 -2
- package/src/plugin_browser_websocket.mts +6 -6
- package/src/plugin_httpserver.mts +17 -17
- package/src/plugin_keigo.mts +5 -5
- package/src/plugin_node.mjs +7 -48
- package/src/plugin_node.mts +114 -145
- package/src/plugin_turtle.mts +143 -143
- package/src/plugin_weykturtle3d.mjs +0 -3
- package/src/plugin_weykturtle3d.mts +135 -135
- package/src/plugin_weykturtle3d_three.mjs +0 -1
- package/src/plugin_weykturtle3d_three.mts +1 -1
- package/src/plugin_weykturtle3d_threeutil.mts +3 -3
- package/src/wnako3.mjs +0 -1
- package/src/wnako3.mts +1 -1
- package/src/wnako3_editor.mjs +0 -2
- package/src/wnako3_editor.mts +132 -132
- package/src/wnako3mod.mjs +0 -5
- package/src/wnako3mod.mts +19 -19
package/core/src/plugin_math.mts
CHANGED
|
@@ -16,7 +16,7 @@ export default {
|
|
|
16
16
|
type: 'func',
|
|
17
17
|
josi: [],
|
|
18
18
|
pure: true,
|
|
19
|
-
fn: function
|
|
19
|
+
fn: function(): void {
|
|
20
20
|
// 初期化不要
|
|
21
21
|
}
|
|
22
22
|
},
|
|
@@ -25,7 +25,7 @@ export default {
|
|
|
25
25
|
type: 'func',
|
|
26
26
|
josi: [['の']],
|
|
27
27
|
pure: true,
|
|
28
|
-
fn: function
|
|
28
|
+
fn: function(v: number): number {
|
|
29
29
|
return Math.sin(v)
|
|
30
30
|
}
|
|
31
31
|
},
|
|
@@ -33,7 +33,7 @@ export default {
|
|
|
33
33
|
type: 'func',
|
|
34
34
|
josi: [['の']],
|
|
35
35
|
pure: true,
|
|
36
|
-
fn: function
|
|
36
|
+
fn: function(v: number): number {
|
|
37
37
|
return Math.cos(v)
|
|
38
38
|
}
|
|
39
39
|
},
|
|
@@ -41,7 +41,7 @@ export default {
|
|
|
41
41
|
type: 'func',
|
|
42
42
|
josi: [['の']],
|
|
43
43
|
pure: true,
|
|
44
|
-
fn: function
|
|
44
|
+
fn: function(v: number): number {
|
|
45
45
|
return Math.tan(v)
|
|
46
46
|
}
|
|
47
47
|
},
|
|
@@ -49,7 +49,7 @@ export default {
|
|
|
49
49
|
type: 'func',
|
|
50
50
|
josi: [['の']],
|
|
51
51
|
pure: true,
|
|
52
|
-
fn: function
|
|
52
|
+
fn: function(v: number): number {
|
|
53
53
|
return Math.asin(v)
|
|
54
54
|
}
|
|
55
55
|
},
|
|
@@ -57,7 +57,7 @@ export default {
|
|
|
57
57
|
type: 'func',
|
|
58
58
|
josi: [['の']],
|
|
59
59
|
pure: true,
|
|
60
|
-
fn: function
|
|
60
|
+
fn: function(v: number): number {
|
|
61
61
|
return Math.acos(v)
|
|
62
62
|
}
|
|
63
63
|
},
|
|
@@ -65,7 +65,7 @@ export default {
|
|
|
65
65
|
type: 'func',
|
|
66
66
|
josi: [['の']],
|
|
67
67
|
pure: true,
|
|
68
|
-
fn: function
|
|
68
|
+
fn: function(v: number): number {
|
|
69
69
|
return Math.atan(v)
|
|
70
70
|
}
|
|
71
71
|
},
|
|
@@ -73,7 +73,7 @@ export default {
|
|
|
73
73
|
type: 'func',
|
|
74
74
|
josi: [['と'], ['の']],
|
|
75
75
|
pure: true,
|
|
76
|
-
fn: function
|
|
76
|
+
fn: function(y: number, x: number): number {
|
|
77
77
|
return Math.atan2(y, x)
|
|
78
78
|
}
|
|
79
79
|
},
|
|
@@ -81,7 +81,7 @@ export default {
|
|
|
81
81
|
type: 'func',
|
|
82
82
|
josi: [['の']],
|
|
83
83
|
pure: true,
|
|
84
|
-
fn: function
|
|
84
|
+
fn: function(XY: number[]): number {
|
|
85
85
|
return Math.atan2(XY[1], XY[0]) / Math.PI * 180
|
|
86
86
|
}
|
|
87
87
|
},
|
|
@@ -89,7 +89,7 @@ export default {
|
|
|
89
89
|
type: 'func',
|
|
90
90
|
josi: [['を']],
|
|
91
91
|
pure: true,
|
|
92
|
-
fn: function
|
|
92
|
+
fn: function(v: number): number {
|
|
93
93
|
return v / Math.PI * 180
|
|
94
94
|
}
|
|
95
95
|
},
|
|
@@ -97,7 +97,7 @@ export default {
|
|
|
97
97
|
type: 'func',
|
|
98
98
|
josi: [['を']],
|
|
99
99
|
pure: true,
|
|
100
|
-
fn: function
|
|
100
|
+
fn: function(v: number): number {
|
|
101
101
|
return (v / 180) * Math.PI
|
|
102
102
|
}
|
|
103
103
|
},
|
|
@@ -105,7 +105,7 @@ export default {
|
|
|
105
105
|
type: 'func',
|
|
106
106
|
josi: [['を']],
|
|
107
107
|
pure: true,
|
|
108
|
-
fn: function
|
|
108
|
+
fn: function(v: number): number {
|
|
109
109
|
return v / Math.PI * 180
|
|
110
110
|
}
|
|
111
111
|
},
|
|
@@ -113,7 +113,7 @@ export default {
|
|
|
113
113
|
type: 'func',
|
|
114
114
|
josi: [['を']],
|
|
115
115
|
pure: true,
|
|
116
|
-
fn: function
|
|
116
|
+
fn: function(v: number): number {
|
|
117
117
|
return (v / 180) * Math.PI
|
|
118
118
|
}
|
|
119
119
|
},
|
|
@@ -123,7 +123,7 @@ export default {
|
|
|
123
123
|
type: 'func',
|
|
124
124
|
josi: [['の']],
|
|
125
125
|
pure: true,
|
|
126
|
-
fn: function
|
|
126
|
+
fn: function(v: any): number {
|
|
127
127
|
return (parseFloat(v) === 0) ? 0 : (v > 0) ? 1 : -1
|
|
128
128
|
}
|
|
129
129
|
},
|
|
@@ -131,8 +131,7 @@ export default {
|
|
|
131
131
|
type: 'func',
|
|
132
132
|
josi: [['の']],
|
|
133
133
|
pure: false,
|
|
134
|
-
|
|
135
|
-
fn: function (v: number, sys: NakoSystem): number {
|
|
134
|
+
fn: function(v: number, sys: NakoSystem): number {
|
|
136
135
|
return sys.__exec('SIGN', [v])
|
|
137
136
|
}
|
|
138
137
|
},
|
|
@@ -140,7 +139,7 @@ export default {
|
|
|
140
139
|
type: 'func',
|
|
141
140
|
josi: [['の']],
|
|
142
141
|
pure: true,
|
|
143
|
-
fn: function
|
|
142
|
+
fn: function(a: number): number {
|
|
144
143
|
return Math.abs(a)
|
|
145
144
|
}
|
|
146
145
|
},
|
|
@@ -148,7 +147,7 @@ export default {
|
|
|
148
147
|
type: 'func',
|
|
149
148
|
josi: [['の']],
|
|
150
149
|
pure: true,
|
|
151
|
-
fn: function
|
|
150
|
+
fn: function(a: number): number {
|
|
152
151
|
return Math.abs(a)
|
|
153
152
|
}
|
|
154
153
|
},
|
|
@@ -156,7 +155,7 @@ export default {
|
|
|
156
155
|
type: 'func',
|
|
157
156
|
josi: [['の']],
|
|
158
157
|
pure: true,
|
|
159
|
-
fn: function
|
|
158
|
+
fn: function(a: number): number {
|
|
160
159
|
return Math.exp(a)
|
|
161
160
|
}
|
|
162
161
|
},
|
|
@@ -164,7 +163,7 @@ export default {
|
|
|
164
163
|
type: 'func',
|
|
165
164
|
josi: [['と'], ['の']],
|
|
166
165
|
pure: true,
|
|
167
|
-
fn: function
|
|
166
|
+
fn: function(a: number, b: number): number {
|
|
168
167
|
return Math.hypot(a, b)
|
|
169
168
|
}
|
|
170
169
|
},
|
|
@@ -172,7 +171,7 @@ export default {
|
|
|
172
171
|
type: 'func',
|
|
173
172
|
josi: [['と'], ['の']],
|
|
174
173
|
pure: true,
|
|
175
|
-
fn: function
|
|
174
|
+
fn: function(a: number, b: number): number {
|
|
176
175
|
return Math.hypot(a, b)
|
|
177
176
|
}
|
|
178
177
|
},
|
|
@@ -180,7 +179,7 @@ export default {
|
|
|
180
179
|
type: 'func',
|
|
181
180
|
josi: [['の']],
|
|
182
181
|
pure: true,
|
|
183
|
-
fn: function
|
|
182
|
+
fn: function(a: number): number {
|
|
184
183
|
return Math.log(a)
|
|
185
184
|
}
|
|
186
185
|
},
|
|
@@ -188,7 +187,7 @@ export default {
|
|
|
188
187
|
type: 'func',
|
|
189
188
|
josi: [['の']],
|
|
190
189
|
pure: true,
|
|
191
|
-
fn: function
|
|
190
|
+
fn: function(a: number): number {
|
|
192
191
|
return Math.log(a)
|
|
193
192
|
}
|
|
194
193
|
},
|
|
@@ -196,7 +195,7 @@ export default {
|
|
|
196
195
|
type: 'func',
|
|
197
196
|
josi: [['で'], ['の']],
|
|
198
197
|
pure: true,
|
|
199
|
-
fn: function
|
|
198
|
+
fn: function(a: number, b: number): number {
|
|
200
199
|
if (a === 2) { return Math.LOG2E * Math.log(b) }
|
|
201
200
|
if (a === 10) { return Math.LOG10E * Math.log(b) }
|
|
202
201
|
return Math.log(b) / Math.log(a)
|
|
@@ -206,7 +205,7 @@ export default {
|
|
|
206
205
|
type: 'func',
|
|
207
206
|
josi: [['の']],
|
|
208
207
|
pure: true,
|
|
209
|
-
fn: function
|
|
208
|
+
fn: function(a: number): number {
|
|
210
209
|
return a % 1
|
|
211
210
|
}
|
|
212
211
|
},
|
|
@@ -214,7 +213,7 @@ export default {
|
|
|
214
213
|
type: 'func',
|
|
215
214
|
josi: [['の']],
|
|
216
215
|
pure: true,
|
|
217
|
-
fn: function
|
|
216
|
+
fn: function(a: number): number {
|
|
218
217
|
return a % 1
|
|
219
218
|
}
|
|
220
219
|
},
|
|
@@ -222,7 +221,7 @@ export default {
|
|
|
222
221
|
type: 'func',
|
|
223
222
|
josi: [['の']],
|
|
224
223
|
pure: true,
|
|
225
|
-
fn: function
|
|
224
|
+
fn: function(a: number): number {
|
|
226
225
|
return Math.trunc(a)
|
|
227
226
|
}
|
|
228
227
|
},
|
|
@@ -230,7 +229,7 @@ export default {
|
|
|
230
229
|
type: 'func',
|
|
231
230
|
josi: [['の']],
|
|
232
231
|
pure: true,
|
|
233
|
-
fn: function
|
|
232
|
+
fn: function(a: any): number | undefined {
|
|
234
233
|
// numberの場合
|
|
235
234
|
if (typeof a === 'number') {
|
|
236
235
|
return Math.floor(Math.random() * a)
|
|
@@ -254,7 +253,7 @@ export default {
|
|
|
254
253
|
type: 'func',
|
|
255
254
|
josi: [['から'], ['までの', 'の']],
|
|
256
255
|
pure: true,
|
|
257
|
-
fn: function
|
|
256
|
+
fn: function(a: number, b: number): number {
|
|
258
257
|
return (Math.floor(Math.random() * (b - a + 1)) + a)
|
|
259
258
|
}
|
|
260
259
|
},
|
|
@@ -262,7 +261,7 @@ export default {
|
|
|
262
261
|
type: 'func',
|
|
263
262
|
josi: [['の']],
|
|
264
263
|
pure: true,
|
|
265
|
-
fn: function
|
|
264
|
+
fn: function(a: number): number {
|
|
266
265
|
return Math.sqrt(a)
|
|
267
266
|
}
|
|
268
267
|
},
|
|
@@ -270,7 +269,7 @@ export default {
|
|
|
270
269
|
type: 'func',
|
|
271
270
|
josi: [['の']],
|
|
272
271
|
pure: true,
|
|
273
|
-
fn: function
|
|
272
|
+
fn: function(a: number): number {
|
|
274
273
|
return Math.sqrt(a)
|
|
275
274
|
}
|
|
276
275
|
},
|
|
@@ -280,7 +279,7 @@ export default {
|
|
|
280
279
|
type: 'func',
|
|
281
280
|
josi: [['を']],
|
|
282
281
|
pure: true,
|
|
283
|
-
fn: function
|
|
282
|
+
fn: function(v: number): number {
|
|
284
283
|
return Math.round(v)
|
|
285
284
|
}
|
|
286
285
|
},
|
|
@@ -288,7 +287,7 @@ export default {
|
|
|
288
287
|
type: 'func',
|
|
289
288
|
josi: [['を', 'の']],
|
|
290
289
|
pure: true,
|
|
291
|
-
fn: function
|
|
290
|
+
fn: function(v: number): number {
|
|
292
291
|
return Math.round(v)
|
|
293
292
|
}
|
|
294
293
|
},
|
|
@@ -296,7 +295,7 @@ export default {
|
|
|
296
295
|
type: 'func',
|
|
297
296
|
josi: [['を'], ['で']],
|
|
298
297
|
pure: true,
|
|
299
|
-
fn: function
|
|
298
|
+
fn: function(a: number, b: number): number {
|
|
300
299
|
const base = Math.pow(10, b)
|
|
301
300
|
return Math.ceil(a * base) / base
|
|
302
301
|
}
|
|
@@ -305,7 +304,7 @@ export default {
|
|
|
305
304
|
type: 'func',
|
|
306
305
|
josi: [['を'], ['で']],
|
|
307
306
|
pure: true,
|
|
308
|
-
fn: function
|
|
307
|
+
fn: function(a: number, b: number): number {
|
|
309
308
|
const base = Math.pow(10, b)
|
|
310
309
|
return Math.floor(a * base) / base
|
|
311
310
|
}
|
|
@@ -314,7 +313,7 @@ export default {
|
|
|
314
313
|
type: 'func',
|
|
315
314
|
josi: [['を'], ['で']],
|
|
316
315
|
pure: true,
|
|
317
|
-
fn: function
|
|
316
|
+
fn: function(a: number, b: number): number {
|
|
318
317
|
const base = Math.pow(10, b)
|
|
319
318
|
return Math.round(a * base) / base
|
|
320
319
|
}
|
|
@@ -323,7 +322,7 @@ export default {
|
|
|
323
322
|
type: 'func',
|
|
324
323
|
josi: [['を']],
|
|
325
324
|
pure: true,
|
|
326
|
-
fn: function
|
|
325
|
+
fn: function(v: number): number {
|
|
327
326
|
return Math.ceil(v)
|
|
328
327
|
}
|
|
329
328
|
},
|
|
@@ -331,7 +330,7 @@ export default {
|
|
|
331
330
|
type: 'func',
|
|
332
331
|
josi: [['を']],
|
|
333
332
|
pure: true,
|
|
334
|
-
fn: function
|
|
333
|
+
fn: function(v: number): number {
|
|
335
334
|
return Math.ceil(v)
|
|
336
335
|
}
|
|
337
336
|
},
|
|
@@ -339,7 +338,7 @@ export default {
|
|
|
339
338
|
type: 'func',
|
|
340
339
|
josi: [['を']],
|
|
341
340
|
pure: true,
|
|
342
|
-
fn: function
|
|
341
|
+
fn: function(v: number): number {
|
|
343
342
|
return Math.floor(v)
|
|
344
343
|
}
|
|
345
344
|
},
|
|
@@ -347,7 +346,7 @@ export default {
|
|
|
347
346
|
type: 'func',
|
|
348
347
|
josi: [['を']],
|
|
349
348
|
pure: true,
|
|
350
|
-
fn: function
|
|
349
|
+
fn: function(v: number): number {
|
|
351
350
|
return Math.floor(v)
|
|
352
351
|
}
|
|
353
352
|
}
|
|
@@ -15,10 +15,10 @@ export default {
|
|
|
15
15
|
type: 'func',
|
|
16
16
|
josi: [],
|
|
17
17
|
pure: true,
|
|
18
|
-
fn: function
|
|
19
|
-
if ((sys as any).__promise
|
|
18
|
+
fn: function(sys: NakoSystem) {
|
|
19
|
+
if ((sys as any).__promise === null || (sys as any).__promise === undefined) {
|
|
20
20
|
(sys as any).__promise = {
|
|
21
|
-
setLastPromise: function
|
|
21
|
+
setLastPromise: function(promise: any) {
|
|
22
22
|
sys.__setSysVar('そ', promise)
|
|
23
23
|
return promise
|
|
24
24
|
}
|
|
@@ -33,7 +33,7 @@ export default {
|
|
|
33
33
|
type: 'func',
|
|
34
34
|
josi: [['を', 'で']],
|
|
35
35
|
pure: true,
|
|
36
|
-
fn: function
|
|
36
|
+
fn: function(callback: any, sys: NakoSystem) {
|
|
37
37
|
return (sys as any).__promise.setLastPromise(new Promise((resolve, reject) => {
|
|
38
38
|
return callback(resolve, reject)
|
|
39
39
|
}))
|
|
@@ -44,7 +44,7 @@ export default {
|
|
|
44
44
|
type: 'func',
|
|
45
45
|
josi: [['を'], ['の', 'が', 'に']],
|
|
46
46
|
pure: true,
|
|
47
|
-
fn: function
|
|
47
|
+
fn: function(callback: any, promise: any, sys: NakoSystem) {
|
|
48
48
|
return (sys as any).__promise.setLastPromise(promise.then((result:any) => {
|
|
49
49
|
sys.__setSysVar('対象', result)
|
|
50
50
|
return callback(result)
|
|
@@ -56,7 +56,7 @@ export default {
|
|
|
56
56
|
type: 'func',
|
|
57
57
|
josi: [['を'], ['の', 'が', 'に']],
|
|
58
58
|
pure: true,
|
|
59
|
-
fn: function
|
|
59
|
+
fn: function(cbFunc: any, promise: any, sys: NakoSystem): any {
|
|
60
60
|
return (sys as any).__promise.setLastPromise(promise.then((result: any) => {
|
|
61
61
|
sys.__setSysVar('対象', result)
|
|
62
62
|
return cbFunc(true, result, sys)
|
|
@@ -71,7 +71,7 @@ export default {
|
|
|
71
71
|
type: 'func',
|
|
72
72
|
josi: [['を'], ['の', 'が', 'に']],
|
|
73
73
|
pure: true,
|
|
74
|
-
fn: function
|
|
74
|
+
fn: function(callback: any, promise: any, sys: NakoSystem): any {
|
|
75
75
|
return (sys as any).__promise.setLastPromise(promise.catch((err: any) => {
|
|
76
76
|
sys.__setSysVar('対象', err)
|
|
77
77
|
return callback(err)
|
|
@@ -83,7 +83,7 @@ export default {
|
|
|
83
83
|
type: 'func',
|
|
84
84
|
josi: [['を'], ['の', 'が', 'に']],
|
|
85
85
|
pure: true,
|
|
86
|
-
fn: function
|
|
86
|
+
fn: function(callback: any, promise: any, sys: NakoSystem): any {
|
|
87
87
|
return (sys as any).__promise.setLastPromise(promise.finally(() => {
|
|
88
88
|
return callback()
|
|
89
89
|
}))
|
|
@@ -95,7 +95,7 @@ export default {
|
|
|
95
95
|
josi: [['と', 'を']],
|
|
96
96
|
isVariableJosi: true,
|
|
97
97
|
pure: true,
|
|
98
|
-
fn: function
|
|
98
|
+
fn: function(...args:any): any {
|
|
99
99
|
const sys = args.pop()
|
|
100
100
|
return (sys).__promise.setLastPromise(Promise.all(args))
|
|
101
101
|
},
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
1
|
import { NakoRuntimeError } from './nako_errors.mjs';
|
|
3
2
|
export default {
|
|
4
3
|
'meta': {
|
|
@@ -176,7 +175,6 @@ export default {
|
|
|
176
175
|
sys.__evalSafe = (src) => {
|
|
177
176
|
// evalのスコープを変えるためのテクニック
|
|
178
177
|
// https://esbuild.github.io/content-types/#direct-eval
|
|
179
|
-
// eslint-disable-next-line no-eval
|
|
180
178
|
const _eval = eval;
|
|
181
179
|
try {
|
|
182
180
|
return _eval(src);
|
|
@@ -187,10 +185,8 @@ export default {
|
|
|
187
185
|
}
|
|
188
186
|
};
|
|
189
187
|
// eval function #1733 - 互換性を優先するため、direct evalを使うことに
|
|
190
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
191
188
|
sys.__evalJS = (src, sys) => {
|
|
192
189
|
try {
|
|
193
|
-
// eslint-disable-next-line no-eval
|
|
194
190
|
return eval(src);
|
|
195
191
|
}
|
|
196
192
|
catch (e) {
|
|
@@ -199,7 +195,6 @@ export default {
|
|
|
199
195
|
}
|
|
200
196
|
};
|
|
201
197
|
// Propアクセス支援
|
|
202
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
203
198
|
sys.__registPropAccessor = (f, getProp, setProp) => {
|
|
204
199
|
system.__propAccessor.push({
|
|
205
200
|
target: f,
|
|
@@ -637,7 +632,6 @@ export default {
|
|
|
637
632
|
fn: function (b, ...a) {
|
|
638
633
|
a.pop(); // 必ず末尾に sys があるので、末尾のシステム変数を除外
|
|
639
634
|
a.push(b);
|
|
640
|
-
// eslint-disable-next-line @typescript-eslint/restrict-plus-operands
|
|
641
635
|
return a.reduce((p, c) => p + c);
|
|
642
636
|
}
|
|
643
637
|
},
|
|
@@ -779,7 +773,6 @@ export default {
|
|
|
779
773
|
josi: [['を'], ['で']],
|
|
780
774
|
fn: function (name, args, sys) {
|
|
781
775
|
// nameが文字列ならevalして関数を得る
|
|
782
|
-
// eslint-disable-next-line no-eval
|
|
783
776
|
if (typeof name === 'string') {
|
|
784
777
|
name = sys.__evalJS(name, sys);
|
|
785
778
|
}
|
|
@@ -827,7 +820,6 @@ export default {
|
|
|
827
820
|
josi: [['の'], ['を'], ['で']],
|
|
828
821
|
fn: function (obj, m, args, sys) {
|
|
829
822
|
// objが文字列ならevalして関数を得る
|
|
830
|
-
// eslint-disable-next-line no-eval
|
|
831
823
|
if (typeof obj === 'string') {
|
|
832
824
|
obj = sys.__evalJS(obj, sys);
|
|
833
825
|
}
|
|
@@ -2251,7 +2243,6 @@ export default {
|
|
|
2251
2243
|
type: 'func',
|
|
2252
2244
|
josi: [['から', 'の'], ['を']],
|
|
2253
2245
|
pure: true,
|
|
2254
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
2255
2246
|
fn: function (a, i, sys) {
|
|
2256
2247
|
// 文字列のとき
|
|
2257
2248
|
if (typeof a === 'string') {
|
|
@@ -3724,5 +3715,5 @@ export default {
|
|
|
3724
3715
|
parts.pop();
|
|
3725
3716
|
return parts.join(sep);
|
|
3726
3717
|
}
|
|
3727
|
-
}
|
|
3718
|
+
}
|
|
3728
3719
|
};
|