PageSourceSearch

https://mokuu.cc/_next/static/chunks/8953.f491b82758202413.js

js mokuu.cc collected 2026-09-27 09:09:53 UTC 5,979 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8953],{98953:function(e,t,n){n.d(t,{$L:function(){return g},$Z:function(){return b},Bp:function(){return p},OL:function(){return d},Oq:function(){return v},R5:function(){return f},WM:function(){return D},WU:function(){return A},appendMessage:function(){return w},cf:function(){return l},eJ:function(){return s},f:function(){return y},generateDraftId:function(){return S},generateMessageId:function(){return h},o6:function(){return m},putDraft:function(){return u},t4:function(){return I}});let r="drafts",o="messages",a=null;function i(){return"undefined"==typeof indexedDB?Promise.reject(Error("IndexedDB 不可用(SSR 或隐私模式)")):a||(a=new Promise((e,t)=>{let n=indexedDB.open("moku_workshop",1);n.onupgradeneeded=()=>{let e=n.result;if(!e.objectStoreNames.contains(r)){let t=e.createObjectStore(r,{keyPath:"id"});t.createIndex("updatedAt","updatedAt",{unique:!1})}if(!e.objectStoreNames.contains(o)){let t=e.createObjectStore(o,{keyPath:["draftId","id"]});t.createIndex("draftId","draftId",{unique:!1})}},n.onsuccess=()=>e(n.result),n.onerror=()=>t(n.error)}).catch(e=>{throw a=null,e}))}async function u(e){try{await c(e)}catch(t){if(function(e){var t,n;if(!e)return!1;let r=e.name||(null==e?void 0:null===(n=e.target)||void 0===n?void 0:null===(t=n.error)||void 0===t?void 0:t.name)||"";return"QuotaExceededError"===r||/quota/i.test(String((null==e?void 0:e.message)||""))}(t))await d({keepId:e.id,olderThanDays:7,limit:3}),await c(e);else throw t}}function c(e){return i().then(t=>new Promise((n,o)=>{let a=t.transaction(r,"readwrite");a.oncomplete=()=>n(),a.onerror=()=>o(a.error),a.objectStore(r).put(e)}))}async function d(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{keepId:t,olderThanDays:n=30,limit:r=1}=e,o=Date.now()-864e5*n,a=await l(),i=a.filter(e=>e.id!==t&&e.updatedAt<o).sort((e,t)=>e.updatedAt-t.updatedAt).slice(0,r);for(let e of i)try{await f(e.id)}catch(e){}return i.length}async function s(e){let t=await i();return new Promise((n,o)=>{let a=t.transaction(r,"readonly"),i=a.objectStore(r).get(e);i.onsuccess=()=>n(i.result),i.onerror=()=>o(i.error)})}async function l(){let e=await i();return new Promise((t,n)=>{let o=e.transaction(r,"readonly"),a=o.objectStore(r).index("updatedAt"),i=[],u=a.openCursor(null,"prev");u.onsuccess=()=>{let e=u.result;e?(i.push(e.value),e.continue()):t(i)},u.onerror=()=>n(u.error)})}async function f(e){let t=await i();await new Promise((n,a)=>{let i=t.transaction([r,o],"readwrite");i.oncomplete=()=>n(),i.onerror=()=>a(i.error),i.objectStore(r).delete(e);let u=i.objectStore(o).index("draftId"),c=u.openKeyCursor(IDBKeyRange.only(e));c.onsuccess=()=>{let e=c.result;e&&(i.objectStore(o).delete(e.primaryKey),e.continue())}})}async function w(e){let t=await i();await new Promise((n,r)=>{let a=t.transaction(o,"readwrite");a.oncomplete=()=>n(),a.onerror=()=>r(a.error),a.objectStore(o).put(e)})}async function m(e){await w(e)}async function p(e){let t=await i();return new Promise((n,r)=>{let a=t.transaction(o,"readonly"),i=a.objectStore(o).index("draftId"),u=i.getAll(IDBKeyRange.only(e));u.onsuccess=()=>{let e=u.result.sort((e,t)=>e.createdAt-t.createdAt);n(e)},u.onerror=()=>r(u.error)})}async function y(e,t){let n=await i();await new Promise((r,a)=>{let i=n.transaction(o,"readwrite");i.oncomplete=()=>r(),i.onerror=()=>a(i.error);let u=i.objectStore(o).index("draftId"),c=u.openCursor(IDBKeyRange.only(e));c.onsuccess=()=>{let e=c.result;if(e){let n=e.value;n.createdAt>t&&e.delete(),e.continue()}}})}async function g(e,t){let n=await i();await new Promise((r,a)=>{let i=n.transaction(o,"readwrite");i.oncomplete=()=>r(),i.onerror=()=>a(i.error);let u=i.objectStore(o).index("draftId"),c=u.openCursor(IDBKeyRange.only(e));c.onsuccess=()=>{let e=c.result;if(e){let n=e.value;n.createdAt<t&&e.delete(),e.continue()}}})}async function b(e,t){let n=await i();await new Promise((r,a)=>{let i=n.transaction(o,"readwrite");i.oncomplete=()=>r(),i.onerror=()=>a(i.error),i.objectStore(o).delete([e,t])})}async function v(){if("undefined"==typeof navigator||!navigator.storage||!navigator.storage.estimate)return -1;try{let e=await navigator.storage.estimate();return"number"==typeof e.usage?e.usage:-1}catch(e){return -1}}function S(){let e=Math.random().toString(36).slice(2,10);return"draft_".concat(Date.now().toString(36),"_").concat(e)}function h(){let e=Math.random().toString(36).slice(2,10);return"msg_".concat(Date.now().toString(36),"_").concat(e)}
1async function I(e){var t,n;let r=await s(e);if(!r)throw Error("草稿不存在");let a=S(),c=Date.now(),d=(null===(t=r.manifest)||void 0===t?void 0:t.name)||"未命名",l="community:".concat(a.replace(/^draft_/,"")),f="".concat(d," \xb7 副本"),w={type:"derive_app",sourceId:(null===(n=r.manifest)||void 0===n?void 0:n.id)||e,sourceName:d},m=(r.bundleHistory||[]).map(e=>({...structuredClone(e),manifest:{...structuredClone(e.manifest),id:l,name:f,origin:w}})),y={...structuredClone(r),id:a,manifest:{...structuredClone(r.manifest),id:l,name:f,version:"0.0.1",curated:!1,author:void 0,origin:w},bundleHistory:m,createdAt:c,updatedAt:c,cloudSyncedAt:void 0,cloudBundleSha256:void 0,freeCallsUsed:0,lastAssistAt:void 0},g=await p(e);if(await u(y),g.length>0){let e=await i();await new Promise((t,n)=>{let r=e.transaction(o,"readwrite");r.oncomplete=()=>t(),r.onerror=()=>n(r.error);let i=r.objectStore(o);for(let e of g)i.put({...e,draftId:a})})}return y}function A(e,t){let n={id:"hist_".concat(Date.now().toString(36),"_").concat(Math.random().toString(36).slice(2,6)),createdAt:Date.now(),...t},r=[n,...e.bundleHistory||[]].slice(0,10);return{...e,bundleHistory:r,updatedAt:Date.now()}}function D(e,t){let n=e.bundleHistory||[],r=n.findIndex(e=>e.id===t);if(-1===r)return null;let o=n[r],a=n.slice(r),{id:i,name:u,origin:c,...d}=o.manifest;return{draft:{...e,bundle:o.bundle,manifest:{...e.manifest,...d},bundleHistory:a,updatedAt:Date.now()},entry:o}}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.