Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore!: Add deprecation notices to values in blockly.js #5555

Merged
merged 14 commits into from
Dec 9, 2021

Conversation

maribethb
Copy link
Contributor

The basics

  • I branched from develop
  • My pull request is against develop
  • My code follows the style guide

The details

Resolves

Proposed Changes

  • Adds deprecation notices to aliased functions and some properties (see below) in blockly.js
  • Moves the few functions that aren't aliased to the top of the file for readability
  • Uses a consistent style for deprecated functions. Added the @deprecated tag, @see tag to link the documentation, and the warning.
  • Moves the aliased properties to use accessors so that the warning can be added.
  • Updates all internal usages of the properties changed in this PR, including in tests and demos.
  • Makes clipboard functions public, as discussed offline.

Test Coverage

Tested with npm run test, in the playground, and ran the demos (with updated built files) to make sure there are no console warnings about deprecated functions.

Documentation

None

Additional Information

Did not move all of the aliases at the bottom of the file because I suspect some of them should not actually be public and some of them will need setters. See #5554

Make sure you expand the changes in blockly.js as GitHub is hiding them by default.

@maribethb maribethb requested a review from a team as a code owner September 28, 2021 03:17
@maribethb maribethb requested a review from BeksOmega September 28, 2021 03:17
@google-cla google-cla bot added the cla: yes Used by Google's CLA checker. label Sep 28, 2021
@BeksOmega
Copy link
Collaborator

@maribethb I don't think I'll have time to review this today :/ could you assign this to someone else?

@alschmiedt alschmiedt requested review from alschmiedt and removed request for BeksOmega September 28, 2021 15:38
@alschmiedt alschmiedt self-assigned this Sep 28, 2021
core/blockly.js Outdated Show resolved Hide resolved
tests/mocha/procedures_test_helpers.js Show resolved Hide resolved
@maribethb
Copy link
Contributor Author

Update: Merged in develop, fixed updated references (Input alignments moved in the meantime), updated all September dates in blockly.js to be December instead, added jsdoc to the properties, etc.

The only thing I'm not sure about is that previously we had agreed Blockly.defineBlocksWithJsonArray and Blockly.isNumber would not be deprecated, but now they have both moved out of this file. However isNumber was marked deprecated but defineBlocksWithJsonArray was not. Not sure what our intentions here, so I did not add the deprecation warning to defineBlocksWithJsonArray but I can if we want to.

Copy link
Contributor

@cpcallen cpcallen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I understood it, most of the code that was moved from Blockly to Blockly.common (and other places) was done to resolve circular requires and (more recently) so that no goog.module need depend directly on the Blockly module, rather than because we wanted to change the Blockly API as such—i.e., this code movement was largely an implementation detail.

Of course there will most probably be intentional API changes in the (hopefully near) future as we move towards TypeScript, and I am strongly in favour of trying to make the Blockly API as cleanly organised and modular as possible, but I think it would be well worth nailing down (at least in broad strokes) what we will want that future Blockly API to look like before we start forcing external developers to make arbitrary changes to their code by deprecating everything on Blockly.

E.g.: moving the implementation of defineBlocksWithJsonArray to Blockly.common let us fix problems that would otherwise have occurred when migrating the blocks/*.js files, but I didn't understand this to mean that we intended to promulgate a change to the API: there's no obvious reason why external code should not continue to use Blockly.defineBlocksWithJsonArray at the moment.

This actually holds true for almost all most of the other items on Blockly deprecated in this and other recent PRs, with the exception of property accessors, where (AFAIK) we do want external code to switch to using the new get/set functions instead—though even here there is no reason in principle that the new functions could not be re-exported from blockly.js if we wanted them to be, rather than being called via various sub-modules.

While I am generally in favour of encouraging external developers to update their code as early as possible, I think there is not enough clarity about what the future Blockly API will look like to justify asking developers to make (any but a few) changes at the present time.

@cpcallen cpcallen changed the title Add deprecation notices to values in blockly.js chore: Add deprecation notices to values in blockly.js Dec 7, 2021
@cpcallen cpcallen changed the title chore: Add deprecation notices to values in blockly.js chore!: Add deprecation notices to values in blockly.js Dec 7, 2021
@cpcallen cpcallen added breaking change Used to mark a PR or issue that changes our public APIs. PR: chore General chores (dependencies, typos, etc) labels Dec 7, 2021
@maribethb
Copy link
Contributor Author

After discussion, updated which things are actually being deprecated (generally, functions that have a specific and more logical namespace to live):

  • bindEvent functions
  • clipboard functions
  • dialog properties
  • some workspace svg related functions that deal with a specific workspace

Did not deprecate (generally, things moved to common.js, don't have an agreed API, or are used in toolbox/block definitions that would be annoying to change):

  • alignment, input, connection, and toolbox constants (would affect things like block definitions)
  • hideChaff
  • createBlocksWithJsonArray
  • setParentContainer
  • getMainWorkspace and mainWorkspace property
  • svgResize

Remaining question:
Blockly.selected is now the only property from blockly.js that is located in the Blockly.common namespace that we are now asking developers to use. (It was already marked deprecated not by this PR) Is that what we want to commit to given that as of now everything in Blockly.common is just there to avoid circular deps internally? Or should we wait and see if we have a better namespace for it / allow it to continue to exist on the Blockly namespace?

@maribethb
Copy link
Contributor Author

update after confirming with Rachel: removed Blockly.selected from being marked as deprecated. we should deprecate it at some point but going to wait until we have firmed up the location of it (ie not necessarily in common.js)

@rachel-fenichel
Copy link
Collaborator

Approve, and this has addressed Chris's comment.

@maribethb maribethb dismissed cpcallen’s stale review December 9, 2021 02:13

Discussed changes with Rachel and made adjustments (github is blocking me unless i dismiss this)

@maribethb maribethb merged commit 7784eac into google:develop Dec 9, 2021
@maribethb maribethb deleted the deprecate branch April 1, 2022 18:35
LionKenedi95 added a commit to varwin/blockly that referenced this pull request Jul 19, 2022
* chore(build): Update compiler & linter input language to ES2020 (#5745)

Also:

- Ensure that the `comma-dangle` rule will not be applied to
function parameter lists (even when multi-line).

- Update tests/node/.eslintrc.json to make the environment
node-specific and not pinned to es6.

* refactor: Migrate `blocks/procedures.js` to goog.module syntax (#5736)

* Migrate blocks/procedures.js to goog.module

* Migrate blocks/procedures.js named requires

* clang-format blocks/procedures.js

* chore: Factor common methods out of block definitions

  Addressing comments on PR #5736.

* refactor: Migrate `blocks/lists.js` to `goog.module` syntax (#5746)

* Migrate blocks/lists.js to goog.module

* Migrate blocks/lists.js named requires

* clang-format blocks/lists.js

* chore: fix missing requires in generators (#5744)

* chore: fix some missing requires in generators

* chore: fix missing requires in dart block generators

* chore: replace Blockly.isNumber with Blockly.utils.string.isNumber in generators

* chore: fix more missing requires in block generators

* feat: clarify variable and procedure constants (#5743)

* chore: move dynamic category names into their respective files

* feat: create NameType enum on Names

* chore: use NameType enum for Names helper functions

* docs: update comments for category names

* refactor: Migrate `blocks/logic.js` to `goog.module` syntax (#5748)

* refactor: Migrate blocks/logic.js to goog.module

* refactor: Migrate blocks/logic.js named requires

* chore: clang-format blocks/logic.js

* fix: Prevent error when maxTrashcanContents is 0 (#5739)

* fix: Prevent error when maxTrashcanContents is 0

Resolves #5729.

* Eliminate ’smart’ quotes.

* refactor: migrate `generators/dart.js` to `goog.module` syntax (#5749)

* chore: migrate generators/dart.js to goog.module

* chore: migrate generators/dart.js to named requires

* chore: Update generators/dart.js to alphabetize imports

Co-authored-by: Christopher Allen <[email protected]>

Co-authored-by: Christopher Allen <[email protected]>

* chore: revert #5730 (#5740)

* chore: revert #5730

* fix: Fix compile failure due to incorrect visibility

The CONTROL_FLOW_IN_LOOP_CHECK_MIXIN is intended to be used outside of
blocks/ (it is, in particular, used in generators/) so it should have
been marked @public from the beginning.

* refactor: convert some js block generators to goog.module (#5750)

* chore: migrate generators/javascript/text.js to goog.module

* chore: convert generators/javascript/text.js to named requires

* refactor: convert generators/javascript/variables.js to goog.module

* refactor: convert generators/javascript/variables_dynamic to goog.module

* refactor: Migrate `blocks/loops.js` to `goog.module` syntax (#5755)

* refactor: Turn .getSurroundLoop into a (Block) method

  This considerably simplifies the code in the genrators, obviating
  the need for generators to import Blockly.Constants.Loops, and
  allowing the compiler to remove blocks/loops.js from the first
  (Blockly) chunk of the compilation.

  (The latter could and should have been arranged by making the
  generator chunks depend on the blocks chunk, but that is no longer
  necessary.)

* refactor: Migrate blocks/loops.js to goog.module

* refactor: Migrate blocks/loops.js named requires

* chore: clang-format blocks/loops.js

* fix: procedure callers now remove inputs properly (#5751)

* refactor: convert generators/javascript/procedures.js to goog.module (#5754)

* refactor: convert generators/javascript/procedures.js to goog.module

* refactor: convert generators/javascript/procedures.js to named requires

* chore: run clang-format

* refactor: convert some js block generators to goog.module (#5756)

* refactor: convert generators/javascript/colour.js to goog.module

* refactor: convert generators/javascript/colour.js to named requires

* chore: run clang-format

* refactor: convert generators/javascript/lists.js to goog.module

* refactor: convert generators/javascript/lists.js to named requires

* chore: run clang-format

* refactor: convert generators/javascript/logic.js to goog.module

* refactor: convert generators/javascript/logic.js to named requires

* chore: run clang-format

* refactor: convert genereators/javascript/math.js to goog.module

* refactor: convert generators/javascript/math.js to named requires

* chore: rebuild deps.js

* refactor: convert generators/javascript/loops.js to goog.module (#5758)

* refactor: convert generators/javascript/loops.js to goog.module

* refactor: convert generators/javascript/loops.js to named requires

* chore: run clang-format

* chore: rebuild deps.js

* refactor: convert some block generators to goog.module (#5762)

* refactor: convert generators/javascript.js to goog.module

* refactor: convert generators/javascript.js to named requires

* chore: run clang-format

* refactor: convert generators/dart/variables.js to goog.module

* refactor: convert generators/dart/variables.js to named requires

* chore: run clang-format

* refactor: convert generators/dart/variables_dynamic.js to goog.module

* refactor: convert generators/dart/variables_dynamic.js to named requires

* refactor: convert generators/dart/text.js to goog.module

* refactor: convert generators/dart/text.js to named requires

* chore: run clang-format

* refactor: convert generators/dart/procedures.js to goog.module

* refactor: convert generators/dart/procedures.js to named requires

* chore: run clang-format

* refactor: convert generators/dart/math.js to goog.module

* refactor: convert generators/dart/math.js to named requires

* chore: run clang-format

* refactor: convert generators/dart/loops.js to goog.module

* refactor: convert generators/dart/loops.js to named requires

* chore: run clang-format

* refactor: convert generators/dart/logic.js to goog.module

* refactor: convert generators/dart/logic.js to named requires

* chore: run clang-format

* refactor: convert generators/dart/lists.js to goog.module

* refactor: convert generators/dart/lists.js to named requires

* chore: run clang-format

* refactor: convert generators/dart/colour.js to goog.module

* refactor: convert generators/dart/colour.js to named requires

* chore: rebuild deps.js

* chore: lint

* refactor: Migrate `blocks/math.js` to `goog.module` syntax (#5765)

* refactor: Migrate blocks/math.js to goog.module

* refactor: Migrate blocks/math.js named requires

* chore: clang-format blocks/math.js

* refactor: convert some block generators to goog.module (#5769)

* refactor: convert generators/lua/colour.js to goog.module

* refactor: convert generators/lua/colour.js to named requires

* chore: run clang-format

* refactor: convert generators/lua/lists.js to goog.module

* refactor: convert generators/lua/lists.js to named requires

* chore: run clang-format

* fix: use getListIndex helper function in lua list generators

* refactor: convert generators/lua/logic.js to goog.module

* refactor: convert generators/lua/logic.js to named requires

* chore: run clang-format

* refactor: convert generators/lua/loops.js to goog.module

* refactor: convert generators/lua/loops.js to named requires

* chore: run clang-format

* refactor: convert generators/lua/math.js to goog.module

* refactor: convert generators/lua/math.js to named requires

* chore: run clang-format

* refcator: convert generators/lua/procedures.js to goog.module

* refactor: convert generators/lua/procedures.js to named requires

* chore: run clang-format

* chore: rebuild deps.js

* refactor: convert generators/lua/text.js to goog.module

* refactor: convert generators/lua/text.js to named requires

* refactor: convert generators/lua/variables_dynamic.js to goog.module

* refactor: convert generators/lua/variables_dynamic.js to named requires

* chore: run clang-format on text.js

* refactor: convert generators/lua/variables.js to goog.module

* refactor: convert generators/lua/variables.js to named requires

* chore: run clang-format

* chore: make a lua generator function internal

* chore: rebuild deps.js

* refactor: convert some block generators to goog.module (#5770)

* refactor: convert generators/lua.js to goog.module

* refactor: convert generator/lua.js to named requires

* chore: run clang-format

* refactor: convert generators/php/colour.js to goog.module

* refactor: convert generators/php/colour.js to named requires

* chore: run clang-format

* refactor: convert generators/php/lists.js to goog.module

* refactor: convert generators/php/lists.js to named requires

* chore: run clang-format

* refactor: convert generators/php/logic.js to goog.module

* refactor: convert generators/php/logic.js to named requires

* chore: run clang-format

* refactor: convert generators/php/loops.js to goog.module

* refactor: convert generators/php/loops.js to named requires

* chore: run clang-format

* refactor: convert generators/php/math.js to goog.module

* refactor: convert generators/php/math.js to named requires

* chore: run clang-format

* refactor: convert generators/php/procedures.js to goog.module

* refactor: convert generators/php/procedures.js to named requires

* chore: run clang-format

* refactor: convert generators/php/text.js to goog.module

* refactor: convert generators/php/text.js to named requires

* chore: run clang-format

* refactor: convert generators/php/variables.js to goog.module

* refactor: convert generators/php/variables.js to named requires

* chore: run clang-format

* refactor: convert generators/php/variables_dynamic.js to goog.module

* refactor: convert generators/php/variables_dynamic.js to named requires

* refactor: convert generators/php.js to goog.module

* refactor: convert generators/php.js to named requires

* chore: run clang-format

* chore: rebuild deps.js

* refactor: convert python block generators to goog.module (#5771)

* refactor: convert generators/python/colour.js to goog.module

* refactor: convert generators/python/colour.js to named requires

* chore: run clang-format

* refactor: convert generators/python/lists.js to goog.module

* refactor: convert generators/python/lists.js to named requires

* chore: run clang-format

* refactor: convert generators/python/logic.js to goog.module

* refactor: convert generators/python/logic.js to named requires

* chore: run clang-format

* refactor: convert generators/python/loops.js to goog.module

* refactor: convert generators/python/loops.js to named requires

* chore: run clang-format

* refactor: convert generators/python/math.js to goog.module

* refactor: convert generators/python/math.js to named requires

* chore: run clang-format

* refactor: convert generators/python/procedures.js to goog.module

* refactor: convert generators/python/procedures.js to named requires

* chore: run clang-format

* refactor: convert generators/python/text.js to goog.module

* refactor: convert generators/python/text.js to named requires

* chore: run clang-format

* refactor: convert generators/python/variables_dynamic.js to named requires

* refactor: convert generators/python/variables.js to named requires

* chore: run clang-format

* refactor: convert generators/python.js to goog.module

* refactor: convert generators/python.js to named requires

* chore: run clang-format

* chore: remove spurious @private annotations

* chore: rebuild

* refactor: Migrate `blocks/text.js` to `goog.module` syntax (#5766)

* refactor: Migrate blocks/text.js to goog.module

* refactor: Migrate blocks/text.js named requires

* refactor: Factor out common properties of text_prompt* blocks

* clang-format blocks/text.js

* fix: Fix lint warnings for PR #5766

* chore: correctly updates the compiled flag (#5767)

* refactor: msg.js: use named export, remove declareLegacyNamespace (#5768)

* chore: Remove declareLegacyNamespace from serialization folder (#5757)

* refactor: Migrate `blocks/variables.js` to `goog.module` syntax (#5774)

* refactor: Migrate blocks/variables.js to goog.module

* refactor: Migrate blocks/variables.js named requires

* chore: clang-format blocks/variables.js

* chore: JSDoc grammar correction

* feat: make checkAndDelete a public API (#5772)

* fix: the advanced playground to work with dec 2021 release (#5775)

* chore: updates the names for parsing (#5778)

* chore: Simplify NPM package wrappers, improve chunk wrapper generator (#5777)

* chore: Clean up NPM package module wrappers

  - Slightly improve documentation for each file based on helpful
    explanations given by @samelhusseini.

  - Removed redundant code---e.g., loading `javascript_compressed.js`
    creates and sets Blockly.JavaScript as a side effect, so there is
    no need to set `Blockly.JavaScript = BlocklyJavaScript` in
    `dist/javascript.js` (generated from `scripts/package/javascript.js`).
  - Remove possibly harmful code---e.g., `Blockly.Msg` is initialised
    with a null-prototype object in `blockly_compressed.js` and that
    initial object should under no circumstances be replaced.
  - Remvoe downright misleading code---e.g., `dist/blocks.js` previously
    _appeared_ to replace Blockly.Blocks with an empty object, but in
    fact the `Blockly` name referred at that point to the exports object
    from `blocks_compressed.js`, which would randomly get a useless
    `{}`-valued `.Blocks` property tacked on to it; similarly, code in
    `dist/browser.js` (generated from `scripts/package/browser/index.js`)
    appeared to copy definitions from `BlocklyBlocks` to `Blockly.Blocks`,
    but the former would always be (the aforementioned) empty object,
    making this code ineffective.

* chore: Improve chunk definition / UMD generation

  Make several improvements to the chunks global and chunkWrapper
  function:

  - Document chunk definition format (and improve the names of
    of the documented properties).

  - Replace the chunk `.namespace` property with two others:
    - `.exports` names the variable/property to be returned by the
      factory function, and which will be set on the global object if
      the module is loaded in a browser.
    - `.importAs` names the parameter that this chunk's exports value
      is to be passed to the factory function of other chunks which
      depend on this one.  (This needs to be different because e.g.
      `Blockly.blocks` is not a valid parameter name.)

  - Change the definition for the blocks chunk to export Blockly.Blocks
    (i.e., the block definition dictionary) as blocks_compressed.js
    did previous to PR #5721 (chunked compilation), rather than the
    (empty and soon to vanish) Blockly.blocks namespace object.

    This is a win for backwards compatibility, though it does mean that
    if we want to expose the `loopTypes` export from `blocks/loops.js`
    we will need to find a different way to do so.

* deprecate!: removes deprecated connection functions (#5713)

* refactor: Migrate `blocks/variables_dynamic.js` to `goog.module` syntax (#5779)

* refactor: Migrate blocks/variables_dynamic.js to goog.module

* refactor: Migrate blocks/variables_dynamic.js named requires

* chore: clang-format blocks/variables_dynamic.js

* chore: Fix inadvertent block migration inconsistencies (#5780)

* chore: Fix inadvertent block migration inconsistencies

  - Reinstate `goog.require`s-for-side-effects that were inadvertently
    removed.
  - Always use a destructuring import for `defineBlocksWithJsonArray`.
  - Consistently use `CONSTANT_CASE` names for block-common objects.
    (We could alternatively always use `camelCase` names, but since
    all the `MIXIN`s and `EXTENSIONS` remain all-uppercase this seems
    the more consistent.)

* chore: Fix import ordering

* fix(tests): Fix & reenable the advanced compilation test (#5781)

* fix(test): Fix advanced compilation test

- Fix loading of blocks in `tests/compile/main.js` caused by
  recent `goog.module`-ification work.
- Fix problem caused by ADVANCED_OPTIMISATIONS renaming the Msg
  property on the fake Blockly object created by the
  translation-loading hack in `blockly.js`.

* chore(build): Reenable advanced compilation test

Fixes #5602.

* chore(test): Add playground that uses compressed files (#5782)

* chore(deps): remove dependency on typescript-closure-tools (#5776)

* build: remove typings tasks from build and test

* chore(deps): remove typescript-closure-tools

* chore(deps): update package-lock.json

* chore(test): add version of multi_playground with compressed files (#5785)

* chore: Remove `core/requires.js` (#5718)

* chore: Remove requires that duplicate those in blockly.js

* refactor: Remove core/requires.js, make blockly.js be entry point

It sort of makes sense, doesn't it?

The only remaining require not duplicated in `blockly.js` was that for
`Blockly.themes.Classic`, but it is already required by
`Blockly.themes` (itself required by `Blockly`).

* release: merge master into develop (#5792)

* Bump ws from 7.4.4 to 7.5.1

Bumps [ws](https://github.com/websockets/ws) from 7.4.4 to 7.5.1.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.4.4...7.5.1)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump lodash from 4.17.19 to 4.17.21

Bumps [lodash](https://github.com/lodash/lodash) from 4.17.19 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.19...4.17.21)

---
updated-dependencies:
- dependency-name: lodash
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Initial commit for appengine deploy action

* Update comments to be more descriptive

* Get deploy files from the correct directory

Previous path was `_deploy/`. New path is `../_deploy`.

* Create Github Action to comment on PR while develop is frozen (#5006)

* Create develop_freeze_comment.yml

* Update comments

* Fix typo and update uses

* Add test message

* Revert "Create Github Action to comment on PR while develop is frozen (#5006)" (#5013)

This reverts commit 8c635b5fbc576f5f8e72189bc679437fafd75cb9.

* Revert "Get deploy files from the correct directory"

* Bump hosted-git-info from 2.8.4 to 2.8.9 (#4980)

Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.4 to 2.8.9.
- [Release notes](https://github.com/npm/hosted-git-info/releases)
- [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md)
- [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.4...v2.8.9)

---
updated-dependencies:
- dependency-name: hosted-git-info
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Pull Request template for goog.module PRs

Provide a standard pull request template more suited to PRs doing
goog.module conversions.

There's no way to pick a non-default template when creating a PR
manually, but this one can be used by adding
"&?template=goog_module.md" to the
https://github.com/cpcallen/bugs/compare/ URL.

* Update goog_module.md with suggested fixes

* Fix typos.
* Reinstate "Proposed Changes" section.
* Mark text that should be edit with ALL CAPS.

* Bump normalize-url from 4.5.0 to 4.5.1

Bumps [normalize-url](https://github.com/sindresorhus/normalize-url) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/sindresorhus/normalize-url/releases)
- [Commits](https://github.com/sindresorhus/normalize-url/commits)

---
updated-dependencies:
- dependency-name: normalize-url
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump trim-newlines from 3.0.0 to 3.0.1

Bumps [trim-newlines](https://github.com/sindresorhus/trim-newlines) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/sindresorhus/trim-newlines/releases)
- [Commits](https://github.com/sindresorhus/trim-newlines/commits)

---
updated-dependencies:
- dependency-name: trim-newlines
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump path-parse from 1.0.6 to 1.0.7

Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases)
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump postcss from 7.0.35 to 7.0.36 (#4928)

Bumps [postcss](https://github.com/postcss/postcss) from 7.0.35 to 7.0.36.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/7.0.35...7.0.36)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Rollup of all Q3 message changes (#5565)

Courtesy of Translatewiki

* Add Croatian to Code demo (#5583) (#5611)

Contributed courtesy of Lidija Kralj.

* chore: create release.yml (#5588)

* Create release.yml

* chore: update release.yml

* chore: update dependabot messages and labels (#5653)

The same as #5618, but against master because dependabot ignores changes on develop.

* chore: Create separate report_clang_format workflow in master branch (#5670)

The initial version of this workflow just uses `console.log` to report
the context of the `context` object.  It is hoped that there will
be enough information in this context to identify the PR to comment on,
without the `check_clang_format` workflow having to upload a
'build artefact' of some kind - see example of what I hoe to avoid
starting at `ReceivePR.yml` here:

https://securitylab.github.com/research/github-actions-preventing-pwn-requests/

A follow-up PR will (if possible) add the code to create comments
when `check_clang_format` fails.

Part of #5659.

* chore: Remove spurious extra `on` clause in report_clang_format.yml (#5671)

Removes an unwanted `on` clause that was overlooked in #5670 by author and reviewer.

* chore: More spelunking in GitHub Action data (#5673)

Looking for information about PR that triggered original
check_clang_format run.

* chore: revert github action (#5675)

* fix: Don't try to set text fields to null on cancel (#5692)

Mobile users get a window.prompt as an input, if they press the cancel button the return value is null.  Don't attempt to set the value of the field to null.

Caused errors in the custom note field which inherits from FieldTextInput.  Detected in Blockly Games Music.

This PR is for the master branch and includes a recompile.  The develop branch has changed enough that a cherrypick from develop to master won't work.  The bug in question represents a significant number of the errors being reported from Blockly Games.

* Update dependabot.yml (#5705)

* chore: run clang-format

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Monica Kozbial <[email protected]>
Co-authored-by: Christopher Allen <[email protected]>
Co-authored-by: Neil Fraser <[email protected]>
Co-authored-by: alschmiedt <[email protected]>

* fix: multi-playground should use goog.require to get blocks. (#5797)

* chore!: Add deprecation notices to values in blockly.js (#5555)

* Add deprecation warnings and reorganize blockly.js

* Update usages of deprecated properties

* chore: make dates consistent, remove extra function

* chore: run clang-format and fix lint

* chore: add more  tags

* chore: fix updated location of Align types

* chore: fix deprecated usages in tests

* chore: rebuild deps

* chore: fix moved Align types in demos and tests

* chore: update which properties are actually deprecated

* chore: don't deprecate Blockly.selected.

* fix: allow undefined color in toolbox definition (#5801)

* fix: don't use fully qualified namespace in aria (#5804)

* fix: Upload new TypeScript typings for Q4 release (#5802)

* fix: Run intial typings script for q4 release

* fix: manually fix errors with types

* fix: update core module

* Rebuild

* chore(deps): Update package-lock.json

* chore: Update metadata for December 2021 (#5811)

* chore(deps): Remove dependency on `babel-eslint`; simplify eslintrc for mocha tests (#5794)

* chore(deps): Remove deprecated babel-lint package

  When dependabot submitted PR #5791, it became apparent that eslint
  version >= 8 is incompatible with babel-eslint v10.1.0 despite the
  latter not having a version restriction against it.  This is probably
  because v10.1.0 is the last version of the package before it was
  deprecated and renamed @babel/eslint-parser.

  A little more investigation determined that there is no longer any
  need to have eslint use a non-default parser for tests/mocha/**/*.js,
  so the most straight forward solution is just to remove the dependency
  entirely.

* refactor(tests): Simplify tests/mocha/.eslintrc.json

  Remove all rules that seem to be redundant with our top-level
  .eslintrc.json.

  This finishes reverting most of the changes made in PR #4062.

* chore(deps): bump eslint from 7.32.0 to 8.4.1 (#5807)

Bumps [eslint](https://github.com/eslint/eslint) from 7.32.0 to 8.4.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.32.0...v8.4.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump typescript from 4.4.4 to 4.5.2 (#5725)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.4.4 to 4.5.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.4.4...v4.5.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: fix keycodes type (#5805)

* fix: Use correct namespace for svgMath functions (#5813)

* docs: Update README to reflect next release date (#5820)

* fix: re-expose HSV_VALUE and HSV_SATURATION as settable properties on Blockly (#5821)

* chore: update the dev-tools version (#5823)

* fix: Use correct namespace for svgMath functions (#5813)

* fix: re-expose HSV_VALUE and HSV_SATURATION as settable properties on Blockly (#5821)

* chore: update the dev-tools version (#5823)

* chore: update build files for patch release

* chore: update to the correct version

* chore: cleanup

* chore: update the package-lock

* chore: clean up issue templates and pull request templates (#5827)

* fix: change getCandidate_ and showInsertionMarker_ to be more dynamic (#5722)

* Change getCandidate_ and showInsertionMarker_ to be more dynamic

* Ran clang formatter

* Fix typos

* Fix issue with dragging stacks

* From PR comment

* fix: Fixed the label closure on demo/blockfactory (#5833)

* fix: Fixed the label closure on demo/blockfactory

* fix: remove </input> on demo/blockfactory

* chore(deps): bump typescript from 4.5.2 to 4.5.4 (#5825)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.5.2 to 4.5.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.5.2...v4.5.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump google-closure-compiler (#5810)

Bumps [google-closure-compiler](https://github.com/google/closure-compiler-npm) from 20211107.0.0 to 20211201.0.0.
- [Release notes](https://github.com/google/closure-compiler-npm/releases)
- [Commits](https://github.com/google/closure-compiler-npm/compare/v20211107.0.0...v20211201.0.0)

---
updated-dependencies:
- dependency-name: google-closure-compiler
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump @blockly/block-test from 1.1.5 to 2.0.1 (#5836)

Bumps [@blockly/block-test](https://github.com/google/blockly-samples/tree/HEAD/plugins/block-test) from 1.1.5 to 2.0.1.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/block-test)

---
updated-dependencies:
- dependency-name: "@blockly/block-test"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(release): add release-please config (#5848)

* fix: setting null for a font style on a theme (#5831)

* fix: procedure param edits breaking undo (#5845)

* fix: bumping a block after duplicate breaking undo (#5844)

* fix: bumping a block after duplicate breaking undo

* fix: fixup dependencies

* chore(deps): bump @blockly/theme-modern from 2.1.24 to 2.1.25 (#5837)

Bumps [@blockly/theme-modern](https://github.com/google/blockly-samples/tree/HEAD/plugins/theme-modern) from 2.1.24 to 2.1.25.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/theme-modern)

---
updated-dependencies:
- dependency-name: "@blockly/theme-modern"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump closure-calculate-chunks from 3.0.2 to 3.0.3 (#5815)

Bumps [closure-calculate-chunks](https://github.com/chadkillingsworth/closure-calculate-chunks) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/chadkillingsworth/closure-calculate-chunks/releases)
- [Commits](https://github.com/chadkillingsworth/closure-calculate-chunks/compare/v3.0.2...v3.0.3)

---
updated-dependencies:
- dependency-name: closure-calculate-chunks
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: Don't throw if drag surface is empty. (#5695)

Observed this error in Blockly Games Bird 6 (Chrome OS):
Uncaught TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
It has only shown up once, and I can't reproduce, but it looks like the drag surface was being cleared while empty.  Maybe some weird multi-touch operation?

Open question: Leave the code as is so that the error is thown and visible, or supress it?

* chore(deps): bump webdriverio from 7.16.10 to 7.16.12 (#5824)

Bumps [webdriverio](https://github.com/webdriverio/webdriverio) from 7.16.10 to 7.16.12.
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.10...v7.16.12)

---
updated-dependencies:
- dependency-name: webdriverio
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump concurrently from 6.4.0 to 7.0.0 (#5847)

Bumps [concurrently](https://github.com/open-cli-tools/concurrently) from 6.4.0 to 7.0.0.
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v6.4.0...v7.0.0)

---
updated-dependencies:
- dependency-name: concurrently
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump eslint from 8.4.1 to 8.6.0 (#5850)

Bumps [eslint](https://github.com/eslint/eslint) from 8.4.1 to 8.6.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.4.1...v8.6.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: update the playground to load compressed when hosted (#5835)

* chore(deps): bump google-closure-deps from 20211107.0.0 to 20211201.0.0 (#5852)

Bumps [google-closure-deps](https://github.com/google/closure-library) from 20211107.0.0 to 20211201.0.0.
- [Release notes](https://github.com/google/closure-library/releases)
- [Commits](https://github.com/google/closure-library/compare/v20211107...v20211201)

---
updated-dependencies:
- dependency-name: google-closure-deps
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor: move properties into constructors and convert to classes (#5822)

* refactor: move properties to constructor in block_drag_surface.js

* refactor: move properties to constructor in block_svg.js

* refactor: move properties to constructor in block.js

* refactor: move properties to constructor in bubble.js

* refactor: move properties to constructor in connection.js

* refactor: move properties to constructor in flyout_base.js

* refactor: move properties to constructor in flyout_button.js

* refactor: move properties to constructor in generator.js

* refactor: move properties to constructor in grid.js

* refactor: move properties to constructor in input.js

* refactor: move properties to constructor in mutator.js

* refactor: move properties to constructor in scrollbar.js

* refactor: move properties to constructor in trashcan.js

* refactor: move properties to constructor in warning.js

* refactor: move properties to constructor in workspace_audio.js

* refactor: move properties to constructor in workspace_drag_surface_svg.js

* refactor: move properties to constructor in workspace_svg.js

* refactor: move properties to constructor in workspace.js

* refactor: move properties to constructor in zoom_controls.js

* chore: rebuild

* refactor: convert zoom_controls.js to es6 class and format

* refactor: convert workspace_audio.js to es6 class and format

* refactor: convert workspace_dragger.js to es6 class and format

* refactor: convert workspace_drag_surface_svg.js to es6 class and format

* refactor: convert variable_model.js to es6 class and format

* refactor: convert variable_map.js to es6 class and format

* refactor: convert theme.js to es6 class and format

* chore: remove bad comment

* fix: msg imports in type definitions (#5858)

This is a copy of https://github.com/google/blockly/pull/5846/files against master, which will fix https://github.com/google/blockly/issues/5841 in the next patch release.

When we released v7 we committed to making patch releases for typescript definition errors, since our pipeline for typings was convoluted this quarter.

* chore(deps): bump @blockly/block-test from 1.1.5 to 2.0.1 (#5836) (#5856)

Bumps [@blockly/block-test](https://github.com/google/blockly-samples/tree/HEAD/plugins/block-test) from 1.1.5 to 2.0.1.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/block-test)

---
updated-dependencies:
- dependency-name: "@blockly/block-test"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* release: update files for Q4 2021 patch release (#5859)

* refactor: convert some files to es6 classes (#5861)

* refactor: convert utils/coordinate.js to ES6 class

* refactor: convert utils/rect.js to ES6 class

* refactor: convert utils/size.js to ES6 class

* refactor: convert block_drag_surface.js to ES6 class

* refactor: convert block_dragger.js to ES6 class

* refactor: convert bubble_dragger.js to ES6 class

* chore: declare bubble property in the constructor

* refactor: convert bubble.js to ES6 class

* chore: clang-format

* chore(lint): lint and format

* chore: declare properties in the constructor instead of at first use (#5862)

* refactor: convert some files to es6 classes (#5863)

* refactor: convert menu.js to ES6 class

* refactor: convert menuitem.js to ES6 class

* refactor: convert scrollbar_pair.js to ES6 class

* chore: define properties in the constructor in names.js

* refactor: convert names.js to ES6 class

* chore: run clang-format

* refactor: convert leaf event classes to es6 classes (#5870)

* chore(tests): update event assert functions to pass in types directly

* refactor: move event types from prototypes to constructors

* refactor: convert events/events_block_change.js to ES6 class

* refactor: convert events/events_block_create.js to ES6 class

* refactor: convert events/events_block_delete.js to ES6 class

* refactor: convert events/events_block_drag.js to ES6 class

* refactor: convert events/events_block_move.js to ES6 class

* refactor: convert events/events_click.js to ES6 class

* refactor: convert events/events_comment_change.js to ES6 class

* refactor: convert events/events_comment_create.js to ES6 class

* refactor: convert events/events_comment_delete.js to ES6 class

* refactor: convert events/events_comment_move.js to ES6 class

* refactor: convert events/events_marker_move.js to ES6 class

* refactor: convert events/events_selected.js to ES6 class

* refactor: convert events/events_theme_change.js to ES6 class

* refactor: convert events/events_toolbox_item_select.js to ES6 class

* refactor: convert events/events_trashcan_open.js to ES6 class

* refactor: convert events/events_ui.js to ES6 class

* refactor: convert events/events_var_create.js to ES6 class

* refactor: convert events/events_var_delete.js to ES6 class

* refactor: convert events/events_var_rename.js to ES6 class

* refactor: convert events/events_viewport.js to ES6 class

* chore: rebuild

* chore: run clang-format

* refactor: convert renderer classes to es6 classes (#5874)

* refactor: convert zelos renderer classes to es6 classes

* refactor: convert zelos measurables to es6 classes

* refactor: convert thrasos classes to es6 classes

* refactor: convert minimalist classes to es6 classes

* refactor: update geras classes to es6 classes

* chore: rebuild and format

* chore: fix indentation in comments

* chore(deps): bump @blockly/dev-tools from 3.0.1 to 3.0.3 (#5877)

Bumps [@blockly/dev-tools](https://github.com/google/blockly-samples/tree/HEAD/plugins/dev-tools) from 3.0.1 to 3.0.3.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/dev-tools)

---
updated-dependencies:
- dependency-name: "@blockly/dev-tools"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump google-closure-compiler (#5865)

Bumps [google-closure-compiler](https://github.com/google/closure-compiler-npm) from 20211201.0.0 to 20220104.0.0.
- [Release notes](https://github.com/google/closure-compiler-npm/releases)
- [Commits](https://github.com/google/closure-compiler-npm/compare/v20211201.0.0...v20220104.0.0)

---
updated-dependencies:
- dependency-name: google-closure-compiler
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump yargs from 17.3.0 to 17.3.1 (#5851)

Bumps [yargs](https://github.com/yargs/yargs) from 17.3.0 to 17.3.1.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v17.3.0...v17.3.1)

---
updated-dependencies:
- dependency-name: yargs
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump mocha from 9.1.3 to 9.1.4 (#5882)

Bumps [mocha](https://github.com/mochajs/mocha) from 9.1.3 to 9.1.4.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v9.1.3...v9.1.4)

---
updated-dependencies:
- dependency-name: mocha
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chores(deps): Update follow-redirects to 1.14.7 to fix CVE-2022-0155. (#5879)

* chore(deps): Update follow-redirects to 1.14.7 to fix CVE-2022-0155 (#5880)

* chore(deps): bump http-server from 14.0.0 to 14.1.0 (#5881)

Bumps [http-server](https://github.com/http-party/http-server) from 14.0.0 to 14.1.0.
- [Release notes](https://github.com/http-party/http-server/releases)
- [Commits](https://github.com/http-party/http-server/compare/v14.0.0...v14.1.0)

---
updated-dependencies:
- dependency-name: http-server
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: configure release-please as a bot, not an action (#5886)

* chore(deps): bump @wdio/selenium-standalone-service (#5878)

Bumps [@wdio/selenium-standalone-service](https://github.com/webdriverio/webdriverio) from 7.16.6 to 7.16.13.
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.6...v7.16.13)

---
updated-dependencies:
- dependency-name: "@wdio/selenium-standalone-service"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: add release-please config on master (#5887)

* chore(deps): bump eslint from 8.6.0 to 8.7.0 (#5884)

Bumps [eslint](https://github.com/eslint/eslint) from 8.6.0 to 8.7.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.6.0...v8.7.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor!: remove unused constants from internalConstants (#5889)

* chore(deps): bump typescript from 4.5.4 to 4.5.5 (#5895)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.5.4 to 4.5.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.5.4...v4.5.5)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump webdriverio from 7.16.12 to 7.16.13 (#5883)

Bumps [webdriverio](https://github.com/webdriverio/webdriverio) from 7.16.12 to 7.16.13.
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.12...v7.16.13)

---
updated-dependencies:
- dependency-name: webdriverio
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: TypeScript exporting of the serialization functions (#5890)

* Relocates serialization typing to be adjacent
* Gathers serialization imports and exports from Blockly

* fix: Adds check for changedTouches (#5869)

* refactor: convert some classes to es6 classes (#5873)

* refactor: convert flyout_button.js to ES6 class

* chore: move some properties into constructor and add annotations for flyout base

* refactor: convert flyout_horizontal.js to ES6 class

* refactor: convert flyout_vertical.js to ES6 class

* refactor: convert flyout_base.js to ES6 class

* refactor: convert flyout_metrics_manager.js to ES6 class

* refactor: convert insertion_marker_manager.js to ES6 class

* refactor: convert metrics_manager.js to ES6 class

* refactor: convert grid.js to ES6 class

* refactor: convert input.js to ES6 class

* refactor: convert touch_gesture.js to ES6 class

* refactor: convert gesture.js to ES6 class

* refactor: convert trashcan.js to ES6 class

* chore: rebuild and run format

* chore: fix review comments

* chore: respond to PR comments

* chore(build): add a script to run the ts compiler and send the new files to closure compiler (#5894)

* chore(build): add a script to run the ts compiler and send the new files to closure compiler

* chore(build): clean up tsconfig

* chore: apply suggestions from code review

Cleanup from Chris

Co-authored-by: Christopher Allen <[email protected]>

Co-authored-by: Christopher Allen <[email protected]>

* fix(generators): Fix an operator precedence issue in the math_number_property generators to remove extra parentheses (#5685)

* Fixed issue where the mathIsPrime function inserted extra parenthesis around certain blocks.
* Added tests to generated JS
* Updated generated code in Lua
* Updated Generated code for tests in Dart
* Updated generated code for tests in PHP
* Updated generated code for tests in Python
* Also changed var to const and let.

Co-authored-by: jeremyjacob123 <[email protected]>
Co-authored-by: LouisCatala <[email protected]>
Co-authored-by: jeremyjacob123 <[email protected]>

* chore: Use ES6 template strings in CSS and code generators (#5902)

* Unindent CSS, save 3 kb of code.
* Convert generator functions to template strings. 
This resolves #5761.

* chore(deps): bump eslint from 8.7.0 to 8.8.0 (#5905)

Bumps [eslint](https://github.com/eslint/eslint) from 8.7.0 to 8.8.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.7.0...v8.8.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix!: Export loopTypes from Blockly.blocks.loops (#5900)

* refactor(blocks): Make loopTypes a Set

  This is likely to slightly improve performance, especially if there
  are many entries.

* refactor(blocks): Re-export individual block modules from Blockly.blocks.all

* fix!(blocks): Have blocks_compressed.js export Blockly.blocks.all

  Previously the value obtained by

      const blocks = require('blockly/blocks');  // Node.js

  or

      import blocks from 'blockly/blocks.js';  // ES Modules

  would be the block definitions dictionary (Blockly.Blocks).

  Change this so that it is instead the export object from
  Blockly.blocks.all.

  This means you can now access loopTypes via:

      import blocks from 'blockly/blocks.js';
      blocks.loops.loopTypes.add('my_loop_blocktype');

  This is a breaking change for any code which depended on the value
  that was exported by blocks_compressed.js.

BREAKING CHANGE: the exports provided by blocks_compressed.js (and
therefore by `import ... from 'blockly/blocks'`) have changed; see above.

* feature(blocks): Export block definitions (#5908)

* refactor: Provide a BlockDefinition type

* refactor: Split defineBlocksWithJsonArray

  Split defineBlocksWithJsonArray into:

  - createBlockDefinitionsFromJsonArray, which creates BlockDefinitions
    from a (possibly JSON-originated) POJsO array, having no side-effects
    except possibly issuing warnings to the console.
  - defineBlocks, which add any dictionary of BlockDefinitions to
    the Blocks dictionary.

* feat(blocks): Export block definitions per-module

  - Define all blocks in a local blocks dictionary, often using
    createBlockDefinitionFromJsonArray, without registering them.
  - Separately, use defineBlocks to register the exported
    BlockDefinitions at the end of each Blockly.blocks.*
    module.
  - In Blockly.blocks.all, create a blocks export that combines all
    of the blocks exports from the individual blocks modules.

* chore: have format script run clang-format on blocks/ too

* chore(deps): bump @blockly/theme-modern from 2.1.25 to 2.1.27 (#5906)

Bumps [@blockly/theme-modern](https://github.com/google/blockly-samples/tree/HEAD/plugins/theme-modern) from 2.1.25 to 2.1.27.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/theme-modern)

---
updated-dependencies:
- dependency-name: "@blockly/theme-modern"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump @blockly/block-test from 2.0.1 to 2.0.3 (#5907)

Bumps [@blockly/block-test](https://github.com/google/blockly-samples/tree/HEAD/plugins/block-test) from 2.0.1 to 2.0.3.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/block-test)

---
updated-dependencies:
- dependency-name: "@blockly/block-test"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump selenium-standalone from 8.0.8 to 8.0.9 (#5885)

Bumps [selenium-standalone](https://github.com/webdriverio/selenium-standalone) from 8.0.8 to 8.0.9.
- [Release notes](https://github.com/webdriverio/selenium-standalone/releases)
- [Changelog](https://github.com/webdriverio/selenium-standalone/blob/main/HISTORY.md)
- [Commits](https://github.com/webdriverio/selenium-standalone/compare/v8.0.8...v8.0.9)

---
updated-dependencies:
- dependency-name: selenium-standalone
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor: convert renderer measurables to es6 classes (#5899)

* chore: use casts to narrow types in renderers

* chore: add @struct and type information on common measurables

* refactor: update some renderer measurables to es6 classes

* refactor: convert many measurables to es6 classes

* chore: format

* chore: rebuild

* chore(deps): bump mocha from 9.1.4 to 9.2.0 (#5910)

Bumps [mocha](https://github.com/mochajs/mocha) from 9.1.4 to 9.2.0.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v9.1.4...v9.2.0)

---
updated-dependencies:
- dependency-name: mocha
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump @blockly/dev-tools from 3.0.3 to 3.0.5 (#5911)

Bumps [@blockly/dev-tools](https://github.com/google/blockly-samples/tree/HEAD/plugins/dev-tools) from 3.0.3 to 3.0.5.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/dev-tools)

---
updated-dependencies:
- dependency-name: "@blockly/dev-tools"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor: convert some files to es classes (#5913)

* refactor: update workspace_comment and _svg to es classes

* refactor: update classes that extend icon to es classes

* refactor: update icon to es6 class

* refactor: update connection classes to es6 classes and add casts as needed

* refactor: update scrollbar to es6 class and add casts as needed

* refactor: update workspace_svg to es6 class

* refactor: update several files to es6 classes

* refactor: update several files to es6 classes

* refactor: update renderers/common/info.js to es6 class

* refactor: update several files to es6 classes

* chore: rebuild deps.js

* chore: run format

* refactor: Migrate Blockly.Events.Abstract to named exports (#5916)

* refactor(build): Stop flattening Blockly sources during compilation in preparation for move to ES modules (#5918)

* refactor: Stop flattening Blockly sources during compilation in preparation for move to ES modules

* fix: Remove obsolete accessControls and add comment about visibility changes

* refactor: convert some files to es classes (#5917)

* refactor: update several files to es6 classes

* refactor: update several files to es6 classes

* chore: add some type casts for specificity about event types

* chore: run formatter

* chore: rebuild

* refactor!: allows previously internal constants to be configurable (#5897)

* chore(deps): bump @wdio/selenium-standalone-service (#5912)

Bumps [@wdio/selenium-standalone-service](https://github.com/webdriverio/webdriverio) from 7.16.13 to 7.16.14.
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.13...v7.16.14)

---
updated-dependencies:
- dependency-name: "@wdio/selenium-standalone-service"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump webdriverio from 7.16.13 to 7.16.14 (#5909)

Bumps [webdriverio](https://github.com/webdriverio/webdriverio) from 7.16.13 to 7.16.14.
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.13...v7.16.14)

---
updated-dependencies:
- dependency-name: webdriverio
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump @blockly/block-test from 2.0.3 to 2.0.4 (#5920)

Bumps [@blockly/block-test](https://github.com/google/blockly-samples/tree/HEAD/plugins/block-test) from 2.0.3 to 2.0.4.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/block-test)

---
updated-dependencies:
- dependency-name: "@blockly/block-test"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump @blockly/theme-modern from 2.1.27 to 2.1.28 (#5921)

Bumps [@blockly/theme-modern](https://github.com/google/blockly-samples/tree/HEAD/plugins/theme-modern) from 2.1.27 to 2.1.28.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/theme-modern)

---
updated-dependencies:
- dependency-name: "@blockly/theme-modern"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump @blockly/dev-tools from 3.0.5 to 3.0.6 (#5922)

Bumps [@blockly/dev-tools](https://github.com/google/blockly-samples/tree/HEAD/plugins/dev-tools) from 3.0.5 to 3.0.6.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/[email protected]/plugins/dev-tools)

---
updated-dependencies:
- dependency-name: "@blockly/dev-tools"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump chai from 4.3.4 to 4.3.6 (#5915)

Bumps [chai](https://github.com/chaijs/chai) from 4.3.4 to 4.3.6.
- [Release notes](https://github.com/chaijs/chai/releases)
- [Changelog](https://github.com/chaijs/chai/blob/4.x.x/History.md)
- [Commits](https://github.com/chaijs/chai/compare/v4.3.4...v4.3.6)

---
updated-dependencies:
- dependency-name: chai
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix!: Export loopTypes from Blockly.blocks.loops (#5900)

* refactor(blocks): Make loopTypes a Set

  This is likely to slightly improve performance, especially if there
  are many entries.

* refactor(blocks): Re-export individual block modules from Blockly.blocks.all

* fix!(blocks): Have blocks_compressed.js export Blockly.blocks.all

  Previously the value obtained by

      const blocks = require('blockly/blocks');  // Node.js

  or

      import blocks from 'blockly/blocks.js';  // ES Modules

  would be the block definitions dictionary (Blockly.Blocks).

  Change this so that it is instead the export object from
  Blockly.blocks.all.

  This means you can now access loopTypes via:

      import blocks from 'blockly/blocks.js';
      blocks.loops.loopTypes.add('my_loop_blocktype');

  This is a breaking change for any code which depended on the value
  that was exported by blocks_compressed.js.

BREAKING CHANGE: the exports provided by blocks_compressed.js (and
therefore by `import ... from 'blockly/blocks'`) have changed; see above.

* release: bump version and rebuild

* chore(deps): bump google-closure-deps from 20211201.0.0 to 20220104.0.0 (#5896)

Bumps [google-closure-deps](https://github.com/google/closure-library) from 20211201.0.0 to 20220104.0.0.
- [Release notes](https://github.com/google/closure-library/releases)
- [Commits](https://github.com/google/closure-library/compare/v20211201...v20220104)

---
updated-dependencies:
- dependency-name: google-closure-deps
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump google-closure-compiler (#5923)

Bumps [google-closure-compiler](https://github.com/google/closure-compiler-npm) from 20220104.0.0 to 20220202.0.0.
- [Release notes](https://github.com/google/closure-compiler-npm/releases)
- [Commits](https://github.com/google/closure-compiler-npm/compare/v20220104.0.0...v20220202.0.0)

---
updated-dependencies:
- dependency-name: google-closure-compiler
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Delete events should animate when played (#5919)

Same as PR #5640, except for the addition of a parameter in the JSON to turn this on or off.  While one would normally want animations/sounds on (e.g. undo/redo stack) sometimes they'd be annoying (e.g. events from realtime collaborators).

* Revert "release: Patch #3 for Q4 2021 release"

* release: update version number in preparation for release (#5942)

* chore(deps): bump eslint from 8.8.0 to 8.9.0 (#5934)

Bumps [eslint](https://github.com/eslint/eslint) from 8.8.0 to 8.9.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.8.0...v8.9.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refactor: convert some classes to ES6 classes (#5928)

* refactor: move optional function declarations into the constructor

* refactor: convert options.js to es6 class

* refactor: convert generator…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking change Used to mark a PR or issue that changes our public APIs. cla: yes Used by Google's CLA checker. PR: chore General chores (dependencies, typos, etc)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants