Convert MonacoQueryInput to function component
Created by: lguychard
Fixes #17322 (closed)
Stacked on #17450
Converts the MonacoQueryInput to a function component. This allows us to get rid of the nasty this.componentUpdates
/ this.subscriptions
pattern, and will make the component much nicer to work with for any future edits. The query input is extensively tested with integration tests.