nadesiko3 3.7.2 → 3.7.4

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 (159) hide show
  1. package/batch/command.txt +472 -469
  2. package/batch/pickup_command.nako3 +1 -1
  3. package/core/.eslintrc.cjs +10 -3
  4. package/core/package-lock.json +1184 -645
  5. package/core/package.json +4 -5
  6. package/core/src/nako3.mjs +8 -6
  7. package/core/src/nako3.mts +19 -16
  8. package/core/src/nako_ast.mts +2 -3
  9. package/core/src/nako_core_version.mjs +2 -2
  10. package/core/src/nako_core_version.mts +2 -2
  11. package/core/src/nako_csv.mjs +1 -0
  12. package/core/src/nako_csv.mts +3 -2
  13. package/core/src/nako_from_dncl.mjs +1 -1
  14. package/core/src/nako_from_dncl.mts +1 -1
  15. package/core/src/nako_from_dncl2.mjs +1 -1
  16. package/core/src/nako_from_dncl2.mts +2 -2
  17. package/core/src/nako_gen.mjs +37 -35
  18. package/core/src/nako_gen.mts +70 -67
  19. package/core/src/nako_global.mjs +3 -2
  20. package/core/src/nako_global.mts +3 -2
  21. package/core/src/nako_lexer.mjs +3 -3
  22. package/core/src/nako_lexer.mts +3 -3
  23. package/core/src/nako_logger.mjs +1 -1
  24. package/core/src/nako_logger.mts +2 -2
  25. package/core/src/nako_parser3.mjs +67 -59
  26. package/core/src/nako_parser3.mts +96 -90
  27. package/core/src/nako_parser_base.mts +3 -3
  28. package/core/src/nako_prepare.mjs +1 -1
  29. package/core/src/nako_prepare.mts +1 -1
  30. package/core/src/nako_source_mapping.mts +0 -1
  31. package/core/src/nako_token.mts +8 -8
  32. package/core/src/nako_types.mts +1 -1
  33. package/core/src/plugin_api.mts +1 -1
  34. package/core/src/plugin_csv.mjs +1 -0
  35. package/core/src/plugin_csv.mts +2 -1
  36. package/core/src/plugin_math.mjs +2 -2
  37. package/core/src/plugin_math.mts +3 -3
  38. package/core/src/plugin_promise.mjs +1 -1
  39. package/core/src/plugin_promise.mts +1 -1
  40. package/core/src/plugin_system.mjs +117 -40
  41. package/core/src/plugin_system.mts +132 -58
  42. package/core/src/plugin_test.mjs +3 -1
  43. package/core/src/plugin_test.mts +3 -1
  44. package/core/test/basic_test.mjs +16 -0
  45. package/core/test/calc_test.mjs +7 -0
  46. package/core/test/plugin_system_test.mjs +33 -0
  47. package/doc/files.md +4 -4
  48. package/doc/plugins.md +1 -1
  49. package/package.json +9 -9
  50. package/release/_hash.txt +36 -121
  51. package/release/_script-tags.txt +16 -33
  52. package/release/command.json +1 -1
  53. package/release/command.json.js +1 -1
  54. package/release/command_cnako3.json +1 -1
  55. package/release/command_list.json +1 -1
  56. package/release/edit_main.js +3 -3
  57. package/release/edit_main.js.map +2 -2
  58. package/release/editor.js +3 -3
  59. package/release/plugin_markup.js +53 -53
  60. package/release/plugin_markup.js.map +3 -3
  61. package/release/plugin_weykturtle3d.js +1 -1
  62. package/release/plugin_weykturtle3d.js.map +4 -4
  63. package/release/version.js +3 -3
  64. package/release/version_main.js +3 -3
  65. package/release/version_main.js.map +2 -2
  66. package/release/wnako3.js +66 -66
  67. package/release/wnako3.js.map +3 -3
  68. package/release/wnako3webworker.js +58 -58
  69. package/release/wnako3webworker.js.map +3 -3
  70. package/src/browsers.txt +30 -20
  71. package/src/cnako3mod.mjs +19 -18
  72. package/src/cnako3mod.mts +17 -16
  73. package/src/deno_wrapper.mjs +6 -6
  74. package/src/deno_wrapper.mts +11 -11
  75. package/src/nako_version.mjs +2 -2
  76. package/src/nako_version.mts +2 -2
  77. package/src/plugin_browser.mjs +2 -2
  78. package/src/plugin_browser.mts +5 -5
  79. package/src/plugin_browser_ajax.mjs +2 -2
  80. package/src/plugin_browser_ajax.mts +2 -2
  81. package/src/plugin_browser_api.mts +0 -1
  82. package/src/plugin_browser_crypto.mjs +8 -8
  83. package/src/plugin_browser_crypto.mts +13 -13
  84. package/src/plugin_browser_dom_basic.mjs +3 -3
  85. package/src/plugin_browser_dom_basic.mts +5 -7
  86. package/src/plugin_browser_dom_event.mjs +1 -1
  87. package/src/plugin_browser_dom_event.mts +2 -1
  88. package/src/plugin_browser_dom_parts.mjs +33 -18
  89. package/src/plugin_browser_dom_parts.mts +60 -59
  90. package/src/plugin_browser_speech.mjs +1 -1
  91. package/src/plugin_browser_speech.mts +1 -1
  92. package/src/plugin_node.mjs +5 -3
  93. package/src/plugin_node.mts +6 -4
  94. package/src/plugin_weykturtle3d.mjs +38 -15
  95. package/src/plugin_weykturtle3d.mts +279 -240
  96. package/src/plugin_weykturtle3d_three.mjs +3 -0
  97. package/src/plugin_weykturtle3d_three.mts +214 -0
  98. package/src/plugin_weykturtle3d_threeutil.mjs +28 -0
  99. package/src/plugin_weykturtle3d_threeutil.mts +31 -0
  100. package/src/wnako3.mjs +1 -0
  101. package/src/wnako3.mts +1 -0
  102. package/src/wnako3mod.mjs +5 -2
  103. package/src/wnako3mod.mts +6 -3
  104. package/batch/command_nakopad.txt +0 -1177
  105. package/core/__report.txt +0 -617
  106. package/core/command/plugin_snako.mjs +0 -112
  107. package/core/command/snako.mjs +0 -108
  108. package/release/core_src_nako_josi_list_mjs.js +0 -3
  109. package/release/core_src_nako_josi_list_mjs.js.LICENSE.txt +0 -3
  110. package/release/core_src_nako_josi_list_mjs.js.map +0 -1
  111. package/release/core_src_nako_reserved_words_mjs.js +0 -3
  112. package/release/core_src_nako_reserved_words_mjs.js.LICENSE.txt +0 -3
  113. package/release/core_src_nako_reserved_words_mjs.js.map +0 -1
  114. package/release/editor/edit_main.js +0 -48
  115. package/release/editor/edit_main.js.map +0 -7
  116. package/release/editor/version_main.js +0 -44
  117. package/release/editor/version_main.js.map +0 -7
  118. package/release/editor.js.LICENSE.txt +0 -91
  119. package/release/editor.js.map +0 -1
  120. package/release/nako_gen_async.js +0 -2
  121. package/release/nako_gen_async.js.LICENSE.txt +0 -21
  122. package/release/nako_gen_async.js.map +0 -1
  123. package/release/plugin_caniuse.js.LICENSE.txt +0 -15
  124. package/release/plugin_datetime.js.LICENSE.txt +0 -21
  125. package/release/plugin_kansuji.js.LICENSE.txt +0 -3
  126. package/release/plugin_markup.js.LICENSE.txt +0 -15
  127. package/release/plugin_toml.js +0 -295
  128. package/release/plugin_toml.js.map +0 -7
  129. package/release/plugin_turtle.js.LICENSE.txt +0 -9
  130. package/release/plugin_webworker.js.LICENSE.txt +0 -3
  131. package/release/plugin_weykturtle3d.js.LICENSE.txt +0 -3
  132. package/release/src/plugin_caniuse.js +0 -2
  133. package/release/src/plugin_caniuse.js.map +0 -7
  134. package/release/src/plugin_datetime.js +0 -2
  135. package/release/src/plugin_datetime.js.map +0 -7
  136. package/release/src/plugin_kansuji.js +0 -2
  137. package/release/src/plugin_kansuji.js.map +0 -7
  138. package/release/src/plugin_keigo.js +0 -2
  139. package/release/src/plugin_keigo.js.map +0 -7
  140. package/release/src/plugin_markup.js +0 -64
  141. package/release/src/plugin_markup.js.map +0 -7
  142. package/release/src/plugin_three.js +0 -2
  143. package/release/src/plugin_three.js.map +0 -7
  144. package/release/src/plugin_turtle.js +0 -2
  145. package/release/src/plugin_turtle.js.map +0 -7
  146. package/release/src/plugin_webworker.js +0 -4
  147. package/release/src/plugin_webworker.js.map +0 -7
  148. package/release/src/plugin_weykturtle3d.js +0 -2
  149. package/release/src/plugin_weykturtle3d.js.map +0 -7
  150. package/release/src/wnako3.js +0 -482
  151. package/release/src/wnako3.js.map +0 -7
  152. package/release/src/wnako3webworker.js +0 -428
  153. package/release/src/wnako3webworker.js.map +0 -7
  154. package/release/stats.json +0 -1
  155. package/release/version.js.LICENSE.txt +0 -65
  156. package/release/version.js.map +0 -1
  157. package/release/wnako3.js.LICENSE.txt +0 -341
  158. package/release/wnako3webworker.js.LICENSE.txt +0 -209
  159. package/src/plugin_three.mts +0 -240
@@ -0,0 +1,3 @@
1
+ /* eslint-disable no-use-before-define */
2
+ /* eslint-disable @typescript-eslint/no-misused-new */
3
+ export {};
@@ -0,0 +1,214 @@
1
+ /* eslint-disable no-use-before-define */
2
+ /* eslint-disable @typescript-eslint/no-misused-new */
3
+
4
+ export type EulerOrder = string
5
+ export type EulerArray = [number, number, number]|[number, number, number, EulerOrder]
6
+ interface RendererOptions {
7
+ antialias?: boolean
8
+ alpha?: boolean
9
+ canvas?: HTMLCanvasElement
10
+ }
11
+ export interface ArrowHelper extends LineSegments {
12
+ new (dir: Vector3, origin: Vector3, len: number, c: Color|number): ArrowHelper
13
+ setDirection (dir: Vector3): void
14
+ }
15
+ export interface AxesHelper extends LineSegments {
16
+ new (n: number): AxesHelper
17
+ }
18
+ interface AxisHelper extends LineSegments {
19
+ new (n: number): AxisHelper
20
+ }
21
+ interface BufferAttribute {
22
+ new (v: Float32Array, n: number): BufferAttribute
23
+ copyArray (a: number[]): void
24
+ }
25
+ export interface BufferGeometry {
26
+ new (): BufferGeometry
27
+ computeBoundingSphere (): void
28
+ dispose (): void
29
+ setAttribute (name: string, attr: BufferAttribute): void
30
+ setIndex(a: number[]): void
31
+ }
32
+ export interface Camera extends Object3D {
33
+ up: Vector3
34
+ }
35
+ export interface CameraHelper extends LineSegments {
36
+ new (c: Camera): CameraHelper
37
+ update (): void
38
+ }
39
+ export interface Color {
40
+ new (c: number): Color
41
+ }
42
+ export interface Controls {
43
+ enabled: boolean
44
+ new (c: Camera, e: Element): Controls
45
+ update (): void
46
+ }
47
+ export interface Disporsal {
48
+ dispose (): void
49
+ }
50
+ interface Euler {
51
+ new (): Euler
52
+ fromArray (a:[number, number, number]|[number, number, number, string]): void
53
+ }
54
+ interface Float32BufferAttribute extends BufferAttribute {
55
+ new (n: number, m: number): Float32BufferAttribute
56
+ }
57
+ export interface Fog {
58
+ new (c: number|Color, near?:number, far?: number): Fog
59
+ }
60
+ export interface FogExp2 {
61
+ new (c: number|Color, d?:number): FogExp2
62
+ }
63
+ export interface Group extends Object3D {
64
+ new (): Group
65
+ }
66
+ export interface Line extends Object3D {
67
+ new (g: BufferGeometry, m: Material): Line
68
+ }
69
+ interface LineSegments extends Line {
70
+ new (): LineSegments
71
+ }
72
+ interface LineBasicMaterial extends Material {
73
+ new (opt: any): LineBasicMaterial
74
+ }
75
+ interface Matrix3 {
76
+ new (): Matrix3
77
+ }
78
+ export interface Matrix4 {
79
+ new (): Matrix4
80
+ }
81
+ interface Material {
82
+ dispose (): void
83
+ }
84
+ export interface Mesh extends Object3D {
85
+ geometry: BufferGeometry
86
+ material: Material
87
+ }
88
+ export interface Object3D {
89
+ new (): Object3D
90
+ children: Object3D[]
91
+ matrixWorld: Matrix4
92
+ position: Vector3
93
+ quaternion: Quaternion
94
+ rotation: Euler
95
+ scale: Vector3
96
+ visible: boolean
97
+ add (obj:Object3D|Object3D[]): void
98
+ applyMatrix3 (mat: Matrix3): void
99
+ applyMatrix4 (mat: Matrix4): void
100
+ applyQuaternion (q: Quaternion): void
101
+ getWorldDirection (v: Vector3): void
102
+ getWorldQuaternion (q: Quaternion): void
103
+ getWorldPosition (v: Vector3): void
104
+ lookAt(v: Vector3): void
105
+ remove (obj:Object3D|Object3D[]): void
106
+ toJSON (): string
107
+ translateOnAxis (axis: Vector3, distance: number): void
108
+ }
109
+ interface ObjectLoader {
110
+ new (): ObjectLoader
111
+ load (url: string, callback: (obj: Object3D) => void,
112
+ progress: (xhr: XMLHttpRequest) => void,
113
+ err: (xhr: XMLHttpRequest) => void): void
114
+ }
115
+ export interface OrbitControls extends Controls {
116
+ new (): OrbitControls
117
+ }
118
+ export interface PerspectiveCamera extends Camera {
119
+ aspect: number
120
+ far: number
121
+ focus: number
122
+ fov: number
123
+ near: number
124
+ zoom: number
125
+ new (w: number, raito: number, near: number, far: number): PerspectiveCamera
126
+ }
127
+ export interface Quaternion {
128
+ new (): Quaternion
129
+ new (x: number, y: number, z: number, w:number): Quaternion
130
+ angleTo (q: Quaternion): number
131
+ clone(): Quaternion
132
+ copy (q: Quaternion): void
133
+ multiply (q: Quaternion): void
134
+ set (x: number, y: number, z: number, w:number): void
135
+ setFromAxisAngle (v: Vector3, a: number): void
136
+ setFromEuler(e: Euler): void
137
+ }
138
+ export interface Renderer {
139
+ autoClear: boolean
140
+ domElement: Element
141
+ shadowMap: ShadowMap
142
+ new (): Renderer
143
+ clear (): void
144
+ render (s: Scene, c: Camera): void
145
+ setClearColor (c: Color|number, a?: number): void
146
+ setClearAlpha (a: number): void
147
+ setPixelRatio (ratio: number): void
148
+ setSize(w: number, h: number): void
149
+ getSize(rect: Vector2): void
150
+ }
151
+ export interface Scene extends Object3D {
152
+ new (): Scene
153
+ background: number|Color
154
+ fog: Fog
155
+ }
156
+ export interface ShadowMap {
157
+ enabled: boolean
158
+ new () : ShadowMap
159
+ }
160
+ export interface Vector2 {
161
+ width: number
162
+ height: number
163
+ new (): Vector2
164
+ new (x: number, y: number): Vector2
165
+ set (x: number, y: number): void
166
+ }
167
+ export interface Vector3 {
168
+ x: number
169
+ y: number
170
+ z: number
171
+ new (): Vector3
172
+ new (x: number, y: number, z: number): Vector3
173
+ add (v: Vector3): void
174
+ applyQuaternion(q: Quaternion): void
175
+ clone(): Vector3
176
+ copy (v: Vector3): void
177
+ multiplyScalar (n: number): void
178
+ normalize (): Vector3
179
+ set (x: number, y: number, z: number): void
180
+ }
181
+
182
+ export interface WebGLRenderer extends Renderer {
183
+ new (opt: RendererOptions): WebGLRenderer
184
+ }
185
+
186
+ export interface THREE {
187
+ ArrowHelper?: ArrowHelper
188
+ AxesHelper?: AxesHelper
189
+ AxisHelper?: AxisHelper
190
+ BufferAttribute: BufferAttribute
191
+ BufferGeometry: BufferGeometry
192
+ CameraHelper?: CameraHelper
193
+ Color: Color
194
+ Euler: Euler
195
+ Float32BufferAttribute: Float32BufferAttribute
196
+ Fog: Fog
197
+ FogExp2: FogExp2
198
+ Group: Group
199
+ Line: Line
200
+ LineBasicMaterial: LineBasicMaterial
201
+ LineSegments: LineSegments
202
+ Matrix3: Matrix3
203
+ Matrix4: Matrix4
204
+ Object3D: Object3D
205
+ ObjectLoader: ObjectLoader
206
+ OrbitControls?: OrbitControls
207
+ PerspectiveCamera: PerspectiveCamera
208
+ Quaternion: Quaternion
209
+ Renderer: Renderer
210
+ Scene: Scene
211
+ Vector2: Vector2
212
+ Vector3: Vector3
213
+ WebGLRenderer: WebGLRenderer
214
+ }
@@ -0,0 +1,28 @@
1
+ export class ThreeUtil {
2
+ static isDisporsal(obj) {
3
+ return 'dispose' in obj && typeof obj.dispose === 'function';
4
+ }
5
+ static isMesh(obj) {
6
+ return 'isMesh' in obj && obj.isMesh === true;
7
+ }
8
+ static disposeChildObject(obj) {
9
+ while (obj.children.length > 0) {
10
+ this.disposeChildObject(obj.children[0]);
11
+ obj.remove(obj.children[0]);
12
+ }
13
+ if (ThreeUtil.isMesh(obj)) {
14
+ if (obj.geometry) {
15
+ obj.geometry.dispose();
16
+ }
17
+ if (obj.material) {
18
+ for (const propKey of Object.keys(obj.material)) {
19
+ const prop = obj.material[propKey];
20
+ if (ThreeUtil.isDisporsal(prop)) {
21
+ prop.dispose();
22
+ }
23
+ }
24
+ obj.material.dispose();
25
+ }
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,31 @@
1
+ import type * as THREENS from './plugin_weykturtle3d_three.mjs'
2
+
3
+ export class ThreeUtil {
4
+ private static isDisporsal (obj: any): obj is THREENS.Disporsal {
5
+ return 'dispose' in obj && typeof obj.dispose === 'function'
6
+ }
7
+
8
+ private static isMesh (obj: THREENS.Object3D): obj is THREENS.Mesh {
9
+ return 'isMesh' in obj && obj.isMesh === true
10
+ }
11
+
12
+ static disposeChildObject (obj: THREENS.Object3D) {
13
+ while (obj.children.length > 0) {
14
+ this.disposeChildObject(obj.children[0])
15
+ obj.remove(obj.children[0])
16
+ }
17
+ if (ThreeUtil.isMesh(obj)) {
18
+ if (obj.geometry) { obj.geometry.dispose() }
19
+
20
+ if (obj.material) {
21
+ for (const propKey of Object.keys(obj.material)) {
22
+ const prop = (obj.material as {[key: string]: any})[propKey]
23
+ if (ThreeUtil.isDisporsal(prop)) {
24
+ prop.dispose()
25
+ }
26
+ }
27
+ obj.material.dispose()
28
+ }
29
+ }
30
+ }
31
+ }
package/src/wnako3.mjs CHANGED
@@ -5,6 +5,7 @@ if ((typeof navigator) === 'object' && !navigator.exportWNako3) {
5
5
  const wnako3 = navigator.nako3 = new WebNakoCompiler();
6
6
  window.addEventListener('DOMContentLoaded', (e) => {
7
7
  const isAutoRun = wnako3.checkScriptTagParam();
8
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
8
9
  if (isAutoRun) {
9
10
  wnako3.runNakoScript();
10
11
  }
package/src/wnako3.mts CHANGED
@@ -6,6 +6,7 @@ if ((typeof navigator) === 'object' && !(navigator as any).exportWNako3) {
6
6
  const wnako3 = (navigator as any).nako3 = new WebNakoCompiler()
7
7
  window.addEventListener('DOMContentLoaded', (e) => {
8
8
  const isAutoRun = wnako3.checkScriptTagParam()
9
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
9
10
  if (isAutoRun) { wnako3.runNakoScript() }
10
11
  }, false)
11
12
  }
package/src/wnako3mod.mjs CHANGED
@@ -79,6 +79,7 @@ export class WebNakoCompiler extends NakoCompiler {
79
79
  }
80
80
  /** なでしこ3の『取り込む』命令のための読み込みツール */
81
81
  getLoaderTool() {
82
+ // eslint-disable-next-line @typescript-eslint/unbound-method
82
83
  const tool = { readJs: this.readJs, readNako3: this.readNako3, resolvePath: this.resolvePath };
83
84
  return tool;
84
85
  }
@@ -86,8 +87,9 @@ export class WebNakoCompiler extends NakoCompiler {
86
87
  readJs(filePath, token) {
87
88
  if (this.localFiles && this.localFiles[filePath]) {
88
89
  return {
90
+ // eslint-disable-next-line @typescript-eslint/require-await
89
91
  task: (async () => () => {
90
- // eslint-disable-next-line no-new-func
92
+ // eslint-disable-next-line no-new-func, @typescript-eslint/no-implied-eval, @typescript-eslint/no-unsafe-call
91
93
  Function(this.localFiles[filePath])();
92
94
  return {};
93
95
  })()
@@ -131,11 +133,12 @@ export class WebNakoCompiler extends NakoCompiler {
131
133
  const globalNako3 = globalNavigator.nako3;
132
134
  globalNavigator.nako3 = gSelf;
133
135
  try {
134
- // eslint-disable-next-line no-new-func
136
+ // eslint-disable-next-line no-new-func, @typescript-eslint/no-implied-eval
135
137
  const f = Function(jstext);
136
138
  f.apply(gSelf.__globalObj);
137
139
  }
138
140
  catch (err) {
141
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
139
142
  throw new NakoImportError(`プラグイン ${filePath} の取り込みに失敗: ${err instanceof Error ? err.message : err + ''}`, token.file, token.line);
140
143
  }
141
144
  finally {
package/src/wnako3mod.mts CHANGED
@@ -91,6 +91,7 @@ export class WebNakoCompiler extends NakoCompiler {
91
91
 
92
92
  /** なでしこ3の『取り込む』命令のための読み込みツール */
93
93
  getLoaderTool (): LoaderTool {
94
+ // eslint-disable-next-line @typescript-eslint/unbound-method
94
95
  const tool = { readJs: this.readJs, readNako3: this.readNako3, resolvePath: this.resolvePath }
95
96
  return tool
96
97
  }
@@ -99,8 +100,9 @@ export class WebNakoCompiler extends NakoCompiler {
99
100
  readJs (filePath: string, token: Token): LoaderToolTask<any> {
100
101
  if (this.localFiles && this.localFiles[filePath]) {
101
102
  return {
103
+ // eslint-disable-next-line @typescript-eslint/require-await
102
104
  task: (async () => () => {
103
- // eslint-disable-next-line no-new-func
105
+ // eslint-disable-next-line no-new-func, @typescript-eslint/no-implied-eval, @typescript-eslint/no-unsafe-call
104
106
  Function(this.localFiles[filePath])()
105
107
  return {}
106
108
  })()
@@ -144,10 +146,11 @@ export class WebNakoCompiler extends NakoCompiler {
144
146
  const globalNako3 = globalNavigator.nako3
145
147
  globalNavigator.nako3 = gSelf
146
148
  try {
147
- // eslint-disable-next-line no-new-func
149
+ // eslint-disable-next-line no-new-func, @typescript-eslint/no-implied-eval
148
150
  const f = Function(jstext)
149
151
  f.apply(gSelf.__globalObj)
150
152
  } catch (err) {
153
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
151
154
  throw new NakoImportError(`プラグイン ${filePath} の取り込みに失敗: ${err instanceof Error ? err.message : err + ''}`, token.file, token.line)
152
155
  } finally {
153
156
  globalNavigator.nako3 = globalNako3
@@ -202,7 +205,7 @@ export class WebNakoCompiler extends NakoCompiler {
202
205
  }
203
206
  pathname = resolveURL(baseDir, name)
204
207
  } catch (e) {
205
- throw new NakoImportError(`取り込み文の引数でパスが解決できません。https:// か http:// で始まるアドレスを指定してください。\n${e}`, token.file, token.line)
208
+ throw new NakoImportError(`取り込み文の引数でパスが解決できません。https:// か http:// で始まるアドレスを指定してください。\n${e as string}`, token.file, token.line)
206
209
  }
207
210
  }
208
211
  }