@g9tm/lynxcontrols-progress-overlay 1.4.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 +57 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.jsx +2 -0
- package/dist/model.d.ts +188 -0
- package/dist/model.d.ts.map +1 -0
- package/dist/model.jsx +481 -0
- package/dist/model.jsx.map +1 -0
- package/dist/progress-overlay.css +156 -0
- package/dist/progress-overlay.css.map +1 -0
- package/dist/service.d.ts +66 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.jsx +274 -0
- package/dist/service.jsx.map +1 -0
- package/package.json +32 -0
package/README.md
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# @g9tm/lynxcontrols-progress-overlay
|
|
2
|
+
|
|
3
|
+
One shared overlay for long operations (MAUI `G9MAUIControls.ProgressOverlay`): leases, staged progress, cancel,
|
|
4
|
+
minimize to a draggable bubble, success and failure terminals with retry. Depends on `@g9tm/lynxcontrols-foundation` and
|
|
5
|
+
`@g9tm/lynxcontrols` only. Migration table: [`docs/migration/ProgressOverlay.md`](docs/migration/ProgressOverlay.md).
|
|
6
|
+
|
|
7
|
+
```tsx
|
|
8
|
+
import { g9ProgressReport, useG9ProgressOverlay } from '@g9tm/lynxcontrols-progress-overlay';
|
|
9
|
+
|
|
10
|
+
const progress = useG9ProgressOverlay(); // or g9ProgressOverlay() outside components (active host)
|
|
11
|
+
const lease = await progress.show('Uploading samples', 'bottom');
|
|
12
|
+
try {
|
|
13
|
+
progress.report(0.048, 'Uploading', '12 of 250');
|
|
14
|
+
progress.report(g9ProgressReport.indeterminate('Connecting'));
|
|
15
|
+
progress.reportQueued(3); // "+3 waiting"
|
|
16
|
+
await upload();
|
|
17
|
+
await progress.tryShowCurrentSuccess('250 samples uploaded');
|
|
18
|
+
} catch (error) {
|
|
19
|
+
await progress.tryShowCurrentFailure('Server unreachable', 'Retry', () => upload());
|
|
20
|
+
} finally {
|
|
21
|
+
await lease.dispose(); // the last lease waits until the terminal state was seen
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const off = progress.onCancelRequested(() => uploader.cancel());
|
|
25
|
+
|
|
26
|
+
// The host decides where an overlay shown without a position sits (MAUI 1.3.0), and moves a live one on a screen change.
|
|
27
|
+
progress.placementProvider = () => (mapTabShown ? { position: 'top', offset: mapTopBarHeight } : null);
|
|
28
|
+
onTabChanged(() => void progress.refreshPlacement());
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Behaviour
|
|
32
|
+
|
|
33
|
+
- **Leases.** Concurrent operations each hold a lease on one visual; the oldest is the running one (its context text
|
|
34
|
+
shows), the rest are queued. Releasing the running lease hands the view to the next; the overlay closes when the last
|
|
35
|
+
lease is released after its terminal state was seen.
|
|
36
|
+
- **Reports** are coalesced to ≤ 10 Hz and drive only the Running state; indeterminate reports do not move the bar.
|
|
37
|
+
- **Cancel** (a 44 × 44 target) switches instantly to Canceling and broadcasts to `onCancelRequested` listeners. A
|
|
38
|
+
cancellation is never an error: when the run stops, the overlay closes and a neutral "Cancelled" toast shows; if the
|
|
39
|
+
step cannot be interrupted, a notice appears after 5 s.
|
|
40
|
+
- **Terminals** always force the full card. Success dwells 2.2 s (countdown bar). Failure waits for the user: Retry
|
|
41
|
+
resets to Running and runs the action once (a second tap joins it); Close acknowledges. `showStandaloneFailure`
|
|
42
|
+
shows a failure with nothing running.
|
|
43
|
+
- **Minimize.** Tapping the running card collapses it to a 72 × 72 bubble (lynx-ui `Draggable`); tapping the bubble
|
|
44
|
+
restores it.
|
|
45
|
+
- **Placement.** Bottom (default) or top, above the host's bottom inset (`bottomWithTabBar`) or below its top inset,
|
|
46
|
+
14 px in; toasts lift above a bottom overlay. Call `refreshBottomInset()` after the tab bar hides or returns (it
|
|
47
|
+
glides 220 ms).
|
|
48
|
+
- **Host placement** (MAUI 1.3.0). The right spot depends on the screen, not on who started the work: set the
|
|
49
|
+
service's `placementProvider` (it receives the host and returns `{ position, offset }`, an edge plus extra distance
|
|
50
|
+
from that edge's inset, or `null` for the default `g9ProgressOverlayPlacement.default`). An overlay shown **without**
|
|
51
|
+
a position follows it: the provider is read when the overlay mounts, and `refreshPlacement()` moves a live overlay
|
|
52
|
+
when the screen under it changes (a tab switch, a full-screen sheet). An offset change on the same edge glides; an
|
|
53
|
+
edge change fades out at the old edge and in at the new one (a glide would sweep the card over the whole screen);
|
|
54
|
+
`refreshPlacement(false)` jumps. An overlay shown **with** a position keeps it for its life, and a minimized bubble
|
|
55
|
+
is never moved. A throwing provider falls back to the default (with a console warning).
|
|
56
|
+
|
|
57
|
+
Bubble drag on desktop is a device check (ledger N-047); the placement motions are N-060.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/@types/react/node_modules/csstype/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/animation.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@lynx-js/types/types/common/csstype.d.ts","../../../node_modules/@lynx-js/types/types/main-thread/animation.d.ts","../../../node_modules/@lynx-js/types/types/main-thread/element.d.ts","../../../node_modules/@lynx-js/types/types/common/events.d.ts","../../../node_modules/@lynx-js/types/types/common/system-info.d.ts","../../../node_modules/@lynx-js/types/types/common/performance.d.ts","../../../node_modules/@lynx-js/types/types/main-thread/lynx.d.ts","../../../node_modules/@lynx-js/types/types/main-thread/events.d.ts","../../../node_modules/@lynx-js/types/types/main-thread/index.d.ts","../../../node_modules/@lynx-js/types/types/common/lynx.d.ts","../../../node_modules/@lynx-js/types/types/common/global.d.ts","../../../node_modules/@lynx-js/types/types/common/props.d.ts","../../../node_modules/@lynx-js/types/types/common/element/component.d.ts","../../../node_modules/@lynx-js/types/types/common/element/filter-image.d.ts","../../../node_modules/@lynx-js/types/types/common/element/image.d.ts","../../../node_modules/@lynx-js/types/types/common/element/common.d.ts","../../../node_modules/@lynx-js/types/types/common/element/list.d.ts","../../../node_modules/@lynx-js/types/types/common/element/list-item.d.ts","../../../node_modules/@lynx-js/types/types/common/element/page.d.ts","../../../node_modules/@lynx-js/types/types/common/element/scroll-view.d.ts","../../../node_modules/@lynx-js/types/types/common/element/text.d.ts","../../../node_modules/@lynx-js/types/types/common/element/view.d.ts","../../../node_modules/@lynx-js/types/types/common/element/input.d.ts","../../../node_modules/@lynx-js/types/types/common/element/textarea.d.ts","../../../node_modules/@lynx-js/types/types/common/element/title-bar-view.d.ts","../../../node_modules/@lynx-js/types/types/common/element/svg.d.ts","../../../node_modules/@lynx-js/types/types/common/element/refresh.d.ts","../../../node_modules/@lynx-js/types/types/common/element/scroll-coordinator.d.ts","../../../node_modules/@lynx-js/types/types/common/element/viewpager.d.ts","../../../node_modules/@lynx-js/types/types/common/element/blur-view.d.ts","../../../node_modules/@lynx-js/types/types/common/element/webview.d.ts","../../../node_modules/@lynx-js/types/types/common/element/markdown.d.ts","../../../node_modules/@lynx-js/types/types/common/element/video.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/lynx-performance-entry.d.ts","../../../node_modules/@lynx-js/types/types/common/element/frame.d.ts","../../../node_modules/@lynx-js/types/types/common/element/overlay.d.ts","../../../node_modules/@lynx-js/types/types/common/element/element.d.ts","../../../node_modules/@lynx-js/types/types/common/element/methods.d.ts","../../../node_modules/@lynx-js/types/types/common/element/attributes.d.ts","../../../node_modules/@lynx-js/types/types/common/element/index.d.ts","../../../node_modules/@lynx-js/types/types/common/console.d.ts","../../../node_modules/@lynx-js/types/types/common/index.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/event.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/nodes-ref.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/app.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/performance.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/fetch.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/lynx.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/native-modules.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/text-encoder-decoder.d.ts","../../../node_modules/@lynx-js/types/types/background-thread/index.d.ts","../../../node_modules/@lynx-js/types/types/index.d.ts","../../../node_modules/@types/react/jsx-runtime.d.ts","../../../node_modules/@lynx-js/react/runtime/jsx-runtime/index.d.ts","../src/model.ts","../../controls/dist/base/control.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/runtime-marker.d.ts","../../../node_modules/preact/src/jsx.d.ts","../../../node_modules/preact/src/dom.d.ts","../../../node_modules/preact/src/index.d.ts","../../../node_modules/preact/hooks/src/index.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/core/hooks/react.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/snapshot/lynx/runWithForce.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/lynx.d.ts","../../../node_modules/preact/compat/src/suspense.d.ts","../../../node_modules/preact/compat/src/index.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/snapshot/lynx/children.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/snapshot/lynx/element.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/snapshot/lynx/portalsPending.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/snapshot/lynx/portals.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/snapshot/lynx/suspense.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/core/hooks/useLynxGlobalEventListener.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/core/globalProps.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/core/initData.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/core/background-function/run-on-background.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/snapshot/worklet/call/runOnMainThread.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/worklet-runtime/api/animation/effect.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/worklet-runtime/api/animation/animation.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/worklet-runtime/api/element.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/worklet-runtime/bindings/types.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/core/main-thread-ref.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/lynx-api.d.ts","../../../node_modules/@lynx-js/react/runtime/lib/index.d.ts","../../../node_modules/@lynx-js/react/types/react.docs.d.ts","../../../node_modules/@lynx-js/react/types/react.d.ts","../../controls/dist/base/corner-badge.d.ts","../../controls/dist/base/disposer.d.ts","../../controls/dist/base/press.d.ts","../../controls/dist/base/pressable.d.ts","../../foundation/dist/collections.d.ts","../../foundation/dist/culture/digits.d.ts","../../foundation/dist/culture/culture.d.ts","../../foundation/dist/culture/calendar.d.ts","../../foundation/dist/culture/date-format.d.ts","../../foundation/dist/culture/duration.d.ts","../../foundation/dist/culture/numbers.d.ts","../../foundation/dist/culture/strings.d.ts","../../foundation/dist/culture/relative-time.d.ts","../../foundation/dist/culture/index.d.ts","../../foundation/dist/enums/index.d.ts","../../foundation/dist/errors.d.ts","../../foundation/dist/exec/diagnostics.d.ts","../../foundation/dist/services/abort.d.ts","../../foundation/dist/exec/options.d.ts","../../foundation/dist/services/clock.d.ts","../../foundation/dist/exec/trace.d.ts","../../foundation/dist/exec/safe-executor.d.ts","../../foundation/dist/exec/index.d.ts","../../foundation/dist/icons/generated/glyph-svg.d.ts","../../foundation/dist/icons/glyph.d.ts","../../foundation/dist/icons/icon.d.ts","../../foundation/dist/icons/glyph-slots.d.ts","../../foundation/dist/icons/icon-fonts.d.ts","../../foundation/dist/icons/svg.d.ts","../../foundation/dist/icons/index.d.ts","../../foundation/dist/services/preferences.d.ts","../../foundation/dist/services/contracts.d.ts","../../foundation/dist/services/index.d.ts","../../foundation/dist/theme/color.d.ts","../../foundation/dist/tokens/generated/palettes.d.ts","../../foundation/dist/theme/theme.d.ts","../../foundation/dist/theme/control-colors.d.ts","../../foundation/dist/theme/variants.d.ts","../../foundation/dist/theme/index.d.ts","../../foundation/dist/tokens/generated/metrics.d.ts","../../foundation/dist/tokens/layout-metrics.d.ts","../../foundation/dist/tokens/css-vars.d.ts","../../foundation/dist/tokens/index.d.ts","../../foundation/dist/index.d.ts","../../controls/dist/popup/types.d.ts","../../controls/dist/display/shimmer.d.ts","../../controls/dist/sheet/options.d.ts","../../controls/dist/provider/settings.d.ts","../../controls/dist/icon/icon.d.ts","../../controls/dist/base/selection-item.d.ts","../../controls/dist/base/timers.d.ts","../../controls/dist/base/use-controllable-state.d.ts","../../controls/dist/base/use-stable-callback.d.ts","../../controls/dist/base/index.d.ts","../../controls/dist/display/activity-indicator.d.ts","../../controls/dist/display/culture-date-time-label.d.ts","../../controls/dist/display/progress-bar.d.ts","../../controls/dist/display/separator.d.ts","../../controls/dist/display/title-with-line.d.ts","../../controls/dist/display/index.d.ts","../../controls/dist/host/layers.d.ts","../../controls/dist/host/back.d.ts","../../controls/dist/host/readiness.d.ts","../../controls/dist/host/registry.d.ts","../../controls/dist/host/hooks.d.ts","../../controls/dist/host/host.d.ts","../../controls/dist/host/keyboard.d.ts","../../controls/dist/host/page-loading-overlay.d.ts","../../controls/dist/host/index.d.ts","../../controls/dist/icon/slot.d.ts","../../controls/dist/icon/swatch.d.ts","../../controls/dist/icon/index.d.ts","../../controls/dist/provider/contexts.d.ts","../../controls/dist/provider/hooks.d.ts","../../controls/dist/provider/provider.d.ts","../../controls/dist/provider/index.d.ts","../../controls/dist/toast/store.d.ts","../../controls/dist/toast/service.d.ts","../../controls/dist/toast/index.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/useUnmount.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/useGlobalEventListener.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/useLatest.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/useRegisteredEvents.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/useMemoizedFn.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/usePrevious.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/usePreCommit.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/useGCCollector.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/hooks/index.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/common.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/version.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/selector.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/log.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/mainThreadify.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/popoverUtils.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/convertToPx.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/interpolationJS.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/interpolation.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/renderContentWithExtraProps.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/delayFrames.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/getEventDetail.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/utils/index.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/const/BaseScrollEventsMapping.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/const/BaseUIEventsMapping.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/const/index.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/types/interfaces/BaseScrollEvents.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/types/interfaces/BaseUIEvents.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/types/interfaces/BaseUIProps.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/types/interfaces/LazyInterface.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/types/interfaces/index.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/types/index.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/reactive/types.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/reactive/hooks/useReactiveValue.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/reactive/hooks/useReactiveValueEvent.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/reactive/hooks/useReactiveValueChange.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/reactive/updateReactive.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/reactive/index.d.ts","../../../node_modules/@lynx-js/react-use/dist/exposureBased/types.d.ts","../../../node_modules/@lynx-js/react-use/dist/exposureBased/useExposureForNode.d.ts","../../../node_modules/@lynx-js/react-use/dist/exposureBased/useExposureForPage.d.ts","../../../node_modules/@lynx-js/react-use/dist/exposureBased/useStayTime.d.ts","../../../node_modules/@lynx-js/react-use/dist/exposureBased/index.d.ts","../../../node_modules/react-use/esm/useMountedState.d.ts","../../../node_modules/react-use/esm/usePrevious.d.ts","../../../node_modules/@lynx-js/react-use/dist/list/types.d.ts","../../../node_modules/@lynx-js/react-use/dist/list/useListScrollEvent.d.ts","../../../node_modules/@lynx-js/react-use/dist/misc/hookState.d.ts","../../../node_modules/@lynx-js/react-use/dist/useCounter.d.ts","../../../node_modules/react-use/esm/useMap.d.ts","../../../node_modules/react-use/esm/useQueue.d.ts","../../../node_modules/react-use/esm/useSet.d.ts","../../../node_modules/@lynx-js/react-use/dist/useUnmountPromise.d.ts","../../../node_modules/@lynx-js/react-use/dist/react-use.d.ts","../../../node_modules/@lynx-js/react-use/dist/useAsyncFn.d.ts","../../../node_modules/@lynx-js/react-use/dist/useAsync.d.ts","../../../node_modules/@lynx-js/react-use/dist/useDebounce.d.ts","../../../node_modules/@lynx-js/react-use/dist/useEventListener.d.ts","../../../node_modules/immer/dist/immer.d.ts","../../../node_modules/@lynx-js/react-use/dist/useImmer.d.ts","../../../node_modules/@lynx-js/react-use/dist/useInput.d.ts","../../../node_modules/@lynx-js/react-use/dist/useIntersection.d.ts","../../../node_modules/@lynx-js/react-use/dist/useMainThreadImperativeHandle.d.ts","../../../node_modules/@lynx-js/react-use/dist/usePointerEvent.d.ts","../../../node_modules/@lynx-js/react-use/dist/useTapLock.d.ts","../../../node_modules/@lynx-js/react-use/dist/useTimeout.d.ts","../../../node_modules/@lynx-js/react-use/dist/useTimeoutFn.d.ts","../../../node_modules/@lynx-js/react-use/dist/useTouchEmulation.d.ts","../../../node_modules/@lynx-js/react-use/dist/useUniqueId.d.ts","../../../node_modules/@lynx-js/react-use/dist/useVelocity.d.ts","../../../node_modules/@lynx-js/react-use/dist/index.d.ts","../../../node_modules/@lynx-js/lynx-ui-common/dist/index.d.ts","../../../node_modules/@lynx-js/lynx-ui-draggable/dist/types/index.docs.d.ts","../../../node_modules/@lynx-js/lynx-ui-draggable/dist/Draggable.d.ts","../../../node_modules/@lynx-js/lynx-ui-draggable/dist/useDraggable.d.ts","../../../node_modules/@lynx-js/lynx-ui-draggable/dist/index.d.ts","../src/service.tsx","../src/index.ts"],"fileIdsList":[[230,231],[208,209,210,211,212,213,214,215],[41],[128],[52,95,128],[216,229,232,238,244,277],[128,239],[128,240],[128,239,240],[239,240,241,242,243],[237],[95,128],[95,128,233,234,235,236],[217,218,219,220,221,222,223,225,226,227,228],[224],[41,128],[41,95,128,279],[279,280,281],[95,128,278],[95,128,279],[246,247,248],[245],[245,249,260,261,262,263,264,266,267,268,269,270,271,272,273,274,275,276],[252],[41,128,249,250,251,253,255,256,257,258,259],[128,261],[254],[265],[41,95,96,128],[103,104,109,115],[41,104],[41,103,104,109,115],[41,123],[100,103,105,107,109,110,111,113,114,125],[41,115,116,117,118,119,124],[105,106],[103,109],[41,95,128],[41,95,103,112,128],[103],[120],[122],[121],[41,95,97,127,128],[41,105,125,126],[42,85,86,87],[53],[42,77,86,87,88,89,91,92,93],[42,85,86,87,89,90],[85,87],[42,85],[49,77],[43],[44],[51,55],[47],[41,51,55,56,57,58,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,78,79],[47,51,55,77],[47,51,55],[56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,78,79,80,81,82],[47,51,55,59],[47,60,63],[46],[48,52,53,94],[44,47,48,49,51,53,54,55,83,84],[44,47],[52,85,94],[45,85],[46,47,55],[45,46,50,51],[49,85],[38,39,40],[101,103,104,108],[101,102],[99,129,130,131,132,178,179,180,181],[99,128,131],[172,177],[99,128,172],[174,183,184,185,186,187],[99,128,172,177],[99,128],[189],[128,172,189,190,191,192],[41,128,172,189,190,191,192],[189,190,191,192,193,194,195,196],[172],[172,189,190,191],[41,128,172,176],[177,198,199],[128,172,177],[128,172],[41,172,176],[172,176,201],[176,201,202,203],[128,172,176],[128,172,173,175],[128,174,177],[205,206],[192,205],[177],[135],[134],[134,135,136],[134,135,136,137,138,139,140,141],[140],[145,147,149,150],[146],[140,145,146,147,148,149],[145,148],[154],[153],[152,153,154,155,156,157],[133,142,143,144,151,158,161,167,171],[144,146,148,159],[146,148,159,160],[144],[162,164],[162,164,165,166],[162,163],[143,162,163],[163,168,169],[163,168,169,170],[97,98,283],[97],[97,98,128,172,182,188,197,200,204,207,282]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb5b19b86227ace1d29ea4cf81387279d04bb34051e944bc53df69f58914b788","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"87d9d29dbc745f182683f63187bf3d53fd8673e5fca38ad5eaab69798ed29fbc","impliedFormat":1},{"version":"035312d4945d13efa134ae482f6dc56a1a9346f7ac3be7ccbad5741058ce87f3","affectsGlobalScope":true,"impliedFormat":1},{"version":"07b03f752ae52a7130e06c5a8399d3a0dde07a1a634f8430b80cd6236c56b5c8","impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"acbac4ca6cd4b2b459debc4a274535775cb6278a8315be383fafa623ab78f18e","impliedFormat":1},{"version":"e421d0b097c78304a2597c1f33da586630e1dc665ae381c0c36e5ebc4aaf4566","impliedFormat":1},{"version":"adf624c89a0d509a789f3c0bf522969d2c47033dbeb50920b37cd89be475a65e","impliedFormat":1},{"version":"8ff8dade82d215fba372ec8ca795cb433997a41287e049acf294dd50cba08cc4","impliedFormat":1},{"version":"b32b532dcbe0a91d71fd94cb780e94bdfdce10be21608d914c29fb4b8939b24a","impliedFormat":1},{"version":"eb2b64881998b562a4fe9330e55aa2466cd3a41a1a57e93feac6555218cec06f","impliedFormat":1},{"version":"6db1694d205177322d792d924335b046b80607445a45c0d2de1fcffd190b48c0","impliedFormat":1},{"version":"2b47193137d251e8a5d4cea2d67fe85a68199795ba019e41d635f7cf5f8a35c5","impliedFormat":1},{"version":"f7e5c3960dd9df65d83408b9be446f7119fa1db1dd8266dd343349d90c3bf2ce","impliedFormat":1},{"version":"09c6491ed74af89a4155feafedecaf77780f5751c66d4b65b18d30fc0e053a75","impliedFormat":1},{"version":"188b01044640e5ef65f6edf0dd6e6454f02dd19f4ead66b9e03ebe26cc7298ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"c2be64f223b024c0b70c5096a8c361c9e11c7644f3bd8325d19c2720ee7087cd","impliedFormat":1},{"version":"5bf51107315834a209b08395b141e262b7d143d14f6b4e4d403d8e020cef7e32","impliedFormat":1},{"version":"db0dcbe48d5cb38315083b412c8ab6995b0d42dc73b286833e296827feb0e5b4","impliedFormat":1},{"version":"b3e4a49a3ba19463662e7b821544948b953d2f6708370d42406bda558084000c","impliedFormat":1},{"version":"90bebc017d1c8408719f5a056813cce04e171a53469c263a136c35076121bab0","impliedFormat":1},{"version":"0675f9dddf11b81ec71825d5d97fdd789e445003506255513e0fc829ebfb795a","impliedFormat":1},{"version":"32d1e153cac16ca3a3f5f6b68fae76cddcda509950fa00d038c465776359db0c","impliedFormat":1},{"version":"0d85d0fa55dd433acf924675d7e976c025c8521c91a76079844cd15e52855ccf","impliedFormat":1},{"version":"89da6ea3ee9735e712691227b0e5ee74381779f9ad8b0f4fb7ced0247b16735a","impliedFormat":1},{"version":"37f90d8b4384dae49b873e620b7fff15655c706105104809114ba98df6373124","impliedFormat":1},{"version":"7618f7fdf0abf7f712cefe766ac1ab7fcd1f8e753c513e57d3ada9ada3a57257","impliedFormat":1},{"version":"759df9936f492afeacebec2cea4efafdb647951e0e5edfc4c677ce2441eac9d0","impliedFormat":1},{"version":"8d8848528b40a84ab42200e89d08f3d5cd83efa275de1bb70ae38cb9e6fd5911","impliedFormat":1},{"version":"0e323630cbfda771430e2720f6a2f02f257becd8fb9722aa975ae773fb572210","impliedFormat":1},{"version":"56dbc770513baae28f7cfbadeba5078bb13a37a13132a5292e98a8b103312b98","impliedFormat":1},{"version":"84ff906032fe12e816bfb7441cee6726243e5a7316c4f2d6b0a6c149f1a91a16","impliedFormat":1},{"version":"a8641f25f667160f356c504936576de22899e50ea575d7a4da47fe3b3704dd93","impliedFormat":1},{"version":"dcbbe1fb0f2c0efc12e29db8bbccb5b82513384d01d7a55342065cb0611da272","impliedFormat":1},{"version":"af209189a194cf5ad1f7b22dd680b52843fec2e30f1283be20b2977872fd4424","impliedFormat":1},{"version":"14745f699217e89ff1034f7be978bc28c195472a597b5f36442ef83d954d47b0","impliedFormat":1},{"version":"10c1feac0328f8f90a81f348b7f3c6d3c3b3454e46fc045ba1a706406c58fd8e","impliedFormat":1},{"version":"f64cd565aca17df45f4666473da75e4ce51a2610e2ed1c31198e9f9325747a24","impliedFormat":1},{"version":"e415a17ab6a413d6be640457231e045541405eab1f0f370c7dd1e5567aa25999","impliedFormat":1},{"version":"8c03a41d6dc701b6648db83d71a92dc27147d7677ab5d70f32675e7e37b3795a","impliedFormat":1},{"version":"09c18bc60888c58e8f4568b6ca973af72613a8a01e7b213aab778e910ae18b2f","impliedFormat":1},{"version":"5258d7af58615ea380d959cbcb6d83cb7b9841b8c8267f5a0fcb36c092dadbdb","impliedFormat":1},{"version":"b2d74af681f440a07e714ae9a33e3ea49c79870b9674058114c0404d2aa2f190","impliedFormat":1},{"version":"24f31e43eb3505e5d2946315e7b8ee8b426dfbe92c3031e435a4eb2d9dd8d69f","affectsGlobalScope":true,"impliedFormat":1},{"version":"679f7b45a77210e6dd0d72a4b81fd177868d2eacfd8ee6919ce6babd7512562d","impliedFormat":1},{"version":"c669ee7ba01fa6a60b17c3535f96b65fa82dfd2a475a8760364f2f3952f9bcbd","impliedFormat":1},{"version":"a8b121f6a75d603075e62793ff0c109112e882dd6ca2b70bdccbd8d8f753429b","impliedFormat":1},{"version":"f378d7ed5e3ecbe382ade55127a9c98e826c76f786e06effad6fde91a7023d55","impliedFormat":1},{"version":"4e3e9539df72b3bfcc56fa13140070020dac72f1eff39237b11253482cb99847","impliedFormat":1},{"version":"5a47b3a2bbe2c9b015fe356462afe0abe391c592fffbe277126e2415e0811967","impliedFormat":1},{"version":"a3e797c70a421cda37cdea4349dced37dceb1611669652d9c4c5523467a55cbf","impliedFormat":1},{"version":"9164e652ff4e7cbd993ca20acd0e2ad7e1cb775a7aefc577b506cf588763ec42","impliedFormat":1},{"version":"e52840670587e82e129c9bfc6a2f42d9c2f2e1fd6ce176fea998383a8c941ea5","impliedFormat":1},{"version":"31ca1ee726f5d7c7709913b98be76fc40fdfaaca6ad7fafc222108981e11227c","impliedFormat":1},{"version":"556db73da59f5162cdf5c7ea1bc3b063b6ccb758078ef6517ad6f6e4ae7b199a","impliedFormat":1},{"version":"0a2c8ef08611f5a5f711c7b10ba70d10dc1c6af0c9dba8168cbbf34911b74188","impliedFormat":1},{"version":"1d6ef45145a9939a43062fe18188d4f7bdfdf4547978e1f6b7c9089fe53e81e5","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"509a86836776d5c821901abc16a2d21de674d2c8943ceb8d018049bf324bc56c","impliedFormat":99},{"version":"69036ac11b6dd5e3512b6cb0ab6b7a2782333b11bf2da4cbd62054f960df3965","signature":"38e6423394ba8d72d8aab99fb81c8df7756132d90659c30f415f1001e108872f"},"6fb75b70572bbb0df675403e4f5e68d324c805d4be321744fb9cc66c14089a9b",{"version":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"8a2ef120c4da7aab664148ed8d283aa0b98df4d5f15c570d830c8998ef05718b","impliedFormat":1},{"version":"4433d18f82991634feae5150a68f9b30f5b05b55416af8ff9f7251fb29431ed5","impliedFormat":1},{"version":"cc5d0b221824b7d8597e8a2bbdad2383af877eb564eaca392992049839e88c9e","impliedFormat":1},{"version":"21898d939444825cee1232af435330610b09171bea22a2f892cf2058d764b63d","impliedFormat":1},{"version":"6ec5f3b496e6f10c4f0a079e3b1102acef9c0bf5e3464909fa6e88b16a26480f","impliedFormat":99},{"version":"d9d320cf31f6d63659484f6c9ca4db4ae673daefa65118dd8589838925ff1397","impliedFormat":99},{"version":"027cf2216d065a97bf5a8ea126b3ea2734fab6cfe32adaff81ab4e94a1b51bbe","impliedFormat":99},{"version":"f6e6313fad233c5141220f7d25eae120cdd6e5079fbe0aba56821a1e99d05df8","impliedFormat":1},{"version":"9534c35b4577c193e499178deb47419fdadddd5e53af5ec8cb88218848013f65","impliedFormat":1},{"version":"804dca323c25404588a6e71d76e52eb09806f05e6013f0be1fcea1fb7eed5fa3","impliedFormat":99},{"version":"aeba529dfa69caa0efcdee1f1455540250d026522e5551b20b8a7ba9eebc707a","impliedFormat":99},{"version":"dfe6945467765f8e7843442a9dfbcf6b5526b6465b07b4c75a54a750329b5f17","impliedFormat":99},{"version":"7f9f6c9fe0e48c401d855d849e28112ffe2425569eca01b08b8c6112b8200695","impliedFormat":99},{"version":"68fcdc663627d12d336b420b19b3e54258844d0cbca0879f711c22aafd853352","impliedFormat":99},{"version":"6e97a7762ca61b836f275a14bf22a1696559bfa01bd6176df9498e717b5ff298","impliedFormat":99},{"version":"86535783bd695ee43e1a403e8cc50b1d643d3741df8074d30fbfae3b0438f996","impliedFormat":99},{"version":"7c94c072f4eef88b15710e2a6dd17036bfd943b390976aecc94af63df2f8a287","impliedFormat":99},{"version":"7e8a2efc54958a4ea7d678671d8703b00ae48a519d0f795a8f44f605abdba3d5","impliedFormat":99},{"version":"1409a9680115403cac91934df0062646e0a77f1b220b60faec5fe26cd775d9ca","impliedFormat":99},{"version":"335226d599a9382c9bea07d37e23bf998c1022c0f67e4d6d2b69633de6ac118f","impliedFormat":99},{"version":"ae430fd9bac320e71c3fe9299d90dcf67555d9a4f97ecaa35947b430ba8648ea","impliedFormat":99},{"version":"9061ff14146280f47d740b344ddd641c16df526ecaa868c348852277a9fb8686","impliedFormat":99},{"version":"7fa70acc5eed701b456f21e33f8f289e9e0e77fdd1f952385c33d6b9ecfb2021","impliedFormat":99},{"version":"16c6bbe197b6bf88db162c620e37218fab4c1c32892132d4aa33e461ae2b990a","impliedFormat":99},{"version":"9778598e1d86d1e544ab77fbc0bb5199d2fbb08ed386b3520732246b90005545","impliedFormat":99},{"version":"feed66ae8815d1981ad575482766fb9a82385e75cce35ae2f13be58e50c4349f","impliedFormat":99},{"version":"7e500d1f51b14c04c6dce8dcbadc5c48f4bec6fca0f321397c165868834916a2","affectsGlobalScope":true,"impliedFormat":99},{"version":"20c1041fbd4f1537686af4b707872b87c90a22201f8979e5def4554d28b46a5b","impliedFormat":99},"1492a06643311a66d01dc0c15259c0dbe7c4d336e7a85cb7ece67085afd2e84f","47ace7a5fa09cb19907ed7cb83a867b05ecff3e10bb229888e24f82b2c03b869","6d878f3072ec5afa5c70f9c13668a98d3bd737a60b9570f6fee4c876f0785fb5","484e21c9eea0ff574a965d93cc3e141ff5863df86182adce9d993dba03113750","d533d1fe3018752aa47ee74ae5dbdca34377441b891176ad99bd33366a64372f","44b82e4f46178400732ea809a906f7ffb9dd38efab331ca23e7ca4586bf903ef","d3dcff003bac57338c3e60be409d0ff167ec1ff513539a5534c7679332dbc992","16d64c89cec74fa23e8cee7c72acc7549f117dcf7845051870c40366c7522d09","11f9f682c02d51de68eed569f8de1e91c56df296a78f3a6c520b93d52aac2308","28b43630d8d29a300e1e5b0f5efb04c8f994d372fff1b653ce8bb70d4e011e1a","b06c48902c3d127098839c1a6500f41d3e21b2f07f277ba7de23ec730df7275d","94659c94bb0ae17efde21aaf59f2beb05d286bea13f2d3b2b288a6df4faeac18","a7a0e658ca429cfb5268d4bf2e2e6e9fe871ffd06b6588d65424ba4eba35338f","ab4c80cb9cf211a7cd100429cb4a823c5bd9f3618bf981e6504c6606abf08656","e60dd3f69310681e28813b910da7d57f5cf0078feccfd683d22a29b45bb7a035","ccd708c3fff99b4ec315e14315dce6b9e85f4c96d10131e9fd219edb6efbdb26","abc924fce33b86b9f8588de3a5be04c609fafa6cb1dc42629b3e9e3e18f7d018","f919e3a8b2d274b631ee4fee0c50eba1d3f39ceaccba04dff915e9f61e9f153c","3ae17ae844491c7326d070c3e70a94a9239394e7a1e84eb203eb1d57470e752e","d1b2970d348eb9f89ef0f0c6730d27e9331067a28f21c8bd667ba1138d5d3e93","b2c4833e6308888c3947953770b3343deaf4276c803bb36148991a3fb90b4f6a","41b7c8204ea79a93e380a228f5c744e9c9a80183133ac62633a4c76e3fdbd7db","d0a441df587b0632c16a813117f110574d903ddd0bc4d28599cc82ff8af7c094","b24ac81f4fcff56ed9827736abcf2f92ea5f86e16d66eb2ee3ccfa0bb8143bc9","068309ff581d08c276c4a772ddf3ab9c8090e591fc9917fdc6cdffc12c95a5bf","5c1d368a451520260ebb6c06121201f18abf86d80540290df6e424d372c5d0ed","bb3ccaacf5c19a7170939b7f735c6a94537fd95ad16b4247a6ad572b23183e74","2c8b86d9d29c4ea62762c3815ffe4fdb0c5dbc0dd096b9703236010f4a17c255","9528dc401d1a2502393af70423c895c3df61ef62240c0dca429a7cd1bd535b82","eebf270ff516980678bf039e03e18a9461f196aee2825d4d65f7d8a1fa362bff","ee4e73f46ce2f6517e82434bd9fc63c8b6b2179d37d74525899f124a76d06669","b04de3a3cd10559130d898b36da5612fda5db2c31c95b502077cad9fe538ed6c","bc4c3476708a74ae09c06bcdbb9765baaa135592e1cf6e25f2ee9a942c6cd5ec","29e6e980f179ac2981d68954462dfd4a4545f73c021f6a4c8a5f442c0e16e56c","faa64d270fa523f80fd31bc7340ee7f6a21632c2ea0cea6535bf5a34bcc6adf7","cbd4ce7ee090549d836cbffac2e76a192ac5b1c5f15bcbe29c06d32dc7006f34","ea5a5d5873c239b97d846fb8c78437e08ffd731924764f746c0ebcb7731d7648","fb6b5b4592e0eca5b8dc2507432e621a18c16d488ae8a610e4d1ddba1edff667","df85ab12f80aced067959d43bd7744017fccb1eb95adcfa343f16cba7c9ef670","613df14d2c8c0ba78286705c4ed01ec701ed03189ca3803dd69bc7086b9c02ff","298f8d2584216932ea238927177ef343d0b8da735eb40a5ba96b1f92e3675e33","7251030d0662b66ffa03f1c75c81ea0e564c9f6c872b0658a25e64f35b68ce7a","c7aae030db999a44577cda213fc5d9b2cac4e55d8572ed5110fe6d187ba502c0","6f1302be2fa00d8a64e3bd48b4ccdf5d77a402441d7728d48c2ecee706c79127","6732e7ad2c80ba3cb1401747b84a5bb72398cabf5f66c6ffa0b987aef9cfaa1d","c1e64c51dadfcea7b7995040c64b5ac7e8f954f2a4adf4eb92e7a462ba5275e8","bc7f95b0d6bad663e863ac377dc7ca204f98b5d45e26a3a98322b749174b212b","0980c5ed20b37d5590006581385fa0978231b063b1568ab20ce89f9d20d7bcf6","6b4f6597bc1bd012b4f4a432712d47a8e8f8f6afa8b31eb09e87b4eaade18dbd","1faecae140107164a7fa6a970b002ba0111507d7b8181ecff0803eb9d467ff9b","665236eec0c0da8d3f7cdba8f01f98233425d8c065058e513b33385e417a56d2","50e8918146f4e8a9240bf867a07cf8aa0deb21fee8d4507e74ff62c8c6af42e9","666640b08e3ce76b6a8c76ce1f9f5b986923d3c76663b7fa4bc36e3af734ec46","06a0c1d5391b25d56e45a6c22e70c87fe7a516603415c190fc9438e53982d5ec","cd64b34e8875a6ac5d727f237344998d529ad7a4bef401908de1587cc8c8c7ca","8aef56fa48c05b90e1342fac86649d390de81b985cc9c40c5a1024b331626344","7a82c7b4bfaea3d44e2241353697693daed6881743cec95d1814c23fbfb993bd","61bb1099994be652580d1ac07986a6aa7bf04643fe20ea3fd15148b0ef0f9c4c","0f734c3a2e7c958fa9f82068c541ba3a3fd119dcfb242bbf761b49e91098ce7b","658522866e9c6b8c7ddc5c8502901c08217c0edcd8b868ddb926369d070c4b40","a0ade903bb94ae5c3318dd83e268282cc943122b9a5d0860ed73a1abc056a7da","e4a0dec5576f1f3a0efa482480eb53db258ae24f505a938a880fcfd11c402657","18c56c5a13d01291c50fbae2658bd5f7a2f94984071a4cf1c302869287002470","de09e6c7c4e6257fb1c31c22af9be1f35747589f7af54045e19d95dc37384089","f4d9780e6fe1b031ed707b72008e52645a493cac54b4ca50043fa0b8b26c2828","0b13283b7b7f0c2af3f34c24838db91af85910752435e7382d70f938538b70b1","a0f0c22f7b7afd4173cbe844a19ea1adc7956f5fdbde6767c3e20a1e7dbc10dd","482923ec0d1e3817f9fbc00435690b10761fdbc95c8034b43d9b3a0622b820f0","f11c1b134601fb9bf79236afd5117b10f07caf7ec53b39658a47ba2210e183af","8b157145ca9be70e446f1885f4418babbc9f991704b419106d59584a1670810b","ee57677277db2c2c2b43ff9a860a1a77a47e904170fa856bc3b717d741da0955","a45d84ce55cf73c7de8b034a26fe7db782c42138bee10b0ee8f763445aad9b38","88c4fd5982524a18a8a3e509d4e4bdd4925ea726ca0c650345574bc5f104e1b8","91af1658cb34a091f6e1bb51a0595314f6137c10cec58e743c4214d775e034ff","b66707253e2bdaf88977affb69ea43fc86340481e63013f23bfc52a984dd924c","8177a2190ccc0237516018f568324bcb29031e058320d30a11060316daa14889","5b916bbd9f54d42a3cc3293f0c2d0dfb0aed133a64cd6f67f2bf8093a3fa979a","ee1f748c91c68a9c96978d5e3cebaaabf44fd668f8a4cc60313a28627ca260df","d4e3b7c303074abab1abd8eceb2095eda6ad6d57e3456877ca758112d17c10f0",{"version":"26a41142288fe5a8b922786fe8b0c937c33a99831d0d86bd41ec354f10ca7494","impliedFormat":99},{"version":"e3fc48217a1a9dffffe3c8c30a5b9e74cf60f685b462fa1a35279bcfd5b5ece8","impliedFormat":99},{"version":"4b7a98f69afc08b5e100a35bebda9a0231fcbd9d5765d06ba2132c94419778e0","impliedFormat":99},{"version":"57bbb45fc8429d19493bf4f45af67cba806f5a87579108c4ecfac79c84f6658d","impliedFormat":99},{"version":"9de3933878adc9a6ff30b5fedc41aa49292519cd8c165fe091c6fa1686322bf5","impliedFormat":99},{"version":"32b6cc08863b7eb0af3e6295a28796470987d715d1ba8bcab166fd7ef522d06a","impliedFormat":99},{"version":"2d90159300e4ca63b66006d66995942f466c5cf410b256f824cf499a6365ccfd","affectsGlobalScope":true,"impliedFormat":99},{"version":"0407e47717309e8160f9484e8d0c0652206bbf3c2d6ee38ef53e198e6b09b01c","impliedFormat":99},{"version":"46595b2476a3fbc6e4a56baf77a62e503e0de36c5082e0ccd2eb1ef18fad1a25","impliedFormat":99},{"version":"922de77ba0afb9fd1672befd7985c127710512ecab6f6c7820fb8ab5b95debf6","impliedFormat":99},{"version":"cdf71e53a8d2784b157b4e654bdad7c4eed0ca99d34ea310c948d4b566886b73","impliedFormat":99},{"version":"9f10d61fe8a510122cf556512e581553ada60a4214818e00263715f76e1a34ab","impliedFormat":99},{"version":"20adf9ee1f27056a628ab2f789fc99fbf86dd9bd1e20df01b78d9f6b44b5fcd9","impliedFormat":99},{"version":"0eb8b12349052025a442fdc4470ea3029d492ccfffd8a99b7cbf9600bdeaefca","impliedFormat":99},{"version":"f4b29100aa12f8f647a34b889c1b206572901de91ce4bb2ae2597f516b09d1bf","impliedFormat":99},{"version":"80b126fa9b5074875fe9734c8dd78d046ccd947fd9d8a44f2c6e5552615b760e","impliedFormat":99},{"version":"f3e69e002deb0b8718fd8310a6c1ef3c5f449cf43493ff772a781cc477ecaa31","impliedFormat":99},{"version":"a291f9a4e188657df6bf407f3388ad8edfcd328c79d00d51668941a12338a756","impliedFormat":99},{"version":"42b160641e23dc55783ae1fb622463b770df9e493e30cd4928cb45fef02adedc","impliedFormat":99},{"version":"b67e702780cafa5f1c3c11e670cb1fb663969632ed10e2a87d6c87dbcf8e2d6b","impliedFormat":99},{"version":"53adce117288707fd02fb61a6f5ba160a1774542b4ba050ac4f6a7853ba257ae","impliedFormat":99},{"version":"7c96ecab862c96e84154bfb7cd5109ba578677e692fd3f68e41275d3b808e958","impliedFormat":99},{"version":"3ba50e5e596fa500c730e2d50c3e1b383cb00b4e7d8e807e571ececa216e1502","impliedFormat":99},{"version":"97e609f6bff704f1ce49a4d72d5784415c3321faa2d33dfc090ea30606e1190b","impliedFormat":99},{"version":"697b9f658ac8999d7f458e90a9d6ac9ecdff9e9a463e6c62e28716508528bb00","impliedFormat":99},{"version":"eac68e8ed5bffbc13f172650876144612410d8e3833dbe0ab462cf65fda3b409","impliedFormat":99},{"version":"4b24a36cba125482e759b2309508d80a86ad62c58f474fa327eec58276711bea","impliedFormat":99},{"version":"283c929cb01691caac6c39f3658635f6002a7b7dc9c0f75314b5ed218c29f912","impliedFormat":99},{"version":"bed7caec8d7e4ca4fa8183e27d92b57466b195a1632b0221f0e459f105462018","impliedFormat":99},{"version":"dd49e94f4b5fe5eea30388f8d4f3ff4e549d20b95cf1bd7ff1a07598e72f6dd7","impliedFormat":99},{"version":"9c2a1bb18e6a087b22b35497c253090fe7727af864309bc4ce56222e682276f9","impliedFormat":99},{"version":"f325c868e26875b483ecbf7ad3a2fd7ae30cc314689e92149e25428f8e4f98ca","impliedFormat":99},{"version":"8877c5566e42e4d7420cc4fd00b27e827a5dea5e8eef2d6a563ad6fcd0d2f5ef","impliedFormat":99},{"version":"d4c8a63565cc8d5d33d5d3c46fb25926fdeff7cc29dfabb31078cb2dcaa31bba","impliedFormat":99},{"version":"03d5c4c59bcc8fd6f710fdd66d0a689f4295d50a7252022aaa15f1524f19fabf","impliedFormat":99},{"version":"30ce1e1cc7146c6eb6b5450c580400da6cff2380bf32a194cd7150a947773fdf","impliedFormat":99},{"version":"72ea38343af82cad13b5433721d176f02b618f56331654be216bcc2e93d51f38","impliedFormat":99},{"version":"4e69f831ab5d1c1f4d622fa13bc6279510a7bb604d8921c021a09dff2be81722","impliedFormat":99},{"version":"818eccc2ecb3117fd2b0ab9503958814015993fa6c0c0d3fa4a5edd28e7cebbc","impliedFormat":99},{"version":"09feabbd4b74cc0a01b420970dd07ca25087c7a0c3c9500bec0cf9c68a592542","impliedFormat":99},{"version":"1940e4904197eb0bb713bea9635bdced865d249c46733023a5d22032adc325eb","impliedFormat":99},{"version":"c7cac70cdfe3063b95c6ca44ea44929d7b3e1d50092862226cd4225ddcc41348","impliedFormat":99},{"version":"5a6e095d5fb3b2f30f5a16645e3f3a6ec1b4bbd1c251c3c9d99daaf967e45400","impliedFormat":1},{"version":"1e7ed303370845bf261938082748ca45c13489706274604dab9d0feec01efe82","impliedFormat":1},{"version":"0ec45edaa575390cf54f9b3d982e102f832193a4ddde4fddf0ddea575532ac9c","impliedFormat":99},{"version":"2be9cead79f4f152480602c9e38bea207938b2d687803e2b99ef65c431fe36a7","impliedFormat":99},{"version":"54fd27432c0818a9d33256c01c899da30ccf16a9bd740c37f04ea9e1adabb848","impliedFormat":99},{"version":"4772a3cae2059f4dfeccbea669524cc66bcd8045d3e9f1b79f6e68ee50b244fd","impliedFormat":99},{"version":"3d927d62b19aac292c62538b1d46a001f1d6572b9c51bf247150ee46f0f68bac","impliedFormat":1},{"version":"5cf4d496a8b68479dc2c946e52e7fc83bf0bb0102ef14bf17a2267dd8402fe92","impliedFormat":1},{"version":"d73cfd1484017ca89ae5f248ce10da423a289e3c0cb554cc9e88dc2bff6a04dc","impliedFormat":1},{"version":"2b8b7fad8a0aee801d3b707aa66e54cdc49382bee46bf15f0984ab4713313767","impliedFormat":99},{"version":"102352fedca9fa346fe664a06b7034a03df02758dafae27b71164f64b0b0c877","impliedFormat":99},{"version":"412ba772ad682aa29a3d7c4b6e848375fdba879b6775fd47c3c86ec01a682290","impliedFormat":99},{"version":"d17dd4b890308cc97a82b866d6c07c9e22f699119fec32f180bd3ab37e5dfafb","impliedFormat":99},{"version":"ef6f297b35f6cfd938413393cf6726df4eba50281086914de237b0bcfc9dfdb4","impliedFormat":99},{"version":"cdf173c07524b483056946395f40f201b475b2c052654ca2e83af7bc37168f6b","impliedFormat":99},{"version":"07cbc706c24fa086bcc20daee910b9afa5dc5294e14771355861686c9d5235fd","impliedFormat":1},{"version":"48de6c38fbbce1e5ba8c01bbce29db767c465a0aad8b6fe979408508210a22bc","impliedFormat":99},{"version":"2a56b0e6be52ff70ead2c32e93d50f2ce33f3f4ddf9d01a3d586794c149975bb","impliedFormat":99},{"version":"f01cdc71a9f92a6925496049ee915efa3b627182235ec9d15b70fdc8f9df2a42","impliedFormat":99},{"version":"58cd81e6de4c60b019af46cd7c0c39d6f266454b39a581b2d1cc6d8770884431","impliedFormat":99},{"version":"ea242647edcd5cb93db943618abd3c3514ae466c86a139e99d0c1b9a2a59616c","impliedFormat":99},{"version":"46a7f9d8a08d149fe8e8a65b72da21e611851ac31b12486b79732bd5d8b0d469","impliedFormat":99},{"version":"a99d7da189d5d34feb1ebeae52d67e9caecad3c99415cdd3221f5032f3c099be","impliedFormat":99},{"version":"de72d78f25dbd061289ac632087c1acf4bc01375e46738787d7fdd308c479035","impliedFormat":99},{"version":"faefa0b27e93e6996e61a344c490963c28c805cc98bfe34a575e1873e1385db4","impliedFormat":99},{"version":"7c449348e2b085e294f69713ed29ecc7c5962671899bc7890592e1185e7c660c","impliedFormat":99},{"version":"b3c02b71bfcac59769d0cbe613529d016fb4ba7d358db77c82c2057cb5f730cf","impliedFormat":99},{"version":"4242b73382e83e65bb73ec53913292d40ce1ef9383dc30cfd3be560497e8555e","impliedFormat":99},{"version":"69f79a400499ef5f16df5530d9531046d2db4eaf3a878bdb4fbba91c10b0f936","impliedFormat":99},{"version":"307853cc0a8e545f202ccff219b1931da16d981653595dd1e6769adf80267319","impliedFormat":99},{"version":"ec1a899ded2c5419c64120cb8276e83ceacd27d1f2e9fd94189a030cf61df44e","impliedFormat":99},{"version":"dc44eb72d7d99fc3323ec1f96eb68f6539e790d020a467d3613a9218abec79b3","impliedFormat":99},{"version":"bc817f94cd79aa0ad37620b544e29a0f71da56f92ab27a033f2491ea7515c401","impliedFormat":99},{"version":"1355898958864fdc2120786bd4a12d7f650abc9826e32c25a41cb1e0008589e1","signature":"d49696c66973ac97cf4b536b1dff4ea9f83b358a9d9549f8d08418706edce026"},{"version":"18c85a67af82d70e96e041caa239da0c474bcf9f75efaab97c56f971014b030d","signature":"65a17bffff57378e1677216047fe78e8eac3e3a9a464694e9b79d824ea381b3b"}],"root":[98,283,284],"options":{"composite":true,"declaration":true,"declarationDir":"./","declarationMap":true,"emitDeclarationOnly":true,"exactOptionalPropertyTypes":true,"jsx":4,"jsxImportSource":"@lynx-js/react","module":99,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"noUncheckedIndexedAccess":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"strict":true,"target":6,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true},"referencedMap":[[232,1],[216,2],[210,3],[214,4],[211,5],[278,6],[240,7],[242,8],[241,9],[244,10],[243,8],[238,11],[233,12],[234,12],[236,12],[237,13],[229,14],[225,15],[226,16],[219,12],[280,17],[282,18],[279,19],[281,20],[249,21],[245,12],[246,22],[247,22],[248,22],[277,23],[252,12],[253,24],[260,25],[262,26],[261,4],[255,27],[263,4],[266,28],[267,12],[268,12],[269,4],[270,12],[271,12],[274,12],[276,12],[97,29],[116,30],[105,31],[117,32],[124,33],[126,34],[125,35],[107,36],[110,37],[111,38],[113,39],[114,40],[121,41],[120,42],[122,43],[123,42],[128,44],[127,45],[88,46],[90,47],[94,48],[91,49],[92,50],[87,51],[89,52],[44,53],[82,54],[73,55],[59,56],[56,55],[80,57],[57,55],[78,58],[58,59],[83,60],[66,59],[61,55],[60,61],[75,59],[81,62],[79,59],[62,55],[70,59],[71,59],[63,61],[69,59],[64,59],[67,59],[68,55],[76,59],[65,55],[72,59],[74,59],[47,63],[54,64],[85,65],[55,66],[95,67],[45,63],[46,68],[51,69],[52,70],[50,71],[41,72],[96,3],[109,73],[108,40],[104,40],[102,40],[103,74],[101,40],[129,4],[182,75],[132,76],[178,77],[183,4],[184,78],[188,79],[185,78],[186,80],[174,4],[187,81],[190,82],[193,83],[194,84],[197,85],[195,86],[189,4],[196,4],[191,86],[192,87],[177,88],[200,89],[198,90],[199,91],[173,90],[201,92],[202,93],[204,94],[203,95],[176,96],[175,97],[207,98],[206,99],[205,100],[136,101],[135,102],[137,103],[142,104],[139,102],[141,105],[140,101],[151,106],[147,107],[150,108],[149,109],[155,110],[156,110],[154,111],[158,112],[157,111],[172,113],[160,114],[161,115],[162,116],[165,117],[167,118],[164,119],[166,120],[170,121],[171,122],[284,123],[98,124],[283,125]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { type G9ProgressOverlayHandle, type G9ProgressOverlayPlacement, type G9ProgressOverlayPosition, type G9ProgressOverlayState, type G9ProgressReport, G9ProgressSession, type G9ProgressSessionConfig, type G9ProgressSnapshot, g9ProgressOverlayPlacement, g9ProgressQueuedCount, g9ProgressReport, g9ProgressTimings, } from './model.js';
|
|
2
|
+
export { type G9ProgressOverlayService, type G9ProgressPlacementProvider, g9ProgressMetrics, g9ProgressOverlay, progressOverlayServiceOf, useG9ProgressOverlay, } from './service.js';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,0BAA0B,EAC1B,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,WAAW,CAAC"}
|
package/dist/index.jsx
ADDED
package/dist/model.d.ts
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
/** One progress update (MAUI `G9ProgressReport`): `ratio` 0..1, or `null` for indeterminate. */
|
|
2
|
+
export interface G9ProgressReport {
|
|
3
|
+
readonly ratio: number | null;
|
|
4
|
+
/** Already-localized stage caption (shown as the context line). */
|
|
5
|
+
readonly stage?: string | null;
|
|
6
|
+
/** Optional secondary line (item, counter, endpoint); replaces the percent caption. */
|
|
7
|
+
readonly detail?: string | null;
|
|
8
|
+
}
|
|
9
|
+
/** Report factories and derived values (MAUI `G9ProgressReport.At` / `.Indeterminate` / `ClampedRatio` / `IsIndeterminate`). */
|
|
10
|
+
export declare const g9ProgressReport: Readonly<{
|
|
11
|
+
at: (ratio: number, stage?: string | null, detail?: string | null) => G9ProgressReport;
|
|
12
|
+
indeterminate: (stage?: string | null, detail?: string | null) => G9ProgressReport;
|
|
13
|
+
clampedRatio: (report: G9ProgressReport) => number | null;
|
|
14
|
+
isIndeterminate: (report: G9ProgressReport) => boolean;
|
|
15
|
+
}>;
|
|
16
|
+
/** The overlay's state machine (MAUI `G9ProgressOverlayState`); minimized is an orthogonal flag. */
|
|
17
|
+
export type G9ProgressOverlayState = 'running' | 'canceling' | 'success' | 'error';
|
|
18
|
+
/** Where the overlay is anchored (MAUI `G9ProgressOverlayPosition`). */
|
|
19
|
+
export type G9ProgressOverlayPosition = 'bottom' | 'top';
|
|
20
|
+
/**
|
|
21
|
+
* Where the overlay sits (MAUI 1.3.0 `G9ProgressOverlayPlacement`): the edge it anchors to, plus how far in from that
|
|
22
|
+
* edge's safe-area inset. Returned by the service's `placementProvider`.
|
|
23
|
+
*/
|
|
24
|
+
export interface G9ProgressOverlayPlacement {
|
|
25
|
+
readonly position: G9ProgressOverlayPosition;
|
|
26
|
+
/**
|
|
27
|
+
* Extra distance (px) from the anchored edge, on top of the inset and the overlay's own 14 px gap: below the top
|
|
28
|
+
* inset for `'top'`, above the bottom inset for `'bottom'`. Use it to clear the host's own chrome (a search or
|
|
29
|
+
* site-selector bar the overlay must not cover). Negative and non-finite values count as 0. Default 0.
|
|
30
|
+
*/
|
|
31
|
+
readonly offset?: number;
|
|
32
|
+
}
|
|
33
|
+
/** Placement values (MAUI `G9ProgressOverlayPlacement.Default` and the record's value equality). */
|
|
34
|
+
export declare const g9ProgressOverlayPlacement: Readonly<{
|
|
35
|
+
/** Bottom edge, no extra offset (MAUI `G9ProgressOverlayPlacement.Default`). */
|
|
36
|
+
default: Required<G9ProgressOverlayPlacement>;
|
|
37
|
+
/** The placement with `offset` made a non-negative number; `null`/`undefined` → the default. */
|
|
38
|
+
normalize(placement: G9ProgressOverlayPlacement | null | undefined): Required<G9ProgressOverlayPlacement>;
|
|
39
|
+
/** Same edge and same (normalized) offset. */
|
|
40
|
+
equals(a: G9ProgressOverlayPlacement | null | undefined, b: G9ProgressOverlayPlacement | null | undefined): boolean;
|
|
41
|
+
}>;
|
|
42
|
+
/** Queued operations behind the running one (MAUI `G9ProgressQueuedCount`). */
|
|
43
|
+
export declare const g9ProgressQueuedCount: Readonly<{
|
|
44
|
+
value: (count: number) => number;
|
|
45
|
+
hasQueue: (count: number) => boolean;
|
|
46
|
+
}>;
|
|
47
|
+
/** Timings fixed by the overlay (MAUI session constants; deliberately not options). */
|
|
48
|
+
export declare const g9ProgressTimings: Readonly<{
|
|
49
|
+
successTerminalMs: 2200;
|
|
50
|
+
cancelWatchdogMs: 5000;
|
|
51
|
+
reportMinIntervalMs: 100;
|
|
52
|
+
appearMs: 260;
|
|
53
|
+
disappearMs: 220;
|
|
54
|
+
insetGlideMs: 220;
|
|
55
|
+
}>;
|
|
56
|
+
/** What the view renders. */
|
|
57
|
+
export interface G9ProgressSnapshot {
|
|
58
|
+
readonly mounted: boolean;
|
|
59
|
+
/** Leaving: the disappear motion runs, then `mounted` turns false. */
|
|
60
|
+
readonly leaving: boolean;
|
|
61
|
+
readonly state: G9ProgressOverlayState;
|
|
62
|
+
readonly minimized: boolean;
|
|
63
|
+
readonly position: G9ProgressOverlayPosition;
|
|
64
|
+
/** Extra distance from the anchored edge (`G9ProgressOverlayPlacement.offset`, ≥ 0). */
|
|
65
|
+
readonly offset: number;
|
|
66
|
+
/**
|
|
67
|
+
* An edge change in progress (`moveTo`): `'out'` fades out at the old edge, `'in'` is the frame at the new edge before
|
|
68
|
+
* it fades in; `null` otherwise.
|
|
69
|
+
*/
|
|
70
|
+
readonly relocating: 'out' | 'in' | null;
|
|
71
|
+
readonly contextText: string;
|
|
72
|
+
/** `null` until a determinate report arrives. */
|
|
73
|
+
readonly ratio: number | null;
|
|
74
|
+
readonly stage: string | null;
|
|
75
|
+
readonly detail: string | null;
|
|
76
|
+
readonly queued: number;
|
|
77
|
+
/** Terminal texts. */
|
|
78
|
+
readonly terminalTitle: string | null;
|
|
79
|
+
readonly terminalSubtitle: string | null;
|
|
80
|
+
readonly retryText: string | null;
|
|
81
|
+
readonly canRetry: boolean;
|
|
82
|
+
/** Success dwell countdown, ms (0 when none). */
|
|
83
|
+
readonly countdownMs: number;
|
|
84
|
+
/** Bumps when the bottom inset should be re-read; `insetAnimated` says whether to glide. */
|
|
85
|
+
readonly insetVersion: number;
|
|
86
|
+
readonly insetAnimated: boolean;
|
|
87
|
+
}
|
|
88
|
+
/** Injected dependencies of {@link G9ProgressSession}. */
|
|
89
|
+
export interface G9ProgressSessionConfig {
|
|
90
|
+
setTimer(callback: () => void, ms: number): unknown;
|
|
91
|
+
clearTimer(handle: unknown): void;
|
|
92
|
+
now(): number;
|
|
93
|
+
/** Broadcast to the app's cancel listeners (MAUI `CancelRequested`). */
|
|
94
|
+
onCancelRequested(): void;
|
|
95
|
+
/** The neutral "cancelled" toast after a cancelled run closes (never the error terminal). */
|
|
96
|
+
onCancelled(): void;
|
|
97
|
+
/** The watchdog notice when a step cannot be interrupted at once. */
|
|
98
|
+
onCancelSlow(): void;
|
|
99
|
+
/** A retry action failed or a callback threw: reported, never thrown into the UI loop. */
|
|
100
|
+
onError(error: unknown): void;
|
|
101
|
+
}
|
|
102
|
+
/** A lease on the shared overlay (MAUI `G9ProgressOverlayHandle`); dispose settles once the overlay let go. */
|
|
103
|
+
export interface G9ProgressOverlayHandle {
|
|
104
|
+
/** Releases the lease; the last one waits for the terminal state to be seen before the overlay closes. */
|
|
105
|
+
dispose(): Promise<void>;
|
|
106
|
+
readonly disposed: boolean;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* The shared overlay session (MAUI `G9ProgressOverlaySession`): leases keep one visual alive (the oldest is the
|
|
110
|
+
* running operation, the rest are queued), reports are coalesced to ≤ 10 Hz, cancel is a broadcast and never an error,
|
|
111
|
+
* a failure waits for the user (retry or close), a success dwells 2.2 s, and the overlay closes when the last lease is
|
|
112
|
+
* released after its terminal state was seen. Timers are injected so the model is tested without a clock.
|
|
113
|
+
*/
|
|
114
|
+
export declare class G9ProgressSession {
|
|
115
|
+
private readonly config;
|
|
116
|
+
private leases;
|
|
117
|
+
private sequence;
|
|
118
|
+
private snapshot;
|
|
119
|
+
private readonly listeners;
|
|
120
|
+
private disposedValue;
|
|
121
|
+
private canceling;
|
|
122
|
+
private terminal;
|
|
123
|
+
private failureAcknowledged;
|
|
124
|
+
private successUntil;
|
|
125
|
+
private ackWaiters;
|
|
126
|
+
private retryRunning;
|
|
127
|
+
private retryAction;
|
|
128
|
+
private readonly timers;
|
|
129
|
+
private moveSettled;
|
|
130
|
+
/** Whether the overlay follows the host's placement provider (shown without an explicit position, MAUI 1.3.0). */
|
|
131
|
+
readonly followsProvider: boolean;
|
|
132
|
+
private pendingReport;
|
|
133
|
+
private lastReportAt;
|
|
134
|
+
/**
|
|
135
|
+
* @param placement - an edge (MAUI's explicit position) or a placement (edge + offset).
|
|
136
|
+
* @param followsProvider - `true` when the placement came from the host's provider, so `moveTo` may move it later.
|
|
137
|
+
*/
|
|
138
|
+
constructor(config: G9ProgressSessionConfig, placement: G9ProgressOverlayPosition | G9ProgressOverlayPlacement, followsProvider?: boolean);
|
|
139
|
+
subscribe: (listener: () => void) => (() => void);
|
|
140
|
+
getSnapshot: () => G9ProgressSnapshot;
|
|
141
|
+
get active(): boolean;
|
|
142
|
+
get leaseCount(): number;
|
|
143
|
+
private update;
|
|
144
|
+
private resetRunning;
|
|
145
|
+
private stopTimer;
|
|
146
|
+
/** Adds a lease (MAUI `AddLease`): the first mounts the view; one arriving on a terminal overlay resets it. */
|
|
147
|
+
addLease(contextText: string): G9ProgressOverlayHandle;
|
|
148
|
+
private release;
|
|
149
|
+
/** Waits for the terminal state to be seen, then tears down — unless a new lease took the overlay meanwhile. */
|
|
150
|
+
private closeWhenSeen;
|
|
151
|
+
private tearDown;
|
|
152
|
+
/** Coalesced to ≤ 10 Hz (MAUI `ReportMinIntervalMs`); ignored when canceling, terminal or indeterminate. */
|
|
153
|
+
report(report: G9ProgressReport): void;
|
|
154
|
+
private flushReport;
|
|
155
|
+
/** The "+N waiting" badge (MAUI `ReportQueued`). */
|
|
156
|
+
reportQueued(count: number): void;
|
|
157
|
+
/** The cancel tap: instant Canceling state, a broadcast, and the 5 s watchdog notice. */
|
|
158
|
+
cancel(): void;
|
|
159
|
+
/** Minimize to the bubble (running only) or restore. A terminal state always forces the full card. */
|
|
160
|
+
setMinimized(minimized: boolean): void;
|
|
161
|
+
/** Re-anchor after the page's bottom inset changed (MAUI `RefreshBottomInsetAsync`). */
|
|
162
|
+
refreshBottomInset(animate?: boolean): void;
|
|
163
|
+
/**
|
|
164
|
+
* Moves a mounted overlay to `placement` (MAUI 1.3.0 session `RefreshPlacementAsync`). The same edge with another
|
|
165
|
+
* offset glides like an inset change (220 ms; a jump when `animate` is false). An edge change cannot glide (the anchor
|
|
166
|
+
* flips between the layer's top and bottom, and a translation across the screen would sweep the card over everything):
|
|
167
|
+
* it fades out at the old edge and in at the new one with the disappear and appear motions, or jumps when `animate` is
|
|
168
|
+
* false. Nothing moves while minimized (the bubble stays where the user dragged it), unmounted or leaving, or when the
|
|
169
|
+
* placement is unchanged. A newer move supersedes a running one; a teardown cancels it. Resolves when the overlay
|
|
170
|
+
* stands at its spot, or when the move was superseded or cancelled.
|
|
171
|
+
*/
|
|
172
|
+
moveTo(placement: G9ProgressOverlayPlacement, animate?: boolean): Promise<void>;
|
|
173
|
+
/** Runs `step` after `ms`; a returned number schedules the final step (shown again) that much later. */
|
|
174
|
+
private afterMove;
|
|
175
|
+
private settleMove;
|
|
176
|
+
showSuccess(message: string | null, subtitle: string | null): void;
|
|
177
|
+
showFailure(reason: string | null, retryText: string | null, retryAction: (() => Promise<void> | void) | null): void;
|
|
178
|
+
/** The close tap on a failure: lets the last lease's dispose finish. */
|
|
179
|
+
acknowledgeFailure(): void;
|
|
180
|
+
/** The retry tap: resets to running and runs the retry once (a second tap while it runs joins it). */
|
|
181
|
+
retry(): Promise<void>;
|
|
182
|
+
/** The host went away: every pending wait settles, nothing runs afterwards. */
|
|
183
|
+
dispose(): void;
|
|
184
|
+
get disposed(): boolean;
|
|
185
|
+
/** App callbacks never take the overlay down (MAUI: every handler is exception-guarded). */
|
|
186
|
+
private safe;
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|