@cp949/phyx-blockly 12.5.1-p1

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 (806) hide show
  1. package/README.md +87 -0
  2. package/blockly.min.js +2751 -0
  3. package/blockly.mjs +163 -0
  4. package/blockly_compressed.js +1825 -0
  5. package/blockly_compressed.js.map +1 -0
  6. package/blocks.d.ts +17 -0
  7. package/blocks.js +4 -0
  8. package/blocks.mjs +12 -0
  9. package/blocks_compressed.js +194 -0
  10. package/blocks_compressed.js.map +1 -0
  11. package/core/any_aliases.d.ts +7 -0
  12. package/core/block.d.ts +1006 -0
  13. package/core/block_animations.d.ts +34 -0
  14. package/core/block_flyout_inflater.d.ts +94 -0
  15. package/core/block_svg.d.ts +737 -0
  16. package/core/blockly.d.ts +286 -0
  17. package/core/blockly_options.d.ts +70 -0
  18. package/core/blocks.d.ts +17 -0
  19. package/core/browser_events.d.ts +88 -0
  20. package/core/bubbles/bubble.d.ts +228 -0
  21. package/core/bubbles/mini_workspace_bubble.d.ts +84 -0
  22. package/core/bubbles/text_bubble.d.ts +38 -0
  23. package/core/bubbles/textinput_bubble.d.ts +102 -0
  24. package/core/bubbles.d.ts +11 -0
  25. package/core/bump_objects.d.ts +37 -0
  26. package/core/button_flyout_inflater.d.ts +42 -0
  27. package/core/clipboard/block_paster.d.ts +34 -0
  28. package/core/clipboard/registry.d.ts +21 -0
  29. package/core/clipboard/workspace_comment_paster.d.ts +19 -0
  30. package/core/clipboard.d.ts +103 -0
  31. package/core/comments/collapse_comment_bar_button.d.ts +52 -0
  32. package/core/comments/comment_bar_button.d.ts +62 -0
  33. package/core/comments/comment_editor.d.ts +62 -0
  34. package/core/comments/comment_view.d.ts +213 -0
  35. package/core/comments/delete_comment_bar_button.d.ts +52 -0
  36. package/core/comments/rendered_workspace_comment.d.ts +121 -0
  37. package/core/comments/workspace_comment.d.ts +107 -0
  38. package/core/comments.d.ts +13 -0
  39. package/core/common.d.ts +163 -0
  40. package/core/component_manager.d.ts +112 -0
  41. package/core/config.d.ts +24 -0
  42. package/core/connection.d.ts +291 -0
  43. package/core/connection_checker.d.ts +85 -0
  44. package/core/connection_db.d.ts +100 -0
  45. package/core/connection_type.d.ts +15 -0
  46. package/core/constants.d.ts +19 -0
  47. package/core/contextmenu.d.ts +58 -0
  48. package/core/contextmenu_items.d.ts +73 -0
  49. package/core/contextmenu_registry.d.ts +173 -0
  50. package/core/css.d.ts +25 -0
  51. package/core/delete_area.d.ts +48 -0
  52. package/core/dialog.d.ts +82 -0
  53. package/core/drag_target.d.ts +75 -0
  54. package/core/dragging/block_drag_strategy.d.ts +130 -0
  55. package/core/dragging/bubble_drag_strategy.d.ts +20 -0
  56. package/core/dragging/comment_drag_strategy.d.ts +26 -0
  57. package/core/dragging/dragger.d.ts +49 -0
  58. package/core/dragging.d.ts +11 -0
  59. package/core/dropdowndiv.d.ts +208 -0
  60. package/core/events/events.d.ts +72 -0
  61. package/core/events/events_abstract.d.ts +72 -0
  62. package/core/events/events_block_base.d.ts +46 -0
  63. package/core/events/events_block_change.d.ts +100 -0
  64. package/core/events/events_block_create.d.ts +59 -0
  65. package/core/events/events_block_delete.d.ts +62 -0
  66. package/core/events/events_block_drag.d.ts +61 -0
  67. package/core/events/events_block_field_intermediate_change.d.ts +71 -0
  68. package/core/events/events_block_move.d.ts +115 -0
  69. package/core/events/events_bubble_open.d.ts +62 -0
  70. package/core/events/events_click.d.ts +64 -0
  71. package/core/events/events_comment_base.d.ts +55 -0
  72. package/core/events/events_comment_change.d.ts +64 -0
  73. package/core/events/events_comment_collapse.d.ts +40 -0
  74. package/core/events/events_comment_create.d.ts +57 -0
  75. package/core/events/events_comment_delete.d.ts +57 -0
  76. package/core/events/events_comment_drag.d.ts +51 -0
  77. package/core/events/events_comment_move.d.ts +93 -0
  78. package/core/events/events_comment_resize.d.ts +68 -0
  79. package/core/events/events_selected.d.ts +53 -0
  80. package/core/events/events_theme_change.d.ts +43 -0
  81. package/core/events/events_toolbox_item_select.d.ts +49 -0
  82. package/core/events/events_trashcan_open.d.ts +47 -0
  83. package/core/events/events_ui_base.d.ts +32 -0
  84. package/core/events/events_var_base.d.ts +46 -0
  85. package/core/events/events_var_create.d.ts +55 -0
  86. package/core/events/events_var_delete.d.ts +50 -0
  87. package/core/events/events_var_rename.d.ts +51 -0
  88. package/core/events/events_var_type_change.d.ts +55 -0
  89. package/core/events/events_viewport.d.ts +67 -0
  90. package/core/events/predicates.d.ts +87 -0
  91. package/core/events/type.d.ts +81 -0
  92. package/core/events/utils.d.ts +211 -0
  93. package/core/events/workspace_events.d.ts +23 -0
  94. package/core/extensions.d.ts +99 -0
  95. package/core/field.d.ts +724 -0
  96. package/core/field_checkbox.d.ts +156 -0
  97. package/core/field_dropdown.d.ts +295 -0
  98. package/core/field_image.d.ts +148 -0
  99. package/core/field_input.d.ts +293 -0
  100. package/core/field_label.d.ts +80 -0
  101. package/core/field_label_serializable.d.ts +50 -0
  102. package/core/field_number.d.ts +194 -0
  103. package/core/field_registry.d.ts +83 -0
  104. package/core/field_textinput.d.ts +78 -0
  105. package/core/field_variable.d.ts +261 -0
  106. package/core/flyout_base.d.ts +453 -0
  107. package/core/flyout_button.d.ts +140 -0
  108. package/core/flyout_horizontal.d.ts +87 -0
  109. package/core/flyout_item.d.ts +26 -0
  110. package/core/flyout_metrics_manager.d.ts +46 -0
  111. package/core/flyout_navigator.d.ts +11 -0
  112. package/core/flyout_separator.d.ts +64 -0
  113. package/core/flyout_vertical.d.ts +88 -0
  114. package/core/focus_manager.d.ts +266 -0
  115. package/core/generator.d.ts +279 -0
  116. package/core/gesture.d.ts +449 -0
  117. package/core/grid.d.ts +124 -0
  118. package/core/icons/comment_icon.d.ts +134 -0
  119. package/core/icons/exceptions.d.ts +17 -0
  120. package/core/icons/icon.d.ts +84 -0
  121. package/core/icons/icon_types.d.ts +25 -0
  122. package/core/icons/mutator_icon.d.ts +96 -0
  123. package/core/icons/registry.d.ts +23 -0
  124. package/core/icons/warning_icon.d.ts +77 -0
  125. package/core/icons.d.ts +14 -0
  126. package/core/inject.d.ts +16 -0
  127. package/core/inputs/align.d.ts +14 -0
  128. package/core/inputs/dummy_input.d.ts +20 -0
  129. package/core/inputs/end_row_input.d.ts +25 -0
  130. package/core/inputs/input.d.ts +147 -0
  131. package/core/inputs/input_types.d.ts +16 -0
  132. package/core/inputs/statement_input.d.ts +22 -0
  133. package/core/inputs/value_input.d.ts +20 -0
  134. package/core/inputs.d.ts +14 -0
  135. package/core/insertion_marker_previewer.d.ts +67 -0
  136. package/core/interfaces/i_autohideable.d.ts +21 -0
  137. package/core/interfaces/i_bounded_element.d.ts +27 -0
  138. package/core/interfaces/i_bubble.d.ts +55 -0
  139. package/core/interfaces/i_collapsible_toolbox_item.d.ts +28 -0
  140. package/core/interfaces/i_comment_icon.d.ts +24 -0
  141. package/core/interfaces/i_component.d.ts +17 -0
  142. package/core/interfaces/i_connection_checker.d.ts +75 -0
  143. package/core/interfaces/i_connection_previewer.d.ts +39 -0
  144. package/core/interfaces/i_contextmenu.d.ts +16 -0
  145. package/core/interfaces/i_copyable.d.ts +30 -0
  146. package/core/interfaces/i_deletable.d.ts +23 -0
  147. package/core/interfaces/i_delete_area.d.ts +25 -0
  148. package/core/interfaces/i_drag_target.d.ts +59 -0
  149. package/core/interfaces/i_draggable.d.ts +56 -0
  150. package/core/interfaces/i_dragger.d.ts +32 -0
  151. package/core/interfaces/i_flyout.d.ts +159 -0
  152. package/core/interfaces/i_flyout_inflater.d.ts +48 -0
  153. package/core/interfaces/i_focusable_node.d.ts +105 -0
  154. package/core/interfaces/i_focusable_tree.d.ts +125 -0
  155. package/core/interfaces/i_has_bubble.d.ts +27 -0
  156. package/core/interfaces/i_icon.d.ts +84 -0
  157. package/core/interfaces/i_keyboard_accessible.d.ts +19 -0
  158. package/core/interfaces/i_legacy_procedure_blocks.d.ts +34 -0
  159. package/core/interfaces/i_metrics_manager.d.ts +129 -0
  160. package/core/interfaces/i_movable.d.ts +17 -0
  161. package/core/interfaces/i_navigation_policy.d.ts +63 -0
  162. package/core/interfaces/i_observable.d.ts +21 -0
  163. package/core/interfaces/i_parameter_model.d.ts +44 -0
  164. package/core/interfaces/i_paster.d.ts +15 -0
  165. package/core/interfaces/i_positionable.d.ts +29 -0
  166. package/core/interfaces/i_procedure_block.d.ts +16 -0
  167. package/core/interfaces/i_procedure_map.d.ts +16 -0
  168. package/core/interfaces/i_procedure_model.d.ts +59 -0
  169. package/core/interfaces/i_registrable.d.ts +11 -0
  170. package/core/interfaces/i_rendered_element.d.ts +16 -0
  171. package/core/interfaces/i_selectable.d.ts +26 -0
  172. package/core/interfaces/i_selectable_toolbox_item.d.ts +51 -0
  173. package/core/interfaces/i_serializable.d.ts +24 -0
  174. package/core/interfaces/i_serializer.d.ts +45 -0
  175. package/core/interfaces/i_styleable.d.ts +23 -0
  176. package/core/interfaces/i_toolbox.d.ts +102 -0
  177. package/core/interfaces/i_toolbox_item.d.ts +71 -0
  178. package/core/interfaces/i_variable_backed_parameter_model.d.ts +17 -0
  179. package/core/interfaces/i_variable_map.d.ts +48 -0
  180. package/core/interfaces/i_variable_model.d.ts +36 -0
  181. package/core/internal_constants.d.ts +34 -0
  182. package/core/keyboard_nav/block_comment_navigation_policy.d.ts +56 -0
  183. package/core/keyboard_nav/block_navigation_policy.d.ts +84 -0
  184. package/core/keyboard_nav/comment_bar_button_navigation_policy.d.ts +56 -0
  185. package/core/keyboard_nav/comment_editor_navigation_policy.d.ts +34 -0
  186. package/core/keyboard_nav/connection_navigation_policy.d.ts +67 -0
  187. package/core/keyboard_nav/field_navigation_policy.d.ts +56 -0
  188. package/core/keyboard_nav/flyout_button_navigation_policy.d.ts +56 -0
  189. package/core/keyboard_nav/flyout_navigation_policy.d.ts +65 -0
  190. package/core/keyboard_nav/flyout_separator_navigation_policy.d.ts +33 -0
  191. package/core/keyboard_nav/icon_navigation_policy.d.ts +56 -0
  192. package/core/keyboard_nav/line_cursor.d.ts +187 -0
  193. package/core/keyboard_nav/marker.d.ts +53 -0
  194. package/core/keyboard_nav/workspace_comment_navigation_policy.d.ts +56 -0
  195. package/core/keyboard_nav/workspace_navigation_policy.d.ts +56 -0
  196. package/core/keyboard_navigation_controller.d.ts +48 -0
  197. package/core/label_flyout_inflater.d.ts +42 -0
  198. package/core/layer_manager.d.ts +101 -0
  199. package/core/layers.d.ts +16 -0
  200. package/core/main.d.ts +7 -0
  201. package/core/marker_manager.d.ts +72 -0
  202. package/core/menu.d.ts +170 -0
  203. package/core/menu_separator.d.ts +25 -0
  204. package/core/menuitem.d.ts +147 -0
  205. package/core/metrics_manager.d.ts +221 -0
  206. package/core/msg.d.ts +24 -0
  207. package/core/names.d.ts +139 -0
  208. package/core/navigator.d.ts +65 -0
  209. package/core/observable_procedure_map.d.ts +34 -0
  210. package/core/options.d.ts +148 -0
  211. package/core/positionable_helpers.d.ts +89 -0
  212. package/core/procedures.d.ts +108 -0
  213. package/core/registry.d.ts +158 -0
  214. package/core/render_management.d.ts +34 -0
  215. package/core/rendered_connection.d.ts +262 -0
  216. package/core/renderers/common/block_rendering.d.ts +63 -0
  217. package/core/renderers/common/constants.d.ts +454 -0
  218. package/core/renderers/common/drawer.d.ts +156 -0
  219. package/core/renderers/common/i_path_object.d.ts +88 -0
  220. package/core/renderers/common/info.d.ts +201 -0
  221. package/core/renderers/common/path_object.d.ts +130 -0
  222. package/core/renderers/common/renderer.d.ts +141 -0
  223. package/core/renderers/geras/constants.d.ts +22 -0
  224. package/core/renderers/geras/drawer.d.ts +44 -0
  225. package/core/renderers/geras/geras.d.ts +17 -0
  226. package/core/renderers/geras/highlight_constants.d.ts +100 -0
  227. package/core/renderers/geras/highlighter.d.ts +96 -0
  228. package/core/renderers/geras/info.d.ts +45 -0
  229. package/core/renderers/geras/measurables/inline_input.d.ts +22 -0
  230. package/core/renderers/geras/measurables/statement_input.d.ts +22 -0
  231. package/core/renderers/geras/path_object.d.ts +42 -0
  232. package/core/renderers/geras/renderer.d.ts +77 -0
  233. package/core/renderers/measurables/base.d.ts +26 -0
  234. package/core/renderers/measurables/bottom_row.d.ts +58 -0
  235. package/core/renderers/measurables/connection.d.ts +25 -0
  236. package/core/renderers/measurables/external_value_input.d.ts +25 -0
  237. package/core/renderers/measurables/field.d.ts +28 -0
  238. package/core/renderers/measurables/hat.d.ts +19 -0
  239. package/core/renderers/measurables/icon.d.ts +25 -0
  240. package/core/renderers/measurables/in_row_spacer.d.ts +20 -0
  241. package/core/renderers/measurables/inline_input.d.ts +22 -0
  242. package/core/renderers/measurables/input_connection.d.ts +28 -0
  243. package/core/renderers/measurables/input_row.d.ts +26 -0
  244. package/core/renderers/measurables/jagged_edge.d.ts +19 -0
  245. package/core/renderers/measurables/next_connection.d.ts +22 -0
  246. package/core/renderers/measurables/output_connection.d.ts +24 -0
  247. package/core/renderers/measurables/previous_connection.d.ts +22 -0
  248. package/core/renderers/measurables/round_corner.d.ts +20 -0
  249. package/core/renderers/measurables/row.d.ts +124 -0
  250. package/core/renderers/measurables/spacer_row.d.ts +27 -0
  251. package/core/renderers/measurables/square_corner.d.ts +20 -0
  252. package/core/renderers/measurables/statement_input.d.ts +21 -0
  253. package/core/renderers/measurables/top_row.d.ts +53 -0
  254. package/core/renderers/measurables/types.d.ts +258 -0
  255. package/core/renderers/thrasos/info.d.ts +37 -0
  256. package/core/renderers/thrasos/renderer.d.ts +28 -0
  257. package/core/renderers/thrasos/thrasos.d.ts +10 -0
  258. package/core/renderers/zelos/constants.d.ts +165 -0
  259. package/core/renderers/zelos/drawer.d.ts +51 -0
  260. package/core/renderers/zelos/info.d.ts +89 -0
  261. package/core/renderers/zelos/measurables/bottom_row.d.ts +26 -0
  262. package/core/renderers/zelos/measurables/inputs.d.ts +21 -0
  263. package/core/renderers/zelos/measurables/row_elements.d.ts +20 -0
  264. package/core/renderers/zelos/measurables/top_row.d.ts +28 -0
  265. package/core/renderers/zelos/path_object.d.ts +76 -0
  266. package/core/renderers/zelos/renderer.d.ts +64 -0
  267. package/core/renderers/zelos/zelos.d.ts +17 -0
  268. package/core/scrollbar.d.ts +348 -0
  269. package/core/scrollbar_pair.d.ts +121 -0
  270. package/core/separator_flyout_inflater.d.ts +57 -0
  271. package/core/serialization/blocks.d.ts +138 -0
  272. package/core/serialization/exceptions.d.ts +81 -0
  273. package/core/serialization/priorities.d.ts +20 -0
  274. package/core/serialization/procedures.d.ts +97 -0
  275. package/core/serialization/registry.d.ts +21 -0
  276. package/core/serialization/variables.d.ts +38 -0
  277. package/core/serialization/workspace_comments.d.ts +45 -0
  278. package/core/serialization/workspaces.d.ts +29 -0
  279. package/core/serialization.d.ts +19 -0
  280. package/core/shortcut_items.d.ts +59 -0
  281. package/core/shortcut_registry.d.ts +236 -0
  282. package/core/sprites.d.ts +15 -0
  283. package/core/theme/classic.d.ts +12 -0
  284. package/core/theme/themes.d.ts +9 -0
  285. package/core/theme/zelos.d.ts +11 -0
  286. package/core/theme.d.ts +151 -0
  287. package/core/theme_manager.d.ts +92 -0
  288. package/core/toast.d.ts +74 -0
  289. package/core/toolbox/category.d.ts +265 -0
  290. package/core/toolbox/collapsible_category.d.ts +99 -0
  291. package/core/toolbox/separator.d.ts +40 -0
  292. package/core/toolbox/toolbox.d.ts +419 -0
  293. package/core/toolbox/toolbox_item.d.ts +109 -0
  294. package/core/tooltip.d.ts +118 -0
  295. package/core/touch.d.ts +72 -0
  296. package/core/trashcan.d.ts +212 -0
  297. package/core/utils/aria.d.ts +69 -0
  298. package/core/utils/array.d.ts +15 -0
  299. package/core/utils/colour.d.ts +102 -0
  300. package/core/utils/coordinate.d.ts +87 -0
  301. package/core/utils/deprecation.d.ts +18 -0
  302. package/core/utils/dom.d.ts +154 -0
  303. package/core/utils/drag.d.ts +33 -0
  304. package/core/utils/focusable_tree_traverser.d.ts +53 -0
  305. package/core/utils/idgenerator.d.ts +33 -0
  306. package/core/utils/keycodes.d.ts +137 -0
  307. package/core/utils/math.d.ts +31 -0
  308. package/core/utils/metrics.d.ts +64 -0
  309. package/core/utils/object.d.ts +17 -0
  310. package/core/utils/parsing.d.ts +52 -0
  311. package/core/utils/rect.d.ts +82 -0
  312. package/core/utils/size.d.ts +44 -0
  313. package/core/utils/string.d.ts +46 -0
  314. package/core/utils/style.d.ts +89 -0
  315. package/core/utils/svg.d.ts +75 -0
  316. package/core/utils/svg_math.d.ts +64 -0
  317. package/core/utils/svg_paths.d.ts +103 -0
  318. package/core/utils/toolbox.d.ts +180 -0
  319. package/core/utils/useragent.d.ts +14 -0
  320. package/core/utils/xml.d.ts +96 -0
  321. package/core/utils.d.ts +31 -0
  322. package/core/variable_map.d.ts +164 -0
  323. package/core/variable_model.d.ts +73 -0
  324. package/core/variables.d.ts +238 -0
  325. package/core/variables_dynamic.d.ts +56 -0
  326. package/core/widgetdiv.d.ts +87 -0
  327. package/core/workspace.d.ts +482 -0
  328. package/core/workspace_audio.d.ts +62 -0
  329. package/core/workspace_dragger.d.ts +48 -0
  330. package/core/workspace_svg.d.ts +1103 -0
  331. package/core/xml.d.ts +127 -0
  332. package/core/zoom_controls.d.ts +134 -0
  333. package/core-node.js +31 -0
  334. package/core.d.ts +7 -0
  335. package/core.js +4 -0
  336. package/dart.d.ts +7 -0
  337. package/dart.js +4 -0
  338. package/dart.mjs +6 -0
  339. package/dart_compressed.js +330 -0
  340. package/dart_compressed.js.map +1 -0
  341. package/generators/dart/dart_generator.d.ts +104 -0
  342. package/generators/dart/lists.d.ts +21 -0
  343. package/generators/dart/logic.d.ts +20 -0
  344. package/generators/dart/loops.d.ts +14 -0
  345. package/generators/dart/math.d.ts +26 -0
  346. package/generators/dart/procedures.d.ts +14 -0
  347. package/generators/dart/text.d.ts +25 -0
  348. package/generators/dart/variables.d.ts +14 -0
  349. package/generators/dart/variables_dynamic.d.ts +10 -0
  350. package/generators/dart.d.ts +18 -0
  351. package/generators/javascript/javascript_generator.d.ts +123 -0
  352. package/generators/javascript/lists.d.ts +21 -0
  353. package/generators/javascript/logic.d.ts +20 -0
  354. package/generators/javascript/loops.d.ts +14 -0
  355. package/generators/javascript/math.d.ts +26 -0
  356. package/generators/javascript/procedures.d.ts +17 -0
  357. package/generators/javascript/text.d.ts +25 -0
  358. package/generators/javascript/variables.d.ts +14 -0
  359. package/generators/javascript/variables_dynamic.d.ts +10 -0
  360. package/generators/javascript.d.ts +18 -0
  361. package/generators/lua/lists.d.ts +21 -0
  362. package/generators/lua/logic.d.ts +20 -0
  363. package/generators/lua/loops.d.ts +14 -0
  364. package/generators/lua/lua_generator.d.ts +91 -0
  365. package/generators/lua/math.d.ts +26 -0
  366. package/generators/lua/procedures.d.ts +14 -0
  367. package/generators/lua/text.d.ts +25 -0
  368. package/generators/lua/variables.d.ts +14 -0
  369. package/generators/lua/variables_dynamic.d.ts +10 -0
  370. package/generators/lua.d.ts +12 -0
  371. package/generators/php/lists.d.ts +21 -0
  372. package/generators/php/logic.d.ts +20 -0
  373. package/generators/php/loops.d.ts +14 -0
  374. package/generators/php/math.d.ts +26 -0
  375. package/generators/php/php_generator.d.ts +122 -0
  376. package/generators/php/procedures.d.ts +14 -0
  377. package/generators/php/text.d.ts +25 -0
  378. package/generators/php/variables.d.ts +14 -0
  379. package/generators/php/variables_dynamic.d.ts +10 -0
  380. package/generators/php.d.ts +13 -0
  381. package/generators/python/lists.d.ts +21 -0
  382. package/generators/python/logic.d.ts +20 -0
  383. package/generators/python/loops.d.ts +14 -0
  384. package/generators/python/math.d.ts +26 -0
  385. package/generators/python/procedures.d.ts +14 -0
  386. package/generators/python/python_generator.d.ts +111 -0
  387. package/generators/python/text.d.ts +25 -0
  388. package/generators/python/variables.d.ts +14 -0
  389. package/generators/python/variables_dynamic.d.ts +10 -0
  390. package/generators/python.d.ts +13 -0
  391. package/index.d.ts +10 -0
  392. package/index.js +36 -0
  393. package/index.mjs +163 -0
  394. package/javascript.d.ts +7 -0
  395. package/javascript.js +4 -0
  396. package/javascript.mjs +6 -0
  397. package/javascript_compressed.js +264 -0
  398. package/javascript_compressed.js.map +1 -0
  399. package/lua.d.ts +7 -0
  400. package/lua.js +4 -0
  401. package/lua.mjs +6 -0
  402. package/lua_compressed.js +373 -0
  403. package/lua_compressed.js.map +1 -0
  404. package/media/1x1.gif +0 -0
  405. package/media/click.mp3 +0 -0
  406. package/media/delete-icon.svg +1 -0
  407. package/media/delete.mp3 +0 -0
  408. package/media/disconnect.mp3 +0 -0
  409. package/media/dropdown-arrow.svg +1 -0
  410. package/media/foldout-icon.svg +1 -0
  411. package/media/handclosed.cur +0 -0
  412. package/media/handdelete.cur +0 -0
  413. package/media/handopen.cur +0 -0
  414. package/media/pilcrow.png +0 -0
  415. package/media/quote0.png +0 -0
  416. package/media/quote1.png +0 -0
  417. package/media/resize-handle.svg +3 -0
  418. package/media/sprites.png +0 -0
  419. package/media/sprites.svg +74 -0
  420. package/msg/ab.d.ts +8 -0
  421. package/msg/ab.js +465 -0
  422. package/msg/ab.mjs +446 -0
  423. package/msg/ace.d.ts +8 -0
  424. package/msg/ace.js +465 -0
  425. package/msg/ace.mjs +446 -0
  426. package/msg/af.d.ts +8 -0
  427. package/msg/af.js +465 -0
  428. package/msg/af.mjs +446 -0
  429. package/msg/am.d.ts +8 -0
  430. package/msg/am.js +465 -0
  431. package/msg/am.mjs +446 -0
  432. package/msg/ar.d.ts +8 -0
  433. package/msg/ar.js +465 -0
  434. package/msg/ar.mjs +446 -0
  435. package/msg/ast.d.ts +8 -0
  436. package/msg/ast.js +465 -0
  437. package/msg/ast.mjs +446 -0
  438. package/msg/az.d.ts +8 -0
  439. package/msg/az.js +465 -0
  440. package/msg/az.mjs +446 -0
  441. package/msg/ba.d.ts +8 -0
  442. package/msg/ba.js +465 -0
  443. package/msg/ba.mjs +446 -0
  444. package/msg/bcc.d.ts +8 -0
  445. package/msg/bcc.js +465 -0
  446. package/msg/bcc.mjs +446 -0
  447. package/msg/be-tarask.d.ts +8 -0
  448. package/msg/be-tarask.js +465 -0
  449. package/msg/be-tarask.mjs +446 -0
  450. package/msg/be.d.ts +8 -0
  451. package/msg/be.js +465 -0
  452. package/msg/be.mjs +446 -0
  453. package/msg/bg.d.ts +8 -0
  454. package/msg/bg.js +465 -0
  455. package/msg/bg.mjs +446 -0
  456. package/msg/bn.d.ts +8 -0
  457. package/msg/bn.js +465 -0
  458. package/msg/bn.mjs +446 -0
  459. package/msg/br.d.ts +8 -0
  460. package/msg/br.js +465 -0
  461. package/msg/br.mjs +446 -0
  462. package/msg/bs.d.ts +8 -0
  463. package/msg/bs.js +465 -0
  464. package/msg/bs.mjs +446 -0
  465. package/msg/ca.d.ts +8 -0
  466. package/msg/ca.js +465 -0
  467. package/msg/ca.mjs +446 -0
  468. package/msg/cdo.d.ts +8 -0
  469. package/msg/cdo.js +465 -0
  470. package/msg/cdo.mjs +446 -0
  471. package/msg/ce.d.ts +8 -0
  472. package/msg/ce.js +465 -0
  473. package/msg/ce.mjs +446 -0
  474. package/msg/cs.d.ts +8 -0
  475. package/msg/cs.js +465 -0
  476. package/msg/cs.mjs +446 -0
  477. package/msg/da.d.ts +8 -0
  478. package/msg/da.js +465 -0
  479. package/msg/da.mjs +446 -0
  480. package/msg/de.d.ts +8 -0
  481. package/msg/de.js +465 -0
  482. package/msg/de.mjs +446 -0
  483. package/msg/diq.d.ts +8 -0
  484. package/msg/diq.js +465 -0
  485. package/msg/diq.mjs +446 -0
  486. package/msg/dtp.d.ts +8 -0
  487. package/msg/dtp.js +465 -0
  488. package/msg/dtp.mjs +446 -0
  489. package/msg/dty.d.ts +8 -0
  490. package/msg/dty.js +465 -0
  491. package/msg/dty.mjs +446 -0
  492. package/msg/ee.d.ts +8 -0
  493. package/msg/ee.js +465 -0
  494. package/msg/ee.mjs +446 -0
  495. package/msg/el.d.ts +8 -0
  496. package/msg/el.js +465 -0
  497. package/msg/el.mjs +446 -0
  498. package/msg/en-gb.d.ts +8 -0
  499. package/msg/en-gb.js +465 -0
  500. package/msg/en-gb.mjs +446 -0
  501. package/msg/en.d.ts +8 -0
  502. package/msg/en.js +465 -0
  503. package/msg/en.mjs +446 -0
  504. package/msg/eo.d.ts +8 -0
  505. package/msg/eo.js +465 -0
  506. package/msg/eo.mjs +446 -0
  507. package/msg/es.d.ts +8 -0
  508. package/msg/es.js +465 -0
  509. package/msg/es.mjs +446 -0
  510. package/msg/et.d.ts +8 -0
  511. package/msg/et.js +465 -0
  512. package/msg/et.mjs +446 -0
  513. package/msg/eu.d.ts +8 -0
  514. package/msg/eu.js +465 -0
  515. package/msg/eu.mjs +446 -0
  516. package/msg/fa.d.ts +8 -0
  517. package/msg/fa.js +465 -0
  518. package/msg/fa.mjs +446 -0
  519. package/msg/fi.d.ts +8 -0
  520. package/msg/fi.js +465 -0
  521. package/msg/fi.mjs +446 -0
  522. package/msg/fo.d.ts +8 -0
  523. package/msg/fo.js +465 -0
  524. package/msg/fo.mjs +446 -0
  525. package/msg/fr.d.ts +8 -0
  526. package/msg/fr.js +465 -0
  527. package/msg/fr.mjs +446 -0
  528. package/msg/frr.d.ts +8 -0
  529. package/msg/frr.js +465 -0
  530. package/msg/frr.mjs +446 -0
  531. package/msg/gl.d.ts +8 -0
  532. package/msg/gl.js +465 -0
  533. package/msg/gl.mjs +446 -0
  534. package/msg/gn.d.ts +8 -0
  535. package/msg/gn.js +465 -0
  536. package/msg/gn.mjs +446 -0
  537. package/msg/gor.d.ts +8 -0
  538. package/msg/gor.js +465 -0
  539. package/msg/gor.mjs +446 -0
  540. package/msg/ha.d.ts +8 -0
  541. package/msg/ha.js +465 -0
  542. package/msg/ha.mjs +446 -0
  543. package/msg/hak.d.ts +8 -0
  544. package/msg/hak.js +465 -0
  545. package/msg/hak.mjs +446 -0
  546. package/msg/he.d.ts +8 -0
  547. package/msg/he.js +465 -0
  548. package/msg/he.mjs +446 -0
  549. package/msg/hi.d.ts +8 -0
  550. package/msg/hi.js +465 -0
  551. package/msg/hi.mjs +446 -0
  552. package/msg/hr.d.ts +8 -0
  553. package/msg/hr.js +465 -0
  554. package/msg/hr.mjs +446 -0
  555. package/msg/hrx.d.ts +8 -0
  556. package/msg/hrx.js +465 -0
  557. package/msg/hrx.mjs +446 -0
  558. package/msg/hsb.d.ts +8 -0
  559. package/msg/hsb.js +465 -0
  560. package/msg/hsb.mjs +446 -0
  561. package/msg/hu.d.ts +8 -0
  562. package/msg/hu.js +465 -0
  563. package/msg/hu.mjs +446 -0
  564. package/msg/hy.d.ts +8 -0
  565. package/msg/hy.js +465 -0
  566. package/msg/hy.mjs +446 -0
  567. package/msg/ia.d.ts +8 -0
  568. package/msg/ia.js +465 -0
  569. package/msg/ia.mjs +446 -0
  570. package/msg/id.d.ts +8 -0
  571. package/msg/id.js +465 -0
  572. package/msg/id.mjs +446 -0
  573. package/msg/ig.d.ts +8 -0
  574. package/msg/ig.js +465 -0
  575. package/msg/ig.mjs +446 -0
  576. package/msg/inh.d.ts +8 -0
  577. package/msg/inh.js +465 -0
  578. package/msg/inh.mjs +446 -0
  579. package/msg/is.d.ts +8 -0
  580. package/msg/is.js +465 -0
  581. package/msg/is.mjs +446 -0
  582. package/msg/it.d.ts +8 -0
  583. package/msg/it.js +465 -0
  584. package/msg/it.mjs +446 -0
  585. package/msg/ja.d.ts +8 -0
  586. package/msg/ja.js +465 -0
  587. package/msg/ja.mjs +446 -0
  588. package/msg/ka.d.ts +8 -0
  589. package/msg/ka.js +465 -0
  590. package/msg/ka.mjs +446 -0
  591. package/msg/kab.d.ts +8 -0
  592. package/msg/kab.js +465 -0
  593. package/msg/kab.mjs +446 -0
  594. package/msg/kbd-cyrl.d.ts +8 -0
  595. package/msg/kbd-cyrl.js +465 -0
  596. package/msg/kbd-cyrl.mjs +446 -0
  597. package/msg/km.d.ts +8 -0
  598. package/msg/km.js +465 -0
  599. package/msg/km.mjs +446 -0
  600. package/msg/kn.d.ts +8 -0
  601. package/msg/kn.js +465 -0
  602. package/msg/kn.mjs +446 -0
  603. package/msg/ko.d.ts +8 -0
  604. package/msg/ko.js +465 -0
  605. package/msg/ko.mjs +446 -0
  606. package/msg/ksh.d.ts +8 -0
  607. package/msg/ksh.js +465 -0
  608. package/msg/ksh.mjs +446 -0
  609. package/msg/ku-latn.d.ts +8 -0
  610. package/msg/ku-latn.js +465 -0
  611. package/msg/ku-latn.mjs +446 -0
  612. package/msg/ky.d.ts +8 -0
  613. package/msg/ky.js +465 -0
  614. package/msg/ky.mjs +446 -0
  615. package/msg/la.d.ts +8 -0
  616. package/msg/la.js +465 -0
  617. package/msg/la.mjs +446 -0
  618. package/msg/lb.d.ts +8 -0
  619. package/msg/lb.js +465 -0
  620. package/msg/lb.mjs +446 -0
  621. package/msg/lki.d.ts +8 -0
  622. package/msg/lki.js +465 -0
  623. package/msg/lki.mjs +446 -0
  624. package/msg/lo.d.ts +8 -0
  625. package/msg/lo.js +465 -0
  626. package/msg/lo.mjs +446 -0
  627. package/msg/lrc.d.ts +8 -0
  628. package/msg/lrc.js +465 -0
  629. package/msg/lrc.mjs +446 -0
  630. package/msg/lt.d.ts +8 -0
  631. package/msg/lt.js +465 -0
  632. package/msg/lt.mjs +446 -0
  633. package/msg/lv.d.ts +8 -0
  634. package/msg/lv.js +465 -0
  635. package/msg/lv.mjs +446 -0
  636. package/msg/mg.d.ts +8 -0
  637. package/msg/mg.js +465 -0
  638. package/msg/mg.mjs +446 -0
  639. package/msg/mk.d.ts +8 -0
  640. package/msg/mk.js +465 -0
  641. package/msg/mk.mjs +446 -0
  642. package/msg/ml.d.ts +8 -0
  643. package/msg/ml.js +465 -0
  644. package/msg/ml.mjs +446 -0
  645. package/msg/mnw.d.ts +8 -0
  646. package/msg/mnw.js +465 -0
  647. package/msg/mnw.mjs +446 -0
  648. package/msg/ms.d.ts +8 -0
  649. package/msg/ms.js +465 -0
  650. package/msg/ms.mjs +446 -0
  651. package/msg/msg.d.ts +440 -0
  652. package/msg/my.d.ts +8 -0
  653. package/msg/my.js +465 -0
  654. package/msg/my.mjs +446 -0
  655. package/msg/mzn.d.ts +8 -0
  656. package/msg/mzn.js +465 -0
  657. package/msg/mzn.mjs +446 -0
  658. package/msg/nb.d.ts +8 -0
  659. package/msg/nb.js +465 -0
  660. package/msg/nb.mjs +446 -0
  661. package/msg/ne.d.ts +8 -0
  662. package/msg/ne.js +465 -0
  663. package/msg/ne.mjs +446 -0
  664. package/msg/nl.d.ts +8 -0
  665. package/msg/nl.js +465 -0
  666. package/msg/nl.mjs +446 -0
  667. package/msg/oc.d.ts +8 -0
  668. package/msg/oc.js +465 -0
  669. package/msg/oc.mjs +446 -0
  670. package/msg/olo.d.ts +8 -0
  671. package/msg/olo.js +465 -0
  672. package/msg/olo.mjs +446 -0
  673. package/msg/pa.d.ts +8 -0
  674. package/msg/pa.js +465 -0
  675. package/msg/pa.mjs +446 -0
  676. package/msg/pl.d.ts +8 -0
  677. package/msg/pl.js +465 -0
  678. package/msg/pl.mjs +446 -0
  679. package/msg/pms.d.ts +8 -0
  680. package/msg/pms.js +465 -0
  681. package/msg/pms.mjs +446 -0
  682. package/msg/ps.d.ts +8 -0
  683. package/msg/ps.js +465 -0
  684. package/msg/ps.mjs +446 -0
  685. package/msg/pt-br.d.ts +8 -0
  686. package/msg/pt-br.js +465 -0
  687. package/msg/pt-br.mjs +446 -0
  688. package/msg/pt.d.ts +8 -0
  689. package/msg/pt.js +465 -0
  690. package/msg/pt.mjs +446 -0
  691. package/msg/ro.d.ts +8 -0
  692. package/msg/ro.js +465 -0
  693. package/msg/ro.mjs +446 -0
  694. package/msg/ru.d.ts +8 -0
  695. package/msg/ru.js +465 -0
  696. package/msg/ru.mjs +446 -0
  697. package/msg/sc.d.ts +8 -0
  698. package/msg/sc.js +465 -0
  699. package/msg/sc.mjs +446 -0
  700. package/msg/sco.d.ts +8 -0
  701. package/msg/sco.js +465 -0
  702. package/msg/sco.mjs +446 -0
  703. package/msg/sd.d.ts +8 -0
  704. package/msg/sd.js +465 -0
  705. package/msg/sd.mjs +446 -0
  706. package/msg/shn.d.ts +8 -0
  707. package/msg/shn.js +465 -0
  708. package/msg/shn.mjs +446 -0
  709. package/msg/si.d.ts +8 -0
  710. package/msg/si.js +465 -0
  711. package/msg/si.mjs +446 -0
  712. package/msg/sk.d.ts +8 -0
  713. package/msg/sk.js +465 -0
  714. package/msg/sk.mjs +446 -0
  715. package/msg/skr-arab.d.ts +8 -0
  716. package/msg/skr-arab.js +465 -0
  717. package/msg/skr-arab.mjs +446 -0
  718. package/msg/sl.d.ts +8 -0
  719. package/msg/sl.js +465 -0
  720. package/msg/sl.mjs +446 -0
  721. package/msg/smn.d.ts +8 -0
  722. package/msg/smn.js +465 -0
  723. package/msg/smn.mjs +446 -0
  724. package/msg/sq.d.ts +8 -0
  725. package/msg/sq.js +465 -0
  726. package/msg/sq.mjs +446 -0
  727. package/msg/sr-latn.d.ts +8 -0
  728. package/msg/sr-latn.js +465 -0
  729. package/msg/sr-latn.mjs +446 -0
  730. package/msg/sr.d.ts +8 -0
  731. package/msg/sr.js +465 -0
  732. package/msg/sr.mjs +446 -0
  733. package/msg/sv.d.ts +8 -0
  734. package/msg/sv.js +465 -0
  735. package/msg/sv.mjs +446 -0
  736. package/msg/sw.d.ts +8 -0
  737. package/msg/sw.js +465 -0
  738. package/msg/sw.mjs +446 -0
  739. package/msg/ta.d.ts +8 -0
  740. package/msg/ta.js +465 -0
  741. package/msg/ta.mjs +446 -0
  742. package/msg/tcy.d.ts +8 -0
  743. package/msg/tcy.js +465 -0
  744. package/msg/tcy.mjs +446 -0
  745. package/msg/tdd.d.ts +8 -0
  746. package/msg/tdd.js +465 -0
  747. package/msg/tdd.mjs +446 -0
  748. package/msg/te.d.ts +8 -0
  749. package/msg/te.js +465 -0
  750. package/msg/te.mjs +446 -0
  751. package/msg/th.d.ts +8 -0
  752. package/msg/th.js +465 -0
  753. package/msg/th.mjs +446 -0
  754. package/msg/ti.d.ts +8 -0
  755. package/msg/ti.js +465 -0
  756. package/msg/ti.mjs +446 -0
  757. package/msg/tl.d.ts +8 -0
  758. package/msg/tl.js +465 -0
  759. package/msg/tl.mjs +446 -0
  760. package/msg/tlh.d.ts +8 -0
  761. package/msg/tlh.js +465 -0
  762. package/msg/tlh.mjs +446 -0
  763. package/msg/tr.d.ts +8 -0
  764. package/msg/tr.js +465 -0
  765. package/msg/tr.mjs +446 -0
  766. package/msg/ug-arab.d.ts +8 -0
  767. package/msg/ug-arab.js +465 -0
  768. package/msg/ug-arab.mjs +446 -0
  769. package/msg/uk.d.ts +8 -0
  770. package/msg/uk.js +465 -0
  771. package/msg/uk.mjs +446 -0
  772. package/msg/ur.d.ts +8 -0
  773. package/msg/ur.js +465 -0
  774. package/msg/ur.mjs +446 -0
  775. package/msg/uz.d.ts +8 -0
  776. package/msg/uz.js +465 -0
  777. package/msg/uz.mjs +446 -0
  778. package/msg/vi.d.ts +8 -0
  779. package/msg/vi.js +465 -0
  780. package/msg/vi.mjs +446 -0
  781. package/msg/xmf.d.ts +8 -0
  782. package/msg/xmf.js +465 -0
  783. package/msg/xmf.mjs +446 -0
  784. package/msg/yo.d.ts +8 -0
  785. package/msg/yo.js +465 -0
  786. package/msg/yo.mjs +446 -0
  787. package/msg/zgh.d.ts +8 -0
  788. package/msg/zgh.js +465 -0
  789. package/msg/zgh.mjs +446 -0
  790. package/msg/zh-hans.d.ts +8 -0
  791. package/msg/zh-hans.js +465 -0
  792. package/msg/zh-hans.mjs +446 -0
  793. package/msg/zh-hant.d.ts +8 -0
  794. package/msg/zh-hant.js +465 -0
  795. package/msg/zh-hant.mjs +446 -0
  796. package/package.json +133 -0
  797. package/php.d.ts +7 -0
  798. package/php.js +4 -0
  799. package/php.mjs +6 -0
  800. package/php_compressed.js +283 -0
  801. package/php_compressed.js.map +1 -0
  802. package/python.d.ts +7 -0
  803. package/python.js +4 -0
  804. package/python.mjs +6 -0
  805. package/python_compressed.js +208 -0
  806. package/python_compressed.js.map +1 -0
@@ -0,0 +1,173 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Registry for context menu option items.
8
+ *
9
+ * @class
10
+ */
11
+ import type { BlockSvg } from './block_svg.js';
12
+ import { RenderedWorkspaceComment } from './comments/rendered_workspace_comment.js';
13
+ import type { IFocusableNode } from './interfaces/i_focusable_node.js';
14
+ import { Coordinate } from './utils/coordinate.js';
15
+ import type { WorkspaceSvg } from './workspace_svg.js';
16
+ /**
17
+ * Class for the registry of context menu items. This is intended to be a
18
+ * singleton. You should not create a new instance, and only access this class
19
+ * from ContextMenuRegistry.registry.
20
+ */
21
+ export declare class ContextMenuRegistry {
22
+ static registry: ContextMenuRegistry;
23
+ /** Registry of all registered RegistryItems, keyed by ID. */
24
+ private registeredItems;
25
+ /** Resets the existing singleton instance of ContextMenuRegistry. */
26
+ constructor();
27
+ /** Clear and recreate the registry. */
28
+ reset(): void;
29
+ /**
30
+ * Registers a RegistryItem.
31
+ *
32
+ * @param item Context menu item to register.
33
+ * @throws {Error} if an item with the given ID already exists.
34
+ */
35
+ register(item: RegistryItem): void;
36
+ /**
37
+ * Unregisters a RegistryItem with the given ID.
38
+ *
39
+ * @param id The ID of the RegistryItem to remove.
40
+ * @throws {Error} if an item with the given ID does not exist.
41
+ */
42
+ unregister(id: string): void;
43
+ /**
44
+ * @param id The ID of the RegistryItem to get.
45
+ * @returns RegistryItem or null if not found
46
+ */
47
+ getItem(id: string): RegistryItem | null;
48
+ /**
49
+ * Gets the valid context menu options for the given scope.
50
+ * Options are only included if the preconditionFn shows
51
+ * they should not be hidden.
52
+ *
53
+ * @param scope Current scope of context menu (i.e., the exact workspace or
54
+ * block being clicked on).
55
+ * @param menuOpenEvent Event that caused the menu to open.
56
+ * @returns the list of ContextMenuOptions
57
+ */
58
+ getContextMenuOptions(scope: Scope, menuOpenEvent: Event): ContextMenuOption[];
59
+ }
60
+ export declare namespace ContextMenuRegistry {
61
+ /**
62
+ * Where this menu item should be rendered. If the menu item should be
63
+ * rendered in multiple scopes, e.g. on both a block and a workspace, it
64
+ * should be registered for each scope.
65
+ */
66
+ export enum ScopeType {
67
+ BLOCK = "block",
68
+ WORKSPACE = "workspace",
69
+ COMMENT = "comment"
70
+ }
71
+ /**
72
+ * The actual workspace/block/focused object where the menu is being
73
+ * rendered. This is passed to callback and displayText functions
74
+ * that depend on this information.
75
+ */
76
+ export interface Scope {
77
+ block?: BlockSvg;
78
+ workspace?: WorkspaceSvg;
79
+ comment?: RenderedWorkspaceComment;
80
+ focusedNode?: IFocusableNode;
81
+ }
82
+ /**
83
+ * Fields common to all context menu registry items.
84
+ */
85
+ interface CoreRegistryItem {
86
+ scopeType?: ScopeType;
87
+ weight: number;
88
+ id: string;
89
+ preconditionFn?: (p1: Scope, menuOpenEvent: Event) => string;
90
+ }
91
+ /**
92
+ * A representation of a normal, clickable menu item in the registry.
93
+ */
94
+ interface ActionRegistryItem extends CoreRegistryItem {
95
+ /**
96
+ * @param scope Object that provides a reference to the thing that had its
97
+ * context menu opened.
98
+ * @param menuOpenEvent The original event that triggered the context menu to open.
99
+ * @param menuSelectEvent The event that triggered the option being selected.
100
+ * @param location The location in screen coordinates where the menu was opened.
101
+ */
102
+ callback: (scope: Scope, menuOpenEvent: Event, menuSelectEvent: Event, location: Coordinate) => void;
103
+ displayText: ((p1: Scope) => string | HTMLElement) | string | HTMLElement;
104
+ separator?: never;
105
+ preconditionFn: (p1: Scope, menuOpenEvent: Event) => string;
106
+ }
107
+ /**
108
+ * A representation of a menu separator item in the registry.
109
+ */
110
+ interface SeparatorRegistryItem extends CoreRegistryItem {
111
+ separator: true;
112
+ callback?: never;
113
+ displayText?: never;
114
+ }
115
+ /**
116
+ * A menu item as entered in the registry.
117
+ */
118
+ export type RegistryItem = ActionRegistryItem | SeparatorRegistryItem;
119
+ /**
120
+ * Fields common to all context menu items as used by contextmenu.ts.
121
+ */
122
+ export interface CoreContextMenuOption {
123
+ scope: Scope;
124
+ weight: number;
125
+ }
126
+ /**
127
+ * A representation of a normal, clickable menu item in contextmenu.ts.
128
+ */
129
+ export interface ActionContextMenuOption extends CoreContextMenuOption {
130
+ text: string | HTMLElement;
131
+ enabled: boolean;
132
+ /**
133
+ * @param scope Object that provides a reference to the thing that had its
134
+ * context menu opened.
135
+ * @param menuOpenEvent The original event that triggered the context menu to open.
136
+ * @param menuSelectEvent The event that triggered the option being selected.
137
+ * @param location The location in screen coordinates where the menu was opened.
138
+ */
139
+ callback: (scope: Scope, menuOpenEvent: Event, menuSelectEvent: Event, location: Coordinate) => void;
140
+ separator?: never;
141
+ }
142
+ /**
143
+ * A representation of a menu separator item in contextmenu.ts.
144
+ */
145
+ export interface SeparatorContextMenuOption extends CoreContextMenuOption {
146
+ separator: true;
147
+ text?: never;
148
+ enabled?: never;
149
+ callback?: never;
150
+ }
151
+ /**
152
+ * A menu item as presented to contextmenu.ts.
153
+ */
154
+ export type ContextMenuOption = ActionContextMenuOption | SeparatorContextMenuOption;
155
+ /**
156
+ * A subset of ContextMenuOption corresponding to what was publicly
157
+ * documented. ContextMenuOption should be preferred for new code.
158
+ */
159
+ export interface LegacyContextMenuOption {
160
+ text: string;
161
+ enabled: boolean;
162
+ callback: (p1: Scope) => void;
163
+ separator?: never;
164
+ }
165
+ export {};
166
+ }
167
+ export type ScopeType = ContextMenuRegistry.ScopeType;
168
+ export declare const ScopeType: typeof ContextMenuRegistry.ScopeType;
169
+ export type Scope = ContextMenuRegistry.Scope;
170
+ export type RegistryItem = ContextMenuRegistry.RegistryItem;
171
+ export type ContextMenuOption = ContextMenuRegistry.ContextMenuOption;
172
+ export type LegacyContextMenuOption = ContextMenuRegistry.LegacyContextMenuOption;
173
+ //# sourceMappingURL=contextmenu_registry.d.ts.map
package/core/css.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2013 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Add some CSS to the blob that will be injected later. Allows optional
8
+ * components such as fields and the toolbox to store separate CSS.
9
+ *
10
+ * @param cssContent Multiline CSS string or an array of single lines of CSS.
11
+ */
12
+ export declare function register(cssContent: string): void;
13
+ /**
14
+ * Inject the CSS into the DOM. This is preferable over using a regular CSS
15
+ * file since:
16
+ * a) It loads synchronously and doesn't force a redraw later.
17
+ * b) It speeds up loading by not blocking on a separate HTTP transfer.
18
+ * c) The CSS content may be made dynamic depending on init options.
19
+ *
20
+ * @param hasCss If false, don't inject CSS (providing CSS becomes the
21
+ * document's responsibility).
22
+ * @param pathToMedia Path from page to the Blockly media directory.
23
+ */
24
+ export declare function inject(hasCss: boolean, pathToMedia: string): void;
25
+ //# sourceMappingURL=css.d.ts.map
@@ -0,0 +1,48 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { DragTarget } from './drag_target.js';
7
+ import type { IDeleteArea } from './interfaces/i_delete_area.js';
8
+ import type { IDraggable } from './interfaces/i_draggable.js';
9
+ /**
10
+ * Abstract class for a component that can delete a block or bubble that is
11
+ * dropped on top of it.
12
+ */
13
+ export declare class DeleteArea extends DragTarget implements IDeleteArea {
14
+ /**
15
+ * Whether the last block or bubble dragged over this delete area would be
16
+ * deleted if dropped on this component.
17
+ * This property is not updated after the block or bubble is deleted.
18
+ */
19
+ protected wouldDelete_: boolean;
20
+ /**
21
+ * The unique id for this component that is used to register with the
22
+ * ComponentManager.
23
+ */
24
+ id: string;
25
+ /**
26
+ * Constructor for DeleteArea. Should not be called directly, only by a
27
+ * subclass.
28
+ */
29
+ constructor();
30
+ /**
31
+ * Returns whether the provided block or bubble would be deleted if dropped on
32
+ * this area.
33
+ * This method should check if the element is deletable and is always called
34
+ * before onDragEnter/onDragOver/onDragExit.
35
+ *
36
+ * @param element The block or bubble currently being dragged.
37
+ * @returns Whether the element provided would be deleted if dropped on this
38
+ * area.
39
+ */
40
+ wouldDelete(element: IDraggable): boolean;
41
+ /**
42
+ * Updates the internal wouldDelete_ state.
43
+ *
44
+ * @param wouldDelete The new value for the wouldDelete state.
45
+ */
46
+ protected updateWouldDelete_(wouldDelete: boolean): void;
47
+ }
48
+ //# sourceMappingURL=delete_area.d.ts.map
@@ -0,0 +1,82 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { ToastOptions } from './toast.js';
7
+ import type { WorkspaceSvg } from './workspace_svg.js';
8
+ /**
9
+ * Wrapper to window.alert() that app developers may override via setAlert to
10
+ * provide alternatives to the modal browser window.
11
+ *
12
+ * @param message The message to display to the user.
13
+ * @param opt_callback The callback when the alert is dismissed.
14
+ */
15
+ export declare function alert(message: string, opt_callback?: () => void): void;
16
+ /**
17
+ * Sets the function to be run when Blockly.dialog.alert() is called.
18
+ *
19
+ * @param alertFunction The function to be run, or undefined to restore the
20
+ * default implementation.
21
+ * @see Blockly.dialog.alert
22
+ */
23
+ export declare function setAlert(alertFunction?: (message: string, callback?: () => void) => void): void;
24
+ /**
25
+ * Wrapper to window.confirm() that app developers may override via setConfirm
26
+ * to provide alternatives to the modal browser window.
27
+ *
28
+ * @param message The message to display to the user.
29
+ * @param callback The callback for handling user response.
30
+ */
31
+ export declare function confirm(message: string, callback: (result: boolean) => void): void;
32
+ /**
33
+ * Sets the function to be run when Blockly.dialog.confirm() is called.
34
+ *
35
+ * @param confirmFunction The function to be run, or undefined to restore the
36
+ * default implementation.
37
+ * @see Blockly.dialog.confirm
38
+ */
39
+ export declare function setConfirm(confirmFunction?: (message: string, callback: (result: boolean) => void) => void): void;
40
+ /**
41
+ * Wrapper to window.prompt() that app developers may override via setPrompt to
42
+ * provide alternatives to the modal browser window. Built-in browser prompts
43
+ * are often used for better text input experience on mobile device. We strongly
44
+ * recommend testing mobile when overriding this.
45
+ *
46
+ * @param message The message to display to the user.
47
+ * @param defaultValue The value to initialize the prompt with.
48
+ * @param callback The callback for handling user response.
49
+ */
50
+ export declare function prompt(message: string, defaultValue: string, callback: (result: string | null) => void): void;
51
+ /**
52
+ * Sets the function to be run when Blockly.dialog.prompt() is called.
53
+ *
54
+ * **Important**: When overridding this, be aware that non-native prompt
55
+ * experiences may require managing ephemeral focus in FocusManager. This isn't
56
+ * needed for the native window prompt because it prevents focus from being
57
+ * changed while open.
58
+ *
59
+ * @param promptFunction The function to be run, or undefined to restore the
60
+ * default implementation.
61
+ * @see Blockly.dialog.prompt
62
+ */
63
+ export declare function setPrompt(promptFunction?: (message: string, defaultValue: string, callback: (result: string | null) => void) => void): void;
64
+ /**
65
+ * Displays a temporary notification atop the workspace. Blockly provides a
66
+ * default toast implementation, but developers may provide their own via
67
+ * setToast. For simple appearance customization, CSS should be sufficient.
68
+ *
69
+ * @param workspace The workspace to display the toast notification atop.
70
+ * @param options Configuration options for the notification, including its
71
+ * message and duration.
72
+ */
73
+ export declare function toast(workspace: WorkspaceSvg, options: ToastOptions): void;
74
+ /**
75
+ * Sets the function to be run when Blockly.dialog.toast() is called.
76
+ *
77
+ * @param toastFunction The function to be run, or undefined to restore the
78
+ * default implementation.
79
+ * @see Blockly.dialog.toast
80
+ */
81
+ export declare function setToast(toastFunction?: (workspace: WorkspaceSvg, options: ToastOptions) => void): void;
82
+ //# sourceMappingURL=dialog.d.ts.map
@@ -0,0 +1,75 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * The abstract class for a component with custom behaviour when a
8
+ * block or bubble is dragged over or dropped on top of it.
9
+ *
10
+ * @class
11
+ */
12
+ import type { IDragTarget } from './interfaces/i_drag_target.js';
13
+ import type { IDraggable } from './interfaces/i_draggable.js';
14
+ import type { Rect } from './utils/rect.js';
15
+ /**
16
+ * Abstract class for a component with custom behaviour when a block or bubble
17
+ * is dragged over or dropped on top of it.
18
+ */
19
+ export declare class DragTarget implements IDragTarget {
20
+ /**
21
+ * The unique id for this component that is used to register with the
22
+ * ComponentManager.
23
+ */
24
+ id: string;
25
+ /**
26
+ * Constructor for DragTarget. It exists to add the id property and should not
27
+ * be called directly, only by a subclass.
28
+ */
29
+ constructor();
30
+ /**
31
+ * Handles when a cursor with a block or bubble enters this drag target.
32
+ *
33
+ * @param _dragElement The block or bubble currently being dragged.
34
+ */
35
+ onDragEnter(_dragElement: IDraggable): void;
36
+ /**
37
+ * Handles when a cursor with a block or bubble is dragged over this drag
38
+ * target.
39
+ *
40
+ * @param _dragElement The block or bubble currently being dragged.
41
+ */
42
+ onDragOver(_dragElement: IDraggable): void;
43
+ /**
44
+ * Handles when a cursor with a block or bubble exits this drag target.
45
+ *
46
+ * @param _dragElement The block or bubble currently being dragged.
47
+ */
48
+ onDragExit(_dragElement: IDraggable): void;
49
+ /**
50
+ * Handles when a block or bubble is dropped on this component.
51
+ * Should not handle delete here.
52
+ *
53
+ * @param _dragElement The block or bubble currently being dragged.
54
+ */
55
+ onDrop(_dragElement: IDraggable): void;
56
+ /**
57
+ * Returns the bounding rectangle of the drag target area in pixel units
58
+ * relative to the Blockly injection div.
59
+ *
60
+ * @returns The component's bounding box. Null if drag target area should be
61
+ * ignored.
62
+ */
63
+ getClientRect(): Rect | null;
64
+ /**
65
+ * Returns whether the provided block or bubble should not be moved after
66
+ * being dropped on this component. If true, the element will return to where
67
+ * it was when the drag started.
68
+ *
69
+ * @param _dragElement The block or bubble currently being dragged.
70
+ * @returns Whether the block or bubble provided should be returned to drag
71
+ * start.
72
+ */
73
+ shouldPreventMove(_dragElement: IDraggable): boolean;
74
+ }
75
+ //# sourceMappingURL=drag_target.d.ts.map
@@ -0,0 +1,130 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2024 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { BlockSvg } from '../block_svg.js';
7
+ import { IDragStrategy } from '../interfaces/i_draggable.js';
8
+ import { Coordinate } from '../utils.js';
9
+ export declare class BlockDragStrategy implements IDragStrategy {
10
+ private block;
11
+ private workspace;
12
+ /** The parent block at the start of the drag. */
13
+ private startParentConn;
14
+ /**
15
+ * The child block at the start of the drag. Only gets set if
16
+ * `healStack` is true.
17
+ */
18
+ private startChildConn;
19
+ private startLoc;
20
+ private connectionCandidate;
21
+ private connectionPreviewer;
22
+ private dragging;
23
+ /**
24
+ * If this is a shadow block, the offset between this block and the parent
25
+ * block, to add to the drag location. In workspace units.
26
+ */
27
+ private dragOffset;
28
+ /** Used to persist an event group when snapping is done async. */
29
+ private originalEventGroup;
30
+ constructor(block: BlockSvg);
31
+ /** Returns true if the block is currently movable. False otherwise. */
32
+ isMovable(): boolean;
33
+ /**
34
+ * Handles any setup for starting the drag, including disconnecting the block
35
+ * from any parent blocks.
36
+ */
37
+ startDrag(e?: PointerEvent): void;
38
+ /**
39
+ * Returns an array of visible bubbles attached to the given block or its
40
+ * descendants.
41
+ *
42
+ * @param block The block to identify open bubbles on.
43
+ * @returns An array of all currently visible bubbles on the given block or
44
+ * its descendants.
45
+ */
46
+ private getVisibleBubbles;
47
+ /**
48
+ * Get whether the drag should act on a single block or a block stack.
49
+ *
50
+ * @param e The instigating pointer event, if any.
51
+ * @returns True if just the initial block should be dragged out, false
52
+ * if all following blocks should also be dragged.
53
+ */
54
+ protected shouldHealStack(e: PointerEvent | undefined): boolean;
55
+ /** Starts a drag on a shadow, recording the drag offset. */
56
+ private startDraggingShadow;
57
+ /**
58
+ * Whether or not we should disconnect the block when a drag is started.
59
+ *
60
+ * @param healStack Whether or not to heal the stack after disconnecting.
61
+ * @returns True to disconnect the block, false otherwise.
62
+ */
63
+ private shouldDisconnect;
64
+ /**
65
+ * Disconnects the block from any parents. If `healStack` is true and this is
66
+ * a stack block, we also disconnect from any next blocks and attempt to
67
+ * attach them to any parent.
68
+ *
69
+ * @param healStack Whether or not to heal the stack after disconnecting.
70
+ */
71
+ private disconnectBlock;
72
+ /** Fire a UI event at the start of a block drag. */
73
+ private fireDragStartEvent;
74
+ /** Fire a UI event at the end of a block drag. */
75
+ private fireDragEndEvent;
76
+ /** Fire a move event at the end of a block drag. */
77
+ private fireMoveEvent;
78
+ /** Moves the block and updates any connection previews. */
79
+ drag(newLoc: Coordinate): void;
80
+ /**
81
+ * @param draggingBlock The block being dragged.
82
+ * @param delta How far the pointer has moved from the position
83
+ * at the start of the drag, in workspace units.
84
+ */
85
+ private updateConnectionPreview;
86
+ /**
87
+ * Returns true if the given orphan block can connect at the end of the
88
+ * top block's stack or row, false otherwise.
89
+ */
90
+ private orphanCanConnectAtEnd;
91
+ /**
92
+ * Returns true if the current candidate is better than the new candidate.
93
+ *
94
+ * We slightly prefer the current candidate even if it is farther away.
95
+ */
96
+ private currCandidateIsBetter;
97
+ /**
98
+ * Returns the closest valid candidate connection, if one can be found.
99
+ *
100
+ * Valid neighbour connections are within the configured start radius, with a
101
+ * compatible type (input, output, etc) and connection check.
102
+ */
103
+ private getConnectionCandidate;
104
+ /**
105
+ * Get the radius to use when searching for a nearby valid connection.
106
+ */
107
+ protected getSearchRadius(): number;
108
+ /**
109
+ * Returns all of the connections we might connect to blocks on the workspace.
110
+ *
111
+ * Includes any connections on the dragging block, and any last next
112
+ * connection on the stack (if one exists).
113
+ */
114
+ private getLocalConnections;
115
+ /**
116
+ * Cleans up any state at the end of the drag. Applies any pending
117
+ * connections.
118
+ */
119
+ endDrag(e?: PointerEvent): void;
120
+ /** Disposes of any state at the end of the drag. */
121
+ private disposeStep;
122
+ /** Connects the given candidate connections. */
123
+ private applyConnections;
124
+ /**
125
+ * Moves the block back to where it was at the beginning of the drag,
126
+ * including reconnecting connections.
127
+ */
128
+ revertDrag(): void;
129
+ }
130
+ //# sourceMappingURL=block_drag_strategy.d.ts.map
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2024 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { IBubble, WorkspaceSvg } from '../blockly.js';
7
+ import { IDragStrategy } from '../interfaces/i_draggable.js';
8
+ import { Coordinate } from '../utils.js';
9
+ export declare class BubbleDragStrategy implements IDragStrategy {
10
+ private bubble;
11
+ private workspace;
12
+ private startLoc;
13
+ constructor(bubble: IBubble, workspace: WorkspaceSvg);
14
+ isMovable(): boolean;
15
+ startDrag(): void;
16
+ drag(newLoc: Coordinate): void;
17
+ endDrag(): void;
18
+ revertDrag(): void;
19
+ }
20
+ //# sourceMappingURL=bubble_drag_strategy.d.ts.map
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2024 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { RenderedWorkspaceComment } from '../comments.js';
7
+ import { IDragStrategy } from '../interfaces/i_draggable.js';
8
+ import { Coordinate } from '../utils.js';
9
+ export declare class CommentDragStrategy implements IDragStrategy {
10
+ private comment;
11
+ private startLoc;
12
+ private workspace;
13
+ constructor(comment: RenderedWorkspaceComment);
14
+ isMovable(): boolean;
15
+ startDrag(): void;
16
+ drag(newLoc: Coordinate): void;
17
+ endDrag(): void;
18
+ /** Fire a UI event at the start of a comment drag. */
19
+ private fireDragStartEvent;
20
+ /** Fire a UI event at the end of a comment drag. */
21
+ private fireDragEndEvent;
22
+ /** Fire a move event at the end of a comment drag. */
23
+ private fireMoveEvent;
24
+ revertDrag(): void;
25
+ }
26
+ //# sourceMappingURL=comment_drag_strategy.d.ts.map
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2024 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { IDeletable } from '../interfaces/i_deletable.js';
7
+ import { IDragTarget } from '../interfaces/i_drag_target.js';
8
+ import { IDraggable } from '../interfaces/i_draggable.js';
9
+ import { IDragger } from '../interfaces/i_dragger.js';
10
+ import { Coordinate } from '../utils/coordinate.js';
11
+ import { WorkspaceSvg } from '../workspace_svg.js';
12
+ export declare class Dragger implements IDragger {
13
+ protected draggable: IDraggable;
14
+ protected workspace: WorkspaceSvg;
15
+ protected startLoc: Coordinate;
16
+ protected dragTarget: IDragTarget | null;
17
+ constructor(draggable: IDraggable, workspace: WorkspaceSvg);
18
+ /** Handles any drag startup. */
19
+ onDragStart(e: PointerEvent): void;
20
+ /**
21
+ * Handles calculating where the element should actually be moved to.
22
+ *
23
+ * @param totalDelta The total amount in pixel coordinates the mouse has moved
24
+ * since the start of the drag.
25
+ */
26
+ onDrag(e: PointerEvent, totalDelta: Coordinate): void;
27
+ /** Updates the drag target under the pointer (if there is one). */
28
+ protected updateDragTarget(e: PointerEvent): void;
29
+ /**
30
+ * Calculates the correct workspace coordinate for the movable and tells
31
+ * the draggable to go to that location.
32
+ */
33
+ private moveDraggable;
34
+ /**
35
+ * Returns true if we would delete the draggable if it was dropped
36
+ * at the current location.
37
+ */
38
+ protected wouldDeleteDraggable(e: PointerEvent, rootDraggable: IDraggable & IDeletable): boolean;
39
+ /** Handles any drag cleanup. */
40
+ onDragEnd(e: PointerEvent): void;
41
+ private getRoot;
42
+ /**
43
+ * Returns true if we should return the draggable to its original location
44
+ * at the end of the drag.
45
+ */
46
+ protected shouldReturnToStart(e: PointerEvent, rootDraggable: IDraggable): boolean;
47
+ protected pixelsToWorkspaceUnits(pixelCoord: Coordinate): Coordinate;
48
+ }
49
+ //# sourceMappingURL=dragger.d.ts.map
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2024 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { BlockDragStrategy } from './dragging/block_drag_strategy.js';
7
+ import { BubbleDragStrategy } from './dragging/bubble_drag_strategy.js';
8
+ import { CommentDragStrategy } from './dragging/comment_drag_strategy.js';
9
+ import { Dragger } from './dragging/dragger.js';
10
+ export { BlockDragStrategy, BubbleDragStrategy, CommentDragStrategy, Dragger };
11
+ //# sourceMappingURL=dragging.d.ts.map