nadesiko3 3.3.45 → 3.3.49

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 (329) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +143 -132
  3. package/batch/browsers.template.md +3 -3
  4. package/batch/build_browsers.nako3 +72 -72
  5. package/batch/build_command.nako3 +44 -44
  6. package/batch/build_nako_version.nako3 +42 -42
  7. package/batch/calc_hash.nako3 +29 -29
  8. package/batch/cmd_txt2json.nako3 +74 -74
  9. package/batch/command.txt +270 -338
  10. package/batch/command_nakopad.txt +9 -69
  11. package/batch/download-extlib.nako3 +43 -43
  12. package/batch/gen_command_nakopad.nako3 +57 -57
  13. package/batch/jsplugin2text.nako3 +285 -285
  14. package/batch/pickup_command.nako3 +110 -110
  15. package/batch/pickup_reserved_words.nako3 +11 -11
  16. package/batch/publish_version.nako3 +46 -46
  17. package/batch/show_agents.js +14 -14
  18. package/batch/turtle2js.nako3 +21 -21
  19. package/bin/cnako3 +10 -10
  20. package/core/.editorconfig +6 -0
  21. package/core/.eslintrc.cjs +33 -0
  22. package/core/.github/dependabot.yml +7 -0
  23. package/core/.github/workflows/nodejs.yml +37 -0
  24. package/core/.github/workflows/super-linter.yml +61 -0
  25. package/core/.github/workflows/textlint.yml +199 -0
  26. package/core/LICENSE +21 -0
  27. package/core/README.md +66 -0
  28. package/core/batch/build_nako_version.nako3 +42 -0
  29. package/core/command/snako.mjs +105 -0
  30. package/core/command/snako.mts +116 -0
  31. package/core/index.mjs +21 -0
  32. package/core/index.mts +21 -0
  33. package/core/package.json +47 -0
  34. package/core/sample/hello.nako3 +7 -0
  35. package/core/sample/hoge.mjs +4 -0
  36. package/core/sample/hoge.mts +6 -0
  37. package/core/src/nako3.mjs +858 -0
  38. package/core/src/nako3.mts +967 -0
  39. package/core/src/nako_colors.mjs +78 -0
  40. package/core/src/nako_colors.mts +86 -0
  41. package/core/src/nako_core_version.mjs +8 -0
  42. package/core/src/nako_core_version.mts +19 -0
  43. package/core/src/nako_csv.mjs +185 -0
  44. package/core/src/nako_csv.mts +188 -0
  45. package/core/src/nako_errors.mjs +173 -0
  46. package/core/src/nako_errors.mts +197 -0
  47. package/core/src/nako_from_dncl.mjs +255 -0
  48. package/core/src/nako_from_dncl.mts +250 -0
  49. package/core/src/nako_gen.mjs +1648 -0
  50. package/core/src/nako_gen.mts +1719 -0
  51. package/core/src/nako_gen_async.mjs +1659 -0
  52. package/core/src/nako_gen_async.mts +1732 -0
  53. package/core/src/nako_global.mjs +107 -0
  54. package/core/src/nako_global.mts +138 -0
  55. package/core/src/nako_indent.mjs +445 -0
  56. package/core/src/nako_indent.mts +492 -0
  57. package/core/src/nako_josi_list.mjs +38 -0
  58. package/core/src/nako_josi_list.mts +45 -0
  59. package/core/src/nako_lex_rules.mjs +253 -0
  60. package/core/src/nako_lex_rules.mts +260 -0
  61. package/core/src/nako_lexer.mjs +609 -0
  62. package/core/src/nako_lexer.mts +612 -0
  63. package/core/src/nako_logger.mjs +199 -0
  64. package/core/src/nako_logger.mts +232 -0
  65. package/core/src/nako_parser3.mjs +2439 -0
  66. package/core/src/nako_parser3.mts +2195 -0
  67. package/core/src/nako_parser_base.mjs +370 -0
  68. package/core/src/nako_parser_base.mts +370 -0
  69. package/core/src/nako_parser_const.mjs +37 -0
  70. package/core/src/nako_parser_const.mts +37 -0
  71. package/core/src/nako_prepare.mjs +304 -0
  72. package/core/src/nako_prepare.mts +315 -0
  73. package/core/src/nako_reserved_words.mjs +38 -0
  74. package/core/src/nako_reserved_words.mts +38 -0
  75. package/core/src/nako_source_mapping.mjs +207 -0
  76. package/core/src/nako_source_mapping.mts +262 -0
  77. package/core/src/nako_test.mjs +37 -0
  78. package/core/src/nako_types.mjs +25 -0
  79. package/core/src/nako_types.mts +151 -0
  80. package/core/src/plugin_csv.mjs +49 -0
  81. package/core/src/plugin_csv.mts +50 -0
  82. package/core/src/plugin_math.mjs +328 -0
  83. package/core/src/plugin_math.mts +326 -0
  84. package/core/src/plugin_promise.mjs +91 -0
  85. package/core/src/plugin_promise.mts +91 -0
  86. package/core/src/plugin_system.mjs +2832 -0
  87. package/core/src/plugin_system.mts +2690 -0
  88. package/core/src/plugin_test.mjs +34 -0
  89. package/core/src/plugin_test.mts +34 -0
  90. package/core/test/array_test.mjs +34 -0
  91. package/core/test/basic_test.mjs +344 -0
  92. package/core/test/calc_test.mjs +140 -0
  93. package/core/test/core_module_test.mjs +23 -0
  94. package/core/test/debug_test.mjs +16 -0
  95. package/core/test/dncl_test.mjs +94 -0
  96. package/core/test/error_message_test.mjs +210 -0
  97. package/core/test/error_test.mjs +16 -0
  98. package/core/test/flow_test.mjs +373 -0
  99. package/core/test/func_call.mjs +160 -0
  100. package/core/test/func_test.mjs +149 -0
  101. package/core/test/indent_test.mjs +364 -0
  102. package/core/test/lex_test.mjs +168 -0
  103. package/core/test/literal_test.mjs +73 -0
  104. package/core/test/nako_lexer_test.mjs +35 -0
  105. package/core/test/nako_logger_test.mjs +76 -0
  106. package/core/test/nako_logger_test.mts +78 -0
  107. package/core/test/plugin_csv_test.mjs +38 -0
  108. package/core/test/plugin_promise_test.mjs +18 -0
  109. package/core/test/plugin_system_test.mjs +630 -0
  110. package/core/test/prepare_test.mjs +96 -0
  111. package/core/test/re_test.mjs +22 -0
  112. package/core/test/side_effects_test.mjs +92 -0
  113. package/core/test/variable_scope_test.mjs +149 -0
  114. package/core/tsconfig.json +101 -0
  115. package/demo/ace_editor.html +89 -89
  116. package/demo/ace_editor_tabs.html +161 -161
  117. package/demo/basic.html +71 -71
  118. package/demo/browsers.html +9 -10
  119. package/demo/css/basic.css +3 -3
  120. package/demo/css/common.css +157 -157
  121. package/demo/css/editor.css +8 -8
  122. package/demo/css/flow.css +3 -3
  123. package/demo/css/index.css +3 -3
  124. package/demo/flow.html +98 -98
  125. package/demo/graph.html +53 -53
  126. package/demo/image/nakopad-icon256.png +0 -0
  127. package/demo/index.html +133 -133
  128. package/demo/js/common.js +17 -17
  129. package/demo/js/turtle3d_test.js +44 -44
  130. package/demo/js/turtle_test.js +45 -45
  131. package/demo/nako3/calc.nako3 +4 -4
  132. package/demo/runscript.html +47 -47
  133. package/demo/runscript2.html +33 -33
  134. package/demo/runscript3.html +35 -35
  135. package/demo/runscript4.html +33 -33
  136. package/demo/turtle.html +58 -58
  137. package/demo/turtle2.html +141 -141
  138. package/demo/turtle3.html +279 -279
  139. package/demo/turtle3d.html +58 -58
  140. package/demo/turtle3d2.html +107 -107
  141. package/demo/version.html +24 -24
  142. package/doc/SETUP.md +157 -157
  143. package/doc/about.md +17 -17
  144. package/doc/browsers.md +26 -26
  145. package/doc/docgen.md +21 -21
  146. package/doc/editor.md +44 -44
  147. package/doc/files.md +39 -39
  148. package/doc/plugins.md +234 -234
  149. package/doc/release.md +79 -79
  150. package/doc/textlint.md +43 -43
  151. package/doc/win32.md +57 -57
  152. package/package.json +195 -192
  153. package/release/_hash.txt +28 -28
  154. package/release/_script-tags.txt +14 -14
  155. package/release/command.json +1 -1
  156. package/release/command.json.js +1 -1
  157. package/release/command_cnako3.json +1 -1
  158. package/release/command_list.json +1 -1
  159. package/release/editor.js +1 -1
  160. package/release/nako_gen_async.js +1 -1
  161. package/release/plugin_csv.js +1 -1
  162. package/release/stats.json +1 -1
  163. package/release/version.js +1 -1
  164. package/release/wnako3.js +1 -1
  165. package/release/wnako3webworker.js +1 -1
  166. package/src/browsers.txt +11 -12
  167. package/src/browsers_agents.json +2 -2
  168. package/src/browsers_agents.mjs +1 -1
  169. package/src/cnako3.mjs +17 -10
  170. package/src/cnako3.mts +18 -12
  171. package/src/cnako3mod.mjs +707 -687
  172. package/src/cnako3mod.mts +712 -696
  173. package/src/commander_ja.mjs +164 -164
  174. package/src/commander_ja.mts +161 -161
  175. package/src/enako3.mjs +68 -69
  176. package/src/era.mjs +22 -22
  177. package/src/image_turtle-elephant.mjs +2 -5
  178. package/src/image_turtle-panda.mjs +2 -5
  179. package/src/image_turtle64.mjs +2 -5
  180. package/src/index.mjs +9 -9
  181. package/src/index.mts +10 -11
  182. package/src/nako3editorfix.sfd +106 -106
  183. package/src/nako_version.mjs +8 -8
  184. package/src/nako_version.mts +2 -2
  185. package/src/plugin_browser.mjs +213 -212
  186. package/src/plugin_browser.mts +206 -205
  187. package/src/plugin_browser_ajax.mjs +399 -399
  188. package/src/plugin_browser_audio.mjs +109 -109
  189. package/src/plugin_browser_canvas.mjs +449 -449
  190. package/src/plugin_browser_chart.mjs +294 -294
  191. package/src/plugin_browser_color.mjs +49 -49
  192. package/src/plugin_browser_crypto.mjs +26 -26
  193. package/src/plugin_browser_dialog.mjs +53 -53
  194. package/src/plugin_browser_dom_basic.mjs +336 -336
  195. package/src/plugin_browser_dom_event.mjs +193 -193
  196. package/src/plugin_browser_dom_parts.mjs +396 -396
  197. package/src/plugin_browser_geolocation.mjs +51 -51
  198. package/src/plugin_browser_hotkey.mjs +25 -25
  199. package/src/plugin_browser_html.mjs +59 -59
  200. package/src/plugin_browser_in_worker.mjs +45 -45
  201. package/src/plugin_browser_location.mjs +21 -21
  202. package/src/plugin_browser_speech.mjs +111 -111
  203. package/src/plugin_browser_storage.mjs +121 -121
  204. package/src/plugin_browser_system.mjs +31 -31
  205. package/src/plugin_browser_websocket.mjs +73 -73
  206. package/src/plugin_caniuse.mjs +29 -29
  207. package/src/plugin_datetime.mjs +394 -394
  208. package/src/plugin_httpserver.mjs +277 -0
  209. package/src/plugin_httpserver.mts +286 -0
  210. package/src/plugin_kansuji.mjs +224 -224
  211. package/src/plugin_keigo.mjs +55 -55
  212. package/src/plugin_markup.mjs +32 -32
  213. package/src/plugin_node.mjs +1047 -1047
  214. package/src/plugin_node.mts +980 -980
  215. package/src/plugin_turtle.mjs +647 -647
  216. package/src/plugin_webworker.mjs +334 -334
  217. package/src/plugin_weykturtle3d.mjs +1214 -1214
  218. package/src/plugin_worker.mjs +95 -95
  219. package/src/repl.nako3 +63 -63
  220. package/src/wnako3.mjs +12 -12
  221. package/src/wnako3.mts +11 -11
  222. package/src/wnako3_editor.css +215 -215
  223. package/src/wnako3_editor.mjs +1542 -1542
  224. package/src/wnako3_editor.mts +1657 -1656
  225. package/src/wnako3mod.mjs +213 -213
  226. package/src/wnako3mod.mts +214 -214
  227. package/src/wnako3webworker.mjs +69 -68
  228. package/test/ace_editor/karma.config.js +94 -94
  229. package/test/ace_editor/test/.babelrc.json +3 -3
  230. package/test/ace_editor/test/ace_editor_test.js +178 -178
  231. package/test/ace_editor/test/html/custom_context.html +139 -139
  232. package/test/async/async_basic_test.mjs +122 -122
  233. package/test/browser/karma.config.js +221 -221
  234. package/test/browser/test/.babelrc.json +3 -3
  235. package/test/browser/test/compare_util.js +50 -50
  236. package/test/browser/test/html/div_basic.html +2 -2
  237. package/test/browser/test/html/event_dom_form.html +4 -4
  238. package/test/browser/test/html/event_dom_scrolldiv.html +5 -5
  239. package/test/browser/test/import_plugin_checker.js +24 -24
  240. package/test/browser/test/plugin_browser_test.js +51 -51
  241. package/test/browser/test/plugin_browser_test_ajax.js +123 -123
  242. package/test/browser/test/plugin_browser_test_color.js +18 -18
  243. package/test/browser/test/plugin_browser_test_dialog.js +72 -72
  244. package/test/browser/test/plugin_browser_test_dom_event.js +598 -598
  245. package/test/browser/test/plugin_browser_test_dom_parts.js +125 -125
  246. package/test/browser/test/plugin_browser_test_system.js +9 -9
  247. package/test/browser/test/plugin_turtle_test.js +817 -817
  248. package/test/browser/test/plugin_webworker_test.js +86 -86
  249. package/test/browser/test/require_test.js +68 -68
  250. package/test/bundled/karma.config.base.js +117 -117
  251. package/test/bundled/karma.config.js +86 -86
  252. package/test/bundled/test/.babelrc.json +3 -3
  253. package/test/bundled/test/bundled_test.js +69 -69
  254. package/test/bundled/test/html/custom_context.html +65 -65
  255. package/test/bundled/test/html/custom_debug.html +66 -66
  256. package/test/bundled/test4b.cmd +52 -52
  257. package/test/bundled/test_base/.babelrc.json +3 -3
  258. package/test/bundled/test_base/_checktool_test.js +25 -25
  259. package/test/bundled/test_base/basic_ajax_test.js +56 -56
  260. package/test/bundled/test_base/basic_async_test.js +18 -18
  261. package/test/bundled/test_base/basic_test.js +153 -153
  262. package/test/bundled/test_base/calc_test.js +132 -132
  263. package/test/bundled/test_base/css/browsers_box.css +114 -114
  264. package/test/bundled/test_base/html/custom_context.html +69 -69
  265. package/test/bundled/test_base/html/custom_debug.html +71 -71
  266. package/test/bundled/test_base/js/browsers_box.js +72 -72
  267. package/test/bundled/test_base/plugin_csv_test.js +37 -37
  268. package/test/bundled/test_base/plugin_datetime_test.js +115 -115
  269. package/test/bundled/test_base/plugin_kansuji_test.js +49 -49
  270. package/test/bundled/test_base/plugin_system_test.js +410 -410
  271. package/test/bundled/test_base/plugin_webworker_test.js +53 -53
  272. package/test/bundled/test_base/test_utils.js +191 -191
  273. package/test/common/plugin_browser_test.mjs +22 -24
  274. package/test/common/plugin_browser_ut_audio_test.mjs +108 -108
  275. package/test/common/plugin_browser_ut_color_test.mjs +21 -21
  276. package/test/common/plugin_browser_ut_dialog_test.mjs +100 -100
  277. package/test/common/plugin_browser_ut_html_test.mjs +13 -13
  278. package/test/common/plugin_browser_ut_system_test.mjs +10 -10
  279. package/test/common/plugin_markup_test.mjs +23 -23
  280. package/test/jsconfig.json +19 -19
  281. package/test/karma.config.js +91 -91
  282. package/test/node/async_test.mjs +96 -82
  283. package/test/node/commander_ja_test.mjs +89 -89
  284. package/test/node/error_message_test.mjs +243 -253
  285. package/test/node/kai_test.nako3 +6 -6
  286. package/test/node/node_test.mjs +60 -60
  287. package/test/node/plugin_broken.js.txt +3 -3
  288. package/test/node/plugin_browser_ut_ajax_test.mjs.todo +357 -357
  289. package/test/node/plugin_browser_ut_location_test.mjs +42 -42
  290. package/test/node/plugin_markup_test.mjs +47 -46
  291. package/test/node/plugin_math_test.mjs +45 -44
  292. package/test/node/plugin_node_test.mjs +98 -97
  293. package/test/node/plugin_test.mjs +44 -43
  294. package/test/node/relative_import_test_1.nako3 +1 -1
  295. package/test/node/relative_import_test_2.nako3 +2 -2
  296. package/test/node/require_nako3_test.mjs +67 -66
  297. package/test/node/requiretest.nako3 +4 -4
  298. package/test/node/requiretest_indirect.nako3 +1 -1
  299. package/test/node/requiretest_name.nako3 +5 -5
  300. package/test/node/runtime_error.nako3 +2 -2
  301. package/test/node/scope1.nako3 +10 -10
  302. package/test/node/scope2.nako3 +12 -12
  303. package/test/node/side_effects_test.mjs +39 -119
  304. package/test/node/sjis.txt +5 -5
  305. package/test/node/syntax_error.nako3 +1 -1
  306. package/test/node/wnako3_editor_test.mjs +384 -384
  307. package/tools/README.md +12 -7
  308. package/tools/check_new_version.nako3 +25 -25
  309. package/tools/nako3edit/html/daisyui/LICENSE +22 -22
  310. package/tools/nako3edit/html/daisyui/version_2.14.1 +1 -1
  311. package/tools/nako3edit/html/edit.html +170 -170
  312. package/tools/nako3edit/html/edit_plugin.js +6 -6
  313. package/tools/nako3edit/html/files.html +125 -125
  314. package/tools/nako3edit/html/nako3edit.css +65 -65
  315. package/tools/nako3edit/index.mjs +248 -244
  316. package/tools/nako3server/index.html +10 -0
  317. package/tools/nako3server/index.mjs +116 -116
  318. package/tools/nako3server/index.nako3 +34 -0
  319. package/release/nako_gen_async.js.LICENSE.txt +0 -35
  320. package/release/plugin_caniuse.js.LICENSE.txt +0 -11
  321. package/release/plugin_csv.js.LICENSE.txt +0 -15
  322. package/release/plugin_datetime.js.LICENSE.txt +0 -15
  323. package/release/plugin_kansuji.js.LICENSE.txt +0 -3
  324. package/release/plugin_markup.js.LICENSE.txt +0 -11
  325. package/release/plugin_turtle.js.LICENSE.txt +0 -15
  326. package/release/plugin_webworker.js.LICENSE.txt +0 -3
  327. package/release/plugin_weykturtle3d.js.LICENSE.txt +0 -3
  328. package/release/wnako3webworker.js.LICENSE.txt +0 -131
  329. package/tools/nako3edit/a.sqlite3 +0 -0
@@ -1,125 +1,125 @@
1
- <!DOCTYPE html>
2
- <html data-theme="winter">
3
- <head>
4
- <meta charset="utf-8" />
5
- <title>Node版 なでしこ3 エディタ - ファイル一覧</title>
6
- <!-- daisyUI-->
7
- <link href="daisyui/tailwind.min.css" rel="stylesheet" type="text/css" />
8
- <link href="daisyui/full.css" rel="stylesheet" type="text/css" />
9
- <!-- nako3edit -->
10
- <link href="/html/nako3edit.css" rel="stylesheet" type="text/css" />
11
- <script defer type="text/javascript" src="/release/wnako3.js"></script>
12
- <script defer type="text/javascript" src="/html/edit_plugin.js"></script>
13
-
14
- <script type="なでしこ">
15
- #-----------
16
- APPKEY=""
17
- HREF=WINDOW["location"]["href"]
18
- HREFを表示。
19
- P=HREFをURLパラメータ解析
20
- Pを表示。
21
- APPKEY=P["appkey"]
22
- Pを表示。
23
- ファイル一覧取得処理
24
- #-----------
25
- # 新規ボタン
26
- 「#new_btn」をクリックした時には
27
-   「/html/edit.html?file=new&appkey={APPKEY}」へブラウザ移動。
28
- ここまで。
29
- #-----------
30
- ●ファイル一覧取得処理
31
- 「/files?appkey={APPKEY}」へAJAX送信した時には
32
- HTML=「」
33
- 一覧=対象をJSONデコード
34
- 一覧を反復
35
- F=それ
36
- もし、LEFT(F,2)="__"ならば、続ける。
37
- F2 = FをHTML変換
38
- F3 = FをURLエンコード
39
- Fを「\.(csv|txt|tsv|js|bat|nako3|nako|css|html|htm|)$」で正規表現マッチ。
40
- もし、そうならば
41
- HTML=HTML&「<li>」
42
- HTML=HTML&「<a class="btn btn-sm btn-warning del_btn" data-file="{F3}">削除</a> &nbsp;」
43
- HTML=HTML&「<a href="/html/edit.html?file={F3}&appkey={APPKEY}">📝 {F2}</a>」
44
- HTML=HTML&「</li>」
45
- 違えば
46
- HTML=HTML&「<li>」
47
- HTML=HTML&「<a class="btn btn-sm btn-warning del_btn" data-file="{F3}">削除</a> &nbsp;」
48
- HTML=HTML&「<a>🌠 {F2}</a>」
49
- HTML=HTML&「</li>」
50
- ここまで。
51
- ここまで。
52
- 「#files_ul」にHTMLをDOM_HTML設定。
53
- 削除ボタンイベント設定。
54
- ここまで。
55
- # ---
56
- AJAX失敗した時には(err)
57
- errをHTML変換してERRに代入。
58
- S=「<p style='color: red;'>サーバとの通信に失敗しました。<br />」&_
59
- 「サーバ設定かブラウザの設定を確認してください。</p><p>{ERR}</p>」
60
- 「#files_ul」にSをDOM_HTML設定。
61
- ここまで
62
- ここまで。
63
-
64
- ●削除ボタンイベント設定
65
-   「.del_btn」のDOM要素全取得して反復
66
-     対象の「onclick」に「ファイル削除処理」をDOMイベント設定。
67
-   ここまで。
68
- ここまで。
69
-
70
- ●(Eの)ファイル削除処理とは
71
-   「削除しても良いですか?」と二択。
72
-   もし、それがいいえならば戻る。
73
-   FF=E["target"]["dataset"]["file"]
74
-   エラー監視
75
-     RES=「/deletefile?appkey={APPKEY}&file={FF}」からAJAX_JSON取得。
76
-   エラーならば
77
-     「エラー」と言う。
78
-   ここまで。
79
-   もし、RES="ok"ならば、
80
-     「削除しました」と言う。
81
-   違えば
82
-     「失敗しました」と言う。
83
-   ここまで。
84
-   「/html/files.html?appkey={APPKEY}」にブラウザ移動。
85
- ここまで。
86
-
87
- #-----------
88
- </script>
89
- </head>
90
- <body>
91
- <div class="navbar bg-base-100">
92
-
93
- <div class="dropdown">
94
- <label tabindex="0" class="btn btn-ghost btn-circle">
95
- <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h7" /></svg>
96
- </label>
97
- <ul tabindex="0" class="menu menu-compact dropdown-content mt-3 p-2 shadow bg-base-100 rounded-box w-52">
98
- <li><label for="my-modal-desc" class="modal-button">このエディタについて</label></li>
99
- </ul>
100
- </div>
101
-
102
- <div class="flex-1">
103
- <a class="btn btn-ghost normal-case text-xl">Node版 なでしこ3 エディタ</a>
104
- </div>
105
- </div>
106
- <div id="filesbox">
107
- <div>
108
- <a class="btn btn-info" id="new_btn">→新規作成</a>
109
- </div>
110
- <ul id="files_ul"></ul>
111
- </div>
112
- </body>
113
-
114
- <!-- エディタの説明モーダルダイアログ -->
115
- <input type="checkbox" id="my-modal-desc" class="modal-toggle">
116
- <div class="modal">
117
- <div class="modal-box relative">
118
- <label for="my-modal-desc" class="btn btn-sm btn-circle absolute right-2 top-2">✕</label>
119
- <h3 class="text-lg font-bold">Node版 なでしこ3エディタとは</h3>
120
- <p class="py-4">なでしこ3のNode.js(PC版)ランタイムを実行するためのエディタです。</p>
121
- <p class="py-4">もし、なでしこ3のWeb版を実行するには、「npm start」を実行してください。</p>
122
- </div>
123
- </div>
124
-
125
- </html>
1
+ <!DOCTYPE html>
2
+ <html data-theme="winter">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>Node版 なでしこ3 エディタ - ファイル一覧</title>
6
+ <!-- daisyUI-->
7
+ <link href="daisyui/tailwind.min.css" rel="stylesheet" type="text/css" />
8
+ <link href="daisyui/full.css" rel="stylesheet" type="text/css" />
9
+ <!-- nako3edit -->
10
+ <link href="/html/nako3edit.css" rel="stylesheet" type="text/css" />
11
+ <script defer type="text/javascript" src="/release/wnako3.js"></script>
12
+ <script defer type="text/javascript" src="/html/edit_plugin.js"></script>
13
+
14
+ <script type="なでしこ">
15
+ #-----------
16
+ APPKEY=""
17
+ HREF=WINDOW["location"]["href"]
18
+ HREFを表示。
19
+ P=HREFをURLパラメータ解析
20
+ Pを表示。
21
+ APPKEY=P["appkey"]
22
+ Pを表示。
23
+ ファイル一覧取得処理
24
+ #-----------
25
+ # 新規ボタン
26
+ 「#new_btn」をクリックした時には
27
+   「/html/edit.html?file=new&appkey={APPKEY}」へブラウザ移動。
28
+ ここまで。
29
+ #-----------
30
+ ●ファイル一覧取得処理
31
+ 「/files?appkey={APPKEY}」へAJAX送信した時には
32
+ HTML=「」
33
+ 一覧=対象をJSONデコード
34
+ 一覧を反復
35
+ F=それ
36
+ もし、LEFT(F,2)="__"ならば、続ける。
37
+ F2 = FをHTML変換
38
+ F3 = FをURLエンコード
39
+ Fを「\.(csv|txt|tsv|js|bat|nako3|nako|css|html|htm|)$」で正規表現マッチ。
40
+ もし、そうならば
41
+ HTML=HTML&「<li>」
42
+ HTML=HTML&「<a class="btn btn-sm btn-warning del_btn" data-file="{F3}">削除</a> &nbsp;」
43
+ HTML=HTML&「<a href="/html/edit.html?file={F3}&appkey={APPKEY}">📝 {F2}</a>」
44
+ HTML=HTML&「</li>」
45
+ 違えば
46
+ HTML=HTML&「<li>」
47
+ HTML=HTML&「<a class="btn btn-sm btn-warning del_btn" data-file="{F3}">削除</a> &nbsp;」
48
+ HTML=HTML&「<a>🌠 {F2}</a>」
49
+ HTML=HTML&「</li>」
50
+ ここまで。
51
+ ここまで。
52
+ 「#files_ul」にHTMLをDOM_HTML設定。
53
+ 削除ボタンイベント設定。
54
+ ここまで。
55
+ # ---
56
+ AJAX失敗した時には(err)
57
+ errをHTML変換してERRに代入。
58
+ S=「<p style='color: red;'>サーバとの通信に失敗しました。<br />」&_
59
+ 「サーバ設定かブラウザの設定を確認してください。</p><p>{ERR}</p>」
60
+ 「#files_ul」にSをDOM_HTML設定。
61
+ ここまで
62
+ ここまで。
63
+
64
+ ●削除ボタンイベント設定
65
+   「.del_btn」のDOM要素全取得して反復
66
+     対象の「onclick」に「ファイル削除処理」をDOMイベント設定。
67
+   ここまで。
68
+ ここまで。
69
+
70
+ ●(Eの)ファイル削除処理とは
71
+   「削除しても良いですか?」と二択。
72
+   もし、それがいいえならば戻る。
73
+   FF=E["target"]["dataset"]["file"]
74
+   エラー監視
75
+     RES=「/deletefile?appkey={APPKEY}&file={FF}」からAJAX_JSON取得。
76
+   エラーならば
77
+     「エラー」と言う。
78
+   ここまで。
79
+   もし、RES="ok"ならば、
80
+     「削除しました」と言う。
81
+   違えば
82
+     「失敗しました」と言う。
83
+   ここまで。
84
+   「/html/files.html?appkey={APPKEY}」にブラウザ移動。
85
+ ここまで。
86
+
87
+ #-----------
88
+ </script>
89
+ </head>
90
+ <body>
91
+ <div class="navbar bg-base-100">
92
+
93
+ <div class="dropdown">
94
+ <label tabindex="0" class="btn btn-ghost btn-circle">
95
+ <svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h7" /></svg>
96
+ </label>
97
+ <ul tabindex="0" class="menu menu-compact dropdown-content mt-3 p-2 shadow bg-base-100 rounded-box w-52">
98
+ <li><label for="my-modal-desc" class="modal-button">このエディタについて</label></li>
99
+ </ul>
100
+ </div>
101
+
102
+ <div class="flex-1">
103
+ <a class="btn btn-ghost normal-case text-xl">Node版 なでしこ3 エディタ</a>
104
+ </div>
105
+ </div>
106
+ <div id="filesbox">
107
+ <div>
108
+ <a class="btn btn-info" id="new_btn">→新規作成</a>
109
+ </div>
110
+ <ul id="files_ul"></ul>
111
+ </div>
112
+ </body>
113
+
114
+ <!-- エディタの説明モーダルダイアログ -->
115
+ <input type="checkbox" id="my-modal-desc" class="modal-toggle">
116
+ <div class="modal">
117
+ <div class="modal-box relative">
118
+ <label for="my-modal-desc" class="btn btn-sm btn-circle absolute right-2 top-2">✕</label>
119
+ <h3 class="text-lg font-bold">Node版 なでしこ3エディタとは</h3>
120
+ <p class="py-4">なでしこ3のNode.js(PC版)ランタイムを実行するためのエディタです。</p>
121
+ <p class="py-4">もし、なでしこ3のWeb版を実行するには、「npm start」を実行してください。</p>
122
+ </div>
123
+ </div>
124
+
125
+ </html>
@@ -1,65 +1,65 @@
1
- h1 {
2
- padding: 4px;
3
- margin: 0;
4
- font-size: 1em;
5
- }
6
- .btn {
7
- text-transform: none;
8
- }
9
-
10
- .editbox {
11
- padding: 4px;
12
- margin: 0px;
13
- background-color: #f0f0f0;
14
- text-align: center;
15
- }
16
- .namebox {
17
- text-align: left;
18
- color: gray;
19
- padding: 4px;
20
- margin: 4px;
21
- }
22
- #name {
23
- padding: 4px;
24
- font-size: 1em;
25
- }
26
- #body {
27
- padding: 4px;
28
- font-size: 1em;
29
- }
30
- #result {
31
- background-color: white;
32
- border: 1px solid silver;
33
- margin: 4px;
34
- padding: 8px;
35
- font-size: 1em;
36
- text-align: left;
37
- }
38
- #filesbox {
39
- border: 1px solid silver;
40
- padding: 8px;
41
- margin: 4px;
42
- }
43
- #filesbox > ul {
44
- margin: 0;
45
- padding: 4px;
46
- }
47
- #filesbox > ul > li {
48
- border-bottom: 1px solid silver;
49
- padding: 8px;
50
- list-style-type: none;
51
- }
52
- .newfile {
53
- padding: 4px;
54
- background-color: #ffe0ff;
55
- }
56
-
57
- .titlemenu {
58
- font-size: 0.9em;
59
- color: yellow;
60
- }
61
-
62
- .titlemenu a {
63
- color: yellow;
64
- text-decoration: none;
65
- }
1
+ h1 {
2
+ padding: 4px;
3
+ margin: 0;
4
+ font-size: 1em;
5
+ }
6
+ .btn {
7
+ text-transform: none;
8
+ }
9
+
10
+ .editbox {
11
+ padding: 4px;
12
+ margin: 0px;
13
+ background-color: #f0f0f0;
14
+ text-align: center;
15
+ }
16
+ .namebox {
17
+ text-align: left;
18
+ color: gray;
19
+ padding: 4px;
20
+ margin: 4px;
21
+ }
22
+ #name {
23
+ padding: 4px;
24
+ font-size: 1em;
25
+ }
26
+ #body {
27
+ padding: 4px;
28
+ font-size: 1em;
29
+ }
30
+ #result {
31
+ background-color: white;
32
+ border: 1px solid silver;
33
+ margin: 4px;
34
+ padding: 8px;
35
+ font-size: 1em;
36
+ text-align: left;
37
+ }
38
+ #filesbox {
39
+ border: 1px solid silver;
40
+ padding: 8px;
41
+ margin: 4px;
42
+ }
43
+ #filesbox > ul {
44
+ margin: 0;
45
+ padding: 4px;
46
+ }
47
+ #filesbox > ul > li {
48
+ border-bottom: 1px solid silver;
49
+ padding: 8px;
50
+ list-style-type: none;
51
+ }
52
+ .newfile {
53
+ padding: 4px;
54
+ background-color: #ffe0ff;
55
+ }
56
+
57
+ .titlemenu {
58
+ font-size: 0.9em;
59
+ color: yellow;
60
+ }
61
+
62
+ .titlemenu a {
63
+ color: yellow;
64
+ text-decoration: none;
65
+ }