@redocly/realm 0.130.0-custom.11 → 0.130.0-custom.12
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
import T from"node:path";import{unlink as
|
|
1
|
+
import T from"node:path";import{unlink as S}from"node:fs/promises";import{writeFileSync as y}from"node:fs";import{envConfig as v}from"../../server/config/env-config.js";import{PORTAL_VERSION as A}from"../../server/version.js";import{logger as e}from"../../server/tools/notifiers/logger.js";import{reporter as b}from"../../server/tools/notifiers/reporter.js";import{shutdowner as O}from"../../server/tools/shutdowner.js";import{promiseMapLimit as E}from"../../server/utils/async/promise-map-limit.js";import{validateReactPages as D}from"../../server/plugins/pages/validators/validate-react-pages.js";import{ensureDir as C}from"../../server/utils/index.js";import{initPlugins as M,runPlugins as _,writeClientEntries as x}from"../../server/plugins/lifecycle.js";import{createClientCompiler as L,createNodeBundleCompiler as J}from"../../server/esbuild/esbuild.js";import{validateAllMarkdowns as j}from"../../server/plugins/markdown/compiler.js";import{copyEnvFiles as k}from"./copy-env-files.js";import{EsbuildError as l,esbuildLogger as p}from"../../server/esbuild/esbuild-logger.js";import{reportAllErrors as F}from"../../server/utils/report-all-errors.js";import{collectAnalytics as U}from"./analytics/collect-analytics.js";import{copyMigrationsFolder as z}from"../../server/providers/database/copy-migrations.js";import{telemetry as c}from"../telemetry/index.js";import{telemetryTraceStep as m}from"../telemetry/helpers/trace-step.js";async function si(P,i){c.initialize(A),e.info("Starting project build.");const R=e.startTiming();await m("build.start",async h=>{x(i);const d=await L(i,i.outdir,"production"),u=await J(i,i.serverOutDir,"production");let n,f;try{await m("build.client_compilation",async()=>{const s=e.startTiming(),o=await d.rebuild().catch(a=>{throw new l(a)});Array.isArray(o.warnings)&&p(new l({warnings:o.warnings}));const r=e.infoTime(s,"Client JavaScript compiled");r&&c.sendTimingPerformedMessage(r)}),await m("build.server_compilation",async()=>{const s=e.startTiming(),o=await u.rebuild().catch(a=>{throw new l(a)});Array.isArray(o.warnings)&&p(new l({warnings:o.warnings}));const r=e.infoTime(s,"Server JavaScript compiled");r&&c.sendTimingPerformedMessage({message:r.message,timeMs:r.timeMs})}),await i.reloadMarkdocOptions();let t;({pluginInstances:t,lifecycleContext:n}=await M({outdir:i.outdir,serverOutDir:i.serverOutDir,contentDir:i.contentDir,devLogin:P.devLogin,setGlobalConfig:i.setGlobalConfig})),n.fs.dispose(),i.lifecycleContext=n,z(i),await _(t,i,n),f=U(i,n),await m("build.client_server_recompile",async()=>{const s=e.startTiming();e.info("Re-compiling JavaScript with user code"),(await Promise.all([d.rebuild(),u.rebuild()]).catch(a=>{throw new l(a)})).forEach(({warnings:a})=>{Array.isArray(a)&&p(new l({warnings:a}))});const r=e.infoTime(s,"JavaScript re-compiled");r&&c.sendTimingPerformedMessage(r)}),await m("build.pages_validation",async()=>{await D(i,n),await j(i,n)}),v.isProductionEnv&&await F(n),i.markUserCodeReady()}catch(t){h?.error(t),t instanceof l&&p(t)}finally{f&&await f.catch(()=>{}),await d.dispose(),await u.dispose()}b.printErrors(),e.info("Rendering pages..."),await m("build.prepare_static_data",async t=>{const s=e.startTiming(),o=[...i.getAllRoutes(),...i.getAllApiRoutes()];t?.setAttribute("totalRoutes",o.length.toString()),await E(o,15,a=>i.writeRouteStaticData(a,n));const r=e.successTime(s,"Page static data prepared.");r&&c.sendTimingPerformedMessage(r)}),await m("build.store_serialization",async()=>{const t=e.startTiming();C(i.serverOutDir),y(T.join(i.serverOutDir,"store.json"),JSON.stringify(await i.toJson())),e.successTime(t,"Store serialized and written."),k(i)});const g=v.REDOCLY_PROBLEMS_OUTPUT_FILE;if(g){const t=e.startTiming();y(C(g),JSON.stringify(b.getProblems()),"utf-8"),e.successTime(t,"Broken links written.")}await S(T.join(i.serverOutDir,"index.css"));const w=e.successTime(R,"All done");w&&c.sendTimingPerformedMessage(w)}),await O.exitWithCode(0)}export{si as prepare};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{spawn as
|
|
2
|
-
`).map(
|
|
3
|
-
`);p=
|
|
1
|
+
import{spawn as m}from"child_process";import w from"path";async function v(a,l){if(!l)return new Map;let s,c;try{const t=await l.revparse(["--show-toplevel"]);s=new Set((await l.raw("ls-files",a)).split(`
|
|
2
|
+
`).map(r=>r.trim()));const e=t&&w.relative(t,a);c=e&&e.length&&e.length+1||0}catch(t){if(t.message.includes("not a git repository"))return new Map;throw t}return new Promise(t=>{const e=new Map;let r=0;const o=m("git",["whatchanged","--i-still-use-this","--pretty=%at","--",a],{stdio:"pipe"});let p="";function u(f){p+=String(f);const h=p.split(`
|
|
3
|
+
`);p=h.pop()||"",h.forEach(i=>{if(i=i.trim(),!!i){if(i.startsWith(":")){const n=i.split(" ").slice(-1)[0].slice(c);if(e.has(n))return;s.has(n)&&s.delete(n),e.set(n,new Date(r*1e3).toISOString())}else r=Number(i);s.size===0&&(o.kill(),t(e))}})}o.stdout.on("data",f=>{u(f)}),o.stdout.on("end",()=>{u(""),o.kill(),t(e)})})}export{v as fastMtime};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import u from"node:path";import{existsSync as
|
|
2
|
-
- ${i.slice(0,
|
|
3
|
-
- `)}`;i.length>
|
|
4
|
-
... and ${i.length-
|
|
1
|
+
import u from"node:path";import{existsSync as J,readFileSync as M}from"node:fs";import V from"picomatch";import{removeLeadingSlash as $}from"@redocly/theme/core/utils";import{parsePathVersions as b}from"../../../utils/path/parse-path-versions.js";import{logger as a}from"../../tools/notifiers/logger.js";import{envConfig as h}from"../../config/env-config.js";import{ScorecardStatus as m}from"./types.js";import{getTarget as k}from"./loaders/scorecard.js";import{sha1 as z}from"../../utils/crypto/sha1.js";const p=15;async function ie({actions:n,context:s,scorecardConfig:r,reuniteConfig:l,configHash:i}){a.info("Computing scorecard...");const o=r.levels||[],v=o[0];let t=await n.loadOpenApiDefinitions(s);const N=r.ignore||[],_=V(N),D=new Set,x=a.startTiming(),c={};let g={};J(u.resolve(n.outdir,"_scorecard","meta.json"))&&(g=JSON.parse(M(u.resolve(n.outdir,"_scorecard","meta.json"),"utf-8")));let P=0;h.isDevelopMode&&!h.DEV_FULL_SCORECARD&&(t=t.slice(0,50));for(const e of t){if(e.definition?.["x-redocly-openrpc"]||e.isVirtual||!e.definition)continue;const S=e.definition.info?.["x-metadata"]||{},y=$(e.realRelativePath);if(c[e.realRelativePath])continue;const T=e.customOutputRelativeFile||e.realRelativePath;D.add(T);const A=k(r.targets,S),{minimumLevel:O=v.name,ignore:B}=A||{};if(B||_(y)){a.info(`Skipping scorecard calculation for ignored file: ${e.realRelativePath}`);continue}let d;const f=g[e.realRelativePath],R=z(e.hash+i+JSON.stringify(S));f&&f.hash===R?(P++,d=JSON.parse(M(u.resolve(n.outdir,f.filename),"utf-8"))):{data:d}=await s.cache.load(e.realRelativePath,"scorecard");const{levels:C,scorecardLevelIdx:w,scorecardLevel:I}=d,L=o.findIndex(H=>H.name===O),j=w-1<L?m.BelowMinimum:L<o.length-1?m.Minimum:m.Highest,F=b(e.realRelativePath)?.versionName,E={levels:C,status:j,targetLevel:O,scorecardLevel:I,scorecardLevelIdx:w,relativePath:e.realRelativePath,title:e.definition.info?.title,version:F,hash:R};c[e.realRelativePath]=E}return a.infoTime(x,"Scorecard processed, reused: %s/%s",P,t.length),h.isProductionEnv&&U(c,l,r),c}function U(n,s,r){const l=Object.values(n).filter(t=>t.status===m.BelowMinimum);if(l.length===0)return;const i=l.map(t=>t.relativePath);let o=`Detected OpenAPI definitions with score below minimum level:
|
|
2
|
+
- ${i.slice(0,p).map(()=>"%rp").join(`
|
|
3
|
+
- `)}`;i.length>p&&(o+=`
|
|
4
|
+
... and ${i.length-p} more`),s?.ignoreLint??r.ignoreNonCompliant?a.warn(o,...i):a.error(o,...i)}export{ie as computeScorecard};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@redocly/realm",
|
|
3
|
-
"version": "0.130.0-custom.
|
|
3
|
+
"version": "0.130.0-custom.12",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -91,14 +91,14 @@
|
|
|
91
91
|
"xpath": "0.0.34",
|
|
92
92
|
"yaml-ast-parser": "0.0.43",
|
|
93
93
|
"zod": "^3.25.76",
|
|
94
|
-
"@redocly/openapi-docs": "3.18.0-custom.1",
|
|
95
94
|
"@redocly/asyncapi-docs": "1.7.0-custom.1",
|
|
95
|
+
"@redocly/realm-asyncapi-sdk": "0.9.0-next.1",
|
|
96
|
+
"@redocly/config": "0.43.0-custom.1",
|
|
97
|
+
"@redocly/openapi-docs": "3.18.0-custom.1",
|
|
98
|
+
"@redocly/theme": "0.62.0-custom.2",
|
|
96
99
|
"@redocly/portal-legacy-ui": "0.14.0-next.0",
|
|
97
|
-
"@redocly/graphql-docs": "1.7.0-custom.1",
|
|
98
100
|
"@redocly/portal-plugin-mock-server": "0.16.0-next.4",
|
|
99
|
-
"@redocly/
|
|
100
|
-
"@redocly/config": "0.43.0-custom.1",
|
|
101
|
-
"@redocly/realm-asyncapi-sdk": "0.9.0-next.1"
|
|
101
|
+
"@redocly/graphql-docs": "1.7.0-custom.1"
|
|
102
102
|
},
|
|
103
103
|
"peerDependencies": {
|
|
104
104
|
"react": "^19.2.4",
|