nodeskini 1.0.1 → 1.0.3

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 (534) hide show
  1. package/blocklySkini/archive/blocklyControleur.js +87 -0
  2. package/blocklySkini/archive/blocklySkini.js +84 -0
  3. package/blocklySkini/archive/blocklyhop.js +75 -0
  4. package/blocklySkini/archive/clientControleurBlocly.js +170 -0
  5. package/blocklySkini/archive/index.html +76 -0
  6. package/blocklySkini/archive/testHHsuspend.txt +89 -0
  7. package/blocklySkini/archive/testHHtrap.txt +262 -0
  8. package/blocklySkini/archive/testOrchestration.txt +177 -0
  9. package/blocklySkini/archive/testOrchestration.xml +447 -0
  10. package/blocklySkini/archive/testOrchestration2.xml +456 -0
  11. package/blocklySkini/blockly/README.md +77 -0
  12. package/blocklySkini/blockly/blockly.d.ts +21480 -0
  13. package/blocklySkini/blockly/blockly.js +25 -0
  14. package/blocklySkini/blockly/blockly.min.js +2188 -0
  15. package/blocklySkini/blockly/blockly_compressed.js +1455 -0
  16. package/blocklySkini/blockly/blockly_compressed.js.map +1 -0
  17. package/blocklySkini/blockly/blocks/colour.js +122 -0
  18. package/blocklySkini/blockly/blocks/lists.js +862 -0
  19. package/blocklySkini/blockly/blocks/logic.js +635 -0
  20. package/blocklySkini/blockly/blocks/loops.js +357 -0
  21. package/blocklySkini/blockly/blocks/math.js +566 -0
  22. package/blocklySkini/blockly/blocks/procedures.js +1072 -0
  23. package/blocklySkini/blockly/blocks/text.js +923 -0
  24. package/blocklySkini/blockly/blocks/variables.js +163 -0
  25. package/blocklySkini/blockly/blocks/variables_dynamic.js +180 -0
  26. package/blocklySkini/blockly/blocks.d.ts +15 -0
  27. package/blocklySkini/blockly/blocks.js +27 -0
  28. package/blocklySkini/blockly/blocks_compressed.js +182 -0
  29. package/blocklySkini/blockly/blocks_compressed.js.map +1 -0
  30. package/blocklySkini/blockly/browser.js +36 -0
  31. package/blocklySkini/blockly/core/block.js +2010 -0
  32. package/blocklySkini/blockly/core/block_animations.js +203 -0
  33. package/blocklySkini/blockly/core/block_drag_surface.js +212 -0
  34. package/blocklySkini/blockly/core/block_dragger.js +378 -0
  35. package/blocklySkini/blockly/core/block_events.js +548 -0
  36. package/blocklySkini/blockly/core/block_svg.js +1763 -0
  37. package/blocklySkini/blockly/core/blockly.js +674 -0
  38. package/blocklySkini/blockly/core/blocks.js +23 -0
  39. package/blocklySkini/blockly/core/bubble.js +880 -0
  40. package/blocklySkini/blockly/core/bubble_dragger.js +274 -0
  41. package/blocklySkini/blockly/core/comment.js +439 -0
  42. package/blocklySkini/blockly/core/components/component.js +554 -0
  43. package/blocklySkini/blockly/core/components/tree/basenode.js +895 -0
  44. package/blocklySkini/blockly/core/components/tree/treecontrol.js +332 -0
  45. package/blocklySkini/blockly/core/components/tree/treenode.js +172 -0
  46. package/blocklySkini/blockly/core/connection.js +682 -0
  47. package/blocklySkini/blockly/core/connection_checker.js +285 -0
  48. package/blocklySkini/blockly/core/connection_db.js +295 -0
  49. package/blocklySkini/blockly/core/constants.js +277 -0
  50. package/blocklySkini/blockly/core/contextmenu.js +307 -0
  51. package/blocklySkini/blockly/core/contextmenu_items.js +534 -0
  52. package/blocklySkini/blockly/core/contextmenu_registry.js +165 -0
  53. package/blocklySkini/blockly/core/css.js +549 -0
  54. package/blocklySkini/blockly/core/dropdowndiv.js +776 -0
  55. package/blocklySkini/blockly/core/events.js +387 -0
  56. package/blocklySkini/blockly/core/events_abstract.js +106 -0
  57. package/blocklySkini/blockly/core/extensions.js +450 -0
  58. package/blocklySkini/blockly/core/field.js +1162 -0
  59. package/blocklySkini/blockly/core/field_angle.js +562 -0
  60. package/blocklySkini/blockly/core/field_checkbox.js +220 -0
  61. package/blocklySkini/blockly/core/field_colour.js +664 -0
  62. package/blocklySkini/blockly/core/field_dropdown.js +760 -0
  63. package/blocklySkini/blockly/core/field_image.js +286 -0
  64. package/blocklySkini/blockly/core/field_label.js +130 -0
  65. package/blocklySkini/blockly/core/field_label_serializable.js +69 -0
  66. package/blocklySkini/blockly/core/field_multilineinput.js +299 -0
  67. package/blocklySkini/blockly/core/field_number.js +317 -0
  68. package/blocklySkini/blockly/core/field_registry.js +66 -0
  69. package/blocklySkini/blockly/core/field_textinput.js +616 -0
  70. package/blocklySkini/blockly/core/field_variable.js +463 -0
  71. package/blocklySkini/blockly/core/flyout_base.js +1071 -0
  72. package/blocklySkini/blockly/core/flyout_button.js +325 -0
  73. package/blocklySkini/blockly/core/flyout_dragger.js +76 -0
  74. package/blocklySkini/blockly/core/flyout_horizontal.js +388 -0
  75. package/blocklySkini/blockly/core/flyout_vertical.js +397 -0
  76. package/blocklySkini/blockly/core/generator.js +482 -0
  77. package/blocklySkini/blockly/core/gesture.js +993 -0
  78. package/blocklySkini/blockly/core/grid.js +222 -0
  79. package/blocklySkini/blockly/core/icon.js +206 -0
  80. package/blocklySkini/blockly/core/inject.js +487 -0
  81. package/blocklySkini/blockly/core/input.js +296 -0
  82. package/blocklySkini/blockly/core/insertion_marker_manager.js +700 -0
  83. package/blocklySkini/blockly/core/interfaces/i_accessibility.js +72 -0
  84. package/blocklySkini/blockly/core/interfaces/i_bounded_element.js +31 -0
  85. package/blocklySkini/blockly/core/interfaces/i_bubble.js +83 -0
  86. package/blocklySkini/blockly/core/interfaces/i_connection_checker.js +94 -0
  87. package/blocklySkini/blockly/core/interfaces/i_contextmenu.js +26 -0
  88. package/blocklySkini/blockly/core/interfaces/i_copyable.js +40 -0
  89. package/blocklySkini/blockly/core/interfaces/i_deletable.js +27 -0
  90. package/blocklySkini/blockly/core/interfaces/i_deletearea.js +28 -0
  91. package/blocklySkini/blockly/core/interfaces/i_flyout.js +178 -0
  92. package/blocklySkini/blockly/core/interfaces/i_movable.js +27 -0
  93. package/blocklySkini/blockly/core/interfaces/i_registrable.js +22 -0
  94. package/blocklySkini/blockly/core/interfaces/i_registrable_field.js +31 -0
  95. package/blocklySkini/blockly/core/interfaces/i_selectable.js +43 -0
  96. package/blocklySkini/blockly/core/interfaces/i_styleable.js +33 -0
  97. package/blocklySkini/blockly/core/interfaces/i_toolbox.js +131 -0
  98. package/blocklySkini/blockly/core/interfaces/i_toolbox_item.js +148 -0
  99. package/blocklySkini/blockly/core/keyboard_nav/action.js +26 -0
  100. package/blocklySkini/blockly/core/keyboard_nav/ast_node.js +684 -0
  101. package/blocklySkini/blockly/core/keyboard_nav/basic_cursor.js +208 -0
  102. package/blocklySkini/blockly/core/keyboard_nav/cursor.js +170 -0
  103. package/blocklySkini/blockly/core/keyboard_nav/flyout_cursor.js +106 -0
  104. package/blocklySkini/blockly/core/keyboard_nav/key_map.js +190 -0
  105. package/blocklySkini/blockly/core/keyboard_nav/marker.js +120 -0
  106. package/blocklySkini/blockly/core/keyboard_nav/navigation.js +1084 -0
  107. package/blocklySkini/blockly/core/keyboard_nav/tab_navigate_cursor.js +48 -0
  108. package/blocklySkini/blockly/core/marker_manager.js +183 -0
  109. package/blocklySkini/blockly/core/menu.js +465 -0
  110. package/blocklySkini/blockly/core/menuitem.js +280 -0
  111. package/blocklySkini/blockly/core/msg.js +31 -0
  112. package/blocklySkini/blockly/core/mutator.js +555 -0
  113. package/blocklySkini/blockly/core/names.js +186 -0
  114. package/blocklySkini/blockly/core/options.js +365 -0
  115. package/blocklySkini/blockly/core/procedures.js +404 -0
  116. package/blocklySkini/blockly/core/registry.js +265 -0
  117. package/blocklySkini/blockly/core/rendered_connection.js +565 -0
  118. package/blocklySkini/blockly/core/renderers/common/block_rendering.js +81 -0
  119. package/blocklySkini/blockly/core/renderers/common/constants.js +1256 -0
  120. package/blocklySkini/blockly/core/renderers/common/debugger.js +431 -0
  121. package/blocklySkini/blockly/core/renderers/common/drawer.js +468 -0
  122. package/blocklySkini/blockly/core/renderers/common/i_path_object.js +151 -0
  123. package/blocklySkini/blockly/core/renderers/common/info.js +775 -0
  124. package/blocklySkini/blockly/core/renderers/common/marker_svg.js +687 -0
  125. package/blocklySkini/blockly/core/renderers/common/path_object.js +279 -0
  126. package/blocklySkini/blockly/core/renderers/common/renderer.js +301 -0
  127. package/blocklySkini/blockly/core/renderers/geras/constants.js +64 -0
  128. package/blocklySkini/blockly/core/renderers/geras/drawer.js +205 -0
  129. package/blocklySkini/blockly/core/renderers/geras/highlight_constants.js +311 -0
  130. package/blocklySkini/blockly/core/renderers/geras/highlighter.js +256 -0
  131. package/blocklySkini/blockly/core/renderers/geras/info.js +483 -0
  132. package/blocklySkini/blockly/core/renderers/geras/measurables/inputs.js +67 -0
  133. package/blocklySkini/blockly/core/renderers/geras/path_object.js +177 -0
  134. package/blocklySkini/blockly/core/renderers/geras/renderer.js +138 -0
  135. package/blocklySkini/blockly/core/renderers/measurables/base.js +44 -0
  136. package/blocklySkini/blockly/core/renderers/measurables/connections.js +114 -0
  137. package/blocklySkini/blockly/core/renderers/measurables/inputs.js +160 -0
  138. package/blocklySkini/blockly/core/renderers/measurables/row_elements.js +185 -0
  139. package/blocklySkini/blockly/core/renderers/measurables/rows.js +532 -0
  140. package/blocklySkini/blockly/core/renderers/measurables/types.js +349 -0
  141. package/blocklySkini/blockly/core/renderers/minimalist/constants.js +29 -0
  142. package/blocklySkini/blockly/core/renderers/minimalist/drawer.js +32 -0
  143. package/blocklySkini/blockly/core/renderers/minimalist/info.js +45 -0
  144. package/blocklySkini/blockly/core/renderers/minimalist/renderer.js +70 -0
  145. package/blocklySkini/blockly/core/renderers/thrasos/info.js +338 -0
  146. package/blocklySkini/blockly/core/renderers/thrasos/renderer.js +45 -0
  147. package/blocklySkini/blockly/core/renderers/zelos/constants.js +1002 -0
  148. package/blocklySkini/blockly/core/renderers/zelos/drawer.js +233 -0
  149. package/blocklySkini/blockly/core/renderers/zelos/info.js +587 -0
  150. package/blocklySkini/blockly/core/renderers/zelos/marker_svg.js +148 -0
  151. package/blocklySkini/blockly/core/renderers/zelos/measurables/inputs.js +47 -0
  152. package/blocklySkini/blockly/core/renderers/zelos/measurables/row_elements.js +37 -0
  153. package/blocklySkini/blockly/core/renderers/zelos/measurables/rows.js +108 -0
  154. package/blocklySkini/blockly/core/renderers/zelos/path_object.js +244 -0
  155. package/blocklySkini/blockly/core/renderers/zelos/renderer.js +130 -0
  156. package/blocklySkini/blockly/core/requires.js +84 -0
  157. package/blocklySkini/blockly/core/scrollbar.js +880 -0
  158. package/blocklySkini/blockly/core/theme/classic.js +87 -0
  159. package/blocklySkini/blockly/core/theme/dark.js +33 -0
  160. package/blocklySkini/blockly/core/theme/deuteranopia.js +104 -0
  161. package/blocklySkini/blockly/core/theme/highcontrast.js +119 -0
  162. package/blocklySkini/blockly/core/theme/modern.js +108 -0
  163. package/blocklySkini/blockly/core/theme/tritanopia.js +103 -0
  164. package/blocklySkini/blockly/core/theme/zelos.js +106 -0
  165. package/blocklySkini/blockly/core/theme.js +236 -0
  166. package/blocklySkini/blockly/core/theme_manager.js +197 -0
  167. package/blocklySkini/blockly/core/toolbox/category.js +690 -0
  168. package/blocklySkini/blockly/core/toolbox/collapsible_category.js +294 -0
  169. package/blocklySkini/blockly/core/toolbox/separator.js +123 -0
  170. package/blocklySkini/blockly/core/toolbox/toolbox.js +984 -0
  171. package/blocklySkini/blockly/core/toolbox/toolbox_item.js +145 -0
  172. package/blocklySkini/blockly/core/toolbox.js +943 -0
  173. package/blocklySkini/blockly/core/tooltip.js +387 -0
  174. package/blocklySkini/blockly/core/touch.js +255 -0
  175. package/blocklySkini/blockly/core/touch_gesture.js +325 -0
  176. package/blocklySkini/blockly/core/trashcan.js +661 -0
  177. package/blocklySkini/blockly/core/ui_events.js +85 -0
  178. package/blocklySkini/blockly/core/utils/aria.js +167 -0
  179. package/blocklySkini/blockly/core/utils/colour.js +208 -0
  180. package/blocklySkini/blockly/core/utils/coordinate.js +125 -0
  181. package/blocklySkini/blockly/core/utils/deprecation.js +34 -0
  182. package/blocklySkini/blockly/core/utils/dom.js +391 -0
  183. package/blocklySkini/blockly/core/utils/global.js +37 -0
  184. package/blocklySkini/blockly/core/utils/idgenerator.js +33 -0
  185. package/blocklySkini/blockly/core/utils/keycodes.js +164 -0
  186. package/blocklySkini/blockly/core/utils/math.js +56 -0
  187. package/blocklySkini/blockly/core/utils/metrics.js +124 -0
  188. package/blocklySkini/blockly/core/utils/object.js +73 -0
  189. package/blocklySkini/blockly/core/utils/rect.js +54 -0
  190. package/blocklySkini/blockly/core/utils/size.js +58 -0
  191. package/blocklySkini/blockly/core/utils/string.js +284 -0
  192. package/blocklySkini/blockly/core/utils/style.js +281 -0
  193. package/blocklySkini/blockly/core/utils/svg.js +181 -0
  194. package/blocklySkini/blockly/core/utils/svg_paths.js +142 -0
  195. package/blocklySkini/blockly/core/utils/toolbox.js +401 -0
  196. package/blocklySkini/blockly/core/utils/useragent.js +110 -0
  197. package/blocklySkini/blockly/core/utils/xml.js +79 -0
  198. package/blocklySkini/blockly/core/utils.js +652 -0
  199. package/blocklySkini/blockly/core/variable_events.js +248 -0
  200. package/blocklySkini/blockly/core/variable_map.js +414 -0
  201. package/blocklySkini/blockly/core/variable_model.js +95 -0
  202. package/blocklySkini/blockly/core/variables.js +571 -0
  203. package/blocklySkini/blockly/core/variables_dynamic.js +100 -0
  204. package/blocklySkini/blockly/core/warning.js +200 -0
  205. package/blocklySkini/blockly/core/widgetdiv.js +241 -0
  206. package/blocklySkini/blockly/core/workspace.js +786 -0
  207. package/blocklySkini/blockly/core/workspace_audio.js +153 -0
  208. package/blocklySkini/blockly/core/workspace_comment.js +373 -0
  209. package/blocklySkini/blockly/core/workspace_comment_render_svg.js +461 -0
  210. package/blocklySkini/blockly/core/workspace_comment_svg.js +701 -0
  211. package/blocklySkini/blockly/core/workspace_drag_surface_svg.js +176 -0
  212. package/blocklySkini/blockly/core/workspace_dragger.js +85 -0
  213. package/blocklySkini/blockly/core/workspace_events.js +93 -0
  214. package/blocklySkini/blockly/core/workspace_svg.js +2661 -0
  215. package/blocklySkini/blockly/core/ws_comment_events.js +417 -0
  216. package/blocklySkini/blockly/core/xml.js +827 -0
  217. package/blocklySkini/blockly/core/zoom_controls.js +449 -0
  218. package/blocklySkini/blockly/core-browser.js +34 -0
  219. package/blocklySkini/blockly/core.d.ts +15 -0
  220. package/blocklySkini/blockly/core.js +38 -0
  221. package/blocklySkini/blockly/dart.d.ts +15 -0
  222. package/blocklySkini/blockly/dart.js +27 -0
  223. package/blocklySkini/blockly/dart_compressed.js +114 -0
  224. package/blocklySkini/blockly/dart_compressed.js.map +1 -0
  225. package/blocklySkini/blockly/generators/dart/colour.js +114 -0
  226. package/blocklySkini/blockly/generators/dart/lists.js +447 -0
  227. package/blocklySkini/blockly/generators/dart/logic.js +127 -0
  228. package/blocklySkini/blockly/generators/dart/loops.js +169 -0
  229. package/blocklySkini/blockly/generators/dart/math.js +485 -0
  230. package/blocklySkini/blockly/generators/dart/procedures.js +111 -0
  231. package/blocklySkini/blockly/generators/dart/text.js +339 -0
  232. package/blocklySkini/blockly/generators/dart/variables.js +32 -0
  233. package/blocklySkini/blockly/generators/dart/variables_dynamic.js +21 -0
  234. package/blocklySkini/blockly/generators/dart.js +290 -0
  235. package/blocklySkini/blockly/generators/javascript/colour.js +89 -0
  236. package/blocklySkini/blockly/generators/javascript/lists.js +388 -0
  237. package/blocklySkini/blockly/generators/javascript/logic.js +129 -0
  238. package/blocklySkini/blockly/generators/javascript/loops.js +184 -0
  239. package/blocklySkini/blockly/generators/javascript/math.js +409 -0
  240. package/blocklySkini/blockly/generators/javascript/procedures.js +113 -0
  241. package/blocklySkini/blockly/generators/javascript/text.js +367 -0
  242. package/blocklySkini/blockly/generators/javascript/variables.js +32 -0
  243. package/blocklySkini/blockly/generators/javascript/variables_dynamic.js +23 -0
  244. package/blocklySkini/blockly/generators/javascript.js +317 -0
  245. package/blocklySkini/blockly/generators/lua/colour.js +76 -0
  246. package/blocklySkini/blockly/generators/lua/lists.js +368 -0
  247. package/blocklySkini/blockly/generators/lua/logic.js +127 -0
  248. package/blocklySkini/blockly/generators/lua/loops.js +173 -0
  249. package/blocklySkini/blockly/generators/lua/math.js +423 -0
  250. package/blocklySkini/blockly/generators/lua/procedures.js +113 -0
  251. package/blocklySkini/blockly/generators/lua/text.js +353 -0
  252. package/blocklySkini/blockly/generators/lua/variables.js +32 -0
  253. package/blocklySkini/blockly/generators/lua/variables_dynamic.js +21 -0
  254. package/blocklySkini/blockly/generators/lua.js +198 -0
  255. package/blocklySkini/blockly/generators/php/colour.js +91 -0
  256. package/blocklySkini/blockly/generators/php/lists.js +498 -0
  257. package/blocklySkini/blockly/generators/php/logic.js +128 -0
  258. package/blocklySkini/blockly/generators/php/loops.js +170 -0
  259. package/blocklySkini/blockly/generators/php/math.js +370 -0
  260. package/blocklySkini/blockly/generators/php/procedures.js +132 -0
  261. package/blocklySkini/blockly/generators/php/text.js +271 -0
  262. package/blocklySkini/blockly/generators/php/variables.js +32 -0
  263. package/blocklySkini/blockly/generators/php/variables_dynamic.js +21 -0
  264. package/blocklySkini/blockly/generators/php.js +318 -0
  265. package/blocklySkini/blockly/generators/python/colour.js +72 -0
  266. package/blocklySkini/blockly/generators/python/lists.js +349 -0
  267. package/blocklySkini/blockly/generators/python/logic.js +127 -0
  268. package/blocklySkini/blockly/generators/python/loops.js +214 -0
  269. package/blocklySkini/blockly/generators/python/math.js +385 -0
  270. package/blocklySkini/blockly/generators/python/procedures.js +134 -0
  271. package/blocklySkini/blockly/generators/python/text.js +293 -0
  272. package/blocklySkini/blockly/generators/python/variables.js +32 -0
  273. package/blocklySkini/blockly/generators/python/variables_dynamic.js +21 -0
  274. package/blocklySkini/blockly/generators/python.js +322 -0
  275. package/blocklySkini/blockly/index.d.ts +22 -0
  276. package/blocklySkini/blockly/index.js +24 -0
  277. package/blocklySkini/blockly/javascript.d.ts +15 -0
  278. package/blocklySkini/blockly/javascript.js +27 -0
  279. package/blocklySkini/blockly/javascript_compressed.js +115 -0
  280. package/blocklySkini/blockly/javascript_compressed.js.map +1 -0
  281. package/blocklySkini/blockly/lua.d.ts +15 -0
  282. package/blocklySkini/blockly/lua.js +27 -0
  283. package/blocklySkini/blockly/lua_compressed.js +94 -0
  284. package/blocklySkini/blockly/lua_compressed.js.map +1 -0
  285. package/blocklySkini/blockly/media/1x1.gif +0 -0
  286. package/blocklySkini/blockly/media/click.mp3 +0 -0
  287. package/blocklySkini/blockly/media/click.ogg +0 -0
  288. package/blocklySkini/blockly/media/click.wav +0 -0
  289. package/blocklySkini/blockly/media/delete.mp3 +0 -0
  290. package/blocklySkini/blockly/media/delete.ogg +0 -0
  291. package/blocklySkini/blockly/media/delete.wav +0 -0
  292. package/blocklySkini/blockly/media/disconnect.mp3 +0 -0
  293. package/blocklySkini/blockly/media/disconnect.ogg +0 -0
  294. package/blocklySkini/blockly/media/disconnect.wav +0 -0
  295. package/blocklySkini/blockly/media/dropdown-arrow.svg +1 -0
  296. package/blocklySkini/blockly/media/handclosed.cur +0 -0
  297. package/blocklySkini/blockly/media/handdelete.cur +0 -0
  298. package/blocklySkini/blockly/media/handopen.cur +0 -0
  299. package/blocklySkini/blockly/media/pilcrow.png +0 -0
  300. package/blocklySkini/blockly/media/quote0.png +0 -0
  301. package/blocklySkini/blockly/media/quote1.png +0 -0
  302. package/blocklySkini/blockly/media/sprites.png +0 -0
  303. package/blocklySkini/blockly/media/sprites.svg +74 -0
  304. package/blocklySkini/blockly/msg/ab.d.ts +16 -0
  305. package/blocklySkini/blockly/msg/ab.js +447 -0
  306. package/blocklySkini/blockly/msg/ar.d.ts +16 -0
  307. package/blocklySkini/blockly/msg/ar.js +447 -0
  308. package/blocklySkini/blockly/msg/az.d.ts +16 -0
  309. package/blocklySkini/blockly/msg/az.js +447 -0
  310. package/blocklySkini/blockly/msg/ba.d.ts +16 -0
  311. package/blocklySkini/blockly/msg/ba.js +447 -0
  312. package/blocklySkini/blockly/msg/bcc.d.ts +16 -0
  313. package/blocklySkini/blockly/msg/bcc.js +447 -0
  314. package/blocklySkini/blockly/msg/be-tarask.d.ts +16 -0
  315. package/blocklySkini/blockly/msg/be-tarask.js +447 -0
  316. package/blocklySkini/blockly/msg/be.d.ts +16 -0
  317. package/blocklySkini/blockly/msg/be.js +447 -0
  318. package/blocklySkini/blockly/msg/bg.d.ts +16 -0
  319. package/blocklySkini/blockly/msg/bg.js +447 -0
  320. package/blocklySkini/blockly/msg/bn.d.ts +16 -0
  321. package/blocklySkini/blockly/msg/bn.js +447 -0
  322. package/blocklySkini/blockly/msg/br.d.ts +16 -0
  323. package/blocklySkini/blockly/msg/br.js +447 -0
  324. package/blocklySkini/blockly/msg/ca.d.ts +16 -0
  325. package/blocklySkini/blockly/msg/ca.js +447 -0
  326. package/blocklySkini/blockly/msg/constants.d.ts +16 -0
  327. package/blocklySkini/blockly/msg/cs.d.ts +16 -0
  328. package/blocklySkini/blockly/msg/cs.js +447 -0
  329. package/blocklySkini/blockly/msg/da.d.ts +16 -0
  330. package/blocklySkini/blockly/msg/da.js +447 -0
  331. package/blocklySkini/blockly/msg/de.d.ts +16 -0
  332. package/blocklySkini/blockly/msg/de.js +447 -0
  333. package/blocklySkini/blockly/msg/diq.d.ts +16 -0
  334. package/blocklySkini/blockly/msg/diq.js +447 -0
  335. package/blocklySkini/blockly/msg/dty.d.ts +16 -0
  336. package/blocklySkini/blockly/msg/dty.js +447 -0
  337. package/blocklySkini/blockly/msg/ee.d.ts +16 -0
  338. package/blocklySkini/blockly/msg/ee.js +447 -0
  339. package/blocklySkini/blockly/msg/el.d.ts +16 -0
  340. package/blocklySkini/blockly/msg/el.js +447 -0
  341. package/blocklySkini/blockly/msg/en-gb.d.ts +16 -0
  342. package/blocklySkini/blockly/msg/en-gb.js +447 -0
  343. package/blocklySkini/blockly/msg/en.d.ts +16 -0
  344. package/blocklySkini/blockly/msg/en.js +447 -0
  345. package/blocklySkini/blockly/msg/eo.d.ts +16 -0
  346. package/blocklySkini/blockly/msg/eo.js +447 -0
  347. package/blocklySkini/blockly/msg/es.d.ts +16 -0
  348. package/blocklySkini/blockly/msg/es.js +447 -0
  349. package/blocklySkini/blockly/msg/et.d.ts +16 -0
  350. package/blocklySkini/blockly/msg/et.js +447 -0
  351. package/blocklySkini/blockly/msg/eu.d.ts +16 -0
  352. package/blocklySkini/blockly/msg/eu.js +447 -0
  353. package/blocklySkini/blockly/msg/fa.d.ts +16 -0
  354. package/blocklySkini/blockly/msg/fa.js +447 -0
  355. package/blocklySkini/blockly/msg/fi.d.ts +16 -0
  356. package/blocklySkini/blockly/msg/fi.js +447 -0
  357. package/blocklySkini/blockly/msg/fr.d.ts +16 -0
  358. package/blocklySkini/blockly/msg/fr.js +447 -0
  359. package/blocklySkini/blockly/msg/gl.d.ts +16 -0
  360. package/blocklySkini/blockly/msg/gl.js +447 -0
  361. package/blocklySkini/blockly/msg/gor.d.ts +16 -0
  362. package/blocklySkini/blockly/msg/gor.js +447 -0
  363. package/blocklySkini/blockly/msg/ha.d.ts +16 -0
  364. package/blocklySkini/blockly/msg/ha.js +447 -0
  365. package/blocklySkini/blockly/msg/he.d.ts +16 -0
  366. package/blocklySkini/blockly/msg/he.js +447 -0
  367. package/blocklySkini/blockly/msg/hi.d.ts +16 -0
  368. package/blocklySkini/blockly/msg/hi.js +447 -0
  369. package/blocklySkini/blockly/msg/hrx.d.ts +16 -0
  370. package/blocklySkini/blockly/msg/hrx.js +447 -0
  371. package/blocklySkini/blockly/msg/hu.d.ts +16 -0
  372. package/blocklySkini/blockly/msg/hu.js +447 -0
  373. package/blocklySkini/blockly/msg/hy.d.ts +16 -0
  374. package/blocklySkini/blockly/msg/hy.js +447 -0
  375. package/blocklySkini/blockly/msg/ia.d.ts +16 -0
  376. package/blocklySkini/blockly/msg/ia.js +447 -0
  377. package/blocklySkini/blockly/msg/id.d.ts +16 -0
  378. package/blocklySkini/blockly/msg/id.js +447 -0
  379. package/blocklySkini/blockly/msg/ig.d.ts +16 -0
  380. package/blocklySkini/blockly/msg/ig.js +447 -0
  381. package/blocklySkini/blockly/msg/is.d.ts +16 -0
  382. package/blocklySkini/blockly/msg/is.js +447 -0
  383. package/blocklySkini/blockly/msg/it.d.ts +16 -0
  384. package/blocklySkini/blockly/msg/it.js +447 -0
  385. package/blocklySkini/blockly/msg/ja.d.ts +16 -0
  386. package/blocklySkini/blockly/msg/ja.js +447 -0
  387. package/blocklySkini/blockly/msg/kab.d.ts +16 -0
  388. package/blocklySkini/blockly/msg/kab.js +447 -0
  389. package/blocklySkini/blockly/msg/kn.d.ts +16 -0
  390. package/blocklySkini/blockly/msg/kn.js +447 -0
  391. package/blocklySkini/blockly/msg/ko.d.ts +16 -0
  392. package/blocklySkini/blockly/msg/ko.js +447 -0
  393. package/blocklySkini/blockly/msg/lb.d.ts +16 -0
  394. package/blocklySkini/blockly/msg/lb.js +447 -0
  395. package/blocklySkini/blockly/msg/lki.d.ts +16 -0
  396. package/blocklySkini/blockly/msg/lki.js +447 -0
  397. package/blocklySkini/blockly/msg/lo.d.ts +16 -0
  398. package/blocklySkini/blockly/msg/lo.js +447 -0
  399. package/blocklySkini/blockly/msg/lrc.d.ts +16 -0
  400. package/blocklySkini/blockly/msg/lrc.js +447 -0
  401. package/blocklySkini/blockly/msg/lt.d.ts +16 -0
  402. package/blocklySkini/blockly/msg/lt.js +447 -0
  403. package/blocklySkini/blockly/msg/lv.d.ts +16 -0
  404. package/blocklySkini/blockly/msg/lv.js +447 -0
  405. package/blocklySkini/blockly/msg/mk.d.ts +16 -0
  406. package/blocklySkini/blockly/msg/mk.js +447 -0
  407. package/blocklySkini/blockly/msg/mnw.d.ts +16 -0
  408. package/blocklySkini/blockly/msg/mnw.js +447 -0
  409. package/blocklySkini/blockly/msg/ms.d.ts +16 -0
  410. package/blocklySkini/blockly/msg/ms.js +447 -0
  411. package/blocklySkini/blockly/msg/msg.d.ts +444 -0
  412. package/blocklySkini/blockly/msg/nb.d.ts +16 -0
  413. package/blocklySkini/blockly/msg/nb.js +447 -0
  414. package/blocklySkini/blockly/msg/nl.d.ts +16 -0
  415. package/blocklySkini/blockly/msg/nl.js +447 -0
  416. package/blocklySkini/blockly/msg/oc.d.ts +16 -0
  417. package/blocklySkini/blockly/msg/oc.js +447 -0
  418. package/blocklySkini/blockly/msg/pl.d.ts +16 -0
  419. package/blocklySkini/blockly/msg/pl.js +447 -0
  420. package/blocklySkini/blockly/msg/pms.d.ts +16 -0
  421. package/blocklySkini/blockly/msg/pms.js +447 -0
  422. package/blocklySkini/blockly/msg/pt-br.d.ts +16 -0
  423. package/blocklySkini/blockly/msg/pt-br.js +447 -0
  424. package/blocklySkini/blockly/msg/pt.d.ts +16 -0
  425. package/blocklySkini/blockly/msg/pt.js +447 -0
  426. package/blocklySkini/blockly/msg/qqq.d.ts +16 -0
  427. package/blocklySkini/blockly/msg/ro.d.ts +16 -0
  428. package/blocklySkini/blockly/msg/ro.js +447 -0
  429. package/blocklySkini/blockly/msg/ru.d.ts +16 -0
  430. package/blocklySkini/blockly/msg/ru.js +447 -0
  431. package/blocklySkini/blockly/msg/sc.d.ts +16 -0
  432. package/blocklySkini/blockly/msg/sc.js +447 -0
  433. package/blocklySkini/blockly/msg/sd.d.ts +16 -0
  434. package/blocklySkini/blockly/msg/sd.js +447 -0
  435. package/blocklySkini/blockly/msg/shn.d.ts +16 -0
  436. package/blocklySkini/blockly/msg/shn.js +447 -0
  437. package/blocklySkini/blockly/msg/sk.d.ts +16 -0
  438. package/blocklySkini/blockly/msg/sk.js +447 -0
  439. package/blocklySkini/blockly/msg/skr-arab.d.ts +16 -0
  440. package/blocklySkini/blockly/msg/skr-arab.js +447 -0
  441. package/blocklySkini/blockly/msg/sl.d.ts +16 -0
  442. package/blocklySkini/blockly/msg/sl.js +447 -0
  443. package/blocklySkini/blockly/msg/sq.d.ts +16 -0
  444. package/blocklySkini/blockly/msg/sq.js +447 -0
  445. package/blocklySkini/blockly/msg/sr-latn.d.ts +16 -0
  446. package/blocklySkini/blockly/msg/sr-latn.js +447 -0
  447. package/blocklySkini/blockly/msg/sr.d.ts +16 -0
  448. package/blocklySkini/blockly/msg/sr.js +447 -0
  449. package/blocklySkini/blockly/msg/sv.d.ts +16 -0
  450. package/blocklySkini/blockly/msg/sv.js +447 -0
  451. package/blocklySkini/blockly/msg/synonyms.d.ts +16 -0
  452. package/blocklySkini/blockly/msg/ta.d.ts +16 -0
  453. package/blocklySkini/blockly/msg/ta.js +447 -0
  454. package/blocklySkini/blockly/msg/tcy.d.ts +16 -0
  455. package/blocklySkini/blockly/msg/tcy.js +447 -0
  456. package/blocklySkini/blockly/msg/te.d.ts +16 -0
  457. package/blocklySkini/blockly/msg/te.js +447 -0
  458. package/blocklySkini/blockly/msg/th.d.ts +16 -0
  459. package/blocklySkini/blockly/msg/th.js +447 -0
  460. package/blocklySkini/blockly/msg/tl.d.ts +16 -0
  461. package/blocklySkini/blockly/msg/tl.js +447 -0
  462. package/blocklySkini/blockly/msg/tlh.d.ts +16 -0
  463. package/blocklySkini/blockly/msg/tlh.js +447 -0
  464. package/blocklySkini/blockly/msg/tr.d.ts +16 -0
  465. package/blocklySkini/blockly/msg/tr.js +447 -0
  466. package/blocklySkini/blockly/msg/ug-arab.d.ts +16 -0
  467. package/blocklySkini/blockly/msg/ug-arab.js +447 -0
  468. package/blocklySkini/blockly/msg/uk.d.ts +16 -0
  469. package/blocklySkini/blockly/msg/uk.js +447 -0
  470. package/blocklySkini/blockly/msg/ur.d.ts +16 -0
  471. package/blocklySkini/blockly/msg/ur.js +447 -0
  472. package/blocklySkini/blockly/msg/vi.d.ts +16 -0
  473. package/blocklySkini/blockly/msg/vi.js +447 -0
  474. package/blocklySkini/blockly/msg/xmf.d.ts +16 -0
  475. package/blocklySkini/blockly/msg/xmf.js +447 -0
  476. package/blocklySkini/blockly/msg/yo.d.ts +16 -0
  477. package/blocklySkini/blockly/msg/yo.js +447 -0
  478. package/blocklySkini/blockly/msg/zh-hans.d.ts +16 -0
  479. package/blocklySkini/blockly/msg/zh-hans.js +447 -0
  480. package/blocklySkini/blockly/msg/zh-hant.d.ts +16 -0
  481. package/blocklySkini/blockly/msg/zh-hant.js +447 -0
  482. package/blocklySkini/blockly/node.js +35 -0
  483. package/blocklySkini/blockly/package.json +84 -0
  484. package/blocklySkini/blockly/php.d.ts +15 -0
  485. package/blocklySkini/blockly/php.js +27 -0
  486. package/blocklySkini/blockly/php_compressed.js +103 -0
  487. package/blocklySkini/blockly/php_compressed.js.map +1 -0
  488. package/blocklySkini/blockly/python.d.ts +15 -0
  489. package/blocklySkini/blockly/python.js +27 -0
  490. package/blocklySkini/blockly/python_compressed.js +98 -0
  491. package/blocklySkini/blockly/python_compressed.js.map +1 -0
  492. package/blocklySkini/blocklySkini.html +81 -0
  493. package/blocklySkini/orchestrations/.xml +1 -0
  494. package/blocklySkini/orchestrations/BluesSkini-1.xml +231 -0
  495. package/blocklySkini/orchestrations/BluesSkini-2.xml +741 -0
  496. package/blocklySkini/orchestrations/BluesSkini-3.xml +731 -0
  497. package/blocklySkini/orchestrations/BluesSkini-4.xml +695 -0
  498. package/blocklySkini/orchestrations/BluesSkini-5.xml +731 -0
  499. package/blocklySkini/orchestrations/BluesSkini.xml +704 -0
  500. package/blocklySkini/orchestrations/FunkBitwig-1.xml +778 -0
  501. package/blocklySkini/orchestrations/FunkBitwig-2.xml +471 -0
  502. package/blocklySkini/orchestrations/JouerLeBonInstrument1-1.xml +784 -0
  503. package/blocklySkini/orchestrations/MajeurMineur-1.xml +638 -0
  504. package/blocklySkini/orchestrations/Opus5-3 - Copie.xml +1041 -0
  505. package/blocklySkini/orchestrations/Opus5-3.xml +1128 -0
  506. package/blocklySkini/orchestrations/Quatuor1-1.xml +357 -0
  507. package/blocklySkini/orchestrations/TechnoBitwig-1.xml +221 -0
  508. package/blocklySkini/orchestrations/TestBlockly.xml +497 -0
  509. package/blocklySkini/orchestrations/TestBlockly1.xml +500 -0
  510. package/blocklySkini/orchestrations/TestBlockly2.xml +792 -0
  511. package/blocklySkini/orchestrations/TestBlockly3-1.xml +1182 -0
  512. package/blocklySkini/orchestrations/TestBlockly3.xml +1251 -0
  513. package/blocklySkini/orchestrations/TestFunction.xml +143 -0
  514. package/blocklySkini/orchestrations/TestIf.xml +80 -0
  515. package/blocklySkini/orchestrations/TestLoop.xml +127 -0
  516. package/blocklySkini/orchestrations/TestOrchestration2.xml +460 -0
  517. package/blocklySkini/orchestrations/TestPrint.xml +70 -0
  518. package/blocklySkini/orchestrations/TestSubMod.xml +81 -0
  519. package/blocklySkini/orchestrations/Testlogic.xml +113 -0
  520. package/blocklySkini/orchestrations/TrouveLaPercu-1.xml +813 -0
  521. package/blocklySkini/orchestrations/TrouveLaPercu-2.xml +813 -0
  522. package/blocklySkini/orchestrations/bar.xml +496 -0
  523. package/blocklySkini/orchestrations/bar2.xml +496 -0
  524. package/blocklySkini/orchestrations/foo.xml +500 -0
  525. package/blocklySkini/orchestrations/opus5Blockly - Copie.xml +496 -0
  526. package/blocklySkini/orchestrations/opus5Blockly-3.xml +868 -0
  527. package/blocklySkini/orchestrations/opus5Blockly.xml +496 -0
  528. package/blocklySkini/orchestrations/testOrchestration3.xml +483 -0
  529. package/blocklySkini/orchestrations/testOrchestration4.xml +487 -0
  530. package/blocklySkini/scripts/hiphop_blocks.js +6104 -0
  531. package/blocklySkini/scripts/main2.js +801 -0
  532. package/blocklySkini/styles/index.css +320 -0
  533. package/blocklySkini/styles/material.css +11552 -0
  534. package/package.json +5 -5
@@ -0,0 +1,277 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2016 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ /**
8
+ * @fileoverview Blockly constants.
9
+ * @author fenichel@google.com (Rachel Fenichel)
10
+ */
11
+ 'use strict';
12
+
13
+ goog.provide('Blockly.constants');
14
+
15
+ /**
16
+ * The multiplier for scroll wheel deltas using the line delta mode.
17
+ * @type {number}
18
+ */
19
+ Blockly.LINE_MODE_MULTIPLIER = 40;
20
+
21
+ /**
22
+ * The multiplier for scroll wheel deltas using the page delta mode.
23
+ * @type {number}
24
+ */
25
+ Blockly.PAGE_MODE_MULTIPLIER = 125;
26
+
27
+ /**
28
+ * Number of pixels the mouse must move before a drag starts.
29
+ */
30
+ Blockly.DRAG_RADIUS = 5;
31
+
32
+ /**
33
+ * Number of pixels the mouse must move before a drag/scroll starts from the
34
+ * flyout. Because the drag-intention is determined when this is reached, it is
35
+ * larger than Blockly.DRAG_RADIUS so that the drag-direction is clearer.
36
+ */
37
+ Blockly.FLYOUT_DRAG_RADIUS = 10;
38
+
39
+ /**
40
+ * Maximum misalignment between connections for them to snap together.
41
+ */
42
+ Blockly.SNAP_RADIUS = 28;
43
+
44
+ /**
45
+ * Maximum misalignment between connections for them to snap together,
46
+ * when a connection is already highlighted.
47
+ */
48
+ Blockly.CONNECTING_SNAP_RADIUS = Blockly.SNAP_RADIUS;
49
+
50
+ /**
51
+ * How much to prefer staying connected to the current connection over moving to
52
+ * a new connection. The current previewed connection is considered to be this
53
+ * much closer to the matching connection on the block than it actually is.
54
+ */
55
+ Blockly.CURRENT_CONNECTION_PREFERENCE = 8;
56
+
57
+ /**
58
+ * Delay in ms between trigger and bumping unconnected block out of alignment.
59
+ */
60
+ Blockly.BUMP_DELAY = 250;
61
+
62
+ /**
63
+ * Maximum randomness in workspace units for bumping a block.
64
+ */
65
+ Blockly.BUMP_RANDOMNESS = 10;
66
+
67
+ /**
68
+ * Number of characters to truncate a collapsed block to.
69
+ */
70
+ Blockly.COLLAPSE_CHARS = 30;
71
+
72
+ /**
73
+ * Length in ms for a touch to become a long press.
74
+ */
75
+ Blockly.LONGPRESS = 750;
76
+
77
+ /**
78
+ * Prevent a sound from playing if another sound preceded it within this many
79
+ * milliseconds.
80
+ */
81
+ Blockly.SOUND_LIMIT = 100;
82
+
83
+ /**
84
+ * When dragging a block out of a stack, split the stack in two (true), or drag
85
+ * out the block healing the stack (false).
86
+ */
87
+ Blockly.DRAG_STACK = true;
88
+
89
+ /**
90
+ * The richness of block colours, regardless of the hue.
91
+ * Must be in the range of 0 (inclusive) to 1 (exclusive).
92
+ */
93
+ Blockly.HSV_SATURATION = 0.45;
94
+
95
+ /**
96
+ * The intensity of block colours, regardless of the hue.
97
+ * Must be in the range of 0 (inclusive) to 1 (exclusive).
98
+ */
99
+ Blockly.HSV_VALUE = 0.65;
100
+
101
+ /**
102
+ * Sprited icons and images.
103
+ */
104
+ Blockly.SPRITE = {
105
+ width: 96,
106
+ height: 124,
107
+ url: 'sprites.png'
108
+ };
109
+
110
+ // Constants below this point are not intended to be changed.
111
+
112
+ /**
113
+ * ENUM for a right-facing value input. E.g. 'set item to' or 'return'.
114
+ * @const
115
+ */
116
+ Blockly.INPUT_VALUE = 1;
117
+
118
+ /**
119
+ * ENUM for a left-facing value output. E.g. 'random fraction'.
120
+ * @const
121
+ */
122
+ Blockly.OUTPUT_VALUE = 2;
123
+
124
+ /**
125
+ * ENUM for a down-facing block stack. E.g. 'if-do' or 'else'.
126
+ * @const
127
+ */
128
+ Blockly.NEXT_STATEMENT = 3;
129
+
130
+ /**
131
+ * ENUM for an up-facing block stack. E.g. 'break out of loop'.
132
+ * @const
133
+ */
134
+ Blockly.PREVIOUS_STATEMENT = 4;
135
+
136
+ /**
137
+ * ENUM for an dummy input. Used to add field(s) with no input.
138
+ * @const
139
+ */
140
+ Blockly.DUMMY_INPUT = 5;
141
+
142
+ /**
143
+ * ENUM for left alignment.
144
+ * @const
145
+ */
146
+ Blockly.ALIGN_LEFT = -1;
147
+
148
+ /**
149
+ * ENUM for centre alignment.
150
+ * @const
151
+ */
152
+ Blockly.ALIGN_CENTRE = 0;
153
+
154
+ /**
155
+ * ENUM for right alignment.
156
+ * @const
157
+ */
158
+ Blockly.ALIGN_RIGHT = 1;
159
+
160
+ /**
161
+ * ENUM for no drag operation.
162
+ * @const
163
+ */
164
+ Blockly.DRAG_NONE = 0;
165
+
166
+ /**
167
+ * ENUM for inside the sticky DRAG_RADIUS.
168
+ * @const
169
+ */
170
+ Blockly.DRAG_STICKY = 1;
171
+
172
+ /**
173
+ * ENUM for inside the non-sticky DRAG_RADIUS, for differentiating between
174
+ * clicks and drags.
175
+ * @const
176
+ */
177
+ Blockly.DRAG_BEGIN = 1;
178
+
179
+ /**
180
+ * ENUM for freely draggable (outside the DRAG_RADIUS, if one applies).
181
+ * @const
182
+ */
183
+ Blockly.DRAG_FREE = 2;
184
+
185
+ /**
186
+ * Lookup table for determining the opposite type of a connection.
187
+ * @const
188
+ */
189
+ Blockly.OPPOSITE_TYPE = [];
190
+ Blockly.OPPOSITE_TYPE[Blockly.INPUT_VALUE] = Blockly.OUTPUT_VALUE;
191
+ Blockly.OPPOSITE_TYPE[Blockly.OUTPUT_VALUE] = Blockly.INPUT_VALUE;
192
+ Blockly.OPPOSITE_TYPE[Blockly.NEXT_STATEMENT] = Blockly.PREVIOUS_STATEMENT;
193
+ Blockly.OPPOSITE_TYPE[Blockly.PREVIOUS_STATEMENT] = Blockly.NEXT_STATEMENT;
194
+
195
+
196
+ /**
197
+ * ENUM for toolbox and flyout at top of screen.
198
+ * @const
199
+ */
200
+ Blockly.TOOLBOX_AT_TOP = 0;
201
+
202
+ /**
203
+ * ENUM for toolbox and flyout at bottom of screen.
204
+ * @const
205
+ */
206
+ Blockly.TOOLBOX_AT_BOTTOM = 1;
207
+
208
+ /**
209
+ * ENUM for toolbox and flyout at left of screen.
210
+ * @const
211
+ */
212
+ Blockly.TOOLBOX_AT_LEFT = 2;
213
+
214
+ /**
215
+ * ENUM for toolbox and flyout at right of screen.
216
+ * @const
217
+ */
218
+ Blockly.TOOLBOX_AT_RIGHT = 3;
219
+
220
+ /**
221
+ * ENUM representing that an event is not in any delete areas.
222
+ * Null for backwards compatibility reasons.
223
+ * @const
224
+ */
225
+ Blockly.DELETE_AREA_NONE = null;
226
+
227
+ /**
228
+ * ENUM representing that an event is in the delete area of the trash can.
229
+ * @const
230
+ */
231
+ Blockly.DELETE_AREA_TRASH = 1;
232
+
233
+ /**
234
+ * ENUM representing that an event is in the delete area of the toolbox or
235
+ * flyout.
236
+ * @const
237
+ */
238
+ Blockly.DELETE_AREA_TOOLBOX = 2;
239
+
240
+ /**
241
+ * String for use in the "custom" attribute of a category in toolbox XML.
242
+ * This string indicates that the category should be dynamically populated with
243
+ * variable blocks.
244
+ * @const {string}
245
+ */
246
+ Blockly.VARIABLE_CATEGORY_NAME = 'VARIABLE';
247
+ /**
248
+ * String for use in the "custom" attribute of a category in toolbox XML.
249
+ * This string indicates that the category should be dynamically populated with
250
+ * variable blocks.
251
+ * @const {string}
252
+ */
253
+ Blockly.VARIABLE_DYNAMIC_CATEGORY_NAME = 'VARIABLE_DYNAMIC';
254
+
255
+ /**
256
+ * String for use in the "custom" attribute of a category in toolbox XML.
257
+ * This string indicates that the category should be dynamically populated with
258
+ * procedure blocks.
259
+ * @const {string}
260
+ */
261
+ Blockly.PROCEDURE_CATEGORY_NAME = 'PROCEDURE';
262
+
263
+ /**
264
+ * String for use in the dropdown created in field_variable.
265
+ * This string indicates that this option in the dropdown is 'Rename
266
+ * variable...' and if selected, should trigger the prompt to rename a variable.
267
+ * @const {string}
268
+ */
269
+ Blockly.RENAME_VARIABLE_ID = 'RENAME_VARIABLE_ID';
270
+
271
+ /**
272
+ * String for use in the dropdown created in field_variable.
273
+ * This string indicates that this option in the dropdown is 'Delete the "%1"
274
+ * variable' and if selected, should trigger the prompt to delete a variable.
275
+ * @const {string}
276
+ */
277
+ Blockly.DELETE_VARIABLE_ID = 'DELETE_VARIABLE_ID';
@@ -0,0 +1,307 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2011 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ /**
8
+ * @fileoverview Functionality for the right-click context menus.
9
+ * @author fraser@google.com (Neil Fraser)
10
+ */
11
+ 'use strict';
12
+
13
+ /**
14
+ * @name Blockly.ContextMenu
15
+ * @namespace
16
+ */
17
+ goog.provide('Blockly.ContextMenu');
18
+
19
+ goog.require('Blockly.Events');
20
+ goog.require('Blockly.Events.BlockCreate');
21
+ goog.require('Blockly.Menu');
22
+ goog.require('Blockly.MenuItem');
23
+ goog.require('Blockly.Msg');
24
+ goog.require('Blockly.utils');
25
+ goog.require('Blockly.utils.Coordinate');
26
+ goog.require('Blockly.utils.dom');
27
+ goog.require('Blockly.utils.Rect');
28
+ goog.require('Blockly.utils.userAgent');
29
+ goog.require('Blockly.Xml');
30
+
31
+
32
+ /**
33
+ * Which block is the context menu attached to?
34
+ * @type {Blockly.Block}
35
+ */
36
+ Blockly.ContextMenu.currentBlock = null;
37
+
38
+ /**
39
+ * Menu object.
40
+ * @type {Blockly.Menu}
41
+ * @private
42
+ */
43
+ Blockly.ContextMenu.menu_ = null;
44
+
45
+ /**
46
+ * Construct the menu based on the list of options and show the menu.
47
+ * @param {!Event} e Mouse event.
48
+ * @param {!Array.<!Object>} options Array of menu options.
49
+ * @param {boolean} rtl True if RTL, false if LTR.
50
+ */
51
+ Blockly.ContextMenu.show = function(e, options, rtl) {
52
+ Blockly.WidgetDiv.show(Blockly.ContextMenu, rtl, Blockly.ContextMenu.dispose);
53
+ if (!options.length) {
54
+ Blockly.ContextMenu.hide();
55
+ return;
56
+ }
57
+ var menu = Blockly.ContextMenu.populate_(options, rtl);
58
+ Blockly.ContextMenu.menu_ = menu;
59
+
60
+ Blockly.ContextMenu.position_(menu, e, rtl);
61
+ // 1ms delay is required for focusing on context menus because some other
62
+ // mouse event is still waiting in the queue and clears focus.
63
+ setTimeout(function() {menu.focus();}, 1);
64
+ Blockly.ContextMenu.currentBlock = null; // May be set by Blockly.Block.
65
+ };
66
+
67
+ /**
68
+ * Create the context menu object and populate it with the given options.
69
+ * @param {!Array.<!Object>} options Array of menu options.
70
+ * @param {boolean} rtl True if RTL, false if LTR.
71
+ * @return {!Blockly.Menu} The menu that will be shown on right click.
72
+ * @private
73
+ */
74
+ Blockly.ContextMenu.populate_ = function(options, rtl) {
75
+ /* Here's what one option object looks like:
76
+ {text: 'Make It So',
77
+ enabled: true,
78
+ callback: Blockly.MakeItSo}
79
+ */
80
+ var menu = new Blockly.Menu();
81
+ menu.setRole(Blockly.utils.aria.Role.MENU);
82
+ for (var i = 0, option; (option = options[i]); i++) {
83
+ var menuItem = new Blockly.MenuItem(option.text);
84
+ menuItem.setRightToLeft(rtl);
85
+ menuItem.setRole(Blockly.utils.aria.Role.MENUITEM);
86
+ menu.addChild(menuItem);
87
+ menuItem.setEnabled(option.enabled);
88
+ if (option.enabled) {
89
+ var actionHandler = function(_menuItem) {
90
+ var option = this;
91
+ Blockly.ContextMenu.hide();
92
+ option.callback(option.scope);
93
+ };
94
+ menuItem.onAction(actionHandler, option);
95
+ }
96
+ }
97
+ return menu;
98
+ };
99
+
100
+ /**
101
+ * Add the menu to the page and position it correctly.
102
+ * @param {!Blockly.Menu} menu The menu to add and position.
103
+ * @param {!Event} e Mouse event for the right click that is making the context
104
+ * menu appear.
105
+ * @param {boolean} rtl True if RTL, false if LTR.
106
+ * @private
107
+ */
108
+ Blockly.ContextMenu.position_ = function(menu, e, rtl) {
109
+ // Record windowSize and scrollOffset before adding menu.
110
+ var viewportBBox = Blockly.utils.getViewportBBox();
111
+ // This one is just a point, but we'll pretend that it's a rect so we can use
112
+ // some helper functions.
113
+ var anchorBBox = new Blockly.utils.Rect(
114
+ e.clientY + viewportBBox.top,
115
+ e.clientY + viewportBBox.top,
116
+ e.clientX + viewportBBox.left,
117
+ e.clientX + viewportBBox.left
118
+ );
119
+
120
+ Blockly.ContextMenu.createWidget_(menu);
121
+ var menuSize = menu.getSize();
122
+
123
+ if (rtl) {
124
+ anchorBBox.left += menuSize.width;
125
+ anchorBBox.right += menuSize.width;
126
+ viewportBBox.left += menuSize.width;
127
+ viewportBBox.right += menuSize.width;
128
+ }
129
+
130
+ Blockly.WidgetDiv.positionWithAnchor(viewportBBox, anchorBBox, menuSize, rtl);
131
+ // Calling menuDom.focus() has to wait until after the menu has been placed
132
+ // correctly. Otherwise it will cause a page scroll to get the misplaced menu
133
+ // in view. See issue #1329.
134
+ menu.focus();
135
+ };
136
+
137
+ /**
138
+ * Create and render the menu widget inside Blockly's widget div.
139
+ * @param {!Blockly.Menu} menu The menu to add to the widget div.
140
+ * @private
141
+ */
142
+ Blockly.ContextMenu.createWidget_ = function(menu) {
143
+ var div = Blockly.WidgetDiv.DIV;
144
+ menu.render(div);
145
+ var menuDom = menu.getElement();
146
+ Blockly.utils.dom.addClass(
147
+ /** @type {!Element} */ (menuDom), 'blocklyContextMenu');
148
+ // Prevent system context menu when right-clicking a Blockly context menu.
149
+ Blockly.bindEventWithChecks_(/** @type {!EventTarget} */ (menuDom),
150
+ 'contextmenu', null, Blockly.utils.noEvent);
151
+ // Focus only after the initial render to avoid issue #1329.
152
+ menu.focus();
153
+ };
154
+
155
+ /**
156
+ * Hide the context menu.
157
+ */
158
+ Blockly.ContextMenu.hide = function() {
159
+ Blockly.WidgetDiv.hideIfOwner(Blockly.ContextMenu);
160
+ Blockly.ContextMenu.currentBlock = null;
161
+ };
162
+
163
+ /**
164
+ * Dispose of the menu.
165
+ */
166
+ Blockly.ContextMenu.dispose = function() {
167
+ if (Blockly.ContextMenu.menu_) {
168
+ Blockly.ContextMenu.menu_.dispose();
169
+ Blockly.ContextMenu.menu_ = null;
170
+ }
171
+ };
172
+
173
+ /**
174
+ * Create a callback function that creates and configures a block,
175
+ * then places the new block next to the original.
176
+ * @param {!Blockly.Block} block Original block.
177
+ * @param {!Element} xml XML representation of new block.
178
+ * @return {!Function} Function that creates a block.
179
+ */
180
+ Blockly.ContextMenu.callbackFactory = function(block, xml) {
181
+ return function() {
182
+ Blockly.Events.disable();
183
+ try {
184
+ var newBlock = Blockly.Xml.domToBlock(xml, block.workspace);
185
+ // Move the new block next to the old block.
186
+ var xy = block.getRelativeToSurfaceXY();
187
+ if (block.RTL) {
188
+ xy.x -= Blockly.SNAP_RADIUS;
189
+ } else {
190
+ xy.x += Blockly.SNAP_RADIUS;
191
+ }
192
+ xy.y += Blockly.SNAP_RADIUS * 2;
193
+ newBlock.moveBy(xy.x, xy.y);
194
+ } finally {
195
+ Blockly.Events.enable();
196
+ }
197
+ if (Blockly.Events.isEnabled() && !newBlock.isShadow()) {
198
+ Blockly.Events.fire(new Blockly.Events.BlockCreate(newBlock));
199
+ }
200
+ newBlock.select();
201
+ };
202
+ };
203
+
204
+ // Helper functions for creating context menu options.
205
+
206
+ /**
207
+ * Make a context menu option for deleting the current workspace comment.
208
+ * @param {!Blockly.WorkspaceCommentSvg} comment The workspace comment where the
209
+ * right-click originated.
210
+ * @return {!Object} A menu option, containing text, enabled, and a callback.
211
+ * @package
212
+ */
213
+ Blockly.ContextMenu.commentDeleteOption = function(comment) {
214
+ var deleteOption = {
215
+ text: Blockly.Msg['REMOVE_COMMENT'],
216
+ enabled: true,
217
+ callback: function() {
218
+ Blockly.Events.setGroup(true);
219
+ comment.dispose(true, true);
220
+ Blockly.Events.setGroup(false);
221
+ }
222
+ };
223
+ return deleteOption;
224
+ };
225
+
226
+ /**
227
+ * Make a context menu option for duplicating the current workspace comment.
228
+ * @param {!Blockly.WorkspaceCommentSvg} comment The workspace comment where the
229
+ * right-click originated.
230
+ * @return {!Object} A menu option, containing text, enabled, and a callback.
231
+ * @package
232
+ */
233
+ Blockly.ContextMenu.commentDuplicateOption = function(comment) {
234
+ var duplicateOption = {
235
+ text: Blockly.Msg['DUPLICATE_COMMENT'],
236
+ enabled: true,
237
+ callback: function() {
238
+ Blockly.duplicate(comment);
239
+ }
240
+ };
241
+ return duplicateOption;
242
+ };
243
+
244
+ /**
245
+ * Make a context menu option for adding a comment on the workspace.
246
+ * @param {!Blockly.WorkspaceSvg} ws The workspace where the right-click
247
+ * originated.
248
+ * @param {!Event} e The right-click mouse event.
249
+ * @return {!Object} A menu option, containing text, enabled, and a callback.
250
+ * @package
251
+ * @suppress {strictModuleDepCheck,checkTypes} Suppress checks while workspace
252
+ * comments are not bundled in.
253
+ */
254
+ Blockly.ContextMenu.workspaceCommentOption = function(ws, e) {
255
+ if (!Blockly.WorkspaceCommentSvg) {
256
+ throw Error('Missing require for Blockly.WorkspaceCommentSvg');
257
+ }
258
+ // Helper function to create and position a comment correctly based on the
259
+ // location of the mouse event.
260
+ var addWsComment = function() {
261
+ var comment = new Blockly.WorkspaceCommentSvg(
262
+ ws, Blockly.Msg['WORKSPACE_COMMENT_DEFAULT_TEXT'],
263
+ Blockly.WorkspaceCommentSvg.DEFAULT_SIZE,
264
+ Blockly.WorkspaceCommentSvg.DEFAULT_SIZE);
265
+
266
+ var injectionDiv = ws.getInjectionDiv();
267
+ // Bounding rect coordinates are in client coordinates, meaning that they
268
+ // are in pixels relative to the upper left corner of the visible browser
269
+ // window. These coordinates change when you scroll the browser window.
270
+ var boundingRect = injectionDiv.getBoundingClientRect();
271
+
272
+ // The client coordinates offset by the injection div's upper left corner.
273
+ var clientOffsetPixels = new Blockly.utils.Coordinate(
274
+ e.clientX - boundingRect.left, e.clientY - boundingRect.top);
275
+
276
+ // The offset in pixels between the main workspace's origin and the upper
277
+ // left corner of the injection div.
278
+ var mainOffsetPixels = ws.getOriginOffsetInPixels();
279
+
280
+ // The position of the new comment in pixels relative to the origin of the
281
+ // main workspace.
282
+ var finalOffset = Blockly.utils.Coordinate.difference(clientOffsetPixels,
283
+ mainOffsetPixels);
284
+ // The position of the new comment in main workspace coordinates.
285
+ finalOffset.scale(1 / ws.scale);
286
+
287
+ var commentX = finalOffset.x;
288
+ var commentY = finalOffset.y;
289
+ comment.moveBy(commentX, commentY);
290
+ if (ws.rendered) {
291
+ comment.initSvg();
292
+ comment.render();
293
+ comment.select();
294
+ }
295
+ };
296
+
297
+ var wsCommentOption = {
298
+ // Foreign objects don't work in IE. Don't let the user create comments
299
+ // that they won't be able to edit.
300
+ enabled: !Blockly.utils.userAgent.IE
301
+ };
302
+ wsCommentOption.text = Blockly.Msg['ADD_COMMENT'];
303
+ wsCommentOption.callback = function() {
304
+ addWsComment();
305
+ };
306
+ return wsCommentOption;
307
+ };