@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,449 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * The class representing an in-progress gesture, e.g. a drag,
8
+ * tap, or pinch to zoom.
9
+ *
10
+ * @class
11
+ */
12
+ import './events/events_click.js';
13
+ import type { BlockSvg } from './block_svg.js';
14
+ import { RenderedWorkspaceComment } from './comments.js';
15
+ import type { Field } from './field.js';
16
+ import type { IBubble } from './interfaces/i_bubble.js';
17
+ import { IDragger } from './interfaces/i_dragger.js';
18
+ import type { IFlyout } from './interfaces/i_flyout.js';
19
+ import type { IIcon } from './interfaces/i_icon.js';
20
+ import { Coordinate } from './utils/coordinate.js';
21
+ import { WorkspaceDragger } from './workspace_dragger.js';
22
+ import type { WorkspaceSvg } from './workspace_svg.js';
23
+ /**
24
+ * Class for one gesture.
25
+ */
26
+ export declare class Gesture {
27
+ private readonly creatorWorkspace;
28
+ /**
29
+ * The position of the pointer when the gesture started. Units are CSS
30
+ * pixels, with (0, 0) at the top left of the browser window (pointer event
31
+ * clientX/Y).
32
+ */
33
+ private mouseDownXY;
34
+ private currentDragDeltaXY;
35
+ /**
36
+ * The bubble that the gesture started on, or null if it did not start on a
37
+ * bubble.
38
+ */
39
+ private startBubble;
40
+ /**
41
+ * The field that the gesture started on, or null if it did not start on a
42
+ * field.
43
+ */
44
+ private startField;
45
+ /**
46
+ * The icon that the gesture started on, or null if it did not start on an
47
+ * icon.
48
+ */
49
+ private startIcon;
50
+ /**
51
+ * The block that the gesture started on, or null if it did not start on a
52
+ * block.
53
+ */
54
+ private startBlock;
55
+ /**
56
+ * The comment that the gesture started on, or null if it did not start on a
57
+ * comment.
58
+ */
59
+ private startComment;
60
+ /**
61
+ * The block that this gesture targets. If the gesture started on a
62
+ * shadow block, this is the first non-shadow parent of the block. If the
63
+ * gesture started in the flyout, this is the root block of the block group
64
+ * that was clicked or dragged.
65
+ */
66
+ private targetBlock;
67
+ /**
68
+ * The workspace that the gesture started on. There may be multiple
69
+ * workspaces on a page; this is more accurate than using
70
+ * Blockly.common.getMainWorkspace().
71
+ */
72
+ protected startWorkspace_: WorkspaceSvg | null;
73
+ /**
74
+ * Whether the pointer has at any point moved out of the drag radius.
75
+ * A gesture that exceeds the drag radius is a drag even if it ends exactly
76
+ * at its start point.
77
+ */
78
+ private hasExceededDragRadius;
79
+ /**
80
+ * Array holding info needed to unbind events.
81
+ * Used for disposing.
82
+ * Ex: [[node, name, func], [node, name, func]].
83
+ */
84
+ private boundEvents;
85
+ private dragger;
86
+ /**
87
+ * The object tracking a workspace or flyout workspace drag, or null if none
88
+ * is in progress.
89
+ */
90
+ private workspaceDragger;
91
+ /** Whether the gesture is dragging or not. */
92
+ private dragging;
93
+ /** The flyout a gesture started in, if any. */
94
+ private flyout;
95
+ /** Boolean for sanity-checking that some code is only called once. */
96
+ private calledUpdateIsDragging;
97
+ /** Boolean for sanity-checking that some code is only called once. */
98
+ private gestureHasStarted;
99
+ /** Boolean used internally to break a cycle in disposal. */
100
+ protected isEnding_: boolean;
101
+ /** The event that most recently updated this gesture. */
102
+ private mostRecentEvent;
103
+ /** Boolean for whether or not this gesture is a multi-touch gesture. */
104
+ private multiTouch;
105
+ /** A map of cached points used for tracking multi-touch gestures. */
106
+ private cachedPoints;
107
+ /**
108
+ * This is the ratio between the starting distance between the touch points
109
+ * and the most recent distance between the touch points.
110
+ * Scales between 0 and 1 mean the most recent zoom was a zoom out.
111
+ * Scales above 1.0 mean the most recent zoom was a zoom in.
112
+ */
113
+ private previousScale;
114
+ /** The starting distance between two touch points. */
115
+ private startDistance;
116
+ /** Boolean for whether or not the workspace supports pinch-zoom. */
117
+ private isPinchZoomEnabled;
118
+ /**
119
+ * The owner of the dropdownDiv when this gesture first starts.
120
+ * Needed because we'll close the dropdown before fields get to
121
+ * act on their events, and some fields care about who owns
122
+ * the dropdown.
123
+ */
124
+ currentDropdownOwner: Field | null;
125
+ /**
126
+ * @param e The event that kicked off this gesture.
127
+ * @param creatorWorkspace The workspace that created this gesture and has a
128
+ * reference to it.
129
+ */
130
+ constructor(e: PointerEvent, creatorWorkspace: WorkspaceSvg);
131
+ /**
132
+ * Sever all links from this object.
133
+ *
134
+ * @internal
135
+ */
136
+ dispose(): void;
137
+ /**
138
+ * Update internal state based on an event.
139
+ *
140
+ * @param e The most recent pointer event.
141
+ */
142
+ private updateFromEvent;
143
+ /**
144
+ * DO MATH to set currentDragDeltaXY_ based on the most recent pointer
145
+ * position.
146
+ *
147
+ * @param currentXY The most recent pointer position, in pixel units,
148
+ * with (0, 0) at the window's top left corner.
149
+ * @returns True if the drag just exceeded the drag radius for the first time.
150
+ */
151
+ private updateDragDelta;
152
+ /**
153
+ * Update this gesture to record whether a block is being dragged from the
154
+ * flyout.
155
+ * This function should be called on a pointermove event the first time
156
+ * the drag radius is exceeded. It should be called no more than once per
157
+ * gesture. If a block should be dragged from the flyout this function creates
158
+ * the new block on the main workspace and updates targetBlock_ and
159
+ * startWorkspace_.
160
+ *
161
+ * @returns True if a block is being dragged from the flyout.
162
+ */
163
+ private updateIsDraggingFromFlyout;
164
+ /**
165
+ * Check whether to start a workspace drag. If a workspace is being dragged,
166
+ * create the necessary WorkspaceDragger and start the drag.
167
+ *
168
+ * This function should be called on a pointermove event the first time
169
+ * the drag radius is exceeded. It should be called no more than once per
170
+ * gesture. If a workspace is being dragged this function creates the
171
+ * necessary WorkspaceDragger and starts the drag.
172
+ */
173
+ private updateIsDraggingWorkspace;
174
+ /**
175
+ * Update this gesture to record whether anything is being dragged.
176
+ * This function should be called on a pointermove event the first time
177
+ * the drag radius is exceeded. It should be called no more than once per
178
+ * gesture.
179
+ */
180
+ private updateIsDragging;
181
+ private createDragger;
182
+ /**
183
+ * Start a gesture: update the workspace to indicate that a gesture is in
184
+ * progress and bind pointermove and pointerup handlers.
185
+ *
186
+ * @param e A pointerdown event.
187
+ * @internal
188
+ */
189
+ doStart(e: PointerEvent): void;
190
+ /**
191
+ * Bind gesture events.
192
+ *
193
+ * @param e A pointerdown event.
194
+ * @internal
195
+ */
196
+ bindMouseEvents(e: PointerEvent): void;
197
+ /**
198
+ * Handle a pointerdown event.
199
+ *
200
+ * @param e A pointerdown event.
201
+ * @internal
202
+ */
203
+ handleStart(e: PointerEvent): void;
204
+ /**
205
+ * Handle a pointermove event.
206
+ *
207
+ * @param e A pointermove event.
208
+ * @internal
209
+ */
210
+ handleMove(e: PointerEvent): void;
211
+ /**
212
+ * Handle a pointerup event.
213
+ *
214
+ * @param e A pointerup event.
215
+ * @internal
216
+ */
217
+ handleUp(e: PointerEvent): void;
218
+ /**
219
+ * Handle a pointerdown event and keep track of current
220
+ * pointers.
221
+ *
222
+ * @param e A pointerdown event.
223
+ * @internal
224
+ */
225
+ handleTouchStart(e: PointerEvent): void;
226
+ /**
227
+ * Handle a pointermove event and zoom in/out if two pointers
228
+ * are on the screen.
229
+ *
230
+ * @param e A pointermove event.
231
+ * @internal
232
+ */
233
+ handleTouchMove(e: PointerEvent): void;
234
+ /**
235
+ * Handle pinch zoom gesture.
236
+ *
237
+ * @param e A pointermove event.
238
+ */
239
+ private handlePinch;
240
+ /**
241
+ * Handle a pointerup event and end the gesture.
242
+ *
243
+ * @param e A pointerup event.
244
+ * @internal
245
+ */
246
+ handleTouchEnd(e: PointerEvent): void;
247
+ /**
248
+ * Helper function returning the current touch point coordinate.
249
+ *
250
+ * @param e A pointer event.
251
+ * @returns The current touch point coordinate
252
+ * @internal
253
+ */
254
+ getTouchPoint(e: PointerEvent): Coordinate | null;
255
+ /**
256
+ * Whether this gesture is part of a multi-touch gesture.
257
+ *
258
+ * @returns Whether this gesture is part of a multi-touch gesture.
259
+ * @internal
260
+ */
261
+ isMultiTouch(): boolean;
262
+ /**
263
+ * Cancel an in-progress gesture. If a workspace or block drag is in
264
+ * progress, end the drag at the most recent location.
265
+ *
266
+ * @internal
267
+ */
268
+ cancel(): void;
269
+ /**
270
+ * Handle a real or faked right-click event by showing a context menu.
271
+ *
272
+ * @param e A pointerdown event.
273
+ * @internal
274
+ */
275
+ handleRightClick(e: PointerEvent): void;
276
+ /**
277
+ * Handle a pointerdown event on a workspace.
278
+ *
279
+ * @param e A pointerdown event.
280
+ * @param ws The workspace the event hit.
281
+ * @internal
282
+ */
283
+ handleWsStart(e: PointerEvent, ws: WorkspaceSvg): void;
284
+ /**
285
+ * Fires a workspace click event.
286
+ *
287
+ * @param ws The workspace that a user clicks on.
288
+ */
289
+ private fireWorkspaceClick;
290
+ /**
291
+ * Handle a pointerdown event on a flyout.
292
+ *
293
+ * @param e A pointerdown event.
294
+ * @param flyout The flyout the event hit.
295
+ * @internal
296
+ */
297
+ handleFlyoutStart(e: PointerEvent, flyout: IFlyout): void;
298
+ /**
299
+ * Handle a pointerdown event on a block.
300
+ *
301
+ * @param e A pointerdown event.
302
+ * @param block The block the event hit.
303
+ * @internal
304
+ */
305
+ handleBlockStart(e: PointerEvent, block: BlockSvg): void;
306
+ /**
307
+ * Handle a pointerdown event on a bubble.
308
+ *
309
+ * @param e A pointerdown event.
310
+ * @param bubble The bubble the event hit.
311
+ * @internal
312
+ */
313
+ handleBubbleStart(e: PointerEvent, bubble: IBubble): void;
314
+ /**
315
+ * Handle a pointerdown event on a workspace comment.
316
+ *
317
+ * @param e A pointerdown event.
318
+ * @param comment The comment the event hit.
319
+ * @internal
320
+ */
321
+ handleCommentStart(e: PointerEvent, comment: RenderedWorkspaceComment): void;
322
+ /** Execute a field click. */
323
+ private doFieldClick;
324
+ /** Execute an icon click. */
325
+ private doIconClick;
326
+ /** Execute a block click. */
327
+ private doBlockClick;
328
+ /**
329
+ * Execute a workspace click. When in accessibility mode shift clicking will
330
+ * move the cursor.
331
+ *
332
+ * @param _e A pointerup event.
333
+ */
334
+ private doWorkspaceClick;
335
+ /**
336
+ * Record the field that a gesture started on.
337
+ *
338
+ * @param field The field the gesture started on.
339
+ * @internal
340
+ */
341
+ setStartField<T>(field: Field<T>): void;
342
+ /**
343
+ * Record the icon that a gesture started on.
344
+ *
345
+ * @param icon The icon the gesture started on.
346
+ * @internal
347
+ */
348
+ setStartIcon(icon: IIcon): void;
349
+ /**
350
+ * Record the bubble that a gesture started on
351
+ *
352
+ * @param bubble The bubble the gesture started on.
353
+ * @internal
354
+ */
355
+ setStartBubble(bubble: IBubble): void;
356
+ /**
357
+ * Record the comment that a gesture started on
358
+ *
359
+ * @param comment The comment the gesture started on.
360
+ * @internal
361
+ */
362
+ setStartComment(comment: RenderedWorkspaceComment): void;
363
+ /**
364
+ * Record the block that a gesture started on, and set the target block
365
+ * appropriately.
366
+ *
367
+ * @param block The block the gesture started on.
368
+ * @internal
369
+ */
370
+ setStartBlock(block: BlockSvg): void;
371
+ /**
372
+ * Record the block that a gesture targets, meaning the block that will be
373
+ * dragged if this turns into a drag. If this block is a shadow, that will be
374
+ * its first non-shadow parent.
375
+ *
376
+ * @param block The block the gesture targets.
377
+ */
378
+ private setTargetBlock;
379
+ /**
380
+ * Record the workspace that a gesture started on.
381
+ *
382
+ * @param ws The workspace the gesture started on.
383
+ */
384
+ private setStartWorkspace;
385
+ /**
386
+ * Record the flyout that a gesture started on.
387
+ *
388
+ * @param flyout The flyout the gesture started on.
389
+ */
390
+ private setStartFlyout;
391
+ /**
392
+ * Whether this gesture is a click on a bubble. This should only be called
393
+ * when ending a gesture (pointerup).
394
+ *
395
+ * @returns Whether this gesture was a click on a bubble.
396
+ */
397
+ private isBubbleClick;
398
+ private isCommentClick;
399
+ /**
400
+ * Whether this gesture is a click on a block. This should only be called
401
+ * when ending a gesture (pointerup).
402
+ *
403
+ * @returns Whether this gesture was a click on a block.
404
+ */
405
+ private isBlockClick;
406
+ /**
407
+ * Whether this gesture is a click on a field that should be handled. This should only be called
408
+ * when ending a gesture (pointerup).
409
+ *
410
+ * @returns Whether this gesture was a click on a field.
411
+ */
412
+ private isFieldClick;
413
+ /** @returns Whether this gesture is a click on an icon that should be handled. */
414
+ private isIconClick;
415
+ /**
416
+ * Whether this gesture is a click on a workspace. This should only be called
417
+ * when ending a gesture (pointerup).
418
+ *
419
+ * @returns Whether this gesture was a click on a workspace.
420
+ */
421
+ private isWorkspaceClick;
422
+ /** Returns the current dragger if the gesture is a drag. */
423
+ getCurrentDragger(): WorkspaceDragger | IDragger | null;
424
+ /**
425
+ * Whether this gesture is a drag of either a workspace or block.
426
+ * This function is called externally to block actions that cannot be taken
427
+ * mid-drag (e.g. using the keyboard to delete the selected blocks).
428
+ *
429
+ * @returns True if this gesture is a drag of a workspace or block.
430
+ * @internal
431
+ */
432
+ isDragging(): boolean;
433
+ /**
434
+ * Whether this gesture has already been started. In theory every pointerdown
435
+ * has a corresponding pointerup, but in reality it is possible to lose a
436
+ * pointerup, leaving an in-process gesture hanging.
437
+ *
438
+ * @returns Whether this gesture was a click on a workspace.
439
+ * @internal
440
+ */
441
+ hasStarted(): boolean;
442
+ /**
443
+ * Is a drag or other gesture currently in progress on any workspace?
444
+ *
445
+ * @returns True if gesture is occurring.
446
+ */
447
+ static inProgress(): boolean;
448
+ }
449
+ //# sourceMappingURL=gesture.d.ts.map
package/core/grid.d.ts ADDED
@@ -0,0 +1,124 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Object for configuring and updating a workspace grid in
8
+ * Blockly.
9
+ *
10
+ * @class
11
+ */
12
+ import { GridOptions } from './options.js';
13
+ import { Coordinate } from './utils/coordinate.js';
14
+ /**
15
+ * Class for a workspace's grid.
16
+ */
17
+ export declare class Grid {
18
+ private pattern;
19
+ private spacing;
20
+ private length;
21
+ private scale;
22
+ private readonly line1;
23
+ private readonly line2;
24
+ private snapToGrid;
25
+ /**
26
+ * @param pattern The grid's SVG pattern, created during injection.
27
+ * @param options A dictionary of normalized options for the grid.
28
+ * See grid documentation:
29
+ * https://developers.google.com/blockly/guides/configure/web/grid
30
+ */
31
+ constructor(pattern: SVGElement, options: GridOptions);
32
+ /**
33
+ * Sets the spacing between the centers of the grid lines.
34
+ *
35
+ * This does not trigger snapping to the newly spaced grid. If you want to
36
+ * snap blocks to the grid programmatically that needs to be triggered
37
+ * on individual top-level blocks. The next time a block is dragged and
38
+ * dropped it will snap to the grid if snapping to the grid is enabled.
39
+ */
40
+ setSpacing(spacing: number): void;
41
+ /**
42
+ * Get the spacing of the grid points (in px).
43
+ *
44
+ * @returns The spacing of the grid points.
45
+ */
46
+ getSpacing(): number;
47
+ /** Sets the length of the grid lines. */
48
+ setLength(length: number): void;
49
+ /** Get the length of the grid lines (in px). */
50
+ getLength(): number;
51
+ /**
52
+ * Sets whether blocks should snap to the grid or not.
53
+ *
54
+ * Setting this to true does not trigger snapping. If you want to snap blocks
55
+ * to the grid programmatically that needs to be triggered on individual
56
+ * top-level blocks. The next time a block is dragged and dropped it will
57
+ * snap to the grid.
58
+ */
59
+ setSnapToGrid(snap: boolean): void;
60
+ /**
61
+ * Whether blocks should snap to the grid.
62
+ *
63
+ * @returns True if blocks should snap, false otherwise.
64
+ */
65
+ shouldSnap(): boolean;
66
+ /**
67
+ * Get the ID of the pattern element, which should be randomized to avoid
68
+ * conflicts with other Blockly instances on the page.
69
+ *
70
+ * @returns The pattern ID.
71
+ * @internal
72
+ */
73
+ getPatternId(): string;
74
+ /**
75
+ * Update the grid with a new scale.
76
+ *
77
+ * @param scale The new workspace scale.
78
+ * @internal
79
+ */
80
+ update(scale: number): void;
81
+ /**
82
+ * Set the attributes on one of the lines in the grid. Use this to update the
83
+ * length and stroke width of the grid lines.
84
+ *
85
+ * @param line Which line to update.
86
+ * @param width The new stroke size (in px).
87
+ * @param x1 The new x start position of the line (in px).
88
+ * @param x2 The new x end position of the line (in px).
89
+ * @param y1 The new y start position of the line (in px).
90
+ * @param y2 The new y end position of the line (in px).
91
+ */
92
+ private setLineAttributes;
93
+ /**
94
+ * Move the grid to a new x and y position, and make sure that change is
95
+ * visible.
96
+ *
97
+ * @param x The new x position of the grid (in px).
98
+ * @param y The new y position of the grid (in px).
99
+ * @internal
100
+ */
101
+ moveTo(x: number, y: number): void;
102
+ /**
103
+ * Given a coordinate, return the nearest coordinate aligned to the grid.
104
+ *
105
+ * @param xy A workspace coordinate.
106
+ * @returns Workspace coordinate of nearest grid point.
107
+ * If there's no change, return the same coordinate object.
108
+ */
109
+ alignXY(xy: Coordinate): Coordinate;
110
+ /**
111
+ * Create the DOM for the grid described by options.
112
+ *
113
+ * @param rnd A random ID to append to the pattern's ID.
114
+ * @param gridOptions The object containing grid configuration.
115
+ * @param defs The root SVG element for this workspace's defs.
116
+ * @param injectionDiv The div containing the parent workspace and all related
117
+ * workspaces and block containers. CSS variables representing SVG patterns
118
+ * will be scoped to this container.
119
+ * @returns The SVG element for the grid pattern.
120
+ * @internal
121
+ */
122
+ static createDom(rnd: string, gridOptions: GridOptions, defs: SVGElement, injectionDiv?: HTMLElement): SVGElement;
123
+ }
124
+ //# sourceMappingURL=grid.d.ts.map
@@ -0,0 +1,134 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Block } from '../block.js';
7
+ import { TextInputBubble } from '../bubbles/textinput_bubble.js';
8
+ import type { IHasBubble } from '../interfaces/i_has_bubble.js';
9
+ import type { ISerializable } from '../interfaces/i_serializable.js';
10
+ import { Coordinate } from '../utils.js';
11
+ import { Size } from '../utils/size.js';
12
+ import { Icon } from './icon.js';
13
+ import { IconType } from './icon_types.js';
14
+ /**
15
+ * An icon which allows the user to add comment text to a block.
16
+ */
17
+ export declare class CommentIcon extends Icon implements IHasBubble, ISerializable {
18
+ protected readonly sourceBlock: Block;
19
+ /** The type string used to identify this icon. */
20
+ static readonly TYPE: IconType<import("../interfaces/i_comment_icon.js").ICommentIcon>;
21
+ /**
22
+ * The weight this icon has relative to other icons. Icons with more positive
23
+ * weight values are rendered farther toward the end of the block.
24
+ */
25
+ static readonly WEIGHT = 3;
26
+ /** The bubble used to show comment text to the user. */
27
+ private textInputBubble;
28
+ /** The text of this comment. */
29
+ private text;
30
+ /** The size of this comment (which is applied to the editable bubble). */
31
+ private bubbleSize;
32
+ /** The location of the comment bubble in workspace coordinates. */
33
+ private bubbleLocation?;
34
+ /**
35
+ * The visibility of the bubble for this comment.
36
+ *
37
+ * This is used to track what the visible state /should/ be, not necessarily
38
+ * what it currently /is/. E.g. sometimes this will be true, but the block
39
+ * hasn't been rendered yet, so the bubble will not currently be visible.
40
+ */
41
+ private bubbleVisiblity;
42
+ constructor(sourceBlock: Block);
43
+ getType(): IconType<CommentIcon>;
44
+ initView(pointerdownListener: (e: PointerEvent) => void): void;
45
+ dispose(): void;
46
+ getWeight(): number;
47
+ getSize(): Size;
48
+ applyColour(): void;
49
+ /**
50
+ * Updates the state of the bubble (editable / noneditable) to reflect the
51
+ * state of the bubble if the bubble is currently shown.
52
+ */
53
+ updateEditable(): Promise<void>;
54
+ onLocationChange(blockOrigin: Coordinate): void;
55
+ /** Sets the text of this comment. Updates any bubbles if they are visible. */
56
+ setText(text: string): void;
57
+ /** Returns the text of this comment. */
58
+ getText(): string;
59
+ /**
60
+ * Sets the size of the editable bubble for this comment. Resizes the
61
+ * bubble if it is visible.
62
+ */
63
+ setBubbleSize(size: Size): void;
64
+ /** @returns the size of the editable bubble for this comment. */
65
+ getBubbleSize(): Size;
66
+ /**
67
+ * Sets the location of the comment bubble in the workspace.
68
+ */
69
+ setBubbleLocation(location: Coordinate): void;
70
+ /**
71
+ * @returns the location of the comment bubble in the workspace.
72
+ */
73
+ getBubbleLocation(): Coordinate | undefined;
74
+ /**
75
+ * @returns the state of the comment as a JSON serializable value if the
76
+ * comment has text. Otherwise returns null.
77
+ */
78
+ saveState(): CommentState | null;
79
+ /** Applies the given state to this comment. */
80
+ loadState(state: CommentState): void;
81
+ onClick(): void;
82
+ isClickableInFlyout(): boolean;
83
+ /**
84
+ * Updates the text of this comment in response to changes in the text of
85
+ * the input bubble.
86
+ */
87
+ onTextChange(): void;
88
+ /**
89
+ * Updates the size of this icon in response to changes in the size of the
90
+ * input bubble.
91
+ */
92
+ onSizeChange(): void;
93
+ onBubbleLocationChange(): void;
94
+ bubbleIsVisible(): boolean;
95
+ setBubbleVisible(visible: boolean): Promise<void>;
96
+ /** See IHasBubble.getBubble. */
97
+ getBubble(): TextInputBubble | null;
98
+ /**
99
+ * Shows the editable text bubble for this comment, and adds change listeners
100
+ * to update the state of this icon in response to changes in the bubble.
101
+ */
102
+ private showEditableBubble;
103
+ /** Shows the non editable text bubble for this comment. */
104
+ private showNonEditableBubble;
105
+ protected createBubble(): void;
106
+ /** Hides any open bubbles owned by this comment. */
107
+ private hideBubble;
108
+ /**
109
+ * @returns the location the bubble should be anchored to.
110
+ * I.E. the middle of this icon.
111
+ */
112
+ private getAnchorLocation;
113
+ /**
114
+ * @returns the rect the bubble should avoid overlapping.
115
+ * I.E. the block that owns this icon.
116
+ */
117
+ private getBubbleOwnerRect;
118
+ }
119
+ /** The save state format for a comment icon. */
120
+ export interface CommentState {
121
+ /** The text of the comment. */
122
+ text?: string;
123
+ /** True if the comment is open, false otherwise. */
124
+ pinned?: boolean;
125
+ /** The height of the comment bubble. */
126
+ height?: number;
127
+ /** The width of the comment bubble. */
128
+ width?: number;
129
+ /** The X coordinate of the comment bubble. */
130
+ x?: number;
131
+ /** The Y coordinate of the comment bubble. */
132
+ y?: number;
133
+ }
134
+ //# sourceMappingURL=comment_icon.d.ts.map