epos 1.57.0 → 1.60.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.
Files changed (42) hide show
  1. package/dist/{epos-browser.d.ts → browser.d.ts} +48 -50
  2. package/dist/browser.js +2 -0
  3. package/dist/browser.js.map +1 -0
  4. package/dist/epos.d.ts +47 -38
  5. package/dist/epos.js.map +1 -1
  6. package/dist/{epos-vite-mobx-react-lite.js → libs/mobx-react-lite.js} +1 -1
  7. package/dist/libs/mobx-react-lite.js.map +1 -0
  8. package/dist/{epos-vite-mobx.js → libs/mobx.js} +1 -1
  9. package/dist/libs/mobx.js.map +1 -0
  10. package/dist/{epos-vite-react-dom-client.js → libs/react-dom-client.js} +1 -1
  11. package/dist/libs/react-dom-client.js.map +1 -0
  12. package/dist/{epos-vite-react-dom.js → libs/react-dom.js} +1 -1
  13. package/dist/libs/react-dom.js.map +1 -0
  14. package/dist/{epos-vite-react-jsx-runtime.js → libs/react-jsx-runtime.js} +1 -1
  15. package/dist/libs/react-jsx-runtime.js.map +1 -0
  16. package/dist/{epos-vite-react.d.ts → libs/react.d.ts} +2 -2
  17. package/dist/{epos-vite-react.js → libs/react.js} +1 -1
  18. package/dist/libs/react.js.map +1 -0
  19. package/dist/spec.d.ts +101 -0
  20. package/dist/{epos-spec.js → spec.js} +133 -90
  21. package/dist/spec.js.map +1 -0
  22. package/dist/vite.js +20 -0
  23. package/dist/vite.js.map +1 -0
  24. package/package.json +10 -10
  25. package/dist/epos-browser.js +0 -2
  26. package/dist/epos-browser.js.map +0 -1
  27. package/dist/epos-spec.d.ts +0 -57
  28. package/dist/epos-spec.js.map +0 -1
  29. package/dist/epos-vite-mobx-react-lite.js.map +0 -1
  30. package/dist/epos-vite-mobx.js.map +0 -1
  31. package/dist/epos-vite-react-dom-client.js.map +0 -1
  32. package/dist/epos-vite-react-dom.js.map +0 -1
  33. package/dist/epos-vite-react-jsx-runtime.js.map +0 -1
  34. package/dist/epos-vite-react.js.map +0 -1
  35. package/dist/epos-vite.js +0 -20
  36. package/dist/epos-vite.js.map +0 -1
  37. /package/dist/{epos-vite-mobx-react-lite.d.ts → libs/mobx-react-lite.d.ts} +0 -0
  38. /package/dist/{epos-vite-mobx.d.ts → libs/mobx.d.ts} +0 -0
  39. /package/dist/{epos-vite-react-dom-client.d.ts → libs/react-dom-client.d.ts} +0 -0
  40. /package/dist/{epos-vite-react-dom.d.ts → libs/react-dom.d.ts} +0 -0
  41. /package/dist/{epos-vite-react-jsx-runtime.d.ts → libs/react-jsx-runtime.d.ts} +0 -0
  42. /package/dist/{epos-vite.d.ts → vite.d.ts} +0 -0
@@ -1,54 +1,40 @@
1
1
  import 'chrome';
2
2
  export type Browser = {
3
3
  action: Action;
4
- extension: Extension;
5
- i18n: I18n;
6
- management: Management;
7
- permissions: Permissions;
8
- runtime: Runtime;
9
- windows: Windows;
10
4
  alarms: Alarms;
11
- declarativeNetRequest: DeclarativeNetRequest;
12
- tabs: Tabs;
13
- webNavigation: WebNavigation;
14
5
  browsingData: BrowsingData;
15
6
  contextMenus: ContextMenus;
16
7
  cookies: Cookies;
8
+ declarativeNetRequest: DeclarativeNetRequest;
17
9
  downloads: Downloads;
10
+ extension: Extension;
11
+ i18n: I18n;
12
+ management: Management;
18
13
  notifications: Notifications;
14
+ permissions: Permissions;
15
+ runtime: Runtime;
19
16
  sidePanel: SidePanel;
20
17
  storage: Storage;
18
+ tabs: Tabs;
19
+ webNavigation: WebNavigation;
20
+ windows: Windows;
21
21
  };
22
- export type Alarms = typeof chrome.alarms;
23
- export type Cookies = typeof chrome.cookies;
24
- export type WebNavigation = typeof chrome.webNavigation;
25
- export type Windows = typeof chrome.windows;
26
22
  export type Action = Omit<typeof chrome.action, 'openPopup'>;
27
- export type Extension = Omit<typeof chrome.extension, 'getBackgroundPage' | 'getExtensionTabs' | 'getURL' | 'getViews' | 'lastError' | 'onRequest' | 'onRequestExternal' | 'sendRequest'>;
28
- export type I18n = Omit<typeof chrome.i18n, 'getMessage'>;
29
- export type Management = Omit<typeof chrome.management, 'createAppShortcut' | 'generateAppForLink' | 'get' | 'getAll' | 'getPermissionWarningsById' | 'installReplacementWebApp' | 'launchApp' | 'onDisabled' | 'onEnabled' | 'onInstalled' | 'onUninstalled' | 'setEnabled' | 'setLaunchType' | 'uninstall'>;
30
- export type Permissions = Omit<typeof chrome.permissions, 'contains' | 'getAll' | 'remove' | 'request' | 'addHostAccessRequest' | 'onAdded' | 'onRemoved' | 'removeHostAccessRequest'> & {
31
- contains: (query: PermissionQuery) => Promise<boolean>;
32
- getAll: () => Promise<{
33
- origins: string[];
34
- permissions: Permission[];
35
- }>;
36
- remove: (query: PermissionQuery) => Promise<boolean>;
37
- request: (query: PermissionQuery) => Promise<boolean>;
38
- };
39
- export type PermissionQuery = {
40
- origins?: string[];
41
- permissions?: chrome.runtime.ManifestPermission[];
23
+ export type Alarms = typeof chrome.alarms;
24
+ export type BrowsingData = Omit<typeof chrome.browsingData, 'removePasswords' | 'removePluginData'>;
25
+ export type ContextMenus = Omit<typeof chrome.contextMenus, 'create'> & {
26
+ /**
27
+ * Creates a new context menu item.
28
+ * @return The ID of the newly created item.
29
+ */
30
+ create: (createProperties: chrome.contextMenus.CreateProperties) => Promise<string>;
42
31
  };
43
- export type Permission = RequiredPermission | OptionalPermission;
44
- export type RequiredPermission = 'alarms' | 'declarativeNetRequest' | 'offscreen' | 'scripting' | 'tabs' | 'unlimitedStorage' | 'webNavigation';
45
- export type OptionalPermission = 'background' | 'browsingData' | 'contextMenus' | 'cookies' | 'downloads' | 'notifications' | 'sidePanel' | 'storage';
46
- export type Runtime = Omit<typeof chrome.runtime, 'getBackgroundPage' | 'onBrowserUpdateAvailable' | 'connect' | 'connectNative' | 'getPackageDirectoryEntry' | 'lastError' | 'onConnect' | 'onConnectExternal' | 'onConnectNative' | 'onInstalled' | 'OnInstalledReason' | 'onMessage' | 'onMessageExternal' | 'onRestartRequired' | 'OnRestartRequiredReason' | 'onStartup' | 'onSuspend' | 'onSuspendCanceled' | 'onUserScriptConnect' | 'onUserScriptMessage' | 'openOptionsPage' | 'restart' | 'restartAfterDelay' | 'sendMessage' | 'sendNativeMessage'>;
32
+ export type Cookies = typeof chrome.cookies;
47
33
  export type DeclarativeNetRequest = Omit<typeof chrome.declarativeNetRequest, 'updateDynamicRules' | 'updateSessionRules' | 'getAvailableStaticRuleCount' | 'getDisabledRuleIds' | 'getEnabledRulesets' | 'getMatchedRules' | 'onRuleMatchedDebug' | 'setExtensionActionOptions' | 'testMatchOutcome' | 'updateEnabledRulesets' | 'updateStaticRules'> & {
48
34
  /**
49
35
  * Modifies the current set of dynamic rules for the extension. The rules with IDs listed in `options.removeRuleIds` are first removed, and then the rules given in `options.addRules` are added. Notes:
50
36
  *
51
- * - In `epos`, `addRules` cannot have IDs, instead IDs will be assigned automatically and returned in the result.
37
+ * - In `epos`, `addRules` does not accept IDs, instead IDs will be assigned automatically and returned in the result.
52
38
  * - This update happens as a single atomic operation: either all specified rules are added and removed, or an error is returned.
53
39
  * - These rules are persisted across browser sessions and across extension updates.
54
40
  * - Static rules specified as part of the extension package can not be removed using this function.
@@ -64,7 +50,7 @@ export type DeclarativeNetRequest = Omit<typeof chrome.declarativeNetRequest, 'u
64
50
  *
65
51
  * Can return its result via Promise in Manifest V3 or later since Chrome 91.
66
52
  *
67
- * - In `epos`, `addRules` cannot have IDs, instead IDs will be assigned automatically and returned in the result.
53
+ * - In `epos`, `addRules` does not accept IDs, instead IDs will be assigned automatically and returned in the result.
68
54
  * - This update happens as a single atomic operation: either all specified rules are added and removed, or an error is returned.
69
55
  * - These rules are persisted across browser sessions and across extension updates.
70
56
  * - Static rules specified as part of the extension package can not be removed using this function.
@@ -76,23 +62,21 @@ export type DeclarativeNetRequest = Omit<typeof chrome.declarativeNetRequest, 'u
76
62
  */
77
63
  updateSessionRules: (options: UpdateRuleOptions) => Promise<number[]>;
78
64
  };
79
- export type UpdateRuleOptions = {
80
- /** Rules to add. */
81
- addRules?: Omit<chrome.declarativeNetRequest.Rule, 'id'>[] | undefined;
82
- /** IDs of the rules to remove. Any invalid IDs will be ignored. */
83
- removeRuleIds?: number[] | undefined;
84
- };
85
- export type Tabs = Omit<typeof chrome.tabs, 'executeScript' | 'getAllInWindow' | 'getSelected' | 'insertCSS' | 'onActiveChanged' | 'onHighlightChanged' | 'onSelectionChanged' | 'sendRequest' | 'connect' | 'sendMessage' | 'getCurrent'>;
86
- export type BrowsingData = Omit<typeof chrome.browsingData, 'removePasswords' | 'removePluginData'>;
87
- export type ContextMenus = Omit<typeof chrome.contextMenus, 'create'> & {
88
- /**
89
- * Creates a new context menu item.
90
- * @return The ID of the newly created item.
91
- */
92
- create: (createProperties: chrome.contextMenus.CreateProperties) => Promise<string>;
93
- };
94
- export type Downloads = Omit<typeof chrome.downloads, 'setShelfEnabled' | 'open' | 'setUiOptions'>;
65
+ export type Downloads = Omit<typeof chrome.downloads, 'setShelfEnabled' | 'open'>;
66
+ export type Extension = Omit<typeof chrome.extension, 'getBackgroundPage' | 'getExtensionTabs' | 'getURL' | 'getViews' | 'lastError' | 'onRequest' | 'onRequestExternal' | 'sendRequest'>;
67
+ export type I18n = Omit<typeof chrome.i18n, 'getMessage'>;
68
+ export type Management = Omit<typeof chrome.management, 'createAppShortcut' | 'generateAppForLink' | 'get' | 'getAll' | 'getPermissionWarningsById' | 'installReplacementWebApp' | 'launchApp' | 'onDisabled' | 'onEnabled' | 'onInstalled' | 'onUninstalled' | 'setEnabled' | 'setLaunchType' | 'uninstall'>;
95
69
  export type Notifications = Omit<typeof chrome.notifications, 'onShowSettings' | 'getPermissionLevel' | 'onPermissionLevelChanged'>;
70
+ export type Permissions = Omit<typeof chrome.permissions, 'contains' | 'getAll' | 'remove' | 'request' | 'addHostAccessRequest' | 'onAdded' | 'onRemoved' | 'removeHostAccessRequest'> & {
71
+ contains: (query: PermissionQuery) => Promise<boolean>;
72
+ getAll: () => Promise<{
73
+ origins: string[];
74
+ permissions: Permission[];
75
+ }>;
76
+ remove: (query: PermissionQuery) => Promise<boolean>;
77
+ request: (query: PermissionQuery) => Promise<boolean>;
78
+ };
79
+ export type Runtime = Omit<typeof chrome.runtime, 'getBackgroundPage' | 'onBrowserUpdateAvailable' | 'connect' | 'connectNative' | 'getPackageDirectoryEntry' | 'lastError' | 'onConnect' | 'onConnectExternal' | 'onConnectNative' | 'onInstalled' | 'OnInstalledReason' | 'onMessage' | 'onMessageExternal' | 'onRestartRequired' | 'OnRestartRequiredReason' | 'onStartup' | 'onSuspend' | 'onSuspendCanceled' | 'onUserScriptConnect' | 'onUserScriptMessage' | 'openOptionsPage' | 'restart' | 'restartAfterDelay' | 'sendMessage' | 'sendNativeMessage'>;
96
80
  export type SidePanel = Omit<typeof chrome.sidePanel, 'close' | 'open' | 'setOptions' | 'setPanelBehavior'> & {
97
81
  onClosed: chrome.events.Event<() => void>;
98
82
  };
@@ -101,3 +85,17 @@ export type Storage = Omit<typeof chrome.storage, 'local' | 'session' | 'sync' |
101
85
  session: Omit<typeof chrome.storage.session, 'setAccessLevel'>;
102
86
  sync: Omit<typeof chrome.storage.sync, 'MAX_SUSTAINED_WRITE_OPERATIONS_PER_MINUTE' | 'setAccessLevel'>;
103
87
  };
88
+ export type Tabs = Omit<typeof chrome.tabs, 'executeScript' | 'getAllInWindow' | 'getSelected' | 'insertCSS' | 'onActiveChanged' | 'onHighlightChanged' | 'onSelectionChanged' | 'sendRequest' | 'connect' | 'sendMessage' | 'getCurrent'>;
89
+ export type WebNavigation = typeof chrome.webNavigation;
90
+ export type Windows = typeof chrome.windows;
91
+ export type Permission = 'alarms' | 'background' | 'browsingData' | 'contextMenus' | 'cookies' | 'declarativeNetRequest' | 'downloads.ui' | 'downloads' | 'notifications' | 'offscreen' | 'scripting' | 'sidePanel' | 'storage' | 'tabs' | 'unlimitedStorage' | 'webNavigation';
92
+ export type PermissionQuery = {
93
+ origins?: string[];
94
+ permissions?: Permission[];
95
+ };
96
+ export type UpdateRuleOptions = {
97
+ /** Rules to add. */
98
+ addRules?: Omit<chrome.declarativeNetRequest.Rule, 'id'>[] | undefined;
99
+ /** IDs of the rules to remove. Any invalid IDs will be ignored. */
100
+ removeRuleIds?: number[] | undefined;
101
+ };
@@ -0,0 +1,2 @@
1
+ import 'chrome';
2
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAA"}
package/dist/epos.d.ts CHANGED
@@ -6,8 +6,8 @@ import type * as reactDom from 'react-dom';
6
6
  import type * as reactDomClient from 'react-dom/client';
7
7
  import type * as reactJsxRuntime from 'react/jsx-runtime';
8
8
  import type * as yjs from 'yjs';
9
- import type { Browser } from './epos-browser.js';
10
- import type { Spec } from './epos-spec.js';
9
+ import type { Browser } from './browser.js';
10
+ import type { Spec } from './spec.js';
11
11
  export interface Epos {
12
12
  /** Like regular `fetch`, but bypasses CORS. Does not support streams. */
13
13
  fetch: EposFetch;
@@ -27,10 +27,10 @@ export interface Epos {
27
27
  state: EposState;
28
28
  /** Storage management. */
29
29
  storage: EposStorage;
30
- /** Background frames management. */
31
- frames: EposFrames;
32
30
  /** Asset management. */
33
31
  assets: EposAssets;
32
+ /** Background frames management. */
33
+ frames: EposFrames;
34
34
  /** Project management. */
35
35
  projects: EposProjects;
36
36
  /** Third party libraries used by Epos. */
@@ -54,12 +54,12 @@ export interface EposEnv {
54
54
  export interface EposDom {
55
55
  /** Project's root element. */
56
56
  root: HTMLDivElement;
57
- /** Pre-created element for React rendering. */
58
- reactRoot: HTMLDivElement;
57
+ /** Pre-created element used as default container for React. */
58
+ view: HTMLDivElement;
59
59
  /** Pre-created shadow DOM. */
60
60
  shadowRoot: ShadowRoot;
61
- /** Pre-created element inside shadow DOM for React rendering. */
62
- shadowReactRoot: HTMLDivElement;
61
+ /** Pre-created element inside shadow DOM used as default container for React. */
62
+ shadowView: HTMLDivElement;
63
63
  }
64
64
  export interface EposBus {
65
65
  /** Register an event listener. */
@@ -69,19 +69,19 @@ export interface EposBus {
69
69
  /** Register a one-time event listener. */
70
70
  once<T extends Fn>(name: string, callback: T, thisArg?: unknown): void;
71
71
  /** Send an event to all remote listeners. */
72
- send<T>(name: string, ...args: FnArgsOrArr<T>): Promise<FnResultOrValue<T> | null>;
72
+ send<T>(name: string, ...args: FnArgsOrArr<T>): Promise<FnResultOrValue<T> | undefined>;
73
73
  /** Call local listeners for an event. */
74
- emit<T>(name: string, ...args: FnArgsOrArr<T>): Promise<FnResultOrValue<T> | null>;
74
+ emit<T>(name: string, ...args: FnArgsOrArr<T>): Promise<FnResultOrValue<T> | undefined>;
75
75
  /** Set a signal with an optional value. */
76
76
  setSignal(name: string, value?: unknown): void;
77
77
  /** Wait for a signal to be set. */
78
- waitSignal<T>(name: string, timeout?: number): Promise<T | null>;
79
- /** Register an RPC API. */
80
- register(name: string, api: RpcTarget): void;
81
- /** Unregister an RPC API. */
78
+ waitSignal<T>(name: string, timeout?: number): Promise<T | undefined>;
79
+ /** Register as a service. */
80
+ register(name: string, api: Obj<any>): void;
81
+ /** Unregister a service. */
82
82
  unregister(name: string): void;
83
- /** Use an RPC API. */
84
- use<T extends RpcTarget>(name: string): Rpc<T>;
83
+ /** Use a service. */
84
+ use<T extends Obj<any>>(name: string): BusService<T>;
85
85
  /** Create a namespaced bus instance. */
86
86
  for(namespace: string): Omit<EposBus, 'for'> & {
87
87
  /** Dispose namespaced bus instance. Removes all its listeners and ignores any further method calls. */
@@ -98,8 +98,10 @@ export interface EposState {
98
98
  disconnect(name?: string): void;
99
99
  /** Run state changes in a batch. */
100
100
  transaction: (fn: () => void) => void;
101
+ /** Create a reactive effect that runs when observed state changes. */
102
+ reaction: typeof mobx.reaction;
101
103
  /** Create local state (no sync). */
102
- create<T>(initial?: Initial<T>): T;
104
+ local<T extends {}>(initial?: Initial<T>): T;
103
105
  /** Get list of all state names. */
104
106
  list(filter?: {
105
107
  connected?: boolean;
@@ -127,6 +129,11 @@ export interface EposStorage {
127
129
  <T>(key: string, value: T): Promise<void>;
128
130
  <T>(name: string, key: string, value: T): Promise<void>;
129
131
  };
132
+ /** Check if key exists in storage. */
133
+ has: {
134
+ (key: string): Promise<boolean>;
135
+ (name: string, key: string): Promise<boolean>;
136
+ };
130
137
  /** Delete key from storage. */
131
138
  delete: {
132
139
  (key: string): Promise<void>;
@@ -134,40 +141,28 @@ export interface EposStorage {
134
141
  };
135
142
  /** Get all storage keys. */
136
143
  keys(name?: string): Promise<string[]>;
137
- /** Get list of all storages. */
144
+ /** List existing storages. */
138
145
  list(): Promise<{
139
146
  name: string | null;
140
- keys: string[];
141
147
  }[]>;
142
148
  /** Remove storage and all its data. */
143
- remove(name?: string): Promise<void>;
149
+ clear(name?: string): Promise<void>;
144
150
  /** Create API for the specific storage. */
145
151
  for(name?: string): {
146
152
  /** Get value from storage. */
147
153
  get<T>(key: string): Promise<T | null>;
148
154
  /** Set value in storage. */
149
155
  set(key: string, value: unknown): Promise<void>;
156
+ /** Check if key exists in storage. */
157
+ has(key: string): Promise<boolean>;
150
158
  /** Delete key from storage. */
151
159
  delete(key: string): Promise<void>;
152
160
  /** Get all storage keys. */
153
161
  keys(): Promise<string[]>;
154
162
  /** Remove storage and all its data. */
155
- remove(): Promise<void>;
163
+ clear(): Promise<void>;
156
164
  };
157
165
  }
158
- export interface EposFrames {
159
- /** Open background frame. */
160
- create(url: string, attrs?: Attrs): Promise<string>;
161
- /** Remove background frame. */
162
- remove(id?: string): Promise<void>;
163
- /** Check if background frame with the given id exists. */
164
- has(id?: string): Promise<boolean>;
165
- /** Get list of all open background frames. */
166
- list(): Promise<{
167
- id: string;
168
- url: string;
169
- }[]>;
170
- }
171
166
  export interface EposAssets {
172
167
  /** Get asset URL.*/
173
168
  url(path: string): string;
@@ -195,6 +190,20 @@ export interface EposAssets {
195
190
  (path: string): void;
196
191
  };
197
192
  }
193
+ export interface EposFrames {
194
+ /** Open background frame. */
195
+ create(url: string, attrs?: Attrs): Promise<string>;
196
+ /** Remove background frame. */
197
+ remove(id?: string): Promise<void>;
198
+ /** Check if background frame with the given id exists. */
199
+ has(id?: string): Promise<boolean>;
200
+ /** Get list of all open background frames. */
201
+ list(): Promise<{
202
+ id: string;
203
+ name: string;
204
+ url: string;
205
+ }[]>;
206
+ }
198
207
  export interface EposProjects {
199
208
  /** Check if project with the given id exists. */
200
209
  has(id: string): Promise<boolean>;
@@ -234,7 +243,6 @@ export type Root<T> = Initial<T> & {
234
243
  export type Initial<T> = T extends Obj ? T : Instance<T>;
235
244
  export type Instance<T> = T extends object ? Exclude<T, Obj | Arr | Fn> : never;
236
245
  export type Versioner<T> = Record<number, (this: Root<T>, state: Root<T>) => void>;
237
- export type RpcTarget = Obj<any>;
238
246
  export type FnArgsOrArr<T> = T extends Fn ? Parameters<T> : Arr;
239
247
  export type FnResultOrValue<T> = T extends Fn ? ReturnType<T> : T;
240
248
  export type Sources = {
@@ -259,10 +267,11 @@ export type ProjectQuery = {
259
267
  };
260
268
  export type ProjectBase = {
261
269
  id: string;
262
- debug: boolean;
263
- enabled: boolean;
264
270
  spec: Spec;
265
271
  manifest: Manifest;
272
+ enabled: boolean;
273
+ debug: boolean;
274
+ pageUrl: string;
266
275
  };
267
276
  export type ProjectFull = ProjectBase & {
268
277
  sources: Sources;
@@ -283,7 +292,7 @@ export type Project<T extends ProjectQuery = {}> = ProjectBase & (T extends {
283
292
  } ? {
284
293
  assets: Assets;
285
294
  } : {});
286
- export type Rpc<T extends RpcTarget> = {
295
+ export type BusService<T extends Obj<any>> = {
287
296
  [K in keyof T]: T[K] extends Fn ? (...args: Parameters<T[K]>) => Promise<Awaited<ReturnType<T[K]>>> : never;
288
297
  };
289
298
  export type ReqInit = {
package/dist/epos.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"epos.js","sourceRoot":"","sources":["../src/epos.ts"],"names":[],"mappings":"AAmSA,MAAM,KAAK,GAAG,IAAI,CAAA;AAClB,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,CAAA;AAExB,eAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"epos.js","sourceRoot":"","sources":["../src/epos.ts"],"names":[],"mappings":"AA2SA,MAAM,KAAK,GAAG,IAAI,CAAA;AAClB,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,CAAA;AAExB,eAAe,KAAK,CAAA"}
@@ -1,2 +1,2 @@
1
1
  export const { enableStaticRendering, isUsingStaticRendering, observer, Observer, observerBatching, useAsObservableSource, useLocalObservable, useLocalStore, useObserver, useStaticRendering, } = epos.libs.mobxReactLite;
2
- //# sourceMappingURL=epos-vite-mobx-react-lite.js.map
2
+ //# sourceMappingURL=mobx-react-lite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobx-react-lite.js","sourceRoot":"","sources":["../../src/libs/mobx-react-lite.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EACX,qBAAqB,EACrB,sBAAsB,EACtB,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,kBAAkB,GACnB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAA"}
@@ -1,2 +1,2 @@
1
1
  export const { _allowStateChanges, _allowStateChangesInsideComputed, _allowStateReadsEnd, _allowStateReadsStart, _autoAction, _endAction, _getAdministration, _getGlobalState, _interceptReads, _isComputingDerivation, _resetGlobalState, _startAction, $mobx, action, autorun, comparer, computed, configure, createAtom, defineProperty, entries, extendObservable, FlowCancellationError, flowResult, get, getAtom, getDebugName, getDependencyTree, getObserverTree, has, intercept, isAction, isBoxedObservable, isComputed, isComputedProp, isFlow, isFlowCancellationError, isObservable, isObservableArray, isObservableMap, isObservableObject, isObservableProp, isObservableSet, keys, makeAutoObservable, makeObservable, observable, ObservableMap, ObservableSet, observe, onBecomeObserved, onBecomeUnobserved, onReactionError, override, ownKeys, reaction, Reaction, remove, runInAction, set, spy, toJS, trace, transaction, untracked, values, when, } = epos.libs.mobx;
2
- //# sourceMappingURL=epos-vite-mobx.js.map
2
+ //# sourceMappingURL=mobx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobx.js","sourceRoot":"","sources":["../../src/libs/mobx.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EACX,kBAAkB,EAClB,gCAAgC,EAChC,mBAAmB,EACnB,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,UAAU,EACV,cAAc,EACd,OAAO,EACP,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,GAAG,EACH,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,GAAG,EACH,SAAS,EACT,QAAQ,EACR,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,MAAM,EACN,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,IAAI,EACJ,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,aAAa,EACb,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,WAAW,EACX,GAAG,EACH,GAAG,EACH,IAAI,EACJ,KAAK,EACL,WAAW,EACX,SAAS,EACT,MAAM,EACN,IAAI,GACL,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA"}
@@ -1,3 +1,3 @@
1
1
  export default epos.libs.reactDomClient;
2
2
  export const { createRoot, hydrateRoot } = epos.libs.reactDomClient;
3
- //# sourceMappingURL=epos-vite-react-dom-client.js.map
3
+ //# sourceMappingURL=react-dom-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-dom-client.js","sourceRoot":"","sources":["../../src/libs/react-dom-client.js"],"names":[],"mappings":"AAAA,eAAe,IAAI,CAAC,IAAI,CAAC,cAAc,CAAA;AACvC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAA"}
@@ -1,3 +1,3 @@
1
1
  export default epos.libs.reactDom;
2
2
  export const { createPortal, flushSync, preconnect, prefetchDNS, preinit, preinitModule, preload, preloadModule, requestFormReset, unstable_batchedUpdates, useFormState, useFormStatus, version, } = epos.libs.reactDom;
3
- //# sourceMappingURL=epos-vite-react-dom.js.map
3
+ //# sourceMappingURL=react-dom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-dom.js","sourceRoot":"","sources":["../../src/libs/react-dom.js"],"names":[],"mappings":"AAAA,eAAe,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA;AACjC,MAAM,CAAC,MAAM,EACX,YAAY,EACZ,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,YAAY,EACZ,aAAa,EACb,OAAO,GACR,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA"}
@@ -1,3 +1,3 @@
1
1
  export default epos.libs.reactJsxRuntime;
2
2
  export const { Fragment, jsx, jsxs } = epos.libs.reactJsxRuntime;
3
- //# sourceMappingURL=epos-vite-react-jsx-runtime.js.map
3
+ //# sourceMappingURL=react-jsx-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-jsx-runtime.js","sourceRoot":"","sources":["../../src/libs/react-jsx-runtime.js"],"names":[],"mappings":"AAAA,eAAe,IAAI,CAAC,IAAI,CAAC,eAAe,CAAA;AACxC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAA"}
@@ -5,7 +5,7 @@ export declare const act: typeof import("react").act, cache: typeof import("reac
5
5
  forEach<C>(children: C | readonly C[], fn: (child: C, index: number) => void): void;
6
6
  count(children: any): number;
7
7
  only<C>(children: C): C extends any[] ? never : C;
8
- toArray(children: import("react").ReactNode[] | import("react").ReactNode): (string | number | bigint | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | Iterable<import("react").ReactNode> | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | import("react").ReactPortal | null | undefined> | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | import("react").ReactPortal)[];
8
+ toArray(children: import("react").ReactNode | import("react").ReactNode[]): Array<Exclude<import("react").ReactNode, boolean | null | undefined>>;
9
9
  }, cloneElement: typeof import("react").cloneElement, Component: typeof import("react").Component, createContext: typeof import("react").createContext, createElement: typeof import("react").createElement, createRef: typeof import("react").createRef, forwardRef: typeof import("react").forwardRef, Fragment: import("react").ExoticComponent<import("react").FragmentProps>, isValidElement: typeof import("react").isValidElement, lazy: typeof import("react").lazy, memo: typeof import("react").memo, Profiler: import("react").ExoticComponent<import("react").ProfilerProps>, PureComponent: typeof import("react").PureComponent, startTransition: typeof import("react").startTransition, StrictMode: import("react").ExoticComponent<{
10
- children?: import("react").ReactNode;
10
+ children?: import("react").ReactNode | undefined;
11
11
  }>, Suspense: import("react").ExoticComponent<import("react").SuspenseProps>, use: typeof import("react").use, useActionState: typeof import("react").useActionState, useCallback: typeof import("react").useCallback, useContext: typeof import("react").useContext, useDebugValue: typeof import("react").useDebugValue, useDeferredValue: typeof import("react").useDeferredValue, useEffect: typeof import("react").useEffect, useId: typeof import("react").useId, useImperativeHandle: typeof import("react").useImperativeHandle, useInsertionEffect: typeof import("react").useInsertionEffect, useLayoutEffect: typeof import("react").useLayoutEffect, useMemo: typeof import("react").useMemo, useOptimistic: typeof import("react").useOptimistic, useReducer: typeof import("react").useReducer, useRef: typeof import("react").useRef, useState: typeof import("react").useState, useSyncExternalStore: typeof import("react").useSyncExternalStore, useTransition: typeof import("react").useTransition, version: string;
@@ -1,3 +1,3 @@
1
1
  export default epos.libs.react;
2
2
  export const { act, cache, Children, cloneElement, Component, createContext, createElement, createRef, forwardRef, Fragment, isValidElement, lazy, memo, Profiler, PureComponent, startTransition, StrictMode, Suspense, use, useActionState, useCallback, useContext, useDebugValue, useDeferredValue, useEffect, useId, useImperativeHandle, useInsertionEffect, useLayoutEffect, useMemo, useOptimistic, useReducer, useRef, useState, useSyncExternalStore, useTransition, version, } = epos.libs.react;
3
- //# sourceMappingURL=epos-vite-react.js.map
3
+ //# sourceMappingURL=react.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../../src/libs/react.js"],"names":[],"mappings":"AAAA,eAAe,IAAI,CAAC,IAAI,CAAC,KAAK,CAAA;AAC9B,MAAM,CAAC,MAAM,EACX,GAAG,EACH,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,aAAa,EACb,aAAa,EACb,SAAS,EACT,UAAU,EACV,QAAQ,EACR,cAAc,EACd,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,eAAe,EACf,UAAU,EACV,QAAQ,EACR,GAAG,EACH,cAAc,EACd,WAAW,EACX,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,aAAa,EACb,UAAU,EACV,MAAM,EACN,QAAQ,EACR,oBAAoB,EACpB,aAAa,EACb,OAAO,GACR,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAA"}
package/dist/spec.d.ts ADDED
@@ -0,0 +1,101 @@
1
+ import { type Obj } from '@eposlabs/utils';
2
+ export type Url = string;
3
+ export type Path = string;
4
+ export type Action = true | '<page>' | Url;
5
+ export type Match = LocusMatch | TopMatch | FrameMatch;
6
+ export type MatchPattern = UrlMatchPattern | '<all_urls>';
7
+ export type UrlMatchPattern = string;
8
+ export type Manifest = Obj;
9
+ export type Spec = {
10
+ name: string;
11
+ slug: string;
12
+ version: string;
13
+ description: string | null;
14
+ icon: string | null;
15
+ action: Action | null;
16
+ options: Options;
17
+ popup: Popup;
18
+ assets: Path[];
19
+ targets: Target[];
20
+ permissions: Permission[];
21
+ optionalPermissions: OptionalPermission[];
22
+ hostPermissions: string[];
23
+ optionalHostPermissions: string[];
24
+ manifest: Manifest | null;
25
+ };
26
+ export type Popup = {
27
+ width: number;
28
+ height: number;
29
+ };
30
+ export type Options = {
31
+ preloadAssets: boolean;
32
+ allowProjectsApi: boolean;
33
+ allowMissingModels: boolean;
34
+ };
35
+ export type Target = {
36
+ matches: Match[];
37
+ resources: Resource[];
38
+ };
39
+ export type LocusMatch = {
40
+ context: 'locus';
41
+ value: Locus;
42
+ };
43
+ export type TopMatch = {
44
+ context: 'top';
45
+ value: MatchPattern;
46
+ };
47
+ export type FrameMatch = {
48
+ context: 'frame';
49
+ value: MatchPattern;
50
+ };
51
+ export type Resource = {
52
+ type: 'js' | 'css' | 'lite-js' | 'shadow-css';
53
+ path: Path;
54
+ };
55
+ export type Locus = 'page' | 'popup' | 'sidePanel' | 'background';
56
+ export type Permission = (typeof schema)['permissions'][number];
57
+ export type OptionalPermission = (typeof schema)['optionalPermissions'][number];
58
+ declare const schema: {
59
+ keys: string[];
60
+ name: {
61
+ min: number;
62
+ max: number;
63
+ };
64
+ slug: {
65
+ min: number;
66
+ max: number;
67
+ regex: RegExp;
68
+ };
69
+ description: {
70
+ max: number;
71
+ };
72
+ version: {
73
+ regex: RegExp;
74
+ };
75
+ popup: {
76
+ keys: string[];
77
+ width: {
78
+ min: number;
79
+ max: number;
80
+ default: number;
81
+ };
82
+ height: {
83
+ min: number;
84
+ max: number;
85
+ default: number;
86
+ };
87
+ };
88
+ options: {
89
+ preloadAssets: boolean;
90
+ allowProjectsApi: boolean;
91
+ allowMissingModels: boolean;
92
+ };
93
+ target: {
94
+ keys: string[];
95
+ };
96
+ permissions: ["alarms", "background", "browsingData", "contextMenus", "cookies", "declarativeNetRequest", "downloads.ui", "downloads", "notifications", "offscreen", "scripting", "sidePanel", "storage", "tabs", "unlimitedStorage", "webNavigation"];
97
+ optionalPermissions: ["alarms", "background", "browsingData", "contextMenus", "cookies", "downloads.ui", "downloads", "notifications", "offscreen", "scripting", "sidePanel", "storage", "tabs", "webNavigation"];
98
+ };
99
+ export declare const parseSpecJson: (json: string) => Spec;
100
+ export declare const parseSpecObject: (spec: Obj) => Spec;
101
+ export {};
@@ -13,10 +13,13 @@ const schema = {
13
13
  'icon',
14
14
  'action',
15
15
  'popup',
16
- 'config',
16
+ 'options',
17
17
  'assets',
18
18
  'targets',
19
19
  'permissions',
20
+ 'optionalPermissions',
21
+ 'hostPermissions',
22
+ 'optionalHostPermissions',
20
23
  'manifest',
21
24
  ],
22
25
  name: { min: 2, max: 45 },
@@ -28,7 +31,7 @@ const schema = {
28
31
  width: { min: 150, max: 800, default: 380 },
29
32
  height: { min: 150, max: 600 - 7 * 4, default: 600 - 7 * 4 },
30
33
  },
31
- config: {
34
+ options: {
32
35
  preloadAssets: true,
33
36
  allowProjectsApi: false,
34
37
  allowMissingModels: false,
@@ -37,25 +40,43 @@ const schema = {
37
40
  keys: ['matches', 'load'],
38
41
  },
39
42
  permissions: [
43
+ 'alarms',
40
44
  'background',
41
45
  'browsingData',
42
46
  'contextMenus',
43
47
  'cookies',
48
+ 'declarativeNetRequest',
49
+ 'downloads.ui',
44
50
  'downloads',
45
51
  'notifications',
52
+ 'offscreen',
53
+ 'scripting',
54
+ 'sidePanel',
46
55
  'storage',
47
- 'optional:background',
48
- 'optional:browsingData',
49
- 'optional:contextMenus',
50
- 'optional:cookies',
51
- 'optional:downloads',
52
- 'optional:notifications',
53
- 'optional:storage',
56
+ 'tabs',
57
+ 'unlimitedStorage',
58
+ 'webNavigation',
59
+ ],
60
+ optionalPermissions: [
61
+ 'alarms',
62
+ 'background',
63
+ 'browsingData',
64
+ 'contextMenus',
65
+ 'cookies',
66
+ 'downloads.ui',
67
+ 'downloads',
68
+ 'notifications',
69
+ 'offscreen',
70
+ 'scripting',
71
+ 'sidePanel',
72
+ 'storage',
73
+ 'tabs',
74
+ 'webNavigation',
54
75
  ],
55
76
  };
56
77
  // MARK: Parsers
57
78
  // ============================================================================
58
- export function parseSpecJson(json) {
79
+ export const parseSpecJson = (json) => {
59
80
  if (!is.string(json))
60
81
  throw new Error(`Failed to parse JSON: input is not a string`);
61
82
  json = stripJsonComments(json);
@@ -63,8 +84,8 @@ export function parseSpecJson(json) {
63
84
  if (error)
64
85
  throw new Error(`Failed to parse JSON: ${error.message}`);
65
86
  return parseSpecObject(spec);
66
- }
67
- export function parseSpecObject(spec) {
87
+ };
88
+ export const parseSpecObject = (spec) => {
68
89
  if (!is.object(spec))
69
90
  throw new Error(`Epos spec must be an object`);
70
91
  const keys = [...schema.keys, ...schema.target.keys];
@@ -82,14 +103,17 @@ export function parseSpecObject(spec) {
82
103
  icon: icon,
83
104
  action: parseAction(spec, targets),
84
105
  popup: parsePopup(spec),
85
- config: parseConfig(spec),
106
+ options: parseOptions(spec),
86
107
  assets: parseAssets(spec, icon),
87
108
  targets: targets,
88
109
  permissions: parsePermissions(spec),
110
+ optionalPermissions: parseOptionalPermissions(spec),
111
+ hostPermissions: parseHostPermissions(spec),
112
+ optionalHostPermissions: parseOptionalHostPermissions(spec),
89
113
  manifest: parseManifest(spec),
90
114
  };
91
- }
92
- function parseName(spec) {
115
+ };
116
+ const parseName = (spec) => {
93
117
  if (!('name' in spec))
94
118
  throw new Error(`'name' field is required`);
95
119
  const name = spec.name;
@@ -101,8 +125,8 @@ function parseName(spec) {
101
125
  if (name.length > max)
102
126
  throw new Error(`'name' must be at most ${max} characters`);
103
127
  return name;
104
- }
105
- function parseSlug(spec, name) {
128
+ };
129
+ const parseSlug = (spec, name) => {
106
130
  if (!('slug' in spec))
107
131
  return slugify(name);
108
132
  const slug = spec.slug;
@@ -120,8 +144,8 @@ function parseSlug(spec, name) {
120
144
  if (!regex.test(slug))
121
145
  throw new Error(`'slug' must match regex: ${regex}`);
122
146
  return slug;
123
- }
124
- function parseVersion(spec) {
147
+ };
148
+ const parseVersion = (spec) => {
125
149
  if (!('version' in spec))
126
150
  return '0.0.1';
127
151
  const version = spec.version;
@@ -130,8 +154,8 @@ function parseVersion(spec) {
130
154
  if (!schema.version.regex.test(version))
131
155
  throw new Error(`'version' must be in format V.V.V, or V.V, or V`);
132
156
  return version;
133
- }
134
- function parseDescription(spec) {
157
+ };
158
+ const parseDescription = (spec) => {
135
159
  if (!('description' in spec))
136
160
  return null;
137
161
  const description = spec.description;
@@ -141,16 +165,16 @@ function parseDescription(spec) {
141
165
  if (description.length > max)
142
166
  throw new Error(`'description' must be at most ${max} characters`);
143
167
  return description;
144
- }
145
- function parseIcon(spec) {
168
+ };
169
+ const parseIcon = (spec) => {
146
170
  if (!('icon' in spec))
147
171
  return null;
148
172
  const icon = spec.icon;
149
173
  if (!is.string(icon))
150
174
  throw new Error(`'icon' must be a string`);
151
175
  return parsePath(icon);
152
- }
153
- function parseAction(spec, targets) {
176
+ };
177
+ const parseAction = (spec, targets) => {
154
178
  const matches = targets.flatMap(target => target.matches);
155
179
  const hasPopup = matches.some(match => match.context === 'locus' && match.value === 'popup');
156
180
  const hasSidePanel = matches.some(match => match.context === 'locus' && match.value === 'sidePanel');
@@ -161,13 +185,15 @@ function parseAction(spec, targets) {
161
185
  return null;
162
186
  if (action === true)
163
187
  return true;
188
+ if (action === '<page>')
189
+ return '<page>';
164
190
  if (!is.string(action))
165
191
  throw new Error(`'action' must be a URL or true`);
166
192
  if (!isValidUrl(action))
167
193
  throw new Error(`Invalid 'action' URL: '${JSON.stringify(action)}'`);
168
194
  return action;
169
- }
170
- function parsePopup(spec) {
195
+ };
196
+ const parsePopup = (spec) => {
171
197
  const popup = structuredClone(spec.popup ?? {});
172
198
  if (!is.object(popup))
173
199
  throw new Error(`'popup' must be an object`);
@@ -190,31 +216,31 @@ function parsePopup(spec) {
190
216
  if (popup.height > height.max)
191
217
  throw new Error(`'popup.height' must be ≤ ${height.max}`);
192
218
  return popup;
193
- }
194
- function parseConfig(spec) {
195
- const config = spec.config ?? {};
196
- if (!is.object(config))
197
- throw new Error(`'config' must be an object`);
198
- const configKeys = Object.keys(schema.config);
199
- const badKey = Object.keys(config).find(key => !configKeys.includes(key));
219
+ };
220
+ const parseOptions = (spec) => {
221
+ const options = spec.options ?? {};
222
+ if (!is.object(options))
223
+ throw new Error(`'options' must be an object`);
224
+ const optionKeys = Object.keys(schema.options);
225
+ const badKey = Object.keys(options).find(key => !optionKeys.includes(key));
200
226
  if (badKey)
201
- throw new Error(`Unknown 'config' key: '${badKey}'`);
202
- const preloadAssets = config.preloadAssets ?? schema.config.preloadAssets;
227
+ throw new Error(`Unknown 'options' key: '${badKey}'`);
228
+ const preloadAssets = options.preloadAssets ?? schema.options.preloadAssets;
203
229
  if (!is.boolean(preloadAssets))
204
- throw new Error(`'config.preloadAssets' must be a boolean`);
205
- const allowProjectsApi = config.allowProjectsApi ?? schema.config.allowProjectsApi;
230
+ throw new Error(`'options.preloadAssets' must be a boolean`);
231
+ const allowProjectsApi = options.allowProjectsApi ?? schema.options.allowProjectsApi;
206
232
  if (!is.boolean(allowProjectsApi))
207
- throw new Error(`'config.allowProjectsApi' must be a boolean`);
208
- const allowMissingModels = config.allowMissingModels ?? schema.config.allowMissingModels;
233
+ throw new Error(`'options.allowProjectsApi' must be a boolean`);
234
+ const allowMissingModels = options.allowMissingModels ?? schema.options.allowMissingModels;
209
235
  if (!is.boolean(allowMissingModels))
210
- throw new Error(`'config.allowMissingModels' must be a boolean`);
236
+ throw new Error(`'options.allowMissingModels' must be a boolean`);
211
237
  return {
212
238
  preloadAssets,
213
239
  allowProjectsApi,
214
240
  allowMissingModels,
215
241
  };
216
- }
217
- function parseAssets(spec, icon) {
242
+ };
243
+ const parseAssets = (spec, icon) => {
218
244
  const assets = structuredClone(spec.assets ?? []);
219
245
  if (!isArrayOfStrings(assets))
220
246
  throw new Error(`'assets' must be an array of strings`);
@@ -222,8 +248,8 @@ function parseAssets(spec, icon) {
222
248
  if (icon)
223
249
  assets.push(icon);
224
250
  return unique(assets.map(path => parsePath(path)));
225
- }
226
- function parseTargets(spec) {
251
+ };
252
+ const parseTargets = (spec) => {
227
253
  const targets = structuredClone(spec.targets ?? []);
228
254
  if (!is.array(targets))
229
255
  throw new Error(`'targets' must be an array`);
@@ -235,8 +261,8 @@ function parseTargets(spec) {
235
261
  });
236
262
  }
237
263
  return targets.map(target => parseTarget(target));
238
- }
239
- function parseTarget(target) {
264
+ };
265
+ const parseTarget = (target) => {
240
266
  if (!is.object(target))
241
267
  throw new Error(`Each target must be an object`);
242
268
  const { keys } = schema.target;
@@ -247,14 +273,16 @@ function parseTarget(target) {
247
273
  matches: parseMatches(target),
248
274
  resources: parseResources(target),
249
275
  };
250
- }
251
- function parseMatches(target) {
276
+ };
277
+ const parseMatches = (target) => {
252
278
  const matches = ensureArray(target.matches ?? []);
253
279
  return matches.map(match => parseMatch(match)).flat();
254
- }
255
- function parseMatch(match) {
280
+ };
281
+ const parseMatch = (match) => {
256
282
  if (!is.string(match))
257
283
  throw new Error(`Invalid match pattern: '${JSON.stringify(match)}'`);
284
+ if (match === '<page>')
285
+ return { context: 'locus', value: 'page' };
258
286
  if (match === '<popup>')
259
287
  return { context: 'locus', value: 'popup' };
260
288
  if (match === '<sidePanel>')
@@ -282,20 +310,20 @@ function parseMatch(match) {
282
310
  { context, value: parseMatchPattern(pattern) },
283
311
  { context, value: parseMatchPattern(`${pattern}?*`) },
284
312
  ];
285
- }
286
- function parseMatchPattern(pattern) {
313
+ };
314
+ const parseMatchPattern = (pattern) => {
287
315
  const matcher = matchPattern(pattern);
288
316
  if (!matcher.valid)
289
317
  throw new Error(`Invalid match pattern: '${pattern}'`);
290
318
  return pattern;
291
- }
292
- function parseResources(target) {
319
+ };
320
+ const parseResources = (target) => {
293
321
  const load = ensureArray(target.load ?? []);
294
322
  if (!isArrayOfStrings(load))
295
323
  throw new Error(`'load' must be an array of strings`);
296
324
  return load.map(loadEntry => parseResource(loadEntry));
297
- }
298
- function parseResource(loadEntry) {
325
+ };
326
+ const parseResource = (loadEntry) => {
299
327
  const isJs = loadEntry.toLowerCase().endsWith('.js');
300
328
  const isCss = loadEntry.toLowerCase().endsWith('.css');
301
329
  if (!isJs && !isCss)
@@ -313,41 +341,56 @@ function parseResource(loadEntry) {
313
341
  else {
314
342
  return { path: parsePath(loadEntry), type: isJs ? 'js' : 'css' };
315
343
  }
316
- }
317
- function parsePermissions(spec) {
344
+ };
345
+ const parsePermissions = (spec) => {
318
346
  const permissions = spec.permissions ?? [];
319
347
  if (!isArrayOfStrings(permissions))
320
348
  throw new Error(`'permissions' must be an array of strings`);
321
349
  const badPermission = permissions.find(value => !schema.permissions.includes(value));
322
350
  if (badPermission)
323
351
  throw new Error(`Unknown permission: '${badPermission}'`);
324
- const requiredPermissions = new Set();
325
- const optionalPermissions = new Set();
326
- for (const permission of permissions) {
327
- if (permission.startsWith('optional:')) {
328
- optionalPermissions.add(permission.replace('optional:', ''));
329
- }
330
- else {
331
- requiredPermissions.add(permission);
332
- }
333
- }
334
- for (const permission of requiredPermissions) {
335
- if (optionalPermissions.has(permission)) {
336
- throw new Error(`Permission cannot be both required and optional: '${permission}'`);
337
- }
338
- }
339
- return {
340
- required: [...requiredPermissions],
341
- optional: [...optionalPermissions],
342
- };
343
- }
344
- function parseManifest(spec) {
352
+ return permissions;
353
+ };
354
+ const parseOptionalPermissions = (spec) => {
355
+ if ('optional_permissions' in spec)
356
+ throw new Error(`Use 'optionalPermissions' instead of 'optional_permissions'`);
357
+ const optionalPermissions = spec.optionalPermissions ?? [];
358
+ if (!isArrayOfStrings(optionalPermissions))
359
+ throw new Error(`'optionalPermissions' must be an array of strings`);
360
+ const badPermission = optionalPermissions.find(value => !schema.optionalPermissions.includes(value));
361
+ if (badPermission)
362
+ throw new Error(`Unknown optional permission: '${badPermission}'`);
363
+ return optionalPermissions;
364
+ };
365
+ const parseHostPermissions = (spec) => {
366
+ if ('host_permissions' in spec)
367
+ throw new Error(`Use 'hostPermissions' instead of 'host_permissions'`);
368
+ const hostPermissions = spec.hostPermissions ?? [];
369
+ if (!isArrayOfStrings(hostPermissions))
370
+ throw new Error(`'hostPermissions' must be an array of strings`);
371
+ const hasUnderscoreAllUrls = hostPermissions.find(value => value === '<all_urls>');
372
+ if (hasUnderscoreAllUrls)
373
+ throw new Error(`Use '<allUrls>' instead of '<all_urls>'`);
374
+ return hostPermissions.map(value => (value === '<allUrls>' ? '<all_urls>' : value));
375
+ };
376
+ const parseOptionalHostPermissions = (spec) => {
377
+ if ('optional_host_permissions' in spec)
378
+ throw new Error(`Use 'optionalHostPermissions' instead of 'optional_host_permissions'`);
379
+ const optionalHostPermissions = spec.optionalHostPermissions ?? [];
380
+ if (!isArrayOfStrings(optionalHostPermissions))
381
+ throw new Error(`'optionalHostPermissions' must be an array of strings`);
382
+ const hasUnderscoreAllUrls = optionalHostPermissions.find(value => value === '<all_urls>');
383
+ if (hasUnderscoreAllUrls)
384
+ throw new Error(`Use '<allUrls>' instead of '<all_urls>'`);
385
+ return optionalHostPermissions.map(value => (value === '<allUrls>' ? '<all_urls>' : value));
386
+ };
387
+ const parseManifest = (spec) => {
345
388
  if (!('manifest' in spec))
346
389
  return null;
347
390
  if (!is.object(spec.manifest))
348
391
  throw new Error(`'manifest' must be an object`);
349
392
  return spec.manifest;
350
- }
393
+ };
351
394
  /**
352
395
  * Validate and normalize path:
353
396
  * - 'path/to' -> 'path/to'
@@ -359,7 +402,7 @@ function parseManifest(spec) {
359
402
  * - 'path/../to' -> 'path/../to'
360
403
  * - '../path/to' -> throw
361
404
  */
362
- function parsePath(path) {
405
+ const parsePath = (path) => {
363
406
  const normalizedPath = path
364
407
  .split('/')
365
408
  .filter(path => path && path !== '.')
@@ -367,18 +410,18 @@ function parsePath(path) {
367
410
  if (normalizedPath.startsWith('..'))
368
411
  throw new Error(`External paths are not allowed: '${path}'`);
369
412
  return normalizedPath;
370
- }
413
+ };
371
414
  // MARK: Helpers
372
415
  // ============================================================================
373
- function isValidUrl(value) {
416
+ const isValidUrl = (value) => {
374
417
  if (!is.string(value))
375
418
  return false;
376
419
  return URL.canParse(value);
377
- }
378
- function isArrayOfStrings(value) {
420
+ };
421
+ const isArrayOfStrings = (value) => {
379
422
  return is.array(value) && value.every(is.string);
380
- }
381
- function slugify(text) {
423
+ };
424
+ const slugify = (text) => {
382
425
  return text
383
426
  .toString() // Ensure it's a string
384
427
  .toLowerCase() // Convert to lowercase
@@ -386,5 +429,5 @@ function slugify(text) {
386
429
  .replace(/[^a-z0-9\s-]/g, '') // Remove all non-alphanumeric characters (except spaces and dashes)
387
430
  .replace(/[\s-]+/g, '-') // Replace spaces and multiple dashes with a single dash
388
431
  .replace(/^-+|-+$/g, ''); // Remove leading and trailing dashes
389
- }
390
- //# sourceMappingURL=epos-spec.js.map
432
+ };
433
+ //# sourceMappingURL=spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spec.js","sourceRoot":"","sources":["../src/spec.ts"],"names":[],"mappings":"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"}
package/dist/vite.js ADDED
@@ -0,0 +1,20 @@
1
+ import { resolve } from 'node:path';
2
+ const libs = {
3
+ 'react': resolve(import.meta.dirname, './libs/react.js'),
4
+ 'react/jsx-runtime': resolve(import.meta.dirname, './libs/react-jsx-runtime.js'),
5
+ 'react-dom': resolve(import.meta.dirname, './libs/react-dom.js'),
6
+ 'react-dom/client': resolve(import.meta.dirname, './libs/react-dom-client.js'),
7
+ 'mobx': resolve(import.meta.dirname, './libs/mobx.js'),
8
+ 'mobx-react-lite': resolve(import.meta.dirname, './libs/mobx-react-lite.js'),
9
+ };
10
+ export function epos() {
11
+ return {
12
+ name: 'epos',
13
+ enforce: 'pre',
14
+ resolveId(source) {
15
+ return libs[source] ?? null;
16
+ },
17
+ };
18
+ }
19
+ export default epos;
20
+ //# sourceMappingURL=vite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.js","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,MAAM,IAAI,GAA2B;IACnC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACxD,mBAAmB,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,6BAA6B,CAAC;IAChF,WAAW,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC;IAChE,kBAAkB,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,4BAA4B,CAAC;IAC9E,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACtD,iBAAiB,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,2BAA2B,CAAC;CAC7E,CAAA;AAED,MAAM,UAAU,IAAI;IAClB,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,KAAK;QACd,SAAS,CAAC,MAAM;YACd,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAA;QAC7B,CAAC;KACF,CAAA;AACH,CAAC;AAED,eAAe,IAAI,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "epos",
3
- "version": "1.57.0",
3
+ "version": "1.60.0",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "author": "imkost",
@@ -13,28 +13,28 @@
13
13
  },
14
14
  "exports": {
15
15
  ".": "./dist/epos.js",
16
- "./vite": "./dist/epos-vite.js",
17
- "./spec": "./dist/epos-spec.js",
18
- "./browser": "./dist/epos-browser.js"
16
+ "./vite": "./dist/vite.js",
17
+ "./spec": "./dist/spec.js",
18
+ "./browser": "./dist/browser.js"
19
19
  },
20
20
  "files": [
21
21
  "dist"
22
22
  ],
23
23
  "dependencies": {
24
- "@eposlabs/utils": "^1.22.0",
25
- "@types/chrome": "^0.1.36",
26
- "@types/react": "^19.2.10",
24
+ "@eposlabs/utils": "1.25.0",
25
+ "@types/chrome": "^0.1.38",
26
+ "@types/react": "^19.2.14",
27
27
  "@types/react-dom": "^19.2.3",
28
28
  "browser-extension-url-match": "^1.2.0",
29
29
  "mobx": "^6.15.0",
30
30
  "mobx-react-lite": "^4.1.1",
31
31
  "react": "^19.2.4",
32
- "yjs": "^13.6.29"
32
+ "yjs": "^13.6.30"
33
33
  },
34
34
  "devDependencies": {
35
- "vite": "^8.0.0-beta.0"
35
+ "vite": "^8.0.3"
36
36
  },
37
37
  "peerDependencies": {
38
- "vite": "^8.0.0-beta.0"
38
+ "vite": "^8.0.3"
39
39
  }
40
40
  }
@@ -1,2 +0,0 @@
1
- import 'chrome';
2
- //# sourceMappingURL=epos-browser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-browser.js","sourceRoot":"","sources":["../src/epos-browser.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAA"}
@@ -1,57 +0,0 @@
1
- import { type Obj } from '@eposlabs/utils';
2
- export type Action = true | string;
3
- export type Path = string;
4
- export type Match = LocusMatch | TopMatch | FrameMatch;
5
- export type MatchPattern = UrlMatchPattern | '<all_urls>';
6
- export type UrlMatchPattern = string;
7
- export type Manifest = Obj;
8
- export type Spec = {
9
- name: string;
10
- slug: string;
11
- version: string;
12
- description: string | null;
13
- icon: string | null;
14
- action: Action | null;
15
- popup: Popup;
16
- config: Config;
17
- assets: Path[];
18
- targets: Target[];
19
- permissions: Permissions;
20
- manifest: Manifest | null;
21
- };
22
- export type Popup = {
23
- width: number;
24
- height: number;
25
- };
26
- export type Config = {
27
- preloadAssets: boolean;
28
- allowProjectsApi: boolean;
29
- allowMissingModels: boolean;
30
- };
31
- export type Target = {
32
- matches: Match[];
33
- resources: Resource[];
34
- };
35
- export type LocusMatch = {
36
- context: 'locus';
37
- value: 'popup' | 'sidePanel' | 'background';
38
- };
39
- export type TopMatch = {
40
- context: 'top';
41
- value: MatchPattern;
42
- };
43
- export type FrameMatch = {
44
- context: 'frame';
45
- value: MatchPattern;
46
- };
47
- export type Resource = {
48
- type: 'js' | 'css' | 'lite-js' | 'shadow-css';
49
- path: Path;
50
- };
51
- export type Permissions = {
52
- required: Permission[];
53
- optional: Permission[];
54
- };
55
- export type Permission = 'background' | 'browsingData' | 'contextMenus' | 'cookies' | 'downloads' | 'notifications' | 'storage';
56
- export declare function parseSpecJson(json: string): Spec;
57
- export declare function parseSpecObject(spec: Obj): Spec;
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-spec.js","sourceRoot":"","sources":["../src/epos-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAY,MAAM,iBAAiB,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AA0EnD,eAAe;AACf,+EAA+E;AAE/E,MAAM,MAAM,GAAG;IACb,IAAI,EAAE;QACJ,SAAS;QACT,MAAM;QACN,MAAM;QACN,SAAS;QACT,aAAa;QACb,MAAM;QACN,QAAQ;QACR,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,aAAa;QACb,UAAU;KACX;IACD,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IACzB,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,2BAA2B,EAAE;IAC7D,WAAW,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACzB,OAAO,EAAE,EAAE,KAAK,EAAE,6BAA6B,EAAE;IACjD,KAAK,EAAE;QACL,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QACzB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE;KAC7D;IACD,MAAM,EAAE;QACN,aAAa,EAAE,IAAI;QACnB,gBAAgB,EAAE,KAAK;QACvB,kBAAkB,EAAE,KAAK;KAC1B;IACD,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;KAC1B;IACD,WAAW,EAAE;QACX,YAAY;QACZ,cAAc;QACd,cAAc;QACd,SAAS;QACT,WAAW;QACX,eAAe;QACf,SAAS;QACT,qBAAqB;QACrB,uBAAuB;QACvB,uBAAuB;QACvB,kBAAkB;QAClB,oBAAoB;QACpB,wBAAwB;QACxB,kBAAkB;KACnB;CACF,CAAA;AAED,gBAAgB;AAChB,+EAA+E;AAE/E,MAAM,UAAU,aAAa,CAAC,IAAY,EAAQ;IAChD,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IACpF,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IACtD,IAAI,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IACpE,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;AAAA,CAC7B;AAED,MAAM,UAAU,eAAe,CAAC,IAAS,EAAQ;IAC/C,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;IAEpE,MAAM,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACpD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IACjE,IAAI,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,GAAG,CAAC,CAAA;IAE5D,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAC5B,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAC5B,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IAElC,OAAO;QACL,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC;QAC3B,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC;QAC3B,WAAW,EAAE,gBAAgB,CAAC,IAAI,CAAC;QACnC,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC;QAClC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC;QACvB,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC;QACzB,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,gBAAgB,CAAC,IAAI,CAAC;QACnC,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC;KAC9B,CAAA;AAAA,CACF;AAED,SAAS,SAAS,CAAC,IAAS,EAAE;IAC5B,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;IAElE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACtB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAEhE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,CAAA;IAChC,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,aAAa,CAAC,CAAA;IACnF,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,aAAa,CAAC,CAAA;IAElF,OAAO,IAAI,CAAA;AAAA,CACZ;AAED,SAAS,SAAS,CAAC,IAAS,EAAE,IAAY,EAAE;IAC1C,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACtB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAEhE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,CAAA;IACvC,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,aAAa,CAAC,CAAA;IACnF,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,aAAa,CAAC,CAAA;IAClF,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;IAC5E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IAC/E,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,EAAE,CAAC,CAAA;IAE3E,OAAO,IAAI,CAAA;AAAA,CACZ;AAED,SAAS,YAAY,CAAC,IAAS,EAAU;IACvC,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC;QAAE,OAAO,OAAO,CAAA;IAExC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IAC5B,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IACtE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IAE3G,OAAO,OAAO,CAAA;AAAA,CACf;AAED,SAAS,gBAAgB,CAAC,IAAS,EAAiB;IAClD,IAAI,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IAEzC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;IACpC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IAE9E,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,WAAW,CAAA;IAClC,IAAI,WAAW,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,aAAa,CAAC,CAAA;IAEhG,OAAO,WAAW,CAAA;AAAA,CACnB;AAED,SAAS,SAAS,CAAC,IAAS,EAAE;IAC5B,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IAElC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IACtB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAEhE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAA;AAAA,CACvB;AAED,SAAS,WAAW,CAAC,IAAS,EAAE,OAAiB,EAAiB;IAChE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACzD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC,CAAA;IAC5F,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,WAAW,CAAC,CAAA;IACpG,IAAI,QAAQ,IAAI,YAAY;QAAE,OAAO,IAAI,CAAA;IAEzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAA;IAClC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAChC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAEhC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IACzE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAE7F,OAAO,MAAM,CAAA;AAAA,CACd;AAED,SAAS,UAAU,CAAC,IAAS,EAAE;IAC7B,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;IAC/C,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAEnE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAA;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IAClE,IAAI,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,GAAG,CAAC,CAAA;IAE/D,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,CAAA;IAC7B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACjF,IAAI,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA2B,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;IACpF,IAAI,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA2B,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;IAEpF,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,OAAO,CAAA;IAC/B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACnF,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA4B,MAAM,CAAC,GAAG,EAAE,CAAC,CAAA;IACxF,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA4B,MAAM,CAAC,GAAG,EAAE,CAAC,CAAA;IAExF,OAAO,KAAc,CAAA;AAAA,CACtB;AAED,SAAS,WAAW,CAAC,IAAS,EAAU;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAA;IAChC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAErE,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IACzE,IAAI,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,GAAG,CAAC,CAAA;IAEhE,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAA;IACzE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAE3F,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAA;IAClF,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAEjG,MAAM,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAA;IACxF,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAErG,OAAO;QACL,aAAa;QACb,gBAAgB;QAChB,kBAAkB;KACnB,CAAA;AAAA,CACF;AAED,SAAS,WAAW,CAAC,IAAS,EAAE,IAAmB,EAAE;IACnD,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;IACjD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;IAEtF,qBAAqB;IACrB,IAAI,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAE3B,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAAA,CACnD;AAED,SAAS,YAAY,CAAC,IAAS,EAAE;IAC/B,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAA;IACnD,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAErE,qCAAqC;IACrC,IAAI,SAAS,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QAC1D,OAAO,CAAC,OAAO,CAAC;YACd,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YAC5C,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;SACvC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;AAAA,CAClD;AAED,SAAS,WAAW,CAAC,MAAe,EAAU;IAC5C,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAExE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,CAAA;IAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IACnE,IAAI,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,GAAG,CAAC,CAAA;IAE9D,OAAO;QACL,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC;QAC7B,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC;KAClC,CAAA;AAAA,CACF;AAED,SAAS,YAAY,CAAC,MAAW,EAAW;IAC1C,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAA;IACjD,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;AAAA,CACtD;AAED,SAAS,UAAU,CAAC,KAAc,EAAmB;IACnD,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAE3F,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;IACpE,IAAI,KAAK,KAAK,aAAa;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IAC5E,IAAI,KAAK,KAAK,cAAc;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;IAE9E,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IAC5D,IAAI,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IAEvE,IAAI,OAAO,KAAK,WAAW;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;IACpE,IAAI,OAAO,KAAK,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAExF,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,CAAA;IAC7E,CAAC;IAED,yEAAyE;IACzE,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;IAClD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,GAAG,CAAC,CAAA;IAC7E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAA;IACzB,IAAI,GAAG,CAAC,QAAQ,KAAK,EAAE;QAAE,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAA;IAC3C,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,GAAG,CAAC,CAAA;IAEhD,OAAO;QACL,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE;QAC9C,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,OAAO,IAAI,CAAC,EAAE;KACtD,CAAA;AAAA,CACF;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAgB;IACxD,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;IACrC,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,GAAG,CAAC,CAAA;IAC1E,OAAO,OAAO,CAAA;AAAA,CACf;AAED,SAAS,cAAc,CAAC,MAAW,EAAE;IACnC,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAC3C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IAClF,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAA;AAAA,CACvD;AAED,SAAS,aAAa,CAAC,SAAiB,EAAY;IAClD,MAAM,IAAI,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IACpD,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACtD,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,SAAS,GAAG,CAAC,CAAA;IAE9F,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,SAAS,GAAG,CAAC,CAAA;QAChF,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;IAC7E,CAAC;SAAM,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,SAAS,GAAG,CAAC,CAAA;QACpF,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAA;IAClF,CAAC;SAAM,CAAC;QACN,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;IAClE,CAAC;AAAA,CACF;AAED,SAAS,gBAAgB,CAAC,IAAS,EAAe;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAA;IAC1C,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAEhG,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;IACpF,IAAI,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,aAAa,GAAG,CAAC,CAAA;IAE5E,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAA;IAC7C,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAA;IAC7C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAA;QAC9D,CAAC;aAAM,CAAC;YACN,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IAED,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE,CAAC;QAC7C,IAAI,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,qDAAqD,UAAU,GAAG,CAAC,CAAA;QACrF,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,CAAC,GAAG,mBAAmB,CAAiB;QAClD,QAAQ,EAAE,CAAC,GAAG,mBAAmB,CAAiB;KACnD,CAAA;AAAA,CACF;AAED,SAAS,aAAa,CAAC,IAAS,EAAmB;IACjD,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IACtC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;IAC9E,OAAO,IAAI,CAAC,QAAQ,CAAA;AAAA,CACrB;AAED;;;;;;;;;;GAUG;AACH,SAAS,SAAS,CAAC,IAAY,EAAE;IAC/B,MAAM,cAAc,GAAG,IAAI;SACxB,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,KAAK,GAAG,CAAC;SACpC,IAAI,CAAC,GAAG,CAAC,CAAA;IACZ,IAAI,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,GAAG,CAAC,CAAA;IACjG,OAAO,cAAc,CAAA;AAAA,CACtB;AAED,gBAAgB;AAChB,+EAA+E;AAE/E,SAAS,UAAU,CAAC,KAAc,EAAE;IAClC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACnC,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAAA,CAC3B;AAED,SAAS,gBAAgB,CAAC,KAAc,EAAE;IACxC,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;AAAA,CACjD;AAED,SAAS,OAAO,CAAC,IAAY,EAAE;IAC7B,OAAO,IAAI;SACR,QAAQ,EAAE,CAAC,uBAAuB;SAClC,WAAW,EAAE,CAAC,uBAAuB;SACrC,IAAI,EAAE,CAAC,mCAAmC;SAC1C,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,oEAAoE;SACjG,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,wDAAwD;SAChF,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA,CAAC,qCAAqC;AAAtC,CAC3B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-vite-mobx-react-lite.js","sourceRoot":"","sources":["../src/epos-vite-mobx-react-lite.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EACX,qBAAqB,EACrB,sBAAsB,EACtB,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,kBAAkB,GACnB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-vite-mobx.js","sourceRoot":"","sources":["../src/epos-vite-mobx.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EACX,kBAAkB,EAClB,gCAAgC,EAChC,mBAAmB,EACnB,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,UAAU,EACV,cAAc,EACd,OAAO,EACP,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,GAAG,EACH,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,GAAG,EACH,SAAS,EACT,QAAQ,EACR,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,MAAM,EACN,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,IAAI,EACJ,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,aAAa,EACb,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,WAAW,EACX,GAAG,EACH,GAAG,EACH,IAAI,EACJ,KAAK,EACL,WAAW,EACX,SAAS,EACT,MAAM,EACN,IAAI,GACL,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-vite-react-dom-client.js","sourceRoot":"","sources":["../src/epos-vite-react-dom-client.js"],"names":[],"mappings":"AAAA,eAAe,IAAI,CAAC,IAAI,CAAC,cAAc,CAAA;AACvC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-vite-react-dom.js","sourceRoot":"","sources":["../src/epos-vite-react-dom.js"],"names":[],"mappings":"AAAA,eAAe,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA;AACjC,MAAM,CAAC,MAAM,EACX,YAAY,EACZ,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,YAAY,EACZ,aAAa,EACb,OAAO,GACR,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-vite-react-jsx-runtime.js","sourceRoot":"","sources":["../src/epos-vite-react-jsx-runtime.js"],"names":[],"mappings":"AAAA,eAAe,IAAI,CAAC,IAAI,CAAC,eAAe,CAAA;AACxC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-vite-react.js","sourceRoot":"","sources":["../src/epos-vite-react.js"],"names":[],"mappings":"AAAA,eAAe,IAAI,CAAC,IAAI,CAAC,KAAK,CAAA;AAC9B,MAAM,CAAC,MAAM,EACX,GAAG,EACH,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,aAAa,EACb,aAAa,EACb,SAAS,EACT,UAAU,EACV,QAAQ,EACR,cAAc,EACd,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,eAAe,EACf,UAAU,EACV,QAAQ,EACR,GAAG,EACH,cAAc,EACd,WAAW,EACX,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,aAAa,EACb,UAAU,EACV,MAAM,EACN,QAAQ,EACR,oBAAoB,EACpB,aAAa,EACb,OAAO,GACR,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAA"}
package/dist/epos-vite.js DELETED
@@ -1,20 +0,0 @@
1
- import { resolve } from 'node:path';
2
- const libs = {
3
- 'react': resolve(import.meta.dirname, './epos-vite-react.js'),
4
- 'react/jsx-runtime': resolve(import.meta.dirname, './epos-vite-react-jsx-runtime.js'),
5
- 'react-dom': resolve(import.meta.dirname, './epos-vite-react-dom.js'),
6
- 'react-dom/client': resolve(import.meta.dirname, './epos-vite-react-dom-client.js'),
7
- 'mobx': resolve(import.meta.dirname, './epos-vite-mobx.js'),
8
- 'mobx-react-lite': resolve(import.meta.dirname, './epos-vite-mobx-react-lite.js'),
9
- };
10
- export function epos() {
11
- return {
12
- name: 'epos',
13
- enforce: 'pre',
14
- resolveId(source) {
15
- return libs[source] ?? null;
16
- },
17
- };
18
- }
19
- export default epos;
20
- //# sourceMappingURL=epos-vite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"epos-vite.js","sourceRoot":"","sources":["../src/epos-vite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,MAAM,IAAI,GAA2B;IACnC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC;IAC7D,mBAAmB,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,kCAAkC,CAAC;IACrF,WAAW,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,0BAA0B,CAAC;IACrE,kBAAkB,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,iCAAiC,CAAC;IACnF,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC;IAC3D,iBAAiB,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,gCAAgC,CAAC;CAClF,CAAA;AAED,MAAM,UAAU,IAAI,GAAW;IAC7B,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,KAAK;QACd,SAAS,CAAC,MAAM,EAAE;YAChB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAA;QAAA,CAC5B;KACF,CAAA;AAAA,CACF;AAED,eAAe,IAAI,CAAA"}
File without changes
File without changes