@publish.os/nextjs 0.0.1-alpha.8 → 0.0.1-alpha.90
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.
- package/compiler-assets/nextjs/defaults/app/globals.css +1 -0
- package/compiler-assets/nextjs/defaults/group/index.tsx +50 -0
- package/compiler-assets/nextjs/defaults/group/layout.tsx +7 -3
- package/compiler-assets/nextjs/defaults/group/page.tsx +35 -43
- package/compiler-assets/nextjs/defaults/project/next.config.mjs +22 -11
- package/compiler-assets/nextjs/defaults/project/tsconfig.json.template +1 -4
- package/compiler-assets/nextjs/defaults/root/css/animation.css +131 -0
- package/compiler-assets/nextjs/defaults/root/css/components/dialog.css +4 -1
- package/compiler-assets/nextjs/defaults/root/css/components/menu.css +1 -1
- package/compiler-assets/nextjs/defaults/root/css/components/navigation-menu.css +1 -1
- package/compiler-assets/nextjs/defaults/root/css/components/popover.css +1 -1
- package/compiler-assets/nextjs/defaults/root/css/components/select.css +1 -1
- package/compiler-assets/nextjs/defaults/root/css/components/tooltip.css +1 -1
- package/compiler-assets/nextjs/defaults/root/css/shadow.css +6 -25
- package/compiler-assets/nextjs/defaults/root/css/typography.css +51 -68
- package/compiler-assets/nextjs/defaults/root/globals.css +25 -0
- package/compiler-assets/nextjs/defaults/root/{page.tsx → index.tsx} +6 -2
- package/compiler-assets/nextjs/defaults/root/layout.tsx +7 -1
- package/compiler-assets/nextjs/defaults/root/theme.css +22 -22
- package/compiler-assets/nextjs/shims/generated-group-page.tsx +19 -2
- package/compiler-assets/nextjs/shims/generated-leaf-page.tsx +16 -2
- package/compiler-assets/nextjs/shims/global-layout.tsx +11 -43
- package/compiler-assets/nextjs/shims/proxy.ts +21 -9
- package/compiler-assets/nextjs/shims/publish-os-theme-provider.tsx +76 -15
- package/compiler-assets/nextjs/shims/root-page.tsx +7 -1
- package/compiler-assets/nextjs/shims/site-fenced-code-block.tsx +34 -0
- package/compiler-assets/nextjs/shims/site-heading-level.tsx +14 -0
- package/compiler-assets/nextjs/shims/site-mdx-components.tsx +100 -0
- package/compiler-assets/nextjs/shims/site-mdx.tsx +12 -0
- package/compiler-assets/nextjs/shims/theme-defaults.css +41 -25
- package/dist/build-operation-2JAYBSKF.js +83 -0
- package/dist/button-CtzUJB8u.d.ts +11 -0
- package/dist/{button-CFdx-ohV.d.ts → button-c3WGnxIj.d.ts} +3 -3
- package/dist/chunk-535TM4A5.js +1455 -0
- package/dist/chunk-726GV2NF.js +2344 -0
- package/dist/chunk-7OGTPSKI.js +156 -0
- package/dist/chunk-AI2UULNX.js +9 -0
- package/dist/chunk-B2V22WRT.js +297 -0
- package/dist/chunk-DLDFHU7Y.js +191 -0
- package/dist/chunk-DWA3ZRGW.js +142 -0
- package/dist/chunk-GGKFQ3MA.js +621 -0
- package/dist/chunk-H6XILMZX.js +6154 -0
- package/dist/chunk-NECL5IBJ.js +318 -0
- package/dist/chunk-SVYGXXYR.js +36 -0
- package/dist/chunk-UF6ATARM.js +1100 -0
- package/dist/chunk-VO2I7MTM.js +56 -0
- package/dist/chunk-WDY4IK6Z.js +128 -0
- package/dist/chunk-WKTEO6RS.js +586 -0
- package/dist/chunk-YLTOLYWM.js +92 -0
- package/dist/compiler.d.ts +41 -7
- package/dist/compiler.js +48 -13143
- package/dist/compose-NN23UJGC.js +13 -0
- package/dist/config/createNextConfig.js +13 -0
- package/dist/dev-operation-TZDVJCN7.js +1055 -0
- package/dist/framework-selection-X4U6Y6QC.js +10 -0
- package/dist/ide-support-ZNW7ODFY.js +15 -0
- package/dist/index.d.ts +15 -3
- package/dist/kernel/components/blocks/AgentActions.js +71 -61
- package/dist/kernel/components/blocks/design-system-preview.d.ts +1 -1
- package/dist/kernel/components/blocks/design-system-preview.js +32 -13
- package/dist/kernel/components/blocks/link-playground.js +2 -2
- package/dist/kernel/components/blocks/logo-block.js +2 -2
- package/dist/kernel/components/blocks/nav-breadcrumb.d.ts +10 -2
- package/dist/kernel/components/blocks/nav-breadcrumb.js +20 -5
- package/dist/kernel/components/blocks/navbar.d.ts +2 -2
- package/dist/kernel/components/blocks/navbar.js +401 -60
- package/dist/kernel/components/blocks/navigation-progress-playground.js +4 -4
- package/dist/kernel/components/blocks/navigation-progress.js +4 -1
- package/dist/kernel/components/blocks/next-prev.d.ts +1 -1
- package/dist/kernel/components/blocks/next-prev.js +11 -23
- package/dist/kernel/components/blocks/page-list.d.ts +1 -1
- package/dist/kernel/components/blocks/page-list.js +5 -4
- package/dist/kernel/components/blocks/search.d.ts +83 -58
- package/dist/kernel/components/blocks/search.js +553 -426
- package/dist/kernel/components/blocks/sidebar-node.d.ts +2 -2
- package/dist/kernel/components/blocks/sidebar-node.js +11 -9
- package/dist/kernel/components/blocks/sidebar.d.ts +3 -3
- package/dist/kernel/components/blocks/sidebar.js +18 -11
- package/dist/kernel/components/blocks/theme-toggle.d.ts +2 -2
- package/dist/kernel/components/blocks/theme-toggle.js +48 -2
- package/dist/kernel/components/blocks/toc.js +3 -3
- package/dist/kernel/components/mdx/components/blockquote.js +1 -1
- package/dist/kernel/components/mdx/components/callout.d.ts +5 -7
- package/dist/kernel/components/mdx/components/callout.js +66 -35
- package/dist/kernel/components/mdx/components/code-block.d.ts +5 -2
- package/dist/kernel/components/mdx/components/code-block.js +106 -5
- package/dist/kernel/components/mdx/components/copy-code-button.d.ts +8 -0
- package/dist/kernel/components/mdx/components/copy-code-button.js +60 -0
- package/dist/kernel/components/mdx/components/figure-caption.js +1 -1
- package/dist/kernel/components/mdx/components/figure.js +1 -1
- package/dist/kernel/components/mdx/components/heading-copy-link.js +3 -3
- package/dist/kernel/components/mdx/components/image-zoom.d.ts +2 -2
- package/dist/kernel/components/mdx/components/image-zoom.js +1 -1
- package/dist/kernel/components/mdx/components/image.js +77 -56
- package/dist/kernel/components/mdx/components/inline-code.js +1 -1
- package/dist/kernel/components/mdx/components/kbd.d.ts +2 -2
- package/dist/kernel/components/mdx/components/kbd.js +3 -2
- package/dist/kernel/components/mdx/components/link.d.ts +35 -4
- package/dist/kernel/components/mdx/components/link.js +1 -1
- package/dist/kernel/components/mdx/components/paragraph.js +1 -4
- package/dist/kernel/components/mdx/components/task-list.js +1 -1
- package/dist/kernel/components/mdx/components/video-player.js +2 -2
- package/dist/kernel/components/mdx/components/video.js +1 -1
- package/dist/kernel/components/mdx/error-boundary.d.ts +1 -1
- package/dist/kernel/components/mdx/mdx.d.ts +12 -8
- package/dist/kernel/components/mdx/mdx.js +115 -39
- package/dist/kernel/components/mdx/rehype-heading-ids.js +1 -1
- package/dist/kernel/components/mdx/types.d.ts +1 -1
- package/dist/kernel/components/ui/breadcrumb-trail.d.ts +6 -23
- package/dist/kernel/components/ui/breadcrumb.d.ts +11 -3
- package/dist/kernel/components/ui/breadcrumb.js +6 -4
- package/dist/kernel/components/ui/button-group.d.ts +1 -1
- package/dist/kernel/components/ui/button-group.js +5 -4
- package/dist/kernel/components/ui/button.d.ts +2 -2
- package/dist/kernel/components/ui/button.js +6 -6
- package/dist/kernel/components/ui/card.d.ts +2 -2
- package/dist/kernel/components/ui/drawer.d.ts +3 -1
- package/dist/kernel/components/ui/drawer.js +5 -1
- package/dist/kernel/components/ui/input.d.ts +4 -4
- package/dist/kernel/components/ui/kbd.d.ts +1 -1
- package/dist/kernel/components/ui/kbd.js +9 -16
- package/dist/kernel/components/ui/link.d.ts +5 -3
- package/dist/kernel/components/ui/link.js +10 -9
- package/dist/kernel/components/ui/menu.js +5 -5
- package/dist/kernel/components/ui/mod-key.d.ts +10 -0
- package/dist/kernel/components/ui/mod-key.js +36 -0
- package/dist/kernel/components/ui/navigation-menu.js +2 -2
- package/dist/kernel/components/ui/progress.js +1 -1
- package/dist/kernel/components/ui/scroll-area.d.ts +8 -8
- package/dist/kernel/components/ui/scroll-area.js +4 -4
- package/dist/kernel/components/ui/select.js +7 -10
- package/dist/kernel/components/ui/text.d.ts +2 -2
- package/dist/kernel/components/ui/theme-toggle.d.ts +3 -3
- package/dist/kernel/components/ui/theme-toggle.js +4 -9
- package/dist/kernel/defaults.registry.d.ts +9 -9
- package/dist/kernel/defaults.registry.js +9 -9
- package/dist/kernel/routes/agent/markdown.d.ts +0 -1
- package/dist/kernel/routes/layouts/group.d.ts +1 -1
- package/dist/kernel/routes/metadata/feed.d.ts +1 -1
- package/dist/kernel/routes/metadata/feed.js +13 -9
- package/dist/kernel/routes/metadata/llms.d.ts +2 -1
- package/dist/kernel/routes/metadata/llms.js +4 -4
- package/dist/kernel/routes/metadata/robots.d.ts +1 -1
- package/dist/kernel/routes/metadata/robots.js +2 -2
- package/dist/kernel/routes/metadata/sitemap.d.ts +6 -3
- package/dist/kernel/routes/metadata/sitemap.js +48 -20
- package/dist/kernel/routes/pages/group.d.ts +1 -1
- package/dist/kernel/routes/pages/group.js +20 -12
- package/dist/kernel/routes/pages/leaf.d.ts +2 -2
- package/dist/kernel/routes/pages/leaf.js +20 -12
- package/dist/kernel/routes/pages/root.d.ts +2 -2
- package/dist/kernel/routes/pages/root.js +18 -12
- package/dist/resolvers/manifest-resolver.js +29 -6
- package/dist/search.d.ts +6 -7
- package/dist/search.js +47 -22
- package/dist/{sidebar-types-Bgchdfd6.d.ts → sidebar-types-DKpR27II.d.ts} +1 -1
- package/dist/{types-CIwwieNw.d.ts → types-BzkZty3r.d.ts} +23 -3
- package/dist/{types-DHBm7-j6.d.ts → types-CJWRG05y.d.ts} +20 -1
- package/dist/{types-B_b3C0U6.d.ts → types-CUtrppxt.d.ts} +8 -2
- package/dist/types.d.ts +14 -6
- package/dist/validate-local-source-XRL2Y7XE.js +14 -0
- package/dist/validate-publish-os-source-DAPZ4QGE.js +12 -0
- package/init/seed/minimal/.gitignore +1 -0
- package/init/seed/minimal/publish.os/assets/favicon/favicon.dark.png +0 -0
- package/init/seed/minimal/publish.os/assets/favicon/favicon.png +0 -0
- package/init/seed/minimal/publish.os/docs/content/get-started.mdx +6 -10
- package/init/seed/minimal/publish.os/docs/content/groups.mdx +1 -1
- package/init/seed/minimal/publish.os/docs/content/{theme.mdx → themes.mdx} +14 -12
- package/init/seed/minimal/publish.os/publish.os.config.json +3 -7
- package/init/seed/minimal/publish.os/theme.css +52 -24
- package/init/seed/minimal/publish.os/tsconfig.json +3 -0
- package/init/seed/minimal/seed.json +4 -1
- package/init/seed/scratch/publish.os/docs/content/get-started.mdx +6 -0
- package/init/seed/scratch/publish.os/publish.os.config.json +4 -0
- package/init/seed/scratch/seed.json +5 -0
- package/package.json +12 -26
- package/release/app/phosphor/package.json +3 -3
- package/release/app/phosphor/pnpm-lock.yaml.template +523 -360
- package/release/app/phosphor/pnpm-workspace.yaml +3 -0
- package/release/compiler/package.json +1 -1
- package/release/compiler/pnpm-lock.yaml.template +439 -286
- package/release/compiler/pnpm-workspace.yaml +3 -0
- package/release/release.json +7 -36
- package/compiler-assets/nextjs/defaults/group/leaf.tsx +0 -48
- package/dist/icons.d.ts +0 -1
- package/dist/icons.js +0 -2
- package/dist/kernel/components/mdx/components/pre.d.ts +0 -6
- package/dist/kernel/components/mdx/components/pre.js +0 -18
- package/dist/kernel/components/ui/meta-key.d.ts +0 -17
- package/dist/kernel/components/ui/meta-key.js +0 -9
- package/dist/kernel/framework-icons.d.ts +0 -1
- package/dist/kernel/framework-icons.js +0 -39
- package/dist/link-CYaCRDb6.d.ts +0 -35
- package/dist/route-metadata-og-image-BeKKFHg7.d.ts +0 -58
- package/dist/types-sM2g9nW0.d.ts +0 -12
- package/release/app/lucide/package.json +0 -30
- package/release/app/lucide/pnpm-lock.yaml.template +0 -2905
- package/release/app/lucide/pnpm-workspace.yaml +0 -11
- package/release/app/tabler/package.json +0 -30
- package/release/app/tabler/pnpm-lock.yaml.template +0 -2911
- package/release/app/tabler/pnpm-workspace.yaml +0 -11
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import {
|
|
2
|
+
validatePublishOsSource
|
|
3
|
+
} from "./chunk-726GV2NF.js";
|
|
4
|
+
import {
|
|
5
|
+
assertFrameworkSelection
|
|
6
|
+
} from "./chunk-DLDFHU7Y.js";
|
|
7
|
+
import {
|
|
8
|
+
AppError,
|
|
9
|
+
readInstalledFramework
|
|
10
|
+
} from "./chunk-WDY4IK6Z.js";
|
|
11
|
+
|
|
12
|
+
// src/lib/compiler/lifecycle/validate-local-source.ts
|
|
13
|
+
async function validateLocalSource({
|
|
14
|
+
options,
|
|
15
|
+
sourceDir,
|
|
16
|
+
sourceRoot
|
|
17
|
+
}) {
|
|
18
|
+
options.signal?.throwIfAborted(), options.onEvent?.({ type: "progress", message: "Validating source" });
|
|
19
|
+
let validation = await validatePublishOsSource({
|
|
20
|
+
publishOsDir: sourceDir,
|
|
21
|
+
sourceIdentity: { sourceRoot }
|
|
22
|
+
});
|
|
23
|
+
if (options.signal?.throwIfAborted(), options.onEvent?.({
|
|
24
|
+
type: "diagnostics",
|
|
25
|
+
diagnostics: {
|
|
26
|
+
diagnostics: [...validation.errors, ...validation.warnings].map(
|
|
27
|
+
(diagnostic) => ({
|
|
28
|
+
code: diagnostic.code,
|
|
29
|
+
severity: diagnostic.level,
|
|
30
|
+
message: diagnostic.message,
|
|
31
|
+
...diagnostic.file === void 0 ? {} : { file: diagnostic.file },
|
|
32
|
+
...diagnostic.line === void 0 ? {} : { line: diagnostic.line },
|
|
33
|
+
...diagnostic.column === void 0 ? {} : { column: diagnostic.column },
|
|
34
|
+
...typeof diagnostic.details?.correction == "string" ? { correction: diagnostic.details.correction } : {},
|
|
35
|
+
...typeof diagnostic.details?.sourceLine == "string" ? { sourceLine: diagnostic.details.sourceLine } : {},
|
|
36
|
+
...typeof diagnostic.details?.length == "number" ? { length: diagnostic.details.length } : {},
|
|
37
|
+
...typeof diagnostic.details?.propertyPath == "string" ? { propertyPath: diagnostic.details.propertyPath } : {}
|
|
38
|
+
})
|
|
39
|
+
)
|
|
40
|
+
}
|
|
41
|
+
}), !validation.valid || !validation.source)
|
|
42
|
+
throw new AppError({
|
|
43
|
+
code: "FRAMEWORK_SOURCE_INVALID",
|
|
44
|
+
message: "The selected source failed validation."
|
|
45
|
+
});
|
|
46
|
+
let framework = await readInstalledFramework();
|
|
47
|
+
return await assertFrameworkSelection({
|
|
48
|
+
context: options.request.context,
|
|
49
|
+
framework,
|
|
50
|
+
runtime: validation.source.config.runtime
|
|
51
|
+
}), { source: validation.source, framework };
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export {
|
|
55
|
+
validateLocalSource
|
|
56
|
+
};
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
// src/lib/compiler/internal/errors.ts
|
|
2
|
+
var AppError = class extends Error {
|
|
3
|
+
code;
|
|
4
|
+
details;
|
|
5
|
+
fix;
|
|
6
|
+
constructor({ code, message, details, fix }) {
|
|
7
|
+
super(message), this.name = "FrameworkError", this.code = code, this.details = details, this.fix = fix;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
// src/lib/compiler/release/installed-framework.ts
|
|
12
|
+
import { readFileSync } from "fs";
|
|
13
|
+
import { readFile } from "fs/promises";
|
|
14
|
+
import { dirname, join } from "path";
|
|
15
|
+
import { fileURLToPath } from "url";
|
|
16
|
+
var frameworkPackageName = "@publish.os/nextjs", exactVersion = /^(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)(?:-[0-9A-Za-z]+(?:\.[0-9A-Za-z]+)*)?(?:\+[0-9A-Za-z]+(?:\.[0-9A-Za-z]+)*)?$/u, sha256Digest = /^[a-f0-9]{64}$/u;
|
|
17
|
+
function record(value) {
|
|
18
|
+
if (!value || typeof value != "object" || Array.isArray(value))
|
|
19
|
+
throw new AppError({
|
|
20
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
21
|
+
message: "The installed framework release metadata is invalid."
|
|
22
|
+
});
|
|
23
|
+
return value;
|
|
24
|
+
}
|
|
25
|
+
function version(value) {
|
|
26
|
+
if (typeof value != "string" || !exactVersion.test(value))
|
|
27
|
+
throw new AppError({
|
|
28
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
29
|
+
message: "The installed framework release version is not exact."
|
|
30
|
+
});
|
|
31
|
+
return value;
|
|
32
|
+
}
|
|
33
|
+
function graphRecord(value) {
|
|
34
|
+
let graph = record(value), fields = [
|
|
35
|
+
"packageJsonSha256",
|
|
36
|
+
"pnpmWorkspaceSha256",
|
|
37
|
+
"lockfileTemplateSha256"
|
|
38
|
+
];
|
|
39
|
+
for (let field of fields)
|
|
40
|
+
if (typeof graph[field] != "string" || !sha256Digest.test(graph[field]))
|
|
41
|
+
throw new AppError({
|
|
42
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
43
|
+
message: `The installed framework release has an invalid ${field}.`
|
|
44
|
+
});
|
|
45
|
+
return Object.freeze({
|
|
46
|
+
packageJsonSha256: graph.packageJsonSha256,
|
|
47
|
+
pnpmWorkspaceSha256: graph.pnpmWorkspaceSha256,
|
|
48
|
+
lockfileTemplateSha256: graph.lockfileTemplateSha256
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
function readInstalledFrameworkLocation() {
|
|
52
|
+
let directory = dirname(fileURLToPath(import.meta.url));
|
|
53
|
+
for (; ; ) {
|
|
54
|
+
try {
|
|
55
|
+
let manifest = record(
|
|
56
|
+
JSON.parse(readFileSync(join(directory, "package.json"), "utf8"))
|
|
57
|
+
);
|
|
58
|
+
if (manifest.name !== frameworkPackageName)
|
|
59
|
+
throw new AppError({
|
|
60
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
61
|
+
message: "The compiler is not inside the selected framework package."
|
|
62
|
+
});
|
|
63
|
+
return { packageRoot: directory, manifest };
|
|
64
|
+
} catch (error) {
|
|
65
|
+
if (error.code !== "ENOENT")
|
|
66
|
+
throw error instanceof AppError ? error : new AppError({
|
|
67
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
68
|
+
message: "The installed framework package metadata is unreadable or invalid."
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
let parent = dirname(directory);
|
|
72
|
+
if (parent === directory)
|
|
73
|
+
throw new AppError({
|
|
74
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
75
|
+
message: "The installed framework package metadata is missing."
|
|
76
|
+
});
|
|
77
|
+
directory = parent;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
async function readInstalledFramework() {
|
|
81
|
+
let { packageRoot, manifest } = readInstalledFrameworkLocation(), installedVersion = version(manifest.version), release;
|
|
82
|
+
try {
|
|
83
|
+
release = record(
|
|
84
|
+
JSON.parse(
|
|
85
|
+
await readFile(join(packageRoot, "release", "release.json"), "utf8")
|
|
86
|
+
)
|
|
87
|
+
);
|
|
88
|
+
} catch {
|
|
89
|
+
throw new AppError({
|
|
90
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
91
|
+
message: "The installed framework release metadata is unreadable or invalid."
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
let node = record(manifest.engines).node;
|
|
95
|
+
if (release.schemaVersion !== 1 || release.runtime !== "nextjs" || release.version !== installedVersion || typeof node != "string" || node.trim().length === 0 || release.node !== node)
|
|
96
|
+
throw new AppError({
|
|
97
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
98
|
+
message: "The installed framework release identity does not match its package."
|
|
99
|
+
});
|
|
100
|
+
let graphRecords = record(release.graphs), graphs = Object.freeze({
|
|
101
|
+
compiler: graphRecord(graphRecords.compiler),
|
|
102
|
+
"app/phosphor": graphRecord(graphRecords["app/phosphor"])
|
|
103
|
+
});
|
|
104
|
+
if ("configurableDependencies" in release)
|
|
105
|
+
throw new AppError({
|
|
106
|
+
code: "FRAMEWORK_RELEASE_INVALID",
|
|
107
|
+
message: "The installed framework still declares configurable icon dependencies."
|
|
108
|
+
});
|
|
109
|
+
return Object.freeze({
|
|
110
|
+
packageName: frameworkPackageName,
|
|
111
|
+
version: installedVersion,
|
|
112
|
+
packageRoot,
|
|
113
|
+
release: Object.freeze({
|
|
114
|
+
schemaVersion: 1,
|
|
115
|
+
runtime: "nextjs",
|
|
116
|
+
version: installedVersion,
|
|
117
|
+
node,
|
|
118
|
+
pnpm: version(release.pnpm),
|
|
119
|
+
graphs
|
|
120
|
+
})
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export {
|
|
125
|
+
AppError,
|
|
126
|
+
readInstalledFrameworkLocation,
|
|
127
|
+
readInstalledFramework
|
|
128
|
+
};
|