@quarto/jupyterlab-quarto 0.1.44 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- package/LICENSE +1 -1
- package/README.md +48 -15
- package/lib/__tests__/jupyterlab_quarto.spec.d.ts +3 -0
- package/lib/__tests__/jupyterlab_quarto.spec.js +9 -0
- package/lib/ast/ast.d.ts +2 -0
- package/lib/ast/ast.js +40 -0
- package/lib/const.d.ts +4 -0
- package/lib/const.js +11 -0
- package/lib/hooks/codemirror.d.ts +5 -0
- package/lib/hooks/codemirror.js +77 -0
- package/lib/index.d.ts +5 -0
- package/lib/index.js +61 -0
- package/lib/manager.d.ts +8 -0
- package/lib/manager.js +115 -0
- package/lib/plugins/callouts.d.ts +2 -0
- package/lib/plugins/callouts.js +210 -0
- package/lib/plugins/cites.d.ts +2 -0
- package/lib/plugins/cites.js +166 -0
- package/lib/plugins/decorator.d.ts +2 -0
- package/lib/plugins/decorator.js +58 -0
- package/lib/plugins/divs.d.ts +5 -0
- package/lib/plugins/divs.js +111 -0
- package/lib/plugins/figure-divs.d.ts +2 -0
- package/lib/plugins/figure-divs.js +54 -0
- package/lib/plugins/figures.d.ts +16 -0
- package/lib/plugins/figures.js +98 -0
- package/lib/plugins/gridtables/common/gridtables/GetCells.d.ts +7 -0
- package/lib/plugins/gridtables/common/gridtables/GetCells.js +43 -0
- package/lib/plugins/gridtables/common/gridtables/GetColumnWidths.d.ts +7 -0
- package/lib/plugins/gridtables/common/gridtables/GetColumnWidths.js +22 -0
- package/lib/plugins/gridtables/common/markdown-it/ColumnAlignments.d.ts +7 -0
- package/lib/plugins/gridtables/common/markdown-it/ColumnAlignments.js +12 -0
- package/lib/plugins/gridtables/common/markdown-it/EmitTable.d.ts +4 -0
- package/lib/plugins/gridtables/common/markdown-it/EmitTable.js +64 -0
- package/lib/plugins/gridtables/common/markdown-it/GetCharCodeAtStartOfLine.d.ts +8 -0
- package/lib/plugins/gridtables/common/markdown-it/GetCharCodeAtStartOfLine.js +17 -0
- package/lib/plugins/gridtables/common/markdown-it/GetLine.d.ts +2 -0
- package/lib/plugins/gridtables/common/markdown-it/GetLine.js +9 -0
- package/lib/plugins/gridtables/common/markdown-it/ParseTable.d.ts +3 -0
- package/lib/plugins/gridtables/common/markdown-it/ParseTable.js +152 -0
- package/lib/plugins/gridtables/common/markdown-it/ParseTableResult.d.ts +12 -0
- package/lib/plugins/gridtables/common/markdown-it/ParseTableResult.js +17 -0
- package/lib/plugins/gridtables/index.d.ts +1 -0
- package/lib/plugins/gridtables/index.js +10 -0
- package/lib/plugins/gridtables/interfaces/markdown-it/IState.d.ts +10 -0
- package/lib/plugins/gridtables/interfaces/markdown-it/IState.js +5 -0
- package/lib/plugins/gridtables/interfaces/markdown-it/IToken.d.ts +6 -0
- package/lib/plugins/gridtables/interfaces/markdown-it/IToken.js +5 -0
- package/lib/plugins/gridtables/interfaces/markdown-it/TRuleFunction.d.ts +3 -0
- package/lib/plugins/gridtables/interfaces/markdown-it/TRuleFunction.js +5 -0
- package/lib/plugins/gridtables/rules/gridtable.d.ts +3 -0
- package/lib/plugins/gridtables/rules/gridtable.js +25 -0
- package/lib/plugins/index.d.ts +15 -0
- package/lib/plugins/index.js +21 -0
- package/lib/plugins/math.d.ts +6 -0
- package/lib/plugins/math.js +179 -0
- package/lib/plugins/mermaid/index.d.ts +4 -0
- package/lib/plugins/mermaid/index.js +60 -0
- package/lib/plugins/shortcodes.d.ts +3 -0
- package/lib/plugins/shortcodes.js +32 -0
- package/lib/plugins/spans.d.ts +2 -0
- package/lib/plugins/spans.js +37 -0
- package/lib/plugins/table-captions.d.ts +2 -0
- package/lib/plugins/table-captions.js +72 -0
- package/lib/plugins/utils/html.d.ts +11 -0
- package/lib/plugins/utils/html.js +50 -0
- package/lib/plugins/utils/markdownit.d.ts +15 -0
- package/lib/plugins/utils/markdownit.js +46 -0
- package/lib/plugins/utils/tok.d.ts +7 -0
- package/lib/plugins/utils/tok.js +13 -0
- package/lib/plugins/yaml.d.ts +2 -0
- package/lib/plugins/yaml.js +330 -0
- package/lib/providers/attrs.d.ts +1 -0
- package/lib/providers/attrs.js +15 -0
- package/lib/providers/callouts.d.ts +1 -0
- package/lib/providers/callouts.js +15 -0
- package/lib/providers/cites.d.ts +1 -0
- package/lib/providers/cites.js +15 -0
- package/lib/providers/decorator.d.ts +1 -0
- package/lib/providers/decorator.js +15 -0
- package/lib/providers/deflist.d.ts +1 -0
- package/lib/providers/deflist.js +15 -0
- package/lib/providers/divs.d.ts +1 -0
- package/lib/providers/divs.js +27 -0
- package/lib/providers/figure-divs.d.ts +1 -0
- package/lib/providers/figure-divs.js +15 -0
- package/lib/providers/figures.d.ts +1 -0
- package/lib/providers/figures.js +15 -0
- package/lib/providers/footnotes.d.ts +1 -0
- package/lib/providers/footnotes.js +15 -0
- package/lib/providers/gridtables.d.ts +1 -0
- package/lib/providers/gridtables.js +15 -0
- package/lib/providers/math.d.ts +1 -0
- package/lib/providers/math.js +104 -0
- package/lib/providers/mermaid.d.ts +1 -0
- package/lib/providers/mermaid.js +17 -0
- package/lib/providers/provider.d.ts +3 -0
- package/lib/providers/provider.js +12 -0
- package/lib/providers/shortcodes.d.ts +1 -0
- package/lib/providers/shortcodes.js +15 -0
- package/lib/providers/spans.d.ts +1 -0
- package/lib/providers/spans.js +15 -0
- package/lib/providers/sub.d.ts +1 -0
- package/lib/providers/sub.js +15 -0
- package/lib/providers/sup.d.ts +1 -0
- package/lib/providers/sup.js +15 -0
- package/lib/providers/table-captions.d.ts +1 -0
- package/lib/providers/table-captions.js +15 -0
- package/lib/providers/tasklists.d.ts +1 -0
- package/lib/providers/tasklists.js +15 -0
- package/lib/providers/yaml.d.ts +1 -0
- package/lib/providers/yaml.js +15 -0
- package/lib/types.d.ts +43 -0
- package/lib/types.js +1 -0
- package/lib/widgets.d.ts +14 -0
- package/lib/widgets.js +57 -0
- package/package.json +105 -39
- package/style/base.css +34 -33
- package/style/index.css +1 -1
- package/schema/plugin.json +0 -8
- package/src/@types/markdown-it-deflist.d.ts +0 -10
- package/src/@types/markdown-it-footnote.d.ts +0 -10
- package/src/@types/markdown-it-gridtables.d.ts +0 -10
- package/src/@types/markdown-it-implicit-figures.d.ts +0 -10
- package/src/@types/markdown-it-sub.d.ts +0 -10
- package/src/@types/markdown-it-sup.d.ts +0 -10
- package/src/@types/markdown-it-task-lists.d.ts +0 -10
@@ -0,0 +1,12 @@
|
|
1
|
+
import { kMarkdownItMgr, kPackageNamespace } from '../const';
|
2
|
+
export function markdownItExtension(provider) {
|
3
|
+
return {
|
4
|
+
id: `${kPackageNamespace}:${provider.id}`,
|
5
|
+
autoStart: true,
|
6
|
+
requires: [kMarkdownItMgr],
|
7
|
+
activate: (_app, manager) => {
|
8
|
+
console.log(`Quarto MarkdownIt plugin ${provider.id} is activated!`);
|
9
|
+
manager.registerPlugin(provider);
|
10
|
+
}
|
11
|
+
};
|
12
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const shortcodes: import("@jupyterlab/application").JupyterFrontEndPlugin<void>;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* shortcodes.ts
|
3
|
+
*
|
4
|
+
* Copyright (C) 2020-2023 Posit Software, PBC
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
import { shortcodePlugin } from '../plugins/shortcodes';
|
8
|
+
import { markdownItExtension } from './provider';
|
9
|
+
export const shortcodes = markdownItExtension({
|
10
|
+
id: '@quarto/shortcode',
|
11
|
+
title: 'Shortcodes',
|
12
|
+
plugin: async () => {
|
13
|
+
return [shortcodePlugin];
|
14
|
+
}
|
15
|
+
});
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const spans: import("@jupyterlab/application").JupyterFrontEndPlugin<void>;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* spans.ts
|
3
|
+
*
|
4
|
+
* Copyright (C) 2020-2023 Posit Software, PBC
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
import { spansPlugin } from '../plugins/spans';
|
8
|
+
import { markdownItExtension } from './provider';
|
9
|
+
export const spans = markdownItExtension({
|
10
|
+
id: '@quarto/spans',
|
11
|
+
title: 'Pandoc bracketed spans',
|
12
|
+
plugin: async () => {
|
13
|
+
return [spansPlugin];
|
14
|
+
}
|
15
|
+
});
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const sub: import("@jupyterlab/application").JupyterFrontEndPlugin<void>;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* sub.ts
|
3
|
+
*
|
4
|
+
* Copyright (C) 2020-2023 Posit Software, PBC
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
import { markdownItExtension } from './provider';
|
8
|
+
export const sub = markdownItExtension({
|
9
|
+
id: '@quarto/sub',
|
10
|
+
title: 'Subscript Text',
|
11
|
+
plugin: async () => {
|
12
|
+
const plugin = await import('markdown-it-sub');
|
13
|
+
return [plugin.default];
|
14
|
+
}
|
15
|
+
});
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const sup: import("@jupyterlab/application").JupyterFrontEndPlugin<void>;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* sup.ts
|
3
|
+
*
|
4
|
+
* Copyright (C) 2020-2023 Posit Software, PBC
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
import { markdownItExtension } from './provider';
|
8
|
+
export const sup = markdownItExtension({
|
9
|
+
id: '@quarto/sup',
|
10
|
+
title: 'Superscript Text',
|
11
|
+
plugin: async () => {
|
12
|
+
const plugin = await import('markdown-it-sup');
|
13
|
+
return [plugin.default];
|
14
|
+
}
|
15
|
+
});
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const tableCaptions: import("@jupyterlab/application").JupyterFrontEndPlugin<void>;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* table-captions.ts
|
3
|
+
*
|
4
|
+
* Copyright (C) 2020-2023 Posit Software, PBC
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
import { tableCaptionPlugin } from '../plugins/table-captions';
|
8
|
+
import { markdownItExtension } from './provider';
|
9
|
+
export const tableCaptions = markdownItExtension({
|
10
|
+
id: '@quarto/tableCaptions',
|
11
|
+
title: 'Quarto Table Captions',
|
12
|
+
plugin: async () => {
|
13
|
+
return [tableCaptionPlugin];
|
14
|
+
}
|
15
|
+
});
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const tasklists: import("@jupyterlab/application").JupyterFrontEndPlugin<void>;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* tasklists.ts
|
3
|
+
*
|
4
|
+
* Copyright (C) 2020-2023 Posit Software, PBC
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
import { markdownItExtension } from './provider';
|
8
|
+
export const tasklists = markdownItExtension({
|
9
|
+
id: '@quarto/tasklists',
|
10
|
+
title: 'Task Lists',
|
11
|
+
plugin: async () => {
|
12
|
+
const plugin = await import('markdown-it-task-lists');
|
13
|
+
return [plugin.default];
|
14
|
+
}
|
15
|
+
});
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const yaml: import("@jupyterlab/application").JupyterFrontEndPlugin<void>;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* yaml-block.ts
|
3
|
+
*
|
4
|
+
* Copyright (C) 2020-2023 Posit Software, PBC
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
import { yamlPlugin } from '../plugins/yaml';
|
8
|
+
import { markdownItExtension } from './provider';
|
9
|
+
export const yaml = markdownItExtension({
|
10
|
+
id: '@quarto/yaml',
|
11
|
+
title: 'Quarto Yaml',
|
12
|
+
plugin: async () => {
|
13
|
+
return [yamlPlugin];
|
14
|
+
}
|
15
|
+
});
|
package/lib/types.d.ts
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
import MarkdownIt from 'markdown-it';
|
2
|
+
import { RenderedMarkdown } from './widgets';
|
3
|
+
import { IRenderMime } from '@jupyterlab/rendermime-interfaces';
|
4
|
+
import { ISanitizer } from '@jupyterlab/apputils';
|
5
|
+
export interface MarkdownItManager {
|
6
|
+
registerPlugin(provider: MarkdownItPluginProvider): void;
|
7
|
+
getRenderer(widget: RenderedMarkdown, options?: MarkdownIt.Options): Promise<Renderer>;
|
8
|
+
}
|
9
|
+
export interface Ranked {
|
10
|
+
rank?: number;
|
11
|
+
}
|
12
|
+
export interface MarkdownItPlugin {
|
13
|
+
(md: MarkdownIt, ...params: any[]): void;
|
14
|
+
}
|
15
|
+
export interface Hook<A, V> extends Ranked {
|
16
|
+
run(arg: A): Promise<V>;
|
17
|
+
}
|
18
|
+
export interface MarkdownItPluginProvider extends Ranked {
|
19
|
+
id: string;
|
20
|
+
title: string;
|
21
|
+
plugin(): Promise<[MarkdownItPlugin, ...any]>;
|
22
|
+
options?(widget: RenderedMarkdown): Partial<MarkdownIt.Options>;
|
23
|
+
hooks?: {
|
24
|
+
preParse?: Hook<string, string>;
|
25
|
+
postRender?: Hook<HTMLElement, void>;
|
26
|
+
};
|
27
|
+
}
|
28
|
+
export interface RenderOptions {
|
29
|
+
host: HTMLElement;
|
30
|
+
source: string;
|
31
|
+
trusted: boolean;
|
32
|
+
sanitizer: ISanitizer;
|
33
|
+
resolver: IRenderMime.IResolver | null;
|
34
|
+
linkHandler: IRenderMime.ILinkHandler | null;
|
35
|
+
shouldTypeset: boolean;
|
36
|
+
renderer: Renderer;
|
37
|
+
latexTypesetter: IRenderMime.ILatexTypesetter | null;
|
38
|
+
}
|
39
|
+
export interface Renderer {
|
40
|
+
render(content: string): string;
|
41
|
+
preParse(node: string): Promise<string>;
|
42
|
+
postRender(node: HTMLElement): Promise<void>;
|
43
|
+
}
|
package/lib/types.js
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
package/lib/widgets.d.ts
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
import { RenderedHTMLCommon } from '@jupyterlab/rendermime';
|
2
|
+
import { IRenderMime } from '@jupyterlab/rendermime-interfaces';
|
3
|
+
import { Message } from '@lumino/messaging';
|
4
|
+
import { MarkdownItManager, Renderer } from './types';
|
5
|
+
export declare class RenderedMarkdown extends RenderedHTMLCommon {
|
6
|
+
constructor(options: IRenderMime.IRendererOptions, manager: MarkdownItManager);
|
7
|
+
private markdownItManager;
|
8
|
+
render(model: IRenderMime.IMimeModel): Promise<void>;
|
9
|
+
renderer: Renderer | null;
|
10
|
+
/**
|
11
|
+
* A message handler invoked on an `'after-attach'` message.
|
12
|
+
*/
|
13
|
+
onAfterAttach(msg: Message): void;
|
14
|
+
}
|
package/lib/widgets.js
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
/*
|
2
|
+
* widgets.ts
|
3
|
+
*
|
4
|
+
* Copyright (C) 2020-2023 Posit Software, PBC
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
import { RenderedHTMLCommon, renderHTML } from '@jupyterlab/rendermime';
|
8
|
+
// A mime rendered that renders Quarto Markdown
|
9
|
+
export class RenderedMarkdown extends RenderedHTMLCommon {
|
10
|
+
constructor(options, manager) {
|
11
|
+
super(options);
|
12
|
+
this.renderer = null;
|
13
|
+
this.addClass('quarto-rendered-md');
|
14
|
+
this.markdownItManager = manager;
|
15
|
+
}
|
16
|
+
// Renders a mime model
|
17
|
+
async render(model) {
|
18
|
+
if (this.renderer === null) {
|
19
|
+
this.renderer = await this.markdownItManager.getRenderer(this, {});
|
20
|
+
}
|
21
|
+
const { host, source, renderer, ...others } = {
|
22
|
+
host: this.node,
|
23
|
+
source: String(model.data[this.mimeType]),
|
24
|
+
trusted: model.trusted,
|
25
|
+
resolver: this.resolver,
|
26
|
+
sanitizer: this.sanitizer,
|
27
|
+
linkHandler: this.linkHandler,
|
28
|
+
shouldTypeset: this.isAttached,
|
29
|
+
renderer: this.renderer,
|
30
|
+
latexTypesetter: this.latexTypesetter
|
31
|
+
};
|
32
|
+
// Transform source
|
33
|
+
const markup = await renderer.preParse(source);
|
34
|
+
// Clear the content if there is no source.
|
35
|
+
if (!markup) {
|
36
|
+
host.textContent = '';
|
37
|
+
return;
|
38
|
+
}
|
39
|
+
// Render HTML.
|
40
|
+
await renderHTML({
|
41
|
+
host,
|
42
|
+
source: renderer.render(markup),
|
43
|
+
...others,
|
44
|
+
shouldTypeset: false
|
45
|
+
});
|
46
|
+
await renderer.postRender(host);
|
47
|
+
}
|
48
|
+
/**
|
49
|
+
* A message handler invoked on an `'after-attach'` message.
|
50
|
+
*/
|
51
|
+
onAfterAttach(msg) {
|
52
|
+
// Don't render math automatically
|
53
|
+
// if (this.latexTypesetter ) {
|
54
|
+
// this.latexTypesetter.typeset(this.node);
|
55
|
+
// }
|
56
|
+
}
|
57
|
+
}
|
package/package.json
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
{
|
2
|
+
"version": "0.2.3",
|
2
3
|
"name": "@quarto/jupyterlab-quarto",
|
3
|
-
"version": "0.1.44",
|
4
4
|
"description": "Jupyter extension to enable authoring of Quarto documents within Jupyterlab Notebooks.",
|
5
5
|
"keywords": [
|
6
6
|
"jupyter",
|
7
7
|
"jupyterlab",
|
8
8
|
"jupyterlab-extension"
|
9
9
|
],
|
10
|
-
"homepage": "https://github.com/quarto-dev/quarto",
|
10
|
+
"homepage": "https://github.com/quarto-dev/jupyterlab-quarto",
|
11
11
|
"bugs": {
|
12
|
-
"url": "https://github.com/quarto-dev/quarto/issues
|
12
|
+
"url": "https://github.com/quarto-dev/jupyterlab-quarto/issues"
|
13
13
|
},
|
14
14
|
"license": "BSD-3-Clause",
|
15
15
|
"author": {
|
@@ -17,17 +17,15 @@
|
|
17
17
|
"email": "charles@posit.co"
|
18
18
|
},
|
19
19
|
"files": [
|
20
|
-
"src/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}",
|
21
20
|
"lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}",
|
22
|
-
"style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}"
|
23
|
-
"schema/*.json"
|
21
|
+
"style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}"
|
24
22
|
],
|
25
23
|
"main": "lib/index.js",
|
26
24
|
"types": "lib/index.d.ts",
|
27
25
|
"style": "style/index.css",
|
28
26
|
"repository": {
|
29
27
|
"type": "git",
|
30
|
-
"url": "https://github.com/quarto-dev/quarto
|
28
|
+
"url": "https://github.com/quarto-dev/jupyterlab-quarto.git"
|
31
29
|
},
|
32
30
|
"scripts": {
|
33
31
|
"build": "jlpm build:lib && jlpm build:labextension:dev",
|
@@ -39,7 +37,7 @@
|
|
39
37
|
"clean": "jlpm clean:lib",
|
40
38
|
"clean:lib": "rimraf lib tsconfig.tsbuildinfo",
|
41
39
|
"clean:lintcache": "rimraf .eslintcache .stylelintcache",
|
42
|
-
"clean:labextension": "rimraf
|
40
|
+
"clean:labextension": "rimraf jupyterlab_quarto/labextension jupyterlab_quarto/_version.py",
|
43
41
|
"clean:all": "jlpm clean:lib && jlpm clean:labextension && jlpm clean:lintcache",
|
44
42
|
"eslint": "jlpm eslint:check --fix",
|
45
43
|
"eslint:check": "eslint . --cache --ext .ts,.tsx",
|
@@ -51,22 +49,14 @@
|
|
51
49
|
"prettier:check": "jlpm prettier:base --check",
|
52
50
|
"stylelint": "jlpm stylelint:check --fix",
|
53
51
|
"stylelint:check": "stylelint --cache \"style/**/*.css\"",
|
54
|
-
"test": "jest",
|
52
|
+
"test": "jest --coverage",
|
55
53
|
"watch": "run-p watch:src watch:labextension",
|
56
|
-
"watch:src": "tsc -w",
|
54
|
+
"watch:src": "tsc -w --sourceMap",
|
57
55
|
"watch:labextension": "jupyter labextension watch ."
|
58
56
|
},
|
59
57
|
"dependencies": {
|
60
|
-
"@jupyterlab/application": "^
|
61
|
-
"@jupyterlab/
|
62
|
-
"@jupyterlab/codemirror": "^3.0.0",
|
63
|
-
"@jupyterlab/mainmenu": "^3.0.0",
|
64
|
-
"@jupyterlab/rendermime": "^3.0.0",
|
65
|
-
"@jupyterlab/rendermime-interfaces": "^3.0.0",
|
66
|
-
"@jupyterlab/settingregistry": "^3.0.0",
|
67
|
-
"@jupyterlab/ui-components": "^3.0.0",
|
68
|
-
"@lumino/widgets": "^1.37.1",
|
69
|
-
"js-yaml": "^4.1.0",
|
58
|
+
"@jupyterlab/application": "^4.0.0",
|
59
|
+
"@jupyterlab/codemirror": "^4.0.0",
|
70
60
|
"markdown-it": "^12.2.3",
|
71
61
|
"markdown-it-attrs": "^4.1.6",
|
72
62
|
"markdown-it-deflist": "^2.0.3",
|
@@ -79,30 +69,38 @@
|
|
79
69
|
"wcwidth": "^1.0.1"
|
80
70
|
},
|
81
71
|
"devDependencies": {
|
82
|
-
"@jupyterlab/builder": "^
|
83
|
-
"@
|
84
|
-
"@types/
|
72
|
+
"@jupyterlab/builder": "^4.0.0",
|
73
|
+
"@jupyterlab/testutils": "^4.0.0",
|
74
|
+
"@types/codemirror": "^5.60.8",
|
75
|
+
"@types/d3": "^7.4.0",
|
76
|
+
"@types/dompurify": "^3.0.2",
|
77
|
+
"@types/jest": "^29.2.0",
|
78
|
+
"@types/js-yaml": "^4.0.5",
|
79
|
+
"@types/json-schema": "^7.0.11",
|
85
80
|
"@types/markdown-it": "^12.2.3",
|
86
81
|
"@types/markdown-it-attrs": "^4.1.0",
|
87
82
|
"@types/mermaid": "^9.1.0",
|
83
|
+
"@types/react": "^18.0.26",
|
88
84
|
"@types/wcwidth": "^1.0.0",
|
89
|
-
"@typescript-eslint/eslint-plugin": "^
|
90
|
-
"@typescript-eslint/parser": "^
|
91
|
-
"
|
92
|
-
"eslint
|
93
|
-
"eslint-
|
94
|
-
"
|
95
|
-
"jest
|
85
|
+
"@typescript-eslint/eslint-plugin": "^5.55.0",
|
86
|
+
"@typescript-eslint/parser": "^5.55.0",
|
87
|
+
"css-loader": "^6.7.1",
|
88
|
+
"eslint": "^8.36.0",
|
89
|
+
"eslint-config-prettier": "^8.7.0",
|
90
|
+
"eslint-plugin-prettier": "^4.2.1",
|
91
|
+
"jest": "^29.2.0",
|
96
92
|
"npm-run-all": "^4.1.5",
|
97
|
-
"prettier": "^2.
|
98
|
-
"rimraf": "^
|
99
|
-
"
|
93
|
+
"prettier": "^2.8.7",
|
94
|
+
"rimraf": "^4.4.1",
|
95
|
+
"source-map-loader": "^1.0.2",
|
96
|
+
"style-loader": "^3.3.1",
|
97
|
+
"stylelint": "^14.9.1",
|
100
98
|
"stylelint-config-prettier": "^9.0.4",
|
101
|
-
"stylelint-config-recommended": "^
|
102
|
-
"stylelint-config-standard": "
|
99
|
+
"stylelint-config-recommended": "^8.0.0",
|
100
|
+
"stylelint-config-standard": "^26.0.0",
|
103
101
|
"stylelint-prettier": "^2.0.0",
|
104
|
-
"
|
105
|
-
"
|
102
|
+
"typescript": "~5.0.2",
|
103
|
+
"yjs": "^13.5.0"
|
106
104
|
},
|
107
105
|
"sideEffects": [
|
108
106
|
"style/*.css",
|
@@ -114,12 +112,80 @@
|
|
114
112
|
},
|
115
113
|
"jupyterlab": {
|
116
114
|
"extension": true,
|
117
|
-
"outputDir": "
|
118
|
-
"schemaDir": "schema",
|
115
|
+
"outputDir": "jupyterlab_quarto/labextension",
|
119
116
|
"disabledExtensions": [
|
120
117
|
"jupyterlab-myst:plugin",
|
121
118
|
"jupyterlab-myst:legacyPlugin",
|
122
119
|
"jupyterlab-myst:executor"
|
123
120
|
]
|
121
|
+
},
|
122
|
+
"eslintIgnore": [
|
123
|
+
"node_modules",
|
124
|
+
"dist",
|
125
|
+
"coverage",
|
126
|
+
"**/*.d.ts",
|
127
|
+
"tests",
|
128
|
+
"**/__tests__",
|
129
|
+
"ui-tests"
|
130
|
+
],
|
131
|
+
"eslintConfig": {
|
132
|
+
"extends": [
|
133
|
+
"eslint:recommended",
|
134
|
+
"plugin:@typescript-eslint/eslint-recommended",
|
135
|
+
"plugin:@typescript-eslint/recommended",
|
136
|
+
"plugin:prettier/recommended"
|
137
|
+
],
|
138
|
+
"parser": "@typescript-eslint/parser",
|
139
|
+
"parserOptions": {
|
140
|
+
"project": "tsconfig.json",
|
141
|
+
"sourceType": "module"
|
142
|
+
},
|
143
|
+
"plugins": [
|
144
|
+
"@typescript-eslint"
|
145
|
+
],
|
146
|
+
"rules": {
|
147
|
+
"@typescript-eslint/no-unused-vars": [
|
148
|
+
"warn",
|
149
|
+
{
|
150
|
+
"args": "none"
|
151
|
+
}
|
152
|
+
],
|
153
|
+
"@typescript-eslint/no-explicit-any": "off",
|
154
|
+
"@typescript-eslint/no-namespace": "off",
|
155
|
+
"@typescript-eslint/no-use-before-define": "off",
|
156
|
+
"@typescript-eslint/quotes": [
|
157
|
+
"error",
|
158
|
+
"single",
|
159
|
+
{
|
160
|
+
"avoidEscape": true,
|
161
|
+
"allowTemplateLiterals": false
|
162
|
+
}
|
163
|
+
],
|
164
|
+
"curly": [
|
165
|
+
"error",
|
166
|
+
"all"
|
167
|
+
],
|
168
|
+
"eqeqeq": "error",
|
169
|
+
"prefer-arrow-callback": "error"
|
170
|
+
}
|
171
|
+
},
|
172
|
+
"prettier": {
|
173
|
+
"singleQuote": true,
|
174
|
+
"trailingComma": "none",
|
175
|
+
"arrowParens": "avoid",
|
176
|
+
"endOfLine": "auto"
|
177
|
+
},
|
178
|
+
"stylelint": {
|
179
|
+
"extends": [
|
180
|
+
"stylelint-config-recommended",
|
181
|
+
"stylelint-config-standard",
|
182
|
+
"stylelint-prettier/recommended"
|
183
|
+
],
|
184
|
+
"rules": {
|
185
|
+
"property-no-vendor-prefix": null,
|
186
|
+
"selector-no-vendor-prefix": null,
|
187
|
+
"value-no-vendor-prefix": null,
|
188
|
+
"selector-class-pattern": null
|
189
|
+
}
|
124
190
|
}
|
125
191
|
}
|