@multiplatform.one/frappe 7.11.0 → 7.15.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/README.md +1 -1
- package/dist/cjs/auth.native.js.map +1 -1
- package/dist/cjs/call.native.js.map +1 -1
- package/dist/cjs/collection.native.js.map +1 -1
- package/dist/cjs/common/types.native.js.map +1 -1
- package/dist/cjs/core/http.native.js.map +1 -1
- package/dist/cjs/core/types.native.js.map +1 -1
- package/dist/cjs/core/wire.native.js.map +1 -1
- package/dist/cjs/db.native.js.map +1 -1
- package/dist/cjs/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
- package/dist/cjs/devtools/index.native.js.map +1 -1
- package/dist/cjs/devtools/plugin.native.js.map +1 -1
- package/dist/cjs/devtools/theme.native.js.map +1 -1
- package/dist/cjs/doctype.cjs +25 -43
- package/dist/cjs/doctype.native.js +27 -43
- package/dist/cjs/doctype.native.js.map +1 -1
- package/dist/cjs/file.native.js.map +1 -1
- package/dist/cjs/fixtureDb.native.js.map +1 -1
- package/dist/cjs/fixtures.cjs +3 -0
- package/dist/cjs/fixtures.native.js +3 -0
- package/dist/cjs/fixtures.native.js.map +1 -1
- package/dist/cjs/frappeApp.native.js.map +1 -1
- package/dist/cjs/frappeReact.cjs +13 -1
- package/dist/cjs/frappeReact.native.js +20 -2
- package/dist/cjs/frappeReact.native.js.map +1 -1
- package/dist/cjs/index.cjs +6 -0
- package/dist/cjs/index.native.js +8 -2
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/optimistic.native.js.map +1 -1
- package/dist/cjs/pacer.native.js.map +1 -1
- package/dist/cjs/plugin/index.native.js.map +1 -1
- package/dist/cjs/realtime.native.js.map +1 -1
- package/dist/cjs/serverLoaders.cjs +74 -0
- package/dist/cjs/serverLoaders.native.js +88 -0
- package/dist/cjs/serverLoaders.native.js.map +1 -0
- package/dist/cjs/sync/backfill.native.js.map +1 -1
- package/dist/cjs/sync/filters.native.js.map +1 -1
- package/dist/cjs/sync/index.cjs +8 -0
- package/dist/cjs/sync/index.native.js +10 -0
- package/dist/cjs/sync/index.native.js.map +1 -1
- package/dist/cjs/sync/merge.native.js.map +1 -1
- package/dist/cjs/sync/mutationEngine.native.js.map +1 -1
- package/dist/cjs/sync/mutationJournal.native.js.map +1 -1
- package/dist/cjs/sync/normalizedCache.native.js.map +1 -1
- package/dist/cjs/sync/persistence.native.js.map +1 -1
- package/dist/cjs/sync/realtime.native.js.map +1 -1
- package/dist/cjs/sync/rehydration.cjs +4 -0
- package/dist/cjs/sync/rehydration.native.js +6 -0
- package/dist/cjs/sync/rehydration.native.js.map +1 -1
- package/dist/cjs/sync/storage.native.js.map +1 -1
- package/dist/cjs/sync/subscriptionManager.native.js.map +1 -1
- package/dist/cjs/sync/types.native.js.map +1 -1
- package/dist/cjs/sync/virtualPageManager.native.js.map +1 -1
- package/dist/cjs/syncOptionsKey.native.js.map +1 -1
- package/dist/cjs/useLiveQuery.cjs +2 -20
- package/dist/cjs/useLiveQuery.native.js +1 -22
- package/dist/cjs/useLiveQuery.native.js.map +1 -1
- package/dist/cjs/util.native.js.map +1 -1
- package/dist/esm/auth.native.js.map +1 -1
- package/dist/esm/call.native.js.map +1 -1
- package/dist/esm/collection.native.js.map +1 -1
- package/dist/esm/common/types.native.js.map +1 -1
- package/dist/esm/core/http.native.js.map +1 -1
- package/dist/esm/core/types.native.js.map +1 -1
- package/dist/esm/core/wire.native.js.map +1 -1
- package/dist/esm/db.native.js.map +1 -1
- package/dist/esm/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
- package/dist/esm/devtools/index.native.js.map +1 -1
- package/dist/esm/devtools/plugin.native.js.map +1 -1
- package/dist/esm/devtools/theme.native.js.map +1 -1
- package/dist/esm/doctype.mjs +23 -44
- package/dist/esm/doctype.mjs.map +1 -1
- package/dist/esm/doctype.native.js +25 -44
- package/dist/esm/doctype.native.js.map +1 -1
- package/dist/esm/file.native.js.map +1 -1
- package/dist/esm/fixtureDb.native.js.map +1 -1
- package/dist/esm/fixtures.mjs +3 -0
- package/dist/esm/fixtures.mjs.map +1 -1
- package/dist/esm/fixtures.native.js +3 -0
- package/dist/esm/fixtures.native.js.map +1 -1
- package/dist/esm/frappeApp.native.js.map +1 -1
- package/dist/esm/frappeReact.mjs +13 -1
- package/dist/esm/frappeReact.mjs.map +1 -1
- package/dist/esm/frappeReact.native.js +19 -1
- package/dist/esm/frappeReact.native.js.map +1 -1
- package/dist/esm/index.mjs +3 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +3 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/optimistic.native.js.map +1 -1
- package/dist/esm/pacer.native.js.map +1 -1
- package/dist/esm/plugin/index.native.js.map +1 -1
- package/dist/esm/realtime.native.js.map +1 -1
- package/dist/esm/serverLoaders.mjs +48 -0
- package/dist/esm/serverLoaders.mjs.map +1 -0
- package/dist/esm/serverLoaders.native.js +59 -0
- package/dist/esm/serverLoaders.native.js.map +1 -0
- package/dist/esm/sync/backfill.native.js.map +1 -1
- package/dist/esm/sync/filters.native.js.map +1 -1
- package/dist/esm/sync/index.mjs +8 -0
- package/dist/esm/sync/index.mjs.map +1 -1
- package/dist/esm/sync/index.native.js +10 -0
- package/dist/esm/sync/index.native.js.map +1 -1
- package/dist/esm/sync/merge.native.js.map +1 -1
- package/dist/esm/sync/mutationEngine.native.js.map +1 -1
- package/dist/esm/sync/mutationJournal.native.js.map +1 -1
- package/dist/esm/sync/normalizedCache.native.js.map +1 -1
- package/dist/esm/sync/persistence.native.js.map +1 -1
- package/dist/esm/sync/realtime.native.js.map +1 -1
- package/dist/esm/sync/rehydration.mjs +4 -0
- package/dist/esm/sync/rehydration.mjs.map +1 -1
- package/dist/esm/sync/rehydration.native.js +6 -0
- package/dist/esm/sync/rehydration.native.js.map +1 -1
- package/dist/esm/sync/storage.native.js.map +1 -1
- package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
- package/dist/esm/sync/types.native.js.map +1 -1
- package/dist/esm/sync/virtualPageManager.native.js.map +1 -1
- package/dist/esm/syncOptionsKey.native.js.map +1 -1
- package/dist/esm/useLiveQuery.mjs +1 -19
- package/dist/esm/useLiveQuery.mjs.map +1 -1
- package/dist/esm/useLiveQuery.native.js +1 -22
- package/dist/esm/useLiveQuery.native.js.map +1 -1
- package/dist/esm/util.native.js.map +1 -1
- package/dist/jsx/auth.native.js.map +1 -1
- package/dist/jsx/call.native.js.map +1 -1
- package/dist/jsx/collection.native.js.map +1 -1
- package/dist/jsx/common/types.native.js.map +1 -1
- package/dist/jsx/core/http.native.js.map +1 -1
- package/dist/jsx/core/types.native.js.map +1 -1
- package/dist/jsx/core/wire.native.js.map +1 -1
- package/dist/jsx/db.native.js.map +1 -1
- package/dist/jsx/devtools/FrappeDevtoolsPanel.native.js.map +1 -1
- package/dist/jsx/devtools/index.native.js.map +1 -1
- package/dist/jsx/devtools/plugin.native.js.map +1 -1
- package/dist/jsx/devtools/theme.native.js.map +1 -1
- package/dist/jsx/doctype.mjs +23 -44
- package/dist/jsx/doctype.mjs.map +1 -1
- package/dist/jsx/doctype.native.js +27 -43
- package/dist/jsx/doctype.native.js.map +1 -1
- package/dist/jsx/file.native.js.map +1 -1
- package/dist/jsx/fixtureDb.native.js.map +1 -1
- package/dist/jsx/fixtures.mjs +3 -0
- package/dist/jsx/fixtures.mjs.map +1 -1
- package/dist/jsx/fixtures.native.js +3 -0
- package/dist/jsx/fixtures.native.js.map +1 -1
- package/dist/jsx/frappeApp.native.js.map +1 -1
- package/dist/jsx/frappeReact.mjs +13 -1
- package/dist/jsx/frappeReact.mjs.map +1 -1
- package/dist/jsx/frappeReact.native.js +20 -2
- package/dist/jsx/frappeReact.native.js.map +1 -1
- package/dist/jsx/index.js +3 -2
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +3 -2
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +8 -2
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/optimistic.native.js.map +1 -1
- package/dist/jsx/pacer.native.js.map +1 -1
- package/dist/jsx/plugin/index.native.js.map +1 -1
- package/dist/jsx/realtime.native.js.map +1 -1
- package/dist/jsx/serverLoaders.mjs +48 -0
- package/dist/jsx/serverLoaders.mjs.map +1 -0
- package/dist/jsx/serverLoaders.native.js +88 -0
- package/dist/jsx/serverLoaders.native.js.map +1 -0
- package/dist/jsx/sync/backfill.native.js.map +1 -1
- package/dist/jsx/sync/filters.native.js.map +1 -1
- package/dist/jsx/sync/index.mjs +8 -0
- package/dist/jsx/sync/index.mjs.map +1 -1
- package/dist/jsx/sync/index.native.js +10 -0
- package/dist/jsx/sync/index.native.js.map +1 -1
- package/dist/jsx/sync/merge.native.js.map +1 -1
- package/dist/jsx/sync/mutationEngine.native.js.map +1 -1
- package/dist/jsx/sync/mutationJournal.native.js.map +1 -1
- package/dist/jsx/sync/normalizedCache.native.js.map +1 -1
- package/dist/jsx/sync/persistence.native.js.map +1 -1
- package/dist/jsx/sync/realtime.native.js.map +1 -1
- package/dist/jsx/sync/rehydration.mjs +4 -0
- package/dist/jsx/sync/rehydration.mjs.map +1 -1
- package/dist/jsx/sync/rehydration.native.js +6 -0
- package/dist/jsx/sync/rehydration.native.js.map +1 -1
- package/dist/jsx/sync/storage.native.js.map +1 -1
- package/dist/jsx/sync/subscriptionManager.native.js.map +1 -1
- package/dist/jsx/sync/types.native.js.map +1 -1
- package/dist/jsx/sync/virtualPageManager.native.js.map +1 -1
- package/dist/jsx/syncOptionsKey.native.js.map +1 -1
- package/dist/jsx/useLiveQuery.mjs +1 -19
- package/dist/jsx/useLiveQuery.mjs.map +1 -1
- package/dist/jsx/useLiveQuery.native.js +1 -22
- package/dist/jsx/useLiveQuery.native.js.map +1 -1
- package/dist/jsx/util.native.js.map +1 -1
- package/package.json +9 -9
- package/src/doctype.spec.ts +148 -5
- package/src/doctype.ts +202 -173
- package/src/fixtures.ts +1 -0
- package/src/frappeReact.hydration.spec.tsx +164 -0
- package/src/frappeReact.spec.ts +56 -0
- package/src/frappeReact.ts +31 -5
- package/src/index.ts +11 -0
- package/src/serverLoaders.ts +77 -0
- package/src/sync/index.ts +9 -0
- package/src/sync/rehydration.ts +5 -0
- package/src/sync/syncModule.spec.ts +20 -0
- package/src/useLiveQuery.hydration.spec.tsx +129 -0
- package/src/useLiveQuery.spec.ts +3 -11
- package/src/useLiveQuery.ts +3 -57
- package/types/doctype.d.ts +117 -33
- package/types/doctype.d.ts.map +1 -1
- package/types/fixtures.d.ts.map +1 -1
- package/types/frappeReact.d.ts +3 -2
- package/types/frappeReact.d.ts.map +1 -1
- package/types/index.d.ts +3 -2
- package/types/index.d.ts.map +1 -1
- package/types/serverLoaders.d.ts +40 -0
- package/types/serverLoaders.d.ts.map +1 -0
- package/types/sync/index.d.ts +6 -0
- package/types/sync/index.d.ts.map +1 -1
- package/types/sync/rehydration.d.ts +2 -0
- package/types/sync/rehydration.d.ts.map +1 -1
- package/types/useLiveQuery.d.ts +3 -13
- package/types/useLiveQuery.d.ts.map +1 -1
package/dist/esm/index.native.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { FrappeApp } from "./frappeApp.native.js";
|
|
2
|
+
import { loadDoc, loadDocList } from "./serverLoaders.native.js";
|
|
2
3
|
import { AuthModule } from "./auth.native.js";
|
|
3
4
|
import { CallModule } from "./call.native.js";
|
|
4
5
|
import { DbModule } from "./db.native.js";
|
|
@@ -16,11 +17,11 @@ import { Debouncer, AsyncDebouncer, Throttler, AsyncThrottler, RateLimiter, Asyn
|
|
|
16
17
|
export * from "./fixtures.native.js";
|
|
17
18
|
import { HttpClient, getCookie, setCookie, deleteCookie, setSSRCookies, clearSSRCookies, invalidateCookieCache } from "./core/http.native.js";
|
|
18
19
|
import { FrappeError } from "./core/types.native.js";
|
|
19
|
-
import { useDocTypeMeta, useLinkSearch, useLinkTitle, useDocTypeSearch, parseDependsOn, parseFormLayout } from "./doctype.native.js";
|
|
20
|
+
import { useDocTypeMeta, useLinkSearch, useLinkTitle, useDocTypeSearch, parseDependsOn, parseFormLayout, stockFieldTypes, customFieldTypes, frappeFieldTypes } from "./doctype.native.js";
|
|
20
21
|
import { defaultPageLength, Order, Operation } from "./sync/types.native.js";
|
|
21
22
|
import { MergeStrategy, FieldMergeStrategy } from "./sync/merge.native.js";
|
|
22
23
|
import { matchesFilters, validateFilters, normalizeFilters, extractFilterFields, extractSingleName, formatFilter, hasServerOnlyOperators, canEvaluateClientSide, isTreeOperator, getClientEvaluationBlockers, FilterOperator } from "./sync/filters.native.js";
|
|
23
24
|
import { TreeDbModule } from "./db.native.js";
|
|
24
25
|
import { default as default2 } from "./plugin/index.native.js";
|
|
25
|
-
export { AsyncBatcher, AsyncDebouncer, AsyncQueuer, AsyncRateLimiter, AsyncThrottler, AuthModule, Batcher, CallModule, DbModule, Debouncer, FieldMergeStrategy, FileModule, FilterOperator, FrappeApp, FrappeError, HttpClient, MergeStrategy, OPTIMISTIC_TEMP_PREFIX, Operation, Order, Queuer, RateLimiter, RealtimeModule, RealtimePlatform, SyncModule, Throttler, TreeDbModule, __getActiveSyncModule, and, asyncBatch, asyncDebounce, asyncQueue, asyncRateLimit, asyncThrottle, avg, batch, canEvaluateClientSide, clearSSRCookies, count, createCollection, createFixtureCollection, createFrappeCollection, createOptimisticAction, createRateLimitedBatch, createTransaction, debounce, defaultPageLength, deleteCookie, eq, extractFilterFields, extractSingleName, fixtureCollectionOptions, formatFilter, frappeCollectionOptions, default2 as frappePlugin, getClientEvaluationBlockers, getCookie, getFrappeSyncModule, gt, gte, hasServerOnlyOperators, ilike, inArray, invalidateCookieCache, isNull, isOptimisticTempId, isTreeOperator, isUndefined, like, lt, lte, matchesFilters, max, min, newOptimisticTempId, normalizeFilters, not, or, parseDependsOn, parseFormLayout, queue, rateLimit, runOptimisticRpc, setCookie, setSSRCookies, sum, throttle, useDebouncedSearch, useDocTypeMeta, useDocTypeSearch, useFrappeCatchUp, useFrappeCollection, useFrappeConnection, useFrappeDoctypeEvents, useFrappeInfiniteList, useFrappePendingMutations, useInfiniteScroll, useLinkSearch, useLinkTitle, useLiveQuery, useThrottledPagination, validateFilters };
|
|
26
|
+
export { AsyncBatcher, AsyncDebouncer, AsyncQueuer, AsyncRateLimiter, AsyncThrottler, AuthModule, Batcher, CallModule, DbModule, Debouncer, FieldMergeStrategy, FileModule, FilterOperator, FrappeApp, FrappeError, HttpClient, MergeStrategy, OPTIMISTIC_TEMP_PREFIX, Operation, Order, Queuer, RateLimiter, RealtimeModule, RealtimePlatform, SyncModule, Throttler, TreeDbModule, __getActiveSyncModule, and, asyncBatch, asyncDebounce, asyncQueue, asyncRateLimit, asyncThrottle, avg, batch, canEvaluateClientSide, clearSSRCookies, count, createCollection, createFixtureCollection, createFrappeCollection, createOptimisticAction, createRateLimitedBatch, createTransaction, customFieldTypes, debounce, defaultPageLength, deleteCookie, eq, extractFilterFields, extractSingleName, fixtureCollectionOptions, formatFilter, frappeCollectionOptions, frappeFieldTypes, default2 as frappePlugin, getClientEvaluationBlockers, getCookie, getFrappeSyncModule, gt, gte, hasServerOnlyOperators, ilike, inArray, invalidateCookieCache, isNull, isOptimisticTempId, isTreeOperator, isUndefined, like, loadDoc, loadDocList, lt, lte, matchesFilters, max, min, newOptimisticTempId, normalizeFilters, not, or, parseDependsOn, parseFormLayout, queue, rateLimit, runOptimisticRpc, setCookie, setSSRCookies, stockFieldTypes, sum, throttle, useDebouncedSearch, useDocTypeMeta, useDocTypeSearch, useFrappeCatchUp, useFrappeCollection, useFrappeConnection, useFrappeDoctypeEvents, useFrappeInfiniteList, useFrappePendingMutations, useInfiniteScroll, useLinkSearch, useLinkTitle, useLiveQuery, useThrottledPagination, validateFilters };
|
|
26
27
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FrappeApp","AuthModule","CallModule","DbModule","FileModule","RealtimeModule","RealtimePlatform","SyncModule","createFrappeCollection","frappeCollectionOptions","createFixtureCollection","fixtureCollectionOptions","createOptimisticAction","isOptimisticTempId","newOptimisticTempId","OPTIMISTIC_TEMP_PREFIX","runOptimisticRpc","useFrappeCollection","useFrappeCatchUp","useFrappeConnection","useFrappeDoctypeEvents","useFrappePendingMutations","useInfiniteScroll","useFrappeInfiniteList","getFrappeSyncModule","__getActiveSyncModule","useDebouncedSearch","useThrottledPagination","createRateLimitedBatch","useLiveQuery","createCollection","createTransaction","eq","gt","gte","lt","lte","and","or","not","inArray","like","ilike","isUndefined","isNull","count","avg","sum","min","max","Debouncer","AsyncDebouncer","Throttler","AsyncThrottler","RateLimiter","AsyncRateLimiter","Queuer","AsyncQueuer","Batcher","AsyncBatcher","debounce","asyncDebounce","throttle","asyncThrottle","rateLimit","asyncRateLimit","queue","asyncQueue","batch","asyncBatch","HttpClient","getCookie","setCookie","deleteCookie","setSSRCookies","clearSSRCookies","invalidateCookieCache","FrappeError","useDocTypeMeta","useLinkSearch","useLinkTitle","useDocTypeSearch","parseDependsOn","parseFormLayout","defaultPageLength","Order","Operation","MergeStrategy","FieldMergeStrategy","matchesFilters","validateFilters","normalizeFilters","extractFilterFields","extractSingleName","formatFilter","hasServerOnlyOperators","canEvaluateClientSide","isTreeOperator","getClientEvaluationBlockers","FilterOperator","TreeDbModule","default","default2","frappePlugin"],"sources":["
|
|
1
|
+
{"version":3,"names":["FrappeApp","loadDoc","loadDocList","AuthModule","CallModule","DbModule","FileModule","RealtimeModule","RealtimePlatform","SyncModule","createFrappeCollection","frappeCollectionOptions","createFixtureCollection","fixtureCollectionOptions","createOptimisticAction","isOptimisticTempId","newOptimisticTempId","OPTIMISTIC_TEMP_PREFIX","runOptimisticRpc","useFrappeCollection","useFrappeCatchUp","useFrappeConnection","useFrappeDoctypeEvents","useFrappePendingMutations","useInfiniteScroll","useFrappeInfiniteList","getFrappeSyncModule","__getActiveSyncModule","useDebouncedSearch","useThrottledPagination","createRateLimitedBatch","useLiveQuery","createCollection","createTransaction","eq","gt","gte","lt","lte","and","or","not","inArray","like","ilike","isUndefined","isNull","count","avg","sum","min","max","Debouncer","AsyncDebouncer","Throttler","AsyncThrottler","RateLimiter","AsyncRateLimiter","Queuer","AsyncQueuer","Batcher","AsyncBatcher","debounce","asyncDebounce","throttle","asyncThrottle","rateLimit","asyncRateLimit","queue","asyncQueue","batch","asyncBatch","HttpClient","getCookie","setCookie","deleteCookie","setSSRCookies","clearSSRCookies","invalidateCookieCache","FrappeError","useDocTypeMeta","useLinkSearch","useLinkTitle","useDocTypeSearch","parseDependsOn","parseFormLayout","stockFieldTypes","customFieldTypes","frappeFieldTypes","defaultPageLength","Order","Operation","MergeStrategy","FieldMergeStrategy","matchesFilters","validateFilters","normalizeFilters","extractFilterFields","extractSingleName","formatFilter","hasServerOnlyOperators","canEvaluateClientSide","isTreeOperator","getClientEvaluationBlockers","FilterOperator","TreeDbModule","default","default2","frappePlugin"],"sources":["index.native.js"],"sourcesContent":["import { FrappeApp } from \"./frappeApp\";\nimport { loadDoc, loadDocList } from \"./serverLoaders\";\nimport { AuthModule } from \"./auth\";\nimport { CallModule } from \"./call\";\nimport { DbModule } from \"./db\";\nimport { FileModule } from \"./file\";\nimport { RealtimeModule, RealtimePlatform } from \"./realtime\";\nimport { SyncModule } from \"./sync\";\nimport { createFrappeCollection, frappeCollectionOptions, createFixtureCollection, fixtureCollectionOptions } from \"./collection\";\nimport { createOptimisticAction, isOptimisticTempId, newOptimisticTempId, OPTIMISTIC_TEMP_PREFIX, runOptimisticRpc } from \"./optimistic\";\nimport { useFrappeCollection, useFrappeCatchUp, useFrappeConnection, useFrappeDoctypeEvents, useFrappePendingMutations, useInfiniteScroll, useFrappeInfiniteList, getFrappeSyncModule, __getActiveSyncModule } from \"./frappeReact\";\nimport { useDebouncedSearch, useThrottledPagination, createRateLimitedBatch } from \"./pacer\";\nimport { useLiveQuery } from \"./useLiveQuery\";\nimport { createCollection, createTransaction } from \"@tanstack/db\";\nimport { eq, gt, gte, lt, lte, and, or, not, inArray, like, ilike, isUndefined, isNull, count, avg, sum, min, max } from \"@tanstack/db\";\nimport { Debouncer, AsyncDebouncer, Throttler, AsyncThrottler, RateLimiter, AsyncRateLimiter, Queuer, AsyncQueuer, Batcher, AsyncBatcher, debounce, asyncDebounce, throttle, asyncThrottle, rateLimit, asyncRateLimit, queue, asyncQueue, batch, asyncBatch } from \"@tanstack/pacer\";\nexport * from \"./fixtures\";\nimport { HttpClient, getCookie, setCookie, deleteCookie, setSSRCookies, clearSSRCookies, invalidateCookieCache } from \"./core/http\";\nimport { FrappeError } from \"./core/types\";\nimport { useDocTypeMeta, useLinkSearch, useLinkTitle, useDocTypeSearch, parseDependsOn, parseFormLayout, stockFieldTypes, customFieldTypes, frappeFieldTypes } from \"./doctype\";\nimport { defaultPageLength, Order, Operation } from \"./sync/types\";\nimport { MergeStrategy, FieldMergeStrategy } from \"./sync/merge\";\nimport { matchesFilters, validateFilters, normalizeFilters, extractFilterFields, extractSingleName, formatFilter, hasServerOnlyOperators, canEvaluateClientSide, isTreeOperator, getClientEvaluationBlockers, FilterOperator } from \"./sync/filters\";\nimport { TreeDbModule } from \"./db\";\nimport { default as default2 } from \"./plugin\";\nexport {\n AsyncBatcher,\n AsyncDebouncer,\n AsyncQueuer,\n AsyncRateLimiter,\n AsyncThrottler,\n AuthModule,\n Batcher,\n CallModule,\n DbModule,\n Debouncer,\n FieldMergeStrategy,\n FileModule,\n FilterOperator,\n FrappeApp,\n FrappeError,\n HttpClient,\n MergeStrategy,\n OPTIMISTIC_TEMP_PREFIX,\n Operation,\n Order,\n Queuer,\n RateLimiter,\n RealtimeModule,\n RealtimePlatform,\n SyncModule,\n Throttler,\n TreeDbModule,\n __getActiveSyncModule,\n and,\n asyncBatch,\n asyncDebounce,\n asyncQueue,\n asyncRateLimit,\n asyncThrottle,\n avg,\n batch,\n canEvaluateClientSide,\n clearSSRCookies,\n count,\n createCollection,\n createFixtureCollection,\n createFrappeCollection,\n createOptimisticAction,\n createRateLimitedBatch,\n createTransaction,\n customFieldTypes,\n debounce,\n defaultPageLength,\n deleteCookie,\n eq,\n extractFilterFields,\n extractSingleName,\n fixtureCollectionOptions,\n formatFilter,\n frappeCollectionOptions,\n frappeFieldTypes,\n default2 as frappePlugin,\n getClientEvaluationBlockers,\n getCookie,\n getFrappeSyncModule,\n gt,\n gte,\n hasServerOnlyOperators,\n ilike,\n inArray,\n invalidateCookieCache,\n isNull,\n isOptimisticTempId,\n isTreeOperator,\n isUndefined,\n like,\n loadDoc,\n loadDocList,\n lt,\n lte,\n matchesFilters,\n max,\n min,\n newOptimisticTempId,\n normalizeFilters,\n not,\n or,\n parseDependsOn,\n parseFormLayout,\n queue,\n rateLimit,\n runOptimisticRpc,\n setCookie,\n setSSRCookies,\n stockFieldTypes,\n sum,\n throttle,\n useDebouncedSearch,\n useDocTypeMeta,\n useDocTypeSearch,\n useFrappeCatchUp,\n useFrappeCollection,\n useFrappeConnection,\n useFrappeDoctypeEvents,\n useFrappeInfiniteList,\n useFrappePendingMutations,\n useInfiniteScroll,\n useLinkSearch,\n useLinkTitle,\n useLiveQuery,\n useThrottledPagination,\n validateFilters\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createOptimisticAction","tanstackCreateOptimisticAction","OPTIMISTIC_TEMP_PREFIX","newOptimisticTempId","id","crypto","randomUUID","Math","random","toString","slice","isOptimisticTempId","name","startsWith","runOptimisticRpc","options","_options_apply","ctx","tempId","undo","apply","_options_reconcile","ack","send","reconcile","call","error","_options_onError"],"sources":["
|
|
1
|
+
{"version":3,"names":["createOptimisticAction","tanstackCreateOptimisticAction","OPTIMISTIC_TEMP_PREFIX","newOptimisticTempId","id","crypto","randomUUID","Math","random","toString","slice","isOptimisticTempId","name","startsWith","runOptimisticRpc","options","_options_apply","ctx","tempId","undo","apply","_options_reconcile","ack","send","reconcile","call","error","_options_onError","onError"],"sources":["optimistic.native.js"],"sourcesContent":["import { createOptimisticAction as tanstackCreateOptimisticAction } from \"@tanstack/db\";\nvar OPTIMISTIC_TEMP_PREFIX = \"tmp_\";\nfunction newOptimisticTempId() {\n var id = typeof crypto !== \"undefined\" && \"randomUUID\" in crypto ? crypto.randomUUID() : Math.random().toString(36).slice(2);\n return `${OPTIMISTIC_TEMP_PREFIX}${id}`;\n}\nfunction isOptimisticTempId(name) {\n return typeof name === \"string\" && name.startsWith(OPTIMISTIC_TEMP_PREFIX);\n}\nasync function runOptimisticRpc(options) {\n var _options_apply;\n var ctx = {\n tempId: newOptimisticTempId()\n };\n var undo = (_options_apply = options.apply(ctx)) !== null && _options_apply !== void 0 ? _options_apply : void 0;\n try {\n var _options_reconcile;\n var ack = await options.send(ctx);\n (_options_reconcile = options.reconcile) === null || _options_reconcile === void 0 ? void 0 : _options_reconcile.call(options, ack, ctx);\n return ack;\n } catch (error) {\n try {\n undo === null || undo === void 0 ? void 0 : undo();\n } finally {\n var _options_onError;\n (_options_onError = options.onError) === null || _options_onError === void 0 ? void 0 : _options_onError.call(options, error, ctx);\n }\n throw error;\n }\n}\nexport {\n OPTIMISTIC_TEMP_PREFIX,\n tanstackCreateOptimisticAction as createOptimisticAction,\n isOptimisticTempId,\n newOptimisticTempId,\n runOptimisticRpc\n};\n//# sourceMappingURL=optimistic.js.map\n"],"mappings":"AAAA,SAASA,sBAAsB,IAAIC,8BAA8B,QAAQ,cAAc;AACvF,IAAIC,sBAAsB,GAAG,MAAM;AACnC,SAASC,mBAAmBA,CAAA,EAAG;EAC7B,IAAIC,EAAE,GAAG,OAAOC,MAAM,KAAK,WAAW,IAAI,YAAY,IAAIA,MAAM,GAAGA,MAAM,CAACC,UAAU,CAAC,CAAC,GAAGC,IAAI,CAACC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAACC,KAAK,CAAC,CAAC,CAAC;EAC5H,OAAO,GAAGR,sBAAsB,GAAGE,EAAE,EAAE;AACzC;AACA,SAASO,kBAAkBA,CAACC,IAAI,EAAE;EAChC,OAAO,OAAOA,IAAI,KAAK,QAAQ,IAAIA,IAAI,CAACC,UAAU,CAACX,sBAAsB,CAAC;AAC5E;AACA,eAAeY,gBAAgBA,CAACC,OAAO,EAAE;EACvC,IAAIC,cAAc;EAClB,IAAIC,GAAG,GAAG;IACRC,MAAM,EAAEf,mBAAmB,CAAC;EAC9B,CAAC;EACD,IAAIgB,IAAI,GAAG,CAACH,cAAc,GAAGD,OAAO,CAACK,KAAK,CAACH,GAAG,CAAC,MAAM,IAAI,IAAID,cAAc,KAAK,KAAK,CAAC,GAAGA,cAAc,GAAG,KAAK,CAAC;EAChH,IAAI;IACF,IAAIK,kBAAkB;IACtB,IAAIC,GAAG,GAAG,MAAMP,OAAO,CAACQ,IAAI,CAACN,GAAG,CAAC;IACjC,CAACI,kBAAkB,GAAGN,OAAO,CAACS,SAAS,MAAM,IAAI,IAAIH,kBAAkB,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,kBAAkB,CAACI,IAAI,CAACV,OAAO,EAAEO,GAAG,EAAEL,GAAG,CAAC;IACxI,OAAOK,GAAG;EACZ,CAAC,CAAC,OAAOI,KAAK,EAAE;IACd,IAAI;MACFP,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAAC,CAAC;IACpD,CAAC,SAAS;MACR,IAAIQ,gBAAgB;MACpB,CAACA,gBAAgB,GAAGZ,OAAO,CAACa,OAAO,MAAM,IAAI,IAAID,gBAAgB,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,gBAAgB,CAACF,IAAI,CAACV,OAAO,EAAEW,KAAK,EAAET,GAAG,CAAC;IACpI;IACA,MAAMS,KAAK;EACb;AACF;AACA,SACExB,sBAAsB,EACtBD,8BAA8B,IAAID,sBAAsB,EACxDW,kBAAkB,EAClBR,mBAAmB,EACnBW,gBAAgB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AsyncRateLimiter","useLiveQuery","useAsyncDebouncer","useThrottledCallback","useCallback","useMemo","useRef","useState","DbModule","HttpClient","Operation","createDbModule","config","baseURL","authConfig","auth","useToken","token","type","useDebouncedSearch","doctype","options","_ref","_ref1","_ref2","_ref3","_ref4","_config_auth","wait","fields","limit","minLength","additionalFilters","filters","searchField","query","setQueryState","results","setResults","isSearching","setIsSearching","dbRef","configKeyRef","configKey","current","debouncer","searchQuery","db","length","searchFilters","Array","isArray","push","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","Symbol","iterator","_step","next","done","key","value","err","return","docs","getDocList","error","console","setQuery","newQuery","cancel","maybeExecute","useThrottledPagination","collection","pageSize","throttleMs","visibleCount","setVisibleCount","liveResult","q","from","_items","allItems","data","items","slice","hasMore","isLoading","throttledLoadMore","prev","loadMore"],"sources":["../../src/pacer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["AsyncRateLimiter","useLiveQuery","useAsyncDebouncer","useThrottledCallback","useCallback","useMemo","useRef","useState","DbModule","HttpClient","Operation","createDbModule","config","baseURL","authConfig","auth","useToken","token","type","useDebouncedSearch","doctype","options","_ref","_ref1","_ref2","_ref3","_ref4","_config_auth","wait","fields","limit","minLength","additionalFilters","filters","searchField","query","setQueryState","results","setResults","isSearching","setIsSearching","dbRef","configKeyRef","configKey","current","debouncer","searchQuery","db","length","searchFilters","Array","isArray","push","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","Symbol","iterator","_step","next","done","key","value","err","return","docs","getDocList","error","console","setQuery","newQuery","cancel","maybeExecute","useThrottledPagination","collection","pageSize","throttleMs","visibleCount","setVisibleCount","liveResult","q","from","_items","allItems","data","items","slice","hasMore","isLoading","throttledLoadMore","prev","loadMore","createRateLimitedBatch","operation","maxPerSecond","batchSize","syncModule","queue","operationMap","create","Create","update","Update","delete","Delete","add","name","execute","callbacks","total","completed","batches","i","rateLimiter","batch2","mutations","map","item","_crypto_randomUUID","_crypto","mutationId","crypto","randomUUID","call","Math","random","toString","substring","doc","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","mutation","_callbacks_onProgress","mutate","onProgress","window","batch"],"sources":["pacer.native.js"],"sourcesContent":["import { AsyncRateLimiter } from \"@tanstack/pacer\";\nimport { useLiveQuery } from \"./useLiveQuery\";\nimport { useAsyncDebouncer, useThrottledCallback } from \"@tanstack/react-pacer\";\nimport { useCallback, useMemo, useRef, useState } from \"react\";\nimport { DbModule } from \"./db\";\nimport { HttpClient } from \"./core/http\";\nimport { Operation } from \"./sync/types\";\nfunction createDbModule(config) {\n if (!config.baseURL) return void 0;\n var authConfig = config.auth ? {\n useToken: config.auth.useToken,\n token: config.auth.token,\n type: config.auth.type\n } : void 0;\n return new DbModule(new HttpClient(config.baseURL, authConfig));\n}\nfunction useDebouncedSearch(config, doctype, options) {\n var _ref, _ref1, _ref2, _ref3, _ref4;\n var _config_auth;\n var wait = (_ref = options === null || options === void 0 ? void 0 : options.wait) !== null && _ref !== void 0 ? _ref : 300;\n var fields = options === null || options === void 0 ? void 0 : options.fields;\n var limit = (_ref1 = options === null || options === void 0 ? void 0 : options.limit) !== null && _ref1 !== void 0 ? _ref1 : 20;\n var minLength = (_ref2 = options === null || options === void 0 ? void 0 : options.minLength) !== null && _ref2 !== void 0 ? _ref2 : 1;\n var additionalFilters = options === null || options === void 0 ? void 0 : options.filters;\n var searchField = (_ref3 = options === null || options === void 0 ? void 0 : options.searchField) !== null && _ref3 !== void 0 ? _ref3 : \"name\";\n var [query, setQueryState] = useState(\"\");\n var [results, setResults] = useState([]);\n var [isSearching, setIsSearching] = useState(false);\n var dbRef = useRef(void 0);\n var configKeyRef = useRef(\"\");\n var configKey = config ? `${config.baseURL}:${(_ref4 = (_config_auth = config.auth) === null || _config_auth === void 0 ? void 0 : _config_auth.token) !== null && _ref4 !== void 0 ? _ref4 : \"\"}` : \"\";\n if (config && configKey !== configKeyRef.current) {\n dbRef.current = createDbModule(config);\n configKeyRef.current = configKey;\n }\n if (!config) {\n dbRef.current = void 0;\n configKeyRef.current = \"\";\n }\n var debouncer = useAsyncDebouncer(async function(searchQuery) {\n var db = dbRef.current;\n if (!db || searchQuery.length < minLength) {\n setResults([]);\n setIsSearching(false);\n return;\n }\n setIsSearching(true);\n try {\n var searchFilters = [\n [\n searchField,\n \"like\",\n `%${searchQuery}%`\n ]\n ];\n if (additionalFilters) {\n if (Array.isArray(additionalFilters)) {\n searchFilters.push(...additionalFilters);\n } else {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(additionalFilters)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [key, value] = _step.value;\n searchFilters.push([\n key,\n \"=\",\n value\n ]);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n }\n var docs = await db.getDocList(doctype, {\n fields,\n filters: searchFilters,\n limit\n });\n setResults(docs);\n } catch (error) {\n console.error(`[useDebouncedSearch] Search failed for ${doctype}:`, error);\n setResults([]);\n } finally {\n setIsSearching(false);\n }\n }, {\n wait\n });\n var setQuery = useCallback(function(newQuery) {\n setQueryState(newQuery);\n if (newQuery.length < minLength) {\n setResults([]);\n debouncer.cancel();\n return;\n }\n debouncer.maybeExecute(newQuery);\n }, [\n debouncer,\n minLength\n ]);\n var cancel = useCallback(function() {\n debouncer.cancel();\n setIsSearching(false);\n }, [\n debouncer\n ]);\n return {\n query,\n setQuery,\n results,\n isSearching,\n cancel\n };\n}\nfunction useThrottledPagination(collection, options) {\n var _ref, _ref1, _ref2, _ref3;\n var pageSize = (_ref = options === null || options === void 0 ? void 0 : options.pageSize) !== null && _ref !== void 0 ? _ref : 20;\n var throttleMs = (_ref1 = options === null || options === void 0 ? void 0 : options.throttleMs) !== null && _ref1 !== void 0 ? _ref1 : 200;\n var [visibleCount, setVisibleCount] = useState(pageSize);\n var liveResult = useLiveQuery(function(q) {\n return collection ? q.from({\n _items: collection\n }) : null;\n }, [\n collection\n ]);\n var allItems = (_ref2 = liveResult === null || liveResult === void 0 ? void 0 : liveResult.data) !== null && _ref2 !== void 0 ? _ref2 : [];\n var items = useMemo(function() {\n return allItems.slice(0, visibleCount);\n }, [\n allItems,\n visibleCount\n ]);\n var hasMore = allItems.length > visibleCount;\n var isLoading = (_ref3 = liveResult === null || liveResult === void 0 ? void 0 : liveResult.isLoading) !== null && _ref3 !== void 0 ? _ref3 : !collection;\n var throttledLoadMore = useThrottledCallback(function() {\n setVisibleCount(function(prev) {\n return prev + pageSize;\n });\n }, {\n wait: throttleMs\n });\n return {\n items,\n loadMore: throttledLoadMore,\n hasMore,\n isLoading\n };\n}\nfunction createRateLimitedBatch(options) {\n var { doctype, operation, maxPerSecond = 5, batchSize = 10, syncModule } = options;\n var queue = [];\n var operationMap = {\n create: Operation.Create,\n update: Operation.Update,\n delete: Operation.Delete\n };\n function add(name, data) {\n queue.push({\n name,\n data\n });\n }\n async function execute(callbacks) {\n var total = queue.length;\n if (total === 0) return;\n var completed = 0;\n var batches = [];\n for (var i = 0; i < queue.length; i += batchSize) {\n batches.push(queue.slice(i, i + batchSize));\n }\n var rateLimiter = new AsyncRateLimiter(async function(batch2) {\n var mutations = batch2.map(function(item) {\n var _ref;\n var _crypto_randomUUID, _crypto;\n return {\n mutationId: (_ref = (_crypto_randomUUID = (_crypto = crypto).randomUUID) === null || _crypto_randomUUID === void 0 ? void 0 : _crypto_randomUUID.call(_crypto)) !== null && _ref !== void 0 ? _ref : Math.random().toString(36).substring(2),\n operation: operationMap[operation],\n doc: {\n doctype,\n name: item.name,\n ...item.data\n }\n };\n });\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = mutations[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var mutation = _step2.value;\n var _callbacks_onProgress;\n await syncModule.mutate(mutation);\n completed++;\n callbacks === null || callbacks === void 0 ? void 0 : (_callbacks_onProgress = callbacks.onProgress) === null || _callbacks_onProgress === void 0 ? void 0 : _callbacks_onProgress.call(callbacks, completed, total);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n }, {\n limit: maxPerSecond,\n window: 1e3\n });\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = batches[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var batch = _step.value;\n await rateLimiter.maybeExecute(batch);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n queue.length = 0;\n }\n return {\n add,\n execute\n };\n}\nexport {\n createRateLimitedBatch,\n useDebouncedSearch,\n useThrottledPagination\n};\n//# sourceMappingURL=pacer.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["init","modules","ts","typescript","openapi","ns","lastFetch","ttl","create","info","config","url","openapiUrl","toString","namespace","Number","cacheTTL","ensureOpenAPI","now","Date","res","fetch","json","unused","proxy","Proxy","languageService","get","target","prop","_len","arguments","length","args","Array","_key","getSemanticDiagnostics","apply","getExternalFiles","getSourceFile","fileName","languageVersion","_onError","_shouldCreateNewSourceFile","_length","content","emitDTS","createSourceFile","spec","ns2","_spec_components","lines","push","schemas","components","paths","doctypes","Set","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","keys","Symbol","iterator","_step","next","done","p","value","parts","split","filter","Boolean","idx","indexOf","add","err","return","map","d","join","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","entries","_step1","name","schema","enum","members","x","JSON","stringify","safe","type","properties"],"sources":["../../../src/plugin/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["init","modules","ts","typescript","openapi","ns","lastFetch","ttl","create","info","config","url","openapiUrl","toString","namespace","Number","cacheTTL","ensureOpenAPI","now","Date","res","fetch","json","unused","proxy","Proxy","languageService","get","target","prop","_len","arguments","length","args","Array","_key","getSemanticDiagnostics","apply","getExternalFiles","getSourceFile","fileName","languageVersion","_onError","_shouldCreateNewSourceFile","_length","content","emitDTS","createSourceFile","spec","ns2","_spec_components","lines","push","schemas","components","paths","doctypes","Set","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","keys","Symbol","iterator","_step","next","done","p","value","parts","split","filter","Boolean","idx","indexOf","add","err","return","map","d","join","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","entries","_step1","name","schema","enum","members","x","JSON","stringify","safe","type","properties","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","k","v","t","mapType","rq","isArray","required","optional","s","replace","_v_schema","$ref","pop","items","plugin_default","default"],"sources":["index.native.js"],"sourcesContent":["function init(modules) {\n var ts = modules.typescript;\n var openapi = null;\n var ns = \"@frappe/types\";\n var lastFetch = 0;\n var ttl = 6e4;\n function create(info) {\n var config = info.config || {};\n var url = (config.openapiUrl || \"\").toString();\n ns = (config.namespace || ns).toString();\n ttl = Number(config.cacheTTL || ttl);\n async function ensureOpenAPI() {\n var now = Date.now();\n if (openapi && now - lastFetch < ttl) return;\n if (!url) return;\n try {\n var res = await fetch(url);\n openapi = await res.json();\n lastFetch = now;\n } catch (unused) {\n }\n }\n var proxy = new Proxy(info.languageService, {\n get(target, prop) {\n if (prop !== \"getSemanticDiagnostics\") return target[prop];\n return async function() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n await ensureOpenAPI();\n return target.getSemanticDiagnostics.apply(this, args);\n };\n }\n });\n function getExternalFiles() {\n return openapi ? [\n \"frappe-virtual-types.d.ts\"\n ] : [];\n }\n function getSourceFile(fileName, languageVersion, _onError, _shouldCreateNewSourceFile, _length) {\n if (fileName === \"frappe-virtual-types.d.ts\" && openapi) {\n var content = emitDTS(openapi, ns);\n return ts.createSourceFile(fileName, content, languageVersion);\n }\n return void 0;\n }\n return {\n ...proxy,\n getExternalFiles,\n getSourceFile\n };\n }\n function emitDTS(spec, ns2) {\n var _spec_components;\n var lines = [];\n lines.push(`declare module \"${ns2}\" {`);\n var schemas = (spec === null || spec === void 0 ? void 0 : (_spec_components = spec.components) === null || _spec_components === void 0 ? void 0 : _spec_components.schemas) || {};\n var paths = spec.paths || {};\n var doctypes = /* @__PURE__ */ new Set();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.keys(paths)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var p = _step.value;\n var parts = p.split(\"/\").filter(Boolean);\n var idx = parts.indexOf(\"resource\");\n if (idx >= 0 && parts[idx + 1]) doctypes.add(parts[idx + 1]);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n lines.push(` export type Doctype = ${[\n ...doctypes\n ].map(function(d) {\n return `'${d}'`;\n }).join(\" | \") || \"string\"}`);\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = Object.entries(schemas)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var [name, schema] = _step1.value;\n if (schema === null || schema === void 0 ? void 0 : schema.enum) {\n var members = schema.enum.map(function(x) {\n return JSON.stringify(x);\n }).join(\" | \");\n lines.push(` export type ${safe(name)} = ${members}`);\n continue;\n }\n if ((schema === null || schema === void 0 ? void 0 : schema.type) === \"object\" && (schema === null || schema === void 0 ? void 0 : schema.properties)) {\n lines.push(` export interface ${safe(name)} {`);\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = Object.entries((schema === null || schema === void 0 ? void 0 : schema.properties) || {})[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var [k, v] = _step2.value;\n var t = mapType(v);\n var rq = Array.isArray(schema === null || schema === void 0 ? void 0 : schema.required) ? schema.required : [];\n var optional = rq.indexOf(k) === -1;\n lines.push(` ${safe(k)}${optional ? \"?\" : \"\"}: ${t}`);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n lines.push(\" }\");\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n lines.push(\"}\");\n return lines.join(\"\\n\");\n }\n function safe(s) {\n return s.replace(/[^a-zA-Z0-9_]/g, \"_\");\n }\n function mapType(v) {\n var _v_schema;\n if (!v) return \"any\";\n if (v.$ref) return safe(v.$ref.split(\"/\").pop() || \"any\");\n var t = v.type || ((_v_schema = v.schema) === null || _v_schema === void 0 ? void 0 : _v_schema.type);\n if (t === \"string\") return \"string\";\n if (t === \"integer\" || t === \"number\") return \"number\";\n if (t === \"boolean\") return \"boolean\";\n if (t === \"array\") return `${mapType(v.items)}[]`;\n if (t === \"object\") return \"Record<string, any>\";\n return \"any\";\n }\n return {\n create\n };\n}\nvar plugin_default = init;\nexport {\n plugin_default as default\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":"AAAA,SAASA,IAAIA,CAACC,OAAO,EAAE;EACrB,IAAIC,EAAE,GAAGD,OAAO,CAACE,UAAU;EAC3B,IAAIC,OAAO,GAAG,IAAI;EAClB,IAAIC,EAAE,GAAG,eAAe;EACxB,IAAIC,SAAS,GAAG,CAAC;EACjB,IAAIC,GAAG,GAAG,GAAG;EACb,SAASC,MAAMA,CAACC,IAAI,EAAE;IACpB,IAAIC,MAAM,GAAGD,IAAI,CAACC,MAAM,IAAI,CAAC,CAAC;IAC9B,IAAIC,GAAG,GAAG,CAACD,MAAM,CAACE,UAAU,IAAI,EAAE,EAAEC,QAAQ,CAAC,CAAC;IAC9CR,EAAE,GAAG,CAACK,MAAM,CAACI,SAAS,IAAIT,EAAE,EAAEQ,QAAQ,CAAC,CAAC;IACxCN,GAAG,GAAGQ,MAAM,CAACL,MAAM,CAACM,QAAQ,IAAIT,GAAG,CAAC;IACpC,eAAeU,aAAaA,CAAA,EAAG;MAC7B,IAAIC,GAAG,GAAGC,IAAI,CAACD,GAAG,CAAC,CAAC;MACpB,IAAId,OAAO,IAAIc,GAAG,GAAGZ,SAAS,GAAGC,GAAG,EAAE;MACtC,IAAI,CAACI,GAAG,EAAE;MACV,IAAI;QACF,IAAIS,GAAG,GAAG,MAAMC,KAAK,CAACV,GAAG,CAAC;QAC1BP,OAAO,GAAG,MAAMgB,GAAG,CAACE,IAAI,CAAC,CAAC;QAC1BhB,SAAS,GAAGY,GAAG;MACjB,CAAC,CAAC,OAAOK,MAAM,EAAE,CACjB;IACF;IACA,IAAIC,KAAK,GAAG,IAAIC,KAAK,CAAChB,IAAI,CAACiB,eAAe,EAAE;MAC1CC,GAAGA,CAACC,MAAM,EAAEC,IAAI,EAAE;QAChB,IAAIA,IAAI,KAAK,wBAAwB,EAAE,OAAOD,MAAM,CAACC,IAAI,CAAC;QAC1D,OAAO,kBAAiB;UACtB,KAAK,IAAIC,IAAI,GAAGC,SAAS,CAACC,MAAM,EAAEC,IAAI,GAAG,IAAIC,KAAK,CAACJ,IAAI,CAAC,EAAEK,IAAI,GAAG,CAAC,EAAEA,IAAI,GAAGL,IAAI,EAAEK,IAAI,EAAE,EAAE;YACvFF,IAAI,CAACE,IAAI,CAAC,GAAGJ,SAAS,CAACI,IAAI,CAAC;UAC9B;UACA,MAAMlB,aAAa,CAAC,CAAC;UACrB,OAAOW,MAAM,CAACQ,sBAAsB,CAACC,KAAK,CAAC,IAAI,EAAEJ,IAAI,CAAC;QACxD,CAAC;MACH;IACF,CAAC,CAAC;IACF,SAASK,gBAAgBA,CAAA,EAAG;MAC1B,OAAOlC,OAAO,GAAG,CACf,2BAA2B,CAC5B,GAAG,EAAE;IACR;IACA,SAASmC,aAAaA,CAACC,QAAQ,EAAEC,eAAe,EAAEC,QAAQ,EAAEC,0BAA0B,EAAEC,OAAO,EAAE;MAC/F,IAAIJ,QAAQ,KAAK,2BAA2B,IAAIpC,OAAO,EAAE;QACvD,IAAIyC,OAAO,GAAGC,OAAO,CAAC1C,OAAO,EAAEC,EAAE,CAAC;QAClC,OAAOH,EAAE,CAAC6C,gBAAgB,CAACP,QAAQ,EAAEK,OAAO,EAAEJ,eAAe,CAAC;MAChE;MACA,OAAO,KAAK,CAAC;IACf;IACA,OAAO;MACL,GAAGjB,KAAK;MACRc,gBAAgB;MAChBC;IACF,CAAC;EACH;EACA,SAASO,OAAOA,CAACE,IAAI,EAAEC,GAAG,EAAE;IAC1B,IAAIC,gBAAgB;IACpB,IAAIC,KAAK,GAAG,EAAE;IACdA,KAAK,CAACC,IAAI,CAAC,mBAAmBH,GAAG,KAAK,CAAC;IACvC,IAAII,OAAO,GAAG,CAACL,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAACE,gBAAgB,GAAGF,IAAI,CAACM,UAAU,MAAM,IAAI,IAAIJ,gBAAgB,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,gBAAgB,CAACG,OAAO,KAAK,CAAC,CAAC;IAClL,IAAIE,KAAK,GAAGP,IAAI,CAACO,KAAK,IAAI,CAAC,CAAC;IAC5B,IAAIC,QAAQ,GAAG,eAAgB,IAAIC,GAAG,CAAC,CAAC;IACxC,IAAIC,yBAAyB,GAAG,IAAI;MAAEC,iBAAiB,GAAG,KAAK;MAAEC,cAAc,GAAG,KAAK,CAAC;IACxF,IAAI;MACF,KAAK,IAAIC,SAAS,GAAGC,MAAM,CAACC,IAAI,CAACR,KAAK,CAAC,CAACS,MAAM,CAACC,QAAQ,CAAC,CAAC,CAAC,EAAEC,KAAK,EAAE,EAAER,yBAAyB,GAAG,CAACQ,KAAK,GAAGL,SAAS,CAACM,IAAI,CAAC,CAAC,EAAEC,IAAI,CAAC,EAAEV,yBAAyB,GAAG,IAAI,EAAE;QACnK,IAAIW,CAAC,GAAGH,KAAK,CAACI,KAAK;QACnB,IAAIC,KAAK,GAAGF,CAAC,CAACG,KAAK,CAAC,GAAG,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;QACxC,IAAIC,GAAG,GAAGJ,KAAK,CAACK,OAAO,CAAC,UAAU,CAAC;QACnC,IAAID,GAAG,IAAI,CAAC,IAAIJ,KAAK,CAACI,GAAG,GAAG,CAAC,CAAC,EAAEnB,QAAQ,CAACqB,GAAG,CAACN,KAAK,CAACI,GAAG,GAAG,CAAC,CAAC,CAAC;MAC9D;IACF,CAAC,CAAC,OAAOG,GAAG,EAAE;MACZnB,iBAAiB,GAAG,IAAI;MACxBC,cAAc,GAAGkB,GAAG;IACtB,CAAC,SAAS;MACR,IAAI;QACF,IAAI,CAACpB,yBAAyB,IAAIG,SAAS,CAACkB,MAAM,IAAI,IAAI,EAAE;UAC1DlB,SAAS,CAACkB,MAAM,CAAC,CAAC;QACpB;MACF,CAAC,SAAS;QACR,IAAIpB,iBAAiB,EAAE;UACrB,MAAMC,cAAc;QACtB;MACF;IACF;IACAT,KAAK,CAACC,IAAI,CAAC,2BAA2B,CACpC,GAAGI,QAAQ,CACZ,CAACwB,GAAG,CAAC,UAASC,CAAC,EAAE;MAChB,OAAO,IAAIA,CAAC,GAAG;IACjB,CAAC,CAAC,CAACC,IAAI,CAAC,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;IAC7B,IAAIC,0BAA0B,GAAG,IAAI;MAAEC,kBAAkB,GAAG,KAAK;MAAEC,eAAe,GAAG,KAAK,CAAC;IAC3F,IAAI;MACF,KAAK,IAAIC,UAAU,GAAGxB,MAAM,CAACyB,OAAO,CAAClC,OAAO,CAAC,CAACW,MAAM,CAACC,QAAQ,CAAC,CAAC,CAAC,EAAEuB,MAAM,EAAE,EAAEL,0BAA0B,GAAG,CAACK,MAAM,GAAGF,UAAU,CAACnB,IAAI,CAAC,CAAC,EAAEC,IAAI,CAAC,EAAEe,0BAA0B,GAAG,IAAI,EAAE;QAC9K,IAAI,CAACM,IAAI,EAAEC,MAAM,CAAC,GAAGF,MAAM,CAAClB,KAAK;QACjC,IAAIoB,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACC,IAAI,EAAE;UAC/D,IAAIC,OAAO,GAAGF,MAAM,CAACC,IAAI,CAACX,GAAG,CAAC,UAASa,CAAC,EAAE;YACxC,OAAOC,IAAI,CAACC,SAAS,CAACF,CAAC,CAAC;UAC1B,CAAC,CAAC,CAACX,IAAI,CAAC,KAAK,CAAC;UACd/B,KAAK,CAACC,IAAI,CAAC,iBAAiB4C,IAAI,CAACP,IAAI,CAAC,MAAMG,OAAO,EAAE,CAAC;UACtD;QACF;QACA,IAAI,CAACF,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACO,IAAI,MAAM,QAAQ,KAAKP,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACQ,UAAU,CAAC,EAAE;UACrJ/C,KAAK,CAACC,IAAI,CAAC,sBAAsB4C,IAAI,CAACP,IAAI,CAAC,IAAI,CAAC;UAChD,IAAIU,0BAA0B,GAAG,IAAI;YAAEC,kBAAkB,GAAG,KAAK;YAAEC,eAAe,GAAG,KAAK,CAAC;UAC3F,IAAI;YACF,KAAK,IAAIC,UAAU,GAAGxC,MAAM,CAACyB,OAAO,CAAC,CAACG,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACQ,UAAU,KAAK,CAAC,CAAC,CAAC,CAAClC,MAAM,CAACC,QAAQ,CAAC,CAAC,CAAC,EAAEsC,MAAM,EAAE,EAAEJ,0BAA0B,GAAG,CAACI,MAAM,GAAGD,UAAU,CAACnC,IAAI,CAAC,CAAC,EAAEC,IAAI,CAAC,EAAE+B,0BAA0B,GAAG,IAAI,EAAE;cAChP,IAAI,CAACK,CAAC,EAAEC,CAAC,CAAC,GAAGF,MAAM,CAACjC,KAAK;cACzB,IAAIoC,CAAC,GAAGC,OAAO,CAACF,CAAC,CAAC;cAClB,IAAIG,EAAE,GAAG1E,KAAK,CAAC2E,OAAO,CAACnB,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACoB,QAAQ,CAAC,GAAGpB,MAAM,CAACoB,QAAQ,GAAG,EAAE;cAC9G,IAAIC,QAAQ,GAAGH,EAAE,CAAChC,OAAO,CAAC4B,CAAC,CAAC,KAAK,CAAC,CAAC;cACnCrD,KAAK,CAACC,IAAI,CAAC,OAAO4C,IAAI,CAACQ,CAAC,CAAC,GAAGO,QAAQ,GAAG,GAAG,GAAG,EAAE,KAAKL,CAAC,EAAE,CAAC;YAC1D;UACF,CAAC,CAAC,OAAO5B,GAAG,EAAE;YACZsB,kBAAkB,GAAG,IAAI;YACzBC,eAAe,GAAGvB,GAAG;UACvB,CAAC,SAAS;YACR,IAAI;cACF,IAAI,CAACqB,0BAA0B,IAAIG,UAAU,CAACvB,MAAM,IAAI,IAAI,EAAE;gBAC5DuB,UAAU,CAACvB,MAAM,CAAC,CAAC;cACrB;YACF,CAAC,SAAS;cACR,IAAIqB,kBAAkB,EAAE;gBACtB,MAAMC,eAAe;cACvB;YACF;UACF;UACAlD,KAAK,CAACC,IAAI,CAAC,KAAK,CAAC;QACnB;MACF;IACF,CAAC,CAAC,OAAO0B,GAAG,EAAE;MACZM,kBAAkB,GAAG,IAAI;MACzBC,eAAe,GAAGP,GAAG;IACvB,CAAC,SAAS;MACR,IAAI;QACF,IAAI,CAACK,0BAA0B,IAAIG,UAAU,CAACP,MAAM,IAAI,IAAI,EAAE;UAC5DO,UAAU,CAACP,MAAM,CAAC,CAAC;QACrB;MACF,CAAC,SAAS;QACR,IAAIK,kBAAkB,EAAE;UACtB,MAAMC,eAAe;QACvB;MACF;IACF;IACAlC,KAAK,CAACC,IAAI,CAAC,GAAG,CAAC;IACf,OAAOD,KAAK,CAAC+B,IAAI,CAAC,IAAI,CAAC;EACzB;EACA,SAASc,IAAIA,CAACgB,CAAC,EAAE;IACf,OAAOA,CAAC,CAACC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;EACzC;EACA,SAASN,OAAOA,CAACF,CAAC,EAAE;IAClB,IAAIS,SAAS;IACb,IAAI,CAACT,CAAC,EAAE,OAAO,KAAK;IACpB,IAAIA,CAAC,CAACU,IAAI,EAAE,OAAOnB,IAAI,CAACS,CAAC,CAACU,IAAI,CAAC3C,KAAK,CAAC,GAAG,CAAC,CAAC4C,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC;IACzD,IAAIV,CAAC,GAAGD,CAAC,CAACR,IAAI,KAAK,CAACiB,SAAS,GAAGT,CAAC,CAACf,MAAM,MAAM,IAAI,IAAIwB,SAAS,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,SAAS,CAACjB,IAAI,CAAC;IACrG,IAAIS,CAAC,KAAK,QAAQ,EAAE,OAAO,QAAQ;IACnC,IAAIA,CAAC,KAAK,SAAS,IAAIA,CAAC,KAAK,QAAQ,EAAE,OAAO,QAAQ;IACtD,IAAIA,CAAC,KAAK,SAAS,EAAE,OAAO,SAAS;IACrC,IAAIA,CAAC,KAAK,OAAO,EAAE,OAAO,GAAGC,OAAO,CAACF,CAAC,CAACY,KAAK,CAAC,IAAI;IACjD,IAAIX,CAAC,KAAK,QAAQ,EAAE,OAAO,qBAAqB;IAChD,OAAO,KAAK;EACd;EACA,OAAO;IACLlG;EACF,CAAC;AACH;AACA,IAAI8G,cAAc,GAAGtH,IAAI;AACzB,SACEsH,cAAc,IAAIC,OAAO","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isNative","io","isBrowser","isGjs","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","RealtimePlatform","RealtimePlatform2","docRoomKey","doctype","name","RealtimeModule","RealtimeModule2","config","Map","Set","platform","detectPlatform","_navigator_userAgent","navigator","product","userAgent","includes","getSocketURL","base","baseURL","replace","socketBaseURL","socketBase","siteName","URL","hostname","unused","split","url","port","socketPort","String","host","siteName1","protocol","result","siteName2","getAuthOptions","_this_config_auth","_this_config_auth1","authOptions","extraHeaders","Origin","origin","auth","sessionId","Cookie","useToken","token","authType","type","Authorization","transportOptions","websocket","polling","refreshSocketAuth","_this","socket","Promise","resolve","authRefreshInflight","manager","opts","assign","resolveHealthyWaiters","ok","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","healthyWaiters","Symbol","iterator","_step","next","done","err","return","clear","isSSE","transport","waitUntilHealthy","timeoutMs","arguments","isHealthy","timer","setTimeout","delete","onReady","onReady2","clearTimeout","add","ensureConnected","eventSource","isConnecting","connect","resubscribeRooms","socketHealthy","docRooms","values","room","emit","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","listRooms","_step1","room1","connectSSE","socketURL","transports","autoConnect","path","randomizationFactor","reconnection","reconnectionAttempts","Number","POSITIVE_INFINITY","reconnectionDelay","reconnectionDelayMax","timeout","withCredentials","socketOptions","initHandlers","_ref","sse","EventSourceCtor","EventSource","globalThis","Error","buildSSEURL","initSSEHandlers","_this_config_sse","startsWith","params","entries","queryParams","parts","resolved","push","encodeURIComponent","join","attachedSseEvents","sseListeners","attachSSEListener","events","handlerMap","keys","event","has","listener","listener2","handleSSEEvent","set","addEventListener","detachSSEListener","isCoreSSEType","get","removeEventListener","_event_lastEventId","data","emitToHandlers","reason","frame","lastEventId","mapFrame","mapped","console","warn","mappedEvent","payload"],"sources":["../../src/realtime.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["isNative","io","isBrowser","isGjs","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","RealtimePlatform","RealtimePlatform2","docRoomKey","doctype","name","RealtimeModule","RealtimeModule2","config","Map","Set","platform","detectPlatform","_navigator_userAgent","navigator","product","userAgent","includes","getSocketURL","base","baseURL","replace","socketBaseURL","socketBase","siteName","URL","hostname","unused","split","url","port","socketPort","String","host","siteName1","protocol","result","siteName2","getAuthOptions","_this_config_auth","_this_config_auth1","authOptions","extraHeaders","Origin","origin","auth","sessionId","Cookie","useToken","token","authType","type","Authorization","transportOptions","websocket","polling","refreshSocketAuth","_this","socket","Promise","resolve","authRefreshInflight","manager","opts","assign","resolveHealthyWaiters","ok","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","healthyWaiters","Symbol","iterator","_step","next","done","err","return","clear","isSSE","transport","waitUntilHealthy","timeoutMs","arguments","isHealthy","timer","setTimeout","delete","onReady","onReady2","clearTimeout","add","ensureConnected","eventSource","isConnecting","connect","resubscribeRooms","socketHealthy","docRooms","values","room","emit","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","listRooms","_step1","room1","connectSSE","socketURL","transports","autoConnect","path","randomizationFactor","reconnection","reconnectionAttempts","Number","POSITIVE_INFINITY","reconnectionDelay","reconnectionDelayMax","timeout","withCredentials","socketOptions","initHandlers","_ref","sse","EventSourceCtor","EventSource","globalThis","Error","buildSSEURL","initSSEHandlers","_this_config_sse","startsWith","params","entries","queryParams","parts","resolved","push","encodeURIComponent","join","attachedSseEvents","sseListeners","attachSSEListener","events","handlerMap","keys","event","has","listener","listener2","handleSSEEvent","set","addEventListener","detachSSEListener","isCoreSSEType","get","removeEventListener","_event_lastEventId","data","emitToHandlers","reason","frame","lastEventId","mapFrame","mapped","console","warn","mappedEvent","payload","payload1","JSON","parse","logSSERoomNoticeOnce","sseRoomNoticeLogged","debug","softDisconnect","removeAllListeners","disconnect","close","attachedSocketEvents","socketEventHandlers","_manager_on","on","_this_socket","sid","id","error","call","attachSocketListener","handler","handler2","detachSocketListener","off","handlerSet","size","subscribeDoc","unsubscribeDoc","teardownWhenIdle","subscribeList","filters","unsubscribeList","connected","updateAuth","shouldReconnect","sseEmitNoticeLogged","getSocket","getEventSource","getDocRooms","getListRooms"],"sources":["realtime.native.js"],"sourcesContent":["import { isNative } from \"@multiplatform.one/platform\";\nimport { io } from \"socket.io-client\";\nimport { isBrowser, isGjs } from \"./util\";\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar RealtimePlatform = /* @__PURE__ */ (function(RealtimePlatform2) {\n RealtimePlatform2[\"Node\"] = \"node\";\n RealtimePlatform2[\"Web\"] = \"web\";\n RealtimePlatform2[\"ReactNative\"] = \"react-native\";\n return RealtimePlatform2;\n})({});\nfunction docRoomKey(doctype, name) {\n return `${doctype}\\0${name}`;\n}\nvar RealtimeModule = /* @__PURE__ */ (function() {\n \"use strict\";\n function RealtimeModule2(config) {\n _class_call_check(this, RealtimeModule2);\n _define_property(this, \"socket\", void 0);\n _define_property(this, \"eventSource\", void 0);\n _define_property(this, \"handlerMap\", /* @__PURE__ */ new Map());\n _define_property(this, \"attachedSocketEvents\", /* @__PURE__ */ new Set());\n _define_property(this, \"socketEventHandlers\", /* @__PURE__ */ new Map());\n _define_property(this, \"attachedSseEvents\", /* @__PURE__ */ new Set());\n _define_property(this, \"sseListeners\", /* @__PURE__ */ new Map());\n _define_property(this, \"sseRoomNoticeLogged\", false);\n _define_property(this, \"sseEmitNoticeLogged\", false);\n _define_property(this, \"docRooms\", /* @__PURE__ */ new Map());\n _define_property(this, \"listRooms\", /* @__PURE__ */ new Map());\n _define_property(this, \"socketHealthy\", false);\n _define_property(this, \"isConnecting\", false);\n _define_property(this, \"healthyWaiters\", /* @__PURE__ */ new Set());\n _define_property(this, \"config\", void 0);\n _define_property(this, \"authRefreshInflight\", void 0);\n this.config = {\n ...config,\n platform: config.platform || this.detectPlatform()\n };\n }\n _create_class(RealtimeModule2, [\n {\n key: \"detectPlatform\",\n value: function detectPlatform() {\n var _navigator_userAgent;\n if (isGjs()) return \"node\";\n if (isNative || typeof navigator !== \"undefined\" && (navigator.product === \"ReactNative\" || ((_navigator_userAgent = navigator.userAgent) === null || _navigator_userAgent === void 0 ? void 0 : _navigator_userAgent.includes(\"ReactNative\")))) {\n return \"react-native\";\n }\n if (!isBrowser()) return \"node\";\n return \"web\";\n }\n },\n {\n key: \"getSocketURL\",\n value: function getSocketURL() {\n var base = this.config.baseURL.replace(/\\/$/, \"\");\n if (this.config.socketBaseURL) {\n var socketBase = this.config.socketBaseURL.replace(/\\/$/, \"\");\n var siteName = this.config.siteName;\n if (!siteName) {\n try {\n siteName = new URL(base).hostname;\n } catch (unused) {\n siteName = base.replace(/^https?:\\/\\//, \"\").split(/[/:]/)[0];\n }\n }\n return `${socketBase}/${siteName}`;\n }\n try {\n var url = new URL(base);\n var port = this.config.socketPort ? String(this.config.socketPort) : url.port;\n var host = port ? `${url.hostname}:${port}` : url.hostname;\n var siteName1 = this.config.siteName || url.hostname;\n return `${url.protocol}//${host}/${siteName1}`;\n } catch (unused) {\n var result = base;\n if (this.config.socketPort) {\n result = result.replace(/(:\\d+)/, `:${this.config.socketPort}`);\n }\n var siteName2 = this.config.siteName || result.replace(/^https?:\\/\\//, \"\").split(/[/:]/)[0];\n return `${result}/${siteName2}`;\n }\n }\n },\n {\n key: \"getAuthOptions\",\n value: async function getAuthOptions() {\n var _this_config_auth, _this_config_auth1;\n var authOptions = {};\n if (this.config.platform !== \"web\") {\n try {\n authOptions.extraHeaders = {\n Origin: new URL(this.config.baseURL).origin\n };\n } catch (unused) {\n authOptions.extraHeaders = {\n Origin: this.config.baseURL.replace(/\\/$/, \"\")\n };\n }\n }\n if (this.config.platform !== \"web\" && ((_this_config_auth = this.config.auth) === null || _this_config_auth === void 0 ? void 0 : _this_config_auth.sessionId)) {\n var sessionId = typeof this.config.auth.sessionId === \"function\" ? await this.config.auth.sessionId() : this.config.auth.sessionId;\n var Cookie = `sid=${sessionId}`;\n authOptions.extraHeaders = {\n ...authOptions.extraHeaders,\n Cookie\n };\n }\n if (((_this_config_auth1 = this.config.auth) === null || _this_config_auth1 === void 0 ? void 0 : _this_config_auth1.useToken) && this.config.auth.token) {\n var token = typeof this.config.auth.token === \"function\" ? await this.config.auth.token() : this.config.auth.token;\n if (token) {\n var authType = this.config.auth.type || \"Bearer\";\n if (!authOptions.extraHeaders) authOptions.extraHeaders = {};\n authOptions.extraHeaders.Authorization = authType === \"Bearer\" ? `Bearer ${token}` : `token ${token}`;\n }\n }\n if (authOptions.extraHeaders) {\n authOptions.transportOptions = {\n websocket: {\n extraHeaders: {\n ...authOptions.extraHeaders\n }\n },\n polling: {\n extraHeaders: {\n ...authOptions.extraHeaders\n }\n }\n };\n }\n return authOptions;\n }\n },\n {\n key: \"refreshSocketAuth\",\n value: (\n /**\n * Re-resolve credentials (token function / session id) and swap them into\n * the LIVE manager options in place. Socket.IO constructs a fresh engine\n * from `manager.opts` on every (re)connect attempt, so mutating the opts\n * makes the next handshake carry the refreshed token — without tearing\n * down handlers or room subscriptions. Called on disconnect and before\n * reconnect attempts so a token that rotated mid-session (e.g. Keycloak\n * refresh) never strands the socket in an auth-rejected retry loop.\n */\n function refreshSocketAuth() {\n var _this = this;\n var socket = this.socket;\n if (!socket) return Promise.resolve();\n if (this.authRefreshInflight) return this.authRefreshInflight;\n this.authRefreshInflight = (async function() {\n try {\n var authOptions = await _this.getAuthOptions();\n var manager = socket.io;\n if (manager === null || manager === void 0 ? void 0 : manager.opts) Object.assign(manager.opts, authOptions);\n } catch (unused) {\n } finally {\n _this.authRefreshInflight = void 0;\n }\n })();\n return this.authRefreshInflight;\n }\n )\n },\n {\n key: \"resolveHealthyWaiters\",\n value: function resolveHealthyWaiters(ok) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.healthyWaiters[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var resolve = _step.value;\n resolve(ok);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n this.healthyWaiters.clear();\n }\n },\n {\n key: \"isSSE\",\n value: function isSSE() {\n return this.config.transport === \"sse\";\n }\n },\n {\n key: \"waitUntilHealthy\",\n value: function waitUntilHealthy() {\n var _this = this;\n var timeoutMs = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 2e4;\n if (this.isHealthy()) return Promise.resolve(true);\n return new Promise(function(resolve) {\n var timer = setTimeout(function() {\n _this.healthyWaiters.delete(onReady);\n resolve(false);\n }, timeoutMs);\n var onReady = function onReady2(ok) {\n clearTimeout(timer);\n resolve(ok);\n };\n _this.healthyWaiters.add(onReady);\n });\n }\n },\n {\n key: \"ensureConnected\",\n value: async function ensureConnected() {\n if (this.isHealthy()) return;\n if (!this.socket && !this.eventSource && !this.isConnecting) {\n await this.connect();\n }\n await this.waitUntilHealthy();\n }\n },\n {\n key: \"resubscribeRooms\",\n value: function resubscribeRooms() {\n if (!this.socket || !this.socketHealthy) return;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.docRooms.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var room = _step.value;\n this.socket.emit(\"doc_subscribe\", room.doctype, room.name);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = this.listRooms.values()[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var room1 = _step1.value;\n this.socket.emit(\"doctype_subscribe\", room1.doctype);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n },\n {\n key: \"connect\",\n value: (\n /**\n * Open the realtime transport now. Room-driven auto-connect\n * (subscribeDoc/subscribeList) remains the primary lifecycle in both\n * transports — this is public for SSE consumers that use no doc/list room\n * bookkeeping: a one-way stream has nothing to emit on join, so nothing\n * else would ever open it. Idempotent while a transport exists or a\n * connect is in flight.\n */\n async function connect() {\n if (this.isSSE()) return this.connectSSE();\n if (this.socket || this.isConnecting) return;\n this.isConnecting = true;\n try {\n var authOptions = await this.getAuthOptions();\n var socketURL = this.getSocketURL();\n var transports = this.config.platform === \"web\" ? [\n \"polling\",\n \"websocket\"\n ] : [\n \"websocket\",\n \"polling\"\n ];\n this.socket = io(socketURL, {\n autoConnect: false,\n path: \"/socket.io\",\n randomizationFactor: 0.5,\n reconnection: true,\n reconnectionAttempts: Number.POSITIVE_INFINITY,\n reconnectionDelay: 1e3,\n reconnectionDelayMax: 5e3,\n timeout: 2e4,\n transports,\n withCredentials: true,\n ...authOptions,\n ...this.config.socketOptions\n });\n this.initHandlers();\n this.socket.connect();\n } catch (err) {\n this.isConnecting = false;\n this.resolveHealthyWaiters(false);\n throw err;\n }\n }\n )\n },\n {\n key: \"connectSSE\",\n value: (\n /**\n * SSE branch of connect(): construct an EventSource against the configured\n * stream URL. EventSource connects at construction, auto-reconnects on\n * failure, and resumes missed frames itself by sending the stream's last\n * `id:` as the `Last-Event-ID` request header — none of that is\n * reimplemented here.\n */\n async function connectSSE() {\n if (this.eventSource || this.isConnecting) return;\n this.isConnecting = true;\n try {\n var _ref;\n var sse = this.config.sse;\n var EventSourceCtor = (_ref = sse === null || sse === void 0 ? void 0 : sse.EventSource) !== null && _ref !== void 0 ? _ref : globalThis.EventSource;\n if (!EventSourceCtor) {\n throw new Error('[RealtimeModule] transport \"sse\" needs an EventSource implementation, and this runtime has no global EventSource (React Native and Node < 22 ship none). Pass a constructor via config.sse.EventSource \\u2014 e.g. the \"eventsource\" npm package on Node or \"react-native-sse\" on React Native.');\n }\n var url = await this.buildSSEURL();\n this.eventSource = new EventSourceCtor(url, {\n withCredentials: sse === null || sse === void 0 ? void 0 : sse.withCredentials\n });\n this.initSSEHandlers();\n } catch (err) {\n this.isConnecting = false;\n this.resolveHealthyWaiters(false);\n throw err;\n }\n }\n )\n },\n {\n key: \"buildSSEURL\",\n value: async function buildSSEURL() {\n var _ref;\n var _this_config_sse;\n var sse = this.config.sse;\n var url;\n if (sse === null || sse === void 0 ? void 0 : sse.url) {\n url = sse.url;\n } else if (sse === null || sse === void 0 ? void 0 : sse.path) {\n var base = this.config.baseURL.replace(/\\/$/, \"\");\n url = `${base}${sse.path.startsWith(\"/\") ? \"\" : \"/\"}${sse.path}`;\n } else {\n throw new Error('[RealtimeModule] transport \"sse\" requires config.sse.url or config.sse.path. There is no default stream path: SSE endpoints are server-specific (the SHC daemon serves \"/api/method/shc.events.stream\"; a real Frappe bench has no SSE endpoint at all), so a framework default would only ever 404.');\n }\n var params = Object.entries((_ref = (_this_config_sse = this.config.sse) === null || _this_config_sse === void 0 ? void 0 : _this_config_sse.queryParams) !== null && _ref !== void 0 ? _ref : {});\n if (params.length === 0) return url;\n var parts = [];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = params[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [key, value] = _step.value;\n var resolved = typeof value === \"function\" ? await value() : value;\n parts.push(`${encodeURIComponent(key)}=${encodeURIComponent(resolved)}`);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return `${url}${url.includes(\"?\") ? \"&\" : \"?\"}${parts.join(\"&\")}`;\n }\n },\n {\n key: \"initSSEHandlers\",\n value: function initSSEHandlers() {\n var _ref;\n var _this_config_sse;\n this.attachedSseEvents.clear();\n this.sseListeners.clear();\n this.attachSSEListener(\"open\");\n this.attachSSEListener(\"error\");\n this.attachSSEListener(\"message\");\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = ((_ref = (_this_config_sse = this.config.sse) === null || _this_config_sse === void 0 ? void 0 : _this_config_sse.events) !== null && _ref !== void 0 ? _ref : [])[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var type = _step.value;\n this.attachSSEListener(type);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = this.handlerMap.keys()[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var event = _step1.value;\n this.attachSSEListener(event);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n },\n {\n key: \"attachSSEListener\",\n value: function attachSSEListener(type) {\n var _this = this;\n if (!this.eventSource || this.attachedSseEvents.has(type)) return;\n var listener = function listener2(event) {\n _this.handleSSEEvent(type, event);\n };\n this.sseListeners.set(type, listener);\n this.attachedSseEvents.add(type);\n this.eventSource.addEventListener(type, listener);\n }\n },\n {\n key: \"detachSSEListener\",\n value: function detachSSEListener(type) {\n if (this.isCoreSSEType(type)) return;\n if (!this.eventSource || !this.attachedSseEvents.has(type)) return;\n var listener = this.sseListeners.get(type);\n if (listener) {\n this.eventSource.removeEventListener(type, listener);\n this.sseListeners.delete(type);\n }\n this.attachedSseEvents.delete(type);\n }\n },\n {\n key: \"isCoreSSEType\",\n value: function isCoreSSEType(type) {\n var _ref;\n var _this_config_sse;\n return type === \"open\" || type === \"error\" || type === \"message\" || ((_ref = (_this_config_sse = this.config.sse) === null || _this_config_sse === void 0 ? void 0 : _this_config_sse.events) !== null && _ref !== void 0 ? _ref : []).includes(type);\n }\n },\n {\n key: \"handleSSEEvent\",\n value: (\n /**\n * Single entry point for everything the EventSource dispatches. Dataless\n * events are transport lifecycle (`open`/`error` as plain Events); anything\n * carrying `data` is a server frame — including frames the server\n * classified `event: error`, which arrive as MessageEvents WITH data and\n * must not be mistaken for connection errors.\n */\n function handleSSEEvent(type, event) {\n var _event_lastEventId;\n var _this_config_sse;\n if ((event === null || event === void 0 ? void 0 : event.data) === void 0) {\n if (type === \"open\") {\n this.isConnecting = false;\n this.socketHealthy = true;\n this.emitToHandlers(\"connected\", {\n transport: \"sse\"\n });\n this.resolveHealthyWaiters(true);\n } else if (type === \"error\") {\n this.isConnecting = false;\n this.socketHealthy = false;\n this.emitToHandlers(\"disconnect\", {\n reason: \"sse-error\"\n });\n this.resolveHealthyWaiters(false);\n }\n return;\n }\n var frame = {\n type,\n data: String(event.data),\n lastEventId: (_event_lastEventId = event.lastEventId) !== null && _event_lastEventId !== void 0 ? _event_lastEventId : \"\"\n };\n var mapFrame = (_this_config_sse = this.config.sse) === null || _this_config_sse === void 0 ? void 0 : _this_config_sse.mapFrame;\n if (mapFrame) {\n var mapped;\n try {\n mapped = mapFrame(frame);\n } catch (err) {\n console.warn(\"[RealtimeModule] sse.mapFrame threw; frame dropped:\", err);\n return;\n }\n if (!mapped) return;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = mapped[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var { event: mappedEvent, payload } = _step.value;\n this.emitToHandlers(mappedEvent, payload);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return;\n }\n var payload1 = frame.data;\n try {\n payload1 = JSON.parse(frame.data);\n } catch (unused) {\n }\n this.emitToHandlers(frame.type, payload1);\n }\n )\n },\n {\n key: \"logSSERoomNoticeOnce\",\n value: (\n /**\n * Logged once: SSE is one-way, so doc/list room membership can't be sent\n * upstream — rooms are recorded client-side (see getDocRooms/getListRooms)\n * for mapFrame-driven filtering and for a future two-way transport.\n */\n function logSSERoomNoticeOnce() {\n if (this.sseRoomNoticeLogged) return;\n this.sseRoomNoticeLogged = true;\n console.debug(\"[RealtimeModule] SSE transport is one-way: doc/list room subscriptions are recorded client-side only (getDocRooms()/getListRooms()) and nothing is sent to the server \\u2014 filter server-side via sse.queryParams or route frames with sse.mapFrame.\");\n }\n )\n },\n {\n key: \"softDisconnect\",\n value: (\n /**\n * Tear down the socket without clearing app handlers or room subscriptions.\n * Used by auth refresh so listeners/rooms survive credential rotation.\n */\n function softDisconnect() {\n if (this.socket) {\n if (typeof this.socket.removeAllListeners === \"function\") {\n this.socket.removeAllListeners();\n }\n this.socket.disconnect();\n this.socket = void 0;\n }\n if (this.eventSource) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.sseListeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [type, listener] = _step.value;\n this.eventSource.removeEventListener(type, listener);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n this.eventSource.close();\n this.eventSource = void 0;\n }\n this.attachedSocketEvents.clear();\n this.socketEventHandlers.clear();\n this.attachedSseEvents.clear();\n this.sseListeners.clear();\n this.socketHealthy = false;\n this.isConnecting = false;\n this.resolveHealthyWaiters(false);\n }\n )\n },\n {\n key: \"initHandlers\",\n value: function initHandlers() {\n var _this = this;\n var _manager_on;\n if (!this.socket) return;\n this.attachedSocketEvents.clear();\n this.socketEventHandlers.clear();\n this.socket.on(\"connect\", function() {\n var _this_socket;\n _this.isConnecting = false;\n _this.socketHealthy = true;\n _this.resubscribeRooms();\n _this.emitToHandlers(\"connected\", {\n sid: (_this_socket = _this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.id\n });\n _this.resolveHealthyWaiters(true);\n });\n this.socket.on(\"disconnect\", function(reason) {\n _this.socketHealthy = false;\n void _this.refreshSocketAuth();\n _this.emitToHandlers(\"disconnect\", {\n reason\n });\n });\n this.socket.on(\"connect_error\", function(error) {\n _this.isConnecting = false;\n void _this.refreshSocketAuth();\n _this.emitToHandlers(\"connect_error\", error);\n _this.resolveHealthyWaiters(false);\n });\n var manager = this.socket.io;\n manager === null || manager === void 0 ? void 0 : (_manager_on = manager.on) === null || _manager_on === void 0 ? void 0 : _manager_on.call(manager, \"reconnect_attempt\", function() {\n void _this.refreshSocketAuth();\n });\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.handlerMap.keys()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var event = _step.value;\n this.attachSocketListener(event);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n },\n {\n key: \"attachSocketListener\",\n value: (\n /**\n * Attaches a socket listener for an event, storing the reference to prevent duplicates.\n */\n function attachSocketListener(event) {\n var _this = this;\n if (!this.socket || this.attachedSocketEvents.has(event)) return;\n var handler = function handler2(payload) {\n _this.emitToHandlers(event, payload);\n };\n this.socketEventHandlers.set(event, handler);\n this.attachedSocketEvents.add(event);\n this.socket.on(event, handler);\n }\n )\n },\n {\n key: \"detachSocketListener\",\n value: (\n /**\n * Removes a socket listener for an event.\n */\n function detachSocketListener(event) {\n if (!this.socket || !this.attachedSocketEvents.has(event)) return;\n var handler = this.socketEventHandlers.get(event);\n if (handler) {\n this.socket.off(event, handler);\n this.socketEventHandlers.delete(event);\n }\n this.attachedSocketEvents.delete(event);\n }\n )\n },\n {\n key: \"emitToHandlers\",\n value: function emitToHandlers(event, payload) {\n var handlerSet = this.handlerMap.get(event);\n if (!handlerSet) return;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = handlerSet[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var handler = _step.value;\n handler(payload);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n },\n {\n key: \"on\",\n value: async function on(event, handler) {\n var handlerSet = this.handlerMap.get(event);\n if (!handlerSet) {\n handlerSet = /* @__PURE__ */ new Set();\n this.handlerMap.set(event, handlerSet);\n }\n handlerSet.add(handler);\n if (this.isSSE()) {\n this.attachSSEListener(event);\n } else {\n this.attachSocketListener(event);\n }\n }\n },\n {\n key: \"off\",\n value: function off(event, handler) {\n var handlerSet = this.handlerMap.get(event);\n if (!handlerSet) return;\n handlerSet.delete(handler);\n if (handlerSet.size === 0) {\n this.handlerMap.delete(event);\n if (this.isSSE()) {\n this.detachSSEListener(event);\n } else {\n this.detachSocketListener(event);\n }\n }\n }\n },\n {\n key: \"subscribeDoc\",\n value: async function subscribeDoc(doctype, name) {\n this.docRooms.set(docRoomKey(doctype, name), {\n doctype,\n name\n });\n if (this.isSSE()) this.logSSERoomNoticeOnce();\n await this.ensureConnected();\n if (!this.isSSE() && this.socket && this.socketHealthy) {\n this.socket.emit(\"doc_subscribe\", doctype, name);\n }\n }\n },\n {\n key: \"unsubscribeDoc\",\n value: function unsubscribeDoc(doctype, name) {\n this.docRooms.delete(docRoomKey(doctype, name));\n if (!this.isSSE() && this.socket && this.socketHealthy) {\n this.socket.emit(\"doc_unsubscribe\", doctype, name);\n }\n this.teardownWhenIdle();\n }\n },\n {\n key: \"subscribeList\",\n value: (\n /**\n * Subscribe to list-level updates for a doctype (`list_update` events).\n *\n * `filters` are tracked client-side only: frappe's realtime server has a\n * single room per doctype (`doctype_subscribe`) and does not support\n * filtered list rooms.\n */\n async function subscribeList(doctype, filters) {\n this.listRooms.set(doctype, {\n doctype,\n filters\n });\n if (this.isSSE()) this.logSSERoomNoticeOnce();\n await this.ensureConnected();\n if (!this.isSSE() && this.socket && this.socketHealthy) {\n this.socket.emit(\"doctype_subscribe\", doctype);\n }\n }\n )\n },\n {\n key: \"unsubscribeList\",\n value: function unsubscribeList(doctype) {\n this.listRooms.delete(doctype);\n if (!this.isSSE() && this.socket && this.socketHealthy) {\n this.socket.emit(\"doctype_unsubscribe\", doctype);\n }\n this.teardownWhenIdle();\n }\n },\n {\n key: \"teardownWhenIdle\",\n value: (\n /**\n * Tears the socket down when the last room is released. Room membership is\n * the socket's reason to exist: while any subscription holds a room, the\n * infinite Socket.IO reconnection loop is the reconnect catch-up protocol\n * working as designed — but once nothing is subscribed, that same loop is\n * a leak (unmounted consumers leaving a dead-host socket reconnect-polling\n * forever). Handlers and any re-added rooms survive: the next\n * subscribeDoc/subscribeList reconnects and re-attaches everything.\n */\n function teardownWhenIdle() {\n if (this.docRooms.size > 0 || this.listRooms.size > 0) return;\n if (!this.socket && !this.eventSource && !this.isConnecting) return;\n this.emitToHandlers(\"disconnect\", {\n reason: \"idle-teardown\"\n });\n this.softDisconnect();\n }\n )\n },\n {\n key: \"isHealthy\",\n value: function isHealthy() {\n var _this_socket;\n if (this.isSSE()) return this.socketHealthy && this.eventSource !== void 0;\n return this.socketHealthy && ((_this_socket = this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.connected) === true;\n }\n },\n {\n key: \"disconnect\",\n value: function disconnect() {\n this.softDisconnect();\n this.handlerMap.clear();\n this.docRooms.clear();\n this.listRooms.clear();\n }\n },\n {\n key: \"updateAuth\",\n value: async function updateAuth(auth) {\n this.config.auth = auth;\n var shouldReconnect = this.docRooms.size > 0 || this.listRooms.size > 0 || this.isSSE() && this.eventSource !== void 0;\n this.softDisconnect();\n if (shouldReconnect) {\n await this.connect();\n }\n }\n },\n {\n key: \"emit\",\n value: function emit(event, data) {\n if (this.isSSE()) {\n if (!this.sseEmitNoticeLogged) {\n this.sseEmitNoticeLogged = true;\n console.debug(\"[RealtimeModule] emit() is a no-op under the SSE transport \\u2014 SSE is one-way (server \\u2192 client). Use HTTP calls for client \\u2192 server communication.\");\n }\n return;\n }\n if (this.socket && this.socketHealthy) {\n this.socket.emit(event, data);\n }\n }\n },\n {\n key: \"getSocket\",\n value: function getSocket() {\n return this.socket;\n }\n },\n {\n /** Live EventSource when the SSE transport is connected (undefined otherwise). */\n key: \"getEventSource\",\n value: function getEventSource() {\n return this.eventSource;\n }\n },\n {\n /**\n * Doc rooms recorded by subscribeDoc. Under SSE these are client-side\n * bookkeeping only (nothing is emitted upstream) — mapFrame-driven apps\n * consult them to filter or route frames.\n */\n key: \"getDocRooms\",\n value: function getDocRooms() {\n return [\n ...this.docRooms.values()\n ];\n }\n },\n {\n /** List rooms recorded by subscribeList — same client-side semantics as getDocRooms. */\n key: \"getListRooms\",\n value: function getListRooms() {\n return [\n ...this.listRooms.values()\n ];\n }\n }\n ]);\n return RealtimeModule2;\n})();\nexport {\n RealtimeModule,\n RealtimePlatform\n};\n//# sourceMappingURL=realtime.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { FrappeApp } from "./frappeApp.mjs";
|
|
2
|
+
function serverApp(baseURL, request) {
|
|
3
|
+
const cookie = request.headers?.get("cookie") ?? void 0;
|
|
4
|
+
return new FrappeApp(baseURL, cookie ? {
|
|
5
|
+
cookie
|
|
6
|
+
} : {});
|
|
7
|
+
}
|
|
8
|
+
function isNotFound(error) {
|
|
9
|
+
return typeof error === "object" && error !== null && error.status === 404;
|
|
10
|
+
}
|
|
11
|
+
async function loadDocList({
|
|
12
|
+
baseURL,
|
|
13
|
+
doctype,
|
|
14
|
+
request,
|
|
15
|
+
...query
|
|
16
|
+
}) {
|
|
17
|
+
if (!request) return [];
|
|
18
|
+
try {
|
|
19
|
+
const rows = await serverApp(baseURL, request).db().getDocList(doctype, query);
|
|
20
|
+
return rows.map(row => ({
|
|
21
|
+
...row,
|
|
22
|
+
doctype
|
|
23
|
+
}));
|
|
24
|
+
} catch (error) {
|
|
25
|
+
console.error(`[loadDocList] ${doctype}:`, error);
|
|
26
|
+
return [];
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async function loadDoc({
|
|
30
|
+
baseURL,
|
|
31
|
+
doctype,
|
|
32
|
+
name,
|
|
33
|
+
request
|
|
34
|
+
}) {
|
|
35
|
+
if (!request || !name) return null;
|
|
36
|
+
try {
|
|
37
|
+
const doc = await serverApp(baseURL, request).db().getDoc(doctype, name);
|
|
38
|
+
return doc ? {
|
|
39
|
+
...doc,
|
|
40
|
+
doctype
|
|
41
|
+
} : null;
|
|
42
|
+
} catch (error) {
|
|
43
|
+
if (!isNotFound(error)) console.error(`[loadDoc] ${doctype}/${name}:`, error);
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export { loadDoc, loadDocList };
|
|
48
|
+
//# sourceMappingURL=serverLoaders.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["FrappeApp","serverApp","baseURL","request","cookie","headers","get","isNotFound","error","status","loadDocList","doctype","query","rows","db","getDocList","map","row","console","loadDoc","name","doc","getDoc"],"sources":["../../src/serverLoaders.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,QAAiB;AA0B1B,SAASC,UAAUC,OAAA,EAAiBC,OAAA,EAAyC;EAC3E,MAAMC,MAAA,GAASD,OAAA,CAAQE,OAAA,EAASC,GAAA,CAAI,QAAQ,KAAK;EACjD,OAAO,IAAIN,SAAA,CAAUE,OAAA,EAASE,MAAA,GAAS;IAAEA;EAAO,IAAI,CAAC,CAAC;AACxD;AAEA,SAASG,WAAWC,KAAA,EAAyB;EAC3C,OACE,OAAOA,KAAA,KAAU,YAAYA,KAAA,KAAU,QAASA,KAAA,CAA8BC,MAAA,KAAW;AAE7F;AASA,eAAsBC,YAA4D;EAChFR,OAAA;EACAS,OAAA;EACAR,OAAA;EACA,GAAGS;AACL,GAAwC;EACtC,IAAI,CAACT,OAAA,EAAS,OAAO,EAAC;EACtB,IAAI;IACF,MAAMU,IAAA,GAAO,MAAMZ,SAAA,CAAUC,OAAA,EAASC,OAAO,EAAEW,EAAA,CAAG,EAAEC,UAAA,CAAiBJ,OAAA,EAASC,KAAK;IACnF,OAAOC,IAAA,CAAKG,GAAA,CAAKC,GAAA,KAAS;MAAE,GAAGA,GAAA;MAAKN;IAAQ,EAAU;EACxD,SAASH,KAAA,EAAO;IACdU,OAAA,CAAQV,KAAA,CAAM,iBAAiBG,OAAO,KAAKH,KAAK;IAChD,OAAO,EAAC;EACV;AACF;AAGA,eAAsBW,QAAwD;EAC5EjB,OAAA;EACAS,OAAA;EACAS,IAAA;EACAjB;AACF,GAAyC;EACvC,IAAI,CAACA,OAAA,IAAW,CAACiB,IAAA,EAAM,OAAO;EAC9B,IAAI;IACF,MAAMC,GAAA,GAAM,MAAMpB,SAAA,CAAUC,OAAA,EAASC,OAAO,EAAEW,EAAA,CAAG,EAAEQ,MAAA,CAAaX,OAAA,EAASS,IAAI;IAC7E,OAAOC,GAAA,GAAO;MAAE,GAAGA,GAAA;MAAKV;IAAQ,IAAa;EAC/C,SAASH,KAAA,EAAO;IACd,IAAI,CAACD,UAAA,CAAWC,KAAK,GAAGU,OAAA,CAAQV,KAAA,CAAM,aAAaG,OAAO,IAAIS,IAAI,KAAKZ,KAAK;IAC5E,OAAO;EACT;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { FrappeApp } from "./frappeApp.native.js";
|
|
2
|
+
function _type_of(obj) {
|
|
3
|
+
"@swc/helpers - typeof";
|
|
4
|
+
|
|
5
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
6
|
+
}
|
|
7
|
+
function serverApp(baseURL, request) {
|
|
8
|
+
var _ref;
|
|
9
|
+
var _request_headers;
|
|
10
|
+
var cookie = (_ref = (_request_headers = request.headers) === null || _request_headers === void 0 ? void 0 : _request_headers.get("cookie")) !== null && _ref !== void 0 ? _ref : void 0;
|
|
11
|
+
return new FrappeApp(baseURL, cookie ? {
|
|
12
|
+
cookie
|
|
13
|
+
} : {});
|
|
14
|
+
}
|
|
15
|
+
function isNotFound(error) {
|
|
16
|
+
return (typeof error === "undefined" ? "undefined" : _type_of(error)) === "object" && error !== null && error.status === 404;
|
|
17
|
+
}
|
|
18
|
+
async function loadDocList(param) {
|
|
19
|
+
var {
|
|
20
|
+
baseURL,
|
|
21
|
+
doctype,
|
|
22
|
+
request,
|
|
23
|
+
...query
|
|
24
|
+
} = param;
|
|
25
|
+
if (!request) return [];
|
|
26
|
+
try {
|
|
27
|
+
var rows = await serverApp(baseURL, request).db().getDocList(doctype, query);
|
|
28
|
+
return rows.map(function (row) {
|
|
29
|
+
return {
|
|
30
|
+
...row,
|
|
31
|
+
doctype
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
} catch (error) {
|
|
35
|
+
console.error(`[loadDocList] ${doctype}:`, error);
|
|
36
|
+
return [];
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
async function loadDoc(param) {
|
|
40
|
+
var {
|
|
41
|
+
baseURL,
|
|
42
|
+
doctype,
|
|
43
|
+
name,
|
|
44
|
+
request
|
|
45
|
+
} = param;
|
|
46
|
+
if (!request || !name) return null;
|
|
47
|
+
try {
|
|
48
|
+
var doc = await serverApp(baseURL, request).db().getDoc(doctype, name);
|
|
49
|
+
return doc ? {
|
|
50
|
+
...doc,
|
|
51
|
+
doctype
|
|
52
|
+
} : null;
|
|
53
|
+
} catch (error) {
|
|
54
|
+
if (!isNotFound(error)) console.error(`[loadDoc] ${doctype}/${name}:`, error);
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export { loadDoc, loadDocList };
|
|
59
|
+
//# sourceMappingURL=serverLoaders.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["FrappeApp","_type_of","obj","Symbol","constructor","serverApp","baseURL","request","_ref","_request_headers","cookie","headers","get","isNotFound","error","status","loadDocList","param","doctype","query","rows","db","getDocList","map","row","console","loadDoc","name","doc","getDoc"],"sources":["serverLoaders.native.js"],"sourcesContent":["import { FrappeApp } from \"./frappeApp\";\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction serverApp(baseURL, request) {\n var _ref;\n var _request_headers;\n var cookie = (_ref = (_request_headers = request.headers) === null || _request_headers === void 0 ? void 0 : _request_headers.get(\"cookie\")) !== null && _ref !== void 0 ? _ref : void 0;\n return new FrappeApp(baseURL, cookie ? {\n cookie\n } : {});\n}\nfunction isNotFound(error) {\n return (typeof error === \"undefined\" ? \"undefined\" : _type_of(error)) === \"object\" && error !== null && error.status === 404;\n}\nasync function loadDocList(param) {\n var { baseURL, doctype, request, ...query } = param;\n if (!request) return [];\n try {\n var rows = await serverApp(baseURL, request).db().getDocList(doctype, query);\n return rows.map(function(row) {\n return {\n ...row,\n doctype\n };\n });\n } catch (error) {\n console.error(`[loadDocList] ${doctype}:`, error);\n return [];\n }\n}\nasync function loadDoc(param) {\n var { baseURL, doctype, name, request } = param;\n if (!request || !name) return null;\n try {\n var doc = await serverApp(baseURL, request).db().getDoc(doctype, name);\n return doc ? {\n ...doc,\n doctype\n } : null;\n } catch (error) {\n if (!isNotFound(error)) console.error(`[loadDoc] ${doctype}/${name}:`, error);\n return null;\n }\n}\nexport {\n loadDoc,\n loadDocList\n};\n//# sourceMappingURL=serverLoaders.js.map\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,uBAAa;AACvC,SAASC,QAAQA,CAACC,GAAG,EAAE;EACrB,uBAAuB;;EACvB,OAAOA,GAAG,IAAI,OAAOC,MAAM,KAAK,WAAW,IAAID,GAAG,CAACE,WAAW,KAAKD,MAAM,GAAG,QAAQ,GAAG,OAAOD,GAAG;AACnG;AACA,SAASG,SAASA,CAACC,OAAO,EAAEC,OAAO,EAAE;EACnC,IAAIC,IAAI;EACR,IAAIC,gBAAgB;EACpB,IAAIC,MAAM,GAAG,CAACF,IAAI,GAAG,CAACC,gBAAgB,GAAGF,OAAO,CAACI,OAAO,MAAM,IAAI,IAAIF,gBAAgB,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,gBAAgB,CAACG,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAIJ,IAAI,KAAK,KAAK,CAAC,GAAGA,IAAI,GAAG,KAAK,CAAC;EACxL,OAAO,IAAIR,SAAS,CAACM,OAAO,EAAEI,MAAM,GAAG;IACrCA;EACF,CAAC,GAAG,CAAC,CAAC,CAAC;AACT;AACA,SAASG,UAAUA,CAACC,KAAK,EAAE;EACzB,OAAO,CAAC,OAAOA,KAAK,KAAK,WAAW,GAAG,WAAW,GAAGb,QAAQ,CAACa,KAAK,CAAC,MAAM,QAAQ,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,CAACC,MAAM,KAAK,GAAG;AAC9H;AACA,eAAeC,WAAWA,CAACC,KAAK,EAAE;EAChC,IAAI;IAAEX,OAAO;IAAEY,OAAO;IAAEX,OAAO;IAAE,GAAGY;EAAM,CAAC,GAAGF,KAAK;EACnD,IAAI,CAACV,OAAO,EAAE,OAAO,EAAE;EACvB,IAAI;IACF,IAAIa,IAAI,GAAG,MAAMf,SAAS,CAACC,OAAO,EAAEC,OAAO,CAAC,CAACc,EAAE,CAAC,CAAC,CAACC,UAAU,CAACJ,OAAO,EAAEC,KAAK,CAAC;IAC5E,OAAOC,IAAI,CAACG,GAAG,CAAC,UAASC,GAAG,EAAE;MAC5B,OAAO;QACL,GAAGA,GAAG;QACNN;MACF,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,CAAC,OAAOJ,KAAK,EAAE;IACdW,OAAO,CAACX,KAAK,CAAC,iBAAiBI,OAAO,GAAG,EAAEJ,KAAK,CAAC;IACjD,OAAO,EAAE;EACX;AACF;AACA,eAAeY,OAAOA,CAACT,KAAK,EAAE;EAC5B,IAAI;IAAEX,OAAO;IAAEY,OAAO;IAAES,IAAI;IAAEpB;EAAQ,CAAC,GAAGU,KAAK;EAC/C,IAAI,CAACV,OAAO,IAAI,CAACoB,IAAI,EAAE,OAAO,IAAI;EAClC,IAAI;IACF,IAAIC,GAAG,GAAG,MAAMvB,SAAS,CAACC,OAAO,EAAEC,OAAO,CAAC,CAACc,EAAE,CAAC,CAAC,CAACQ,MAAM,CAACX,OAAO,EAAES,IAAI,CAAC;IACtE,OAAOC,GAAG,GAAG;MACX,GAAGA,GAAG;MACNV;IACF,CAAC,GAAG,IAAI;EACV,CAAC,CAAC,OAAOJ,KAAK,EAAE;IACd,IAAI,CAACD,UAAU,CAACC,KAAK,CAAC,EAAEW,OAAO,CAACX,KAAK,CAAC,aAAaI,OAAO,IAAIS,IAAI,GAAG,EAAEb,KAAK,CAAC;IAC7E,OAAO,IAAI;EACb;AACF;AACA,SACEY,OAAO,EACPV,WAAW","ignoreList":[]}
|