@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,129 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { AbsoluteMetrics, ContainerRegion, ToolboxMetrics, UiMetrics } from '../metrics_manager.js';
7
+ import type { Metrics } from '../utils/metrics.js';
8
+ import type { Size } from '../utils/size.js';
9
+ /**
10
+ * Interface for a metrics manager.
11
+ */
12
+ export interface IMetricsManager {
13
+ /**
14
+ * Returns whether the scroll area has fixed edges.
15
+ *
16
+ * @returns Whether the scroll area has fixed edges.
17
+ * @internal
18
+ */
19
+ hasFixedEdges(): boolean;
20
+ /**
21
+ * Returns the metrics for the scroll area of the workspace.
22
+ *
23
+ * @param opt_getWorkspaceCoordinates True to get the scroll metrics in
24
+ * workspace coordinates, false to get them in pixel coordinates.
25
+ * @param opt_viewMetrics The view metrics if they have been previously
26
+ * computed. Passing in null may cause the view metrics to be computed
27
+ * again, if it is needed.
28
+ * @param opt_contentMetrics The content metrics if they have been previously
29
+ * computed. Passing in null may cause the content metrics to be computed
30
+ * again, if it is needed.
31
+ * @returns The metrics for the scroll container
32
+ */
33
+ getScrollMetrics(opt_getWorkspaceCoordinates?: boolean, opt_viewMetrics?: ContainerRegion, opt_contentMetrics?: ContainerRegion): ContainerRegion;
34
+ /**
35
+ * Gets the width and the height of the flyout in pixel
36
+ * coordinates. By default, will get metrics for either a simple flyout (owned
37
+ * directly by the workspace) or for the flyout owned by the toolbox. If you
38
+ * pass `opt_own` as `true` then only metrics for the simple flyout will be
39
+ * returned, and it will return 0 for the width and height if the workspace
40
+ * has a category toolbox instead of a simple toolbox.
41
+ *
42
+ * @param opt_own Whether to only return the workspace's own flyout metrics.
43
+ * @returns The width and height of the flyout.
44
+ */
45
+ getFlyoutMetrics(opt_own?: boolean): ToolboxMetrics;
46
+ /**
47
+ * Gets the width, height and position of the toolbox on the workspace in
48
+ * pixel coordinates. Returns 0 for the width and height if the workspace has
49
+ * a simple toolbox instead of a category toolbox. To get the width and height
50
+ * of a simple toolbox, see {@link IMetricsManager.getFlyoutMetrics}.
51
+ *
52
+ * @returns The object with the width, height and position of the toolbox.
53
+ */
54
+ getToolboxMetrics(): ToolboxMetrics;
55
+ /**
56
+ * Gets the width and height of the workspace's parent SVG element in pixel
57
+ * coordinates. This area includes the toolbox and the visible workspace area.
58
+ *
59
+ * @returns The width and height of the workspace's parent SVG element.
60
+ */
61
+ getSvgMetrics(): Size;
62
+ /**
63
+ * Gets the absolute left and absolute top in pixel coordinates.
64
+ * This is where the visible workspace starts in relation to the SVG
65
+ * container.
66
+ *
67
+ * @returns The absolute metrics for the workspace.
68
+ */
69
+ getAbsoluteMetrics(): AbsoluteMetrics;
70
+ /**
71
+ * Gets the metrics for the visible workspace in either pixel or workspace
72
+ * coordinates. The visible workspace does not include the toolbox or flyout.
73
+ *
74
+ * @param opt_getWorkspaceCoordinates True to get the view metrics in
75
+ * workspace coordinates, false to get them in pixel coordinates.
76
+ * @returns The width, height, top and left of the viewport in either
77
+ * workspace coordinates or pixel coordinates.
78
+ */
79
+ getViewMetrics(opt_getWorkspaceCoordinates?: boolean): ContainerRegion;
80
+ /**
81
+ * Gets content metrics in either pixel or workspace coordinates.
82
+ * The content area is a rectangle around all the top bounded elements on the
83
+ * workspace (workspace comments and blocks).
84
+ *
85
+ * @param opt_getWorkspaceCoordinates True to get the content metrics in
86
+ * workspace coordinates, false to get them in pixel coordinates.
87
+ * @returns The metrics for the content container.
88
+ */
89
+ getContentMetrics(opt_getWorkspaceCoordinates?: boolean): ContainerRegion;
90
+ /**
91
+ * Returns an object with all the metrics required to size scrollbars for a
92
+ * top level workspace. The following properties are computed:
93
+ * Coordinate system: pixel coordinates, -left, -up, +right, +down
94
+ * .viewHeight: Height of the visible portion of the workspace.
95
+ * .viewWidth: Width of the visible portion of the workspace.
96
+ * .contentHeight: Height of the content.
97
+ * .contentWidth: Width of the content.
98
+ * .svgHeight: Height of the Blockly div (the view + the toolbox,
99
+ * simple or otherwise),
100
+ * .svgWidth: Width of the Blockly div (the view + the toolbox,
101
+ * simple or otherwise),
102
+ * .viewTop: Top-edge of the visible portion of the workspace, relative to
103
+ * the workspace origin.
104
+ * .viewLeft: Left-edge of the visible portion of the workspace, relative to
105
+ * the workspace origin.
106
+ * .contentTop: Top-edge of the content, relative to the workspace origin.
107
+ * .contentLeft: Left-edge of the content relative to the workspace origin.
108
+ * .absoluteTop: Top-edge of the visible portion of the workspace, relative
109
+ * to the blocklyDiv.
110
+ * .absoluteLeft: Left-edge of the visible portion of the workspace, relative
111
+ * to the blocklyDiv.
112
+ * .toolboxWidth: Width of the toolbox, if it exists. Otherwise zero.
113
+ * .toolboxHeight: Height of the toolbox, if it exists. Otherwise zero.
114
+ * .flyoutWidth: Width of the flyout if it is always open. Otherwise zero.
115
+ * .flyoutHeight: Height of the flyout if it is always open. Otherwise zero.
116
+ * .toolboxPosition: Top, bottom, left or right. Use TOOLBOX_AT constants to
117
+ * compare.
118
+ *
119
+ * @returns Contains size and position metrics of a top level workspace.
120
+ */
121
+ getMetrics(): Metrics;
122
+ /**
123
+ * Returns common metrics used by UI elements.
124
+ *
125
+ * @returns The UI metrics.
126
+ */
127
+ getUiMetrics(): UiMetrics;
128
+ }
129
+ //# sourceMappingURL=i_metrics_manager.d.ts.map
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2019 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * The interface for an object that is movable.
8
+ */
9
+ export interface IMovable {
10
+ /**
11
+ * Get whether this is movable or not.
12
+ *
13
+ * @returns True if movable.
14
+ */
15
+ isMovable(): boolean;
16
+ }
17
+ //# sourceMappingURL=i_movable.d.ts.map
@@ -0,0 +1,63 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { IFocusableNode } from './i_focusable_node.js';
7
+ /**
8
+ * A set of rules that specify where keyboard navigation should proceed.
9
+ */
10
+ export interface INavigationPolicy<T> {
11
+ /**
12
+ * Returns the first child element of the given element, if any.
13
+ *
14
+ * @param current The element which the user is navigating into.
15
+ * @returns The current element's first child, or null if it has none.
16
+ */
17
+ getFirstChild(current: T): IFocusableNode | null;
18
+ /**
19
+ * Returns the parent element of the given element, if any.
20
+ *
21
+ * @param current The element which the user is navigating out of.
22
+ * @returns The parent element of the current element, or null if it has none.
23
+ */
24
+ getParent(current: T): IFocusableNode | null;
25
+ /**
26
+ * Returns the peer element following the given element, if any.
27
+ *
28
+ * @param current The element which the user is navigating past.
29
+ * @returns The next peer element of the current element, or null if there is
30
+ * none.
31
+ */
32
+ getNextSibling(current: T): IFocusableNode | null;
33
+ /**
34
+ * Returns the peer element preceding the given element, if any.
35
+ *
36
+ * @param current The element which the user is navigating past.
37
+ * @returns The previous peer element of the current element, or null if
38
+ * there is none.
39
+ */
40
+ getPreviousSibling(current: T): IFocusableNode | null;
41
+ /**
42
+ * Returns whether or not the given instance should be reachable via keyboard
43
+ * navigation.
44
+ *
45
+ * Implementors should generally return true, unless there are circumstances
46
+ * under which this item should be skipped while using keyboard navigation.
47
+ * Common examples might include being disabled, invalid, readonly, or purely
48
+ * a visual decoration. For example, while Fields are navigable, non-editable
49
+ * fields return false, since they cannot be interacted with when focused.
50
+ *
51
+ * @returns True if this element should be included in keyboard navigation.
52
+ */
53
+ isNavigable(current: T): boolean;
54
+ /**
55
+ * Returns whether or not this navigation policy corresponds to the type of
56
+ * the given object.
57
+ *
58
+ * @param current An instance to check whether this policy applies to.
59
+ * @returns True if the given object is of a type handled by this policy.
60
+ */
61
+ isApplicable(current: any): current is T;
62
+ }
63
+ //# sourceMappingURL=i_navigation_policy.d.ts.map
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * An object that fires events optionally.
8
+ *
9
+ * @internal
10
+ */
11
+ export interface IObservable {
12
+ startPublishing(): void;
13
+ stopPublishing(): void;
14
+ }
15
+ /**
16
+ * Type guard for checking if an object fulfills IObservable.
17
+ *
18
+ * @internal
19
+ */
20
+ export declare function isObservable(obj: any): obj is IObservable;
21
+ //# sourceMappingURL=i_observable.d.ts.map
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { ParameterState } from '../serialization/procedures';
7
+ import { IProcedureModel } from './i_procedure_model';
8
+ /**
9
+ * A data model for a procedure.
10
+ */
11
+ export interface IParameterModel {
12
+ /**
13
+ * Sets the name of this parameter to the given name.
14
+ */
15
+ setName(name: string): this;
16
+ /**
17
+ * Sets the types of this parameter to the given type.
18
+ */
19
+ setTypes(types: string[]): this;
20
+ /**
21
+ * Returns the name of this parameter.
22
+ */
23
+ getName(): string;
24
+ /**
25
+ * Return the types of this parameter.
26
+ */
27
+ getTypes(): string[];
28
+ /**
29
+ * Returns the unique language-neutral ID for the parameter.
30
+ *
31
+ * This represents the identify of the variable model which does not change
32
+ * over time.
33
+ */
34
+ getId(): string;
35
+ /** Sets the procedure model this parameter is associated with. */
36
+ setProcedureModel(model: IProcedureModel): this;
37
+ /**
38
+ * Serializes the state of the parameter to JSON.
39
+ *
40
+ * @returns JSON serializable state of the parameter.
41
+ */
42
+ saveState(): ParameterState;
43
+ }
44
+ //# sourceMappingURL=i_parameter_model.d.ts.map
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Coordinate } from '../utils/coordinate.js';
7
+ import { WorkspaceSvg } from '../workspace_svg.js';
8
+ import { ICopyable, ICopyData } from './i_copyable.js';
9
+ /** An object that can paste data into a workspace. */
10
+ export interface IPaster<U extends ICopyData, T extends ICopyable<U>> {
11
+ paste(copyData: U, workspace: WorkspaceSvg, coordinate?: Coordinate): T | null;
12
+ }
13
+ /** @returns True if the given object is a paster. */
14
+ export declare function isPaster(obj: any): obj is IPaster<ICopyData, ICopyable<ICopyData>>;
15
+ //# sourceMappingURL=i_paster.d.ts.map
@@ -0,0 +1,29 @@
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 type { Rect } from '../utils/rect.js';
8
+ import type { IComponent } from './i_component.js';
9
+ /**
10
+ * Interface for a component that is positioned on top of the workspace.
11
+ */
12
+ export interface IPositionable extends IComponent {
13
+ /**
14
+ * Positions the element. Called when the window is resized.
15
+ *
16
+ * @param metrics The workspace metrics.
17
+ * @param savedPositions List of rectangles that are already on the workspace.
18
+ */
19
+ position(metrics: UiMetrics, savedPositions: Rect[]): void;
20
+ /**
21
+ * Returns the bounding rectangle of the UI element in pixel units relative to
22
+ * the Blockly injection div.
23
+ *
24
+ * @returns The UI elements's bounding box. Null if bounding box should be
25
+ * ignored by other UI elements.
26
+ */
27
+ getBoundingRectangle(): Rect | null;
28
+ }
29
+ //# sourceMappingURL=i_positionable.d.ts.map
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Block } from '../block.js';
7
+ import { IProcedureModel } from './i_procedure_model.js';
8
+ /** The interface for a block which models a procedure. */
9
+ export interface IProcedureBlock {
10
+ getProcedureModel(): IProcedureModel;
11
+ doProcedureUpdate(): void;
12
+ isProcedureDef(): boolean;
13
+ }
14
+ /** A type guard which checks if the given block is a procedure block. */
15
+ export declare function isProcedureBlock(block: Block | IProcedureBlock): block is IProcedureBlock;
16
+ //# sourceMappingURL=i_procedure_block.d.ts.map
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { IProcedureModel } from './i_procedure_model.js';
7
+ export interface IProcedureMap extends Map<string, IProcedureModel> {
8
+ /**
9
+ * Adds the given ProcedureModel to the map of procedure models, so that
10
+ * blocks can find it.
11
+ */
12
+ add(proc: IProcedureModel): this;
13
+ /** Returns all of the procedures stored in this map. */
14
+ getProcedures(): IProcedureModel[];
15
+ }
16
+ //# sourceMappingURL=i_procedure_map.d.ts.map
@@ -0,0 +1,59 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { State } from '../serialization/procedures.js';
7
+ import { IParameterModel } from './i_parameter_model.js';
8
+ /**
9
+ * A data model for a procedure.
10
+ */
11
+ export interface IProcedureModel {
12
+ /** Sets the human-readable name of the procedure. */
13
+ setName(name: string): this;
14
+ /**
15
+ * Inserts a parameter into the list of parameters.
16
+ *
17
+ * To move a parameter, first delete it, and then re-insert.
18
+ */
19
+ insertParameter(parameterModel: IParameterModel, index: number): this;
20
+ /** Removes the parameter at the given index from the parameter list. */
21
+ deleteParameter(index: number): this;
22
+ /**
23
+ * Sets the return type(s) of the procedure.
24
+ *
25
+ * Pass null to represent a procedure that does not return.
26
+ */
27
+ setReturnTypes(types: string[] | null): this;
28
+ /**
29
+ * Sets whether this procedure is enabled/disabled. If a procedure is disabled
30
+ * all procedure caller blocks should be disabled as well.
31
+ */
32
+ setEnabled(enabled: boolean): this;
33
+ /** Returns the unique language-neutral ID for the procedure. */
34
+ getId(): string;
35
+ /** Returns the human-readable name of the procedure. */
36
+ getName(): string;
37
+ /** Returns the parameter at the given index in the parameter list. */
38
+ getParameter(index: number): IParameterModel;
39
+ /** Returns an array of all of the parameters in the parameter list. */
40
+ getParameters(): IParameterModel[];
41
+ /**
42
+ * Returns the return type(s) of the procedure.
43
+ *
44
+ * Null represents a procedure that does not return a value.
45
+ */
46
+ getReturnTypes(): string[] | null;
47
+ /**
48
+ * Returns whether the procedure is enabled/disabled. If a procedure is
49
+ * disabled, all procedure caller blocks should be disabled as well.
50
+ */
51
+ getEnabled(): boolean;
52
+ /**
53
+ * Serializes the state of the procedure to JSON.
54
+ *
55
+ * @returns JSON serializable state of the procedure.
56
+ */
57
+ saveState(): State;
58
+ }
59
+ //# sourceMappingURL=i_procedure_model.d.ts.map
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * The interface for a Blockly component that can be registered.
8
+ */
9
+ export interface IRegistrable {
10
+ }
11
+ //# sourceMappingURL=i_registrable.d.ts.map
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export interface IRenderedElement {
7
+ /**
8
+ * @returns The root SVG element of this rendered element.
9
+ */
10
+ getSvgRoot(): SVGElement;
11
+ }
12
+ /**
13
+ * @returns True if the given object is an IRenderedElement.
14
+ */
15
+ export declare function isRenderedElement(obj: any): obj is IRenderedElement;
16
+ //# sourceMappingURL=i_rendered_element.d.ts.map
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2019 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Workspace } from '../workspace.js';
7
+ import { IFocusableNode } from './i_focusable_node.js';
8
+ /**
9
+ * The interface for an object that is selectable.
10
+ *
11
+ * Implementations are generally expected to use their implementations of
12
+ * onNodeFocus() and onNodeBlur() to call setSelected() with themselves and
13
+ * null, respectively, in order to ensure that selections are correctly updated
14
+ * and the selection change event is fired.
15
+ */
16
+ export interface ISelectable extends IFocusableNode {
17
+ id: string;
18
+ workspace: Workspace;
19
+ /** Select this. Highlight it visually. */
20
+ select(): void;
21
+ /** Unselect this. Unhighlight it visually. */
22
+ unselect(): void;
23
+ }
24
+ /** Checks whether the given object is an ISelectable. */
25
+ export declare function isSelectable(obj: any): obj is ISelectable;
26
+ //# sourceMappingURL=i_selectable.d.ts.map
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { FlyoutItemInfoArray } from '../utils/toolbox';
7
+ import type { IToolboxItem } from './i_toolbox_item.js';
8
+ /**
9
+ * Interface for an item in the toolbox that can be selected.
10
+ */
11
+ export interface ISelectableToolboxItem extends IToolboxItem {
12
+ /**
13
+ * Gets the name of the toolbox item. Used for emitting events.
14
+ *
15
+ * @returns The name of the toolbox item.
16
+ */
17
+ getName(): string;
18
+ /**
19
+ * Gets the contents of the toolbox item. These are items that are meant to be
20
+ * displayed in the flyout.
21
+ *
22
+ * @returns The definition of items to be displayed in the flyout.
23
+ */
24
+ getContents(): FlyoutItemInfoArray | string;
25
+ /**
26
+ * Sets the current toolbox item as selected.
27
+ *
28
+ * @param _isSelected True if this category is selected, false otherwise.
29
+ */
30
+ setSelected(_isSelected: boolean): void;
31
+ /**
32
+ * Gets the HTML element that is clickable.
33
+ * The parent toolbox element receives clicks. The parent toolbox will add an
34
+ * ID to this element so it can pass the onClick event to the correct
35
+ * toolboxItem.
36
+ *
37
+ * @returns The HTML element that receives clicks.
38
+ */
39
+ getClickTarget(): Element;
40
+ /**
41
+ * Handles when the toolbox item is clicked.
42
+ *
43
+ * @param _e Click event to handle.
44
+ */
45
+ onClick(_e: Event): void;
46
+ }
47
+ /**
48
+ * Type guard that checks whether an IToolboxItem is an ISelectableToolboxItem.
49
+ */
50
+ export declare function isSelectableToolboxItem(toolboxItem: IToolboxItem): toolboxItem is ISelectableToolboxItem;
51
+ //# sourceMappingURL=i_selectable_toolbox_item.d.ts.map
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export interface ISerializable {
7
+ /**
8
+ * @param doFullSerialization If true, this signals that any backing data
9
+ * structures used by this ISerializable should also be serialized. This
10
+ * is used for copy-paste.
11
+ * @returns a JSON serializable value that records the ISerializable's state.
12
+ */
13
+ saveState(doFullSerialization: boolean): any;
14
+ /**
15
+ * Takes in a JSON serializable value and sets the ISerializable's state
16
+ * based on that.
17
+ *
18
+ * @param state The state to apply to the ISerializable.
19
+ */
20
+ loadState(state: any): void;
21
+ }
22
+ /** Type guard that checks whether the given object is a ISerializable. */
23
+ export declare function isSerializable(obj: any): obj is ISerializable;
24
+ //# sourceMappingURL=i_serializable.d.ts.map
@@ -0,0 +1,45 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Workspace } from '../workspace.js';
7
+ /**
8
+ * Serializes and deserializes a plugin or system.
9
+ */
10
+ export interface ISerializer {
11
+ /**
12
+ * A priority value used to determine the order of deserializing state.
13
+ * More positive priorities are deserialized before less positive
14
+ * priorities. Eg if you have priorities (0, -10, 10, 100) the order of
15
+ * deserialiation will be (100, 10, 0, -10).
16
+ * If two serializers have the same priority, they are deserialized in an
17
+ * arbitrary order relative to each other.
18
+ */
19
+ priority: number;
20
+ /**
21
+ * Saves the state of the plugin or system.
22
+ *
23
+ * @param workspace The workspace the system to serialize is associated with.
24
+ * @returns A JS object containing the system's state, or null if there is no
25
+ * state to record.
26
+ */
27
+ save(workspace: Workspace): object | null;
28
+ /**
29
+ * Loads the state of the plugin or system.
30
+ *
31
+ * @param state The state of the system to deserialize. This will always be
32
+ * non-null.
33
+ * @param workspace The workspace the system to deserialize is associated
34
+ * with.
35
+ */
36
+ load(state: object, workspace: Workspace): void;
37
+ /**
38
+ * Clears the state of the plugin or system.
39
+ *
40
+ * @param workspace The workspace the system to clear the state of is
41
+ * associated with.
42
+ */
43
+ clear(workspace: Workspace): void;
44
+ }
45
+ //# sourceMappingURL=i_serializer.d.ts.map
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Interface for an object that a style can be added to.
8
+ */
9
+ export interface IStyleable {
10
+ /**
11
+ * Adds a style on the toolbox. Usually used to change the cursor.
12
+ *
13
+ * @param style The name of the class to add.
14
+ */
15
+ addStyle(style: string): void;
16
+ /**
17
+ * Removes a style from the toolbox. Usually used to change the cursor.
18
+ *
19
+ * @param style The name of the class to remove.
20
+ */
21
+ removeStyle(style: string): void;
22
+ }
23
+ //# sourceMappingURL=i_styleable.d.ts.map