epos 1.32.0 → 1.33.0
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/dist/chrome.d.js +1 -0
- package/dist/chrome.d.js.map +1 -0
- package/dist/epos-vite.js +1 -0
- package/dist/epos-vite.js.map +1 -0
- package/dist/epos.d.ts +10 -11
- package/dist/epos.js +1 -0
- package/dist/epos.js.map +1 -0
- package/dist/libs/libs-mobx-react-lite.js +1 -0
- package/dist/libs/libs-mobx-react-lite.js.map +1 -0
- package/dist/libs/libs-mobx.js +1 -0
- package/dist/libs/libs-mobx.js.map +1 -0
- package/dist/libs/libs-react-dom-client.js +1 -0
- package/dist/libs/libs-react-dom-client.js.map +1 -0
- package/dist/libs/libs-react-dom.js +1 -0
- package/dist/libs/libs-react-dom.js.map +1 -0
- package/dist/libs/libs-react-jsx-runtime.js +1 -0
- package/dist/libs/libs-react-jsx-runtime.js.map +1 -0
- package/dist/libs/libs-react.js +1 -0
- package/dist/libs/libs-react.js.map +1 -0
- package/package.json +5 -7
- package/src/chrome.d.ts +0 -3
- package/src/epos-vite.ts +0 -31
- package/src/epos.ts +0 -240
- package/src/libs/libs-mobx-react-lite.js +0 -12
- package/src/libs/libs-mobx.js +0 -69
- package/src/libs/libs-react-dom-client.js +0 -2
- package/src/libs/libs-react-dom.js +0 -16
- package/src/libs/libs-react-jsx-runtime.js +0 -2
- package/src/libs/libs-react.js +0 -40
package/dist/chrome.d.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=chrome.d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/epos-vite.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/epos-vite.ts"],"sourcesContent":["import { resolve } from 'node:path'\nimport type { Plugin } from 'vite'\n\nexport class EposVite {\n private libs: Record<string, string> = {\n 'react': resolve(import.meta.dirname, './libs/libs-react.js'),\n 'react/jsx-runtime': resolve(import.meta.dirname, './libs/libs-react-jsx-runtime.js'),\n 'react-dom': resolve(import.meta.dirname, './libs/libs-react-dom.js'),\n 'react-dom/client': resolve(import.meta.dirname, './libs/libs-react-dom-client.js'),\n 'mobx': resolve(import.meta.dirname, './libs/libs-mobx.js'),\n 'mobx-react-lite': resolve(import.meta.dirname, './libs/libs-mobx-react-lite.js'),\n }\n\n get plugin(): Plugin {\n return {\n name: 'epos',\n enforce: 'pre',\n resolveId: this.onResolveId,\n }\n }\n\n private onResolveId = (source: string) => {\n return this.libs[source] ?? null\n }\n}\n\nexport function epos() {\n return new EposVite().plugin\n}\n\nexport default epos\n"],"mappings":";AAAA,SAAS,eAAe;AAGjB,IAAM,WAAN,MAAe;AAAA,EACZ,OAA+B;AAAA,IACrC,SAAS,QAAQ,YAAY,SAAS,sBAAsB;AAAA,IAC5D,qBAAqB,QAAQ,YAAY,SAAS,kCAAkC;AAAA,IACpF,aAAa,QAAQ,YAAY,SAAS,0BAA0B;AAAA,IACpE,oBAAoB,QAAQ,YAAY,SAAS,iCAAiC;AAAA,IAClF,QAAQ,QAAQ,YAAY,SAAS,qBAAqB;AAAA,IAC1D,mBAAmB,QAAQ,YAAY,SAAS,gCAAgC;AAAA,EAClF;AAAA,EAEA,IAAI,SAAiB;AACnB,WAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,KAAK;AAAA,IAClB;AAAA,EACF;AAAA,EAEQ,cAAc,CAAC,WAAmB;AACxC,WAAO,KAAK,KAAK,MAAM,KAAK;AAAA,EAC9B;AACF;AAEO,SAAS,OAAO;AACrB,SAAO,IAAI,SAAS,EAAE;AACxB;AAEA,IAAO,oBAAQ;","names":[]}
|
package/dist/epos.d.ts
CHANGED
|
@@ -52,7 +52,7 @@ type Res = {
|
|
|
52
52
|
headers: {
|
|
53
53
|
get: Response['headers']['get'];
|
|
54
54
|
has: Response['headers']['has'];
|
|
55
|
-
/** Get
|
|
55
|
+
/** Get all header keys. */
|
|
56
56
|
keys: () => string[];
|
|
57
57
|
};
|
|
58
58
|
};
|
|
@@ -116,6 +116,9 @@ interface Epos {
|
|
|
116
116
|
remove(name?: string): Promise<void>;
|
|
117
117
|
/** Register models to be used by all states. */
|
|
118
118
|
register(models: Record<string, ModelClass>): void;
|
|
119
|
+
PARENT: symbol;
|
|
120
|
+
ATTACH: symbol;
|
|
121
|
+
DETACH: symbol;
|
|
119
122
|
};
|
|
120
123
|
storage: {
|
|
121
124
|
/** Get value from the storage. */
|
|
@@ -192,7 +195,10 @@ interface Epos {
|
|
|
192
195
|
env: {
|
|
193
196
|
mode: Mode;
|
|
194
197
|
tabId: number;
|
|
195
|
-
project:
|
|
198
|
+
project: {
|
|
199
|
+
id: string;
|
|
200
|
+
spec: Spec;
|
|
201
|
+
};
|
|
196
202
|
isPopup: boolean;
|
|
197
203
|
isSidePanel: boolean;
|
|
198
204
|
isBackground: boolean;
|
|
@@ -206,17 +212,10 @@ interface Epos {
|
|
|
206
212
|
reactJsxRuntime: typeof reactJsxRuntime;
|
|
207
213
|
yjs: typeof yjs;
|
|
208
214
|
};
|
|
209
|
-
symbols: {
|
|
210
|
-
readonly stateParent: symbol;
|
|
211
|
-
readonly stateModelInit: symbol;
|
|
212
|
-
readonly stateModelDispose: symbol;
|
|
213
|
-
readonly stateModelStrict: symbol;
|
|
214
|
-
readonly stateModelVersioner: symbol;
|
|
215
|
-
};
|
|
216
215
|
installer: {
|
|
217
216
|
install: {
|
|
218
|
-
(url: string, mode?: Mode): Promise<void>;
|
|
219
|
-
(bundle: Bundle): Promise<void>;
|
|
217
|
+
(id: string, url: string, mode?: Mode): Promise<void>;
|
|
218
|
+
(id: string, bundle: Bundle): Promise<void>;
|
|
220
219
|
};
|
|
221
220
|
remove(name: string): Promise<void>;
|
|
222
221
|
};
|
package/dist/epos.js
CHANGED
package/dist/epos.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/epos.ts"],"sourcesContent":["import { Spec } from 'epos-spec'\nimport type * as mobx from 'mobx'\nimport type * as mobxReactLite from 'mobx-react-lite'\nimport type * as react from 'react'\nimport type * as reactDom from 'react-dom'\nimport type * as reactDomClient from 'react-dom/client'\nimport type * as reactJsxRuntime from 'react/jsx-runtime'\nimport type * as yjs from 'yjs'\nimport type { Chrome } from './chrome.ts'\n\nexport type Fn<T = any> = (...args: any[]) => T\nexport type Obj = Record<string, unknown>\nexport type Arr = unknown[]\nexport type Versioner = Record<number, (this: any, state: any) => void>\nexport type ModelClass = new (...args: any[]) => any\nexport type Model = InstanceType<ModelClass>\nexport type Initial<T extends Obj | Model> = T | (() => T)\nexport type Attrs = Record<string, string | number>\nexport type Mode = 'development' | 'production'\nexport type Sources = { [path: string]: string }\nexport type Assets = { [path: string]: Blob }\nexport type FnArgsOrArr<T> = T extends Fn ? Parameters<T> : Arr\nexport type FnResultOrValue<T> = T extends Fn ? ReturnType<T> : T\n\nexport type ReqInit = {\n body: RequestInit['body']\n cache: RequestInit['cache']\n credentials: RequestInit['credentials']\n headers: RequestInit['headers']\n integrity: RequestInit['integrity']\n keepalive: RequestInit['keepalive']\n method: RequestInit['method']\n mode: RequestInit['mode']\n priority: RequestInit['priority']\n redirect: RequestInit['redirect']\n referrer: RequestInit['referrer']\n referrerPolicy: RequestInit['referrerPolicy']\n}\n\nexport type Res = {\n ok: Response['ok']\n url: Response['url']\n type: Response['type']\n status: Response['status']\n statusText: Response['statusText']\n redirected: Response['redirected']\n text: Response['text']\n json: Response['json']\n blob: Response['blob']\n headers: {\n get: Response['headers']['get']\n has: Response['headers']['has']\n /** Get all header keys. */\n keys: () => string[]\n }\n}\n\nexport type Storage = {\n /** Get value from the storage. */\n get<T = unknown>(key: string): Promise<T | null>\n /** Set value in the storage. */\n set(key: string, value: unknown): Promise<void>\n /** Delete value from the storage. */\n delete(key: string): Promise<void>\n /** Get all keys from the storage. */\n keys(): Promise<string[]>\n /** Clear the storage. Deletes all keys and storage itself. */\n clear(): Promise<void>\n}\n\nexport type Bundle = {\n mode: Mode\n spec: Spec\n sources: Sources\n assets: Assets\n}\n\nexport interface Epos {\n // General\n fetch: (url: string | URL, init?: ReqInit) => Promise<Res>\n browser: Chrome\n render(node: react.ReactNode, container?: reactDomClient.Container): void\n component<T>(Component: react.FC<T>): typeof Component\n element: HTMLDivElement\n\n // Bus\n bus: {\n /** Listen for an event. */\n on<T extends Fn>(name: string, callback: T, thisArg?: unknown): void\n /** Remove event listener. */\n off<T extends Fn>(name: string, callback?: T): void\n /** Listen for an event once. */\n once<T extends Fn>(name: string, callback: T, thisArg?: unknown): void\n /** Send an event to all remote listeners (local listeners are ignored). */\n send<T = unknown>(name: string, ...args: FnArgsOrArr<T>): Promise<FnResultOrValue<T> | null>\n /** Emit event locally (calls local listeners only). */\n emit<T = unknown>(name: string, ...args: FnArgsOrArr<T>): Promise<FnResultOrValue<T> | null>\n setSignal(name: string, value?: unknown): void\n waitSignal<T = unknown>(name: string, timeout?: number): Promise<T | null>\n }\n\n // State\n state: {\n /** Connect state. */\n connect: {\n <T extends Obj | Model = Obj>(initial?: Initial<T>, versioner?: Versioner): Promise<T>\n <T extends Obj | Model = Obj>(name?: string, initial?: Initial<T>, versioner?: Versioner): Promise<T>\n }\n /** Disconnect state. */\n disconnect(name?: string): void\n /** Run any state changes in a batch. */\n transaction: (fn: () => void) => void\n /** Create local state (no sync). */\n local<T extends Obj = {}>(state?: T): T\n /** Get the list of all state names. */\n list(filter?: { connected?: boolean }): Promise<{ name: string | null }[]>\n /** Remove state and all its data. */\n remove(name?: string): Promise<void>\n /** Register models to be used by all states. */\n register(models: Record<string, ModelClass>): void\n PARENT: symbol\n ATTACH: symbol\n DETACH: symbol\n }\n\n // Storage\n storage: {\n /** Get value from the storage. */\n get: {\n <T = unknown>(key: string): Promise<T | null>\n <T = unknown>(name: string, key: string): Promise<T | null>\n }\n /** Set value in the storage. */\n set: {\n <T = unknown>(key: string, value: T): Promise<void>\n <T = unknown>(name: string, key: string, value: T): Promise<void>\n }\n /** Delete value from the storage. */\n delete: {\n (key: string): Promise<void>\n (name: string, key: string): Promise<void>\n }\n /** Get all keys from the storage. */\n keys(name?: string): Promise<string[]>\n /** Clear storage. Removes all keys and storage itself. */\n clear(name?: string): Promise<void>\n /** Get storage API for a specific storage. */\n use(name?: string): Storage\n /** Get this list of all storages. */\n list(): Promise<{ name: string | null }[]>\n }\n\n // Frame\n frame: {\n /** Open background frame. */\n open: {\n (url: string): Promise<void>\n (url: string, attrs: Attrs): Promise<void>\n (name: string, url: string): Promise<void>\n (name: string, url: string, attrs: Attrs): Promise<void>\n }\n /** Close background frame. */\n close(name?: string): Promise<void>\n /** Check if background frame with the given name exists. */\n exists(name?: string): Promise<boolean>\n /** Get list of all open background frames. */\n list(): Promise<{ name: string | null; url: string }[]>\n }\n\n // Asset\n asset: {\n /** Load specified asset to memory. Load all assets if no path is provided. */\n load: {\n /** Load all assets. */\n (): Promise<void>\n /** Load asset by path. */\n (path: string): Promise<void>\n }\n /** Unload either all assets from the memory or a specific asset by its path. */\n unload: {\n /** Unload all assets. */\n (): void\n /** Unload asset by path. */\n (path: string): void\n }\n /** Get asset URL. The asset must be loaded first via `epos.asset.load`. */\n url(path: string): string\n /** Get asset as Blob. */\n get(path: string): Promise<Blob | null>\n /** Get list of all available assets. */\n list(filter?: { loaded?: boolean }): { path: string; loaded: boolean }[]\n }\n\n // Env\n env: {\n mode: Mode\n tabId: number\n project: { id: string; spec: Spec }\n isPopup: boolean\n isSidePanel: boolean\n isBackground: boolean\n }\n\n // Libs\n libs: {\n mobx: typeof mobx\n mobxReactLite: typeof mobxReactLite\n react: typeof react\n reactDom: typeof reactDom\n reactDomClient: typeof reactDomClient\n reactJsxRuntime: typeof reactJsxRuntime\n yjs: typeof yjs\n }\n\n // Installer\n installer: {\n install: {\n (id: string, url: string, mode?: Mode): Promise<void>\n (id: string, bundle: Bundle): Promise<void>\n }\n remove(name: string): Promise<void>\n }\n\n // Engine\n engine: any\n}\n\ndeclare global {\n var epos: Epos\n}\n\nconst _epos = epos\nexport { _epos as epos }\nexport default _epos\n"],"mappings":";AAuOA,IAAM,QAAQ;AAEd,IAAO,eAAQ;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/libs/libs-mobx-react-lite.js"],"sourcesContent":["export const {\n enableStaticRendering,\n isUsingStaticRendering,\n observer,\n Observer,\n observerBatching,\n useAsObservableSource,\n useLocalObservable,\n useLocalStore,\n useObserver,\n useStaticRendering,\n} = epos.libs.mobxReactLite\n"],"mappings":";AAAO,IAAM;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,IAAI,KAAK,KAAK;","names":[]}
|
package/dist/libs/libs-mobx.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/libs/libs-mobx.js"],"sourcesContent":["export const {\n _allowStateChanges,\n _allowStateChangesInsideComputed,\n _allowStateReadsEnd,\n _allowStateReadsStart,\n _autoAction,\n _endAction,\n _getAdministration,\n _getGlobalState,\n _interceptReads,\n _isComputingDerivation,\n _resetGlobalState,\n _startAction,\n $mobx,\n action,\n autorun,\n comparer,\n computed,\n configure,\n createAtom,\n defineProperty,\n entries,\n extendObservable,\n FlowCancellationError,\n flowResult,\n get,\n getAtom,\n getDebugName,\n getDependencyTree,\n getObserverTree,\n has,\n intercept,\n isAction,\n isBoxedObservable,\n isComputed,\n isComputedProp,\n isFlow,\n isFlowCancellationError,\n isObservable,\n isObservableArray,\n isObservableMap,\n isObservableObject,\n isObservableProp,\n isObservableSet,\n keys,\n makeAutoObservable,\n makeObservable,\n observable,\n ObservableMap,\n ObservableSet,\n observe,\n onBecomeObserved,\n onBecomeUnobserved,\n onReactionError,\n override,\n ownKeys,\n reaction,\n Reaction,\n remove,\n runInAction,\n set,\n spy,\n toJS,\n trace,\n transaction,\n untracked,\n values,\n when,\n} = epos.libs.mobx\n"],"mappings":";AAAO,IAAM;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,IAAI,KAAK,KAAK;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/libs/libs-react-dom-client.js"],"sourcesContent":["export default epos.libs.reactDomClient\nexport const { createRoot, hydrateRoot } = epos.libs.reactDomClient\n"],"mappings":";AAAA,IAAO,gCAAQ,KAAK,KAAK;AAClB,IAAM,EAAE,YAAY,YAAY,IAAI,KAAK,KAAK;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/libs/libs-react-dom.js"],"sourcesContent":["export default epos.libs.reactDom\nexport const {\n createPortal,\n flushSync,\n preconnect,\n prefetchDNS,\n preinit,\n preinitModule,\n preload,\n preloadModule,\n requestFormReset,\n unstable_batchedUpdates,\n useFormState,\n useFormStatus,\n version,\n} = epos.libs.reactDom\n"],"mappings":";AAAA,IAAO,yBAAQ,KAAK,KAAK;AAClB,IAAM;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,IAAI,KAAK,KAAK;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/libs/libs-react-jsx-runtime.js"],"sourcesContent":["export default epos.libs.reactJsxRuntime\nexport const { Fragment, jsx, jsxs } = epos.libs.reactJsxRuntime\n"],"mappings":";AAAA,IAAO,iCAAQ,KAAK,KAAK;AAClB,IAAM,EAAE,UAAU,KAAK,KAAK,IAAI,KAAK,KAAK;","names":[]}
|
package/dist/libs/libs-react.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/libs/libs-react.js"],"sourcesContent":["export default epos.libs.react\nexport const {\n act,\n cache,\n Children,\n cloneElement,\n Component,\n createContext,\n createElement,\n createRef,\n forwardRef,\n Fragment,\n isValidElement,\n lazy,\n memo,\n Profiler,\n PureComponent,\n startTransition,\n StrictMode,\n Suspense,\n use,\n useActionState,\n useCallback,\n useContext,\n useDebugValue,\n useDeferredValue,\n useEffect,\n useId,\n useImperativeHandle,\n useInsertionEffect,\n useLayoutEffect,\n useMemo,\n useOptimistic,\n useReducer,\n useRef,\n useState,\n useSyncExternalStore,\n useTransition,\n version,\n} = epos.libs.react\n"],"mappings":";AAAA,IAAO,qBAAQ,KAAK,KAAK;AAClB,IAAM;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,IAAI,KAAK,KAAK;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "epos",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.33.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "imkost",
|
|
@@ -14,25 +14,23 @@
|
|
|
14
14
|
},
|
|
15
15
|
"exports": {
|
|
16
16
|
".": "./dist/epos.js",
|
|
17
|
-
"./vite": "./dist/epos-vite.js"
|
|
18
|
-
"./vite/ts": "./src/epos-vite.ts"
|
|
17
|
+
"./vite": "./dist/epos-vite.js"
|
|
19
18
|
},
|
|
20
19
|
"files": [
|
|
21
|
-
"dist"
|
|
22
|
-
"src"
|
|
20
|
+
"dist"
|
|
23
21
|
],
|
|
24
22
|
"dependencies": {
|
|
25
23
|
"@parcel/watcher": "^2.5.1",
|
|
26
24
|
"@types/chrome": "^0.1.32",
|
|
27
25
|
"@types/react": "^19.2.7",
|
|
28
26
|
"@types/react-dom": "^19.2.3",
|
|
29
|
-
"epos-spec": "^1.
|
|
27
|
+
"epos-spec": "^1.4.0",
|
|
30
28
|
"mobx": "^6.15.0",
|
|
31
29
|
"mobx-react-lite": "^4.1.1",
|
|
32
30
|
"portfinder": "^1.0.38",
|
|
33
31
|
"react": "^19.2.3",
|
|
34
32
|
"ws": "^8.18.3",
|
|
35
|
-
"yjs": "^13.6.
|
|
33
|
+
"yjs": "^13.6.29"
|
|
36
34
|
},
|
|
37
35
|
"devDependencies": {
|
|
38
36
|
"vite": "^7.3.0"
|
package/src/chrome.d.ts
DELETED
package/src/epos-vite.ts
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { resolve } from 'node:path'
|
|
2
|
-
import type { Plugin } from 'vite'
|
|
3
|
-
|
|
4
|
-
export class EposVite {
|
|
5
|
-
private libs: Record<string, string> = {
|
|
6
|
-
'react': resolve(import.meta.dirname, './libs/libs-react.js'),
|
|
7
|
-
'react/jsx-runtime': resolve(import.meta.dirname, './libs/libs-react-jsx-runtime.js'),
|
|
8
|
-
'react-dom': resolve(import.meta.dirname, './libs/libs-react-dom.js'),
|
|
9
|
-
'react-dom/client': resolve(import.meta.dirname, './libs/libs-react-dom-client.js'),
|
|
10
|
-
'mobx': resolve(import.meta.dirname, './libs/libs-mobx.js'),
|
|
11
|
-
'mobx-react-lite': resolve(import.meta.dirname, './libs/libs-mobx-react-lite.js'),
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
get plugin(): Plugin {
|
|
15
|
-
return {
|
|
16
|
-
name: 'epos',
|
|
17
|
-
enforce: 'pre',
|
|
18
|
-
resolveId: this.onResolveId,
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
private onResolveId = (source: string) => {
|
|
23
|
-
return this.libs[source] ?? null
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export function epos() {
|
|
28
|
-
return new EposVite().plugin
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export default epos
|
package/src/epos.ts
DELETED
|
@@ -1,240 +0,0 @@
|
|
|
1
|
-
import { Spec } from 'epos-spec'
|
|
2
|
-
import type * as mobx from 'mobx'
|
|
3
|
-
import type * as mobxReactLite from 'mobx-react-lite'
|
|
4
|
-
import type * as react from 'react'
|
|
5
|
-
import type * as reactDom from 'react-dom'
|
|
6
|
-
import type * as reactDomClient from 'react-dom/client'
|
|
7
|
-
import type * as reactJsxRuntime from 'react/jsx-runtime'
|
|
8
|
-
import type * as yjs from 'yjs'
|
|
9
|
-
import type { Chrome } from './chrome.ts'
|
|
10
|
-
|
|
11
|
-
export type Fn<T = any> = (...args: any[]) => T
|
|
12
|
-
export type Obj = Record<string, unknown>
|
|
13
|
-
export type Arr = unknown[]
|
|
14
|
-
export type Versioner = Record<number, (this: any, state: any) => void>
|
|
15
|
-
export type ModelClass = new (...args: any[]) => any
|
|
16
|
-
export type Model = InstanceType<ModelClass>
|
|
17
|
-
export type Initial<T extends Obj | Model> = T | (() => T)
|
|
18
|
-
export type Attrs = Record<string, string | number>
|
|
19
|
-
export type Mode = 'development' | 'production'
|
|
20
|
-
export type Sources = { [path: string]: string }
|
|
21
|
-
export type Assets = { [path: string]: Blob }
|
|
22
|
-
export type FnArgsOrArr<T> = T extends Fn ? Parameters<T> : Arr
|
|
23
|
-
export type FnResultOrValue<T> = T extends Fn ? ReturnType<T> : T
|
|
24
|
-
|
|
25
|
-
export type ReqInit = {
|
|
26
|
-
body: RequestInit['body']
|
|
27
|
-
cache: RequestInit['cache']
|
|
28
|
-
credentials: RequestInit['credentials']
|
|
29
|
-
headers: RequestInit['headers']
|
|
30
|
-
integrity: RequestInit['integrity']
|
|
31
|
-
keepalive: RequestInit['keepalive']
|
|
32
|
-
method: RequestInit['method']
|
|
33
|
-
mode: RequestInit['mode']
|
|
34
|
-
priority: RequestInit['priority']
|
|
35
|
-
redirect: RequestInit['redirect']
|
|
36
|
-
referrer: RequestInit['referrer']
|
|
37
|
-
referrerPolicy: RequestInit['referrerPolicy']
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export type Res = {
|
|
41
|
-
ok: Response['ok']
|
|
42
|
-
url: Response['url']
|
|
43
|
-
type: Response['type']
|
|
44
|
-
status: Response['status']
|
|
45
|
-
statusText: Response['statusText']
|
|
46
|
-
redirected: Response['redirected']
|
|
47
|
-
text: Response['text']
|
|
48
|
-
json: Response['json']
|
|
49
|
-
blob: Response['blob']
|
|
50
|
-
headers: {
|
|
51
|
-
get: Response['headers']['get']
|
|
52
|
-
has: Response['headers']['has']
|
|
53
|
-
/** Get list of all header keys. */
|
|
54
|
-
keys: () => string[]
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
export type Storage = {
|
|
59
|
-
/** Get value from the storage. */
|
|
60
|
-
get<T = unknown>(key: string): Promise<T | null>
|
|
61
|
-
/** Set value in the storage. */
|
|
62
|
-
set(key: string, value: unknown): Promise<void>
|
|
63
|
-
/** Delete value from the storage. */
|
|
64
|
-
delete(key: string): Promise<void>
|
|
65
|
-
/** Get all keys from the storage. */
|
|
66
|
-
keys(): Promise<string[]>
|
|
67
|
-
/** Clear the storage. Deletes all keys and storage itself. */
|
|
68
|
-
clear(): Promise<void>
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
export type Bundle = {
|
|
72
|
-
mode: Mode
|
|
73
|
-
spec: Spec
|
|
74
|
-
sources: Sources
|
|
75
|
-
assets: Assets
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export interface Epos {
|
|
79
|
-
// General
|
|
80
|
-
fetch: (url: string | URL, init?: ReqInit) => Promise<Res>
|
|
81
|
-
browser: Chrome
|
|
82
|
-
render(node: react.ReactNode, container?: reactDomClient.Container): void
|
|
83
|
-
component<T>(Component: react.FC<T>): typeof Component
|
|
84
|
-
element: HTMLDivElement
|
|
85
|
-
|
|
86
|
-
// Bus
|
|
87
|
-
bus: {
|
|
88
|
-
/** Listen for an event. */
|
|
89
|
-
on<T extends Fn>(name: string, callback: T, thisArg?: unknown): void
|
|
90
|
-
/** Remove event listener. */
|
|
91
|
-
off<T extends Fn>(name: string, callback?: T): void
|
|
92
|
-
/** Listen for an event once. */
|
|
93
|
-
once<T extends Fn>(name: string, callback: T, thisArg?: unknown): void
|
|
94
|
-
/** Send an event to all remote listeners (local listeners are ignored). */
|
|
95
|
-
send<T = unknown>(name: string, ...args: FnArgsOrArr<T>): Promise<FnResultOrValue<T> | null>
|
|
96
|
-
/** Emit event locally (calls local listeners only). */
|
|
97
|
-
emit<T = unknown>(name: string, ...args: FnArgsOrArr<T>): Promise<FnResultOrValue<T> | null>
|
|
98
|
-
setSignal(name: string, value?: unknown): void
|
|
99
|
-
waitSignal<T = unknown>(name: string, timeout?: number): Promise<T | null>
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
// State
|
|
103
|
-
state: {
|
|
104
|
-
/** Connect state. */
|
|
105
|
-
connect: {
|
|
106
|
-
<T extends Obj | Model = Obj>(initial?: Initial<T>, versioner?: Versioner): Promise<T>
|
|
107
|
-
<T extends Obj | Model = Obj>(name?: string, initial?: Initial<T>, versioner?: Versioner): Promise<T>
|
|
108
|
-
}
|
|
109
|
-
/** Disconnect state. */
|
|
110
|
-
disconnect(name?: string): void
|
|
111
|
-
/** Run any state changes in a batch. */
|
|
112
|
-
transaction: (fn: () => void) => void
|
|
113
|
-
/** Create local state (no sync). */
|
|
114
|
-
local<T extends Obj = {}>(state?: T): T
|
|
115
|
-
/** Get the list of all state names. */
|
|
116
|
-
list(filter?: { connected?: boolean }): Promise<{ name: string | null }[]>
|
|
117
|
-
/** Remove state and all its data. */
|
|
118
|
-
remove(name?: string): Promise<void>
|
|
119
|
-
/** Register models to be used by all states. */
|
|
120
|
-
register(models: Record<string, ModelClass>): void
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
// Storage
|
|
124
|
-
storage: {
|
|
125
|
-
/** Get value from the storage. */
|
|
126
|
-
get: {
|
|
127
|
-
<T = unknown>(key: string): Promise<T | null>
|
|
128
|
-
<T = unknown>(name: string, key: string): Promise<T | null>
|
|
129
|
-
}
|
|
130
|
-
/** Set value in the storage. */
|
|
131
|
-
set: {
|
|
132
|
-
<T = unknown>(key: string, value: T): Promise<void>
|
|
133
|
-
<T = unknown>(name: string, key: string, value: T): Promise<void>
|
|
134
|
-
}
|
|
135
|
-
/** Delete value from the storage. */
|
|
136
|
-
delete: {
|
|
137
|
-
(key: string): Promise<void>
|
|
138
|
-
(name: string, key: string): Promise<void>
|
|
139
|
-
}
|
|
140
|
-
/** Get all keys from the storage. */
|
|
141
|
-
keys(name?: string): Promise<string[]>
|
|
142
|
-
/** Clear storage. Removes all keys and storage itself. */
|
|
143
|
-
clear(name?: string): Promise<void>
|
|
144
|
-
/** Get storage API for a specific storage. */
|
|
145
|
-
use(name?: string): Storage
|
|
146
|
-
/** Get this list of all storages. */
|
|
147
|
-
list(): Promise<{ name: string | null }[]>
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
// Frame
|
|
151
|
-
frame: {
|
|
152
|
-
/** Open background frame. */
|
|
153
|
-
open: {
|
|
154
|
-
(url: string): Promise<void>
|
|
155
|
-
(url: string, attrs: Attrs): Promise<void>
|
|
156
|
-
(name: string, url: string): Promise<void>
|
|
157
|
-
(name: string, url: string, attrs: Attrs): Promise<void>
|
|
158
|
-
}
|
|
159
|
-
/** Close background frame. */
|
|
160
|
-
close(name?: string): Promise<void>
|
|
161
|
-
/** Check if background frame with the given name exists. */
|
|
162
|
-
exists(name?: string): Promise<boolean>
|
|
163
|
-
/** Get list of all open background frames. */
|
|
164
|
-
list(): Promise<{ name: string | null; url: string }[]>
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
// Asset
|
|
168
|
-
asset: {
|
|
169
|
-
/** Load specified asset to memory. Load all assets if no path is provided. */
|
|
170
|
-
load: {
|
|
171
|
-
/** Load all assets. */
|
|
172
|
-
(): Promise<void>
|
|
173
|
-
/** Load asset by path. */
|
|
174
|
-
(path: string): Promise<void>
|
|
175
|
-
}
|
|
176
|
-
/** Unload either all assets from the memory or a specific asset by its path. */
|
|
177
|
-
unload: {
|
|
178
|
-
/** Unload all assets. */
|
|
179
|
-
(): void
|
|
180
|
-
/** Unload asset by path. */
|
|
181
|
-
(path: string): void
|
|
182
|
-
}
|
|
183
|
-
/** Get asset URL. The asset must be loaded first via `epos.asset.load`. */
|
|
184
|
-
url(path: string): string
|
|
185
|
-
/** Get asset as Blob. */
|
|
186
|
-
get(path: string): Promise<Blob | null>
|
|
187
|
-
/** Get list of all available assets. */
|
|
188
|
-
list(filter?: { loaded?: boolean }): { path: string; loaded: boolean }[]
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
// Env
|
|
192
|
-
env: {
|
|
193
|
-
mode: Mode
|
|
194
|
-
tabId: number
|
|
195
|
-
project: string
|
|
196
|
-
isPopup: boolean
|
|
197
|
-
isSidePanel: boolean
|
|
198
|
-
isBackground: boolean
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
// Libs
|
|
202
|
-
libs: {
|
|
203
|
-
mobx: typeof mobx
|
|
204
|
-
mobxReactLite: typeof mobxReactLite
|
|
205
|
-
react: typeof react
|
|
206
|
-
reactDom: typeof reactDom
|
|
207
|
-
reactDomClient: typeof reactDomClient
|
|
208
|
-
reactJsxRuntime: typeof reactJsxRuntime
|
|
209
|
-
yjs: typeof yjs
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
// Internal symbols
|
|
213
|
-
symbols: {
|
|
214
|
-
readonly stateParent: symbol
|
|
215
|
-
readonly stateModelInit: symbol
|
|
216
|
-
readonly stateModelDispose: symbol
|
|
217
|
-
readonly stateModelStrict: symbol
|
|
218
|
-
readonly stateModelVersioner: symbol
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
// Installer
|
|
222
|
-
installer: {
|
|
223
|
-
install: {
|
|
224
|
-
(url: string, mode?: Mode): Promise<void>
|
|
225
|
-
(bundle: Bundle): Promise<void>
|
|
226
|
-
}
|
|
227
|
-
remove(name: string): Promise<void>
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
// Engine
|
|
231
|
-
engine: any
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
declare global {
|
|
235
|
-
var epos: Epos
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
const _epos = epos
|
|
239
|
-
export { _epos as epos }
|
|
240
|
-
export default _epos
|
package/src/libs/libs-mobx.js
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
export const {
|
|
2
|
-
_allowStateChanges,
|
|
3
|
-
_allowStateChangesInsideComputed,
|
|
4
|
-
_allowStateReadsEnd,
|
|
5
|
-
_allowStateReadsStart,
|
|
6
|
-
_autoAction,
|
|
7
|
-
_endAction,
|
|
8
|
-
_getAdministration,
|
|
9
|
-
_getGlobalState,
|
|
10
|
-
_interceptReads,
|
|
11
|
-
_isComputingDerivation,
|
|
12
|
-
_resetGlobalState,
|
|
13
|
-
_startAction,
|
|
14
|
-
$mobx,
|
|
15
|
-
action,
|
|
16
|
-
autorun,
|
|
17
|
-
comparer,
|
|
18
|
-
computed,
|
|
19
|
-
configure,
|
|
20
|
-
createAtom,
|
|
21
|
-
defineProperty,
|
|
22
|
-
entries,
|
|
23
|
-
extendObservable,
|
|
24
|
-
FlowCancellationError,
|
|
25
|
-
flowResult,
|
|
26
|
-
get,
|
|
27
|
-
getAtom,
|
|
28
|
-
getDebugName,
|
|
29
|
-
getDependencyTree,
|
|
30
|
-
getObserverTree,
|
|
31
|
-
has,
|
|
32
|
-
intercept,
|
|
33
|
-
isAction,
|
|
34
|
-
isBoxedObservable,
|
|
35
|
-
isComputed,
|
|
36
|
-
isComputedProp,
|
|
37
|
-
isFlow,
|
|
38
|
-
isFlowCancellationError,
|
|
39
|
-
isObservable,
|
|
40
|
-
isObservableArray,
|
|
41
|
-
isObservableMap,
|
|
42
|
-
isObservableObject,
|
|
43
|
-
isObservableProp,
|
|
44
|
-
isObservableSet,
|
|
45
|
-
keys,
|
|
46
|
-
makeAutoObservable,
|
|
47
|
-
makeObservable,
|
|
48
|
-
observable,
|
|
49
|
-
ObservableMap,
|
|
50
|
-
ObservableSet,
|
|
51
|
-
observe,
|
|
52
|
-
onBecomeObserved,
|
|
53
|
-
onBecomeUnobserved,
|
|
54
|
-
onReactionError,
|
|
55
|
-
override,
|
|
56
|
-
ownKeys,
|
|
57
|
-
reaction,
|
|
58
|
-
Reaction,
|
|
59
|
-
remove,
|
|
60
|
-
runInAction,
|
|
61
|
-
set,
|
|
62
|
-
spy,
|
|
63
|
-
toJS,
|
|
64
|
-
trace,
|
|
65
|
-
transaction,
|
|
66
|
-
untracked,
|
|
67
|
-
values,
|
|
68
|
-
when,
|
|
69
|
-
} = epos.libs.mobx
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export default epos.libs.reactDom
|
|
2
|
-
export const {
|
|
3
|
-
createPortal,
|
|
4
|
-
flushSync,
|
|
5
|
-
preconnect,
|
|
6
|
-
prefetchDNS,
|
|
7
|
-
preinit,
|
|
8
|
-
preinitModule,
|
|
9
|
-
preload,
|
|
10
|
-
preloadModule,
|
|
11
|
-
requestFormReset,
|
|
12
|
-
unstable_batchedUpdates,
|
|
13
|
-
useFormState,
|
|
14
|
-
useFormStatus,
|
|
15
|
-
version,
|
|
16
|
-
} = epos.libs.reactDom
|
package/src/libs/libs-react.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
export default epos.libs.react
|
|
2
|
-
export const {
|
|
3
|
-
act,
|
|
4
|
-
cache,
|
|
5
|
-
Children,
|
|
6
|
-
cloneElement,
|
|
7
|
-
Component,
|
|
8
|
-
createContext,
|
|
9
|
-
createElement,
|
|
10
|
-
createRef,
|
|
11
|
-
forwardRef,
|
|
12
|
-
Fragment,
|
|
13
|
-
isValidElement,
|
|
14
|
-
lazy,
|
|
15
|
-
memo,
|
|
16
|
-
Profiler,
|
|
17
|
-
PureComponent,
|
|
18
|
-
startTransition,
|
|
19
|
-
StrictMode,
|
|
20
|
-
Suspense,
|
|
21
|
-
use,
|
|
22
|
-
useActionState,
|
|
23
|
-
useCallback,
|
|
24
|
-
useContext,
|
|
25
|
-
useDebugValue,
|
|
26
|
-
useDeferredValue,
|
|
27
|
-
useEffect,
|
|
28
|
-
useId,
|
|
29
|
-
useImperativeHandle,
|
|
30
|
-
useInsertionEffect,
|
|
31
|
-
useLayoutEffect,
|
|
32
|
-
useMemo,
|
|
33
|
-
useOptimistic,
|
|
34
|
-
useReducer,
|
|
35
|
-
useRef,
|
|
36
|
-
useState,
|
|
37
|
-
useSyncExternalStore,
|
|
38
|
-
useTransition,
|
|
39
|
-
version,
|
|
40
|
-
} = epos.libs.react
|