A monorepo containing jupyter-blocks and jupyter-tidyblocks. Blockly extension for JupyterLab.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #10 from hbcarlos/manager

Manager

authored by

Carlos Herrero and committed by
GitHub
5cee0a78 3e326e2e

+552 -304
+10 -5
package.json
··· 45 45 "watch:labextension": "jupyter labextension watch ." 46 46 }, 47 47 "dependencies": { 48 - "@jupyterlab/application": "^4.0.0-alpha.4", 49 - "@jupyterlab/apputils": "^4.0.0-alpha.4", 50 - "@jupyterlab/docregistry": "^4.0.0-alpha.4", 48 + "@jupyterlab/application": "^4.0.0-alpha.7", 49 + "@jupyterlab/apputils": "^4.0.0-alpha.7", 50 + "@jupyterlab/docregistry": "^4.0.0-alpha.7", 51 + "@jupyterlab/outputarea": "^4.0.0-alpha.7", 52 + "@jupyterlab/rendermime": "^4.0.0-alpha.7", 53 + "@lumino/algorithm": "^1.9.1", 54 + "@lumino/coreutils": "^1.12.0", 55 + "@lumino/messaging": "^1.10.1", 51 56 "@lumino/signaling": "^1.10.1", 52 - "@lumino/widgets": "^1.31.0", 57 + "@lumino/widgets": "^1.31.1", 53 58 "blockly": "^7.20211209.2" 54 59 }, 55 60 "devDependencies": { 56 - "@jupyterlab/builder": "^4.0.0-alpha.4", 61 + "@jupyterlab/builder": "^4.0.0-alpha.7", 57 62 "@typescript-eslint/eslint-plugin": "^5.12.1", 58 63 "@typescript-eslint/parser": "^5.12.1", 59 64 "eslint": "^8.9.0",
+24 -4
src/factory.ts
··· 3 3 DocumentRegistry, 4 4 DocumentModel 5 5 } from '@jupyterlab/docregistry'; 6 + import { IRenderMimeRegistry } from '@jupyterlab/rendermime'; 6 7 7 8 import { BlocklyEditor, BlocklyPanel } from './widget'; 9 + import { BlocklyManager } from './manager'; 8 10 9 11 /** 10 - * A widget factory to create new instances of ExampleDocWidget. 12 + * A widget factory to create new instances of BlocklyEditor. 11 13 */ 12 14 export class BlocklyEditorFactory extends ABCWidgetFactory< 13 15 BlocklyEditor, 14 16 DocumentModel 15 17 > { 18 + private _manager: BlocklyManager; 19 + private _rendermime: IRenderMimeRegistry; 20 + 16 21 /** 17 - * Constructor of ExampleWidgetFactory. 22 + * Constructor of BlocklyEditorFactory. 18 23 * 19 24 * @param options Constructor options 20 25 */ 21 - constructor(options: DocumentRegistry.IWidgetFactoryOptions) { 26 + constructor(options: BlocklyEditorFactory.IOptions) { 22 27 super(options); 28 + this._manager = new BlocklyManager(); 29 + this._rendermime = options.rendermime; 30 + } 31 + 32 + get manager(): BlocklyManager { 33 + return this._manager; 23 34 } 24 35 25 36 /** ··· 33 44 ): BlocklyEditor { 34 45 return new BlocklyEditor({ 35 46 context, 36 - content: new BlocklyPanel(context) 47 + content: new BlocklyPanel(context, this._manager, this._rendermime) 37 48 }); 38 49 } 39 50 } 51 + 52 + export namespace BlocklyEditorFactory { 53 + export interface IOptions extends DocumentRegistry.IWidgetFactoryOptions { 54 + /* 55 + * A rendermime instance. 56 + */ 57 + rendermime: IRenderMimeRegistry; 58 + } 59 + }
+26 -6
src/index.ts
··· 3 3 JupyterFrontEndPlugin, 4 4 ILayoutRestorer 5 5 } from '@jupyterlab/application'; 6 - 7 6 import { WidgetTracker } from '@jupyterlab/apputils'; 7 + import { IRenderMimeRegistry } from '@jupyterlab/rendermime'; 8 8 9 9 import { BlocklyEditorFactory } from './factory'; 10 - 10 + import { IBlocklyManager } from './token'; 11 11 import { BlocklyEditor } from './widget'; 12 12 13 13 /** ··· 18 18 /** 19 19 * Initialization data for the jupyterlab-blocky extension. 20 20 */ 21 - const plugin: JupyterFrontEndPlugin<void> = { 21 + const plugin: JupyterFrontEndPlugin<IBlocklyManager> = { 22 22 id: 'jupyterlab-blocky:plugin', 23 23 autoStart: true, 24 - requires: [ILayoutRestorer], 25 - activate: (app: JupyterFrontEnd, restorer: ILayoutRestorer) => { 24 + requires: [ILayoutRestorer, IRenderMimeRegistry], 25 + provides: IBlocklyManager, 26 + activate: ( 27 + app: JupyterFrontEnd, 28 + restorer: ILayoutRestorer, 29 + rendermime: IRenderMimeRegistry 30 + ): IBlocklyManager => { 26 31 console.log('JupyterLab extension jupyterlab-blocky is activated!'); 27 32 28 33 // Namespace for the tracker ··· 46 51 const widgetFactory = new BlocklyEditorFactory({ 47 52 name: FACTORY, 48 53 modelName: 'text', 49 - fileTypes: ['json'] 54 + fileTypes: ['json'], 55 + defaultFor: ['json'], 56 + 57 + // Kernel options, in this case we need to execute the code generated 58 + // in the blockly editor. The best way would be to use kernels, for 59 + // that reason, we tell the widget factory to start a kernel session 60 + // when opening the editor, and close the session when closing the editor. 61 + canStartKernel: true, 62 + preferKernel: true, 63 + shutdownOnClose: true, 64 + 65 + // The rendermime instance, necessary to render the outputs 66 + // after a code execution. 67 + rendermime: rendermime 50 68 }); 51 69 52 70 // Add the widget to the tracker when it's created ··· 59 77 }); 60 78 // Registering the widget factory 61 79 app.docRegistry.addWidgetFactory(widgetFactory); 80 + 81 + return widgetFactory.manager; 62 82 } 63 83 }; 64 84
+45 -30
src/layout.ts
··· 1 - import { Layout, Widget } from '@lumino/widgets'; 1 + import { IRenderMimeRegistry } from '@jupyterlab/rendermime'; 2 + import { ISessionContext } from '@jupyterlab/apputils'; 2 3 4 + import { Message } from '@lumino/messaging'; 3 5 import { PartialJSONValue } from '@lumino/coreutils'; 4 - 6 + import { PanelLayout, Widget } from '@lumino/widgets'; 5 7 import { IIterator, ArrayIterator } from '@lumino/algorithm'; 6 - 7 - import { Message } from '@lumino/messaging'; 8 8 9 9 import * as Blockly from 'blockly'; 10 10 11 - import { TOOLBOX } from './utils'; 11 + import { BlocklyManager } from './manager'; 12 12 13 13 /** 14 14 * A blockly layout to host the Blockly editor. 15 15 */ 16 - export class BlocklyLayout extends Layout { 16 + export class BlocklyLayout extends PanelLayout { 17 + private _host: HTMLElement; 18 + private _manager: BlocklyManager; 17 19 private _workspace: Blockly.WorkspaceSvg; 18 - private _host: HTMLElement; 20 + private _sessionContext: ISessionContext; 21 + private _outputArea: Widget; 19 22 20 23 /** 21 24 * Construct a `BlocklyLayout`. 22 25 * 23 26 */ 24 - constructor() { 27 + constructor( 28 + manager: BlocklyManager, 29 + sessionContext: ISessionContext, 30 + rendermime: IRenderMimeRegistry 31 + ) { 25 32 super(); 26 - console.debug('[BlocklyLayout]'); 33 + this._manager = manager; 34 + this._sessionContext = sessionContext; 27 35 28 36 // Creating the container for the Blockly editor 37 + // and the output area to render the execution replies. 29 38 this._host = document.createElement('div'); 30 - this._host.className = 'grid-stack'; 39 + this._outputArea = new Widget(); 31 40 } 32 41 33 42 get workspace(): PartialJSONValue { ··· 55 64 */ 56 65 init(): void { 57 66 super.init(); 58 - console.debug('[BlocklyLayout] init'); 59 67 // Add the blockly container into the DOM 60 - this.parent!.node.appendChild(this._host); 68 + this.addWidget(new Widget({ node: this._host })); 61 69 } 62 70 63 71 /** ··· 76 84 return; 77 85 } 78 86 87 + run(): void { 88 + const code = this._manager.generator.workspaceToCode(this._workspace); 89 + // Execute the code using the kernel 90 + } 91 + 79 92 /** 80 93 * Handle `update-request` messages sent to the widget. 81 94 */ 82 95 protected onUpdateRequest(msg: Message): void { 83 - console.debug('[BlocklyLayout] onUpdateRequest'); 84 - // TODO: write the resize logic 96 + this._resizeWorkspace(); 85 97 } 86 98 87 99 /** 88 100 * Handle `resize-request` messages sent to the widget. 89 101 */ 90 102 protected onResize(msg: Message): void { 91 - console.debug('[BlocklyLayout] onResize'); 92 - // TODO: write the resize logic 93 - const rect = this.parent.node.getBoundingClientRect(); 94 - this._host.style.width = rect.width + 'px'; 95 - this._host.style.height = rect.height + 'px'; 96 - Blockly.svgResize(this._workspace); 103 + this._resizeWorkspace(); 97 104 } 98 105 99 106 /** 100 107 * Handle `fit-request` messages sent to the widget. 101 108 */ 102 109 protected onFitRequest(msg: Message): void { 103 - console.debug('[BlocklyLayout] onFitRequest'); 104 - // TODO: write the resize logic 105 - // 110 + this._resizeWorkspace(); 106 111 } 107 112 108 113 /** 109 114 * Handle `after-attach` messages sent to the widget. 110 115 */ 111 116 protected onAfterAttach(msg: Message): void { 112 - console.debug('[BlocklyLayout] onAfterAttach'); 113 117 this._workspace = Blockly.inject(this._host, { 114 - toolbox: TOOLBOX 118 + toolbox: this._manager.toolbox 115 119 }); 116 120 } 117 121 118 - /** 119 - * Handle `after-show` messages sent to the widget. 120 - */ 121 - protected onAfterShow(msg: Message): void { 122 - console.debug('[BlocklyLayout] onAfterShow'); 122 + private _resizeWorkspace(): void { 123 + const rect = this.parent.node.getBoundingClientRect(); 124 + const { height } = this._outputArea.node.getBoundingClientRect(); 125 + this._host.style.width = rect.width + 'px'; 126 + const margin = rect.height / 3; 127 + 128 + if (height > margin) { 129 + this._host.style.height = rect.height - margin + 'px'; 130 + this._outputArea.node.style.height = margin + 'px'; 131 + this._outputArea.node.style.overflowY = 'scroll'; 132 + } else { 133 + this._host.style.height = rect.height - height + 'px'; 134 + this._outputArea.node.style.overflowY = 'hidden'; 135 + } 136 + 137 + Blockly.svgResize(this._workspace); 123 138 } 124 139 }
+49
src/manager.ts
··· 1 + import { JSONObject } from '@lumino/coreutils'; 2 + 3 + import * as Blockly from 'blockly'; 4 + 5 + import BlocklyPy from 'blockly/python'; 6 + 7 + import { IBlocklyManager } from './token'; 8 + import { TOOLBOX } from './utils'; 9 + 10 + export class BlocklyManager implements IBlocklyManager { 11 + private _toolbox: JSONObject; 12 + private _activeGenerator: Blockly.Generator; 13 + private _generators: Map<string, Blockly.Generator>; 14 + 15 + /** 16 + * Constructor of BlocklyEditorFactory. 17 + * 18 + * @param options Constructor options 19 + */ 20 + constructor() { 21 + this._toolbox = TOOLBOX; 22 + this._activeGenerator = BlocklyPy; 23 + this._generators = new Map<string, Blockly.Generator>(); 24 + } 25 + 26 + get toolbox(): JSONObject { 27 + return this._toolbox; 28 + } 29 + 30 + set activeGenerator(name: string) { 31 + this._activeGenerator = this._generators.get(name); 32 + } 33 + 34 + get generator(): Blockly.Generator { 35 + return this._activeGenerator; 36 + } 37 + 38 + registerToolbox(value: JSONObject): void { 39 + this._toolbox = value; 40 + } 41 + 42 + registerBlocks(blocks: JSONObject[]): void { 43 + Blockly.defineBlocksWithJsonArray(blocks); 44 + } 45 + 46 + registerGenerator(kernel: string, generator: Blockly.Generator): void { 47 + this._generators.set(kernel, generator); 48 + } 49 + }
+17
src/token.ts
··· 1 + import { Token } from '@lumino/coreutils'; 2 + import { JSONObject } from '@lumino/coreutils'; 3 + 4 + import * as Blockly from 'blockly'; 5 + 6 + /** 7 + * The manager token. 8 + */ 9 + export const IBlocklyManager = new Token<IBlocklyManager>( 10 + 'jupyterlab-blockly/manager' 11 + ); 12 + 13 + export interface IBlocklyManager { 14 + registerToolbox(value: JSONObject): void; 15 + registerBlocks(blocks: JSONObject[]): void; 16 + registerGenerator(kernel: string, generator: Blockly.Generator): void; 17 + }
+26 -15
src/widget.ts
··· 3 3 DocumentWidget, 4 4 DocumentModel 5 5 } from '@jupyterlab/docregistry'; 6 - 7 - import { Widget } from '@lumino/widgets'; 6 + import { IRenderMimeRegistry } from '@jupyterlab/rendermime'; 8 7 8 + import { Panel } from '@lumino/widgets'; 9 9 import { Signal } from '@lumino/signaling'; 10 10 11 11 import { BlocklyLayout } from './layout'; 12 + import { BlocklyManager } from './manager'; 12 13 13 14 /** 14 15 * DocumentWidget: widget that represents the view or editor for a file type. ··· 16 17 export class BlocklyEditor extends DocumentWidget<BlocklyPanel, DocumentModel> { 17 18 constructor(options: DocumentWidget.IOptions<BlocklyPanel, DocumentModel>) { 18 19 super(options); 20 + 21 + // Create and add a button to the toolbar to execute 22 + // the code. 23 + // Example: https://github.com/jupyterlab/extension-examples/blob/9c35013ce5da125f1b5865b3f7cbb301970d5970/toolbar-button/src/index.ts#L44-L52 24 + // (this.content.layout as BlocklyLayout).run(); 25 + // this.toolbar.addItem('run', button); 19 26 } 20 27 21 28 /** ··· 30 37 /** 31 38 * Widget that contains the main view of the DocumentWidget. 32 39 */ 33 - export class BlocklyPanel extends Widget { 40 + export class BlocklyPanel extends Panel { 34 41 private _context: DocumentRegistry.IContext<DocumentModel>; 35 42 36 43 /** ··· 38 45 * 39 46 * @param context - The documents context. 40 47 */ 41 - constructor(context: DocumentRegistry.IContext<DocumentModel>) { 42 - super(); 48 + constructor( 49 + context: DocumentRegistry.IContext<DocumentModel>, 50 + manager: BlocklyManager, 51 + rendermime: IRenderMimeRegistry 52 + ) { 53 + super({ 54 + layout: new BlocklyLayout(manager, context.sessionContext, rendermime) 55 + }); 43 56 this.addClass('jp-BlocklyPanel'); 44 57 this._context = context; 45 58 46 - this.layout = new BlocklyLayout(); 47 - 48 - this._context.ready.then(() => { 49 - // TODO: load the content into the blockly editor 50 - const content = this._context.model.toJSON(); 51 - console.debug('[BlocklyPanel] Loading:', content); 52 - (this.layout as BlocklyLayout).workspace = content; 53 - }); 54 - 59 + // Load the content of the file when the context is ready 60 + this._context.ready.then(() => this._load()); 55 61 // Connect to the save signal 56 62 this._context.saveState.connect(this._onSave, this); 57 63 } ··· 67 73 super.dispose(); 68 74 } 69 75 76 + private _load(): void { 77 + // Loading the content of the document into the workspace 78 + const content = this._context.model.toJSON(); 79 + (this.layout as BlocklyLayout).workspace = content; 80 + } 81 + 70 82 private _onSave( 71 83 sender: DocumentRegistry.IContext<DocumentModel>, 72 84 state: DocumentRegistry.SaveState 73 85 ): void { 74 86 if (state === 'started') { 75 87 const workspace = (this.layout as BlocklyLayout).workspace; 76 - console.debug('[BlocklyPanel] Saving:', workspace); 77 88 this._context.model.fromJSON(workspace); 78 89 } 79 90 }
+355 -244
yarn.lock
··· 46 46 resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" 47 47 integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== 48 48 49 - "@jupyterlab/application@^4.0.0-alpha.4": 50 - version "4.0.0-alpha.4" 51 - resolved "https://registry.yarnpkg.com/@jupyterlab/application/-/application-4.0.0-alpha.4.tgz#b65f868fbcbbff4d30bd17cdf849448a0e29425a" 52 - integrity sha512-2pT8bFxdSf6y1K8Z2VJmb6Vp20hbfUe1OqVGE5aYN/MffGliviWxM0hrEMZ2dasuheqOVkMRXLaxldSo5i+uJQ== 49 + "@jupyterlab/application@^4.0.0-alpha.7": 50 + version "4.0.0-alpha.7" 51 + resolved "https://registry.yarnpkg.com/@jupyterlab/application/-/application-4.0.0-alpha.7.tgz#4bac19c56d5379910a52cf7716821673e0398ae6" 52 + integrity sha512-ol75S3R7hlSasIXcoZ8Njjnbq9frRUX+5KicUhLvvxL0rML9eyqNydCwLgySbViwmCDZFNvSL6WtqDG2hSjX0w== 53 53 dependencies: 54 54 "@fortawesome/fontawesome-free" "^5.12.0" 55 - "@jupyterlab/apputils" "^4.0.0-alpha.4" 56 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 57 - "@jupyterlab/docregistry" "^4.0.0-alpha.4" 58 - "@jupyterlab/rendermime" "^4.0.0-alpha.4" 59 - "@jupyterlab/rendermime-interfaces" "^4.0.0-alpha.4" 60 - "@jupyterlab/services" "^7.0.0-alpha.4" 61 - "@jupyterlab/statedb" "^4.0.0-alpha.4" 62 - "@jupyterlab/translation" "^4.0.0-alpha.4" 63 - "@jupyterlab/ui-components" "^4.0.0-alpha.19" 55 + "@jupyterlab/apputils" "^4.0.0-alpha.7" 56 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 57 + "@jupyterlab/docregistry" "^4.0.0-alpha.7" 58 + "@jupyterlab/rendermime" "^4.0.0-alpha.7" 59 + "@jupyterlab/rendermime-interfaces" "^4.0.0-alpha.7" 60 + "@jupyterlab/services" "^7.0.0-alpha.7" 61 + "@jupyterlab/statedb" "^4.0.0-alpha.7" 62 + "@jupyterlab/translation" "^4.0.0-alpha.7" 63 + "@jupyterlab/ui-components" "^4.0.0-alpha.22" 64 64 "@lumino/algorithm" "^1.9.1" 65 - "@lumino/application" "^1.27.0" 66 - "@lumino/commands" "^1.19.0" 67 - "@lumino/coreutils" "^1.11.1" 65 + "@lumino/application" "^1.28.1" 66 + "@lumino/commands" "^1.20.0" 67 + "@lumino/coreutils" "^1.12.0" 68 68 "@lumino/disposable" "^1.10.1" 69 69 "@lumino/messaging" "^1.10.1" 70 - "@lumino/polling" "^1.9.1" 70 + "@lumino/polling" "^1.10.0" 71 71 "@lumino/properties" "^1.8.1" 72 72 "@lumino/signaling" "^1.10.1" 73 - "@lumino/widgets" "^1.30.0" 73 + "@lumino/widgets" "^1.31.1" 74 74 75 - "@jupyterlab/apputils@^4.0.0-alpha.4": 76 - version "4.0.0-alpha.4" 77 - resolved "https://registry.yarnpkg.com/@jupyterlab/apputils/-/apputils-4.0.0-alpha.4.tgz#10513e6be47892a3f7fb52272e40fab62eab34a5" 78 - integrity sha512-RMktRgvLkJd6YhSRJAomXSDNhUKW2W8m1euhfxX0j8ppx9bWBmrnjYfdbu/fSEhA4bl1/v3CP+kPDSxGzK8fRQ== 75 + "@jupyterlab/apputils@^4.0.0-alpha.7": 76 + version "4.0.0-alpha.7" 77 + resolved "https://registry.yarnpkg.com/@jupyterlab/apputils/-/apputils-4.0.0-alpha.7.tgz#ba037f1682cfb06a8c02c71382f21a872ecaa2aa" 78 + integrity sha512-L6z6DK/yem2/8TyKzDVxOJ3ShhB7WEMQodSl6SxPO8lVLKyOLijJoVSTnVO1a6PAcVv1QE8UfydkJm264/txAg== 79 79 dependencies: 80 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 81 - "@jupyterlab/observables" "^5.0.0-alpha.4" 82 - "@jupyterlab/services" "^7.0.0-alpha.4" 83 - "@jupyterlab/settingregistry" "^4.0.0-alpha.4" 84 - "@jupyterlab/statedb" "^4.0.0-alpha.4" 85 - "@jupyterlab/translation" "^4.0.0-alpha.4" 86 - "@jupyterlab/ui-components" "^4.0.0-alpha.19" 80 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 81 + "@jupyterlab/observables" "^5.0.0-alpha.7" 82 + "@jupyterlab/services" "^7.0.0-alpha.7" 83 + "@jupyterlab/settingregistry" "^4.0.0-alpha.7" 84 + "@jupyterlab/statedb" "^4.0.0-alpha.7" 85 + "@jupyterlab/statusbar" "^4.0.0-alpha.7" 86 + "@jupyterlab/translation" "^4.0.0-alpha.7" 87 + "@jupyterlab/ui-components" "^4.0.0-alpha.22" 87 88 "@lumino/algorithm" "^1.9.1" 88 - "@lumino/commands" "^1.19.0" 89 - "@lumino/coreutils" "^1.11.1" 89 + "@lumino/commands" "^1.20.0" 90 + "@lumino/coreutils" "^1.12.0" 90 91 "@lumino/disposable" "^1.10.1" 91 92 "@lumino/domutils" "^1.8.1" 92 93 "@lumino/messaging" "^1.10.1" 93 94 "@lumino/signaling" "^1.10.1" 94 95 "@lumino/virtualdom" "^1.14.1" 95 - "@lumino/widgets" "^1.30.0" 96 + "@lumino/widgets" "^1.31.1" 96 97 "@types/react" "^17.0.0" 97 98 react "^17.0.1" 98 99 sanitize-html "~2.5.3" 99 - url "^0.11.0" 100 100 101 - "@jupyterlab/builder@^4.0.0-alpha.4": 102 - version "4.0.0-alpha.4" 103 - resolved "https://registry.yarnpkg.com/@jupyterlab/builder/-/builder-4.0.0-alpha.4.tgz#6746a0c62ab69892d0259542518d55caf5687fdc" 104 - integrity sha512-Br54Qi6PY9D7Ty5sH3H9WiwA7++Jlall58r70GUy0R6eJK+GV4gYLh34UKGbArMJ7yctpHr1dPR+3+nAReNnAQ== 101 + "@jupyterlab/builder@^4.0.0-alpha.7": 102 + version "4.0.0-alpha.7" 103 + resolved "https://registry.yarnpkg.com/@jupyterlab/builder/-/builder-4.0.0-alpha.7.tgz#2eca44bba6e8a1350d3263d24661da1f20c778a6" 104 + integrity sha512-NxFVVPWY5wCfe2DdURDyLllXg6Ueae0F6saUBsZ62e3ScG1i9FZd8FTQKAv11q3JDcf92aeXsTuJOWTN8AHOiw== 105 105 dependencies: 106 - "@jupyterlab/buildutils" "^4.0.0-alpha.4" 106 + "@jupyterlab/buildutils" "^4.0.0-alpha.7" 107 107 "@lumino/algorithm" "^1.9.1" 108 - "@lumino/application" "^1.27.0" 109 - "@lumino/commands" "^1.19.0" 110 - "@lumino/coreutils" "^1.11.1" 108 + "@lumino/application" "^1.28.1" 109 + "@lumino/commands" "^1.20.0" 110 + "@lumino/coreutils" "^1.12.0" 111 111 "@lumino/disposable" "^1.10.1" 112 112 "@lumino/domutils" "^1.8.1" 113 - "@lumino/dragdrop" "^1.13.1" 113 + "@lumino/dragdrop" "^1.14.0" 114 114 "@lumino/messaging" "^1.10.1" 115 115 "@lumino/properties" "^1.8.1" 116 116 "@lumino/signaling" "^1.10.1" 117 117 "@lumino/virtualdom" "^1.14.1" 118 - "@lumino/widgets" "^1.30.0" 118 + "@lumino/widgets" "^1.31.1" 119 119 ajv "^6.12.3" 120 120 commander "~6.0.0" 121 121 css-loader "^5.0.1" ··· 139 139 webpack-merge "^5.8.0" 140 140 worker-loader "^3.0.2" 141 141 142 - "@jupyterlab/buildutils@^4.0.0-alpha.4": 143 - version "4.0.0-alpha.4" 144 - resolved "https://registry.yarnpkg.com/@jupyterlab/buildutils/-/buildutils-4.0.0-alpha.4.tgz#7824c49c155dd068309f97c09bcc88fd7ecbf2a0" 145 - integrity sha512-4F/e6g0fugPAuXpLQ7HAws9epq7+ysykS8afR8ppz7pYdHCHUA7t2MErGjTf74LHx0tODO+2kYvb/08+ppVU5w== 142 + "@jupyterlab/buildutils@^4.0.0-alpha.7": 143 + version "4.0.0-alpha.7" 144 + resolved "https://registry.yarnpkg.com/@jupyterlab/buildutils/-/buildutils-4.0.0-alpha.7.tgz#aa4b9f21db8a1ed8f52ce2a6315b96e933df19a4" 145 + integrity sha512-UQyZ+zXNR/K4eRkYez5RhAOcQAwd0Ixu+PU0QxLIfqRMTbwKtKD39K79viFUKOL0UShN+3hta7aHHvL0bF81zA== 146 146 dependencies: 147 - "@lumino/coreutils" "^1.11.1" 147 + "@lumino/coreutils" "^1.12.0" 148 148 "@yarnpkg/lockfile" "^1.1.0" 149 149 child_process "~1.0.2" 150 150 commander "~6.0.0" ··· 163 163 typescript "~4.5.2" 164 164 verdaccio "^5.2.2" 165 165 166 - "@jupyterlab/codeeditor@^4.0.0-alpha.4": 167 - version "4.0.0-alpha.4" 168 - resolved "https://registry.yarnpkg.com/@jupyterlab/codeeditor/-/codeeditor-4.0.0-alpha.4.tgz#5f4372e01f60cb6a17410a9f629e9806f96a0afd" 169 - integrity sha512-3blnulQ2V+mPlxCkEpZ/38ia//SeoOwdsEOS8u3TQ0uaCfliStbBR/K5F6/g37wUkuN2fO9Z3I9oKID300CnpQ== 166 + "@jupyterlab/codeeditor@^4.0.0-alpha.7": 167 + version "4.0.0-alpha.7" 168 + resolved "https://registry.yarnpkg.com/@jupyterlab/codeeditor/-/codeeditor-4.0.0-alpha.7.tgz#f3a9516314e1916ad24e85056dd101eaf517580b" 169 + integrity sha512-QTV5++0pcfLoInSqKAxMkkaKidrSachUwn9dZZJ2kwcYI/PekLiaI2xZQ3gKYe1Zeo97XPSVsoHdqWHQF7Yhig== 170 170 dependencies: 171 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 172 - "@jupyterlab/nbformat" "^4.0.0-alpha.4" 173 - "@jupyterlab/observables" "^5.0.0-alpha.4" 174 - "@jupyterlab/shared-models" "^4.0.0-alpha.4" 175 - "@jupyterlab/translation" "^4.0.0-alpha.4" 176 - "@jupyterlab/ui-components" "^4.0.0-alpha.19" 177 - "@lumino/coreutils" "^1.11.1" 171 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 172 + "@jupyterlab/nbformat" "^4.0.0-alpha.7" 173 + "@jupyterlab/observables" "^5.0.0-alpha.7" 174 + "@jupyterlab/shared-models" "^4.0.0-alpha.7" 175 + "@jupyterlab/statusbar" "^4.0.0-alpha.7" 176 + "@jupyterlab/translation" "^4.0.0-alpha.7" 177 + "@jupyterlab/ui-components" "^4.0.0-alpha.22" 178 + "@lumino/coreutils" "^1.12.0" 178 179 "@lumino/disposable" "^1.10.1" 179 - "@lumino/dragdrop" "^1.13.1" 180 + "@lumino/dragdrop" "^1.14.0" 180 181 "@lumino/messaging" "^1.10.1" 181 182 "@lumino/signaling" "^1.10.1" 182 - "@lumino/widgets" "^1.30.0" 183 + "@lumino/widgets" "^1.31.1" 184 + react "^17.0.1" 183 185 184 - "@jupyterlab/codemirror@^4.0.0-alpha.4": 185 - version "4.0.0-alpha.4" 186 - resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror/-/codemirror-4.0.0-alpha.4.tgz#66ab34532adcdf16d08899d74aff552b645fb425" 187 - integrity sha512-ggJT72T8dMZ94eHBl0gcfZhAm9JZGTOPJwqVfjqttIF/kgelrdq8dmxdCP/jsaoHZ2m6/ExR4swCnBX2TAo5lA== 186 + "@jupyterlab/codemirror@^4.0.0-alpha.7": 187 + version "4.0.0-alpha.7" 188 + resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror/-/codemirror-4.0.0-alpha.7.tgz#7ab5592efcd4df1197083d05fe025e9875dba45a" 189 + integrity sha512-Po2D8Pf/9H3UWI1OZqdsxQXAuqCxCnO39LuPBKpLlA1m+jmpVHz8T3VL342jqGAxSDBaiD/Skg9PfyFi6S6Fvg== 188 190 dependencies: 189 - "@jupyterlab/apputils" "^4.0.0-alpha.4" 190 - "@jupyterlab/codeeditor" "^4.0.0-alpha.4" 191 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 192 - "@jupyterlab/nbformat" "^4.0.0-alpha.4" 193 - "@jupyterlab/observables" "^5.0.0-alpha.4" 194 - "@jupyterlab/shared-models" "^4.0.0-alpha.4" 195 - "@jupyterlab/statusbar" "^4.0.0-alpha.4" 196 - "@jupyterlab/translation" "^4.0.0-alpha.4" 197 - "@jupyterlab/ui-components" "^4.0.0-alpha.19" 191 + "@jupyterlab/apputils" "^4.0.0-alpha.7" 192 + "@jupyterlab/codeeditor" "^4.0.0-alpha.7" 193 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 194 + "@jupyterlab/nbformat" "^4.0.0-alpha.7" 195 + "@jupyterlab/observables" "^5.0.0-alpha.7" 196 + "@jupyterlab/shared-models" "^4.0.0-alpha.7" 197 + "@jupyterlab/statusbar" "^4.0.0-alpha.7" 198 + "@jupyterlab/translation" "^4.0.0-alpha.7" 199 + "@jupyterlab/ui-components" "^4.0.0-alpha.22" 198 200 "@lumino/algorithm" "^1.9.1" 199 - "@lumino/commands" "^1.19.0" 200 - "@lumino/coreutils" "^1.11.1" 201 + "@lumino/commands" "^1.20.0" 202 + "@lumino/coreutils" "^1.12.0" 201 203 "@lumino/disposable" "^1.10.1" 202 - "@lumino/polling" "^1.9.1" 204 + "@lumino/polling" "^1.10.0" 203 205 "@lumino/signaling" "^1.10.1" 204 - "@lumino/widgets" "^1.30.0" 206 + "@lumino/widgets" "^1.31.1" 205 207 codemirror "~5.61.0" 206 208 react "^17.0.1" 207 209 y-codemirror "^3.0.1" 208 210 209 - "@jupyterlab/coreutils@^6.0.0-alpha.4": 210 - version "6.0.0-alpha.4" 211 - resolved "https://registry.yarnpkg.com/@jupyterlab/coreutils/-/coreutils-6.0.0-alpha.4.tgz#8e11bebb6f9850b1c4a159c7e98178606ac5759e" 212 - integrity sha512-9/BnesahQeplQGdGfDBlcj4deW1B9cHXi2GPqgEBjg4E8fDYz6xOr0opM792If1Rak18RoVQQKHCPnpOGKW5DA== 211 + "@jupyterlab/coreutils@^6.0.0-alpha.7": 212 + version "6.0.0-alpha.7" 213 + resolved "https://registry.yarnpkg.com/@jupyterlab/coreutils/-/coreutils-6.0.0-alpha.7.tgz#c06878aa29dfaac243ee4e0c7986f8caad45d996" 214 + integrity sha512-dTso/0uYwrFteXKSw0/3M+AqftjDvu9Bvda8pnMXQ1Zr4FV/S/IpspjIZ6RWniYgLZjj7KqdoN1VWA4LI5mzDw== 213 215 dependencies: 214 - "@lumino/coreutils" "^1.11.1" 216 + "@lumino/coreutils" "^1.12.0" 215 217 "@lumino/disposable" "^1.10.1" 216 218 "@lumino/signaling" "^1.10.1" 217 219 minimist "~1.2.0" ··· 219 221 path-browserify "^1.0.0" 220 222 url-parse "~1.5.4" 221 223 222 - "@jupyterlab/docprovider@^4.0.0-alpha.4": 223 - version "4.0.0-alpha.4" 224 - resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider/-/docprovider-4.0.0-alpha.4.tgz#9f727f386e0b29a5036df38571b79583efd03c51" 225 - integrity sha512-KOUKWIRYmDLr2W/ybQQ807qj47uLcWUgmFsswu9cRU+7Ufm6hO1BbK3Q5oveW0lOhqx9LRKZFxXQqwNS6zfdBw== 224 + "@jupyterlab/docprovider@^4.0.0-alpha.7": 225 + version "4.0.0-alpha.7" 226 + resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider/-/docprovider-4.0.0-alpha.7.tgz#5c7f833919841a8c4d7d0d5356aa095e01a0fb24" 227 + integrity sha512-7JF1Z7yqP6vFsdasPS8xrlS9/acXIcwVknPrU0AZjG+ORoWTnVs4EqyyzfpYT3IYib1EeRlHmTlQohRWKPTa9g== 226 228 dependencies: 227 - "@jupyterlab/shared-models" "^4.0.0-alpha.4" 228 - "@jupyterlab/user" "^4.0.0-alpha.4" 229 - "@lumino/coreutils" "^1.11.1" 229 + "@jupyterlab/shared-models" "^4.0.0-alpha.7" 230 + "@jupyterlab/user" "^4.0.0-alpha.7" 231 + "@lumino/coreutils" "^1.12.0" 230 232 lib0 "^0.2.42" 231 233 y-websocket "^1.3.15" 232 234 yjs "^13.5.17" 233 235 234 - "@jupyterlab/docregistry@^4.0.0-alpha.4": 235 - version "4.0.0-alpha.4" 236 - resolved "https://registry.yarnpkg.com/@jupyterlab/docregistry/-/docregistry-4.0.0-alpha.4.tgz#d94f1e2b6f23279cb425b4a81aceb6a006c580a3" 237 - integrity sha512-54Ajf8bAjUSXbqzWYoAfULj/OxRCyMsijj3ZyT1hoPPmHXMeTXEmDWEnM3EdtrETPDqWSmjKvciLeVoLjW8iKw== 236 + "@jupyterlab/docregistry@^4.0.0-alpha.7": 237 + version "4.0.0-alpha.7" 238 + resolved "https://registry.yarnpkg.com/@jupyterlab/docregistry/-/docregistry-4.0.0-alpha.7.tgz#5805782358ebda27541c452711eceefc5d1b5d33" 239 + integrity sha512-GLri/OgwqJP3cUjVrtVqAp4xrzcw+9wj80EO14fTubXhbDWuleYRMx/TFSgt/OYk6noETP/V2Gh1Yo6sGp/sFw== 238 240 dependencies: 239 - "@jupyterlab/apputils" "^4.0.0-alpha.4" 240 - "@jupyterlab/codeeditor" "^4.0.0-alpha.4" 241 - "@jupyterlab/codemirror" "^4.0.0-alpha.4" 242 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 243 - "@jupyterlab/docprovider" "^4.0.0-alpha.4" 244 - "@jupyterlab/observables" "^5.0.0-alpha.4" 245 - "@jupyterlab/rendermime" "^4.0.0-alpha.4" 246 - "@jupyterlab/rendermime-interfaces" "^4.0.0-alpha.4" 247 - "@jupyterlab/services" "^7.0.0-alpha.4" 248 - "@jupyterlab/shared-models" "^4.0.0-alpha.4" 249 - "@jupyterlab/translation" "^4.0.0-alpha.4" 250 - "@jupyterlab/ui-components" "^4.0.0-alpha.19" 241 + "@jupyterlab/apputils" "^4.0.0-alpha.7" 242 + "@jupyterlab/codeeditor" "^4.0.0-alpha.7" 243 + "@jupyterlab/codemirror" "^4.0.0-alpha.7" 244 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 245 + "@jupyterlab/docprovider" "^4.0.0-alpha.7" 246 + "@jupyterlab/observables" "^5.0.0-alpha.7" 247 + "@jupyterlab/rendermime" "^4.0.0-alpha.7" 248 + "@jupyterlab/rendermime-interfaces" "^4.0.0-alpha.7" 249 + "@jupyterlab/services" "^7.0.0-alpha.7" 250 + "@jupyterlab/shared-models" "^4.0.0-alpha.7" 251 + "@jupyterlab/translation" "^4.0.0-alpha.7" 252 + "@jupyterlab/ui-components" "^4.0.0-alpha.22" 251 253 "@lumino/algorithm" "^1.9.1" 252 - "@lumino/coreutils" "^1.11.1" 254 + "@lumino/coreutils" "^1.12.0" 253 255 "@lumino/disposable" "^1.10.1" 254 256 "@lumino/messaging" "^1.10.1" 255 257 "@lumino/signaling" "^1.10.1" 256 - "@lumino/widgets" "^1.30.0" 258 + "@lumino/widgets" "^1.31.1" 257 259 yjs "^13.5.17" 258 260 259 - "@jupyterlab/nbformat@^4.0.0-alpha.4": 260 - version "4.0.0-alpha.4" 261 - resolved "https://registry.yarnpkg.com/@jupyterlab/nbformat/-/nbformat-4.0.0-alpha.4.tgz#0d25a7dfcee04fda0416193cce8afc5b2195d0dd" 262 - integrity sha512-TfO9rKaI8B38BjCbu4S21BtL8EtczQN8edXwDq16Q4j/sCY43Tl2T/bubOu5jHhtEStjJck6lrV9KoI6vGY1sw== 261 + "@jupyterlab/nbformat@^4.0.0-alpha.7": 262 + version "4.0.0-alpha.7" 263 + resolved "https://registry.yarnpkg.com/@jupyterlab/nbformat/-/nbformat-4.0.0-alpha.7.tgz#7be8bc1e3e517c805178ea4506b86267dd436113" 264 + integrity sha512-/f1K7hMCPx1yNx/0tN7Q3/VLqufJWDwFmTbfuBctwlH1YdE1OmnQwX1kvVgsCEJhvH+Qqkl/u+MwrbNF7Di3OA== 263 265 dependencies: 264 - "@lumino/coreutils" "^1.11.1" 266 + "@lumino/coreutils" "^1.12.0" 265 267 266 - "@jupyterlab/observables@^5.0.0-alpha.4": 267 - version "5.0.0-alpha.4" 268 - resolved "https://registry.yarnpkg.com/@jupyterlab/observables/-/observables-5.0.0-alpha.4.tgz#e5bb98dd7cb752338c94fe7b663e7fbb4b3dbe4e" 269 - integrity sha512-L4mHq5qdkyJqKQq9aRKEIfrtvWqUVW/jBuuj1H4iPXyPEvYoH+tanV+aUejAO4T2xerEwF3bUkmwpUzuShodHA== 268 + "@jupyterlab/observables@^5.0.0-alpha.7": 269 + version "5.0.0-alpha.7" 270 + resolved "https://registry.yarnpkg.com/@jupyterlab/observables/-/observables-5.0.0-alpha.7.tgz#6348da593e6437707b208b9cfcdd00e3e982ade2" 271 + integrity sha512-xiZccVuemcOh1x+DBUQK1S4xe4gwuzKUcw5+UrNWxVvFuB7uDPLSEflRPjXcAHq/o6qTLB9V5+shP/1J93JdvA== 270 272 dependencies: 271 273 "@lumino/algorithm" "^1.9.1" 272 - "@lumino/coreutils" "^1.11.1" 274 + "@lumino/coreutils" "^1.12.0" 273 275 "@lumino/disposable" "^1.10.1" 274 276 "@lumino/messaging" "^1.10.1" 275 277 "@lumino/signaling" "^1.10.1" 276 278 277 - "@jupyterlab/rendermime-interfaces@^4.0.0-alpha.4": 278 - version "4.0.0-alpha.4" 279 - resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-interfaces/-/rendermime-interfaces-4.0.0-alpha.4.tgz#989324876aa68b4b1b6617c03af8b4eee0f1c1fd" 280 - integrity sha512-9B6aUdZ+w1b3CTio0vf2U+3dufEH4o2NoE9anrG8dJ4XyYvOIGS59aoWFfU8FfGlKhNlvn7XEANBQ0V1sMXjKw== 279 + "@jupyterlab/outputarea@^4.0.0-alpha.7": 280 + version "4.0.0-alpha.7" 281 + resolved "https://registry.yarnpkg.com/@jupyterlab/outputarea/-/outputarea-4.0.0-alpha.7.tgz#0f272fa633740596abde748cdffeef41307f1446" 282 + integrity sha512-eVrNxrWNsU2L+ymy3KKuXMD6Jl3iOD98l5LQBxj3Koyckax2YtSy+Eg8JXbwdi3Bnw0LA3mziS3jvScsR5O65w== 283 + dependencies: 284 + "@jupyterlab/apputils" "^4.0.0-alpha.7" 285 + "@jupyterlab/nbformat" "^4.0.0-alpha.7" 286 + "@jupyterlab/observables" "^5.0.0-alpha.7" 287 + "@jupyterlab/rendermime" "^4.0.0-alpha.7" 288 + "@jupyterlab/rendermime-interfaces" "^4.0.0-alpha.7" 289 + "@jupyterlab/services" "^7.0.0-alpha.7" 290 + "@lumino/algorithm" "^1.9.1" 291 + "@lumino/coreutils" "^1.12.0" 292 + "@lumino/disposable" "^1.10.1" 293 + "@lumino/messaging" "^1.10.1" 294 + "@lumino/properties" "^1.8.1" 295 + "@lumino/signaling" "^1.10.1" 296 + "@lumino/widgets" "^1.31.1" 297 + 298 + "@jupyterlab/rendermime-interfaces@^4.0.0-alpha.7": 299 + version "4.0.0-alpha.7" 300 + resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-interfaces/-/rendermime-interfaces-4.0.0-alpha.7.tgz#d35d801250ca2c2be6803dc45a6de014985661ff" 301 + integrity sha512-64SD8wBW0EtxzNfME+VU+8rocRFFZ9XFqA7M/TJkG6//UFwS07NU9zrmV3fB+T5si0NjMPbzDviiWrG4sstR8A== 281 302 dependencies: 282 - "@jupyterlab/translation" "^4.0.0-alpha.4" 283 - "@lumino/coreutils" "^1.11.1" 284 - "@lumino/widgets" "^1.30.0" 303 + "@jupyterlab/translation" "^4.0.0-alpha.7" 304 + "@lumino/coreutils" "^1.12.0" 305 + "@lumino/widgets" "^1.31.1" 285 306 286 - "@jupyterlab/rendermime@^4.0.0-alpha.4": 287 - version "4.0.0-alpha.4" 288 - resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime/-/rendermime-4.0.0-alpha.4.tgz#5aae7164d47862542a89f61ac6c01fbc0623744c" 289 - integrity sha512-76Hy5Netd1tRAdolS+TBRW6pQUgV81Ak47wjzdiy9w75EFyU0RCYUZAUxgtSjSf+a40BpP8/ctjwPhZLgxgYgQ== 307 + "@jupyterlab/rendermime@^4.0.0-alpha.7": 308 + version "4.0.0-alpha.7" 309 + resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime/-/rendermime-4.0.0-alpha.7.tgz#f185e06ba4e1647aba7e15c6acc42e193707c82f" 310 + integrity sha512-ANeiplOfh6D0IAnMKC9G9HNYusX7GlVdUCG8Eui89OXm3Bhf9jMcaQqrKyU/O5NZhYOI5znQllcp4b/uZsEjWw== 290 311 dependencies: 291 - "@jupyterlab/apputils" "^4.0.0-alpha.4" 292 - "@jupyterlab/codemirror" "^4.0.0-alpha.4" 293 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 294 - "@jupyterlab/nbformat" "^4.0.0-alpha.4" 295 - "@jupyterlab/observables" "^5.0.0-alpha.4" 296 - "@jupyterlab/rendermime-interfaces" "^4.0.0-alpha.4" 297 - "@jupyterlab/services" "^7.0.0-alpha.4" 298 - "@jupyterlab/translation" "^4.0.0-alpha.4" 312 + "@jupyterlab/apputils" "^4.0.0-alpha.7" 313 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 314 + "@jupyterlab/nbformat" "^4.0.0-alpha.7" 315 + "@jupyterlab/observables" "^5.0.0-alpha.7" 316 + "@jupyterlab/rendermime-interfaces" "^4.0.0-alpha.7" 317 + "@jupyterlab/services" "^7.0.0-alpha.7" 318 + "@jupyterlab/translation" "^4.0.0-alpha.7" 299 319 "@lumino/algorithm" "^1.9.1" 300 - "@lumino/coreutils" "^1.11.1" 320 + "@lumino/coreutils" "^1.12.0" 301 321 "@lumino/messaging" "^1.10.1" 302 322 "@lumino/signaling" "^1.10.1" 303 - "@lumino/widgets" "^1.30.0" 323 + "@lumino/widgets" "^1.31.1" 304 324 lodash.escape "^4.0.1" 305 - marked "^2.0.0" 306 325 307 - "@jupyterlab/services@^7.0.0-alpha.4": 308 - version "7.0.0-alpha.4" 309 - resolved "https://registry.yarnpkg.com/@jupyterlab/services/-/services-7.0.0-alpha.4.tgz#814d2a8264aec7549c9ff0cceb2accd1a83f4609" 310 - integrity sha512-xHct7fuvHrwY05sSExZKFE0Vy9yvnh6npbkCycAPruyZy8tLDQDRVkplQe7IKqw/0VSdQzUh7nZeva49ZIZXEQ== 326 + "@jupyterlab/services@^7.0.0-alpha.7": 327 + version "7.0.0-alpha.7" 328 + resolved "https://registry.yarnpkg.com/@jupyterlab/services/-/services-7.0.0-alpha.7.tgz#47b220d3e8302064b6ea32c93c65f1b60ec76513" 329 + integrity sha512-m2BlFprgsRZkPKvrp4bSxyEGMyM/4uhHaUwUDl3XAOYhF786qCCD3w7cbupgYloPPuSD609uPYCObEoU76/8Fg== 311 330 dependencies: 312 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 313 - "@jupyterlab/nbformat" "^4.0.0-alpha.4" 314 - "@jupyterlab/observables" "^5.0.0-alpha.4" 315 - "@jupyterlab/settingregistry" "^4.0.0-alpha.4" 316 - "@jupyterlab/statedb" "^4.0.0-alpha.4" 331 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 332 + "@jupyterlab/nbformat" "^4.0.0-alpha.7" 333 + "@jupyterlab/observables" "^5.0.0-alpha.7" 334 + "@jupyterlab/settingregistry" "^4.0.0-alpha.7" 335 + "@jupyterlab/statedb" "^4.0.0-alpha.7" 317 336 "@lumino/algorithm" "^1.9.1" 318 - "@lumino/coreutils" "^1.11.1" 337 + "@lumino/coreutils" "^1.12.0" 319 338 "@lumino/disposable" "^1.10.1" 320 - "@lumino/polling" "^1.9.1" 339 + "@lumino/polling" "^1.10.0" 321 340 "@lumino/signaling" "^1.10.1" 322 341 node-fetch "^2.6.0" 323 342 ws "^7.4.6" 324 343 325 - "@jupyterlab/settingregistry@^4.0.0-alpha.4": 326 - version "4.0.0-alpha.4" 327 - resolved "https://registry.yarnpkg.com/@jupyterlab/settingregistry/-/settingregistry-4.0.0-alpha.4.tgz#5d0455d99bbc2671960d6ea06d31855c31ecda90" 328 - integrity sha512-BjLyNNJU1W3rdl4Bj6vPSrxrTQ0Pt/Z2bFn4yZYznp/mNAHpR91inHKD2n0ceSqjKALGeX9UKKfQkZMuEqoIqg== 344 + "@jupyterlab/settingregistry@^4.0.0-alpha.7": 345 + version "4.0.0-alpha.7" 346 + resolved "https://registry.yarnpkg.com/@jupyterlab/settingregistry/-/settingregistry-4.0.0-alpha.7.tgz#c5c6a3bcd2a413a668df9d6b8b4a1259a60cb16e" 347 + integrity sha512-jLuvj4x4Edl5mekN5CG3LvOQ9QGEhSDyjUGpiFLgMerUdUKca58NiZjihnK/a2Po1yITqnV56/J6QDM7SjzATg== 329 348 dependencies: 330 - "@jupyterlab/statedb" "^4.0.0-alpha.4" 331 - "@lumino/commands" "^1.19.0" 332 - "@lumino/coreutils" "^1.11.1" 349 + "@jupyterlab/statedb" "^4.0.0-alpha.7" 350 + "@lumino/commands" "^1.20.0" 351 + "@lumino/coreutils" "^1.12.0" 333 352 "@lumino/disposable" "^1.10.1" 334 353 "@lumino/signaling" "^1.10.1" 335 354 ajv "^6.12.3" 336 355 json5 "^2.1.1" 337 356 338 - "@jupyterlab/shared-models@^4.0.0-alpha.4": 339 - version "4.0.0-alpha.4" 340 - resolved "https://registry.yarnpkg.com/@jupyterlab/shared-models/-/shared-models-4.0.0-alpha.4.tgz#076d4eb60ca35f6c809927ffa9e0d725612d72b7" 341 - integrity sha512-Q6Z4svxkeXSVEfKaWMdiwWlqMC+A9mWEm4niTC7RYnkY6D4i5TGbuHrv/7vL72xldI9EUP412HgrLaO+73bU/g== 357 + "@jupyterlab/shared-models@^4.0.0-alpha.7": 358 + version "4.0.0-alpha.7" 359 + resolved "https://registry.yarnpkg.com/@jupyterlab/shared-models/-/shared-models-4.0.0-alpha.7.tgz#6baca37f9fdc119d0605034128f32685514ef232" 360 + integrity sha512-Ts5ZyaexjOdqcY3Z042IJJORKDGn+uFtI6Jl6Y89L9IDC58BQExhgQ7QdjuPg9+XWRJN6PyLiaBv0zc7LY9WDA== 342 361 dependencies: 343 - "@jupyterlab/nbformat" "^4.0.0-alpha.4" 344 - "@lumino/coreutils" "^1.11.1" 362 + "@jupyterlab/nbformat" "^4.0.0-alpha.7" 363 + "@lumino/coreutils" "^1.12.0" 345 364 "@lumino/disposable" "^1.10.1" 346 365 "@lumino/signaling" "^1.10.1" 347 366 y-protocols "^1.0.5" 348 367 yjs "^13.5.17" 349 368 350 - "@jupyterlab/statedb@^4.0.0-alpha.4": 351 - version "4.0.0-alpha.4" 352 - resolved "https://registry.yarnpkg.com/@jupyterlab/statedb/-/statedb-4.0.0-alpha.4.tgz#70d5fe7e504c339b9fc0771f08ea9913c8eee562" 353 - integrity sha512-S0SeCbtsfr79q4yRuQD7gesD3ZyMMl6vnw+jGGXYbmqepcJbWnxnz8KhDBrd5faSVNB+8mKHbLRqA+YuUJOEQQ== 369 + "@jupyterlab/statedb@^4.0.0-alpha.7": 370 + version "4.0.0-alpha.7" 371 + resolved "https://registry.yarnpkg.com/@jupyterlab/statedb/-/statedb-4.0.0-alpha.7.tgz#97bace7b42488799ddd1d6dc5ffedb74807d2858" 372 + integrity sha512-jxa3qSurLd/R0hBUSO6xvP2MgnCkCiuJ5qxrgU3LWn56ZpSRg6eUSmWYF/lUt92WfTKFZLojU+Utfdrzy4f80Q== 354 373 dependencies: 355 - "@lumino/commands" "^1.19.0" 356 - "@lumino/coreutils" "^1.11.1" 374 + "@lumino/commands" "^1.20.0" 375 + "@lumino/coreutils" "^1.12.0" 357 376 "@lumino/disposable" "^1.10.1" 358 377 "@lumino/properties" "^1.8.1" 359 378 "@lumino/signaling" "^1.10.1" 360 379 361 - "@jupyterlab/statusbar@^4.0.0-alpha.4": 362 - version "4.0.0-alpha.4" 363 - resolved "https://registry.yarnpkg.com/@jupyterlab/statusbar/-/statusbar-4.0.0-alpha.4.tgz#7dba882b9a7ae509eea4b59ba1756748fa4e5666" 364 - integrity sha512-Qvhpzr7r5h/kzQzH58Nrs4VhRXgQy7jsHUpvp9hEZc5FYZQ7JyJCReQafogTZ7SIvubA2EkbsKfSkmWBa4U1AQ== 380 + "@jupyterlab/statusbar@^4.0.0-alpha.7": 381 + version "4.0.0-alpha.7" 382 + resolved "https://registry.yarnpkg.com/@jupyterlab/statusbar/-/statusbar-4.0.0-alpha.7.tgz#7dcbe4bd35571a35850b23c1969d247b6f8b133c" 383 + integrity sha512-ltAZo/oHGYjS90dgT8q7PRFJB18o+sMfqQo+DjMSU7Gd7yDtYS8V2SoF2c4xDhj2FePEF2ME/SvI+Zbh74kd+g== 365 384 dependencies: 366 - "@jupyterlab/apputils" "^4.0.0-alpha.4" 367 - "@jupyterlab/codeeditor" "^4.0.0-alpha.4" 368 - "@jupyterlab/services" "^7.0.0-alpha.4" 369 - "@jupyterlab/translation" "^4.0.0-alpha.4" 370 - "@jupyterlab/ui-components" "^4.0.0-alpha.19" 385 + "@jupyterlab/ui-components" "^4.0.0-alpha.22" 371 386 "@lumino/algorithm" "^1.9.1" 372 - "@lumino/coreutils" "^1.11.1" 387 + "@lumino/coreutils" "^1.12.0" 373 388 "@lumino/disposable" "^1.10.1" 374 389 "@lumino/messaging" "^1.10.1" 375 390 "@lumino/signaling" "^1.10.1" 376 - "@lumino/widgets" "^1.30.0" 391 + "@lumino/widgets" "^1.31.1" 377 392 csstype "~3.0.3" 378 393 react "^17.0.1" 379 394 typestyle "^2.0.4" 380 395 381 - "@jupyterlab/translation@^4.0.0-alpha.4": 382 - version "4.0.0-alpha.4" 383 - resolved "https://registry.yarnpkg.com/@jupyterlab/translation/-/translation-4.0.0-alpha.4.tgz#7125ce27433e1dbb7118bb9dbdb1b6e7fa5400fb" 384 - integrity sha512-L6jAJRNg421ZP8NHyelAB8ahYuAelIAIIBAZkfXgEiz/XPs9lbJh6J9GnA2wrN0+aSd5oAM691snYcz9Ii23mw== 396 + "@jupyterlab/translation@^4.0.0-alpha.7": 397 + version "4.0.0-alpha.7" 398 + resolved "https://registry.yarnpkg.com/@jupyterlab/translation/-/translation-4.0.0-alpha.7.tgz#c59d569139335244a991fa6d55306a94692d7aa1" 399 + integrity sha512-36s0prZ1MRVNzHWwZ9HafAC83FTFeM/2kP1OgWDUnD6sWb3WS+j5VyL5bFOOY4LEGE7OY55exR7r/xVsrx4R0A== 385 400 dependencies: 386 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 387 - "@jupyterlab/services" "^7.0.0-alpha.4" 388 - "@jupyterlab/statedb" "^4.0.0-alpha.4" 389 - "@lumino/coreutils" "^1.11.1" 401 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 402 + "@jupyterlab/services" "^7.0.0-alpha.7" 403 + "@jupyterlab/statedb" "^4.0.0-alpha.7" 404 + "@lumino/coreutils" "^1.12.0" 390 405 391 - "@jupyterlab/ui-components@^4.0.0-alpha.19": 392 - version "4.0.0-alpha.19" 393 - resolved "https://registry.yarnpkg.com/@jupyterlab/ui-components/-/ui-components-4.0.0-alpha.19.tgz#bab959a370b0902ea50964543e45af679b4b0bdb" 394 - integrity sha512-wtr+S4kJmyxz8aQOk2DYFU6TYq5aqh+9Mx1GGHgck9W+ueCkWb+zfBfRNdfvLovJBlUx/sAALFPKj4e1Pqje5w== 406 + "@jupyterlab/ui-components@^4.0.0-alpha.22": 407 + version "4.0.0-alpha.22" 408 + resolved "https://registry.yarnpkg.com/@jupyterlab/ui-components/-/ui-components-4.0.0-alpha.22.tgz#1fda27dc0be7f6e184b12ccb2f7cc56df2581cfc" 409 + integrity sha512-b6WHQ+KGaA4I237tSFUlgl0vhiPl4bX0Z26+QuCmirHnV8+RBKevH69wWl89iDwhB61Obz0RMmU7oYL8pAjStg== 395 410 dependencies: 396 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 397 - "@jupyterlab/translation" "^4.0.0-alpha.4" 411 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 412 + "@jupyterlab/translation" "^4.0.0-alpha.7" 398 413 "@lumino/algorithm" "^1.9.1" 399 - "@lumino/commands" "^1.19.0" 400 - "@lumino/coreutils" "^1.11.1" 414 + "@lumino/commands" "^1.20.0" 415 + "@lumino/coreutils" "^1.12.0" 401 416 "@lumino/disposable" "^1.10.1" 402 417 "@lumino/messaging" "^1.10.1" 403 - "@lumino/polling" "^1.9.1" 418 + "@lumino/polling" "^1.10.0" 404 419 "@lumino/properties" "^1.8.1" 405 420 "@lumino/signaling" "^1.10.1" 406 421 "@lumino/virtualdom" "^1.14.1" 407 - "@lumino/widgets" "^1.30.0" 422 + "@lumino/widgets" "^1.31.1" 423 + "@rjsf/core" "^3.1.0" 408 424 react "^17.0.1" 409 425 react-dom "^17.0.1" 410 426 typestyle "^2.0.4" 411 427 412 - "@jupyterlab/user@^4.0.0-alpha.4": 413 - version "4.0.0-alpha.4" 414 - resolved "https://registry.yarnpkg.com/@jupyterlab/user/-/user-4.0.0-alpha.4.tgz#d7869568c136a236fd98619b671f131c8004f153" 415 - integrity sha512-puvChNYyI9PlJEl71Fw70137UdCStMH6jSrM2E7zjPMHm5SIoBt3zUV9E/DYpTR99RO/+JhGM54/j9sFpnqUkg== 428 + "@jupyterlab/user@^4.0.0-alpha.7": 429 + version "4.0.0-alpha.7" 430 + resolved "https://registry.yarnpkg.com/@jupyterlab/user/-/user-4.0.0-alpha.7.tgz#bb69c5a7706bdd62ece1b68ff1329eb1f69d0ff5" 431 + integrity sha512-YHn/Wj6+FikvpAmEoCmQtPDQSoVnE8qTCMcI8549tYzZgvRJMfPkZrtAvSztBtoIK/aCgjnXvrSwI0KF/74yrA== 416 432 dependencies: 417 - "@jupyterlab/coreutils" "^6.0.0-alpha.4" 418 - "@jupyterlab/services" "^7.0.0-alpha.4" 419 - "@jupyterlab/ui-components" "^4.0.0-alpha.19" 420 - "@lumino/coreutils" "^1.11.1" 433 + "@jupyterlab/coreutils" "^6.0.0-alpha.7" 434 + "@jupyterlab/services" "^7.0.0-alpha.7" 435 + "@jupyterlab/ui-components" "^4.0.0-alpha.22" 436 + "@lumino/coreutils" "^1.12.0" 421 437 "@lumino/signaling" "^1.10.1" 422 438 "@lumino/virtualdom" "^1.14.1" 423 - "@lumino/widgets" "^1.30.0" 424 - lib0 "^0.2.42" 439 + "@lumino/widgets" "^1.31.1" 425 440 426 441 "@lumino/algorithm@^1.9.1": 427 442 version "1.9.1" 428 443 resolved "https://registry.yarnpkg.com/@lumino/algorithm/-/algorithm-1.9.1.tgz#a870598e031f5ee85e20e77ce7bfffbb0dffd7f5" 429 444 integrity sha512-d0rj7IYRzYj6WbWSrbJbKvrfO4H0NUnXT2yjSWS/sCklpTpSp0IGmndK/X4r6gG+ev5lb5+wBg9ofUDBvoAlAw== 430 445 431 - "@lumino/application@^1.27.0": 432 - version "1.28.0" 433 - resolved "https://registry.yarnpkg.com/@lumino/application/-/application-1.28.0.tgz#024936160a32f2642341c5a3a6828966d951318a" 434 - integrity sha512-urLgkpkBRntE7K8J70wA+mDFkFNnb8gOMsp98Nms86tPImSOTaaWse1EszMsesMFG2c+0UbvgU2FjL0FD2pP3A== 446 + "@lumino/application@^1.28.1": 447 + version "1.28.1" 448 + resolved "https://registry.yarnpkg.com/@lumino/application/-/application-1.28.1.tgz#dfefe82ad414f51659e5931e3d07989364d7625e" 449 + integrity sha512-BRRtWJ3mG2abZ9XwB/olGJWXeJjtflDGB/uW6ZsG53Pfu7ekyXKv0wUcijvW+HM9o3bMR+PwM7ELyXtHKkodig== 435 450 dependencies: 436 451 "@lumino/commands" "^1.20.0" 437 452 "@lumino/coreutils" "^1.12.0" 438 - "@lumino/widgets" "^1.31.0" 453 + "@lumino/widgets" "^1.31.1" 439 454 440 455 "@lumino/collections@^1.9.1": 441 456 version "1.9.1" ··· 444 459 dependencies: 445 460 "@lumino/algorithm" "^1.9.1" 446 461 447 - "@lumino/commands@^1.19.0", "@lumino/commands@^1.20.0": 462 + "@lumino/commands@^1.20.0": 448 463 version "1.20.0" 449 464 resolved "https://registry.yarnpkg.com/@lumino/commands/-/commands-1.20.0.tgz#44c797134bb33946141a490c506420bd5f12ce0f" 450 465 integrity sha512-xyrzDIJ9QEbcbRAwmXrjb7A7/E5MDNbnLANKwqmFVNF+4LSnF62obdvY4On3Rify3HmfX0u16Xr9gfoWPX9wLQ== ··· 457 472 "@lumino/signaling" "^1.10.1" 458 473 "@lumino/virtualdom" "^1.14.1" 459 474 460 - "@lumino/coreutils@^1.11.1", "@lumino/coreutils@^1.12.0": 475 + "@lumino/coreutils@^1.12.0": 461 476 version "1.12.0" 462 477 resolved "https://registry.yarnpkg.com/@lumino/coreutils/-/coreutils-1.12.0.tgz#fbdef760f736eaf2bd396a5c6fc3a68a4b449b15" 463 478 integrity sha512-DSglh4ylmLi820CNx9soJmDJCpUgymckdWeGWuN0Ash5g60oQvrQDfosVxEhzmNvtvXv45WZEqSBzDP6E5SEmQ== ··· 475 490 resolved "https://registry.yarnpkg.com/@lumino/domutils/-/domutils-1.8.1.tgz#cf118e4eba90c3bf1e3edf7f19cce8846ec7875c" 476 491 integrity sha512-QUVXwmDMIfcHC3yslhmyGK4HYBKaJ3xX5MTwDrjsSX7J7AZ4jwL4zfsxyF9ntdqEKraoJhLQ6BaUBY+Ur1cnYw== 477 492 478 - "@lumino/dragdrop@^1.13.1", "@lumino/dragdrop@^1.14.0": 493 + "@lumino/dragdrop@^1.14.0": 479 494 version "1.14.0" 480 495 resolved "https://registry.yarnpkg.com/@lumino/dragdrop/-/dragdrop-1.14.0.tgz#48baacc190518d0cb563698daa0d5b976d6fe5c3" 481 496 integrity sha512-hO8sgF0BkpihKIP6UZgVJgiOEhz89i7Oxtp9FR9Jqw5alGocxSXt7q3cteMvqpcL6o2/s3CafZNRkVLRXmepNw== ··· 496 511 "@lumino/algorithm" "^1.9.1" 497 512 "@lumino/collections" "^1.9.1" 498 513 499 - "@lumino/polling@^1.9.1": 514 + "@lumino/polling@^1.10.0": 500 515 version "1.10.0" 501 516 resolved "https://registry.yarnpkg.com/@lumino/polling/-/polling-1.10.0.tgz#94a92811edf4c2534c741510b30f500d8c16a395" 502 517 integrity sha512-ZNXObJQfugnS41Yrlr7yWcFiRK+xAGGOXO08JJ0Mctsg5mT30UEGFVWJY2AjZ6N5aQuLyGed/pMkBzLzrzt8OA== ··· 524 539 dependencies: 525 540 "@lumino/algorithm" "^1.9.1" 526 541 527 - "@lumino/widgets@^1.30.0", "@lumino/widgets@^1.31.0": 528 - version "1.31.0" 529 - resolved "https://registry.yarnpkg.com/@lumino/widgets/-/widgets-1.31.0.tgz#8fe458d78f1b0bfd0ab0a7823b898c4015cd7897" 530 - integrity sha512-Cv1UXS3y5uVZkAdojO1WEB5mRSdUlZgln7Fwgajx1s9LWsfOiMWHbSaNpAWZiSo/CXw9PVtd+bZCFNji5yiIxw== 542 + "@lumino/widgets@^1.31.1": 543 + version "1.31.1" 544 + resolved "https://registry.yarnpkg.com/@lumino/widgets/-/widgets-1.31.1.tgz#c9c0b8c7940b412e55369fa277392bf86c6e4136" 545 + integrity sha512-4RzAMqWwWHa5IiaQaeIbiZdIBm/FOg6ub0w8dG3km0k+zIQyA4LFq2dbB1w6SHT1d06N+L/ebYfgvMFswPENag== 531 546 dependencies: 532 547 "@lumino/algorithm" "^1.9.1" 533 548 "@lumino/commands" "^1.20.0" ··· 578 593 mkdirp "^1.0.4" 579 594 rimraf "^3.0.2" 580 595 596 + "@rjsf/core@^3.1.0": 597 + version "3.2.1" 598 + resolved "https://registry.yarnpkg.com/@rjsf/core/-/core-3.2.1.tgz#8a7b24c9a6f01f0ecb093fdfc777172c12b1b009" 599 + integrity sha512-dk8ihvxFbcuIwU7G+HiJbFgwyIvaumPt5g5zfnuC26mwTUPlaDGFXKK2yITp8tJ3+hcwS5zEXtAN9wUkfuM4jA== 600 + dependencies: 601 + "@types/json-schema" "^7.0.7" 602 + ajv "^6.7.0" 603 + core-js-pure "^3.6.5" 604 + json-schema-merge-allof "^0.6.0" 605 + jsonpointer "^5.0.0" 606 + lodash "^4.17.15" 607 + nanoid "^3.1.23" 608 + prop-types "^15.7.2" 609 + react-is "^16.9.0" 610 + 581 611 "@sindresorhus/is@^0.14.0": 582 612 version "0.14.0" 583 613 resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" ··· 624 654 resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" 625 655 integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== 626 656 657 + "@types/json-schema@^7.0.7": 658 + version "7.0.10" 659 + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.10.tgz#9b05b7896166cd00e9cbd59864853abf65d9ac23" 660 + integrity sha512-BLO9bBq59vW3fxCpD4o0N4U+DXsvwvIcl+jofw0frQo/GrBFC+/jRZj1E7kgp6dvTyNmA4y6JCV5Id/r3mNP5A== 661 + 627 662 "@types/minimatch@*": 628 663 version "3.0.5" 629 664 resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" ··· 1049 1084 resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" 1050 1085 integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== 1051 1086 1052 - ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: 1087 + ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.7.0: 1053 1088 version "6.12.6" 1054 1089 resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" 1055 1090 integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== ··· 1505 1540 safe-buffer "5.1.2" 1506 1541 vary "~1.1.2" 1507 1542 1543 + compute-gcd@^1.2.1: 1544 + version "1.2.1" 1545 + resolved "https://registry.yarnpkg.com/compute-gcd/-/compute-gcd-1.2.1.tgz#34d639f3825625e1357ce81f0e456a6249d8c77f" 1546 + integrity sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg== 1547 + dependencies: 1548 + validate.io-array "^1.0.3" 1549 + validate.io-function "^1.0.2" 1550 + validate.io-integer-array "^1.0.0" 1551 + 1552 + compute-lcm@^1.1.0: 1553 + version "1.1.2" 1554 + resolved "https://registry.yarnpkg.com/compute-lcm/-/compute-lcm-1.1.2.tgz#9107c66b9dca28cefb22b4ab4545caac4034af23" 1555 + integrity sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ== 1556 + dependencies: 1557 + compute-gcd "^1.2.1" 1558 + validate.io-array "^1.0.3" 1559 + validate.io-function "^1.0.2" 1560 + validate.io-integer-array "^1.0.0" 1561 + 1508 1562 concat-map@0.0.1: 1509 1563 version "0.0.1" 1510 1564 resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" ··· 1551 1605 dependencies: 1552 1606 depd "~2.0.0" 1553 1607 keygrip "~1.1.0" 1608 + 1609 + core-js-pure@^3.6.5: 1610 + version "3.21.1" 1611 + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.21.1.tgz#8c4d1e78839f5f46208de7230cebfb72bc3bdb51" 1612 + integrity sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ== 1554 1613 1555 1614 core-util-is@1.0.2: 1556 1615 version "1.0.2" ··· 3178 3237 resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 3179 3238 integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== 3180 3239 3240 + json-schema-compare@^0.2.2: 3241 + version "0.2.2" 3242 + resolved "https://registry.yarnpkg.com/json-schema-compare/-/json-schema-compare-0.2.2.tgz#dd601508335a90c7f4cfadb6b2e397225c908e56" 3243 + integrity sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ== 3244 + dependencies: 3245 + lodash "^4.17.4" 3246 + 3247 + json-schema-merge-allof@^0.6.0: 3248 + version "0.6.0" 3249 + resolved "https://registry.yarnpkg.com/json-schema-merge-allof/-/json-schema-merge-allof-0.6.0.tgz#64d48820fec26b228db837475ce3338936bf59a5" 3250 + integrity sha512-LEw4VMQVRceOPLuGRWcxW5orTTiR9ZAtqTAe4rQUjNADTeR81bezBVFa0MqIwp0YmHIM1KkhSjZM7o+IQhaPbQ== 3251 + dependencies: 3252 + compute-lcm "^1.1.0" 3253 + json-schema-compare "^0.2.2" 3254 + lodash "^4.17.4" 3255 + 3181 3256 json-schema-traverse@^0.4.1: 3182 3257 version "0.4.1" 3183 3258 resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" ··· 3226 3301 resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" 3227 3302 integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= 3228 3303 3304 + jsonpointer@^5.0.0: 3305 + version "5.0.0" 3306 + resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-5.0.0.tgz#f802669a524ec4805fa7389eadbc9921d5dc8072" 3307 + integrity sha512-PNYZIdMjVIvVgDSYKTT63Y+KZ6IZvGRNNWcxwD+GNnUz1MKPfv30J8ueCjdwcN0nDx2SlshgyB7Oy0epAzVRRg== 3308 + 3229 3309 jsonwebtoken@8.5.1: 3230 3310 version "8.5.1" 3231 3311 resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" ··· 3508 3588 resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" 3509 3589 integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= 3510 3590 3511 - lodash@4, lodash@4.17.21, lodash@^4.17.19, lodash@^4.17.4: 3591 + lodash@4, lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.4: 3512 3592 version "4.17.21" 3513 3593 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 3514 3594 integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 3515 3595 3516 - loose-envify@^1.1.0: 3596 + loose-envify@^1.1.0, loose-envify@^1.4.0: 3517 3597 version "1.4.0" 3518 3598 resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 3519 3599 integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== ··· 3579 3659 dependencies: 3580 3660 semver "^6.0.0" 3581 3661 3582 - marked@2.1.3, marked@^2.0.0, marked@^2.0.1: 3662 + marked@2.1.3, marked@^2.0.1: 3583 3663 version "2.1.3" 3584 3664 resolved "https://registry.yarnpkg.com/marked/-/marked-2.1.3.tgz#bd017cef6431724fd4b27e0657f5ceb14bff3753" 3585 3665 integrity sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA== ··· 3776 3856 ncp "~2.0.0" 3777 3857 rimraf "~2.4.0" 3778 3858 3859 + nanoid@^3.1.23: 3860 + version "3.3.1" 3861 + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" 3862 + integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== 3863 + 3779 3864 nanoid@^3.1.30: 3780 3865 version "3.1.32" 3781 3866 resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.32.tgz#8f96069e6239cc0a9ae8c0d3b41a3b4933a88c0a" ··· 4264 4349 resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" 4265 4350 integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= 4266 4351 4352 + prop-types@^15.7.2: 4353 + version "15.8.1" 4354 + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" 4355 + integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== 4356 + dependencies: 4357 + loose-envify "^1.4.0" 4358 + object-assign "^4.1.1" 4359 + react-is "^16.13.1" 4360 + 4267 4361 proxy-addr@~2.0.5, proxy-addr@~2.0.7: 4268 4362 version "2.0.7" 4269 4363 resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" ··· 4290 4384 end-of-stream "^1.1.0" 4291 4385 once "^1.3.1" 4292 4386 4293 - punycode@1.3.2: 4294 - version "1.3.2" 4295 - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" 4296 - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= 4297 - 4298 4387 punycode@^1.4.1: 4299 4388 version "1.4.1" 4300 4389 resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" ··· 4319 4408 version "6.5.3" 4320 4409 resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" 4321 4410 integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== 4322 - 4323 - querystring@0.2.0: 4324 - version "0.2.0" 4325 - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" 4326 - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= 4327 4411 4328 4412 querystringify@^2.1.1: 4329 4413 version "2.2.0" ··· 4398 4482 loose-envify "^1.1.0" 4399 4483 object-assign "^4.1.1" 4400 4484 scheduler "^0.20.2" 4485 + 4486 + react-is@^16.13.1, react-is@^16.9.0: 4487 + version "16.13.1" 4488 + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" 4489 + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== 4401 4490 4402 4491 react@^17.0.1: 4403 4492 version "17.0.2" ··· 5357 5446 querystringify "^2.1.1" 5358 5447 requires-port "^1.0.0" 5359 5448 5360 - url@^0.11.0: 5361 - version "0.11.0" 5362 - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" 5363 - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= 5364 - dependencies: 5365 - punycode "1.3.2" 5366 - querystring "0.2.0" 5367 - 5368 5449 util-deprecate@^1.0.1, util-deprecate@^1.0.2: 5369 5450 version "1.0.2" 5370 5451 resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" ··· 5392 5473 dependencies: 5393 5474 spdx-correct "^3.0.0" 5394 5475 spdx-expression-parse "^3.0.0" 5476 + 5477 + validate.io-array@^1.0.3: 5478 + version "1.0.6" 5479 + resolved "https://registry.yarnpkg.com/validate.io-array/-/validate.io-array-1.0.6.tgz#5b5a2cafd8f8b85abb2f886ba153f2d93a27774d" 5480 + integrity sha1-W1osr9j4uFq7L4hroVPy2Tond00= 5481 + 5482 + validate.io-function@^1.0.2: 5483 + version "1.0.2" 5484 + resolved "https://registry.yarnpkg.com/validate.io-function/-/validate.io-function-1.0.2.tgz#343a19802ed3b1968269c780e558e93411c0bad7" 5485 + integrity sha1-NDoZgC7TsZaCaceA5VjpNBHAutc= 5486 + 5487 + validate.io-integer-array@^1.0.0: 5488 + version "1.0.0" 5489 + resolved "https://registry.yarnpkg.com/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz#2cabde033293a6bcbe063feafe91eaf46b13a089" 5490 + integrity sha1-LKveAzKTpry+Bj/q/pHq9GsToIk= 5491 + dependencies: 5492 + validate.io-array "^1.0.3" 5493 + validate.io-integer "^1.0.4" 5494 + 5495 + validate.io-integer@^1.0.4: 5496 + version "1.0.5" 5497 + resolved "https://registry.yarnpkg.com/validate.io-integer/-/validate.io-integer-1.0.5.tgz#168496480b95be2247ec443f2233de4f89878068" 5498 + integrity sha1-FoSWSAuVviJH7EQ/IjPeT4mHgGg= 5499 + dependencies: 5500 + validate.io-number "^1.0.3" 5501 + 5502 + validate.io-number@^1.0.3: 5503 + version "1.0.3" 5504 + resolved "https://registry.yarnpkg.com/validate.io-number/-/validate.io-number-1.0.3.tgz#f63ffeda248bf28a67a8d48e0e3b461a1665baf8" 5505 + integrity sha1-9j/+2iSL8opnqNSODjtGGhZluvg= 5395 5506 5396 5507 validator@13.7.0: 5397 5508 version "13.7.0"