@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,348 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2011 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Object representing a scrollbar.
8
+ *
9
+ * @class
10
+ */
11
+ import * as browserEvents from './browser_events.js';
12
+ import { Coordinate } from './utils/coordinate.js';
13
+ import type { Metrics } from './utils/metrics.js';
14
+ import type { WorkspaceSvg } from './workspace_svg.js';
15
+ /**
16
+ * A note on units: most of the numbers that are in CSS pixels are scaled if the
17
+ * scrollbar is in a mutator.
18
+ */
19
+ /**
20
+ * Class for a pure SVG scrollbar.
21
+ * This technique offers a scrollbar that is guaranteed to work, but may not
22
+ * look or behave like the system's scrollbars.
23
+ */
24
+ export declare class Scrollbar {
25
+ private workspace;
26
+ private readonly horizontal;
27
+ /**
28
+ * Width of vertical scrollbar or height of horizontal scrollbar in CSS
29
+ * pixels. Scrollbars should be larger on touch devices.
30
+ */
31
+ static scrollbarThickness: number;
32
+ /**
33
+ * Default margin around the scrollbar (between the scrollbar and the edge of
34
+ * the viewport in pixels).
35
+ *
36
+ * @internal
37
+ */
38
+ static readonly DEFAULT_SCROLLBAR_MARGIN = 0.5;
39
+ /** Whether this scrollbar is part of a pair. */
40
+ private readonly pair;
41
+ /**
42
+ * Margin around the scrollbar (between the scrollbar and the edge of the
43
+ * viewport in pixels).
44
+ */
45
+ private readonly margin;
46
+ /** Previously recorded metrics from the workspace. */
47
+ private oldHostMetrics;
48
+ /**
49
+ * The ratio of handle position offset to workspace content displacement.
50
+ *
51
+ * @internal
52
+ */
53
+ ratio: number;
54
+ /**
55
+ * The location of the origin of the workspace that the scrollbar is in,
56
+ * measured in CSS pixels relative to the injection div origin. This is
57
+ * usually (0, 0). When the scrollbar is in a flyout it may have a
58
+ * different origin.
59
+ */
60
+ private origin;
61
+ /**
62
+ * The position of the mouse along this scrollbar's major axis at the start
63
+ * of the most recent drag. Units are CSS pixels, with (0, 0) at the top
64
+ * left of the browser window. For a horizontal scrollbar this is the x
65
+ * coordinate of the mouse down event; for a vertical scrollbar it's the y
66
+ * coordinate of the mouse down event.
67
+ */
68
+ private startDragMouse;
69
+ /**
70
+ * The length of the scrollbars (including the handle and the background),
71
+ * in CSS pixels. This is equivalent to scrollbar background length and the
72
+ * area within which the scrollbar handle can move.
73
+ */
74
+ private scrollbarLength;
75
+ /** The length of the scrollbar handle in CSS pixels. */
76
+ private handleLength;
77
+ /**
78
+ * The offset of the start of the handle from the scrollbar position, in CSS
79
+ * pixels.
80
+ */
81
+ private handlePosition;
82
+ private startDragHandle;
83
+ /** Whether the scrollbar handle is visible. */
84
+ private isHandleVisible;
85
+ /** Whether the workspace containing this scrollbar is visible. */
86
+ private containerVisible;
87
+ /** The transparent background behind the handle. */
88
+ private svgBackground;
89
+ /** The visible handle that can be dragged around. */
90
+ private svgHandle;
91
+ /** The outermost SVG element, which contains all parts of the scrollbar. */
92
+ private outerSvg;
93
+ /**
94
+ * The upper left corner of the scrollbar's SVG group in CSS pixels relative
95
+ * to the scrollbar's origin. This is usually relative to the injection div
96
+ * origin.
97
+ *
98
+ * @internal
99
+ */
100
+ position: Coordinate;
101
+ /**
102
+ * The DOM attribute that controls the length of the scrollbar. Different
103
+ * for horizontal and vertical scrollbars.
104
+ */
105
+ lengthAttribute_: string;
106
+ /**
107
+ * The DOM attribute that controls the position of the scrollbar.
108
+ * Different for horizontal and vertical scrollbars.
109
+ */
110
+ positionAttribute_: string;
111
+ /** Handler for mouse down events on the background of the scrollbar. */
112
+ onMouseDownBarWrapper_: browserEvents.Data;
113
+ /** Handler for mouse down events on the handle of the scrollbar. */
114
+ onMouseDownHandleWrapper_: browserEvents.Data;
115
+ /** Handler for mouse move events during scrollbar drags. */
116
+ onMouseUpWrapper_: browserEvents.Data | null;
117
+ /** Handler for mouse up events to end scrollbar drags. */
118
+ onMouseMoveWrapper_: browserEvents.Data | null;
119
+ /**
120
+ * @param workspace Workspace to bind the scrollbar to.
121
+ * @param horizontal True if horizontal, false if vertical.
122
+ * @param opt_pair True if scrollbar is part of a horiz/vert pair.
123
+ * @param opt_class A class to be applied to this scrollbar.
124
+ * @param opt_margin The margin to apply to this scrollbar.
125
+ */
126
+ constructor(workspace: WorkspaceSvg, horizontal: boolean, opt_pair?: boolean, opt_class?: string, opt_margin?: number);
127
+ /**
128
+ * Set the size of the scrollbar DOM elements along the minor axis.
129
+ */
130
+ private setInitialThickness;
131
+ /**
132
+ * Dispose of this scrollbar. Remove DOM elements, event listeners,
133
+ * and theme subscriptions.
134
+ */
135
+ dispose(): void;
136
+ /**
137
+ * Constrain the handle's length within the minimum (0) and maximum
138
+ * (scrollbar background) values allowed for the scrollbar.
139
+ *
140
+ * @param value Value that is potentially out of bounds, in CSS pixels.
141
+ * @returns Constrained value, in CSS pixels.
142
+ */
143
+ private constrainHandleLength;
144
+ /**
145
+ * Set the length of the scrollbar's handle and change the SVG attribute
146
+ * accordingly.
147
+ *
148
+ * @param newLength The new scrollbar handle length in CSS pixels.
149
+ */
150
+ private setHandleLength;
151
+ /**
152
+ * Constrain the handle's position within the minimum (0) and maximum values
153
+ * allowed for the scrollbar.
154
+ *
155
+ * @param value Value that is potentially out of bounds, in CSS pixels.
156
+ * @returns Constrained value, in CSS pixels.
157
+ */
158
+ private constrainHandlePosition;
159
+ /**
160
+ * Set the offset of the scrollbar's handle from the scrollbar's position, and
161
+ * change the SVG attribute accordingly.
162
+ *
163
+ * @param newPosition The new scrollbar handle offset in CSS pixels.
164
+ */
165
+ setHandlePosition(newPosition: number): void;
166
+ /**
167
+ * Set the size of the scrollbar's background and change the SVG attribute
168
+ * accordingly.
169
+ *
170
+ * @param newSize The new scrollbar background length in CSS pixels.
171
+ */
172
+ private setScrollbarLength;
173
+ /**
174
+ * Set the position of the scrollbar's SVG group in CSS pixels relative to the
175
+ * scrollbar's origin. This sets the scrollbar's location within the
176
+ * workspace.
177
+ *
178
+ * @param x The new x coordinate.
179
+ * @param y The new y coordinate.
180
+ * @internal
181
+ */
182
+ setPosition(x: number, y: number): void;
183
+ /**
184
+ * Recalculate the scrollbar's location and its length.
185
+ *
186
+ * @param opt_metrics A data structure of from the describing all the required
187
+ * dimensions. If not provided, it will be fetched from the host object.
188
+ */
189
+ resize(opt_metrics?: Metrics): void;
190
+ /**
191
+ * Returns whether the a resizeView is necessary by comparing the passed
192
+ * hostMetrics with cached old host metrics.
193
+ *
194
+ * @param hostMetrics A data structure describing all the required dimensions,
195
+ * possibly fetched from the host object.
196
+ * @returns Whether a resizeView is necessary.
197
+ */
198
+ private requiresViewResize;
199
+ /**
200
+ * Recalculate a horizontal scrollbar's location and length.
201
+ *
202
+ * @param hostMetrics A data structure describing all the required dimensions,
203
+ * possibly fetched from the host object.
204
+ */
205
+ private resizeHorizontal;
206
+ /**
207
+ * Recalculate a horizontal scrollbar's location on the screen and path
208
+ * length. This should be called when the layout or size of the window has
209
+ * changed.
210
+ *
211
+ * @param hostMetrics A data structure describing all the required dimensions,
212
+ * possibly fetched from the host object.
213
+ */
214
+ resizeViewHorizontal(hostMetrics: Metrics): void;
215
+ /**
216
+ * Recalculate a horizontal scrollbar's location within its path and length.
217
+ * This should be called when the contents of the workspace have changed.
218
+ *
219
+ * @param hostMetrics A data structure describing all the required dimensions,
220
+ * possibly fetched from the host object.
221
+ */
222
+ resizeContentHorizontal(hostMetrics: Metrics): void;
223
+ /**
224
+ * Recalculate a vertical scrollbar's location and length.
225
+ *
226
+ * @param hostMetrics A data structure describing all the required dimensions,
227
+ * possibly fetched from the host object.
228
+ */
229
+ private resizeVertical;
230
+ /**
231
+ * Recalculate a vertical scrollbar's location on the screen and path length.
232
+ * This should be called when the layout or size of the window has changed.
233
+ *
234
+ * @param hostMetrics A data structure describing all the required dimensions,
235
+ * possibly fetched from the host object.
236
+ */
237
+ resizeViewVertical(hostMetrics: Metrics): void;
238
+ /**
239
+ * Recalculate a vertical scrollbar's location within its path and length.
240
+ * This should be called when the contents of the workspace have changed.
241
+ *
242
+ * @param hostMetrics A data structure describing all the required dimensions,
243
+ * possibly fetched from the host object.
244
+ */
245
+ resizeContentVertical(hostMetrics: Metrics): void;
246
+ /**
247
+ * Is the scrollbar visible. Non-paired scrollbars disappear when they aren't
248
+ * needed.
249
+ *
250
+ * @returns True if visible.
251
+ */
252
+ isVisible(): boolean;
253
+ /**
254
+ * Set whether the scrollbar's container is visible and update
255
+ * display accordingly if visibility has changed.
256
+ *
257
+ * @param visible Whether the container is visible
258
+ */
259
+ setContainerVisible(visible: boolean): void;
260
+ /**
261
+ * Set whether the scrollbar is visible.
262
+ * Only applies to non-paired scrollbars.
263
+ *
264
+ * @param visible True if visible.
265
+ */
266
+ setVisible(visible: boolean): void;
267
+ /**
268
+ * Set whether the scrollbar is visible. Bypasses checking whether this
269
+ * scrollbar is part of a pair so that it can be toggled by the scrollbar
270
+ * pair.
271
+ *
272
+ * @param visible True if visible.
273
+ * @internal
274
+ */
275
+ setVisibleInternal(visible: boolean): void;
276
+ /**
277
+ * Update visibility of scrollbar based on whether it thinks it should
278
+ * be visible and whether its containing workspace is visible.
279
+ * We cannot rely on the containing workspace being hidden to hide us
280
+ * because it is not necessarily our parent in the DOM.
281
+ */
282
+ updateDisplay_(): void;
283
+ /**
284
+ * Scroll by one pageful.
285
+ * Called when scrollbar background is clicked.
286
+ *
287
+ * @param e Mouse down event.
288
+ */
289
+ private onMouseDownBar;
290
+ /**
291
+ * Start a dragging operation.
292
+ * Called when scrollbar handle is clicked.
293
+ *
294
+ * @param e Mouse down event.
295
+ */
296
+ private onMouseDownHandle;
297
+ /**
298
+ * Drag the scrollbar's handle.
299
+ *
300
+ * @param e Mouse move event.
301
+ */
302
+ private onMouseMoveHandle;
303
+ /** Release the scrollbar handle and reset state accordingly. */
304
+ private onMouseUpHandle;
305
+ /**
306
+ * Hide chaff and stop binding to mouseup and mousemove events. Call this to
307
+ * wrap up loose ends associated with the scrollbar.
308
+ */
309
+ private cleanUp;
310
+ /**
311
+ * Helper to calculate the ratio of handle position to scrollbar view size.
312
+ *
313
+ * @returns Ratio.
314
+ * @internal
315
+ */
316
+ getRatio_(): number;
317
+ /**
318
+ * Updates workspace metrics based on new scroll ratio. Called when scrollbar
319
+ * is moved.
320
+ */
321
+ private updateMetrics;
322
+ /**
323
+ * Set the scrollbar handle's position.
324
+ *
325
+ * @param value The content displacement, relative to the view in pixels.
326
+ * @param updateMetrics Whether to update metrics on this set call.
327
+ * Defaults to true.
328
+ */
329
+ set(value: number, updateMetrics?: boolean): void;
330
+ /**
331
+ * Record the origin of the workspace that the scrollbar is in, in pixels
332
+ * relative to the injection div origin. This is for times when the scrollbar
333
+ * is used in an object whose origin isn't the same as the main workspace
334
+ * (e.g. in a flyout.)
335
+ *
336
+ * @param x The x coordinate of the scrollbar's origin, in CSS pixels.
337
+ * @param y The y coordinate of the scrollbar's origin, in CSS pixels.
338
+ */
339
+ setOrigin(x: number, y: number): void;
340
+ /**
341
+ * @param first An object containing computed measurements of a workspace.
342
+ * @param second Another object containing computed measurements of a
343
+ * workspace.
344
+ * @returns Whether the two sets of metrics are equivalent.
345
+ */
346
+ private static metricsAreEquivalent;
347
+ }
348
+ //# sourceMappingURL=scrollbar.d.ts.map
@@ -0,0 +1,121 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2011 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Scrollbar } from './scrollbar.js';
7
+ import type { Metrics } from './utils/metrics.js';
8
+ import type { WorkspaceSvg } from './workspace_svg.js';
9
+ /**
10
+ * Class for a pair of scrollbars. Horizontal and vertical.
11
+ */
12
+ export declare class ScrollbarPair {
13
+ private workspace;
14
+ hScroll: Scrollbar | null;
15
+ vScroll: Scrollbar | null;
16
+ corner_: SVGRectElement | null;
17
+ /** Previously recorded metrics from the workspace. */
18
+ private oldHostMetrics;
19
+ /**
20
+ * @param workspace Workspace to bind the scrollbars to.
21
+ * @param addHorizontal Whether to add a horizontal scrollbar.
22
+ * Defaults to true.
23
+ * @param addVertical Whether to add a vertical scrollbar. Defaults to true.
24
+ * @param opt_class A class to be applied to these scrollbars.
25
+ * @param opt_margin The margin to apply to these scrollbars.
26
+ */
27
+ constructor(workspace: WorkspaceSvg, addHorizontal?: boolean, addVertical?: boolean, opt_class?: string, opt_margin?: number);
28
+ /**
29
+ * Dispose of this pair of scrollbars.
30
+ * Unlink from all DOM elements to prevent memory leaks.
31
+ */
32
+ dispose(): void;
33
+ /**
34
+ * Recalculate both of the scrollbars' locations and lengths.
35
+ * Also reposition the corner rectangle.
36
+ */
37
+ resize(): void;
38
+ /**
39
+ * Returns whether scrolling horizontally is enabled.
40
+ *
41
+ * @returns True if horizontal scroll is enabled.
42
+ */
43
+ canScrollHorizontally(): boolean;
44
+ /**
45
+ * Returns whether scrolling vertically is enabled.
46
+ *
47
+ * @returns True if vertical scroll is enabled.
48
+ */
49
+ canScrollVertically(): boolean;
50
+ /**
51
+ * Record the origin of the workspace that the scrollbar is in, in pixels
52
+ * relative to the injection div origin. This is for times when the scrollbar
53
+ * is used in an object whose origin isn't the same as the main workspace
54
+ * (e.g. in a flyout.)
55
+ *
56
+ * @param x The x coordinate of the scrollbar's origin, in CSS pixels.
57
+ * @param y The y coordinate of the scrollbar's origin, in CSS pixels.
58
+ * @internal
59
+ */
60
+ setOrigin(x: number, y: number): void;
61
+ /**
62
+ * Set the handles of both scrollbars.
63
+ *
64
+ * @param x The horizontal content displacement, relative to the view in
65
+ * pixels.
66
+ * @param y The vertical content displacement, relative to the view in pixels.
67
+ * @param updateMetrics Whether to update metrics on this set call.
68
+ * Defaults to true.
69
+ */
70
+ set(x: number, y: number, updateMetrics: boolean): void;
71
+ /**
72
+ * Set the handle of the horizontal scrollbar to be at a certain position in
73
+ * CSS pixels relative to its parents.
74
+ *
75
+ * @param x Horizontal scroll value.
76
+ */
77
+ setX(x: number): void;
78
+ /**
79
+ * Set the handle of the vertical scrollbar to be at a certain position in
80
+ * CSS pixels relative to its parents.
81
+ *
82
+ * @param y Vertical scroll value.
83
+ */
84
+ setY(y: number): void;
85
+ /**
86
+ * Set whether this scrollbar's container is visible.
87
+ *
88
+ * @param visible Whether the container is visible.
89
+ */
90
+ setContainerVisible(visible: boolean): void;
91
+ /**
92
+ * If any of the scrollbars are visible. Non-paired scrollbars may disappear
93
+ * when they aren't needed.
94
+ *
95
+ * @returns True if visible.
96
+ */
97
+ isVisible(): boolean;
98
+ /**
99
+ * Sets the visibility of any existing scrollbars.
100
+ *
101
+ * @param visible True if visible.
102
+ */
103
+ setVisible(visible: boolean): void;
104
+ /**
105
+ * Recalculates the scrollbars' locations within their path and length.
106
+ * This should be called when the contents of the workspace have changed.
107
+ *
108
+ * @param hostMetrics A data structure describing all the required dimensions,
109
+ * possibly fetched from the host object.
110
+ */
111
+ resizeContent(hostMetrics: Metrics): void;
112
+ /**
113
+ * Recalculates the scrollbars' locations on the screen and path length.
114
+ * This should be called when the layout or size of the window has changed.
115
+ *
116
+ * @param hostMetrics A data structure describing all the required dimensions,
117
+ * possibly fetched from the host object.
118
+ */
119
+ resizeView(hostMetrics: Metrics): void;
120
+ }
121
+ //# sourceMappingURL=scrollbar_pair.d.ts.map
@@ -0,0 +1,57 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2024 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { FlyoutItem } from './flyout_item.js';
7
+ import type { IFlyout } from './interfaces/i_flyout.js';
8
+ import type { IFlyoutInflater } from './interfaces/i_flyout_inflater.js';
9
+ /**
10
+ * @internal
11
+ */
12
+ export declare const SEPARATOR_TYPE = "sep";
13
+ /**
14
+ * Class responsible for creating separators for flyouts.
15
+ */
16
+ export declare class SeparatorFlyoutInflater implements IFlyoutInflater {
17
+ /**
18
+ * Inflates a dummy flyout separator.
19
+ *
20
+ * The flyout automatically creates separators between every element with a
21
+ * size determined by calling gapForElement on the relevant inflater.
22
+ * Additionally, users can explicitly add separators in the flyout definition.
23
+ * When separators (implicitly or explicitly created) follow one another, the
24
+ * gap of the last one propagates backwards and flattens to one separator.
25
+ * This flattening is not additive; if there are initially separators of 2, 3,
26
+ * and 4 pixels, after normalization there will be one separator of 4 pixels.
27
+ * Therefore, this method returns a zero-width separator, which will be
28
+ * replaced by the one implicitly created by the flyout based on the value
29
+ * returned by gapForElement, which knows the default gap, unlike this method.
30
+ *
31
+ * @param _state A JSON representation of a flyout separator.
32
+ * @param flyout The flyout to create the separator for.
33
+ * @returns A newly created FlyoutSeparator.
34
+ */
35
+ load(_state: object, flyout: IFlyout): FlyoutItem;
36
+ /**
37
+ * Returns the size of the separator. See `load` for more details.
38
+ *
39
+ * @param state A JSON representation of a flyout separator.
40
+ * @param defaultGap The default spacing for flyout items.
41
+ * @returns The desired size of the separator.
42
+ */
43
+ gapForItem(state: object, defaultGap: number): number;
44
+ /**
45
+ * Disposes of the given separator. Intentional no-op.
46
+ *
47
+ * @param _item The flyout separator to dispose of.
48
+ */
49
+ disposeItem(_item: FlyoutItem): void;
50
+ /**
51
+ * Returns the type of items this inflater is responsible for creating.
52
+ *
53
+ * @returns An identifier for the type of items this inflater creates.
54
+ */
55
+ getType(): string;
56
+ }
57
+ //# sourceMappingURL=separator_flyout_inflater.d.ts.map
@@ -0,0 +1,138 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Block } from '../block.js';
7
+ import type { Connection } from '../connection.js';
8
+ import type { ISerializer } from '../interfaces/i_serializer.js';
9
+ import type { Workspace } from '../workspace.js';
10
+ /**
11
+ * Represents the state of a connection.
12
+ */
13
+ export interface ConnectionState {
14
+ shadow?: State;
15
+ block?: State;
16
+ }
17
+ /**
18
+ * Represents the state of a given block.
19
+ */
20
+ export interface State {
21
+ type: string;
22
+ id?: string;
23
+ x?: number;
24
+ y?: number;
25
+ collapsed?: boolean;
26
+ deletable?: boolean;
27
+ movable?: boolean;
28
+ editable?: boolean;
29
+ enabled?: boolean;
30
+ disabledReasons?: string[];
31
+ inline?: boolean;
32
+ data?: string;
33
+ extraState?: any;
34
+ icons?: {
35
+ [key: string]: any;
36
+ };
37
+ fields?: {
38
+ [key: string]: any;
39
+ };
40
+ inputs?: {
41
+ [key: string]: ConnectionState;
42
+ };
43
+ next?: ConnectionState;
44
+ }
45
+ /**
46
+ * Returns the state of the given block as a plain JavaScript object.
47
+ *
48
+ * @param block The block to serialize.
49
+ * @param param1 addCoordinates: If true, the coordinates of the block are added
50
+ * to the serialized state. False by default. addinputBlocks: If true,
51
+ * children of the block which are connected to inputs will be serialized.
52
+ * True by default. addNextBlocks: If true, children of the block which are
53
+ * connected to the block's next connection (if it exists) will be
54
+ * serialized. True by default. doFullSerialization: If true, fields that
55
+ * normally just save a reference to some external state (eg variables) will
56
+ * instead serialize all of the info about that state. This supports
57
+ * deserializing the block into a workspace where that state doesn't yet
58
+ * exist. True by default.
59
+ * @returns The serialized state of the block, or null if the block could not be
60
+ * serialied (eg it was an insertion marker).
61
+ */
62
+ export declare function save(block: Block, { addCoordinates, addInputBlocks, addNextBlocks, doFullSerialization, saveIds, }?: {
63
+ addCoordinates?: boolean;
64
+ addInputBlocks?: boolean;
65
+ addNextBlocks?: boolean;
66
+ doFullSerialization?: boolean;
67
+ saveIds?: boolean;
68
+ }): State | null;
69
+ /**
70
+ * Loads the block represented by the given state into the given workspace.
71
+ *
72
+ * @param state The state of a block to deserialize into the workspace.
73
+ * @param workspace The workspace to add the block to.
74
+ * @param param1 recordUndo: If true, events triggered by this function will be
75
+ * undo-able by the user. False by default.
76
+ * @returns The block that was just loaded.
77
+ */
78
+ export declare function append(state: State, workspace: Workspace, { recordUndo }?: {
79
+ recordUndo?: boolean;
80
+ }): Block;
81
+ /**
82
+ * Loads the block represented by the given state into the given workspace.
83
+ * This is defined internally so that the extra parameters don't clutter our
84
+ * external API.
85
+ * But it is exported so that other places within Blockly can call it directly
86
+ * with the extra parameters.
87
+ *
88
+ * @param state The state of a block to deserialize into the workspace.
89
+ * @param workspace The workspace to add the block to.
90
+ * @param param1 parentConnection: If provided, the system will attempt to
91
+ * connect the block to this connection after it is created. Undefined by
92
+ * default. isShadow: If true, the block will be set to a shadow block after
93
+ * it is created. False by default. recordUndo: If true, events triggered by
94
+ * this function will be undo-able by the user. False by default.
95
+ * @returns The block that was just appended.
96
+ * @internal
97
+ */
98
+ export declare function appendInternal(state: State, workspace: Workspace, { parentConnection, isShadow, recordUndo, }?: {
99
+ parentConnection?: Connection;
100
+ isShadow?: boolean;
101
+ recordUndo?: boolean;
102
+ }): Block;
103
+ /**
104
+ * Serializer for saving and loading block state.
105
+ */
106
+ export declare class BlockSerializer implements ISerializer {
107
+ priority: number;
108
+ constructor();
109
+ /**
110
+ * Serializes the blocks of the given workspace.
111
+ *
112
+ * @param workspace The workspace to save the blocks of.
113
+ * @returns The state of the workspace's blocks, or null if there are no
114
+ * blocks.
115
+ */
116
+ save(workspace: Workspace): {
117
+ languageVersion: number;
118
+ blocks: State[];
119
+ } | null;
120
+ /**
121
+ * Deserializes the blocks defined by the given state into the given
122
+ * workspace.
123
+ *
124
+ * @param state The state of the blocks to deserialize.
125
+ * @param workspace The workspace to deserialize into.
126
+ */
127
+ load(state: {
128
+ languageVersion: number;
129
+ blocks: State[];
130
+ }, workspace: Workspace): void;
131
+ /**
132
+ * Disposes of any blocks that exist on the workspace.
133
+ *
134
+ * @param workspace The workspace to clear the blocks of.
135
+ */
136
+ clear(workspace: Workspace): void;
137
+ }
138
+ //# sourceMappingURL=blocks.d.ts.map