@typespec/playground 0.1.0-alpha.3-dev.7 → 0.1.0-alpha.3-dev.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/README.md +3 -1
  2. package/dist/index.css +58 -0
  3. package/dist/index.js +7 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/react/index.js +853 -0
  6. package/dist/react/index.js.map +1 -0
  7. package/dist/react/viewers.js +29 -0
  8. package/dist/react/viewers.js.map +1 -0
  9. package/dist/src/browser-host.d.ts +4 -4
  10. package/dist/src/browser-host.d.ts.map +1 -1
  11. package/dist/src/core.d.ts +12 -2
  12. package/dist/src/core.d.ts.map +1 -1
  13. package/dist/src/index.d.ts +0 -1
  14. package/dist/src/index.d.ts.map +1 -1
  15. package/dist/src/react/editor-command-bar.d.ts +1 -2
  16. package/dist/src/react/editor-command-bar.d.ts.map +1 -1
  17. package/dist/src/react/playground.d.ts +1 -3
  18. package/dist/src/react/playground.d.ts.map +1 -1
  19. package/dist/src/react/settings/compiler-settings.d.ts +1 -1
  20. package/dist/src/react/settings/compiler-settings.d.ts.map +1 -1
  21. package/dist/src/react/settings/linter-form.d.ts +1 -1
  22. package/dist/src/react/settings/linter-form.d.ts.map +1 -1
  23. package/dist/src/react/standalone.d.ts +2 -0
  24. package/dist/src/react/standalone.d.ts.map +1 -1
  25. package/dist/src/react/types.d.ts +1 -6
  26. package/dist/src/react/types.d.ts.map +1 -1
  27. package/dist/src/react/viewers.d.ts +1 -0
  28. package/dist/src/react/viewers.d.ts.map +1 -1
  29. package/dist/src/services.d.ts +1 -1
  30. package/dist/src/services.d.ts.map +1 -1
  31. package/dist/src/types.d.ts +10 -1
  32. package/dist/src/types.d.ts.map +1 -1
  33. package/dist/src/vite/index.d.ts.map +1 -1
  34. package/dist/src/vite/types.d.ts +4 -0
  35. package/dist/src/vite/types.d.ts.map +1 -1
  36. package/dist/{src/services.js → state-storage-ad8a9d39.js} +278 -10
  37. package/dist/state-storage-ad8a9d39.js.map +1 -0
  38. package/dist/{src/vite → vite}/index.js +14 -9
  39. package/dist/vite/index.js.map +1 -0
  40. package/package.json +34 -10
  41. package/dist/src/browser-host.js +0 -129
  42. package/dist/src/browser-host.js.map +0 -1
  43. package/dist/src/core.js +0 -17
  44. package/dist/src/core.js.map +0 -1
  45. package/dist/src/index.js +0 -6
  46. package/dist/src/index.js.map +0 -1
  47. package/dist/src/manifest.js +0 -3
  48. package/dist/src/manifest.js.map +0 -1
  49. package/dist/src/monaco-worker.js +0 -30
  50. package/dist/src/monaco-worker.js.map +0 -1
  51. package/dist/src/react/diagnostic-list.js +0 -16
  52. package/dist/src/react/diagnostic-list.js.map +0 -1
  53. package/dist/src/react/editor-command-bar.js +0 -15
  54. package/dist/src/react/editor-command-bar.js.map +0 -1
  55. package/dist/src/react/editor.js +0 -37
  56. package/dist/src/react/editor.js.map +0 -1
  57. package/dist/src/react/emitter-dropdown.js +0 -13
  58. package/dist/src/react/emitter-dropdown.js.map +0 -1
  59. package/dist/src/react/error-tab.js +0 -20
  60. package/dist/src/react/error-tab.js.map +0 -1
  61. package/dist/src/react/file-output.js +0 -31
  62. package/dist/src/react/file-output.js.map +0 -1
  63. package/dist/src/react/footer.js +0 -29
  64. package/dist/src/react/footer.js.map +0 -1
  65. package/dist/src/react/hooks.js +0 -50
  66. package/dist/src/react/hooks.js.map +0 -1
  67. package/dist/src/react/index.js +0 -4
  68. package/dist/src/react/index.js.map +0 -1
  69. package/dist/src/react/output-tabs.js +0 -38
  70. package/dist/src/react/output-tabs.js.map +0 -1
  71. package/dist/src/react/output-view.js +0 -98
  72. package/dist/src/react/output-view.js.map +0 -1
  73. package/dist/src/react/playground.js +0 -182
  74. package/dist/src/react/playground.js.map +0 -1
  75. package/dist/src/react/samples-dropdown.js +0 -15
  76. package/dist/src/react/samples-dropdown.js.map +0 -1
  77. package/dist/src/react/settings/compiler-settings.js +0 -42
  78. package/dist/src/react/settings/compiler-settings.js.map +0 -1
  79. package/dist/src/react/settings/emitter-options-form.js +0 -39
  80. package/dist/src/react/settings/emitter-options-form.js.map +0 -1
  81. package/dist/src/react/settings/linter-form.js +0 -33
  82. package/dist/src/react/settings/linter-form.js.map +0 -1
  83. package/dist/src/react/split-pane/index.js +0 -2
  84. package/dist/src/react/split-pane/index.js.map +0 -1
  85. package/dist/src/react/split-pane/pane.js +0 -5
  86. package/dist/src/react/split-pane/pane.js.map +0 -1
  87. package/dist/src/react/split-pane/sash-content.js +0 -7
  88. package/dist/src/react/split-pane/sash-content.js.map +0 -1
  89. package/dist/src/react/split-pane/sash.js +0 -23
  90. package/dist/src/react/split-pane/sash.js.map +0 -1
  91. package/dist/src/react/split-pane/split-pane.js +0 -138
  92. package/dist/src/react/split-pane/split-pane.js.map +0 -1
  93. package/dist/src/react/split-pane/split-pane.module.css +0 -58
  94. package/dist/src/react/standalone.js +0 -63
  95. package/dist/src/react/standalone.js.map +0 -1
  96. package/dist/src/react/swagger-ui.js +0 -19
  97. package/dist/src/react/swagger-ui.js.map +0 -1
  98. package/dist/src/react/types.js +0 -2
  99. package/dist/src/react/types.js.map +0 -1
  100. package/dist/src/react/typespec-editor.js +0 -30
  101. package/dist/src/react/typespec-editor.js.map +0 -1
  102. package/dist/src/react/viewers.js +0 -8
  103. package/dist/src/react/viewers.js.map +0 -1
  104. package/dist/src/services.js.map +0 -1
  105. package/dist/src/state-storage.js +0 -81
  106. package/dist/src/state-storage.js.map +0 -1
  107. package/dist/src/types.js +0 -2
  108. package/dist/src/types.js.map +0 -1
  109. package/dist/src/utils.d.ts +0 -8
  110. package/dist/src/utils.d.ts.map +0 -1
  111. package/dist/src/utils.js +0 -14
  112. package/dist/src/utils.js.map +0 -1
  113. package/dist/src/vite/index.js.map +0 -1
  114. package/dist/src/vite/types.js +0 -2
  115. package/dist/src/vite/types.js.map +0 -1
  116. package/dist/vite.config.d.ts +0 -3
  117. package/dist/vite.config.d.ts.map +0 -1
  118. package/dist/vite.config.js +0 -38
  119. package/dist/vite.config.js.map +0 -1
@@ -1,129 +0,0 @@
1
- import { createSourceFile, getSourceFileKindFromExt, resolvePath, } from "@typespec/compiler";
2
- import { importLibrary } from "./core.js";
3
- export function resolveVirtualPath(path, ...paths) {
4
- return resolvePath("/test", path, ...paths);
5
- }
6
- /**
7
- * Create the browser host from the list of libraries.
8
- * @param libsToLoad List of libraries to load. Those must be set in the webpage importmap.
9
- * @returns
10
- */
11
- export async function createBrowserHost(libsToLoad) {
12
- const virtualFs = new Map();
13
- const jsImports = new Map();
14
- for (const libName of libsToLoad) {
15
- const { _TypeSpecLibrary_ } = (await importLibrary(libName));
16
- for (const [key, value] of Object.entries(_TypeSpecLibrary_.typespecSourceFiles)) {
17
- virtualFs.set(`/test/node_modules/${libName}/${key}`, value);
18
- }
19
- for (const [key, value] of Object.entries(_TypeSpecLibrary_.jsSourceFiles)) {
20
- addJsImport(`/test/node_modules/${libName}/${key}`, value);
21
- }
22
- }
23
- function addJsImport(path, value) {
24
- virtualFs.set(path, "");
25
- jsImports.set(path, value);
26
- }
27
- return {
28
- async readUrl(url) {
29
- const contents = virtualFs.get(url);
30
- if (contents === undefined) {
31
- const e = new Error(`File ${url} not found.`);
32
- e.code = "ENOENT";
33
- throw e;
34
- }
35
- return createSourceFile(contents, url);
36
- },
37
- async readFile(path) {
38
- path = resolveVirtualPath(path);
39
- const contents = virtualFs.get(path);
40
- if (contents === undefined) {
41
- const e = new Error(`File ${path} not found.`);
42
- e.code = "ENOENT";
43
- throw e;
44
- }
45
- return createSourceFile(contents, path);
46
- },
47
- async writeFile(path, content) {
48
- path = resolveVirtualPath(path);
49
- virtualFs.set(path, content);
50
- },
51
- async readDir(path) {
52
- path = resolveVirtualPath(path);
53
- const fileFolder = [...virtualFs.keys()]
54
- .filter((x) => x.startsWith(`${path}/`))
55
- .map((x) => x.replace(`${path}/`, ""))
56
- .map((x) => {
57
- const index = x.indexOf("/");
58
- return index !== -1 ? x.substring(0, index) : x;
59
- });
60
- return [...new Set(fileFolder)];
61
- },
62
- async rm(path) {
63
- path = resolveVirtualPath(path);
64
- for (const key of virtualFs.keys()) {
65
- if (key === path || key.startsWith(`${path}/`)) {
66
- virtualFs.delete(key);
67
- }
68
- }
69
- },
70
- getLibDirs() {
71
- return [resolveVirtualPath("/test/node_modules/@typespec/compiler/lib")];
72
- },
73
- getExecutionRoot() {
74
- return resolveVirtualPath(".tsp");
75
- },
76
- async getJsImport(path) {
77
- path = resolveVirtualPath(path);
78
- const module = await jsImports.get(path);
79
- if (module === undefined) {
80
- const e = new Error(`Module ${path} not found`);
81
- e.code = "MODULE_NOT_FOUND";
82
- throw e;
83
- }
84
- return module;
85
- },
86
- async stat(path) {
87
- path = resolveVirtualPath(path);
88
- if (virtualFs.has(path)) {
89
- return {
90
- isDirectory() {
91
- return false;
92
- },
93
- isFile() {
94
- return true;
95
- },
96
- };
97
- }
98
- for (const fsPath of virtualFs.keys()) {
99
- if (fsPath.startsWith(path) && fsPath !== path) {
100
- return {
101
- isDirectory() {
102
- return true;
103
- },
104
- isFile() {
105
- return false;
106
- },
107
- };
108
- }
109
- }
110
- const e = new Error(`File ${path} not found.`);
111
- e.code = "ENOENT";
112
- throw e;
113
- },
114
- // symlinks not supported in test-host
115
- async realpath(path) {
116
- return path;
117
- },
118
- getSourceFileKind: getSourceFileKindFromExt,
119
- logSink: console,
120
- mkdirp: async (path) => path,
121
- fileURLToPath(path) {
122
- return path.replace("inmemory:/", "");
123
- },
124
- pathToFileURL(path) {
125
- return "inmemory:/" + resolveVirtualPath(path);
126
- },
127
- };
128
- }
129
- //# sourceMappingURL=browser-host.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-host.js","sourceRoot":"","sources":["../../src/browser-host.ts"],"names":[],"mappings":"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"}
package/dist/src/core.js DELETED
@@ -1,17 +0,0 @@
1
- let cachedCompiler;
2
- export async function importTypeSpecCompiler() {
3
- if (cachedCompiler === undefined) {
4
- // We need to do this so the compiler loaded is the same as the one loaded by the bundled libraries.
5
- const name = "@typespec/compiler";
6
- cachedCompiler = (await importLibrary(name));
7
- }
8
- return cachedCompiler;
9
- }
10
- /**
11
- * @param name Import name.
12
- * @returns Promise with the loaded module.
13
- */
14
- export async function importLibrary(name) {
15
- return import(/* @vite-ignore */ name);
16
- }
17
- //# sourceMappingURL=core.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/core.ts"],"names":[],"mappings":"AAAA,IAAI,cAAmB,CAAC;AACxB,MAAM,CAAC,KAAK,UAAU,sBAAsB;IAC1C,IAAI,cAAc,KAAK,SAAS,EAAE;QAChC,oGAAoG;QACpG,MAAM,IAAI,GAAG,oBAAoB,CAAC;QAClC,cAAc,GAAG,CAAC,MAAM,aAAa,CAAC,IAAI,CAAC,CAAQ,CAAC;KACrD;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY;IAC9C,OAAO,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC"}
package/dist/src/index.js DELETED
@@ -1,6 +0,0 @@
1
- export { createBrowserHost } from "./browser-host.js";
2
- export { registerMonacoDefaultWorkers } from "./monaco-worker.js";
3
- export { registerMonacoLanguage } from "./services.js";
4
- export { createUrlStateStorage } from "./state-storage.js";
5
- export { resolveLibraries as filterEmitters } from "./utils.js";
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,gBAAgB,IAAI,cAAc,EAAE,MAAM,YAAY,CAAC"}
@@ -1,3 +0,0 @@
1
- const config = {};
2
- export default config;
3
- //# sourceMappingURL=manifest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/manifest.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,GAAqB,EAAS,CAAC;AAC3C,eAAe,MAAM,CAAC"}
@@ -1,30 +0,0 @@
1
- export function registerMonacoDefaultWorkers() {
2
- self.MonacoEnvironment = {
3
- getWorker: function (workerId, label) {
4
- const getWorkerModule = (moduleUrl, label) => {
5
- return new Worker(self.MonacoEnvironment.getWorkerUrl(moduleUrl), {
6
- name: label,
7
- type: "module",
8
- });
9
- };
10
- switch (label) {
11
- case "json":
12
- return getWorkerModule("/monaco-editor/esm/vs/language/json/json.worker?worker", label);
13
- case "css":
14
- case "scss":
15
- case "less":
16
- return getWorkerModule("/monaco-editor/esm/vs/language/css/css.worker?worker", label);
17
- case "html":
18
- case "handlebars":
19
- case "razor":
20
- return getWorkerModule("/monaco-editor/esm/vs/language/html/html.worker?worker", label);
21
- case "typescript":
22
- case "javascript":
23
- return getWorkerModule("/monaco-editor/esm/vs/language/typescript/ts.worker?worker", label);
24
- default:
25
- return getWorkerModule("/monaco-editor/esm/vs/editor/editor.worker?worker", label);
26
- }
27
- },
28
- };
29
- }
30
- //# sourceMappingURL=monaco-worker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"monaco-worker.js","sourceRoot":"","sources":["../../src/monaco-worker.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,4BAA4B;IAC1C,IAAI,CAAC,iBAAiB,GAAG;QACvB,SAAS,EAAE,UAAU,QAAQ,EAAE,KAAK;YAClC,MAAM,eAAe,GAAG,CAAC,SAAiB,EAAE,KAAa,EAAE,EAAE;gBAC3D,OAAO,IAAI,MAAM,CAAE,IAAI,CAAC,iBAAyB,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;oBACzE,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,QAAQ,KAAK,EAAE;gBACb,KAAK,MAAM;oBACT,OAAO,eAAe,CAAC,wDAAwD,EAAE,KAAK,CAAC,CAAC;gBAC1F,KAAK,KAAK,CAAC;gBACX,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACT,OAAO,eAAe,CAAC,sDAAsD,EAAE,KAAK,CAAC,CAAC;gBACxF,KAAK,MAAM,CAAC;gBACZ,KAAK,YAAY,CAAC;gBAClB,KAAK,OAAO;oBACV,OAAO,eAAe,CAAC,wDAAwD,EAAE,KAAK,CAAC,CAAC;gBAC1F,KAAK,YAAY,CAAC;gBAClB,KAAK,YAAY;oBACf,OAAO,eAAe,CACpB,4DAA4D,EAC5D,KAAK,CACN,CAAC;gBACJ;oBACE,OAAO,eAAe,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAC;aACtF;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,16 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
- import { css } from "@emotion/react";
3
- export const DiagnosticList = ({ diagnostics }) => {
4
- if (diagnostics.length === 0) {
5
- return _jsx("div", { className: "center", children: "No errors" });
6
- }
7
- return (_jsx("div", { css: { height: "100%", overflow: "auto" }, children: diagnostics.map((x, i) => {
8
- return _jsx(DiagnosticItem, { diagnostic: x }, i);
9
- }) }));
10
- };
11
- export const DiagnosticItem = ({ diagnostic }) => {
12
- return (_jsxs("div", { css: { display: "flex" }, children: [_jsx("div", { css: [{ padding: "0 5px" }, diagnostic.severity === "error" ? errorColor : warningColor], children: diagnostic.severity }), _jsx("div", { css: { padding: "0 5px", color: "#333333" }, children: diagnostic.code }), _jsx("div", { css: { padding: "0 5px" }, children: diagnostic.message })] }));
13
- };
14
- const errorColor = css({ color: "#cc2222" });
15
- const warningColor = css({ color: "orange" });
16
- //# sourceMappingURL=diagnostic-list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"diagnostic-list.js","sourceRoot":"","sources":["../../../src/react/diagnostic-list.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAQrC,MAAM,CAAC,MAAM,cAAc,GAA2C,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;IACxF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5B,OAAO,cAAK,SAAS,EAAC,QAAQ,0BAAgB,CAAC;KAChD;IACD,OAAO,CACL,cAAK,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAC3C,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACxB,OAAO,KAAC,cAAc,IAAS,UAAU,EAAE,CAAC,IAAhB,CAAC,CAAmB,CAAC;QACnD,CAAC,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,cAAc,GAA2C,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;IACvF,OAAO,CACL,eAAK,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAC3B,cACE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,UAAU,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,YAEvF,UAAU,CAAC,QAAQ,GAChB,EACN,cAAK,GAAG,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,YAAG,UAAU,CAAC,IAAI,GAAO,EACzE,cAAK,GAAG,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,YAAG,UAAU,CAAC,OAAO,GAAO,IACtD,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;AAC7C,MAAM,YAAY,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC"}
@@ -1,15 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
- import { Button, Dialog, DialogBody, DialogSurface, DialogTrigger, Link, Toolbar, ToolbarButton, Tooltip, } from "@fluentui/react-components";
3
- import { Bug16Regular, Save16Regular, Settings24Regular } from "@fluentui/react-icons";
4
- import { EmitterDropdown } from "./emitter-dropdown.js";
5
- import { SamplesDropdown } from "./samples-dropdown.js";
6
- import { CompilerSettings } from "./settings/compiler-settings.js";
7
- export const EditorCommandBar = ({ documentationUrl, saveCode, newIssue, libraries, selectedEmitter, onSelectedEmitterChange, compilerOptions: emitterOptions, onCompilerOptionsChange, samples, selectedSampleName, onSelectedSampleNameChange, }) => {
8
- const documentation = documentationUrl ? (_jsx("label", { children: _jsx(Link, { href: documentationUrl, target: "_blank", children: "Docs" }) })) : undefined;
9
- const bugButton = newIssue ? _jsx(FileBugButton, { onClick: newIssue }) : undefined;
10
- return (_jsx("div", { css: { borderBottom: "1px solid #f5f5f5" }, children: _jsxs(Toolbar, { children: [_jsx(Tooltip, { content: "Save", relationship: "description", withArrow: true, children: _jsx(ToolbarButton, { appearance: "primary", "aria-label": "Save", icon: _jsx(Save16Regular, {}), onClick: saveCode }) }), samples && (_jsx(SamplesDropdown, { samples: samples, selectedSampleName: selectedSampleName, onSelectedSampleNameChange: onSelectedSampleNameChange })), _jsx(EmitterDropdown, { emitters: libraries.filter((x) => x.isEmitter).map((x) => x.name), onSelectedEmitterChange: onSelectedEmitterChange, selectedEmitter: selectedEmitter }), _jsxs(Dialog, { children: [_jsx(DialogTrigger, { children: _jsx(Button, { icon: _jsx(Settings24Regular, {}) }) }), _jsx(DialogSurface, { children: _jsx(DialogBody, { children: _jsx(CompilerSettings, { libraries: libraries, selectedEmitter: selectedEmitter, options: emitterOptions, onOptionsChanged: onCompilerOptionsChange }) }) })] }), documentation, _jsx("div", { css: { flex: "1" } }), bugButton] }) }));
11
- };
12
- const FileBugButton = ({ onClick }) => {
13
- return (_jsx(Tooltip, { content: "File Bug Report", relationship: "description", withArrow: true, children: _jsx(ToolbarButton, { appearance: "subtle", "aria-label": "File Bug Report", icon: _jsx(Bug16Regular, {}), onClick: onClick, children: "File bug" }) }));
14
- };
15
- //# sourceMappingURL=editor-command-bar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor-command-bar.js","sourceRoot":"","sources":["../../../src/react/editor-command-bar.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,MAAM,EACN,MAAM,EACN,UAAU,EACV,aAAa,EACb,aAAa,EACb,IAAI,EACJ,OAAO,EACP,aAAa,EACb,OAAO,GACR,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAIvF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAiBnE,MAAM,CAAC,MAAM,gBAAgB,GAA6C,CAAC,EACzE,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,eAAe,EACf,uBAAuB,EACvB,eAAe,EAAE,cAAc,EAC/B,uBAAuB,EACvB,OAAO,EACP,kBAAkB,EAClB,0BAA0B,GAC3B,EAAE,EAAE;IACH,MAAM,aAAa,GAAG,gBAAgB,CAAC,CAAC,CAAC,CACvC,0BACE,KAAC,IAAI,IAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAC,QAAQ,qBAEtC,GACD,CACT,CAAC,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAC,aAAa,IAAC,OAAO,EAAE,QAAQ,GAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9E,OAAO,CACL,cAAK,GAAG,EAAE,EAAE,YAAY,EAAE,mBAAmB,EAAE,YAC7C,MAAC,OAAO,eACN,KAAC,OAAO,IAAC,OAAO,EAAC,MAAM,EAAC,YAAY,EAAC,aAAa,EAAC,SAAS,kBAC1D,KAAC,aAAa,IACZ,UAAU,EAAC,SAAS,gBACT,MAAM,EACjB,IAAI,EAAE,KAAC,aAAa,KAAG,EACvB,OAAO,EAAE,QAAe,GACxB,GACM,EACT,OAAO,IAAI,CACV,KAAC,eAAe,IACd,OAAO,EAAE,OAAO,EAChB,kBAAkB,EAAE,kBAAkB,EACtC,0BAA0B,EAAE,0BAA0B,GACtD,CACH,EACD,KAAC,eAAe,IACd,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EACjE,uBAAuB,EAAE,uBAAuB,EAChD,eAAe,EAAE,eAAe,GAChC,EACF,MAAC,MAAM,eACL,KAAC,aAAa,cACZ,KAAC,MAAM,IAAC,IAAI,EAAE,KAAC,iBAAiB,KAAG,GAAI,GACzB,EAChB,KAAC,aAAa,cACZ,KAAC,UAAU,cACT,KAAC,gBAAgB,IACf,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,cAAc,EACvB,gBAAgB,EAAE,uBAAuB,GACzC,GACS,GACC,IACT,EACR,aAAa,EACd,cAAK,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAQ,EAC9B,SAAS,IACF,GACN,CACP,CAAC;AACJ,CAAC,CAAC;AAKF,MAAM,aAAa,GAA0C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC3E,OAAO,CACL,KAAC,OAAO,IAAC,OAAO,EAAC,iBAAiB,EAAC,YAAY,EAAC,aAAa,EAAC,SAAS,kBACrE,KAAC,aAAa,IACZ,UAAU,EAAC,QAAQ,gBACR,iBAAiB,EAC5B,IAAI,EAAE,KAAC,YAAY,KAAG,EACtB,OAAO,EAAE,OAAc,yBAGT,GACR,CACX,CAAC;AACJ,CAAC,CAAC"}
@@ -1,37 +0,0 @@
1
- import { jsx as _jsx } from "@emotion/react/jsx-runtime";
2
- import { editor, Uri } from "monaco-editor";
3
- import { useEffect, useMemo, useRef } from "react";
4
- export const Editor = ({ model, options, actions }) => {
5
- const editorContainerRef = useRef(null);
6
- const editorRef = useRef(null);
7
- useEffect(() => {
8
- editorRef.current = editor.create(editorContainerRef.current, {
9
- model,
10
- automaticLayout: true,
11
- ...options,
12
- });
13
- }, []);
14
- useEffect(() => {
15
- const disposables = [];
16
- for (const command of actions !== null && actions !== void 0 ? actions : []) {
17
- disposables.push(editorRef.current.addAction(command));
18
- }
19
- return () => {
20
- disposables.forEach((x) => x.dispose());
21
- };
22
- }, [actions]);
23
- useEffect(() => {
24
- if (editorRef.current) {
25
- editorRef.current.setModel(model);
26
- }
27
- }, [model]);
28
- return (_jsx("div", { className: "monaco-editor-container", css: { width: "100%", height: "100%", overflow: "hidden" }, ref: editorContainerRef }));
29
- };
30
- export function useMonacoModel(uri, language) {
31
- return useMemo(() => {
32
- var _a;
33
- const monacoUri = Uri.parse(uri);
34
- return (_a = editor.getModel(monacoUri)) !== null && _a !== void 0 ? _a : editor.createModel("", language, monacoUri);
35
- }, [uri, language]);
36
- }
37
- //# sourceMappingURL=editor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../../src/react/editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAe,GAAG,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAqB,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAatE,MAAM,CAAC,MAAM,MAAM,GAAmC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;IACpF,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,MAAM,CAAsC,IAAI,CAAC,CAAC;IAEpE,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAQ,EAAE;YAC7D,KAAK;YACL,eAAe,EAAE,IAAI;YACrB,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAkB,EAAE,CAAC;QACtC,KAAK,MAAM,OAAO,IAAI,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,EAAE;YACnC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,OAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;SACzD;QACD,OAAO,GAAG,EAAE;YACV,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,CAAC,OAAO,EAAE;YACrB,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACnC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO,CACL,cACE,SAAS,EAAC,yBAAyB,EACnC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAC1D,GAAG,EAAE,kBAAkB,GAClB,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,QAAiB;IAC3D,OAAO,OAAO,CAAC,GAAG,EAAE;;QAClB,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,MAAA,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,mCAAI,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACnF,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;AACtB,CAAC"}
@@ -1,13 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
- import { Select } from "@fluentui/react-components";
3
- import { useCallback } from "react";
4
- export const EmitterDropdown = ({ emitters, onSelectedEmitterChange, selectedEmitter, }) => {
5
- const options = emitters.map((emitterName) => {
6
- return _jsx("option", { children: emitterName }, emitterName);
7
- });
8
- const handleSelected = useCallback((evt) => {
9
- onSelectedEmitterChange(evt.target.value);
10
- }, [onSelectedEmitterChange]);
11
- return (_jsxs(Select, { className: "sample-dropdown", onChange: handleSelected, value: selectedEmitter, children: [_jsx("option", { value: "", disabled: true, children: "Select emitter..." }), options] }));
12
- };
13
- //# sourceMappingURL=emitter-dropdown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"emitter-dropdown.js","sourceRoot":"","sources":["../../../src/react/emitter-dropdown.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAqB,WAAW,EAAE,MAAM,OAAO,CAAC;AAQvD,MAAM,CAAC,MAAM,eAAe,GAA4C,CAAC,EACvE,QAAQ,EACR,uBAAuB,EACvB,eAAe,GAChB,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;QAC3C,OAAO,2BAA2B,WAAW,IAAzB,WAAW,CAAwB,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,GAAQ,EAAE,EAAE;QACX,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC,EACD,CAAC,uBAAuB,CAAC,CAC1B,CAAC;IACF,OAAO,CACL,MAAC,MAAM,IAAC,SAAS,EAAC,iBAAiB,EAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,eAAe,aAClF,iBAAQ,KAAK,EAAC,EAAE,EAAC,QAAQ,wCAEhB,EACR,OAAO,IACD,CACV,CAAC;AACJ,CAAC,CAAC"}
@@ -1,20 +0,0 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
- import { css } from "@emotion/react";
3
- import { DiagnosticList } from "./diagnostic-list.js";
4
- export const ErrorTab = ({ internalCompilerError, diagnostics, }) => {
5
- return (_jsxs(_Fragment, { children: [internalCompilerError && _jsx(InternalCompilerError, { error: internalCompilerError }), diagnostics && _jsx(DiagnosticList, { diagnostics: diagnostics })] }));
6
- };
7
- export const InternalCompilerError = ({ error }) => {
8
- return (_jsx("div", { css: { CenterStyles }, children: _jsxs("div", { css: {
9
- border: "1px solid #cc2222",
10
- padding: "10px",
11
- margin: "20px",
12
- }, children: [_jsx("h3", { children: "Internal Compiler error" }), _jsx("div", { children: "File issue at https://github.com/microsoft/typespec" }), _jsx("hr", {}), _jsx("div", { children: error.stack })] }) }));
13
- };
14
- const CenterStyles = css({
15
- display: "flex",
16
- height: "100%",
17
- alignItems: "center",
18
- justifyContent: "center",
19
- });
20
- //# sourceMappingURL=error-tab.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error-tab.js","sourceRoot":"","sources":["../../../src/react/error-tab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAGrC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAOtD,MAAM,CAAC,MAAM,QAAQ,GAAqC,CAAC,EACzD,qBAAqB,EACrB,WAAW,GACZ,EAAE,EAAE;IACH,OAAO,CACL,8BACG,qBAAqB,IAAI,KAAC,qBAAqB,IAAC,KAAK,EAAE,qBAAqB,GAAI,EAChF,WAAW,IAAI,KAAC,cAAc,IAAC,WAAW,EAAE,WAAW,GAAI,IAC3D,CACJ,CAAC;AACJ,CAAC,CAAC;AAKF,MAAM,CAAC,MAAM,qBAAqB,GAAkD,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IAChG,OAAO,CACL,cAAK,GAAG,EAAE,EAAE,YAAY,EAAE,YACxB,eACE,GAAG,EAAE;gBACH,MAAM,EAAE,mBAAmB;gBAC3B,OAAO,EAAE,MAAM;gBACf,MAAM,EAAE,MAAM;aACf,aAED,mDAAgC,EAChC,gFAA8D,EAC9D,cAAM,EACN,wBAAM,KAAK,CAAC,KAAK,GAAO,IACpB,GACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,GAAG,CAAC;IACvB,OAAO,EAAE,MAAM;IACf,MAAM,EAAE,MAAM;IACd,UAAU,EAAE,QAAQ;IACpB,cAAc,EAAE,QAAQ;CACzB,CAAC,CAAC"}
@@ -1,31 +0,0 @@
1
- import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
- import { css } from "@emotion/react";
3
- import { Select } from "@fluentui/react-components";
4
- import { useCallback, useMemo, useState } from "react";
5
- /**
6
- * Display a file output using different viewers.
7
- */
8
- export const FileOutput = ({ filename, content, viewers }) => {
9
- if (viewers.length === 0) {
10
- return _jsx(_Fragment, { children: "No viewers" });
11
- }
12
- else if (viewers.length === 1) {
13
- return viewers[0].render({ filename, content });
14
- }
15
- const [selected, setSelected] = useState(viewers[0].key);
16
- const handleSelected = useCallback((_, data) => {
17
- setSelected(data.value);
18
- }, [selected]);
19
- const selectedRender = useMemo(() => {
20
- var _a;
21
- return (_a = viewers.find((x) => x.key === selected)) === null || _a === void 0 ? void 0 : _a.render;
22
- }, [selected, viewers]);
23
- return (_jsxs("div", { css: { width: "100%", height: "100%", overflow: "hidden" }, children: [_jsx(Select, { value: selected, onChange: handleSelected, css: DropdownStyle, children: viewers.map(({ key, label }) => (_jsx("option", { value: key, children: label }, key))) }), selectedRender && selectedRender({ filename, content })] }));
24
- };
25
- const DropdownStyle = css({
26
- margin: "0.5rem 1.5rem",
27
- position: "absolute",
28
- "z-index": 1,
29
- right: 0,
30
- });
31
- //# sourceMappingURL=file-output.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-output.js","sourceRoot":"","sources":["../../../src/react/file-output.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAsB,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAqB,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAS1E;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAuC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;IAC/F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACxB,OAAO,2CAAe,CAAC;KACxB;SAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/B,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;KACjD;IAED,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAS,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAEjE,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,CAAU,EAAE,IAAwB,EAAE,EAAE;QACvC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;;QAClC,OAAO,MAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,0CAAE,MAAM,CAAC;IACzD,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACxB,OAAO,CACL,eAAK,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAC7D,KAAC,MAAM,IAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,EAAE,aAAa,YAClE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAC/B,iBAAkB,KAAK,EAAE,GAAG,YACzB,KAAK,IADK,GAAG,CAEP,CACV,CAAC,GACK,EAER,cAAc,IAAI,cAAc,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,IACpD,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,GAAG,CAAC;IACxB,MAAM,EAAE,eAAe;IACvB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,CAAC;IACZ,KAAK,EAAE,CAAC;CACT,CAAC,CAAC"}
@@ -1,29 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@emotion/react/jsx-runtime";
2
- import { css } from "@emotion/react";
3
- import { MANIFEST } from "@typespec/compiler";
4
- export const Footer = () => {
5
- const prItem = MANIFEST.pr ? (_jsxs(FooterItem, { link: `https://github.com/microsoft/typespec/pull/${MANIFEST.pr}`, children: [_jsx("span", { children: "PR " }), _jsx("span", { children: MANIFEST.pr })] })) : (_jsx(_Fragment, {}));
6
- return (_jsxs("div", { css: [
7
- {
8
- gridArea: "footer",
9
- gridRow: "3",
10
- backgroundColor: "#007acc",
11
- display: "flex",
12
- fontSize: "14px",
13
- },
14
- MANIFEST.pr ? { backgroundColor: "#ce662a" } : {},
15
- ], children: [prItem, _jsxs(FooterItem, { children: [_jsx("span", { children: "TypeSpec Version " }), _jsx("span", { children: MANIFEST.version })] }), _jsxs(FooterItem, { link: `https://github.com/microsoft/typespec/commit/${MANIFEST.commit}`, children: [_jsx("span", { children: "Commit " }), _jsx("span", { children: MANIFEST.commit.slice(0, 6) })] })] }));
16
- };
17
- const FooterItem = ({ children, link }) => {
18
- return link ? (_jsx("a", { css: FooterItemStyles, href: link, target: "_blank", children: children })) : (_jsx("div", { css: FooterItemStyles, children: children }));
19
- };
20
- const FooterItemStyles = css({
21
- textDecoration: "none",
22
- color: "#fefefe",
23
- borderRight: "1px solid #d5d5d5",
24
- padding: "0 5px",
25
- "&:hover": {
26
- backgroundColor: "#063a5c",
27
- },
28
- });
29
- //# sourceMappingURL=footer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../src/react/footer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG9C,MAAM,CAAC,MAAM,MAAM,GAAsB,GAAG,EAAE;IAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAC3B,MAAC,UAAU,IAAC,IAAI,EAAE,8CAA8C,QAAQ,CAAC,EAAE,EAAE,aAC3E,iCAAgB,EAChB,yBAAO,QAAQ,CAAC,EAAE,GAAQ,IACf,CACd,CAAC,CAAC,CAAC,CACF,mBAAK,CACN,CAAC;IACF,OAAO,CACL,eACE,GAAG,EAAE;YACH;gBACE,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,GAAG;gBACZ,eAAe,EAAE,SAAS;gBAC1B,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;aACjB;YACD,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE;SAClD,aAEA,MAAM,EACP,MAAC,UAAU,eACT,+CAA8B,EAC9B,yBAAO,QAAQ,CAAC,OAAO,GAAQ,IACpB,EACb,MAAC,UAAU,IAAC,IAAI,EAAE,gDAAgD,QAAQ,CAAC,MAAM,EAAE,aACjF,qCAAoB,EACpB,yBAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAQ,IAC/B,IACT,CACP,CAAC;AACJ,CAAC,CAAC;AAKF,MAAM,UAAU,GAA0D,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE;IAC/F,OAAO,IAAI,CAAC,CAAC,CAAC,CACZ,YAAG,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAC,QAAQ,YAClD,QAAQ,GACP,CACL,CAAC,CAAC,CAAC,CACF,cAAK,GAAG,EAAE,gBAAgB,YAAG,QAAQ,GAAO,CAC7C,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,GAAG,CAAC;IAC3B,cAAc,EAAE,MAAM;IACtB,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,mBAAmB;IAChC,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE;QACT,eAAe,EAAE,SAAS;KAC3B;CACF,CAAC,CAAC"}
@@ -1,50 +0,0 @@
1
- import { useEffect, useMemo, useRef, useState } from "react";
2
- /**
3
- * Hook to manage a value that could be either controlled or uncontrolled, such as a checked state or
4
- * text box string.
5
- * @param controlledValue - The controlled value passed in the props. This value will always be used if provided,
6
- * and the internal state will be updated to reflect it.
7
- * @param defaultUncontrolledValue - Initial value for the internal state in the uncontrolled case.
8
- * @returns An array of the current value and an updater callback. Like `React.useState`, the updater
9
- * callback always has the same identity, and it can take either a new value, or a function which
10
- * is passed the previous value and returns the new value.
11
- * @see https://reactjs.org/docs/uncontrolled-components.html
12
- */
13
- export function useControllableValue(controlledValue, defaultUncontrolledValue, onChange) {
14
- const [value, setValue] = useState(defaultUncontrolledValue);
15
- const isControlled = useMemo(() => controlledValue !== undefined, []);
16
- const currentValue = isControlled ? controlledValue : value;
17
- // Duplicate the current value and onChange in refs so they're accessible from
18
- // setValueOrCallOnChange without creating a new callback every time
19
- const valueRef = useRef(currentValue);
20
- const onChangeRef = useRef(onChange);
21
- useEffect(() => {
22
- valueRef.current = currentValue;
23
- onChangeRef.current = onChange;
24
- });
25
- // To match the behavior of the setter returned by React.useState, this callback's identity
26
- // should never change. This means it MUST NOT directly reference variables that can change.
27
- const setValueOrCallOnChange = useMemo(() => (update) => {
28
- // Assuming here that TValue is not a function, because a controllable value will typically
29
- // be something a user can enter as input
30
- const newValue = typeof update === "function" ? update(valueRef.current) : update;
31
- if (onChangeRef.current) {
32
- onChangeRef.current(newValue);
33
- }
34
- if (!isControlled) {
35
- setValue(newValue);
36
- }
37
- }, []);
38
- return [currentValue, setValueOrCallOnChange];
39
- }
40
- export function useAsyncMemo(callback, defaultValue, deps) {
41
- const [value, setValue] = useState(defaultValue);
42
- useEffect(() => {
43
- callback()
44
- .then(setValue)
45
- // eslint-disable-next-line no-console
46
- .catch(() => console.error("Failed to load async memo"));
47
- }, deps);
48
- return value;
49
- }
50
- //# sourceMappingURL=hooks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/react/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE7D;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAClC,eAAmC,EACnC,wBAA4C,EAC5C,QAA8C;IAE9C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,wBAAwB,CAAC,CAAC;IACjF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,KAAK,SAAS,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC;IAE5D,8EAA8E;IAC9E,oEAAoE;IACpE,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrC,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC;QAChC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,2FAA2F;IAC3F,4FAA4F;IAC5F,MAAM,sBAAsB,GAAG,OAAO,CACpC,GAAG,EAAE,CAAC,CAAC,MAAgD,EAAE,EAAE;QACzD,2FAA2F;QAC3F,yCAAyC;QACzC,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAE,MAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAE3F,IAAI,WAAW,CAAC,OAAO,EAAE;YACvB,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC/B;QAED,IAAI,CAAC,YAAY,EAAE;YACjB,QAAQ,CAAC,QAAQ,CAAC,CAAC;SACpB;IACH,CAAC,EACD,EAAE,CACH,CAAC;IAEF,OAAO,CAAC,YAAY,EAAE,sBAAsB,CAAQ,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,QAA0B,EAC1B,YAAe,EACf,IAA2B;IAE3B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAI,YAAY,CAAC,CAAC;IACpD,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,EAAE;aACP,IAAI,CAAC,QAAQ,CAAC;YACf,sCAAsC;aACrC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAC7D,CAAC,EAAE,IAAI,CAAC,CAAC;IACT,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,4 +0,0 @@
1
- export { Playground } from "./playground.js";
2
- export { createReactPlayground, renderReactPlayground } from "./standalone.js";
3
- export * from "./types.js";
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC/E,cAAc,YAAY,CAAC"}
@@ -1,38 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
- export const OutputTabs = ({ tabs, selected, onSelect }) => {
3
- const [leftTabs, rightTabs] = chunk(tabs, (x) => x.align === "left");
4
- return (_jsxs("div", { css: { display: "flex", borderBottom: "1px solid #c5c5c5" }, children: [leftTabs.map((tab) => {
5
- return (_jsx(OutputTab, { tab: tab, selected: selected === tab.id, onSelect: onSelect }, tab.id));
6
- }), _jsx("span", { css: { flex: 1, borderRight: "1px solid #ccc" } }), rightTabs.map((tab) => {
7
- return (_jsx(OutputTab, { tab: tab, selected: selected === tab.id, onSelect: onSelect }, tab.id));
8
- })] }));
9
- };
10
- export const OutputTab = ({ tab, selected, onSelect }) => {
11
- return (_jsx("a", { css: [
12
- {
13
- height: "26px",
14
- padding: "0 5px",
15
- borderRight: "1px solid #ccc",
16
- borderTop: "none",
17
- borderBottom: "none",
18
- color: "#000",
19
- textDecoration: "none",
20
- cursor: "pointer",
21
- },
22
- selected ? { fontWeight: "bold", backgroundColor: "#eee" } : {},
23
- ], onClick: () => onSelect(tab.id), children: tab.name }));
24
- };
25
- function chunk(items, condition) {
26
- const match = [];
27
- const unMatch = [];
28
- for (const item of items) {
29
- if (condition(item)) {
30
- match.push(item);
31
- }
32
- else {
33
- unMatch.push(item);
34
- }
35
- }
36
- return [match, unMatch];
37
- }
38
- //# sourceMappingURL=output-tabs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"output-tabs.js","sourceRoot":"","sources":["../../../src/react/output-tabs.tsx"],"names":[],"mappings":";AAaA,MAAM,CAAC,MAAM,UAAU,GAAuC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7F,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;IACrE,OAAO,CACL,eAAK,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAC7D,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACpB,OAAO,CACL,KAAC,SAAS,IAAc,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,KAAK,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,IAAnE,GAAG,CAAC,EAAE,CAAiE,CACxF,CAAC;YACJ,CAAC,CAAC,EACF,eAAM,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAS,EAC7D,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACrB,OAAO,CACL,KAAC,SAAS,IAAc,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,KAAK,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,IAAnE,GAAG,CAAC,EAAE,CAAiE,CACxF,CAAC;YACJ,CAAC,CAAC,IACE,CACP,CAAC;AACJ,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,SAAS,GAAsC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC1F,OAAO,CACL,YACE,GAAG,EAAE;YACH;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,gBAAgB;gBAC7B,SAAS,EAAE,MAAM;gBACjB,YAAY,EAAE,MAAM;gBACpB,KAAK,EAAE,MAAM;gBACb,cAAc,EAAE,MAAM;gBACtB,MAAM,EAAE,SAAS;aAClB;YACD,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;SAChE,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,YAE9B,GAAG,CAAC,IAAI,GACP,CACL,CAAC;AACJ,CAAC,CAAC;AAEF,SAAS,KAAK,CAAI,KAAU,EAAE,SAA+B;IAC3D,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;YACnB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAClB;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACpB;KACF;IACD,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC1B,CAAC"}