@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,89 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { UiMetrics } from './metrics_manager.js';
7
+ import { Rect } from './utils/rect.js';
8
+ import type { Size } from './utils/size.js';
9
+ import type { WorkspaceSvg } from './workspace_svg.js';
10
+ /**
11
+ * Enum for vertical positioning.
12
+ *
13
+ * @internal
14
+ */
15
+ export declare enum verticalPosition {
16
+ TOP = 0,
17
+ BOTTOM = 1
18
+ }
19
+ /**
20
+ * Enum for horizontal positioning.
21
+ *
22
+ * @internal
23
+ */
24
+ export declare enum horizontalPosition {
25
+ LEFT = 0,
26
+ RIGHT = 1
27
+ }
28
+ /**
29
+ * An object defining a horizontal and vertical positioning.
30
+ *
31
+ * @internal
32
+ */
33
+ export interface Position {
34
+ horizontal: horizontalPosition;
35
+ vertical: verticalPosition;
36
+ }
37
+ /**
38
+ * Enum for bump rules to use for dealing with collisions.
39
+ *
40
+ * @internal
41
+ */
42
+ export declare enum bumpDirection {
43
+ UP = 0,
44
+ DOWN = 1
45
+ }
46
+ /**
47
+ * Returns a rectangle representing reasonable position for where to place a UI
48
+ * element of the specified size given the restraints and locations of the
49
+ * scrollbars. This method does not take into account any already placed UI
50
+ * elements.
51
+ *
52
+ * @param position The starting horizontal and vertical position.
53
+ * @param size the size of the UI element to get a start position for.
54
+ * @param horizontalPadding The horizontal padding to use.
55
+ * @param verticalPadding The vertical padding to use.
56
+ * @param metrics The workspace UI metrics.
57
+ * @param workspace The workspace.
58
+ * @returns The suggested start position.
59
+ * @internal
60
+ */
61
+ export declare function getStartPositionRect(position: Position, size: Size, horizontalPadding: number, verticalPadding: number, metrics: UiMetrics, workspace: WorkspaceSvg): Rect;
62
+ /**
63
+ * Returns a corner position that is on the opposite side of the workspace from
64
+ * the toolbox.
65
+ * If in horizontal orientation, defaults to the bottom corner. If in vertical
66
+ * orientation, defaults to the right corner.
67
+ *
68
+ * @param workspace The workspace.
69
+ * @param metrics The workspace metrics.
70
+ * @returns The suggested corner position.
71
+ * @internal
72
+ */
73
+ export declare function getCornerOppositeToolbox(workspace: WorkspaceSvg, metrics: UiMetrics): Position;
74
+ /**
75
+ * Returns a position Rect based on a starting position that is bumped
76
+ * so that it doesn't intersect with any of the provided savedPositions. This
77
+ * method does not check that the bumped position is still within bounds.
78
+ *
79
+ * @param startRect The starting position to use.
80
+ * @param margin The margin to use between elements when bumping.
81
+ * @param bumpDir The direction to bump if there is a collision with an existing
82
+ * UI element.
83
+ * @param savedPositions List of rectangles that represent the positions of UI
84
+ * elements already placed.
85
+ * @returns The suggested position rectangle.
86
+ * @internal
87
+ */
88
+ export declare function bumpPositionRect(startRect: Rect, margin: number, bumpDir: bumpDirection, savedPositions: Rect[]): Rect;
89
+ //# sourceMappingURL=positionable_helpers.d.ts.map
@@ -0,0 +1,108 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2012 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import './events/events_block_change.js';
7
+ import type { Block } from './block.js';
8
+ import type { Abstract } from './events/events_abstract.js';
9
+ import { Field } from './field.js';
10
+ import { ProcedureTuple } from './interfaces/i_legacy_procedure_blocks.js';
11
+ import { IParameterModel } from './interfaces/i_parameter_model.js';
12
+ import { IProcedureBlock, isProcedureBlock } from './interfaces/i_procedure_block.js';
13
+ import { IProcedureMap } from './interfaces/i_procedure_map.js';
14
+ import { IProcedureModel } from './interfaces/i_procedure_model.js';
15
+ import { ObservableProcedureMap } from './observable_procedure_map.js';
16
+ import type { FlyoutItemInfo } from './utils/toolbox.js';
17
+ import type { Workspace } from './workspace.js';
18
+ import type { WorkspaceSvg } from './workspace_svg.js';
19
+ /**
20
+ * String for use in the "custom" attribute of a category in toolbox XML.
21
+ * This string indicates that the category should be dynamically populated with
22
+ * procedure blocks.
23
+ * See also Blockly.Variables.CATEGORY_NAME and
24
+ * Blockly.VariablesDynamic.CATEGORY_NAME.
25
+ */
26
+ export declare const CATEGORY_NAME = "PROCEDURE";
27
+ /**
28
+ * The default argument for a procedures_mutatorarg block.
29
+ */
30
+ export declare const DEFAULT_ARG = "x";
31
+ /**
32
+ * Find all user-created procedure definitions in a workspace.
33
+ *
34
+ * @param root Root workspace.
35
+ * @returns Pair of arrays, the first contains procedures without return
36
+ * variables, the second with. Each procedure is defined by a three-element
37
+ * list of name, parameter list, and return value boolean.
38
+ */
39
+ export declare function allProcedures(root: Workspace): [ProcedureTuple[], ProcedureTuple[]];
40
+ /**
41
+ * Ensure two identically-named procedures don't exist.
42
+ * Take the proposed procedure name, and return a legal name i.e. one that
43
+ * is not empty and doesn't collide with other procedures.
44
+ *
45
+ * @param name Proposed procedure name.
46
+ * @param block Block to disambiguate.
47
+ * @returns Non-colliding name.
48
+ */
49
+ export declare function findLegalName(name: string, block: Block): string;
50
+ /**
51
+ * Return if the given name is already a procedure name.
52
+ *
53
+ * @param name The questionable name.
54
+ * @param workspace The workspace to scan for collisions.
55
+ * @param opt_exclude Optional block to exclude from comparisons (one doesn't
56
+ * want to collide with oneself).
57
+ * @returns True if the name is used, otherwise return false.
58
+ */
59
+ export declare function isNameUsed(name: string, workspace: Workspace, opt_exclude?: Block): boolean;
60
+ /**
61
+ * Rename a procedure. Called by the editable field.
62
+ *
63
+ * @param name The proposed new name.
64
+ * @returns The accepted name.
65
+ */
66
+ export declare function rename(this: Field, name: string): string;
67
+ /**
68
+ * Internal wrapper that returns the contents of the procedure category.
69
+ *
70
+ * @internal
71
+ * @param workspace The workspace to populate procedure blocks for.
72
+ */
73
+ export declare function internalFlyoutCategory(workspace: WorkspaceSvg): FlyoutItemInfo[];
74
+ export declare function flyoutCategory(workspace: WorkspaceSvg, useXml: true): Element[];
75
+ export declare function flyoutCategory(workspace: WorkspaceSvg, useXml: false): FlyoutItemInfo[];
76
+ /**
77
+ * Listens for when a procedure mutator is opened. Then it triggers a flyout
78
+ * update and adds a mutator change listener to the mutator workspace.
79
+ *
80
+ * @param e The event that triggered this listener.
81
+ * @internal
82
+ */
83
+ export declare function mutatorOpenListener(e: Abstract): void;
84
+ /**
85
+ * Find all the callers of a named procedure.
86
+ *
87
+ * @param name Name of procedure.
88
+ * @param workspace The workspace to find callers in.
89
+ * @returns Array of caller blocks.
90
+ */
91
+ export declare function getCallers(name: string, workspace: Workspace): Block[];
92
+ /**
93
+ * When a procedure definition changes its parameters, find and edit all its
94
+ * callers.
95
+ *
96
+ * @param defBlock Procedure definition block.
97
+ */
98
+ export declare function mutateCallers(defBlock: Block): void;
99
+ /**
100
+ * Find the definition block for the named procedure.
101
+ *
102
+ * @param name Name of procedure.
103
+ * @param workspace The workspace to search.
104
+ * @returns The procedure definition block, or null not found.
105
+ */
106
+ export declare function getDefinition(name: string, workspace: Workspace): Block | null;
107
+ export { IParameterModel, IProcedureBlock, IProcedureMap, IProcedureModel, isProcedureBlock, ObservableProcedureMap, ProcedureTuple, };
108
+ //# sourceMappingURL=procedures.d.ts.map
@@ -0,0 +1,158 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Abstract } from './events/events_abstract.js';
7
+ import type { Field } from './field.js';
8
+ import type { Input } from './inputs/input.js';
9
+ import type { IConnectionChecker } from './interfaces/i_connection_checker.js';
10
+ import type { IConnectionPreviewer } from './interfaces/i_connection_previewer.js';
11
+ import type { ICopyable } from './interfaces/i_copyable.js';
12
+ import type { IDragger } from './interfaces/i_dragger.js';
13
+ import type { IFlyout } from './interfaces/i_flyout.js';
14
+ import type { IFlyoutInflater } from './interfaces/i_flyout_inflater.js';
15
+ import type { IIcon } from './interfaces/i_icon.js';
16
+ import type { IMetricsManager } from './interfaces/i_metrics_manager.js';
17
+ import type { IPaster } from './interfaces/i_paster.js';
18
+ import type { ISerializer } from './interfaces/i_serializer.js';
19
+ import type { IToolbox } from './interfaces/i_toolbox.js';
20
+ import type { IVariableMap } from './interfaces/i_variable_map.js';
21
+ import type { IVariableModel, IVariableModelStatic, IVariableState } from './interfaces/i_variable_model.js';
22
+ import type { LineCursor } from './keyboard_nav/line_cursor.js';
23
+ import type { Options } from './options.js';
24
+ import type { Renderer } from './renderers/common/renderer.js';
25
+ import type { Theme } from './theme.js';
26
+ import type { ToolboxItem } from './toolbox/toolbox_item.js';
27
+ export declare const TEST_ONLY: {
28
+ typeMap: {
29
+ [key: string]: {
30
+ [key: string]: any;
31
+ };
32
+ };
33
+ };
34
+ /**
35
+ * The string used to register the default class for a type of plugin.
36
+ */
37
+ export declare const DEFAULT = "default";
38
+ /**
39
+ * A name with the type of the element stored in the generic.
40
+ */
41
+ export declare class Type<_T> {
42
+ private readonly name;
43
+ /** @param name The name of the registry type. */
44
+ constructor(name: string);
45
+ /**
46
+ * Returns the name of the type.
47
+ *
48
+ * @returns The name.
49
+ */
50
+ toString(): string;
51
+ static CONNECTION_CHECKER: Type<IConnectionChecker>;
52
+ static CONNECTION_PREVIEWER: Type<IConnectionPreviewer>;
53
+ static CURSOR: Type<LineCursor>;
54
+ static EVENT: Type<Abstract>;
55
+ static FIELD: Type<Field<any>>;
56
+ static INPUT: Type<Input>;
57
+ static RENDERER: Type<Renderer>;
58
+ static TOOLBOX: Type<IToolbox>;
59
+ static THEME: Type<Theme>;
60
+ static TOOLBOX_ITEM: Type<ToolboxItem>;
61
+ static FLYOUTS_VERTICAL_TOOLBOX: Type<IFlyout>;
62
+ static FLYOUTS_HORIZONTAL_TOOLBOX: Type<IFlyout>;
63
+ static FLYOUT_INFLATER: Type<IFlyoutInflater>;
64
+ static METRICS_MANAGER: Type<IMetricsManager>;
65
+ /**
66
+ * Type for an IDragger. Formerly behavior was mostly covered by
67
+ * BlockDraggeers, which is why the name is inaccurate.
68
+ */
69
+ static BLOCK_DRAGGER: Type<IDragger>;
70
+ /** @internal */
71
+ static SERIALIZER: Type<ISerializer>;
72
+ /** @internal */
73
+ static ICON: Type<IIcon>;
74
+ /** @internal */
75
+ static PASTER: Type<IPaster<ICopyable.ICopyData, ICopyable<ICopyable.ICopyData>>>;
76
+ static VARIABLE_MODEL: Type<IVariableModelStatic<IVariableState> & IVariableModel<IVariableState>>;
77
+ static VARIABLE_MAP: Type<IVariableMap<IVariableModel<IVariableState>>>;
78
+ }
79
+ /**
80
+ * Registers a class based on a type and name.
81
+ *
82
+ * @param type The type of the plugin.
83
+ * (e.g. Field, Renderer)
84
+ * @param name The plugin's name. (Ex. field_angle, geras)
85
+ * @param registryItem The class or object to register.
86
+ * @param opt_allowOverrides True to prevent an error when overriding an already
87
+ * registered item.
88
+ * @throws {Error} if the type or name is empty, a name with the given type has
89
+ * already been registered, or if the given class or object is not valid for
90
+ * its type.
91
+ */
92
+ export declare function register<T>(type: string | Type<T>, name: string, registryItem: (new (...p1: any[]) => T) | null | any, opt_allowOverrides?: boolean): void;
93
+ /**
94
+ * Unregisters the registry item with the given type and name.
95
+ *
96
+ * @param type The type of the plugin.
97
+ * (e.g. Field, Renderer)
98
+ * @param name The plugin's name. (Ex. field_angle, geras)
99
+ */
100
+ export declare function unregister<T>(type: string | Type<T>, name: string): void;
101
+ /**
102
+ * Returns whether or not the registry contains an item with the given type and
103
+ * name.
104
+ *
105
+ * @param type The type of the plugin.
106
+ * (e.g. Field, Renderer)
107
+ * @param name The plugin's name. (Ex. field_angle, geras)
108
+ * @returns True if the registry has an item with the given type and name, false
109
+ * otherwise.
110
+ */
111
+ export declare function hasItem<T>(type: string | Type<T>, name: string): boolean;
112
+ /**
113
+ * Gets the class for the given name and type.
114
+ *
115
+ * @param type The type of the plugin.
116
+ * (e.g. Field, Renderer)
117
+ * @param name The plugin's name. (Ex. field_angle, geras)
118
+ * @param opt_throwIfMissing Whether or not to throw an error if we are unable
119
+ * to find the plugin.
120
+ * @returns The class with the given name and type or null if none exists.
121
+ */
122
+ export declare function getClass<T>(type: string | Type<T>, name: string, opt_throwIfMissing?: boolean): (new (...p1: any[]) => T) | null;
123
+ /**
124
+ * Gets the object for the given name and type.
125
+ *
126
+ * @param type The type of the plugin.
127
+ * (e.g. Category)
128
+ * @param name The plugin's name. (Ex. logic_category)
129
+ * @param opt_throwIfMissing Whether or not to throw an error if we are unable
130
+ * to find the object.
131
+ * @returns The object with the given name and type or null if none exists.
132
+ */
133
+ export declare function getObject<T>(type: string | Type<T>, name: string, opt_throwIfMissing?: boolean): T | null;
134
+ /**
135
+ * Returns a map of items registered with the given type.
136
+ *
137
+ * @param type The type of the plugin. (e.g. Category)
138
+ * @param opt_cased Whether or not to return a map with cased keys (rather than
139
+ * caseless keys). False by default.
140
+ * @param opt_throwIfMissing Whether or not to throw an error if we are unable
141
+ * to find the object. False by default.
142
+ * @returns A map of objects with the given type, or null if none exists.
143
+ */
144
+ export declare function getAllItems<T>(type: string | Type<T>, opt_cased?: boolean, opt_throwIfMissing?: boolean): {
145
+ [key: string]: T | null | (new (...p1: any[]) => T);
146
+ } | null;
147
+ /**
148
+ * Gets the class from Blockly options for the given type.
149
+ * This is used for plugins that override a built in feature. (e.g. Toolbox)
150
+ *
151
+ * @param type The type of the plugin.
152
+ * @param options The option object to check for the given plugin.
153
+ * @param opt_throwIfMissing Whether or not to throw an error if we are unable
154
+ * to find the plugin.
155
+ * @returns The class for the plugin.
156
+ */
157
+ export declare function getClassFromOptions<T>(type: Type<T>, options: Options, opt_throwIfMissing?: boolean): (new (...p1: any[]) => T) | null;
158
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { BlockSvg } from './block_svg.js';
7
+ import type { WorkspaceSvg } from './workspace_svg.js';
8
+ /**
9
+ * Registers that the given block and all of its parents need to be rerendered,
10
+ * and registers a callback to do so after a delay, to allowf or batching.
11
+ *
12
+ * @param block The block to rerender.
13
+ * @returns A promise that resolves after the currently queued renders have been
14
+ * completed. Used for triggering other behavior that relies on updated
15
+ * size/position location for the block.
16
+ * @internal
17
+ */
18
+ export declare function queueRender(block: BlockSvg): Promise<void>;
19
+ /**
20
+ * @returns A promise that resolves after the currently queued renders have
21
+ * been completed.
22
+ */
23
+ export declare function finishQueuedRenders(): Promise<void>;
24
+ /**
25
+ * Triggers an immediate render of all queued renders. Should only be used in
26
+ * cases where queueing renders breaks functionality + backwards compatibility
27
+ * (such as rendering icons).
28
+ *
29
+ * @param workspace If provided, only rerender blocks in this workspace.
30
+ *
31
+ * @internal
32
+ */
33
+ export declare function triggerQueuedRenders(workspace?: WorkspaceSvg): void;
34
+ //# sourceMappingURL=render_management.d.ts.map
@@ -0,0 +1,262 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2016 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Components for creating connections between blocks.
8
+ *
9
+ * @class
10
+ */
11
+ import type { BlockSvg } from './block_svg.js';
12
+ import { Connection } from './connection.js';
13
+ import { IContextMenu } from './interfaces/i_contextmenu.js';
14
+ import type { IFocusableNode } from './interfaces/i_focusable_node.js';
15
+ import type { IFocusableTree } from './interfaces/i_focusable_tree.js';
16
+ import { Coordinate } from './utils/coordinate.js';
17
+ /**
18
+ * Class for a connection between blocks that may be rendered on screen.
19
+ */
20
+ export declare class RenderedConnection extends Connection implements IContextMenu, IFocusableNode {
21
+ sourceBlock_: BlockSvg;
22
+ private readonly db;
23
+ private readonly dbOpposite;
24
+ private readonly offsetInBlock;
25
+ private trackedState;
26
+ private highlighted;
27
+ /** Connection this connection connects to. Null if not connected. */
28
+ targetConnection: RenderedConnection | null;
29
+ /**
30
+ * @param source The block establishing this connection.
31
+ * @param type The type of the connection.
32
+ */
33
+ constructor(source: BlockSvg, type: number);
34
+ /**
35
+ * Dispose of this connection. Remove it from the database (if it is
36
+ * tracked) and call the super-function to deal with connected blocks.
37
+ *
38
+ * @internal
39
+ */
40
+ dispose(): void;
41
+ /**
42
+ * Get the source block for this connection.
43
+ *
44
+ * @returns The source block.
45
+ */
46
+ getSourceBlock(): BlockSvg;
47
+ /**
48
+ * Returns the block that this connection connects to.
49
+ *
50
+ * @returns The connected block or null if none is connected.
51
+ */
52
+ targetBlock(): BlockSvg | null;
53
+ /**
54
+ * Returns the distance between this connection and another connection in
55
+ * workspace units.
56
+ *
57
+ * @param otherConnection The other connection to measure the distance to.
58
+ * @returns The distance between connections, in workspace units.
59
+ */
60
+ distanceFrom(otherConnection: Connection): number;
61
+ /**
62
+ * Move the block(s) belonging to the connection to a point where they don't
63
+ * visually interfere with the specified connection.
64
+ *
65
+ * @param superiorConnection The connection to move away from. The provided
66
+ * connection should be the superior connection and should not be
67
+ * connected to this connection.
68
+ * @param initiatedByThis Whether or not the block group that was manipulated
69
+ * recently causing bump checks is associated with the inferior
70
+ * connection. Defaults to false.
71
+ * @internal
72
+ */
73
+ bumpAwayFrom(superiorConnection: RenderedConnection, initiatedByThis?: boolean): void;
74
+ /**
75
+ * Change the connection's coordinates.
76
+ *
77
+ * @param x New absolute x coordinate, in workspace coordinates.
78
+ * @param y New absolute y coordinate, in workspace coordinates.
79
+ * @returns True if the position of the connection in the connection db
80
+ * was updated.
81
+ */
82
+ moveTo(x: number, y: number): boolean;
83
+ /**
84
+ * Change the connection's coordinates.
85
+ *
86
+ * @param dx Change to x coordinate, in workspace units.
87
+ * @param dy Change to y coordinate, in workspace units.
88
+ * @returns True if the position of the connection in the connection db
89
+ * was updated.
90
+ */
91
+ moveBy(dx: number, dy: number): boolean;
92
+ /**
93
+ * Move this connection to the location given by its offset within the block
94
+ * and the location of the block's top left corner.
95
+ *
96
+ * @param blockTL The location of the top left corner of the block, in
97
+ * workspace coordinates.
98
+ * @returns True if the position of the connection in the connection db
99
+ * was updated.
100
+ */
101
+ moveToOffset(blockTL: Coordinate): boolean;
102
+ /**
103
+ * Set the offset of this connection relative to the top left of its block.
104
+ *
105
+ * @param x The new relative x, in workspace units.
106
+ * @param y The new relative y, in workspace units.
107
+ */
108
+ setOffsetInBlock(x: number, y: number): void;
109
+ /**
110
+ * Get the offset of this connection relative to the top left of its block.
111
+ *
112
+ * @returns The offset of the connection.
113
+ */
114
+ getOffsetInBlock(): Coordinate;
115
+ /**
116
+ * Moves the blocks on either side of this connection right next to
117
+ * each other, based on their local offsets, not global positions.
118
+ *
119
+ * @internal
120
+ */
121
+ tightenEfficiently(): void;
122
+ /**
123
+ * Find the closest compatible connection to this connection.
124
+ * All parameters are in workspace units.
125
+ *
126
+ * @param maxLimit The maximum radius to another connection.
127
+ * @param dxy Offset between this connection's location in the database and
128
+ * the current location (as a result of dragging).
129
+ * @returns Contains two properties: 'connection' which is either another
130
+ * connection or null, and 'radius' which is the distance.
131
+ */
132
+ closest(maxLimit: number, dxy: Coordinate): {
133
+ connection: RenderedConnection | null;
134
+ radius: number;
135
+ };
136
+ /** Add highlighting around this connection. */
137
+ highlight(): void;
138
+ /** Remove the highlighting around this connection. */
139
+ unhighlight(): void;
140
+ /** Returns true if this connection is highlighted, false otherwise. */
141
+ isHighlighted(): boolean;
142
+ /**
143
+ * Set whether this connections is tracked in the database or not.
144
+ *
145
+ * @param doTracking If true, start tracking. If false, stop tracking.
146
+ * @internal
147
+ */
148
+ setTracking(doTracking: boolean): void;
149
+ /**
150
+ * Stop tracking this connection, as well as all down-stream connections on
151
+ * any block attached to this connection. This happens when a block is
152
+ * collapsed.
153
+ *
154
+ * Also closes down-stream icons/bubbles.
155
+ *
156
+ * @internal
157
+ */
158
+ stopTrackingAll(): void;
159
+ /**
160
+ * Start tracking this connection, as well as all down-stream connections on
161
+ * any block attached to this connection. This happens when a block is
162
+ * expanded.
163
+ *
164
+ * @returns List of blocks to render.
165
+ */
166
+ startTrackingAll(): BlockSvg[];
167
+ /**
168
+ * Behaviour after a connection attempt fails.
169
+ * Bumps this connection away from the other connection. Called when an
170
+ * attempted connection fails.
171
+ *
172
+ * @param superiorConnection Connection that this connection failed to connect
173
+ * to. The provided connection should be the superior connection.
174
+ * @internal
175
+ */
176
+ onFailedConnect(superiorConnection: Connection): void;
177
+ /**
178
+ * Disconnect two blocks that are connected by this connection.
179
+ *
180
+ * @param setParent Whether to set the parent of the disconnected block or
181
+ * not, defaults to true.
182
+ * If you do not set the parent, ensure that a subsequent action does,
183
+ * otherwise the view and model will be out of sync.
184
+ */
185
+ disconnectInternal(setParent?: boolean): void;
186
+ /**
187
+ * Respawn the shadow block if there was one connected to the this connection.
188
+ * Render/rerender blocks as needed.
189
+ */
190
+ protected respawnShadow_(): void;
191
+ /**
192
+ * Find all nearby compatible connections to this connection.
193
+ * Type checking does not apply, since this function is used for bumping.
194
+ *
195
+ * @param maxLimit The maximum radius to another connection, in workspace
196
+ * units.
197
+ * @returns List of connections.
198
+ * @internal
199
+ */
200
+ neighbours(maxLimit: number): RenderedConnection[];
201
+ /**
202
+ * Connect two connections together. This is the connection on the superior
203
+ * block. Rerender blocks as needed.
204
+ *
205
+ * @param childConnection Connection on inferior block.
206
+ */
207
+ protected connect_(childConnection: Connection): void;
208
+ /**
209
+ * Function to be called when this connection's compatible types have changed.
210
+ */
211
+ protected onCheckChanged_(): void;
212
+ /**
213
+ * Change a connection's compatibility.
214
+ * Rerender blocks as needed.
215
+ *
216
+ * @param check Compatible value type or list of value types. Null if all
217
+ * types are compatible.
218
+ * @returns The connection being modified (to allow chaining).
219
+ */
220
+ setCheck(check: string | string[] | null): RenderedConnection;
221
+ /**
222
+ * Handles showing the context menu when it is opened on a connection.
223
+ * Note that typically the context menu can't be opened with the mouse
224
+ * on a connection, because you can't select a connection. But keyboard
225
+ * users may open the context menu with a keyboard shortcut.
226
+ *
227
+ * @param e Event that triggered the opening of the context menu.
228
+ */
229
+ showContextMenu(e: Event): void;
230
+ /** See IFocusableNode.getFocusableElement. */
231
+ getFocusableElement(): HTMLElement | SVGElement;
232
+ /** See IFocusableNode.getFocusableTree. */
233
+ getFocusableTree(): IFocusableTree;
234
+ /** See IFocusableNode.onNodeFocus. */
235
+ onNodeFocus(): void;
236
+ /** See IFocusableNode.onNodeBlur. */
237
+ onNodeBlur(): void;
238
+ /** See IFocusableNode.canBeFocused. */
239
+ canBeFocused(): boolean;
240
+ private findHighlightSvg;
241
+ }
242
+ export declare namespace RenderedConnection {
243
+ /**
244
+ * Enum for different kinds of tracked states.
245
+ *
246
+ * WILL_TRACK means that this connection will add itself to
247
+ * the db on the next moveTo call it receives.
248
+ *
249
+ * UNTRACKED means that this connection will not add
250
+ * itself to the database until setTracking(true) is explicitly called.
251
+ *
252
+ * TRACKED means that this connection is currently being tracked.
253
+ */
254
+ enum TrackedState {
255
+ WILL_TRACK = -1,
256
+ UNTRACKED = 0,
257
+ TRACKED = 1
258
+ }
259
+ }
260
+ export type TrackedState = RenderedConnection.TrackedState;
261
+ export declare const TrackedState: typeof RenderedConnection.TrackedState;
262
+ //# sourceMappingURL=rendered_connection.d.ts.map