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

FIX #2645 Better Faux Pickup Support #4068

Merged
merged 5 commits into from
Nov 22, 2024
Merged

Conversation

arth-1
Copy link
Contributor

@arth-1 arth-1 commented Nov 21, 2024

Changes Made-

Added logic to handle non-negative pickup values and support "faux pickups" like 1/3. Ensured notationPickup is called after setting the pickup value.

Validated the pickup value before passing it to MeterActions.setPickup to prevent errors.

Added input validation for pickup values in flow, ensuring only valid values are processed.

Changes Made-

Added logic to handle non-negative pickup values and support "faux pickups" like 1/3.
Ensured notationPickup is called after setting the pickup value.

Validated the pickup value before passing it to MeterActions.setPickup to prevent errors.

Added input validation for pickup values in flow, ensuring only valid values are processed.
js/notation.js Outdated
@@ -349,6 +349,7 @@ class Notation {
} else {
if (this.activity.logo.runningLilypond) {
obj = rationalToFraction(factor);
if (!obj) return; // Prevent undefined obj error
Copy link
Member

Choose a reason for hiding this comment

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

Maybe print factor to console so we can diagnose why this is happening? Or maybe fix rationalToFraction?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Hello, even though i print factor in console, there seems to be some issue in the initial function as while doing so it throws errors, also i did find some potential problems in error handling in rationalToFraction function which are as follows-

  1. Infinite loop risks are there in the while loop in edge cases
  2. there are floating point inaccuracies which might cause very large denominators due to very small values of d
  3. also there could be more improvements in error handling of edge cases such as limiting the maximum number of cases or the number possible

but if i do these changes in rationalToFraction function in js\utils\utils.js file can it cause issues in the software at other places as it is used in a lot of places, please guide me for the same @walterbender

Copy link
Member

Choose a reason for hiding this comment

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

I think all of the changes you recommend for rationalToFraction make sense regardless of where it is used. Best to address the problem at its source.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I have updated the rationalToFraction function kindly review it and please let me know if this is good or require some additional changes as after testing this it seems to work for me with no error in edge cases in the software.

@walterbender
Copy link
Member

looks good.
how have you tested it?

@arth-1
Copy link
Contributor Author

arth-1 commented Nov 21, 2024

At first to test the rationalToFraction function i first just tested it by doing console.log for edge cases and it seemed giving correct outputs so the logic seems correct to me and i also ran the musicblocks software locally and tried testing the changes there and...there i didnt seem to find any unexpected thing regarding this hence, it looked fine to me.

@walterbender
Copy link
Member

I am seeing:
Uncaught ReferenceError: iterations is not defined at rationalToFraction (utils.js:1163:45) at Notation.notationPickup (notation.js:357:19) at Singer.MeterActions.setPickup (MeterActions.js:87:36) at PickupBlock.flow (MeterBlocks.js:1327:33) at Logo.runFromBlockNow (logo.js:1453:54) at logo.js:1300:32

@walterbender
Copy link
Member

One last thing. Since we can do a pick up of 1/7 now with Lilypond, the warning message should be removed.

@walterbender
Copy link
Member

Screenshot From 2024-11-21 12-41-31

@arth-1
Copy link
Contributor Author

arth-1 commented Nov 21, 2024

i am really sorry for the previous mistake of forgetting to commit i did remove the warning message, but based on the picture you sent i am unsure that if it is correct or not as i am not having in depth knowledge of sheet music. But let me know.

@walterbender
Copy link
Member

I attached the picture to demonstrate that everything is working well. I'll try to capture a picture of the warning message.

@walterbender
Copy link
Member

I think we can eliminate this entire block in notation.js

        if (this.activity.logo.runningLilypond) {
            obj = rationalToFraction(factor);
            if (!obj) return; // Prevent undefined obj error
            this.activity.errorMsg(
                _("Lilypond cannot process pickup of ") + obj[0] + "/" + obj[1]
            );
        }

@arth-1
Copy link
Contributor Author

arth-1 commented Nov 22, 2024

Ok thankyou for clarification, I am now getting to know better how this works. Yes it indeed seems unnecesarry for this block to be present there, I have removed it and the software seems to work fine.

@walterbender walterbender merged commit ec80db5 into sugarlabs:master Nov 22, 2024
walterbender added a commit that referenced this pull request Nov 24, 2024
…oration locally (#4077)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* [3851] - feat: msg on disconnect (#4011)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* chore: add textMsg-on-disconnect

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* chore: remove $ operator

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* [3851] - feature: exit the user from collaboration on `New Project` and `Load project from file` events  (#4014)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* feat: add event for exit-collaboration

* feat: add flag to indicate exit of user

* feat: function to remove mouses, set the flag and disconnect

* feat: emit exit-collaboration event on new-project, load-project-from-file

* feat: emit exit-collaboration event on new-project in planet

* feat: listen exit-collaboration event and exit the collaboration

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments 
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* docs: add documentation for collaboration functionality (#4034)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments 
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* docs: add documentation for collaboration

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>
Co-authored-by: Soumyaranjan Panda <84384924+soumyaranjan-panda@users.noreply.github.com>
Co-authored-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Co-authored-by: Ajeet Pratap Singh <ajeetpratapsingh@Ajeets-MacBook-Air.local>

* FIXES ISSUE #4025 Issue with refreshing Search Bar in the pallete menu (#4035)

By these changes now the search widget and the palette menu opens simultaneously.

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)  (#4032)

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

after these changes the scalar step (+/-) block stepping up and down pitch perfectly for the temperaments other than Equal 12EDO and Custom

* FIXES ISSUE sugarlabs#4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

* refactor: use better mapping logic in _setupBlocksContainerEvents  (#4039)

* reduce duplication

* revert a rookie error

* Fixes #4038 Issue with Note Block collapsing (#4043)

Co-authored-by: AlessandroPosenato <alessandro.posenato@studenti.unitn.it>

* refactor (#4042)

* fix: base64encode error warning, extraction of common logic into a single function (#4036)

* extraction of common logic into a single function

* update initblock func

* remove empty file

* Fix input field to allow re-choosing the same file by clearing after selection (#4046)

* Confirmation model added (#4045)

* Fixes issue: #4047 - circle closing when click on anywhere on the page (#4049)

Co-authored-by: Meet <thakkarmeet2145@gmail.com>

* palette sticky issue solved (#4055)

* fix: maintain button visibility on window resize (#4054)

* Update `musicutils.js` reference (#4048)

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* #4056 correcting highlight problem near nav-bar (#4057)

* Fixes #4056 Highlight should not activate near navbar (#4058)

* Fixes #4056 Highlight should not activate near navbar

* remove console log

* update changes

* FIXES ISSUE #4051 Add note piemenu opening behind the keyboard causing accessibility issue (#4059)

* increasing the size of chord pie menu (#4060)

to enchance the viewer's experience

* relative --> absolute to fix selection regression

* Document Enhancement and Formatting Updates (#4069)

* 'Export' changed to 'Extract'

* Numbered the headings and subheadings

* Added table of contents

* sample links added

* Links added

* added more 'RUN LIVE' links

* More 'RUN LIVE' links added, more typo enhanced

* more 'RUN LIVE' links added, typos enhanced

* Linked table of contents with the headings and sub-headings

* Fix #2630: Add jsdoc style documentation (#4066)

* add jsdoc style documentation

* remove getPitchInfo

* FIX #2645 Better Faux Pickup Support (#4068)

* FIX #2645 Better Faux Pickup Support

Changes Made-

Added logic to handle non-negative pickup values and support "faux pickups" like 1/3.
Ensured notationPickup is called after setting the pickup value.

Validated the pickup value before passing it to MeterActions.setPickup to prevent errors.

Added input validation for pickup values in flow, ensuring only valid values are processed.

* Updating rationalToFraction function to handle all the edge cases for better error handling

* Forgot to commit the Syntax error fix

* removed warning messgae

* removed unnecesarry warning

* modify URL paths to test the collaboration using docker compose locally (#4072)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments 
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* FIXES ISSUE #4025 Issue with refreshing Search Bar in the pallete menu (#4035)

By these changes now the search widget and the palette menu opens simultaneously.

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)  (#4032)

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

after these changes the scalar step (+/-) block stepping up and down pitch perfectly for the temperaments other than Equal 12EDO and Custom

* FIXES ISSUE sugarlabs#4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

* refactor: use better mapping logic in _setupBlocksContainerEvents  (#4039)

* reduce duplication

* revert a rookie error

* Fixes #4038 Issue with Note Block collapsing (#4043)

Co-authored-by: AlessandroPosenato <alessandro.posenato@studenti.unitn.it>

* refactor (#4042)

* fix: base64encode error warning, extraction of common logic into a single function (#4036)

* extraction of common logic into a single function

* update initblock func

* remove empty file

* Fix input field to allow re-choosing the same file by clearing after selection (#4046)

* Confirmation model added (#4045)

* Fixes issue: #4047 - circle closing when click on anywhere on the page (#4049)

Co-authored-by: Meet <thakkarmeet2145@gmail.com>

* palette sticky issue solved (#4055)

* fix: maintain button visibility on window resize (#4054)

* Update `musicutils.js` reference (#4048)

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* #4056 correcting highlight problem near nav-bar (#4057)

* Fixes #4056 Highlight should not activate near navbar (#4058)

* Fixes #4056 Highlight should not activate near navbar

* remove console log

* update changes

* FIXES ISSUE #4051 Add note piemenu opening behind the keyboard causing accessibility issue (#4059)

* increasing the size of chord pie menu (#4060)

to enchance the viewer's experience

* relative --> absolute to fix selection regression

* Document Enhancement and Formatting Updates (#4069)

* 'Export' changed to 'Extract'

* Numbered the headings and subheadings

* Added table of contents

* sample links added

* Links added

* added more 'RUN LIVE' links

* More 'RUN LIVE' links added, more typo enhanced

* more 'RUN LIVE' links added, typos enhanced

* Linked table of contents with the headings and sub-headings

* Fix #2630: Add jsdoc style documentation (#4066)

* add jsdoc style documentation

* remove getPitchInfo

* chore: make adjustments in URLs and compose file

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.g…
apsinghdev added a commit to apsinghdev/musicblocks that referenced this pull request Nov 24, 2024
…oration locally (sugarlabs#4077)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.

Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* [3851] - feat: msg on disconnect (#4011)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.

Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* chore: add textMsg-on-disconnect

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* chore: remove $ operator

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* [3851] - feature: exit the user from collaboration on `New Project` and `Load project from file` events  (#4014)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.

Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* feat: add event for exit-collaboration

* feat: add flag to indicate exit of user

* feat: function to remove mouses, set the flag and disconnect

* feat: emit exit-collaboration event on new-project, load-project-from-file

* feat: emit exit-collaboration event on new-project in planet

* feat: listen exit-collaboration event and exit the collaboration

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* docs: add documentation for collaboration functionality (#4034)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.

Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* docs: add documentation for collaboration

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>
Co-authored-by: Soumyaranjan Panda <84384924+soumyaranjan-panda@users.noreply.github.com>
Co-authored-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Co-authored-by: Ajeet Pratap Singh <ajeetpratapsingh@Ajeets-MacBook-Air.local>

* FIXES ISSUE #4025 Issue with refreshing Search Bar in the pallete menu (#4035)

By these changes now the search widget and the palette menu opens simultaneously.

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)  (#4032)

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

after these changes the scalar step (+/-) block stepping up and down pitch perfectly for the temperaments other than Equal 12EDO and Custom

* FIXES ISSUE sugarlabs#4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

* refactor: use better mapping logic in _setupBlocksContainerEvents  (#4039)

* reduce duplication

* revert a rookie error

* Fixes #4038 Issue with Note Block collapsing (#4043)

Co-authored-by: AlessandroPosenato <alessandro.posenato@studenti.unitn.it>

* refactor (#4042)

* fix: base64encode error warning, extraction of common logic into a single function (#4036)

* extraction of common logic into a single function

* update initblock func

* remove empty file

* Fix input field to allow re-choosing the same file by clearing after selection (#4046)

* Confirmation model added (#4045)

* Fixes issue: #4047 - circle closing when click on anywhere on the page (#4049)

Co-authored-by: Meet <thakkarmeet2145@gmail.com>

* palette sticky issue solved (#4055)

* fix: maintain button visibility on window resize (#4054)

* Update `musicutils.js` reference (#4048)

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* #4056 correcting highlight problem near nav-bar (#4057)

* Fixes #4056 Highlight should not activate near navbar (#4058)

* Fixes #4056 Highlight should not activate near navbar

* remove console log

* update changes

* FIXES ISSUE #4051 Add note piemenu opening behind the keyboard causing accessibility issue (#4059)

* increasing the size of chord pie menu (#4060)

to enchance the viewer's experience

* relative --> absolute to fix selection regression

* Document Enhancement and Formatting Updates (#4069)

* 'Export' changed to 'Extract'

* Numbered the headings and subheadings

* Added table of contents

* sample links added

* Links added

* added more 'RUN LIVE' links

* More 'RUN LIVE' links added, more typo enhanced

* more 'RUN LIVE' links added, typos enhanced

* Linked table of contents with the headings and sub-headings

* Fix #2630: Add jsdoc style documentation (#4066)

* add jsdoc style documentation

* remove getPitchInfo

* FIX #2645 Better Faux Pickup Support (#4068)

* FIX #2645 Better Faux Pickup Support

Changes Made-

Added logic to handle non-negative pickup values and support "faux pickups" like 1/3.
Ensured notationPickup is called after setting the pickup value.

Validated the pickup value before passing it to MeterActions.setPickup to prevent errors.

Added input validation for pickup values in flow, ensuring only valid values are processed.

* Updating rationalToFraction function to handle all the edge cases for better error handling

* Forgot to commit the Syntax error fix

* removed warning messgae

* removed unnecesarry warning

* modify URL paths to test the collaboration using docker compose locally (#4072)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.

Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* FIXES ISSUE #4025 Issue with refreshing Search Bar in the pallete menu (#4035)

By these changes now the search widget and the palette menu opens simultaneously.

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)  (#4032)

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

after these changes the scalar step (+/-) block stepping up and down pitch perfectly for the temperaments other than Equal 12EDO and Custom

* FIXES ISSUE sugarlabs#4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

* refactor: use better mapping logic in _setupBlocksContainerEvents  (#4039)

* reduce duplication

* revert a rookie error

* Fixes #4038 Issue with Note Block collapsing (#4043)

Co-authored-by: AlessandroPosenato <alessandro.posenato@studenti.unitn.it>

* refactor (#4042)

* fix: base64encode error warning, extraction of common logic into a single function (#4036)

* extraction of common logic into a single function

* update initblock func

* remove empty file

* Fix input field to allow re-choosing the same file by clearing after selection (#4046)

* Confirmation model added (#4045)

* Fixes issue: #4047 - circle closing when click on anywhere on the page (#4049)

Co-authored-by: Meet <thakkarmeet2145@gmail.com>

* palette sticky issue solved (#4055)

* fix: maintain button visibility on window resize (#4054)

* Update `musicutils.js` reference (#4048)

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* #4056 correcting highlight problem near nav-bar (#4057)

* Fixes #4056 Highlight should not activate near navbar (#4058)

* Fixes #4056 Highlight should not activate near navbar

* remove console log

* update changes

* FIXES ISSUE #4051 Add note piemenu opening behind the keyboard causing accessibility issue (#4059)

* increasing the size of chord pie menu (#4060)

to enchance the viewer's experience

* relative --> absolute to fix selection regression

* Document Enhancement and Formatting Updates (#4069)

* 'Export' changed to 'Extract'

* Numbered the headings and subheadings

* Added table of contents

* sample links added

* Links added

* added more 'RUN LIVE' links

* More 'RUN LIVE' links added, more typo enhanced

* more 'RUN LIVE' links added, typos enhanced

* Linked table of contents with the headings and sub-headings

* Fix #2630: Add jsdoc style documentation (#4066)

* add jsdoc style documentation

* remove getPitchInfo

* chore: make adjustments in URLs and compose file

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>
Co-authored-by: Soumyaranjan Panda <84384924+soumyaranjan-panda@users.noreply.github.com>
Co-authored-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Co-authored-by: Ajeet Pratap Singh <ajeetpratapsingh@Ajeets-MacBook-Air.local>
Co-authored-by: AlessandroPosenato <113699995+AlessandroPosenato@users.noreply.github.com>
Co-authored-by: AlessandroPosenato <alessandro.posenato@studenti.unitn.it>
Co-authored-by: Abhay Upadhyay <140256312+urabhay10@users.noreply.github.com>
Co-authored-by: Gabani yash <127788321+Yashgabani845@users.noreply.github.com>
Co-authored-by: Meet Thakkar <138512214+Meet-Thakkar21@users.noreply.github.com>
Co-authored-by: Meet <thakkarmeet2145@gmail.com>
Co-authored-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: kushagra_kumar <96875614+krAtOsnana@users.noreply.github.com>
Co-authored-by: Ubayed Bin Sufian <ubayedbinsufian@gmail.com>

* Make planet and collaboration docker friendly.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* chore: make changes to run all the services

* chore: update test-collab to contain the logic to test locally

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>
Co-authored-by: Soumyaranjan Panda <84384924+soumyaranjan-panda@users.noreply.github.com>
Co-authored-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Co-authored-by: Ajeet Pratap Singh <ajeetpratapsingh@Ajeets-MacBook-A…
walterbender added a commit that referenced this pull request Nov 25, 2024
* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* [3851] - feat: msg on disconnect (#4011)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* chore: add textMsg-on-disconnect

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* chore: remove $ operator

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* [3851] - feature: exit the user from collaboration on `New Project` and `Load project from file` events  (#4014)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* feat: add event for exit-collaboration

* feat: add flag to indicate exit of user

* feat: function to remove mouses, set the flag and disconnect

* feat: emit exit-collaboration event on new-project, load-project-from-file

* feat: emit exit-collaboration event on new-project in planet

* feat: listen exit-collaboration event and exit the collaboration

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments 
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* docs: add documentation for collaboration functionality (#4034)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments 
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* docs: add documentation for collaboration

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>
Co-authored-by: Soumyaranjan Panda <84384924+soumyaranjan-panda@users.noreply.github.com>
Co-authored-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Co-authored-by: Ajeet Pratap Singh <ajeetpratapsingh@Ajeets-MacBook-Air.local>

* FIXES ISSUE #4025 Issue with refreshing Search Bar in the pallete menu (#4035)

By these changes now the search widget and the palette menu opens simultaneously.

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)  (#4032)

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

after these changes the scalar step (+/-) block stepping up and down pitch perfectly for the temperaments other than Equal 12EDO and Custom

* FIXES ISSUE sugarlabs#4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

* refactor: use better mapping logic in _setupBlocksContainerEvents  (#4039)

* reduce duplication

* revert a rookie error

* Fixes #4038 Issue with Note Block collapsing (#4043)

Co-authored-by: AlessandroPosenato <alessandro.posenato@studenti.unitn.it>

* refactor (#4042)

* fix: base64encode error warning, extraction of common logic into a single function (#4036)

* extraction of common logic into a single function

* update initblock func

* remove empty file

* Fix input field to allow re-choosing the same file by clearing after selection (#4046)

* Confirmation model added (#4045)

* Fixes issue: #4047 - circle closing when click on anywhere on the page (#4049)

Co-authored-by: Meet <thakkarmeet2145@gmail.com>

* palette sticky issue solved (#4055)

* fix: maintain button visibility on window resize (#4054)

* Update `musicutils.js` reference (#4048)

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* #4056 correcting highlight problem near nav-bar (#4057)

* Fixes #4056 Highlight should not activate near navbar (#4058)

* Fixes #4056 Highlight should not activate near navbar

* remove console log

* update changes

* FIXES ISSUE #4051 Add note piemenu opening behind the keyboard causing accessibility issue (#4059)

* increasing the size of chord pie menu (#4060)

to enchance the viewer's experience

* relative --> absolute to fix selection regression

* Document Enhancement and Formatting Updates (#4069)

* 'Export' changed to 'Extract'

* Numbered the headings and subheadings

* Added table of contents

* sample links added

* Links added

* added more 'RUN LIVE' links

* More 'RUN LIVE' links added, more typo enhanced

* more 'RUN LIVE' links added, typos enhanced

* Linked table of contents with the headings and sub-headings

* Fix #2630: Add jsdoc style documentation (#4066)

* add jsdoc style documentation

* remove getPitchInfo

* FIX #2645 Better Faux Pickup Support (#4068)

* FIX #2645 Better Faux Pickup Support

Changes Made-

Added logic to handle non-negative pickup values and support "faux pickups" like 1/3.
Ensured notationPickup is called after setting the pickup value.

Validated the pickup value before passing it to MeterActions.setPickup to prevent errors.

Added input validation for pickup values in flow, ensuring only valid values are processed.

* Updating rationalToFraction function to handle all the edge cases for better error handling

* Forgot to commit the Syntax error fix

* removed warning messgae

* removed unnecesarry warning

* modify URL paths to test the collaboration using docker compose locally (#4072)

* fixes #3913

* fix:resolves grid position on hamburger opening(#3914) (#3924)

* fix:resolves hamburger opening(#3914)

* fix:fixes #3914(suggested changes done)

* adjust size of grid element repositioning when using aux toolbar

---------

Co-authored-by: Walter Bender <walter@sorcero.com>

* Fix input boxes (#3927)

* bump version

* enhancement: scale on hover (#3926)

Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>

* calculate frequencies from ratio

* Add close button to extended-menu pie menu (fixes #3933) (#3934)

* Bump braces and gulp (#3903)

Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together.


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `gulp` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/gulpjs/gulp/releases)
- [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/gulp/compare/v4.0.2...v5.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
- dependency-name: gulp
  dependency-type: direct:development
...

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

* add support for solfege accidentals in phrasemaker

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* Ratio transpose and Ratio interval (#3936)

* use processPitch for all pitch types

* Add support for cents (#3937)

* add support for cents through semi-tone transposition

* add 50 cents macro

* add cents example

* add output frequencies

* fix issue with ratio cents

* add a ratio-cents example

* use processPitch for all pitch types

* convert freq to note before scalar step

* fix note convert

* remove extra comma throwing off indexing

* Hyperscore link update (#3939) (#3947)

* Update Hyperscore example link in guide.html (#3944)

* Update README.md (#3943)

* left_and_back_images (#3950)

* Updated Dockerfile  (#3949)

* Update README.md

* Update dockerfile

* remove yjs and socket.io dependecies

* Fixed #3956 Auto increasing and decreasing input block (#3957)

* fixes #3941

* fixes #3958

* Fixes collapsed state of note block (#3961)

* fixes issue with extra line number in JavaScript Editor (#3962)

* fixes sample block duplication issue (#3965)

* fixes sample block duplication issue

* changed error message

* updated error message

* updated planet image on documentation (#3971)

* updated planet image on documentation

fixes issue number: 3968

* updated images

* removed overlap between two images

* fix 1MB file size limit on audio sample imports (#3976)

* enforce 1MB limit on audio sample imports

* update sampler.js

* updated error msg

* update wheelnav.js (#3977)

* Fixes #3972 Highlight should not activate when code is being run (#3975)

* Fixes #3972 Highlight should not activate when code is being run

* optimized the code by using existing flag

* optimized the code by using existing flag

* fixes #3972

* removed extra code (#3980)

* Fixes #3973 Right click menu only opens in the advanced mode (#3978)

* Contextmenu only opens in advanced mode

* Added indentation and changed the if condition

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode  (#3979)

* FIXES ISSUE #3895 Add alphabet "G" as a block found in easy mode 

The requirement of this bug is to add the pitch G4 nad Alphabet G block in pitch menu of the beginner mode.

* FIXES ISSUE #3895 Add alphabet "G" and Sol as a block found in easy mode 

It adds the sol pitch block in the pitch menu of beginner's mode

* AI BLOCK and Documentation on How to add widget in MB (#3964)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

* added AI BLOCKS and DOCS

* change canvas to editor text

* changed canvas to edit text,added hint

* Fix: suggestion in AI Block & AI block structure

* added groq api

* Added midi support to MB (#3904)

* added midi support

* made corrections

* added note approximations

* added action blocks to start block

* added action block to start blk

* made corrections

* break also into multiple action block when noteblock count exceeds 24

* added break statement in case of no of  tracks more than 1

* added start blocks corresponding each track

* added meter and tempo information

* added scaling factor and load as midi feture

* added default timesignatures

* added drum mapper

* removed set instrument in case of percussion

* added an extra condtion when the new note start is less than previous note

* added minor changes

* removed the scaling factor earlier added

* added names to start blocks

* modifications for clarity

* add abacus example

* Rhythm block doesn't repeat issue update (#3982)

* Rhythm block doesn't repeat issue update

* removed console log messages

* added console log message for testing

* fixes #3931 Rhythm block doesn't repeat when outside of PhraseMaker

* add more steps to new palette instructions

* fix: remove redundant code to achieve DRY consistency (#3988)

* removed extra code

* update block.js

* update block.js (#3989)

* refactor: Simplify note processing logic, remove an empty file (#3991)

* Update drum block setup to make it more compact (#3992)

* refactor: update indexOf () === -1 to ! includes (#3993)

* update activity.js

* update block.js

* update activity.js

* Revert "update activity.js"

This reverts commit c61110f2aff6b20328702424a5112f2f797d3b69.

* update activity.js

* update blocks.js

* update piemenu.js

* update musicutils.js

* update blockfactory.js

* update turtle-singer.js

* update lilypond.js

* update logo.js

* update macros.js

* update palette.js

* update notation.js

* update DrumBlocks.js

* update GraphicsBlocks.js

* update PenBlocks.js

* used regex to shrink code (#3996)

* introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)

* Revert "introduced a setupFunctions array to group all the setup function call, add uses export statements for BACKWARDCOMPATIBILIYDICT and initBasicProtoBlocks, instead of comments to indicate exports (#3994)"

This reverts commit a6f3514cc10c0d3e150f2832482c41f02c353f5a.

* move all saved state into a single object (#3998)

* move all saved state into a single object, remove unnecessarya variable declarations

* re-add some variable names to avoid breaking code, and remove singer.notesPlayed

* refactor: update indexOf () === -1 to ! includes (#4001)

* update PitchBlocks.js

* update ProgramBlocks.js

* update VolumeBlocks.js

* update WidgetBlocks.js

* update IntervalsActions.js

* update PitchActions.js

* update RhythmActions.js

* update ToneActions.js

* update VolumeActions.js

* update utils.js

* update arpeggio.js

* update musickeyboards.js

* update phrasemaker.js

* update rhythmruler.js

* update generate.js

* update interface.js

* update mathutils.js

* update synthutils.js

* update help.js

* update helper.js

* ABC to MB Parser (#3925)

* clean code , added comments

* added abc lib

* added debug statement

* fix : Formatting , Function method & method Func

* add function description

---------

Co-authored-by: Walter Bender <walter@sugarlabs.org>

* clean up javascript formatting

* Feat/add record button and playback button in sampler widget (#3813)

* added recording and playback button

* upd

* added recording started,completed msg and button disabled when no url

* updated icons

* added sample for waveform

* upd

* added the required changes,play sample pitch,create sample with setinstrument

* FIXES ISSUE #4000 Regression: 'Set Default Instrument' Block Converts to 'Unknown' Block (#4006)

By this commit the set default instrument block is working fine.

* Add More Frequent "RUN LIVE" Links to Music Blocks Programming Guide (#3999)

* Added RUN LIVE option

* Added RUN LIVE option

* Added new RUN LIVE links

* use object lookup for convertDuration instead of switch (#4003)

* Streamline Drumname for early return of drum post http match, use object lookup (#4008)

* drum returns quicker post http match, use object lookup instead of a for loop

* add value matches

* FIXES ISSUE #3921 Reexamine our default temperament list (#4010)

* Updating musicutils.js in order to change the name of the temperament name list 

FIXES ISSUE #3921 Reexamine our default temperament list

* Updating piemenus.js

FIXES ISSUE #3921 Reexamine our default temperament list
In order to fix all the names perfectly in the menu i increased the size of the basic pie menu for the temperament name block

* new strings

* string repair

* new strings

* add missing translation

* cleanup

* reuse strings

* update sampler.js (#4013)

* fix all lint + Base64Encode errors (#4015)

* revert part of 4015

* Fixed mouse event malfunctioning (#4021)

* FIXME: Implement pickup measures and multi-voice support in abc.js (#4020)

* fix the pickup todo in abc notation

* remove todo

* Fix search box hover behavior replacing input text (#4027)

* Fix search box hover behavior replacing input text

* Fix hover behavior and improve scrolling for search box

* Remove line as weblate has issue with parsing it.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Remove other comments

Weblate seems to have issues with parsing them.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Revert "Remove line as weblate has issue with parsing it."

This reverts commit 5abca9ca2a5869991e04b5058c1a84b90f13212a.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* Weblate now parses po files.

Adding msgstr and msgid at the top of the files makes
it easy for weblate to parse.

Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>

* FIXES ISSUE #4018 More default EDOs for temperament (#4022)

By these changes user can experience some of the most common Equal temperaments 
Equal 5EDO
Equal 7EDO
Equal 19EDO
Equal 31EDO

* new strings

* new strings

* add missing header strings

* FIXES ISSUE #4018 More default EDOs for temperament (#4029)

changes the define temperament block's frequency selection from division to exponential format

* fix all eslint errors along with base64encode error (#4030)

* fix eslint & renderLanguageSelectIcon logic (#4031)

* FIXES ISSUE #4025 Issue with refreshing Search Bar in the pallete menu (#4035)

By these changes now the search widget and the palette menu opens simultaneously.

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)  (#4032)

* FIXES ISSUE #4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

after these changes the scalar step (+/-) block stepping up and down pitch perfectly for the temperaments other than Equal 12EDO and Custom

* FIXES ISSUE sugarlabs#4012 Scalar Step doesn't work for default temperaments (other than 12EDO)

* refactor: use better mapping logic in _setupBlocksContainerEvents  (#4039)

* reduce duplication

* revert a rookie error

* Fixes #4038 Issue with Note Block collapsing (#4043)

Co-authored-by: AlessandroPosenato <alessandro.posenato@studenti.unitn.it>

* refactor (#4042)

* fix: base64encode error warning, extraction of common logic into a single function (#4036)

* extraction of common logic into a single function

* update initblock func

* remove empty file

* Fix input field to allow re-choosing the same file by clearing after selection (#4046)

* Confirmation model added (#4045)

* Fixes issue: #4047 - circle closing when click on anywhere on the page (#4049)

Co-authored-by: Meet <thakkarmeet2145@gmail.com>

* palette sticky issue solved (#4055)

* fix: maintain button visibility on window resize (#4054)

* Update `musicutils.js` reference (#4048)

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* #4056 correcting highlight problem near nav-bar (#4057)

* Fixes #4056 Highlight should not activate near navbar (#4058)

* Fixes #4056 Highlight should not activate near navbar

* remove console log

* update changes

* FIXES ISSUE #4051 Add note piemenu opening behind the keyboard causing accessibility issue (#4059)

* increasing the size of chord pie menu (#4060)

to enchance the viewer's experience

* relative --> absolute to fix selection regression

* Document Enhancement and Formatting Updates (#4069)

* 'Export' changed to 'Extract'

* Numbered the headings and subheadings

* Added table of contents

* sample links added

* Links added

* added more 'RUN LIVE' links

* More 'RUN LIVE' links added, more typo enhanced

* more 'RUN LIVE' links added, typos enhanced

* Linked table of contents with the headings and sub-headings

* Fix #2630: Add jsdoc style documentation (#4066)

* add jsdoc style documentation

* remove getPitchInfo

* chore: make adjustments in URLs and compose file

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Chihurumnaya Ibiam <ibiam@sugarlabs.org>
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: Walter Bender <walter@sorcero.com>
Co-authored-by: Nikhil <154296996+BeNikk@users.noreply.github.com>
Co-authored-by: Anas <141234155+Anas-2357@users.noreply.github.com>
Co-authored-by: anas2357 <141234155+anas2357@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Walter Bender <walter@sugarlabs.org>
Co-authored-by: Harshit Verma <therealharshit014@gmail.com>
Co-authored-by: Geeten Parab <147247925+GeetenParab@users.noreply.github.com>
Co-authored-by: akilesh1706 <126157319+akilesh1706@users.noreply.github.com>
Co-authored-by: Khadar vali <124120102+khadar1020@users.noreply.github.com>
Co-authored-by: Muhammad Haroon <104259212+haroon10725@users.noreply.github.com>
Co-authored-by: AnupamGaur <86046454+AnupamGaur@users.noreply.github.com>
Co-authored-by: omsuneri <142336291+omsuneri@users.noreply.github.com>
Co-authored-by: abhijeet <102318826+abhijeetsingh0401@users.noreply.github.com>
Co-authored-by: Mubashir  Shariq <103755591+Mubashirshariq@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: dubeanant <147899880+dubeanant@users.noreply.github.com>
Co-authored-by: S…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants