nodeskini 1.0.1 → 1.0.3
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.
- package/blocklySkini/archive/blocklyControleur.js +87 -0
- package/blocklySkini/archive/blocklySkini.js +84 -0
- package/blocklySkini/archive/blocklyhop.js +75 -0
- package/blocklySkini/archive/clientControleurBlocly.js +170 -0
- package/blocklySkini/archive/index.html +76 -0
- package/blocklySkini/archive/testHHsuspend.txt +89 -0
- package/blocklySkini/archive/testHHtrap.txt +262 -0
- package/blocklySkini/archive/testOrchestration.txt +177 -0
- package/blocklySkini/archive/testOrchestration.xml +447 -0
- package/blocklySkini/archive/testOrchestration2.xml +456 -0
- package/blocklySkini/blockly/README.md +77 -0
- package/blocklySkini/blockly/blockly.d.ts +21480 -0
- package/blocklySkini/blockly/blockly.js +25 -0
- package/blocklySkini/blockly/blockly.min.js +2188 -0
- package/blocklySkini/blockly/blockly_compressed.js +1455 -0
- package/blocklySkini/blockly/blockly_compressed.js.map +1 -0
- package/blocklySkini/blockly/blocks/colour.js +122 -0
- package/blocklySkini/blockly/blocks/lists.js +862 -0
- package/blocklySkini/blockly/blocks/logic.js +635 -0
- package/blocklySkini/blockly/blocks/loops.js +357 -0
- package/blocklySkini/blockly/blocks/math.js +566 -0
- package/blocklySkini/blockly/blocks/procedures.js +1072 -0
- package/blocklySkini/blockly/blocks/text.js +923 -0
- package/blocklySkini/blockly/blocks/variables.js +163 -0
- package/blocklySkini/blockly/blocks/variables_dynamic.js +180 -0
- package/blocklySkini/blockly/blocks.d.ts +15 -0
- package/blocklySkini/blockly/blocks.js +27 -0
- package/blocklySkini/blockly/blocks_compressed.js +182 -0
- package/blocklySkini/blockly/blocks_compressed.js.map +1 -0
- package/blocklySkini/blockly/browser.js +36 -0
- package/blocklySkini/blockly/core/block.js +2010 -0
- package/blocklySkini/blockly/core/block_animations.js +203 -0
- package/blocklySkini/blockly/core/block_drag_surface.js +212 -0
- package/blocklySkini/blockly/core/block_dragger.js +378 -0
- package/blocklySkini/blockly/core/block_events.js +548 -0
- package/blocklySkini/blockly/core/block_svg.js +1763 -0
- package/blocklySkini/blockly/core/blockly.js +674 -0
- package/blocklySkini/blockly/core/blocks.js +23 -0
- package/blocklySkini/blockly/core/bubble.js +880 -0
- package/blocklySkini/blockly/core/bubble_dragger.js +274 -0
- package/blocklySkini/blockly/core/comment.js +439 -0
- package/blocklySkini/blockly/core/components/component.js +554 -0
- package/blocklySkini/blockly/core/components/tree/basenode.js +895 -0
- package/blocklySkini/blockly/core/components/tree/treecontrol.js +332 -0
- package/blocklySkini/blockly/core/components/tree/treenode.js +172 -0
- package/blocklySkini/blockly/core/connection.js +682 -0
- package/blocklySkini/blockly/core/connection_checker.js +285 -0
- package/blocklySkini/blockly/core/connection_db.js +295 -0
- package/blocklySkini/blockly/core/constants.js +277 -0
- package/blocklySkini/blockly/core/contextmenu.js +307 -0
- package/blocklySkini/blockly/core/contextmenu_items.js +534 -0
- package/blocklySkini/blockly/core/contextmenu_registry.js +165 -0
- package/blocklySkini/blockly/core/css.js +549 -0
- package/blocklySkini/blockly/core/dropdowndiv.js +776 -0
- package/blocklySkini/blockly/core/events.js +387 -0
- package/blocklySkini/blockly/core/events_abstract.js +106 -0
- package/blocklySkini/blockly/core/extensions.js +450 -0
- package/blocklySkini/blockly/core/field.js +1162 -0
- package/blocklySkini/blockly/core/field_angle.js +562 -0
- package/blocklySkini/blockly/core/field_checkbox.js +220 -0
- package/blocklySkini/blockly/core/field_colour.js +664 -0
- package/blocklySkini/blockly/core/field_dropdown.js +760 -0
- package/blocklySkini/blockly/core/field_image.js +286 -0
- package/blocklySkini/blockly/core/field_label.js +130 -0
- package/blocklySkini/blockly/core/field_label_serializable.js +69 -0
- package/blocklySkini/blockly/core/field_multilineinput.js +299 -0
- package/blocklySkini/blockly/core/field_number.js +317 -0
- package/blocklySkini/blockly/core/field_registry.js +66 -0
- package/blocklySkini/blockly/core/field_textinput.js +616 -0
- package/blocklySkini/blockly/core/field_variable.js +463 -0
- package/blocklySkini/blockly/core/flyout_base.js +1071 -0
- package/blocklySkini/blockly/core/flyout_button.js +325 -0
- package/blocklySkini/blockly/core/flyout_dragger.js +76 -0
- package/blocklySkini/blockly/core/flyout_horizontal.js +388 -0
- package/blocklySkini/blockly/core/flyout_vertical.js +397 -0
- package/blocklySkini/blockly/core/generator.js +482 -0
- package/blocklySkini/blockly/core/gesture.js +993 -0
- package/blocklySkini/blockly/core/grid.js +222 -0
- package/blocklySkini/blockly/core/icon.js +206 -0
- package/blocklySkini/blockly/core/inject.js +487 -0
- package/blocklySkini/blockly/core/input.js +296 -0
- package/blocklySkini/blockly/core/insertion_marker_manager.js +700 -0
- package/blocklySkini/blockly/core/interfaces/i_accessibility.js +72 -0
- package/blocklySkini/blockly/core/interfaces/i_bounded_element.js +31 -0
- package/blocklySkini/blockly/core/interfaces/i_bubble.js +83 -0
- package/blocklySkini/blockly/core/interfaces/i_connection_checker.js +94 -0
- package/blocklySkini/blockly/core/interfaces/i_contextmenu.js +26 -0
- package/blocklySkini/blockly/core/interfaces/i_copyable.js +40 -0
- package/blocklySkini/blockly/core/interfaces/i_deletable.js +27 -0
- package/blocklySkini/blockly/core/interfaces/i_deletearea.js +28 -0
- package/blocklySkini/blockly/core/interfaces/i_flyout.js +178 -0
- package/blocklySkini/blockly/core/interfaces/i_movable.js +27 -0
- package/blocklySkini/blockly/core/interfaces/i_registrable.js +22 -0
- package/blocklySkini/blockly/core/interfaces/i_registrable_field.js +31 -0
- package/blocklySkini/blockly/core/interfaces/i_selectable.js +43 -0
- package/blocklySkini/blockly/core/interfaces/i_styleable.js +33 -0
- package/blocklySkini/blockly/core/interfaces/i_toolbox.js +131 -0
- package/blocklySkini/blockly/core/interfaces/i_toolbox_item.js +148 -0
- package/blocklySkini/blockly/core/keyboard_nav/action.js +26 -0
- package/blocklySkini/blockly/core/keyboard_nav/ast_node.js +684 -0
- package/blocklySkini/blockly/core/keyboard_nav/basic_cursor.js +208 -0
- package/blocklySkini/blockly/core/keyboard_nav/cursor.js +170 -0
- package/blocklySkini/blockly/core/keyboard_nav/flyout_cursor.js +106 -0
- package/blocklySkini/blockly/core/keyboard_nav/key_map.js +190 -0
- package/blocklySkini/blockly/core/keyboard_nav/marker.js +120 -0
- package/blocklySkini/blockly/core/keyboard_nav/navigation.js +1084 -0
- package/blocklySkini/blockly/core/keyboard_nav/tab_navigate_cursor.js +48 -0
- package/blocklySkini/blockly/core/marker_manager.js +183 -0
- package/blocklySkini/blockly/core/menu.js +465 -0
- package/blocklySkini/blockly/core/menuitem.js +280 -0
- package/blocklySkini/blockly/core/msg.js +31 -0
- package/blocklySkini/blockly/core/mutator.js +555 -0
- package/blocklySkini/blockly/core/names.js +186 -0
- package/blocklySkini/blockly/core/options.js +365 -0
- package/blocklySkini/blockly/core/procedures.js +404 -0
- package/blocklySkini/blockly/core/registry.js +265 -0
- package/blocklySkini/blockly/core/rendered_connection.js +565 -0
- package/blocklySkini/blockly/core/renderers/common/block_rendering.js +81 -0
- package/blocklySkini/blockly/core/renderers/common/constants.js +1256 -0
- package/blocklySkini/blockly/core/renderers/common/debugger.js +431 -0
- package/blocklySkini/blockly/core/renderers/common/drawer.js +468 -0
- package/blocklySkini/blockly/core/renderers/common/i_path_object.js +151 -0
- package/blocklySkini/blockly/core/renderers/common/info.js +775 -0
- package/blocklySkini/blockly/core/renderers/common/marker_svg.js +687 -0
- package/blocklySkini/blockly/core/renderers/common/path_object.js +279 -0
- package/blocklySkini/blockly/core/renderers/common/renderer.js +301 -0
- package/blocklySkini/blockly/core/renderers/geras/constants.js +64 -0
- package/blocklySkini/blockly/core/renderers/geras/drawer.js +205 -0
- package/blocklySkini/blockly/core/renderers/geras/highlight_constants.js +311 -0
- package/blocklySkini/blockly/core/renderers/geras/highlighter.js +256 -0
- package/blocklySkini/blockly/core/renderers/geras/info.js +483 -0
- package/blocklySkini/blockly/core/renderers/geras/measurables/inputs.js +67 -0
- package/blocklySkini/blockly/core/renderers/geras/path_object.js +177 -0
- package/blocklySkini/blockly/core/renderers/geras/renderer.js +138 -0
- package/blocklySkini/blockly/core/renderers/measurables/base.js +44 -0
- package/blocklySkini/blockly/core/renderers/measurables/connections.js +114 -0
- package/blocklySkini/blockly/core/renderers/measurables/inputs.js +160 -0
- package/blocklySkini/blockly/core/renderers/measurables/row_elements.js +185 -0
- package/blocklySkini/blockly/core/renderers/measurables/rows.js +532 -0
- package/blocklySkini/blockly/core/renderers/measurables/types.js +349 -0
- package/blocklySkini/blockly/core/renderers/minimalist/constants.js +29 -0
- package/blocklySkini/blockly/core/renderers/minimalist/drawer.js +32 -0
- package/blocklySkini/blockly/core/renderers/minimalist/info.js +45 -0
- package/blocklySkini/blockly/core/renderers/minimalist/renderer.js +70 -0
- package/blocklySkini/blockly/core/renderers/thrasos/info.js +338 -0
- package/blocklySkini/blockly/core/renderers/thrasos/renderer.js +45 -0
- package/blocklySkini/blockly/core/renderers/zelos/constants.js +1002 -0
- package/blocklySkini/blockly/core/renderers/zelos/drawer.js +233 -0
- package/blocklySkini/blockly/core/renderers/zelos/info.js +587 -0
- package/blocklySkini/blockly/core/renderers/zelos/marker_svg.js +148 -0
- package/blocklySkini/blockly/core/renderers/zelos/measurables/inputs.js +47 -0
- package/blocklySkini/blockly/core/renderers/zelos/measurables/row_elements.js +37 -0
- package/blocklySkini/blockly/core/renderers/zelos/measurables/rows.js +108 -0
- package/blocklySkini/blockly/core/renderers/zelos/path_object.js +244 -0
- package/blocklySkini/blockly/core/renderers/zelos/renderer.js +130 -0
- package/blocklySkini/blockly/core/requires.js +84 -0
- package/blocklySkini/blockly/core/scrollbar.js +880 -0
- package/blocklySkini/blockly/core/theme/classic.js +87 -0
- package/blocklySkini/blockly/core/theme/dark.js +33 -0
- package/blocklySkini/blockly/core/theme/deuteranopia.js +104 -0
- package/blocklySkini/blockly/core/theme/highcontrast.js +119 -0
- package/blocklySkini/blockly/core/theme/modern.js +108 -0
- package/blocklySkini/blockly/core/theme/tritanopia.js +103 -0
- package/blocklySkini/blockly/core/theme/zelos.js +106 -0
- package/blocklySkini/blockly/core/theme.js +236 -0
- package/blocklySkini/blockly/core/theme_manager.js +197 -0
- package/blocklySkini/blockly/core/toolbox/category.js +690 -0
- package/blocklySkini/blockly/core/toolbox/collapsible_category.js +294 -0
- package/blocklySkini/blockly/core/toolbox/separator.js +123 -0
- package/blocklySkini/blockly/core/toolbox/toolbox.js +984 -0
- package/blocklySkini/blockly/core/toolbox/toolbox_item.js +145 -0
- package/blocklySkini/blockly/core/toolbox.js +943 -0
- package/blocklySkini/blockly/core/tooltip.js +387 -0
- package/blocklySkini/blockly/core/touch.js +255 -0
- package/blocklySkini/blockly/core/touch_gesture.js +325 -0
- package/blocklySkini/blockly/core/trashcan.js +661 -0
- package/blocklySkini/blockly/core/ui_events.js +85 -0
- package/blocklySkini/blockly/core/utils/aria.js +167 -0
- package/blocklySkini/blockly/core/utils/colour.js +208 -0
- package/blocklySkini/blockly/core/utils/coordinate.js +125 -0
- package/blocklySkini/blockly/core/utils/deprecation.js +34 -0
- package/blocklySkini/blockly/core/utils/dom.js +391 -0
- package/blocklySkini/blockly/core/utils/global.js +37 -0
- package/blocklySkini/blockly/core/utils/idgenerator.js +33 -0
- package/blocklySkini/blockly/core/utils/keycodes.js +164 -0
- package/blocklySkini/blockly/core/utils/math.js +56 -0
- package/blocklySkini/blockly/core/utils/metrics.js +124 -0
- package/blocklySkini/blockly/core/utils/object.js +73 -0
- package/blocklySkini/blockly/core/utils/rect.js +54 -0
- package/blocklySkini/blockly/core/utils/size.js +58 -0
- package/blocklySkini/blockly/core/utils/string.js +284 -0
- package/blocklySkini/blockly/core/utils/style.js +281 -0
- package/blocklySkini/blockly/core/utils/svg.js +181 -0
- package/blocklySkini/blockly/core/utils/svg_paths.js +142 -0
- package/blocklySkini/blockly/core/utils/toolbox.js +401 -0
- package/blocklySkini/blockly/core/utils/useragent.js +110 -0
- package/blocklySkini/blockly/core/utils/xml.js +79 -0
- package/blocklySkini/blockly/core/utils.js +652 -0
- package/blocklySkini/blockly/core/variable_events.js +248 -0
- package/blocklySkini/blockly/core/variable_map.js +414 -0
- package/blocklySkini/blockly/core/variable_model.js +95 -0
- package/blocklySkini/blockly/core/variables.js +571 -0
- package/blocklySkini/blockly/core/variables_dynamic.js +100 -0
- package/blocklySkini/blockly/core/warning.js +200 -0
- package/blocklySkini/blockly/core/widgetdiv.js +241 -0
- package/blocklySkini/blockly/core/workspace.js +786 -0
- package/blocklySkini/blockly/core/workspace_audio.js +153 -0
- package/blocklySkini/blockly/core/workspace_comment.js +373 -0
- package/blocklySkini/blockly/core/workspace_comment_render_svg.js +461 -0
- package/blocklySkini/blockly/core/workspace_comment_svg.js +701 -0
- package/blocklySkini/blockly/core/workspace_drag_surface_svg.js +176 -0
- package/blocklySkini/blockly/core/workspace_dragger.js +85 -0
- package/blocklySkini/blockly/core/workspace_events.js +93 -0
- package/blocklySkini/blockly/core/workspace_svg.js +2661 -0
- package/blocklySkini/blockly/core/ws_comment_events.js +417 -0
- package/blocklySkini/blockly/core/xml.js +827 -0
- package/blocklySkini/blockly/core/zoom_controls.js +449 -0
- package/blocklySkini/blockly/core-browser.js +34 -0
- package/blocklySkini/blockly/core.d.ts +15 -0
- package/blocklySkini/blockly/core.js +38 -0
- package/blocklySkini/blockly/dart.d.ts +15 -0
- package/blocklySkini/blockly/dart.js +27 -0
- package/blocklySkini/blockly/dart_compressed.js +114 -0
- package/blocklySkini/blockly/dart_compressed.js.map +1 -0
- package/blocklySkini/blockly/generators/dart/colour.js +114 -0
- package/blocklySkini/blockly/generators/dart/lists.js +447 -0
- package/blocklySkini/blockly/generators/dart/logic.js +127 -0
- package/blocklySkini/blockly/generators/dart/loops.js +169 -0
- package/blocklySkini/blockly/generators/dart/math.js +485 -0
- package/blocklySkini/blockly/generators/dart/procedures.js +111 -0
- package/blocklySkini/blockly/generators/dart/text.js +339 -0
- package/blocklySkini/blockly/generators/dart/variables.js +32 -0
- package/blocklySkini/blockly/generators/dart/variables_dynamic.js +21 -0
- package/blocklySkini/blockly/generators/dart.js +290 -0
- package/blocklySkini/blockly/generators/javascript/colour.js +89 -0
- package/blocklySkini/blockly/generators/javascript/lists.js +388 -0
- package/blocklySkini/blockly/generators/javascript/logic.js +129 -0
- package/blocklySkini/blockly/generators/javascript/loops.js +184 -0
- package/blocklySkini/blockly/generators/javascript/math.js +409 -0
- package/blocklySkini/blockly/generators/javascript/procedures.js +113 -0
- package/blocklySkini/blockly/generators/javascript/text.js +367 -0
- package/blocklySkini/blockly/generators/javascript/variables.js +32 -0
- package/blocklySkini/blockly/generators/javascript/variables_dynamic.js +23 -0
- package/blocklySkini/blockly/generators/javascript.js +317 -0
- package/blocklySkini/blockly/generators/lua/colour.js +76 -0
- package/blocklySkini/blockly/generators/lua/lists.js +368 -0
- package/blocklySkini/blockly/generators/lua/logic.js +127 -0
- package/blocklySkini/blockly/generators/lua/loops.js +173 -0
- package/blocklySkini/blockly/generators/lua/math.js +423 -0
- package/blocklySkini/blockly/generators/lua/procedures.js +113 -0
- package/blocklySkini/blockly/generators/lua/text.js +353 -0
- package/blocklySkini/blockly/generators/lua/variables.js +32 -0
- package/blocklySkini/blockly/generators/lua/variables_dynamic.js +21 -0
- package/blocklySkini/blockly/generators/lua.js +198 -0
- package/blocklySkini/blockly/generators/php/colour.js +91 -0
- package/blocklySkini/blockly/generators/php/lists.js +498 -0
- package/blocklySkini/blockly/generators/php/logic.js +128 -0
- package/blocklySkini/blockly/generators/php/loops.js +170 -0
- package/blocklySkini/blockly/generators/php/math.js +370 -0
- package/blocklySkini/blockly/generators/php/procedures.js +132 -0
- package/blocklySkini/blockly/generators/php/text.js +271 -0
- package/blocklySkini/blockly/generators/php/variables.js +32 -0
- package/blocklySkini/blockly/generators/php/variables_dynamic.js +21 -0
- package/blocklySkini/blockly/generators/php.js +318 -0
- package/blocklySkini/blockly/generators/python/colour.js +72 -0
- package/blocklySkini/blockly/generators/python/lists.js +349 -0
- package/blocklySkini/blockly/generators/python/logic.js +127 -0
- package/blocklySkini/blockly/generators/python/loops.js +214 -0
- package/blocklySkini/blockly/generators/python/math.js +385 -0
- package/blocklySkini/blockly/generators/python/procedures.js +134 -0
- package/blocklySkini/blockly/generators/python/text.js +293 -0
- package/blocklySkini/blockly/generators/python/variables.js +32 -0
- package/blocklySkini/blockly/generators/python/variables_dynamic.js +21 -0
- package/blocklySkini/blockly/generators/python.js +322 -0
- package/blocklySkini/blockly/index.d.ts +22 -0
- package/blocklySkini/blockly/index.js +24 -0
- package/blocklySkini/blockly/javascript.d.ts +15 -0
- package/blocklySkini/blockly/javascript.js +27 -0
- package/blocklySkini/blockly/javascript_compressed.js +115 -0
- package/blocklySkini/blockly/javascript_compressed.js.map +1 -0
- package/blocklySkini/blockly/lua.d.ts +15 -0
- package/blocklySkini/blockly/lua.js +27 -0
- package/blocklySkini/blockly/lua_compressed.js +94 -0
- package/blocklySkini/blockly/lua_compressed.js.map +1 -0
- package/blocklySkini/blockly/media/1x1.gif +0 -0
- package/blocklySkini/blockly/media/click.mp3 +0 -0
- package/blocklySkini/blockly/media/click.ogg +0 -0
- package/blocklySkini/blockly/media/click.wav +0 -0
- package/blocklySkini/blockly/media/delete.mp3 +0 -0
- package/blocklySkini/blockly/media/delete.ogg +0 -0
- package/blocklySkini/blockly/media/delete.wav +0 -0
- package/blocklySkini/blockly/media/disconnect.mp3 +0 -0
- package/blocklySkini/blockly/media/disconnect.ogg +0 -0
- package/blocklySkini/blockly/media/disconnect.wav +0 -0
- package/blocklySkini/blockly/media/dropdown-arrow.svg +1 -0
- package/blocklySkini/blockly/media/handclosed.cur +0 -0
- package/blocklySkini/blockly/media/handdelete.cur +0 -0
- package/blocklySkini/blockly/media/handopen.cur +0 -0
- package/blocklySkini/blockly/media/pilcrow.png +0 -0
- package/blocklySkini/blockly/media/quote0.png +0 -0
- package/blocklySkini/blockly/media/quote1.png +0 -0
- package/blocklySkini/blockly/media/sprites.png +0 -0
- package/blocklySkini/blockly/media/sprites.svg +74 -0
- package/blocklySkini/blockly/msg/ab.d.ts +16 -0
- package/blocklySkini/blockly/msg/ab.js +447 -0
- package/blocklySkini/blockly/msg/ar.d.ts +16 -0
- package/blocklySkini/blockly/msg/ar.js +447 -0
- package/blocklySkini/blockly/msg/az.d.ts +16 -0
- package/blocklySkini/blockly/msg/az.js +447 -0
- package/blocklySkini/blockly/msg/ba.d.ts +16 -0
- package/blocklySkini/blockly/msg/ba.js +447 -0
- package/blocklySkini/blockly/msg/bcc.d.ts +16 -0
- package/blocklySkini/blockly/msg/bcc.js +447 -0
- package/blocklySkini/blockly/msg/be-tarask.d.ts +16 -0
- package/blocklySkini/blockly/msg/be-tarask.js +447 -0
- package/blocklySkini/blockly/msg/be.d.ts +16 -0
- package/blocklySkini/blockly/msg/be.js +447 -0
- package/blocklySkini/blockly/msg/bg.d.ts +16 -0
- package/blocklySkini/blockly/msg/bg.js +447 -0
- package/blocklySkini/blockly/msg/bn.d.ts +16 -0
- package/blocklySkini/blockly/msg/bn.js +447 -0
- package/blocklySkini/blockly/msg/br.d.ts +16 -0
- package/blocklySkini/blockly/msg/br.js +447 -0
- package/blocklySkini/blockly/msg/ca.d.ts +16 -0
- package/blocklySkini/blockly/msg/ca.js +447 -0
- package/blocklySkini/blockly/msg/constants.d.ts +16 -0
- package/blocklySkini/blockly/msg/cs.d.ts +16 -0
- package/blocklySkini/blockly/msg/cs.js +447 -0
- package/blocklySkini/blockly/msg/da.d.ts +16 -0
- package/blocklySkini/blockly/msg/da.js +447 -0
- package/blocklySkini/blockly/msg/de.d.ts +16 -0
- package/blocklySkini/blockly/msg/de.js +447 -0
- package/blocklySkini/blockly/msg/diq.d.ts +16 -0
- package/blocklySkini/blockly/msg/diq.js +447 -0
- package/blocklySkini/blockly/msg/dty.d.ts +16 -0
- package/blocklySkini/blockly/msg/dty.js +447 -0
- package/blocklySkini/blockly/msg/ee.d.ts +16 -0
- package/blocklySkini/blockly/msg/ee.js +447 -0
- package/blocklySkini/blockly/msg/el.d.ts +16 -0
- package/blocklySkini/blockly/msg/el.js +447 -0
- package/blocklySkini/blockly/msg/en-gb.d.ts +16 -0
- package/blocklySkini/blockly/msg/en-gb.js +447 -0
- package/blocklySkini/blockly/msg/en.d.ts +16 -0
- package/blocklySkini/blockly/msg/en.js +447 -0
- package/blocklySkini/blockly/msg/eo.d.ts +16 -0
- package/blocklySkini/blockly/msg/eo.js +447 -0
- package/blocklySkini/blockly/msg/es.d.ts +16 -0
- package/blocklySkini/blockly/msg/es.js +447 -0
- package/blocklySkini/blockly/msg/et.d.ts +16 -0
- package/blocklySkini/blockly/msg/et.js +447 -0
- package/blocklySkini/blockly/msg/eu.d.ts +16 -0
- package/blocklySkini/blockly/msg/eu.js +447 -0
- package/blocklySkini/blockly/msg/fa.d.ts +16 -0
- package/blocklySkini/blockly/msg/fa.js +447 -0
- package/blocklySkini/blockly/msg/fi.d.ts +16 -0
- package/blocklySkini/blockly/msg/fi.js +447 -0
- package/blocklySkini/blockly/msg/fr.d.ts +16 -0
- package/blocklySkini/blockly/msg/fr.js +447 -0
- package/blocklySkini/blockly/msg/gl.d.ts +16 -0
- package/blocklySkini/blockly/msg/gl.js +447 -0
- package/blocklySkini/blockly/msg/gor.d.ts +16 -0
- package/blocklySkini/blockly/msg/gor.js +447 -0
- package/blocklySkini/blockly/msg/ha.d.ts +16 -0
- package/blocklySkini/blockly/msg/ha.js +447 -0
- package/blocklySkini/blockly/msg/he.d.ts +16 -0
- package/blocklySkini/blockly/msg/he.js +447 -0
- package/blocklySkini/blockly/msg/hi.d.ts +16 -0
- package/blocklySkini/blockly/msg/hi.js +447 -0
- package/blocklySkini/blockly/msg/hrx.d.ts +16 -0
- package/blocklySkini/blockly/msg/hrx.js +447 -0
- package/blocklySkini/blockly/msg/hu.d.ts +16 -0
- package/blocklySkini/blockly/msg/hu.js +447 -0
- package/blocklySkini/blockly/msg/hy.d.ts +16 -0
- package/blocklySkini/blockly/msg/hy.js +447 -0
- package/blocklySkini/blockly/msg/ia.d.ts +16 -0
- package/blocklySkini/blockly/msg/ia.js +447 -0
- package/blocklySkini/blockly/msg/id.d.ts +16 -0
- package/blocklySkini/blockly/msg/id.js +447 -0
- package/blocklySkini/blockly/msg/ig.d.ts +16 -0
- package/blocklySkini/blockly/msg/ig.js +447 -0
- package/blocklySkini/blockly/msg/is.d.ts +16 -0
- package/blocklySkini/blockly/msg/is.js +447 -0
- package/blocklySkini/blockly/msg/it.d.ts +16 -0
- package/blocklySkini/blockly/msg/it.js +447 -0
- package/blocklySkini/blockly/msg/ja.d.ts +16 -0
- package/blocklySkini/blockly/msg/ja.js +447 -0
- package/blocklySkini/blockly/msg/kab.d.ts +16 -0
- package/blocklySkini/blockly/msg/kab.js +447 -0
- package/blocklySkini/blockly/msg/kn.d.ts +16 -0
- package/blocklySkini/blockly/msg/kn.js +447 -0
- package/blocklySkini/blockly/msg/ko.d.ts +16 -0
- package/blocklySkini/blockly/msg/ko.js +447 -0
- package/blocklySkini/blockly/msg/lb.d.ts +16 -0
- package/blocklySkini/blockly/msg/lb.js +447 -0
- package/blocklySkini/blockly/msg/lki.d.ts +16 -0
- package/blocklySkini/blockly/msg/lki.js +447 -0
- package/blocklySkini/blockly/msg/lo.d.ts +16 -0
- package/blocklySkini/blockly/msg/lo.js +447 -0
- package/blocklySkini/blockly/msg/lrc.d.ts +16 -0
- package/blocklySkini/blockly/msg/lrc.js +447 -0
- package/blocklySkini/blockly/msg/lt.d.ts +16 -0
- package/blocklySkini/blockly/msg/lt.js +447 -0
- package/blocklySkini/blockly/msg/lv.d.ts +16 -0
- package/blocklySkini/blockly/msg/lv.js +447 -0
- package/blocklySkini/blockly/msg/mk.d.ts +16 -0
- package/blocklySkini/blockly/msg/mk.js +447 -0
- package/blocklySkini/blockly/msg/mnw.d.ts +16 -0
- package/blocklySkini/blockly/msg/mnw.js +447 -0
- package/blocklySkini/blockly/msg/ms.d.ts +16 -0
- package/blocklySkini/blockly/msg/ms.js +447 -0
- package/blocklySkini/blockly/msg/msg.d.ts +444 -0
- package/blocklySkini/blockly/msg/nb.d.ts +16 -0
- package/blocklySkini/blockly/msg/nb.js +447 -0
- package/blocklySkini/blockly/msg/nl.d.ts +16 -0
- package/blocklySkini/blockly/msg/nl.js +447 -0
- package/blocklySkini/blockly/msg/oc.d.ts +16 -0
- package/blocklySkini/blockly/msg/oc.js +447 -0
- package/blocklySkini/blockly/msg/pl.d.ts +16 -0
- package/blocklySkini/blockly/msg/pl.js +447 -0
- package/blocklySkini/blockly/msg/pms.d.ts +16 -0
- package/blocklySkini/blockly/msg/pms.js +447 -0
- package/blocklySkini/blockly/msg/pt-br.d.ts +16 -0
- package/blocklySkini/blockly/msg/pt-br.js +447 -0
- package/blocklySkini/blockly/msg/pt.d.ts +16 -0
- package/blocklySkini/blockly/msg/pt.js +447 -0
- package/blocklySkini/blockly/msg/qqq.d.ts +16 -0
- package/blocklySkini/blockly/msg/ro.d.ts +16 -0
- package/blocklySkini/blockly/msg/ro.js +447 -0
- package/blocklySkini/blockly/msg/ru.d.ts +16 -0
- package/blocklySkini/blockly/msg/ru.js +447 -0
- package/blocklySkini/blockly/msg/sc.d.ts +16 -0
- package/blocklySkini/blockly/msg/sc.js +447 -0
- package/blocklySkini/blockly/msg/sd.d.ts +16 -0
- package/blocklySkini/blockly/msg/sd.js +447 -0
- package/blocklySkini/blockly/msg/shn.d.ts +16 -0
- package/blocklySkini/blockly/msg/shn.js +447 -0
- package/blocklySkini/blockly/msg/sk.d.ts +16 -0
- package/blocklySkini/blockly/msg/sk.js +447 -0
- package/blocklySkini/blockly/msg/skr-arab.d.ts +16 -0
- package/blocklySkini/blockly/msg/skr-arab.js +447 -0
- package/blocklySkini/blockly/msg/sl.d.ts +16 -0
- package/blocklySkini/blockly/msg/sl.js +447 -0
- package/blocklySkini/blockly/msg/sq.d.ts +16 -0
- package/blocklySkini/blockly/msg/sq.js +447 -0
- package/blocklySkini/blockly/msg/sr-latn.d.ts +16 -0
- package/blocklySkini/blockly/msg/sr-latn.js +447 -0
- package/blocklySkini/blockly/msg/sr.d.ts +16 -0
- package/blocklySkini/blockly/msg/sr.js +447 -0
- package/blocklySkini/blockly/msg/sv.d.ts +16 -0
- package/blocklySkini/blockly/msg/sv.js +447 -0
- package/blocklySkini/blockly/msg/synonyms.d.ts +16 -0
- package/blocklySkini/blockly/msg/ta.d.ts +16 -0
- package/blocklySkini/blockly/msg/ta.js +447 -0
- package/blocklySkini/blockly/msg/tcy.d.ts +16 -0
- package/blocklySkini/blockly/msg/tcy.js +447 -0
- package/blocklySkini/blockly/msg/te.d.ts +16 -0
- package/blocklySkini/blockly/msg/te.js +447 -0
- package/blocklySkini/blockly/msg/th.d.ts +16 -0
- package/blocklySkini/blockly/msg/th.js +447 -0
- package/blocklySkini/blockly/msg/tl.d.ts +16 -0
- package/blocklySkini/blockly/msg/tl.js +447 -0
- package/blocklySkini/blockly/msg/tlh.d.ts +16 -0
- package/blocklySkini/blockly/msg/tlh.js +447 -0
- package/blocklySkini/blockly/msg/tr.d.ts +16 -0
- package/blocklySkini/blockly/msg/tr.js +447 -0
- package/blocklySkini/blockly/msg/ug-arab.d.ts +16 -0
- package/blocklySkini/blockly/msg/ug-arab.js +447 -0
- package/blocklySkini/blockly/msg/uk.d.ts +16 -0
- package/blocklySkini/blockly/msg/uk.js +447 -0
- package/blocklySkini/blockly/msg/ur.d.ts +16 -0
- package/blocklySkini/blockly/msg/ur.js +447 -0
- package/blocklySkini/blockly/msg/vi.d.ts +16 -0
- package/blocklySkini/blockly/msg/vi.js +447 -0
- package/blocklySkini/blockly/msg/xmf.d.ts +16 -0
- package/blocklySkini/blockly/msg/xmf.js +447 -0
- package/blocklySkini/blockly/msg/yo.d.ts +16 -0
- package/blocklySkini/blockly/msg/yo.js +447 -0
- package/blocklySkini/blockly/msg/zh-hans.d.ts +16 -0
- package/blocklySkini/blockly/msg/zh-hans.js +447 -0
- package/blocklySkini/blockly/msg/zh-hant.d.ts +16 -0
- package/blocklySkini/blockly/msg/zh-hant.js +447 -0
- package/blocklySkini/blockly/node.js +35 -0
- package/blocklySkini/blockly/package.json +84 -0
- package/blocklySkini/blockly/php.d.ts +15 -0
- package/blocklySkini/blockly/php.js +27 -0
- package/blocklySkini/blockly/php_compressed.js +103 -0
- package/blocklySkini/blockly/php_compressed.js.map +1 -0
- package/blocklySkini/blockly/python.d.ts +15 -0
- package/blocklySkini/blockly/python.js +27 -0
- package/blocklySkini/blockly/python_compressed.js +98 -0
- package/blocklySkini/blockly/python_compressed.js.map +1 -0
- package/blocklySkini/blocklySkini.html +81 -0
- package/blocklySkini/orchestrations/.xml +1 -0
- package/blocklySkini/orchestrations/BluesSkini-1.xml +231 -0
- package/blocklySkini/orchestrations/BluesSkini-2.xml +741 -0
- package/blocklySkini/orchestrations/BluesSkini-3.xml +731 -0
- package/blocklySkini/orchestrations/BluesSkini-4.xml +695 -0
- package/blocklySkini/orchestrations/BluesSkini-5.xml +731 -0
- package/blocklySkini/orchestrations/BluesSkini.xml +704 -0
- package/blocklySkini/orchestrations/FunkBitwig-1.xml +778 -0
- package/blocklySkini/orchestrations/FunkBitwig-2.xml +471 -0
- package/blocklySkini/orchestrations/JouerLeBonInstrument1-1.xml +784 -0
- package/blocklySkini/orchestrations/MajeurMineur-1.xml +638 -0
- package/blocklySkini/orchestrations/Opus5-3 - Copie.xml +1041 -0
- package/blocklySkini/orchestrations/Opus5-3.xml +1128 -0
- package/blocklySkini/orchestrations/Quatuor1-1.xml +357 -0
- package/blocklySkini/orchestrations/TechnoBitwig-1.xml +221 -0
- package/blocklySkini/orchestrations/TestBlockly.xml +497 -0
- package/blocklySkini/orchestrations/TestBlockly1.xml +500 -0
- package/blocklySkini/orchestrations/TestBlockly2.xml +792 -0
- package/blocklySkini/orchestrations/TestBlockly3-1.xml +1182 -0
- package/blocklySkini/orchestrations/TestBlockly3.xml +1251 -0
- package/blocklySkini/orchestrations/TestFunction.xml +143 -0
- package/blocklySkini/orchestrations/TestIf.xml +80 -0
- package/blocklySkini/orchestrations/TestLoop.xml +127 -0
- package/blocklySkini/orchestrations/TestOrchestration2.xml +460 -0
- package/blocklySkini/orchestrations/TestPrint.xml +70 -0
- package/blocklySkini/orchestrations/TestSubMod.xml +81 -0
- package/blocklySkini/orchestrations/Testlogic.xml +113 -0
- package/blocklySkini/orchestrations/TrouveLaPercu-1.xml +813 -0
- package/blocklySkini/orchestrations/TrouveLaPercu-2.xml +813 -0
- package/blocklySkini/orchestrations/bar.xml +496 -0
- package/blocklySkini/orchestrations/bar2.xml +496 -0
- package/blocklySkini/orchestrations/foo.xml +500 -0
- package/blocklySkini/orchestrations/opus5Blockly - Copie.xml +496 -0
- package/blocklySkini/orchestrations/opus5Blockly-3.xml +868 -0
- package/blocklySkini/orchestrations/opus5Blockly.xml +496 -0
- package/blocklySkini/orchestrations/testOrchestration3.xml +483 -0
- package/blocklySkini/orchestrations/testOrchestration4.xml +487 -0
- package/blocklySkini/scripts/hiphop_blocks.js +6104 -0
- package/blocklySkini/scripts/main2.js +801 -0
- package/blocklySkini/styles/index.css +320 -0
- package/blocklySkini/styles/material.css +11552 -0
- package/package.json +5 -5
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
// Do not edit this file; automatically generated by gulp.
|
|
2
|
+
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
;(function(root, factory) {
|
|
5
|
+
if (typeof define === 'function' && define.amd) { // AMD
|
|
6
|
+
define(['./blockly_compressed.js'], factory);
|
|
7
|
+
} else if (typeof exports === 'object') { // Node.js
|
|
8
|
+
module.exports = factory(require('./blockly_compressed.js'));
|
|
9
|
+
} else { // Browser
|
|
10
|
+
root.Blockly.Dart = factory(root.Blockly);
|
|
11
|
+
}
|
|
12
|
+
}(this, function(Blockly) {
|
|
13
|
+
'use strict';Blockly.Dart=new Blockly.Generator("Dart");Blockly.Dart.addReservedWords("assert,break,case,catch,class,const,continue,default,do,else,enum,extends,false,final,finally,for,if,in,is,new,null,rethrow,return,super,switch,this,throw,true,try,var,void,while,with,print,identityHashCode,identical,BidirectionalIterator,Comparable,double,Function,int,Invocation,Iterable,Iterator,List,Map,Match,num,Pattern,RegExp,Set,StackTrace,String,StringSink,Type,bool,DateTime,Deprecated,Duration,Expando,Null,Object,RuneIterator,Runes,Stopwatch,StringBuffer,Symbol,Uri,Comparator,AbstractClassInstantiationError,ArgumentError,AssertionError,CastError,ConcurrentModificationError,CyclicInitializationError,Error,Exception,FallThroughError,FormatException,IntegerDivisionByZeroException,NoSuchMethodError,NullThrownError,OutOfMemoryError,RangeError,StackOverflowError,StateError,TypeError,UnimplementedError,UnsupportedError");
|
|
14
|
+
Blockly.Dart.ORDER_ATOMIC=0;Blockly.Dart.ORDER_UNARY_POSTFIX=1;Blockly.Dart.ORDER_UNARY_PREFIX=2;Blockly.Dart.ORDER_MULTIPLICATIVE=3;Blockly.Dart.ORDER_ADDITIVE=4;Blockly.Dart.ORDER_SHIFT=5;Blockly.Dart.ORDER_BITWISE_AND=6;Blockly.Dart.ORDER_BITWISE_XOR=7;Blockly.Dart.ORDER_BITWISE_OR=8;Blockly.Dart.ORDER_RELATIONAL=9;Blockly.Dart.ORDER_EQUALITY=10;Blockly.Dart.ORDER_LOGICAL_AND=11;Blockly.Dart.ORDER_LOGICAL_OR=12;Blockly.Dart.ORDER_IF_NULL=13;Blockly.Dart.ORDER_CONDITIONAL=14;
|
|
15
|
+
Blockly.Dart.ORDER_CASCADE=15;Blockly.Dart.ORDER_ASSIGNMENT=16;Blockly.Dart.ORDER_NONE=99;
|
|
16
|
+
Blockly.Dart.init=function(a){Blockly.Dart.definitions_=Object.create(null);Blockly.Dart.functionNames_=Object.create(null);Blockly.Dart.variableDB_?Blockly.Dart.variableDB_.reset():Blockly.Dart.variableDB_=new Blockly.Names(Blockly.Dart.RESERVED_WORDS_);Blockly.Dart.variableDB_.setVariableMap(a.getVariableMap());for(var b=[],c=Blockly.Variables.allDeveloperVariables(a),d=0;d<c.length;d++)b.push(Blockly.Dart.variableDB_.getName(c[d],Blockly.Names.DEVELOPER_VARIABLE_TYPE));a=Blockly.Variables.allUsedVarModels(a);
|
|
17
|
+
for(d=0;d<a.length;d++)b.push(Blockly.Dart.variableDB_.getName(a[d].getId(),Blockly.VARIABLE_CATEGORY_NAME));b.length&&(Blockly.Dart.definitions_.variables="var "+b.join(", ")+";")};
|
|
18
|
+
Blockly.Dart.finish=function(a){a&&(a=Blockly.Dart.prefixLines(a,Blockly.Dart.INDENT));a="main() {\n"+a+"}";var b=[],c=[],d;for(d in Blockly.Dart.definitions_){var e=Blockly.Dart.definitions_[d];e.match(/^import\s/)?b.push(e):c.push(e)}delete Blockly.Dart.definitions_;delete Blockly.Dart.functionNames_;Blockly.Dart.variableDB_.reset();return(b.join("\n")+"\n\n"+c.join("\n\n")).replace(/\n\n+/g,"\n\n").replace(/\n*$/,"\n\n\n")+a};Blockly.Dart.scrubNakedValue=function(a){return a+";\n"};
|
|
19
|
+
Blockly.Dart.quote_=function(a){a=a.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n").replace(/\$/g,"\\$").replace(/'/g,"\\'");return"'"+a+"'"};Blockly.Dart.multiline_quote_=function(a){return a.split(/\n/g).map(Blockly.Dart.quote_).join(" + '\\n' + \n")};
|
|
20
|
+
Blockly.Dart.scrub_=function(a,b,c){var d="";if(!a.outputConnection||!a.outputConnection.targetConnection){var e=a.getCommentText();e&&(e=Blockly.utils.string.wrap(e,Blockly.Dart.COMMENT_WRAP-3),d=a.getProcedureDef?d+Blockly.Dart.prefixLines(e+"\n","/// "):d+Blockly.Dart.prefixLines(e+"\n","// "));for(var f=0;f<a.inputList.length;f++)a.inputList[f].type==Blockly.INPUT_VALUE&&(e=a.inputList[f].connection.targetBlock())&&(e=Blockly.Dart.allNestedComments(e))&&(d+=Blockly.Dart.prefixLines(e,"// "))}a=
|
|
21
|
+
a.nextConnection&&a.nextConnection.targetBlock();c=c?"":Blockly.Dart.blockToCode(a);return d+b+c};
|
|
22
|
+
Blockly.Dart.getAdjusted=function(a,b,c,d,e){c=c||0;e=e||Blockly.Dart.ORDER_NONE;a.workspace.options.oneBasedIndex&&c--;var f=a.workspace.options.oneBasedIndex?"1":"0";a=c?Blockly.Dart.valueToCode(a,b,Blockly.Dart.ORDER_ADDITIVE)||f:d?Blockly.Dart.valueToCode(a,b,Blockly.Dart.ORDER_UNARY_PREFIX)||f:Blockly.Dart.valueToCode(a,b,e)||f;if(Blockly.isNumber(a))a=parseInt(a,10)+c,d&&(a=-a);else{if(0<c){a=a+" + "+c;var g=Blockly.Dart.ORDER_ADDITIVE}else 0>c&&(a=a+" - "+-c,g=Blockly.Dart.ORDER_ADDITIVE);
|
|
23
|
+
d&&(a=c?"-("+a+")":"-"+a,g=Blockly.Dart.ORDER_UNARY_PREFIX);g=Math.floor(g);e=Math.floor(e);g&&e>=g&&(a="("+a+")")}return a};Blockly.Dart.colour={};Blockly.Dart.addReservedWords("Math");Blockly.Dart.colour_picker=function(a){return[Blockly.Dart.quote_(a.getFieldValue("COLOUR")),Blockly.Dart.ORDER_ATOMIC]};
|
|
24
|
+
Blockly.Dart.colour_random=function(a){Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[Blockly.Dart.provideFunction_("colour_random",["String "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"() {"," String hex = '0123456789abcdef';"," var rnd = new Math.Random();"," return '#${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}'"," '${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}'"," '${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}';","}"])+"()",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
25
|
+
Blockly.Dart.colour_rgb=function(a){var b=Blockly.Dart.valueToCode(a,"RED",Blockly.Dart.ORDER_NONE)||0,c=Blockly.Dart.valueToCode(a,"GREEN",Blockly.Dart.ORDER_NONE)||0;a=Blockly.Dart.valueToCode(a,"BLUE",Blockly.Dart.ORDER_NONE)||0;Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[Blockly.Dart.provideFunction_("colour_rgb",["String "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(num r, num g, num b) {"," num rn = (Math.max(Math.min(r, 100), 0) * 2.55).round();"," String rs = rn.toInt().toRadixString(16);",
|
|
26
|
+
" rs = '0$rs';"," rs = rs.substring(rs.length - 2);"," num gn = (Math.max(Math.min(g, 100), 0) * 2.55).round();"," String gs = gn.toInt().toRadixString(16);"," gs = '0$gs';"," gs = gs.substring(gs.length - 2);"," num bn = (Math.max(Math.min(b, 100), 0) * 2.55).round();"," String bs = bn.toInt().toRadixString(16);"," bs = '0$bs';"," bs = bs.substring(bs.length - 2);"," return '#$rs$gs$bs';","}"])+"("+b+", "+c+", "+a+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
27
|
+
Blockly.Dart.colour_blend=function(a){var b=Blockly.Dart.valueToCode(a,"COLOUR1",Blockly.Dart.ORDER_NONE)||"'#000000'",c=Blockly.Dart.valueToCode(a,"COLOUR2",Blockly.Dart.ORDER_NONE)||"'#000000'";a=Blockly.Dart.valueToCode(a,"RATIO",Blockly.Dart.ORDER_NONE)||.5;Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[Blockly.Dart.provideFunction_("colour_blend",["String "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String c1, String c2, num ratio) {"," ratio = Math.max(Math.min(ratio, 1), 0);",
|
|
28
|
+
" int r1 = int.parse('0x${c1.substring(1, 3)}');"," int g1 = int.parse('0x${c1.substring(3, 5)}');"," int b1 = int.parse('0x${c1.substring(5, 7)}');"," int r2 = int.parse('0x${c2.substring(1, 3)}');"," int g2 = int.parse('0x${c2.substring(3, 5)}');"," int b2 = int.parse('0x${c2.substring(5, 7)}');"," num rn = (r1 * (1 - ratio) + r2 * ratio).round();"," String rs = rn.toInt().toRadixString(16);"," num gn = (g1 * (1 - ratio) + g2 * ratio).round();"," String gs = gn.toInt().toRadixString(16);",
|
|
29
|
+
" num bn = (b1 * (1 - ratio) + b2 * ratio).round();"," String bs = bn.toInt().toRadixString(16);"," rs = '0$rs';"," rs = rs.substring(rs.length - 2);"," gs = '0$gs';"," gs = gs.substring(gs.length - 2);"," bs = '0$bs';"," bs = bs.substring(bs.length - 2);"," return '#$rs$gs$bs';","}"])+"("+b+", "+c+", "+a+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.lists={};Blockly.Dart.addReservedWords("Math");Blockly.Dart.lists_create_empty=function(a){return["[]",Blockly.Dart.ORDER_ATOMIC]};Blockly.Dart.lists_create_with=function(a){for(var b=Array(a.itemCount_),c=0;c<a.itemCount_;c++)b[c]=Blockly.Dart.valueToCode(a,"ADD"+c,Blockly.Dart.ORDER_NONE)||"null";return["["+b.join(", ")+"]",Blockly.Dart.ORDER_ATOMIC]};
|
|
30
|
+
Blockly.Dart.lists_repeat=function(a){var b=Blockly.Dart.valueToCode(a,"ITEM",Blockly.Dart.ORDER_NONE)||"null";return["new List.filled("+(Blockly.Dart.valueToCode(a,"NUM",Blockly.Dart.ORDER_NONE)||"0")+", "+b+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.lists_length=function(a){return[(Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]")+".length",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
31
|
+
Blockly.Dart.lists_isEmpty=function(a){return[(Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]")+".isEmpty",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
32
|
+
Blockly.Dart.lists_indexOf=function(a){var b="FIRST"==a.getFieldValue("END")?"indexOf":"lastIndexOf",c=Blockly.Dart.valueToCode(a,"FIND",Blockly.Dart.ORDER_NONE)||"''";b=(Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]")+"."+b+"("+c+")";return a.workspace.options.oneBasedIndex?[b+" + 1",Blockly.Dart.ORDER_ADDITIVE]:[b,Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
33
|
+
Blockly.Dart.lists_getIndex=function(a){function b(){var f=Blockly.Dart.variableDB_.getDistinctName("tmp_list",Blockly.VARIABLE_CATEGORY_NAME),g="List "+f+" = "+e+";\n";e=f;return g}var c=a.getFieldValue("MODE")||"GET",d=a.getFieldValue("WHERE")||"FROM_START",e=Blockly.Dart.valueToCode(a,"VALUE","RANDOM"==d||"FROM_END"==d?Blockly.Dart.ORDER_NONE:Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]";if(("RANDOM"!=d||"REMOVE"!=c)&&"FROM_END"!=d||e.match(/^\w+$/))switch(d){case "FIRST":if("GET"==c)return[e+".first",
|
|
34
|
+
Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"==c)return[e+".removeAt(0)",Blockly.Dart.ORDER_UNARY_POSTFIX];if("REMOVE"==c)return e+".removeAt(0);\n";break;case "LAST":if("GET"==c)return[e+".last",Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"==c)return[e+".removeLast()",Blockly.Dart.ORDER_UNARY_POSTFIX];if("REMOVE"==c)return e+".removeLast();\n";break;case "FROM_START":d=Blockly.Dart.getAdjusted(a,"AT");if("GET"==c)return[e+"["+d+"]",Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"==c)return[e+
|
|
35
|
+
".removeAt("+d+")",Blockly.Dart.ORDER_UNARY_POSTFIX];if("REMOVE"==c)return e+".removeAt("+d+");\n";break;case "FROM_END":d=Blockly.Dart.getAdjusted(a,"AT",1,!1,Blockly.Dart.ORDER_ADDITIVE);if("GET"==c)return[e+"["+e+".length - "+d+"]",Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"==c||"REMOVE"==c){a=e+".removeAt("+e+".length - "+d+")";if("GET_REMOVE"==c)return[a,Blockly.Dart.ORDER_UNARY_POSTFIX];if("REMOVE"==c)return a+";\n"}break;case "RANDOM":Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";
|
|
36
|
+
if("REMOVE"==c)return c=Blockly.Dart.variableDB_.getDistinctName("tmp_x",Blockly.VARIABLE_CATEGORY_NAME),"int "+c+" = new Math.Random().nextInt("+e+".length);\n"+(e+".removeAt("+c+");\n");if("GET"==c)return c=Blockly.Dart.provideFunction_("lists_get_random_item",["dynamic "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list) {"," int x = new Math.Random().nextInt(my_list.length);"," return my_list[x];","}"]),[c+"("+e+")",Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"==c)return c=Blockly.Dart.provideFunction_("lists_remove_random_item",
|
|
37
|
+
["dynamic "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list) {"," int x = new Math.Random().nextInt(my_list.length);"," return my_list.removeAt(x);","}"]),[c+"("+e+")",Blockly.Dart.ORDER_UNARY_POSTFIX]}else{if("RANDOM"==d)return Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",a=b(),c=Blockly.Dart.variableDB_.getDistinctName("tmp_x",Blockly.VARIABLE_CATEGORY_NAME),a+("int "+c+" = new Math.Random().nextInt("+e+".length);\n")+(e+".removeAt("+c+");\n");if("REMOVE"==c)return d=
|
|
38
|
+
Blockly.Dart.getAdjusted(a,"AT",1,!1,Blockly.Dart.ORDER_ADDITIVE),a=b(),a+=e+".removeAt("+e+".length - "+d+");\n";if("GET"==c)return d=Blockly.Dart.getAdjusted(a,"AT",1),c=Blockly.Dart.provideFunction_("lists_get_from_end",["dynamic "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list, num x) {"," x = my_list.length - x;"," return my_list[x];","}"]),[c+"("+e+", "+d+")",Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"==c)return d=Blockly.Dart.getAdjusted(a,"AT",1),c=Blockly.Dart.provideFunction_("lists_remove_from_end",
|
|
39
|
+
["dynamic "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list, num x) {"," x = my_list.length - x;"," return my_list.removeAt(x);","}"]),[c+"("+e+", "+d+")",Blockly.Dart.ORDER_UNARY_POSTFIX]}throw Error("Unhandled combination (lists_getIndex).");};
|
|
40
|
+
Blockly.Dart.lists_setIndex=function(a){function b(){if(e.match(/^\w+$/))return"";var g=Blockly.Dart.variableDB_.getDistinctName("tmp_list",Blockly.VARIABLE_CATEGORY_NAME),k="List "+g+" = "+e+";\n";e=g;return k}var c=a.getFieldValue("MODE")||"GET",d=a.getFieldValue("WHERE")||"FROM_START",e=Blockly.Dart.valueToCode(a,"LIST",Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]",f=Blockly.Dart.valueToCode(a,"TO",Blockly.Dart.ORDER_ASSIGNMENT)||"null";switch(d){case "FIRST":if("SET"==c)return e+"[0] = "+f+";\n";if("INSERT"==
|
|
41
|
+
c)return e+".insert(0, "+f+");\n";break;case "LAST":if("SET"==c)return a=b(),a+(e+"["+e+".length - 1] = "+f+";\n");if("INSERT"==c)return e+".add("+f+");\n";break;case "FROM_START":d=Blockly.Dart.getAdjusted(a,"AT");if("SET"==c)return e+"["+d+"] = "+f+";\n";if("INSERT"==c)return e+".insert("+d+", "+f+");\n";break;case "FROM_END":d=Blockly.Dart.getAdjusted(a,"AT",1,!1,Blockly.Dart.ORDER_ADDITIVE);a=b();if("SET"==c)return a+(e+"["+e+".length - "+d+"] = "+f+";\n");if("INSERT"==c)return a+(e+".insert("+
|
|
42
|
+
e+".length - "+d+", "+f+");\n");break;case "RANDOM":Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";a=b();d=Blockly.Dart.variableDB_.getDistinctName("tmp_x",Blockly.VARIABLE_CATEGORY_NAME);a+="int "+d+" = new Math.Random().nextInt("+e+".length);\n";if("SET"==c)return a+(e+"["+d+"] = "+f+";\n");if("INSERT"==c)return a+(e+".insert("+d+", "+f+");\n")}throw Error("Unhandled combination (lists_setIndex).");};
|
|
43
|
+
Blockly.Dart.lists_getSublist=function(a){var b=Blockly.Dart.valueToCode(a,"LIST",Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]",c=a.getFieldValue("WHERE1"),d=a.getFieldValue("WHERE2");if(b.match(/^\w+$/)||"FROM_END"!=c&&"FROM_START"==d){switch(c){case "FROM_START":var e=Blockly.Dart.getAdjusted(a,"AT1");break;case "FROM_END":e=Blockly.Dart.getAdjusted(a,"AT1",1,!1,Blockly.Dart.ORDER_ADDITIVE);e=b+".length - "+e;break;case "FIRST":e="0";break;default:throw Error("Unhandled option (lists_getSublist).");}switch(d){case "FROM_START":var f=
|
|
44
|
+
Blockly.Dart.getAdjusted(a,"AT2",1);break;case "FROM_END":f=Blockly.Dart.getAdjusted(a,"AT2",0,!1,Blockly.Dart.ORDER_ADDITIVE);f=b+".length - "+f;break;case "LAST":break;default:throw Error("Unhandled option (lists_getSublist).");}a="LAST"==d?b+".sublist("+e+")":b+".sublist("+e+", "+f+")"}else e=Blockly.Dart.getAdjusted(a,"AT1"),f=Blockly.Dart.getAdjusted(a,"AT2"),a=Blockly.Dart.provideFunction_("lists_get_sublist",["List "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List list, String where1, num at1, String where2, num at2) {",
|
|
45
|
+
" int getAt(String where, num at) {"," if (where == 'FROM_END') {"," at = list.length - 1 - at;"," } else if (where == 'FIRST') {"," at = 0;"," } else if (where == 'LAST') {"," at = list.length - 1;"," } else if (where != 'FROM_START') {"," throw 'Unhandled option (lists_getSublist).';"," }"," return at;"," }"," at1 = getAt(where1, at1);"," at2 = getAt(where2, at2) + 1;"," return list.sublist(at1, at2);","}"])+"("+b+", '"+c+"', "+e+", '"+d+"', "+f+")";return[a,
|
|
46
|
+
Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
47
|
+
Blockly.Dart.lists_sort=function(a){var b=Blockly.Dart.valueToCode(a,"LIST",Blockly.Dart.ORDER_NONE)||"[]",c="1"===a.getFieldValue("DIRECTION")?1:-1;a=a.getFieldValue("TYPE");return[Blockly.Dart.provideFunction_("lists_sort",["List "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List list, String type, int direction) {"," var compareFuncs = {",' "NUMERIC": (a, b) => (direction * a.compareTo(b)).toInt(),',' "TEXT": (a, b) => direction * a.toString().compareTo(b.toString()),',' "IGNORE_CASE": ',
|
|
48
|
+
" (a, b) => direction * "," a.toString().toLowerCase().compareTo(b.toString().toLowerCase())"," };"," list = new List.from(list);"," var compare = compareFuncs[type];"," list.sort(compare);"," return list;","}"])+"("+b+', "'+a+'", '+c+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
49
|
+
Blockly.Dart.lists_split=function(a){var b=Blockly.Dart.valueToCode(a,"INPUT",Blockly.Dart.ORDER_UNARY_POSTFIX),c=Blockly.Dart.valueToCode(a,"DELIM",Blockly.Dart.ORDER_NONE)||"''";a=a.getFieldValue("MODE");if("SPLIT"==a)b||(b="''"),a="split";else if("JOIN"==a)b||(b="[]"),a="join";else throw Error("Unknown mode: "+a);return[b+"."+a+"("+c+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
50
|
+
Blockly.Dart.lists_reverse=function(a){return["new List.from("+(Blockly.Dart.valueToCode(a,"LIST",Blockly.Dart.ORDER_NONE)||"[]")+".reversed)",Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.logic={};
|
|
51
|
+
Blockly.Dart.controls_if=function(a){var b=0,c="";Blockly.Dart.STATEMENT_PREFIX&&(c+=Blockly.Dart.injectId(Blockly.Dart.STATEMENT_PREFIX,a));do{var d=Blockly.Dart.valueToCode(a,"IF"+b,Blockly.Dart.ORDER_NONE)||"false";var e=Blockly.Dart.statementToCode(a,"DO"+b);Blockly.Dart.STATEMENT_SUFFIX&&(e=Blockly.Dart.prefixLines(Blockly.Dart.injectId(Blockly.Dart.STATEMENT_SUFFIX,a),Blockly.Dart.INDENT)+e);c+=(0<b?"else ":"")+"if ("+d+") {\n"+e+"}";++b}while(a.getInput("IF"+b));if(a.getInput("ELSE")||Blockly.Dart.STATEMENT_SUFFIX)e=
|
|
52
|
+
Blockly.Dart.statementToCode(a,"ELSE"),Blockly.Dart.STATEMENT_SUFFIX&&(e=Blockly.Dart.prefixLines(Blockly.Dart.injectId(Blockly.Dart.STATEMENT_SUFFIX,a),Blockly.Dart.INDENT)+e),c+=" else {\n"+e+"}";return c+"\n"};Blockly.Dart.controls_ifelse=Blockly.Dart.controls_if;
|
|
53
|
+
Blockly.Dart.logic_compare=function(a){var b={EQ:"==",NEQ:"!=",LT:"<",LTE:"<=",GT:">",GTE:">="}[a.getFieldValue("OP")],c="=="==b||"!="==b?Blockly.Dart.ORDER_EQUALITY:Blockly.Dart.ORDER_RELATIONAL,d=Blockly.Dart.valueToCode(a,"A",c)||"0";a=Blockly.Dart.valueToCode(a,"B",c)||"0";return[d+" "+b+" "+a,c]};
|
|
54
|
+
Blockly.Dart.logic_operation=function(a){var b="AND"==a.getFieldValue("OP")?"&&":"||",c="&&"==b?Blockly.Dart.ORDER_LOGICAL_AND:Blockly.Dart.ORDER_LOGICAL_OR,d=Blockly.Dart.valueToCode(a,"A",c);a=Blockly.Dart.valueToCode(a,"B",c);if(d||a){var e="&&"==b?"true":"false";d||(d=e);a||(a=e)}else a=d="false";return[d+" "+b+" "+a,c]};Blockly.Dart.logic_negate=function(a){var b=Blockly.Dart.ORDER_UNARY_PREFIX;return["!"+(Blockly.Dart.valueToCode(a,"BOOL",b)||"true"),b]};
|
|
55
|
+
Blockly.Dart.logic_boolean=function(a){return["TRUE"==a.getFieldValue("BOOL")?"true":"false",Blockly.Dart.ORDER_ATOMIC]};Blockly.Dart.logic_null=function(a){return["null",Blockly.Dart.ORDER_ATOMIC]};Blockly.Dart.logic_ternary=function(a){var b=Blockly.Dart.valueToCode(a,"IF",Blockly.Dart.ORDER_CONDITIONAL)||"false",c=Blockly.Dart.valueToCode(a,"THEN",Blockly.Dart.ORDER_CONDITIONAL)||"null";a=Blockly.Dart.valueToCode(a,"ELSE",Blockly.Dart.ORDER_CONDITIONAL)||"null";return[b+" ? "+c+" : "+a,Blockly.Dart.ORDER_CONDITIONAL]};Blockly.Dart.loops={};
|
|
56
|
+
Blockly.Dart.controls_repeat_ext=function(a){var b=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):Blockly.Dart.valueToCode(a,"TIMES",Blockly.Dart.ORDER_ASSIGNMENT)||"0",c=Blockly.Dart.statementToCode(a,"DO");c=Blockly.Dart.addLoopTrap(c,a);a="";var d=Blockly.Dart.variableDB_.getDistinctName("count",Blockly.VARIABLE_CATEGORY_NAME),e=b;b.match(/^\w+$/)||Blockly.isNumber(b)||(e=Blockly.Dart.variableDB_.getDistinctName("repeat_end",Blockly.VARIABLE_CATEGORY_NAME),a+="var "+e+" = "+b+";\n");
|
|
57
|
+
return a+("for (int "+d+" = 0; "+d+" < "+e+"; "+d+"++) {\n"+c+"}\n")};Blockly.Dart.controls_repeat=Blockly.Dart.controls_repeat_ext;Blockly.Dart.controls_whileUntil=function(a){var b="UNTIL"==a.getFieldValue("MODE"),c=Blockly.Dart.valueToCode(a,"BOOL",b?Blockly.Dart.ORDER_UNARY_PREFIX:Blockly.Dart.ORDER_NONE)||"false",d=Blockly.Dart.statementToCode(a,"DO");d=Blockly.Dart.addLoopTrap(d,a);b&&(c="!"+c);return"while ("+c+") {\n"+d+"}\n"};
|
|
58
|
+
Blockly.Dart.controls_for=function(a){var b=Blockly.Dart.variableDB_.getName(a.getFieldValue("VAR"),Blockly.VARIABLE_CATEGORY_NAME),c=Blockly.Dart.valueToCode(a,"FROM",Blockly.Dart.ORDER_ASSIGNMENT)||"0",d=Blockly.Dart.valueToCode(a,"TO",Blockly.Dart.ORDER_ASSIGNMENT)||"0",e=Blockly.Dart.valueToCode(a,"BY",Blockly.Dart.ORDER_ASSIGNMENT)||"1",f=Blockly.Dart.statementToCode(a,"DO");f=Blockly.Dart.addLoopTrap(f,a);if(Blockly.isNumber(c)&&Blockly.isNumber(d)&&Blockly.isNumber(e)){var g=Number(c)<=Number(d);
|
|
59
|
+
a="for ("+b+" = "+c+"; "+b+(g?" <= ":" >= ")+d+"; "+b;b=Math.abs(Number(e));a=(1==b?a+(g?"++":"--"):a+((g?" += ":" -= ")+b))+(") {\n"+f+"}\n")}else a="",g=c,c.match(/^\w+$/)||Blockly.isNumber(c)||(g=Blockly.Dart.variableDB_.getDistinctName(b+"_start",Blockly.VARIABLE_CATEGORY_NAME),a+="var "+g+" = "+c+";\n"),c=d,d.match(/^\w+$/)||Blockly.isNumber(d)||(c=Blockly.Dart.variableDB_.getDistinctName(b+"_end",Blockly.VARIABLE_CATEGORY_NAME),a+="var "+c+" = "+d+";\n"),d=Blockly.Dart.variableDB_.getDistinctName(b+
|
|
60
|
+
"_inc",Blockly.VARIABLE_CATEGORY_NAME),a+="num "+d+" = ",a=Blockly.isNumber(e)?a+(Math.abs(e)+";\n"):a+("("+e+").abs();\n"),a=a+("if ("+g+" > "+c+") {\n")+(Blockly.Dart.INDENT+d+" = -"+d+";\n"),a+="}\n",a+="for ("+b+" = "+g+"; "+d+" >= 0 ? "+b+" <= "+c+" : "+b+" >= "+c+"; "+b+" += "+d+") {\n"+f+"}\n";return a};
|
|
61
|
+
Blockly.Dart.controls_forEach=function(a){var b=Blockly.Dart.variableDB_.getName(a.getFieldValue("VAR"),Blockly.VARIABLE_CATEGORY_NAME),c=Blockly.Dart.valueToCode(a,"LIST",Blockly.Dart.ORDER_ASSIGNMENT)||"[]",d=Blockly.Dart.statementToCode(a,"DO");d=Blockly.Dart.addLoopTrap(d,a);return"for (var "+b+" in "+c+") {\n"+d+"}\n"};
|
|
62
|
+
Blockly.Dart.controls_flow_statements=function(a){var b="";Blockly.Dart.STATEMENT_PREFIX&&(b+=Blockly.Dart.injectId(Blockly.Dart.STATEMENT_PREFIX,a));Blockly.Dart.STATEMENT_SUFFIX&&(b+=Blockly.Dart.injectId(Blockly.Dart.STATEMENT_SUFFIX,a));if(Blockly.Dart.STATEMENT_PREFIX){var c=Blockly.Constants.Loops.CONTROL_FLOW_IN_LOOP_CHECK_MIXIN.getSurroundLoop(a);c&&!c.suppressPrefixSuffix&&(b+=Blockly.Dart.injectId(Blockly.Dart.STATEMENT_PREFIX,c))}switch(a.getFieldValue("FLOW")){case "BREAK":return b+"break;\n";
|
|
63
|
+
case "CONTINUE":return b+"continue;\n"}throw Error("Unknown flow statement.");};Blockly.Dart.math={};Blockly.Dart.addReservedWords("Math");Blockly.Dart.math_number=function(a){a=Number(a.getFieldValue("NUM"));if(Infinity==a){a="double.infinity";var b=Blockly.Dart.ORDER_UNARY_POSTFIX}else-Infinity==a?(a="-double.infinity",b=Blockly.Dart.ORDER_UNARY_PREFIX):b=0>a?Blockly.Dart.ORDER_UNARY_PREFIX:Blockly.Dart.ORDER_ATOMIC;return[a,b]};
|
|
64
|
+
Blockly.Dart.math_arithmetic=function(a){var b={ADD:[" + ",Blockly.Dart.ORDER_ADDITIVE],MINUS:[" - ",Blockly.Dart.ORDER_ADDITIVE],MULTIPLY:[" * ",Blockly.Dart.ORDER_MULTIPLICATIVE],DIVIDE:[" / ",Blockly.Dart.ORDER_MULTIPLICATIVE],POWER:[null,Blockly.Dart.ORDER_NONE]}[a.getFieldValue("OP")],c=b[0];b=b[1];var d=Blockly.Dart.valueToCode(a,"A",b)||"0";a=Blockly.Dart.valueToCode(a,"B",b)||"0";return c?[d+c+a,b]:(Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",["Math.pow("+d+", "+
|
|
65
|
+
a+")",Blockly.Dart.ORDER_UNARY_POSTFIX])};
|
|
66
|
+
Blockly.Dart.math_single=function(a){var b=a.getFieldValue("OP");if("NEG"==b)return a=Blockly.Dart.valueToCode(a,"NUM",Blockly.Dart.ORDER_UNARY_PREFIX)||"0","-"==a[0]&&(a=" "+a),["-"+a,Blockly.Dart.ORDER_UNARY_PREFIX];Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";a="ABS"==b||"ROUND"==b.substring(0,5)?Blockly.Dart.valueToCode(a,"NUM",Blockly.Dart.ORDER_UNARY_POSTFIX)||"0":"SIN"==b||"COS"==b||"TAN"==b?Blockly.Dart.valueToCode(a,"NUM",Blockly.Dart.ORDER_MULTIPLICATIVE)||"0":
|
|
67
|
+
Blockly.Dart.valueToCode(a,"NUM",Blockly.Dart.ORDER_NONE)||"0";switch(b){case "ABS":var c=a+".abs()";break;case "ROOT":c="Math.sqrt("+a+")";break;case "LN":c="Math.log("+a+")";break;case "EXP":c="Math.exp("+a+")";break;case "POW10":c="Math.pow(10,"+a+")";break;case "ROUND":c=a+".round()";break;case "ROUNDUP":c=a+".ceil()";break;case "ROUNDDOWN":c=a+".floor()";break;case "SIN":c="Math.sin("+a+" / 180 * Math.pi)";break;case "COS":c="Math.cos("+a+" / 180 * Math.pi)";break;case "TAN":c="Math.tan("+a+
|
|
68
|
+
" / 180 * Math.pi)"}if(c)return[c,Blockly.Dart.ORDER_UNARY_POSTFIX];switch(b){case "LOG10":c="Math.log("+a+") / Math.log(10)";break;case "ASIN":c="Math.asin("+a+") / Math.pi * 180";break;case "ACOS":c="Math.acos("+a+") / Math.pi * 180";break;case "ATAN":c="Math.atan("+a+") / Math.pi * 180";break;default:throw Error("Unknown math operator: "+b);}return[c,Blockly.Dart.ORDER_MULTIPLICATIVE]};
|
|
69
|
+
Blockly.Dart.math_constant=function(a){var b={PI:["Math.pi",Blockly.Dart.ORDER_UNARY_POSTFIX],E:["Math.e",Blockly.Dart.ORDER_UNARY_POSTFIX],GOLDEN_RATIO:["(1 + Math.sqrt(5)) / 2",Blockly.Dart.ORDER_MULTIPLICATIVE],SQRT2:["Math.sqrt2",Blockly.Dart.ORDER_UNARY_POSTFIX],SQRT1_2:["Math.sqrt1_2",Blockly.Dart.ORDER_UNARY_POSTFIX],INFINITY:["double.infinity",Blockly.Dart.ORDER_ATOMIC]};a=a.getFieldValue("CONSTANT");"INFINITY"!=a&&(Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;");
|
|
70
|
+
return b[a]};
|
|
71
|
+
Blockly.Dart.math_number_property=function(a){var b=Blockly.Dart.valueToCode(a,"NUMBER_TO_CHECK",Blockly.Dart.ORDER_MULTIPLICATIVE);if(!b)return["false",Blockly.Dart.ORDER_ATOMIC];var c=a.getFieldValue("PROPERTY");if("PRIME"==c)return Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",[Blockly.Dart.provideFunction_("math_isPrime",["bool "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(n) {"," // https://en.wikipedia.org/wiki/Primality_test#Naive_methods"," if (n == 2 || n == 3) {"," return true;",
|
|
72
|
+
" }"," // False if n is null, negative, is 1, or not whole."," // And false if n is divisible by 2 or 3."," if (n == null || n <= 1 || n % 1 != 0 || n % 2 == 0 || n % 3 == 0) {"," return false;"," }"," // Check all the numbers of form 6k +/- 1, up to sqrt(n)."," for (var x = 6; x <= Math.sqrt(n) + 1; x += 6) {"," if (n % (x - 1) == 0 || n % (x + 1) == 0) {"," return false;"," }"," }"," return true;","}"])+"("+b+")",Blockly.Dart.ORDER_UNARY_POSTFIX];switch(c){case "EVEN":var d=
|
|
73
|
+
b+" % 2 == 0";break;case "ODD":d=b+" % 2 == 1";break;case "WHOLE":d=b+" % 1 == 0";break;case "POSITIVE":d=b+" > 0";break;case "NEGATIVE":d=b+" < 0";break;case "DIVISIBLE_BY":a=Blockly.Dart.valueToCode(a,"DIVISOR",Blockly.Dart.ORDER_MULTIPLICATIVE);if(!a)return["false",Blockly.Dart.ORDER_ATOMIC];d=b+" % "+a+" == 0"}return[d,Blockly.Dart.ORDER_EQUALITY]};
|
|
74
|
+
Blockly.Dart.math_change=function(a){var b=Blockly.Dart.valueToCode(a,"DELTA",Blockly.Dart.ORDER_ADDITIVE)||"0";a=Blockly.Dart.variableDB_.getName(a.getFieldValue("VAR"),Blockly.VARIABLE_CATEGORY_NAME);return a+" = ("+a+" is num ? "+a+" : 0) + "+b+";\n"};Blockly.Dart.math_round=Blockly.Dart.math_single;Blockly.Dart.math_trig=Blockly.Dart.math_single;
|
|
75
|
+
Blockly.Dart.math_on_list=function(a){var b=a.getFieldValue("OP");a=Blockly.Dart.valueToCode(a,"LIST",Blockly.Dart.ORDER_NONE)||"[]";switch(b){case "SUM":b=Blockly.Dart.provideFunction_("math_sum",["num "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List<num> myList) {"," num sumVal = 0;"," myList.forEach((num entry) {sumVal += entry;});"," return sumVal;","}"]);b=b+"("+a+")";break;case "MIN":Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=Blockly.Dart.provideFunction_("math_min",
|
|
76
|
+
["num "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List<num> myList) {"," if (myList.isEmpty) return null;"," num minVal = myList[0];"," myList.forEach((num entry) {minVal = Math.min(minVal, entry);});"," return minVal;","}"]);b=b+"("+a+")";break;case "MAX":Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=Blockly.Dart.provideFunction_("math_max",["num "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List<num> myList) {"," if (myList.isEmpty) return null;"," num maxVal = myList[0];",
|
|
77
|
+
" myList.forEach((num entry) {maxVal = Math.max(maxVal, entry);});"," return maxVal;","}"]);b=b+"("+a+")";break;case "AVERAGE":b=Blockly.Dart.provideFunction_("math_mean",["num "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," // First filter list for numbers only."," List localList = new List.from(myList);"," localList.removeWhere((a) => a is! num);"," if (localList.isEmpty) return null;"," num sumVal = 0;"," localList.forEach((var entry) {sumVal += entry;});"," return sumVal / localList.length;",
|
|
78
|
+
"}"]);b=b+"("+a+")";break;case "MEDIAN":b=Blockly.Dart.provideFunction_("math_median",["num "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," // First filter list for numbers only, then sort, then return middle value"," // or the average of two middle values if list has an even number of elements."," List localList = new List.from(myList);"," localList.removeWhere((a) => a is! num);"," if (localList.isEmpty) return null;"," localList.sort((a, b) => (a - b));"," int index = localList.length ~/ 2;",
|
|
79
|
+
" if (localList.length % 2 == 1) {"," return localList[index];"," } else {"," return (localList[index - 1] + localList[index]) / 2;"," }","}"]);b=b+"("+a+")";break;case "MODE":Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=Blockly.Dart.provideFunction_("math_modes",["List "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List values) {"," List modes = [];"," List counts = [];"," int maxCount = 0;"," for (int i = 0; i < values.length; i++) {"," var value = values[i];",
|
|
80
|
+
" bool found = false;"," int thisCount;"," for (int j = 0; j < counts.length; j++) {"," if (counts[j][0] == value) {"," thisCount = ++counts[j][1];"," found = true;"," break;"," }"," }"," if (!found) {"," counts.add([value, 1]);"," thisCount = 1;"," }"," maxCount = Math.max(thisCount, maxCount);"," }"," for (int j = 0; j < counts.length; j++) {"," if (counts[j][1] == maxCount) {"," modes.add(counts[j][0]);"," }"," }"," return modes;",
|
|
81
|
+
"}"]);b=b+"("+a+")";break;case "STD_DEV":Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=Blockly.Dart.provideFunction_("math_standard_deviation",["num "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," // First filter list for numbers only."," List numbers = new List.from(myList);"," numbers.removeWhere((a) => a is! num);"," if (numbers.isEmpty) return null;"," num n = numbers.length;"," num sum = 0;"," numbers.forEach((x) => sum += x);"," num mean = sum / n;",
|
|
82
|
+
" num sumSquare = 0;"," numbers.forEach((x) => sumSquare += Math.pow(x - mean, 2));"," return Math.sqrt(sumSquare / n);","}"]);b=b+"("+a+")";break;case "RANDOM":Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=Blockly.Dart.provideFunction_("math_random_item",["dynamic "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," int x = new Math.Random().nextInt(myList.length);"," return myList[x];","}"]);b=b+"("+a+")";break;default:throw Error("Unknown operator: "+
|
|
83
|
+
b);}return[b,Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.math_modulo=function(a){var b=Blockly.Dart.valueToCode(a,"DIVIDEND",Blockly.Dart.ORDER_MULTIPLICATIVE)||"0";a=Blockly.Dart.valueToCode(a,"DIVISOR",Blockly.Dart.ORDER_MULTIPLICATIVE)||"0";return[b+" % "+a,Blockly.Dart.ORDER_MULTIPLICATIVE]};
|
|
84
|
+
Blockly.Dart.math_constrain=function(a){Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";var b=Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_NONE)||"0",c=Blockly.Dart.valueToCode(a,"LOW",Blockly.Dart.ORDER_NONE)||"0";a=Blockly.Dart.valueToCode(a,"HIGH",Blockly.Dart.ORDER_NONE)||"double.infinity";return["Math.min(Math.max("+b+", "+c+"), "+a+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
85
|
+
Blockly.Dart.math_random_int=function(a){Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";var b=Blockly.Dart.valueToCode(a,"FROM",Blockly.Dart.ORDER_NONE)||"0";a=Blockly.Dart.valueToCode(a,"TO",Blockly.Dart.ORDER_NONE)||"0";return[Blockly.Dart.provideFunction_("math_random_int",["int "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(num a, num b) {"," if (a > b) {"," // Swap a and b to ensure a is smaller."," num c = a;"," a = b;"," b = c;"," }"," return new Math.Random().nextInt(b - a + 1) + a;",
|
|
86
|
+
"}"])+"("+b+", "+a+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.math_random_float=function(a){Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return["new Math.Random().nextDouble()",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
87
|
+
Blockly.Dart.math_atan2=function(a){Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";var b=Blockly.Dart.valueToCode(a,"X",Blockly.Dart.ORDER_NONE)||"0";return["Math.atan2("+(Blockly.Dart.valueToCode(a,"Y",Blockly.Dart.ORDER_NONE)||"0")+", "+b+") / Math.pi * 180",Blockly.Dart.ORDER_MULTIPLICATIVE]};Blockly.Dart.procedures={};
|
|
88
|
+
Blockly.Dart.procedures_defreturn=function(a){var b=Blockly.Dart.variableDB_.getName(a.getFieldValue("NAME"),Blockly.PROCEDURE_CATEGORY_NAME),c="";Blockly.Dart.STATEMENT_PREFIX&&(c+=Blockly.Dart.injectId(Blockly.Dart.STATEMENT_PREFIX,a));Blockly.Dart.STATEMENT_SUFFIX&&(c+=Blockly.Dart.injectId(Blockly.Dart.STATEMENT_SUFFIX,a));c&&(c=Blockly.Dart.prefixLines(c,Blockly.Dart.INDENT));var d="";Blockly.Dart.INFINITE_LOOP_TRAP&&(d=Blockly.Dart.prefixLines(Blockly.Dart.injectId(Blockly.Dart.INFINITE_LOOP_TRAP,a),
|
|
89
|
+
Blockly.Dart.INDENT));var e=Blockly.Dart.statementToCode(a,"STACK"),f=Blockly.Dart.valueToCode(a,"RETURN",Blockly.Dart.ORDER_NONE)||"",g="";e&&f&&(g=c);f&&(f=Blockly.Dart.INDENT+"return "+f+";\n");for(var k=f?"dynamic":"void",l=[],m=a.getVars(),h=0;h<m.length;h++)l[h]=Blockly.Dart.variableDB_.getName(m[h],Blockly.VARIABLE_CATEGORY_NAME);c=k+" "+b+"("+l.join(", ")+") {\n"+c+d+e+g+f+"}";c=Blockly.Dart.scrub_(a,c);Blockly.Dart.definitions_["%"+b]=c;return null};Blockly.Dart.procedures_defnoreturn=Blockly.Dart.procedures_defreturn;
|
|
90
|
+
Blockly.Dart.procedures_callreturn=function(a){for(var b=Blockly.Dart.variableDB_.getName(a.getFieldValue("NAME"),Blockly.PROCEDURE_CATEGORY_NAME),c=[],d=a.getVars(),e=0;e<d.length;e++)c[e]=Blockly.Dart.valueToCode(a,"ARG"+e,Blockly.Dart.ORDER_NONE)||"null";return[b+"("+c.join(", ")+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.procedures_callnoreturn=function(a){return Blockly.Dart.procedures_callreturn(a)[0]+";\n"};
|
|
91
|
+
Blockly.Dart.procedures_ifreturn=function(a){var b="if ("+(Blockly.Dart.valueToCode(a,"CONDITION",Blockly.Dart.ORDER_NONE)||"false")+") {\n";Blockly.Dart.STATEMENT_SUFFIX&&(b+=Blockly.Dart.prefixLines(Blockly.Dart.injectId(Blockly.Dart.STATEMENT_SUFFIX,a),Blockly.Dart.INDENT));a.hasReturnValue_?(a=Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_NONE)||"null",b+=Blockly.Dart.INDENT+"return "+a+";\n"):b+=Blockly.Dart.INDENT+"return;\n";return b+"}\n"};Blockly.Dart.texts={};Blockly.Dart.addReservedWords("Html,Math");Blockly.Dart.text=function(a){return[Blockly.Dart.quote_(a.getFieldValue("TEXT")),Blockly.Dart.ORDER_ATOMIC]};Blockly.Dart.text_multiline=function(a){return[Blockly.Dart.multiline_quote_(a.getFieldValue("TEXT")),Blockly.Dart.ORDER_ATOMIC]};
|
|
92
|
+
Blockly.Dart.text_join=function(a){switch(a.itemCount_){case 0:return["''",Blockly.Dart.ORDER_ATOMIC];case 1:return[(Blockly.Dart.valueToCode(a,"ADD0",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+".toString()",Blockly.Dart.ORDER_UNARY_POSTFIX];default:for(var b=Array(a.itemCount_),c=0;c<a.itemCount_;c++)b[c]=Blockly.Dart.valueToCode(a,"ADD"+c,Blockly.Dart.ORDER_NONE)||"''";a="["+b.join(",")+"].join()";return[a,Blockly.Dart.ORDER_UNARY_POSTFIX]}};
|
|
93
|
+
Blockly.Dart.text_append=function(a){var b=Blockly.Dart.variableDB_.getName(a.getFieldValue("VAR"),Blockly.VARIABLE_CATEGORY_NAME);a=Blockly.Dart.valueToCode(a,"TEXT",Blockly.Dart.ORDER_NONE)||"''";return b+" = ["+b+", "+a+"].join();\n"};Blockly.Dart.text_length=function(a){return[(Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+".length",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
94
|
+
Blockly.Dart.text_isEmpty=function(a){return[(Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+".isEmpty",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
95
|
+
Blockly.Dart.text_indexOf=function(a){var b="FIRST"==a.getFieldValue("END")?"indexOf":"lastIndexOf",c=Blockly.Dart.valueToCode(a,"FIND",Blockly.Dart.ORDER_NONE)||"''";b=(Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+"."+b+"("+c+")";return a.workspace.options.oneBasedIndex?[b+" + 1",Blockly.Dart.ORDER_ADDITIVE]:[b,Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
96
|
+
Blockly.Dart.text_charAt=function(a){var b=a.getFieldValue("WHERE")||"FROM_START",c=Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''";switch(b){case "FIRST":return[c+"[0]",Blockly.Dart.ORDER_UNARY_POSTFIX];case "FROM_START":return a=Blockly.Dart.getAdjusted(a,"AT"),[c+"["+a+"]",Blockly.Dart.ORDER_UNARY_POSTFIX];case "LAST":case "FROM_END":return a=Blockly.Dart.getAdjusted(a,"AT",1),b=Blockly.Dart.provideFunction_("text_get_from_end",["String "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+
|
|
97
|
+
"(String text, num x) {"," return text[text.length - x];","}"]),[b+"("+c+", "+a+")",Blockly.Dart.ORDER_UNARY_POSTFIX];case "RANDOM":return Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",b=Blockly.Dart.provideFunction_("text_random_letter",["String "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String text) {"," int x = new Math.Random().nextInt(text.length);"," return text[x];","}"]),[b+"("+c+")",Blockly.Dart.ORDER_UNARY_POSTFIX]}throw Error("Unhandled option (text_charAt).");
|
|
98
|
+
};
|
|
99
|
+
Blockly.Dart.text_getSubstring=function(a){var b=Blockly.Dart.valueToCode(a,"STRING",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''",c=a.getFieldValue("WHERE1"),d=a.getFieldValue("WHERE2");if("FIRST"==c&&"LAST"==d)a=b;else if(b.match(/^'?\w+'?$/)||"FROM_END"!=c&&"FROM_START"==d){switch(c){case "FROM_START":var e=Blockly.Dart.getAdjusted(a,"AT1");break;case "FROM_END":e=Blockly.Dart.getAdjusted(a,"AT1",1,!1,Blockly.Dart.ORDER_ADDITIVE);e=b+".length - "+e;break;case "FIRST":e="0";break;default:throw Error("Unhandled option (text_getSubstring).");}switch(d){case "FROM_START":var f=
|
|
100
|
+
Blockly.Dart.getAdjusted(a,"AT2",1);break;case "FROM_END":f=Blockly.Dart.getAdjusted(a,"AT2",0,!1,Blockly.Dart.ORDER_ADDITIVE);f=b+".length - "+f;break;case "LAST":break;default:throw Error("Unhandled option (text_getSubstring).");}a="LAST"==d?b+".substring("+e+")":b+".substring("+e+", "+f+")"}else e=Blockly.Dart.getAdjusted(a,"AT1"),f=Blockly.Dart.getAdjusted(a,"AT2"),a=Blockly.Dart.provideFunction_("text_get_substring",["String "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String text, String where1, num at1, String where2, num at2) {",
|
|
101
|
+
" int getAt(String where, num at) {"," if (where == 'FROM_END') {"," at = text.length - 1 - at;"," } else if (where == 'FIRST') {"," at = 0;"," } else if (where == 'LAST') {"," at = text.length - 1;"," } else if (where != 'FROM_START') {"," throw 'Unhandled option (text_getSubstring).';"," }"," return at;"," }"," at1 = getAt(where1, at1);"," at2 = getAt(where2, at2) + 1;"," return text.substring(at1, at2);","}"])+"("+b+", '"+c+"', "+e+", '"+d+"', "+f+")";
|
|
102
|
+
return[a,Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
103
|
+
Blockly.Dart.text_changeCase=function(a){var b={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=Blockly.Dart.valueToCode(a,"TEXT",b?Blockly.Dart.ORDER_UNARY_POSTFIX:Blockly.Dart.ORDER_NONE)||"''";return[b?a+b:Blockly.Dart.provideFunction_("text_toTitleCase",["String "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String str) {"," RegExp exp = new RegExp(r'\\b');"," List<String> list = str.split(exp);"," final title = new StringBuffer();"," for (String part in list) {",
|
|
104
|
+
" if (part.length > 0) {"," title.write(part[0].toUpperCase());"," if (part.length > 0) {"," title.write(part.substring(1).toLowerCase());"," }"," }"," }"," return title.toString();","}"])+"("+a+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
105
|
+
Blockly.Dart.text_trim=function(a){var b={LEFT:".replaceFirst(new RegExp(r'^\\s+'), '')",RIGHT:".replaceFirst(new RegExp(r'\\s+$'), '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[(Blockly.Dart.valueToCode(a,"TEXT",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+b,Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.text_print=function(a){return"print("+(Blockly.Dart.valueToCode(a,"TEXT",Blockly.Dart.ORDER_NONE)||"''")+");\n"};
|
|
106
|
+
Blockly.Dart.text_prompt_ext=function(a){Blockly.Dart.definitions_.import_dart_html="import 'dart:html' as Html;";var b="Html.window.prompt("+(a.getField("TEXT")?Blockly.Dart.quote_(a.getFieldValue("TEXT")):Blockly.Dart.valueToCode(a,"TEXT",Blockly.Dart.ORDER_NONE)||"''")+", '')";"NUMBER"==a.getFieldValue("TYPE")&&(Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",b="Math.parseDouble("+b+")");return[b,Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.text_prompt=Blockly.Dart.text_prompt_ext;
|
|
107
|
+
Blockly.Dart.text_count=function(a){var b=Blockly.Dart.valueToCode(a,"TEXT",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''";a=Blockly.Dart.valueToCode(a,"SUB",Blockly.Dart.ORDER_NONE)||"''";return[Blockly.Dart.provideFunction_("text_count",["int "+Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String haystack, String needle) {"," if (needle.length == 0) {"," return haystack.length + 1;"," }"," int index = 0;"," int count = 0;"," while (index != -1) {"," index = haystack.indexOf(needle, index);"," if (index != -1) {",
|
|
108
|
+
" count++;"," index += needle.length;"," }"," }"," return count;","}"])+"("+b+", "+a+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.text_replace=function(a){var b=Blockly.Dart.valueToCode(a,"TEXT",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''",c=Blockly.Dart.valueToCode(a,"FROM",Blockly.Dart.ORDER_NONE)||"''";a=Blockly.Dart.valueToCode(a,"TO",Blockly.Dart.ORDER_NONE)||"''";return[b+".replaceAll("+c+", "+a+")",Blockly.Dart.ORDER_UNARY_POSTFIX]};
|
|
109
|
+
Blockly.Dart.text_reverse=function(a){return["new String.fromCharCodes("+(Blockly.Dart.valueToCode(a,"TEXT",Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+".runes.toList().reversed)",Blockly.Dart.ORDER_UNARY_POSTFIX]};Blockly.Dart.variables={};Blockly.Dart.variables_get=function(a){return[Blockly.Dart.variableDB_.getName(a.getFieldValue("VAR"),Blockly.VARIABLE_CATEGORY_NAME),Blockly.Dart.ORDER_ATOMIC]};Blockly.Dart.variables_set=function(a){var b=Blockly.Dart.valueToCode(a,"VALUE",Blockly.Dart.ORDER_ASSIGNMENT)||"0";return Blockly.Dart.variableDB_.getName(a.getFieldValue("VAR"),Blockly.VARIABLE_CATEGORY_NAME)+" = "+b+";\n"};Blockly.Dart.variablesDynamic={};Blockly.Dart.variables_get_dynamic=Blockly.Dart.variables_get;Blockly.Dart.variables_set_dynamic=Blockly.Dart.variables_set;
|
|
110
|
+
return Blockly.Dart;
|
|
111
|
+
}));
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
//# sourceMappingURL=dart_compressed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["generators/dart.js","generators/dart/colour.js","generators/dart/lists.js","generators/dart/logic.js","generators/dart/loops.js","generators/dart/math.js","generators/dart/procedures.js","generators/dart/text.js","generators/dart/variables.js","generators/dart/variables_dynamic.js"],"names":["Blockly","Dart","Generator","addReservedWords","ORDER_ATOMIC","ORDER_UNARY_POSTFIX","ORDER_UNARY_PREFIX","ORDER_MULTIPLICATIVE","ORDER_ADDITIVE","ORDER_SHIFT","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_RELATIONAL","ORDER_EQUALITY","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_IF_NULL","ORDER_CONDITIONAL","ORDER_CASCADE","ORDER_ASSIGNMENT","ORDER_NONE","init","Blockly.Dart.init","workspace","definitions_","Object","create","functionNames_","variableDB_","reset","Names","RESERVED_WORDS_","setVariableMap","getVariableMap","defvars","devVarList","Variables","allDeveloperVariables","i","length","push","getName","DEVELOPER_VARIABLE_TYPE","variables","allUsedVarModels","getId","VARIABLE_CATEGORY_NAME","join","finish","Blockly.Dart.finish","code","prefixLines","INDENT","imports","definitions","name","def","match","replace","scrubNakedValue","Blockly.Dart.scrubNakedValue","line","quote_","Blockly.Dart.quote_","string","multiline_quote_","Blockly.Dart.multiline_quote_","split","lines","map","scrub_","Blockly.Dart.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","utils","wrap","COMMENT_WRAP","getProcedureDef","inputList","type","INPUT_VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","Blockly.Dart.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","at","valueToCode","isNumber","parseInt","innerOrder","Math","floor","getFieldValue","functionName","provideFunction_","FUNCTION_NAME_PLACEHOLDER_","red","green","blue","c1","c2","ratio","elements","Array","itemCount_","element","operator","item","cacheList","listVar","getDistinctName","list","mode","where","listOrder","xVar","Error","value","where1","where2","at1","at2","direction","sortFunctionName","input","delimiter","n","STATEMENT_PREFIX","injectId","conditionCode","branchCode","statementToCode","STATEMENT_SUFFIX","getInput","OPERATORS","argument0","argument1","defaultArgument","value_if","value_then","value_else","repeats","getField","String","Number","branch","addLoopTrap","loopVar","endVar","until","variable0","increment","up","step","abs","startVar","incVar","xfix","loop","Constants","Loops","CONTROL_FLOW_IN_LOOP_CHECK_MIXIN","getSurroundLoop","suppressPrefixSuffix","Infinity","tuple","arg","substring","CONSTANTS","constant","number_to_check","dropdown_property","divisor","varName","func","argument2","funcName","PROCEDURE_CATEGORY_NAME","xfix1","loopTrap","INFINITE_LOOP_TRAP","returnValue","xfix2","returnType","args","getVars","hasReturnValue_","text","textOrder","msg","sub","from","to"],"mappings":"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","file":"dart_compressed.js","sourceRoot":"./"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2014 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @fileoverview Generating Dart for colour blocks.
|
|
9
|
+
* @author fraser@google.com (Neil Fraser)
|
|
10
|
+
*/
|
|
11
|
+
'use strict';
|
|
12
|
+
|
|
13
|
+
goog.provide('Blockly.Dart.colour');
|
|
14
|
+
|
|
15
|
+
goog.require('Blockly.Dart');
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
Blockly.Dart.addReservedWords('Math');
|
|
19
|
+
|
|
20
|
+
Blockly.Dart['colour_picker'] = function(block) {
|
|
21
|
+
// Colour picker.
|
|
22
|
+
var code = Blockly.Dart.quote_(block.getFieldValue('COLOUR'));
|
|
23
|
+
return [code, Blockly.Dart.ORDER_ATOMIC];
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
Blockly.Dart['colour_random'] = function(block) {
|
|
27
|
+
// Generate a random colour.
|
|
28
|
+
Blockly.Dart.definitions_['import_dart_math'] =
|
|
29
|
+
'import \'dart:math\' as Math;';
|
|
30
|
+
var functionName = Blockly.Dart.provideFunction_(
|
|
31
|
+
'colour_random',
|
|
32
|
+
['String ' + Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_ + '() {',
|
|
33
|
+
' String hex = \'0123456789abcdef\';',
|
|
34
|
+
' var rnd = new Math.Random();',
|
|
35
|
+
' return \'#${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}\'',
|
|
36
|
+
' \'${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}\'',
|
|
37
|
+
' \'${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}\';',
|
|
38
|
+
'}']);
|
|
39
|
+
var code = functionName + '()';
|
|
40
|
+
return [code, Blockly.Dart.ORDER_UNARY_POSTFIX];
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
Blockly.Dart['colour_rgb'] = function(block) {
|
|
44
|
+
// Compose a colour from RGB components expressed as percentages.
|
|
45
|
+
var red = Blockly.Dart.valueToCode(block, 'RED',
|
|
46
|
+
Blockly.Dart.ORDER_NONE) || 0;
|
|
47
|
+
var green = Blockly.Dart.valueToCode(block, 'GREEN',
|
|
48
|
+
Blockly.Dart.ORDER_NONE) || 0;
|
|
49
|
+
var blue = Blockly.Dart.valueToCode(block, 'BLUE',
|
|
50
|
+
Blockly.Dart.ORDER_NONE) || 0;
|
|
51
|
+
|
|
52
|
+
Blockly.Dart.definitions_['import_dart_math'] =
|
|
53
|
+
'import \'dart:math\' as Math;';
|
|
54
|
+
var functionName = Blockly.Dart.provideFunction_(
|
|
55
|
+
'colour_rgb',
|
|
56
|
+
['String ' + Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_ +
|
|
57
|
+
'(num r, num g, num b) {',
|
|
58
|
+
' num rn = (Math.max(Math.min(r, 100), 0) * 2.55).round();',
|
|
59
|
+
' String rs = rn.toInt().toRadixString(16);',
|
|
60
|
+
' rs = \'0$rs\';',
|
|
61
|
+
' rs = rs.substring(rs.length - 2);',
|
|
62
|
+
' num gn = (Math.max(Math.min(g, 100), 0) * 2.55).round();',
|
|
63
|
+
' String gs = gn.toInt().toRadixString(16);',
|
|
64
|
+
' gs = \'0$gs\';',
|
|
65
|
+
' gs = gs.substring(gs.length - 2);',
|
|
66
|
+
' num bn = (Math.max(Math.min(b, 100), 0) * 2.55).round();',
|
|
67
|
+
' String bs = bn.toInt().toRadixString(16);',
|
|
68
|
+
' bs = \'0$bs\';',
|
|
69
|
+
' bs = bs.substring(bs.length - 2);',
|
|
70
|
+
' return \'#$rs$gs$bs\';',
|
|
71
|
+
'}']);
|
|
72
|
+
var code = functionName + '(' + red + ', ' + green + ', ' + blue + ')';
|
|
73
|
+
return [code, Blockly.Dart.ORDER_UNARY_POSTFIX];
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
Blockly.Dart['colour_blend'] = function(block) {
|
|
77
|
+
// Blend two colours together.
|
|
78
|
+
var c1 = Blockly.Dart.valueToCode(block, 'COLOUR1',
|
|
79
|
+
Blockly.Dart.ORDER_NONE) || '\'#000000\'';
|
|
80
|
+
var c2 = Blockly.Dart.valueToCode(block, 'COLOUR2',
|
|
81
|
+
Blockly.Dart.ORDER_NONE) || '\'#000000\'';
|
|
82
|
+
var ratio = Blockly.Dart.valueToCode(block, 'RATIO',
|
|
83
|
+
Blockly.Dart.ORDER_NONE) || 0.5;
|
|
84
|
+
|
|
85
|
+
Blockly.Dart.definitions_['import_dart_math'] =
|
|
86
|
+
'import \'dart:math\' as Math;';
|
|
87
|
+
var functionName = Blockly.Dart.provideFunction_(
|
|
88
|
+
'colour_blend',
|
|
89
|
+
['String ' + Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_ +
|
|
90
|
+
'(String c1, String c2, num ratio) {',
|
|
91
|
+
' ratio = Math.max(Math.min(ratio, 1), 0);',
|
|
92
|
+
' int r1 = int.parse(\'0x${c1.substring(1, 3)}\');',
|
|
93
|
+
' int g1 = int.parse(\'0x${c1.substring(3, 5)}\');',
|
|
94
|
+
' int b1 = int.parse(\'0x${c1.substring(5, 7)}\');',
|
|
95
|
+
' int r2 = int.parse(\'0x${c2.substring(1, 3)}\');',
|
|
96
|
+
' int g2 = int.parse(\'0x${c2.substring(3, 5)}\');',
|
|
97
|
+
' int b2 = int.parse(\'0x${c2.substring(5, 7)}\');',
|
|
98
|
+
' num rn = (r1 * (1 - ratio) + r2 * ratio).round();',
|
|
99
|
+
' String rs = rn.toInt().toRadixString(16);',
|
|
100
|
+
' num gn = (g1 * (1 - ratio) + g2 * ratio).round();',
|
|
101
|
+
' String gs = gn.toInt().toRadixString(16);',
|
|
102
|
+
' num bn = (b1 * (1 - ratio) + b2 * ratio).round();',
|
|
103
|
+
' String bs = bn.toInt().toRadixString(16);',
|
|
104
|
+
' rs = \'0$rs\';',
|
|
105
|
+
' rs = rs.substring(rs.length - 2);',
|
|
106
|
+
' gs = \'0$gs\';',
|
|
107
|
+
' gs = gs.substring(gs.length - 2);',
|
|
108
|
+
' bs = \'0$bs\';',
|
|
109
|
+
' bs = bs.substring(bs.length - 2);',
|
|
110
|
+
' return \'#$rs$gs$bs\';',
|
|
111
|
+
'}']);
|
|
112
|
+
var code = functionName + '(' + c1 + ', ' + c2 + ', ' + ratio + ')';
|
|
113
|
+
return [code, Blockly.Dart.ORDER_UNARY_POSTFIX];
|
|
114
|
+
};
|