@blocklet/pages-kit-inner-components 0.6.100 → 0.6.101
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/lib/cjs/project-html.js +6 -6
- package/lib/cjs/resources.js +1 -1
- package/lib/es/project-html.js +23 -23
- package/lib/es/resources.js +1 -1
- package/package.json +15 -15
package/lib/cjs/project-html.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
"use strict";const
|
|
2
|
-
${
|
|
3
|
-
${
|
|
4
|
-
${
|
|
1
|
+
"use strict";const B=require("@arcblock/did-connect-storage-nedb"),E=require("@blocklet/sdk/lib/config"),D=require("@blocklet/sdk/lib/wallet"),U=require("@blocklet/sdk/lib/wallet-authenticator"),H=require("@blocklet/sdk/lib/wallet-handler"),K=require("@blocklet/sdk/service/auth"),C=require("path"),v=require("./chunks/components-DLLpFRy5.js"),T=require("./chunks/html-xfTPTsl5.js"),W=require("@arcblock/crawler-middleware"),N=require("@blocklet/pages-kit/types"),R=require("@blocklet/pages-kit/utils/common"),A=require("@blocklet/pages-kit/utils/preload"),F=require("@blocklet/sdk/lib/component"),O=require("express"),P=require("fs"),J=require("lodash/get"),z=require("mustache"),j=require("ufo"),y=n=>n&&n.__esModule?n:{default:n},G=y(B),s=y(E),Y=y(C),Q=y(J),V=y(z),X=(n={})=>{const e={data:new Map,timers:new Map,set:(t,d,u=n.ttl||36e5)=>{n.max&&e.data.size>=n.max&&e.delete(e.data.keys().next().value),e.timers.has(t)&&clearTimeout(e.timers.get(t)),e.timers.set(t,setTimeout(()=>e.delete(t),u)),e.data.set(t,d)},get:t=>e.data.get(t),has:t=>e.data.has(t),delete:t=>(e.timers.has(t)&&clearTimeout(e.timers.get(t)),e.timers.delete(t),e.data.delete(t)),clear:()=>{e.data.clear();for(const t of e.timers.values())clearTimeout(t);e.timers.clear()}};return e},q=X({max:1,ttl:1e3*30});D.getWallet();const Z=new U.WalletAuthenticator;new H.WalletHandlers({authenticator:Z,tokenStorage:new G.default({dbPath:Y.default.join(s.default.env.dataDir,"auth.db")})});const ee=new K.BlockletService,te=async()=>{try{const n=q.get("blockletInfo");if(n)return n;const{blocklet:e}=await ee.getBlocklet();return q.set("blockletInfo",e),e}catch{return null}},ne=["/assets/"];function oe({app:n,viteDevServer:e,state:t}){let d;if(e){const o=P.readFileSync(C.resolve(process.cwd(),"./index.html"),"utf-8");n.use(async(f,k,S)=>{const i=f.originalUrl;d=await e.transformIndexHtml(i,o),S()})}else d=P.readFileSync(C.resolve(process.env.BLOCKLET_APP_DIR,"dist/index.html"),"utf-8");const u=O.Router();u.use((o,f,k)=>{if(o.headers["x-unique-record"]==="dial_http"){v.logger.info("[html] dial http request, return 200 status code"),f.status(200).send("ok");return}k()}),s.default.env.preferences.snapkitEnabled&&s.default.env.preferences.snapkitEndpoint&&s.default.env.SNAP_KIT_ACCESS_KEY&&u.use(W.createSnapshotMiddleware({endpoint:s.default.env.preferences.snapkitEndpoint,accessKey:s.default.env.SNAP_KIT_ACCESS_KEY,cacheMax:s.default.env.preferences.snapkitCacheSize||100})),u.get("/:path(*)?",async(o,f,k)=>{if(ne.some(c=>o.path?.startsWith(c))){k();return}const S="production";let i,b,g=d;if(o.path.startsWith("/pages")){const c=o.params.lang,_=o.cookies.nf_lang,w=new Set([...s.default.env.languages.map(h=>h.code)]);let m=(c&&w.has(c)?c:void 0)||(w.has(_)?_:void 0)||[...w][0];if((!m||!t.supportedLocales?.find(h=>h.locale===m))&&(m=t.supportedLocales?.[0]?.locale||""),m){const h=[];Object.values(t.pages).forEach(a=>{const L=Object.values(a?.sections??{}).filter(r=>r.component==="custom-component"&&r.config?.componentId).map(r=>({id:r.id,componentId:r.config.componentId,useCache:r.config.useCache,cacheDuration:r.config.cacheDuration,properties:a?.dataSource?.[r.id]?.[m]}));h.push(...L)});const x=new Promise(a=>{setTimeout(()=>{a({})},30*1e3)});try{await Promise.race([x,v.getPreloadComponents({mode:S,req:o,state:t,locale:m,instances:h,module:N.PreloadComponentScriptModule.UMD_FN}).then(a=>{a&&(b=A.injectPreloadComponents(a))})])}catch(a){v.logger.warn("getPreloadComponents timeout in promise race, skip inject html elements",a)}}}try{const c=i?.title||s.default.env.appName,_=i?.description||s.default.env.appDescription,w=j.withQuery(j.joinURL(s.default.env.appUrl,"/.well-known/service/blocklet/og.png"),{title:c,description:_});g=V.default.render(d,{ogTitle:c,ogDescription:_,ogImage:se(i?.image)||w,pagesPublishedAt:t?.config.publishedAt||new Date().getTime()})}catch{}const p=t?.config.fontFamily,M=o.query.mode==="draft"||o.url.includes("preview")||o.path?.startsWith("/admin");let l=i?.backgroundColor;if(l&&R.isMuiColorKey(l)){const c=await te();l=Q.default(c,`settings.theme.light.palette.${l}`,l)}const I=E.getBlockletJs(),$=[{selector:{cheerio:"#injected-head-elements",pattern:/<script[^>]*id=["']injected-head-elements["'][^>]*><\/script>/gis},value:`
|
|
2
|
+
${l?`<meta name="theme-color" content="${l}" /><style>html,body,#app {background-color: ${l};}</style>`:""}
|
|
3
|
+
${p?.title?`<link rel="preload" as="style" href="https://fonts.googleapis.com/css?family=${p.title}&display=swap">`:""}
|
|
4
|
+
${p?.description&&p?.description!==p?.title?`<link rel="preload" as="style" href="https://fonts.googleapis.com/css?family=${p.description}&display=swap">`:""}
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
<script>
|
|
8
|
-
window.__PAGE_STATE__ = ${
|
|
8
|
+
window.__PAGE_STATE__ = ${A.safeJSONStringify(t||null)};
|
|
9
9
|
<\/script>
|
|
10
10
|
|
|
11
11
|
|
|
@@ -24,4 +24,4 @@
|
|
|
24
24
|
darkMode: "class",
|
|
25
25
|
};
|
|
26
26
|
<\/script>`:""}
|
|
27
|
-
`},
|
|
27
|
+
`},I&&{selector:{cheerio:'script[src="__blocklet__.js"]',pattern:/<script[^>]*src=["']__blocklet__\.js["'][^>]*><\/script>/gis},value:`<script>${I}<\/script>`},b?.html&&{selector:{cheerio:"#injected-html-elements",pattern:/<script[^>]*id=["']injected-html-elements["'][^>]*><\/script>/gis},value:b.html},o.cachedHtml&&{selector:{cheerio:"body",pattern:/(<body[^>]*>).*?(<\/body>)/gis},value:`<body>${T.extractBodyContent(o.cachedHtml)}</body>`}].filter(Boolean);g=await T.injectToHtml(g,$),f.send(g),v.logger.info(`[html] render: ${o.path}`),g=null,i=null,b=null}),n.use(u)}function se(n){const e=F.getComponentMountPoint("image-bin");return e&&n&&!/^(https?:\/\/|\/)/.test(n)?s.default.env.appUrl+j.joinURL(e,"uploads",n):n}module.exports=oe;
|
package/lib/cjs/resources.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const I=require("./chunks/components-DLLpFRy5.js"),c=require("./chunks/site-state-uZR_uvZu.js"),F=require("express"),L=require("fs"),J=require("joi"),X=require("lodash/groupBy"),W=require("lodash/sortBy"),B=require("path"),C=require("@blocklet/sdk/lib/middlewares/auth"),G=require("@blocklet/sdk/lib/component"),g=e=>e&&e.__esModule?e:{default:e},u=g(L),f=g(J),D=g(X),K=g(W),k=g(B),Y=async(e,t,o)=>{try{const{projectId:s}=e.params;if(!s)return o();const n=await c.Project.findByPk(s);if(!n)return t?.status(404).json({error:"Project not found"});const r=e.user?.did,a=e.user?.role||"UNKNOWN_ROLE";if(!r)return t?.status(401).json({error:"Authentication required"});if(I.isMultiTenant()){const P=n.createdBy===r,y=I.getMultiTenantAllProjectAccessPassports()?.includes?.(a);if(!P&&!y)return t?.status(403).json({error:"No permission to access this project in multi-tenant mode"})}else if(!["owner","admin","pagesEditor"].includes(a))return t?.status(403).json({error:"No permission to access this project in single-tenant mode"});e.project=n,e.projectId=s,o()}catch(s){I.logger.error("Project middleware error:",s),t?.status(400).json({error:"Internal server error"})}};function b(e,t){return new Promise((o,s)=>{const n=u.default.createReadStream(e),r=u.default.createWriteStream(t);n.on("error",s),r.on("error",s),r.on("finish",o),n.pipe(r)})}async function N(e,t){await u.default.promises.mkdir(t,{recursive:!0});const o=await u.default.promises.readdir(e,{withFileTypes:!0});for(const s of o){const n=k.default.join(e,s.name),r=k.default.join(t,s.name);s.isDirectory()?await N(n,r):await b(n,r)}}async function $(e,t){(await u.default.promises.stat(e)).isDirectory()?await N(e,t):await b(e,t)}const h=(e,t,o)=>I.isMultiTenant()?C.authMiddleware()(e,t,o):C.authMiddleware({roles:["owner","admin","pagesEditor"]})(e,t,o),z=(e,t)=>{const o=G.getResourceExportDir({projectId:e,releaseId:t});return B.join(o,c.COMPONENT_DID,c.RESOURCE_TYPE)},_=F.Router(),T="@page",U="@component",m=":",R="ALL",M="@project",v=({pageId:e,projectId:t})=>[T,t,e].join(m),H=e=>{const[t,o,s]=e.split(m);if(t===T)return{pageId:s,projectId:o}},x=({componentId:e,projectId:t})=>[U,t,e].join(m),Q=e=>{const[t,o,s]=e.split(m);if(t===U)return{componentId:s,projectId:o}},V=e=>[M,e].join(m),Z=e=>{const[t,o]=e.split(m);if(t===M)return o},ee=e=>{try{return JSON.parse(e)}catch{}return{}};async function A(e){const t=await c.SiteState.getStateByProjectId(e,"production"),o=await c.Project.findByPk(e),s=t.pageIds.map(r=>{const a=t.pages[r];if(a)return{id:v({pageId:r,projectId:e}),name:a.slug}}).filter(Boolean),n=K.default(Object.values(t.components),r=>r.index).map(({data:r})=>({id:x({componentId:r.id,projectId:e}),name:r.name||r.id}));return{id:V(e),name:o?.name||"Unnamed Project",children:[{id:v({pageId:R,projectId:e}),name:"Pages",children:s},{id:x({componentId:R,projectId:e}),name:"Components",children:n}]}}_.get("/resources",h,async(e,t)=>{const{projectId:o}=ee(e.query.resourcesParams);if(o){e.params={...e.params,projectId:o},await Y(e,t,()=>{});const r=await A(o);t.json({resources:[r]});return}const s=await c.Project.findAll({where:{}}),n=await Promise.all(s.map(r=>A(r.id)));t.json({resources:n})});const te=f.default.object({projectId:f.default.string().required().min(1),releaseId:f.default.string().allow(""),resources:f.default.array().items(f.default.string()).required(),locale:f.default.string().allow("")});_.post("/resources",h,async(e,t)=>{const{resources:o,projectId:s,releaseId:n}=await te.validateAsync(e.body),r="production",a=[],P=[];for(const i of o){if(Z(i))continue;const{pageId:d,projectId:w}=H(i)||{};if(d)d===R||d&&w&&a.push({pageId:d,projectId:w});else{const{componentId:j,projectId:p}=Q(i)||{};j===R||j&&p&&P.push({componentId:j,projectId:p})}}const y=D.default(a,"projectId"),O=D.default(P,"projectId"),q=new Set([...Object.keys(y),...Object.keys(O)]),E=z(s,n);u.default.rmSync(E,{recursive:!0,force:!0}),u.default.mkdirSync(E,{recursive:!0});for(const i of q){const d=await c.SiteState.getStateByProjectId(i,r),w=y[i],j=O[i],p=w?.map(l=>l.pageId),S=j?.map(l=>l.componentId);if(p?.length||S?.length){const l=await c.toPackage(d,{exportAssets:!0,pageIds:p,componentIds:S});await $(l,E),u.default.rmSync(l,{recursive:!0,force:!0})}I.logger.info(`Exported resources for project ${i}`,{pageIds:p,componentIds:S})}t.json({})});_.get("/all-resources",h,async(e,t)=>{const{states:o}=await c.getResourceStates(),s=o?.map(n=>{const r={blockletId:n.blockletId,blockletTitle:n.blockletTitle,components:{}};if(n.state.components&&(r.components=n.state.components),Object.keys(r.components).length!==0)return r}).filter(Boolean);t.json(s)});module.exports=_;
|
package/lib/es/project-html.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import x from "@arcblock/did-connect-storage-nedb";
|
|
2
|
-
import
|
|
3
|
-
import M from "@blocklet/sdk/lib/wallet";
|
|
4
|
-
import B from "@blocklet/sdk/lib/wallet-authenticator";
|
|
5
|
-
import D from "@blocklet/sdk/lib/wallet-handler";
|
|
6
|
-
import K from "@blocklet/sdk/service/auth";
|
|
2
|
+
import s, { getBlockletJs as L } from "@blocklet/sdk/lib/config";
|
|
3
|
+
import { getWallet as M } from "@blocklet/sdk/lib/wallet";
|
|
4
|
+
import { WalletAuthenticator as B } from "@blocklet/sdk/lib/wallet-authenticator";
|
|
5
|
+
import { WalletHandlers as D } from "@blocklet/sdk/lib/wallet-handler";
|
|
6
|
+
import { BlockletService as K } from "@blocklet/sdk/service/auth";
|
|
7
7
|
import U, { resolve as C } from "path";
|
|
8
8
|
import { l as v, g as W } from "./chunks/components-DLwSTd_N.js";
|
|
9
9
|
import { e as H, i as N } from "./chunks/html-DOgzvdOd.js";
|
|
@@ -48,7 +48,7 @@ const q = new B();
|
|
|
48
48
|
new D({
|
|
49
49
|
authenticator: q,
|
|
50
50
|
tokenStorage: new x({
|
|
51
|
-
dbPath: U.join(
|
|
51
|
+
dbPath: U.join(s.env.dataDir, "auth.db")
|
|
52
52
|
})
|
|
53
53
|
});
|
|
54
54
|
const ee = new K(), te = async () => {
|
|
@@ -84,22 +84,22 @@ function Ce({
|
|
|
84
84
|
return;
|
|
85
85
|
}
|
|
86
86
|
k();
|
|
87
|
-
}),
|
|
87
|
+
}), s.env.preferences.snapkitEnabled && s.env.preferences.snapkitEndpoint && s.env.SNAP_KIT_ACCESS_KEY && m.use(
|
|
88
88
|
O({
|
|
89
|
-
endpoint:
|
|
90
|
-
accessKey:
|
|
91
|
-
cacheMax:
|
|
89
|
+
endpoint: s.env.preferences.snapkitEndpoint,
|
|
90
|
+
accessKey: s.env.SNAP_KIT_ACCESS_KEY,
|
|
91
|
+
cacheMax: s.env.preferences.snapkitCacheSize || 100
|
|
92
92
|
})
|
|
93
93
|
), m.get("/:path(*)?", async (n, f, k) => {
|
|
94
|
-
if (oe.some((
|
|
94
|
+
if (oe.some((i) => n.path?.startsWith(i))) {
|
|
95
95
|
k();
|
|
96
96
|
return;
|
|
97
97
|
}
|
|
98
98
|
const _ = "production";
|
|
99
99
|
let l, b, g = p;
|
|
100
100
|
if (n.path.startsWith("/pages")) {
|
|
101
|
-
const
|
|
102
|
-
let u = (
|
|
101
|
+
const i = n.params.lang, y = n.cookies.nf_lang, w = /* @__PURE__ */ new Set([...s.env.languages.map((h) => h.code)]);
|
|
102
|
+
let u = (i && w.has(i) ? i : void 0) || (w.has(y) ? y : void 0) || [...w][0];
|
|
103
103
|
if ((!u || !t.supportedLocales?.find((h) => h.locale === u)) && (u = t.supportedLocales?.[0]?.locale || ""), u) {
|
|
104
104
|
const h = [];
|
|
105
105
|
Object.values(t.pages).forEach((r) => {
|
|
@@ -115,14 +115,14 @@ function Ce({
|
|
|
115
115
|
}));
|
|
116
116
|
h.push(...$);
|
|
117
117
|
});
|
|
118
|
-
const
|
|
118
|
+
const A = new Promise((r) => {
|
|
119
119
|
setTimeout(() => {
|
|
120
120
|
r({});
|
|
121
121
|
}, 30 * 1e3);
|
|
122
122
|
});
|
|
123
123
|
try {
|
|
124
124
|
await Promise.race([
|
|
125
|
-
|
|
125
|
+
A,
|
|
126
126
|
W({
|
|
127
127
|
mode: _,
|
|
128
128
|
req: n,
|
|
@@ -140,12 +140,12 @@ function Ce({
|
|
|
140
140
|
}
|
|
141
141
|
}
|
|
142
142
|
try {
|
|
143
|
-
const
|
|
144
|
-
title:
|
|
143
|
+
const i = l?.title || s.env.appName, y = l?.description || s.env.appDescription, w = X(j(s.env.appUrl, "/.well-known/service/blocklet/og.png"), {
|
|
144
|
+
title: i,
|
|
145
145
|
description: y
|
|
146
146
|
});
|
|
147
147
|
g = V.render(p, {
|
|
148
|
-
ogTitle:
|
|
148
|
+
ogTitle: i,
|
|
149
149
|
ogDescription: y,
|
|
150
150
|
ogImage: ne(l?.image) || w,
|
|
151
151
|
pagesPublishedAt: t?.config.publishedAt || (/* @__PURE__ */ new Date()).getTime()
|
|
@@ -155,15 +155,15 @@ function Ce({
|
|
|
155
155
|
const d = t?.config.fontFamily, P = n.query.mode === "draft" || n.url.includes("preview") || n.path?.startsWith("/admin");
|
|
156
156
|
let a = l?.backgroundColor;
|
|
157
157
|
if (a && F(a)) {
|
|
158
|
-
const
|
|
158
|
+
const i = await te();
|
|
159
159
|
a = Q(
|
|
160
|
-
|
|
160
|
+
i,
|
|
161
161
|
// 目前 dark 和 light 还是前端行为,后端通过 从 light 中获取
|
|
162
162
|
`settings.theme.light.palette.${a}`,
|
|
163
163
|
a
|
|
164
164
|
);
|
|
165
165
|
}
|
|
166
|
-
const S = L(),
|
|
166
|
+
const S = L(), E = [
|
|
167
167
|
{
|
|
168
168
|
selector: {
|
|
169
169
|
cheerio: "#injected-head-elements",
|
|
@@ -222,12 +222,12 @@ function Ce({
|
|
|
222
222
|
value: `<body>${H(n.cachedHtml)}</body>`
|
|
223
223
|
}
|
|
224
224
|
].filter(Boolean);
|
|
225
|
-
g = await N(g,
|
|
225
|
+
g = await N(g, E), f.send(g), v.info(`[html] render: ${n.path}`), g = null, l = null, b = null;
|
|
226
226
|
}), o.use(m);
|
|
227
227
|
}
|
|
228
228
|
function ne(o) {
|
|
229
229
|
const e = G("image-bin");
|
|
230
|
-
return e && o && !/^(https?:\/\/|\/)/.test(o) ?
|
|
230
|
+
return e && o && !/^(https?:\/\/|\/)/.test(o) ? s.env.appUrl + j(e, "uploads", o) : o;
|
|
231
231
|
}
|
|
232
232
|
export {
|
|
233
233
|
Ce as default
|
package/lib/es/resources.js
CHANGED
|
@@ -6,7 +6,7 @@ import m from "joi";
|
|
|
6
6
|
import C from "lodash/groupBy";
|
|
7
7
|
import Y from "lodash/sortBy";
|
|
8
8
|
import O, { join as $ } from "path";
|
|
9
|
-
import _ from "@blocklet/sdk/lib/middlewares/auth";
|
|
9
|
+
import { authMiddleware as _ } from "@blocklet/sdk/lib/middlewares/auth";
|
|
10
10
|
import { getResourceExportDir as z } from "@blocklet/sdk/lib/component";
|
|
11
11
|
const H = async (e, t, o) => {
|
|
12
12
|
try {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blocklet/pages-kit-inner-components",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.101",
|
|
4
4
|
"description": "Pages Kit inner components library",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -69,21 +69,21 @@
|
|
|
69
69
|
"url": "git+https://github.com/blocklet/pages-kit.git"
|
|
70
70
|
},
|
|
71
71
|
"dependencies": {
|
|
72
|
-
"@arcblock/did-connect-react": "^3.1.
|
|
72
|
+
"@arcblock/did-connect-react": "^3.1.52",
|
|
73
73
|
"@arcblock/did-connect-storage-nedb": "^1.8.0",
|
|
74
|
-
"@arcblock/react-hooks": "^3.1.
|
|
75
|
-
"@arcblock/ux": "^3.1.
|
|
76
|
-
"@blocklet/aigne-hub": "^0.
|
|
74
|
+
"@arcblock/react-hooks": "^3.1.52",
|
|
75
|
+
"@arcblock/ux": "^3.1.52",
|
|
76
|
+
"@blocklet/aigne-hub": "^0.4.51",
|
|
77
77
|
"@blocklet/aigne-sdk": "^0.5.26",
|
|
78
78
|
"@blocklet/code-editor": "^0.5.26",
|
|
79
79
|
"@blocklet/embed": "^0.2.5",
|
|
80
|
-
"@blocklet/js-sdk": "^1.16.
|
|
81
|
-
"@blocklet/logger": "1.16.
|
|
80
|
+
"@blocklet/js-sdk": "^1.16.54-beta-20251023-041534-36eec6b9",
|
|
81
|
+
"@blocklet/logger": "1.16.54-beta-20251021-070951-25e3083c",
|
|
82
82
|
"@blocklet/quickjs": "^0.5.26",
|
|
83
|
-
"@blocklet/sdk": "^1.16.
|
|
83
|
+
"@blocklet/sdk": "^1.16.54-beta-20251023-041534-36eec6b9",
|
|
84
84
|
"@blocklet/studio-ui": "^0.5.26",
|
|
85
|
-
"@blocklet/tracker": "^1.16.
|
|
86
|
-
"@blocklet/ui-react": "^3.1.
|
|
85
|
+
"@blocklet/tracker": "^1.16.54-beta-20251023-041534-36eec6b9",
|
|
86
|
+
"@blocklet/ui-react": "^3.1.52",
|
|
87
87
|
"@blocklet/uploader": "^0.2.15",
|
|
88
88
|
"@blocklet/uploader-server": "^0.2.15",
|
|
89
89
|
"@dnd-kit/core": "^6.3.1",
|
|
@@ -107,9 +107,9 @@
|
|
|
107
107
|
"@mui/styles": "^5.16.14",
|
|
108
108
|
"@mui/utils": "^7.1.1",
|
|
109
109
|
"@mui/x-date-pickers": "^8.6.0",
|
|
110
|
-
"@ocap/client": "^1.26.
|
|
111
|
-
"@ocap/mcrypto": "^1.26.
|
|
112
|
-
"@ocap/wallet": "^1.26.
|
|
110
|
+
"@ocap/client": "^1.26.3",
|
|
111
|
+
"@ocap/mcrypto": "^1.26.3",
|
|
112
|
+
"@ocap/wallet": "^1.26.3",
|
|
113
113
|
"@reactivedata/reactive": "^0.2.2",
|
|
114
114
|
"@syncedstore/core": "^0.6.0",
|
|
115
115
|
"@syncedstore/react": "^0.6.0",
|
|
@@ -201,8 +201,8 @@
|
|
|
201
201
|
"yaml": "^2.5.0",
|
|
202
202
|
"yjs": "^13.6.18",
|
|
203
203
|
"zustand": "^4.5.5",
|
|
204
|
-
"@blocklet/pages-kit": "^0.6.
|
|
205
|
-
"@blocklet/pages-kit-block-studio": "^0.6.
|
|
204
|
+
"@blocklet/pages-kit": "^0.6.101",
|
|
205
|
+
"@blocklet/pages-kit-block-studio": "^0.6.101"
|
|
206
206
|
},
|
|
207
207
|
"devDependencies": {
|
|
208
208
|
"@trivago/prettier-plugin-sort-imports": "^5.2.1",
|