* Added Max Instances property to Blocks
* eslint cleanup
* eslint cleanup 2
* Moved maxInstances property from block to workspace (as a map of block type to max instances). isDuplicate() changed to correctly handle siblings/branches.
* eslint cleanup
* Changed checking types to map. Added hasBlockLimits. Fixed Nits.
* Added limit_instances test block. eslint fixes.
* fixup! Added limit_instances test block. eslint fixes.
* Changed sorting objects to a private static function of the workspace. Fixed nits. Undeleted .eslintrc
* Reverted .gitignore file.
* Added getBlockTypeCounts() to utils. Added isCapacityAvailable() to workspace. Changed clipboard to save typeCountsMap rather than object.
* Warn if jsonInit() receives a colour attribute without a value.
* Extract colour init code into function.
* Adding block type name to prior warnings.
* Making all blocks use the MSG colour values.
* Deprecating Blockly.Constants.Lists.HUE and similar constants.
* Removing deprecated Blockly.Blocks.lists.HUE constants.
* Allowing message references in the Block.setColour() parameter.
* Adding checking of older constants, ensuring they are not overwritten.
Implement #1584 - Fields now registered by their JSON type name, allowing new custom fields and overriding of the standard fields. Replaces the manual switch statement for loading fields from JSON block definitions.
If external code can ‘play’, it should be able to ‘load’. Resolves
compile error in Blockly Games. Feel free to push back if this API
shouldn’t be public.
Also fix compiler warnings on block defs. ‘undefined’ means undefined, ‘=‘ means optional.
Adds `Block.getHue()` to retrieve the block colour when set via a hue.
The hue value is stored in the new `.hue_` field, which is null if the colour was set via a hex string.
* Revert "Create WorkspaceViewport class (#1291)"
This reverts commit 6c00d77c9e.
* Revert "Remove all all instances calling setValue with name. (#1254)"
This reverts commit 8e8b6b27af.