@k2b/ui 0.28.0 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/actions/ContextMenu.js +5 -0
- package/dist/browser/actions/ContextMenu.js.map +1 -1
- package/dist/browser/actions/DragAndDrop.js +89 -0
- package/dist/browser/actions/DragAndDrop.js.map +1 -0
- package/dist/browser/actions/GestureMenu.js +26 -3
- package/dist/browser/actions/GestureMenu.js.map +1 -1
- package/dist/browser/actions/drag-and-drop-messages.js +75 -0
- package/dist/browser/actions/drag-and-drop-messages.js.map +1 -0
- package/dist/browser/actions/drag-and-drop.js +692 -0
- package/dist/browser/actions/drag-and-drop.js.map +1 -0
- package/dist/browser/actions/index.js +1 -0
- package/dist/browser/actions/index.js.map +1 -1
- package/dist/browser/chat/ChatComposer.js +385 -265
- package/dist/browser/chat/ChatComposer.js.map +1 -1
- package/dist/browser/chat/ChatDecision.js +778 -0
- package/dist/browser/chat/ChatDecision.js.map +1 -0
- package/dist/browser/chat/ChatPrimitives.js +34 -28
- package/dist/browser/chat/ChatPrimitives.js.map +1 -1
- package/dist/browser/chat/ChatTimeline.js.map +1 -1
- package/dist/browser/chat/chat-messages.js +6 -0
- package/dist/browser/chat/chat-messages.js.map +1 -1
- package/dist/browser/chat/command-search.js +10 -3
- package/dist/browser/chat/command-search.js.map +1 -1
- package/dist/browser/chat/index.js +6 -1
- package/dist/browser/chat/index.js.map +1 -1
- package/dist/browser/chat/types.js.map +1 -1
- package/dist/browser/content/Calendar.js +3 -3
- package/dist/browser/content/Calendar.js.map +1 -1
- package/dist/browser/content/Chart.js +54 -71
- package/dist/browser/content/Chart.js.map +1 -1
- package/dist/browser/content/FileBrowser.js +2 -2
- package/dist/browser/content/FileBrowser.js.map +1 -1
- package/dist/browser/content/FileTree.js +42 -36
- package/dist/browser/content/FileTree.js.map +1 -1
- package/dist/browser/content/FileTypeIcon.js +72 -0
- package/dist/browser/content/FileTypeIcon.js.map +1 -0
- package/dist/browser/content/FileView.js +2 -2
- package/dist/browser/content/FileView.js.map +1 -1
- package/dist/browser/content/ReferenceChip.js +162 -0
- package/dist/browser/content/ReferenceChip.js.map +1 -0
- package/dist/browser/content/calendar-pointer.js +9 -0
- package/dist/browser/content/calendar-pointer.js.map +1 -1
- package/dist/browser/content/calendar-time-view.js +6 -3
- package/dist/browser/content/calendar-time-view.js.map +1 -1
- package/dist/browser/content/index.js +2 -0
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/layout/AppOverview.js +1 -1
- package/dist/browser/layout/AppOverview.js.map +1 -1
- package/dist/browser/layout/AppWorkspace.js +644 -445
- package/dist/browser/layout/AppWorkspace.js.map +1 -1
- package/dist/browser/layout/PanelDialog.js +88 -86
- package/dist/browser/layout/PanelDialog.js.map +1 -1
- package/dist/browser/layout/ResizeSeparator.js +81 -0
- package/dist/browser/layout/ResizeSeparator.js.map +1 -0
- package/dist/browser/layout/SidebarSwitcher.js +9 -2
- package/dist/browser/layout/SidebarSwitcher.js.map +1 -1
- package/dist/browser/layout/TabBar.js +15 -12
- package/dist/browser/layout/TabBar.js.map +1 -1
- package/dist/browser/layout/app-workspace-controller.js +130 -17
- package/dist/browser/layout/app-workspace-controller.js.map +1 -1
- package/dist/browser/layout/index.js +3 -1
- package/dist/browser/layout/index.js.map +1 -1
- package/dist/browser/layout/resize-separator.js +90 -0
- package/dist/browser/layout/resize-separator.js.map +1 -0
- package/dist/browser/layout/workspace-messages.js +12 -2
- package/dist/browser/layout/workspace-messages.js.map +1 -1
- package/dist/browser/surfaces/LinkCard.js +1 -1
- package/dist/browser/surfaces/LinkCard.js.map +1 -1
- package/dist/browser/surfaces/Placeholder.js +14 -3
- package/dist/browser/surfaces/Placeholder.js.map +1 -1
- package/dist/browser/surfaces/StatCell.js +23 -0
- package/dist/browser/surfaces/StatCell.js.map +1 -1
- package/dist/browser/widgets/Widget.js +1 -1
- package/dist/browser/widgets/Widget.js.map +1 -1
- package/dist/ssr/actions/ContextMenu.js +5 -0
- package/dist/ssr/actions/ContextMenu.js.map +1 -1
- package/dist/ssr/actions/DragAndDrop.js +63 -0
- package/dist/ssr/actions/DragAndDrop.js.map +1 -0
- package/dist/ssr/actions/GestureMenu.js +26 -3
- package/dist/ssr/actions/GestureMenu.js.map +1 -1
- package/dist/ssr/actions/drag-and-drop-messages.js +75 -0
- package/dist/ssr/actions/drag-and-drop-messages.js.map +1 -0
- package/dist/ssr/actions/drag-and-drop.js +692 -0
- package/dist/ssr/actions/drag-and-drop.js.map +1 -0
- package/dist/ssr/actions/index.js +1 -0
- package/dist/ssr/actions/index.js.map +1 -1
- package/dist/ssr/chat/ChatComposer.js +131 -14
- package/dist/ssr/chat/ChatComposer.js.map +1 -1
- package/dist/ssr/chat/ChatDecision.js +465 -0
- package/dist/ssr/chat/ChatDecision.js.map +1 -0
- package/dist/ssr/chat/ChatPrimitives.js +2 -2
- package/dist/ssr/chat/ChatPrimitives.js.map +1 -1
- package/dist/ssr/chat/ChatTimeline.js.map +1 -1
- package/dist/ssr/chat/chat-messages.js +6 -0
- package/dist/ssr/chat/chat-messages.js.map +1 -1
- package/dist/ssr/chat/command-search.js +10 -3
- package/dist/ssr/chat/command-search.js.map +1 -1
- package/dist/ssr/chat/index.js +6 -1
- package/dist/ssr/chat/index.js.map +1 -1
- package/dist/ssr/chat/types.js.map +1 -1
- package/dist/ssr/content/Calendar.js +3 -3
- package/dist/ssr/content/Calendar.js.map +1 -1
- package/dist/ssr/content/Chart.js +19 -23
- package/dist/ssr/content/Chart.js.map +1 -1
- package/dist/ssr/content/FileBrowser.js +2 -2
- package/dist/ssr/content/FileBrowser.js.map +1 -1
- package/dist/ssr/content/FileTree.js +21 -14
- package/dist/ssr/content/FileTree.js.map +1 -1
- package/dist/ssr/content/FileTypeIcon.js +50 -0
- package/dist/ssr/content/FileTypeIcon.js.map +1 -0
- package/dist/ssr/content/FileView.js +2 -2
- package/dist/ssr/content/FileView.js.map +1 -1
- package/dist/ssr/content/ReferenceChip.js +121 -0
- package/dist/ssr/content/ReferenceChip.js.map +1 -0
- package/dist/ssr/content/calendar-pointer.js +9 -0
- package/dist/ssr/content/calendar-pointer.js.map +1 -1
- package/dist/ssr/content/calendar-time-view.js +6 -3
- package/dist/ssr/content/calendar-time-view.js.map +1 -1
- package/dist/ssr/content/index.js +2 -0
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/layout/AppOverview.js +1 -1
- package/dist/ssr/layout/AppOverview.js.map +1 -1
- package/dist/ssr/layout/AppWorkspace.js +272 -95
- package/dist/ssr/layout/AppWorkspace.js.map +1 -1
- package/dist/ssr/layout/PanelDialog.js +7 -6
- package/dist/ssr/layout/PanelDialog.js.map +1 -1
- package/dist/ssr/layout/ResizeSeparator.js +45 -0
- package/dist/ssr/layout/ResizeSeparator.js.map +1 -0
- package/dist/ssr/layout/SidebarSwitcher.js +9 -2
- package/dist/ssr/layout/SidebarSwitcher.js.map +1 -1
- package/dist/ssr/layout/TabBar.js +1 -1
- package/dist/ssr/layout/TabBar.js.map +1 -1
- package/dist/ssr/layout/app-workspace-controller.js +130 -17
- package/dist/ssr/layout/app-workspace-controller.js.map +1 -1
- package/dist/ssr/layout/index.js +3 -1
- package/dist/ssr/layout/index.js.map +1 -1
- package/dist/ssr/layout/resize-separator.js +90 -0
- package/dist/ssr/layout/resize-separator.js.map +1 -0
- package/dist/ssr/layout/workspace-messages.js +12 -2
- package/dist/ssr/layout/workspace-messages.js.map +1 -1
- package/dist/ssr/surfaces/LinkCard.js +1 -1
- package/dist/ssr/surfaces/LinkCard.js.map +1 -1
- package/dist/ssr/surfaces/Placeholder.js +4 -2
- package/dist/ssr/surfaces/Placeholder.js.map +1 -1
- package/dist/ssr/surfaces/StatCell.js +23 -0
- package/dist/ssr/surfaces/StatCell.js.map +1 -1
- package/dist/ssr/widgets/Widget.js +1 -1
- package/dist/ssr/widgets/Widget.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/actions/ContextMenu.d.ts +1 -0
- package/dist/types/actions/DragAndDrop.d.ts +29 -0
- package/dist/types/actions/drag-and-drop-messages.d.ts +35 -0
- package/dist/types/actions/drag-and-drop.d.ts +36 -0
- package/dist/types/actions/index.d.ts +2 -0
- package/dist/types/chat/ChatComposer.d.ts +19 -1
- package/dist/types/chat/ChatDecision.d.ts +133 -0
- package/dist/types/chat/ChatPrimitives.d.ts +4 -1
- package/dist/types/chat/ChatTimeline.d.ts +2 -1
- package/dist/types/chat/chat-messages.d.ts +3 -0
- package/dist/types/chat/command-search.d.ts +3 -0
- package/dist/types/chat/index.d.ts +23 -1
- package/dist/types/chat/types.d.ts +54 -1
- package/dist/types/content/Chart.d.ts +9 -3
- package/dist/types/content/FileTypeIcon.d.ts +27 -0
- package/dist/types/content/ReferenceChip.d.ts +49 -0
- package/dist/types/content/calendar-pointer.d.ts +6 -0
- package/dist/types/content/index.d.ts +3 -0
- package/dist/types/layout/AppWorkspace.d.ts +5 -3
- package/dist/types/layout/ResizeSeparator.d.ts +9 -0
- package/dist/types/layout/TabBar.d.ts +7 -0
- package/dist/types/layout/app-workspace-controller.d.ts +2 -0
- package/dist/types/layout/index.d.ts +3 -1
- package/dist/types/layout/resize-separator.d.ts +18 -0
- package/dist/types/layout/workspace-messages.d.ts +5 -0
- package/dist/types/surfaces/StatCell.d.ts +6 -0
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["actions/drag-and-drop.ts"],"sourcesContent":["import { createSignal } from \"solid-js\";\nimport { suppressTextSelection } from \"../internal/text-selection\";\nimport type { DragAndDropMessages } from \"./drag-and-drop-messages\";\n\nexport type DragPayload<Type extends string = string> = {\n /** What is dragged, such as \"mail.message\"; targets accept by this. */\n type: Type;\n /** Opaque to @k2b/ui: the application's reference, such as an ID or a ref string. */\n value: string;\n /** Names the item in the preview and in announcements. */\n label: string;\n /** Tabler class for the preview, such as \"ti ti-mail\". */\n icon?: string;\n /** More than one item is dragged: shown as a count on the preview. */\n count?: number;\n};\n\nconst SLOP = 10;\nconst IGNORE = \"input, textarea, select, [contenteditable]:not([contenteditable='false']), [data-drag-ignore]\";\nconst HOLD_MS = 500;\nconst AUTOSCROLL_EDGE = 32;\nconst [readActiveDrag, setActiveDrag] = createSignal<DragPayload>();\n/** Reactive payload of the drag in progress, or undefined. */\nexport const activeDrag = (): DragPayload | undefined => readActiveDrag();\nconst dragStartListeners = new Set<(pointerId: number) => void>();\n/** Internal hand-over to the gesture menu that owns this press. */\nexport const onPointerDragStart = (listener: (pointerId: number) => void): (() => void) => {\n dragStartListeners.add(listener);\n return () => dragStartListeners.delete(listener);\n};\n\ntype Target = {\n element: HTMLElement;\n accept: readonly string[];\n label: string;\n messages: DragAndDropMessages;\n disabled?: boolean;\n drop: (payload: DragPayload) => void;\n};\ntype Session = {\n payload: DragPayload;\n origin: HTMLElement;\n cancel: () => void;\n targetsChanged?: () => void;\n};\ntype Engine = {\n targets: Set<Target>;\n byElement: WeakMap<Element, Target>;\n session?: Session;\n abandonPress?: () => void;\n};\nconst engines = new WeakMap<Document, Engine>();\nconst engineFor = (doc: Document): Engine => {\n let engine = engines.get(doc);\n if (!engine) {\n engine = { targets: new Set(), byElement: new WeakMap() };\n engines.set(doc, engine);\n }\n return engine;\n};\nconst accepts = (target: Target, payload: DragPayload) =>\n target.element.isConnected && !target.disabled && target.accept.includes(payload.type);\nconst isModal = (dialog: Element) => {\n try {\n return dialog.matches(\":modal\");\n } catch {\n return dialog.matches(\"dialog[open]\");\n }\n};\n/** The modal dialog around an element; while one is open, everything outside of it is inert. */\nconst modalOf = (element: Element): Element | undefined => {\n for (let dialog = element.closest(\"dialog\"); dialog; dialog = dialog.parentElement?.closest(\"dialog\") ?? null)\n if (isModal(dialog)) return dialog;\n return undefined;\n};\nconst visible = (element: Element) =>\n typeof element.checkVisibility === \"function\"\n ? element.checkVisibility({ checkVisibilityCSS: true })\n : element.getClientRects().length > 0 && getComputedStyle(element).visibility !== \"hidden\";\n/**\n * A keyboard destination must be one a pointer could reach from where the pickup started: shown and visible, not\n * inert, and in the same modal dialog as the origin.\n */\nconst reachable = (target: Target, origin: HTMLElement) => {\n const element = target.element;\n if (element.closest(\"[inert]\") || modalOf(element) !== modalOf(origin)) return false;\n return visible(element);\n};\nconst mark = (target: Target, payload?: DragPayload) => {\n if (payload && accepts(target, payload)) target.element.dataset.drop = \"ok\";\n else delete target.element.dataset.drop;\n};\nconst containerFor = (origin: HTMLElement): HTMLElement => {\n try {\n return origin.closest<HTMLDialogElement>(\"dialog[open]:modal\") ?? origin.ownerDocument.body;\n } catch {\n return origin.closest<HTMLDialogElement>(\"dialog[open]\") ?? origin.ownerDocument.body;\n }\n};\n/** A live region needs a moment between being inserted and being written to, or its first text goes unread. */\nconst ANNOUNCE_DELAY_MS = 100;\ntype Announcer = { region: HTMLElement; ready: number; queue: string[] };\n/** One live region per container: the body, or the modal dialog the drag happens in, as outside of it is inert. */\nconst announcers = new WeakMap<Element, Announcer>();\nconst announcerFor = (origin: HTMLElement): Announcer => {\n const parent = containerFor(origin);\n let announcer = announcers.get(parent);\n if (!announcer || announcer.region.parentElement !== parent) {\n const region = origin.ownerDocument.createElement(\"div\");\n region.className = \"k2b-drag-announcer\";\n region.setAttribute(\"role\", \"status\");\n region.setAttribute(\"aria-live\", \"polite\");\n region.setAttribute(\"aria-atomic\", \"true\");\n Object.assign(region.style, {\n position: \"absolute\",\n width: \"1px\",\n height: \"1px\",\n clip: \"rect(0, 0, 0, 0)\",\n overflow: \"hidden\",\n whiteSpace: \"nowrap\",\n });\n // First in a dialog: a dialog stack keeps its top level as the dialog's last child, and finds it there.\n if (parent === origin.ownerDocument.body) parent.append(region);\n else parent.prepend(region);\n announcer = { region, ready: performance.now() + ANNOUNCE_DELAY_MS, queue: [] };\n announcers.set(parent, announcer);\n }\n return announcer;\n};\nconst announce = (origin: HTMLElement, text: string) => {\n const announcer = announcerFor(origin);\n const write = (next: string) => {\n announcer.region.textContent = announcer.region.textContent === next ? `${next}\\u00a0` : next;\n };\n const wait = announcer.ready - performance.now();\n if (wait <= 0 && !announcer.queue.length) {\n write(text);\n return;\n }\n // Texts that come before the region is ready are read together once it is, so none replaces another unread.\n if (announcer.queue.push(text) > 1) return;\n origin.ownerDocument.defaultView!.setTimeout(() => write(announcer.queue.splice(0).join(\" \")), Math.max(0, wait));\n};\n\nexport const registerDropTarget = (element: HTMLElement, initial: Omit<Target, \"element\">) => {\n const engine = engineFor(element.ownerDocument);\n const entry: Target = { element, ...initial };\n // The live region exists long before the first drag, so its first announcement is read.\n announcerFor(element);\n engine.targets.add(entry);\n engine.byElement.set(element, entry);\n mark(entry, engine.session?.payload);\n engine.session?.targetsChanged?.();\n return {\n update(next: Omit<Target, \"element\">) {\n Object.assign(entry, next);\n mark(entry, engine.session?.payload);\n engine.session?.targetsChanged?.();\n },\n dispose() {\n engine.targets.delete(entry);\n engine.byElement.delete(element);\n delete element.dataset.drop;\n engine.session?.targetsChanged?.();\n },\n };\n};\n\nconst clearSession = (engine: Engine, session: Session, source?: HTMLElement) => {\n if (engine.session !== session) return;\n engine.session = undefined;\n if (source) delete source.dataset.dragging;\n for (const target of engine.targets) mark(target);\n setActiveDrag(undefined);\n};\n\n/**\n * Suppresses the click and touchend that follow the release of a drag or a hold. A drag cancelled while the button is\n * still down waits for that pointer's release; a new press or a cancelled pointer drops the wait.\n */\nconst swallowRelease = (doc: Document, pointerId?: number) => {\n const win = doc.defaultView!;\n if (pointerId !== undefined) {\n const stop = () => {\n win.removeEventListener(\"pointerup\", released, true);\n win.removeEventListener(\"pointercancel\", gone, true);\n win.removeEventListener(\"pointerdown\", gone, true);\n };\n const released = (event: PointerEvent) => {\n if (event.pointerId !== pointerId) return;\n stop();\n swallowRelease(doc);\n };\n const gone = (event: PointerEvent) => {\n if (event.type === \"pointerdown\" || event.pointerId === pointerId) stop();\n };\n win.addEventListener(\"pointerup\", released, true);\n win.addEventListener(\"pointercancel\", gone, true);\n win.addEventListener(\"pointerdown\", gone, true);\n return;\n }\n const click = (event: Event) => {\n event.preventDefault();\n event.stopImmediatePropagation();\n win.removeEventListener(\"click\", click, true);\n };\n const touchEnd = (event: Event) => event.preventDefault();\n win.addEventListener(\"click\", click, true);\n win.addEventListener(\"touchend\", touchEnd, { capture: true, passive: false });\n win.setTimeout(() => {\n win.removeEventListener(\"click\", click, true);\n win.removeEventListener(\"touchend\", touchEnd, true);\n }, 0);\n};\n\n/** Walks ancestors only; neither hit testing nor scrolling scans the target registry. */\nconst SCROLLS = /^(auto|scroll|overlay)$/;\nconst LOCKED = /^(hidden|clip)$/;\n/**\n * Scrolls the first container under the pointer that can still scroll toward the edge the pointer rests near. The\n * walk stops at a dialog, so the page behind a modal never scrolls, and the viewport scrolls only while the page is\n * not locked, as `dialogCore` locks it with `overflow: hidden`.\n */\nconst scrollAt = (doc: Document, hit: Element | null, x: number, y: number, cache: WeakMap<Element, { x: string; y: string }>) => {\n const win = doc.defaultView!;\n const root = doc.scrollingElement;\n const overflowOf = (element: Element) => {\n let overflow = cache.get(element);\n if (!overflow) {\n const style = win.getComputedStyle(element);\n overflow = { x: style.overflowX, y: style.overflowY };\n cache.set(element, overflow);\n }\n return overflow;\n };\n for (let element = hit; element; element = element.parentElement) {\n const viewport = element === root;\n let canX: boolean;\n let canY: boolean;\n if (viewport) {\n // The body's overflow applies to the viewport while the root's is visible.\n const own = overflowOf(element);\n const body = doc.body ? overflowOf(doc.body) : own;\n canX = !LOCKED.test(own.x) && !(own.x === \"visible\" && LOCKED.test(body.x));\n canY = !LOCKED.test(own.y) && !(own.y === \"visible\" && LOCKED.test(body.y));\n } else {\n const own = overflowOf(element);\n canX = SCROLLS.test(own.x);\n canY = SCROLLS.test(own.y);\n }\n const rect = viewport ? { left: 0, top: 0, right: win.innerWidth, bottom: win.innerHeight } : element.getBoundingClientRect();\n const step = (point: number, start: number, end: number, position: number, max: number) => {\n if (point < start || point > end) return 0;\n const before = point - start;\n const after = end - point;\n if (before < AUTOSCROLL_EDGE && position > 0) return -Math.max(1, Math.ceil(12 * (1 - before / AUTOSCROLL_EDGE)));\n if (after < AUTOSCROLL_EDGE && position < max) return Math.max(1, Math.ceil(12 * (1 - after / AUTOSCROLL_EDGE)));\n return 0;\n };\n const dx = canX\n ? step(x, rect.left, rect.right, element.scrollLeft, element.scrollWidth - (viewport ? win.innerWidth : element.clientWidth))\n : 0;\n const dy = canY\n ? step(y, rect.top, rect.bottom, element.scrollTop, element.scrollHeight - (viewport ? win.innerHeight : element.clientHeight))\n : 0;\n if (dx || dy) {\n const beforeX = element.scrollLeft;\n const beforeY = element.scrollTop;\n element.scrollLeft += dx;\n element.scrollTop += dy;\n if (element.scrollLeft !== beforeX || element.scrollTop !== beforeY) return true;\n }\n if (element instanceof HTMLDialogElement) return false;\n }\n return false;\n};\n\nexport const bindDragSource = (\n source: HTMLElement,\n read: () => { payload: DragPayload; disabled?: boolean; messages: DragAndDropMessages },\n): (() => void) => {\n const doc = source.ownerDocument;\n const win = doc.defaultView!;\n const engine = engineFor(doc);\n let abandon: (() => void) | undefined;\n /** Set while a held finger or a drag owns the touch, so the page must not scroll. */\n let blockTouch = false;\n /**\n * Bound for the source's whole life: WebKit decides at touchstart whether a touch can still be kept from scrolling,\n * and only a non-passive listener present by then lets the later hold do so.\n */\n const preventScroll = (event: TouchEvent) => {\n if (blockTouch && event.cancelable) event.preventDefault();\n };\n /**\n * Fields, editable text, and marked regions inside the source keep their own press and native drag, and so does a\n * whole source inside editable content, such as a paragraph in an editor.\n */\n const ignored = (target: EventTarget | null) => {\n // An SVG part has no editable state of its own; its nearest HTML ancestor tells.\n let html = target instanceof Element ? target : null;\n while (html && !(html instanceof HTMLElement)) html = html.parentElement;\n if (html instanceof HTMLElement && html.isContentEditable) return true;\n const found = target instanceof Element ? target.closest(IGNORE) : null;\n return found !== null && source.contains(found);\n };\n const nativeDrag = (event: Event) => {\n if (!ignored(event.target)) event.preventDefault();\n };\n const down = (event: PointerEvent) => {\n if (!event.isPrimary || event.button !== 0 || engine.session || read().disabled) return;\n if (!(event.target instanceof Element) || event.target.closest(\".k2b-drag-source\") !== source) return;\n if (ignored(event.target)) return;\n engine.abandonPress?.();\n // Ready before the drag starts, so its first announcement is read.\n announcerFor(source);\n const id = event.pointerId;\n const mouse = event.pointerType === \"mouse\";\n const start = { x: event.clientX, y: event.clientY };\n let point = start;\n let held = false;\n let finished = false;\n /** The pointer went up or away, so no click of this press is still to come. */\n let released = false;\n let session: Session | undefined;\n let messages: DragAndDropMessages;\n let preview: HTMLElement | undefined;\n let releaseSelection: (() => void) | undefined;\n let frame = 0;\n let timer: number | undefined;\n let over: Target | undefined;\n let refused: Target | undefined;\n const overflowCache = new WeakMap<Element, { x: string; y: string }>();\n const hold = () => {\n if (held || finished) return;\n win.clearTimeout(timer);\n if (read().disabled) {\n cancel();\n return;\n }\n held = true;\n blockTouch = true;\n source.dataset.held = \"\";\n win.addEventListener(\"keydown\", key, true);\n };\n // Android reports a long press as a context-menu event, which may come before the timer and opens a GestureMenu\n // around the source then. It counts as the hold, so the following move drags.\n const preventContext = (event: Event) => {\n event.preventDefault();\n if (!session) hold();\n };\n const clean = () => {\n if (finished) return;\n finished = true;\n win.clearTimeout(timer);\n win.cancelAnimationFrame(frame);\n win.removeEventListener(\"pointermove\", move, true);\n win.removeEventListener(\"pointerup\", up, true);\n win.removeEventListener(\"pointercancel\", cancelPointer, true);\n win.removeEventListener(\"pointerdown\", other, true);\n win.removeEventListener(\"blur\", cancel);\n win.removeEventListener(\"keydown\", key, true);\n win.removeEventListener(\"contextmenu\", preventContext, true);\n blockTouch = false;\n source.removeEventListener(\"lostpointercapture\", lostCapture);\n if (source.hasPointerCapture?.(id)) source.releasePointerCapture(id);\n delete source.dataset.held;\n delete source.dataset.pressing;\n preview?.remove();\n releaseSelection?.();\n if (engine.abandonPress === cancel) engine.abandonPress = undefined;\n if (abandon === cancel) abandon = undefined;\n if (session) {\n clearSession(engine, session, source);\n swallowRelease(doc, released ? undefined : id);\n } else if (held) swallowRelease(doc, released ? undefined : id);\n };\n const cancel = () => {\n if (finished) return;\n const payload = session?.payload;\n clean();\n if (payload) announce(source, messages.cancelled(payload));\n };\n const hitTest = () => {\n const payload = session!.payload;\n const hit = doc.elementFromPoint(point.x, point.y);\n let inner: Target | undefined;\n let next: Target | undefined;\n for (let element = hit; element; element = element.parentElement) {\n const target = engine.byElement.get(element);\n // A dialog is a boundary: a target around it lies behind it.\n if (!target && element instanceof HTMLDialogElement) break;\n if (!target) continue;\n inner ??= target;\n if (accepts(target, payload)) {\n next = target;\n break;\n }\n }\n const rejected = next ? undefined : inner;\n if (next !== over || rejected !== refused) {\n if (over) mark(over, engine.targets.has(over) ? payload : undefined);\n if (refused) mark(refused, engine.targets.has(refused) ? payload : undefined);\n over = next;\n refused = rejected;\n if (over) {\n over.element.dataset.drop = \"over\";\n announce(source, over.messages.over({ target: over.label }));\n } else if (refused) {\n refused.element.dataset.drop = \"refused\";\n announce(source, refused.messages.refused({ target: refused.label, label: payload.label }));\n }\n }\n if (over) over.element.dataset.drop = \"over\";\n if (refused) refused.element.dataset.drop = \"refused\";\n return hit;\n };\n const renderFrame = () => {\n frame = 0;\n if (finished || !session) return;\n preview!.style.transform = `translate3d(${point.x}px, ${point.y}px, 0)`;\n const hit = hitTest();\n if (scrollAt(doc, hit, point.x, point.y, overflowCache)) frame = win.requestAnimationFrame(renderFrame);\n };\n const begin = () => {\n const current = read();\n if (current.disabled || engine.session) {\n cancel();\n return;\n }\n const payload = { ...current.payload };\n messages = current.messages;\n session = {\n payload,\n origin: source,\n cancel,\n targetsChanged: () => {\n if (!frame) frame = win.requestAnimationFrame(renderFrame);\n },\n };\n engine.session = session;\n for (const listener of dragStartListeners) listener(id);\n if (finished) return;\n delete source.dataset.held;\n source.dataset.dragging = \"\";\n win.addEventListener(\"contextmenu\", preventContext, true);\n releaseSelection = suppressTextSelection(id);\n // Captured, the mouse's moves and release reach this drag also over an iframe, such as a PDF preview. A finger\n // or pen is captured by the browser already.\n if (mouse)\n try {\n source.setPointerCapture(id);\n source.addEventListener(\"lostpointercapture\", lostCapture);\n } catch {\n // The pointer is already gone; its pointerup or pointercancel ends the drag.\n }\n preview = doc.createElement(\"div\");\n // Inside the source's own .k2b-ui scope the preview inherits its theme, also a scoped dark one; a second\n // .k2b-ui would reset the tokens to light.\n const scope = source.parentElement?.closest<HTMLElement>(\".k2b-ui\");\n preview.className = scope ? \"k2b-drag-preview\" : \"k2b-ui k2b-drag-preview\";\n preview.setAttribute(\"aria-hidden\", \"true\");\n const icon = doc.createElement(\"i\");\n icon.className = payload.icon ?? \"ti ti-file\";\n const label = doc.createElement(\"span\");\n label.className = \"k2b-drag-preview__label\";\n label.textContent = payload.label;\n preview.append(icon, label);\n if (payload.count && payload.count > 1) {\n const count = doc.createElement(\"span\");\n count.className = \"k2b-drag-preview__count\";\n count.textContent = String(payload.count);\n preview.append(count);\n }\n // In the top layer the preview is placed against the viewport, also inside a transformed dialog, and stays above it.\n preview.setAttribute(\"popover\", \"manual\");\n (scope ?? doc.body).append(preview);\n preview.showPopover?.();\n preview.style.transform = `translate3d(${point.x}px, ${point.y}px, 0)`;\n for (const target of engine.targets) mark(target, payload);\n setActiveDrag(payload);\n if (finished) return;\n announce(source, messages.pickedUp(payload));\n win.addEventListener(\"keydown\", key, true);\n };\n const move = (event: PointerEvent) => {\n if (event.pointerId !== id || finished) return;\n point = { x: event.clientX, y: event.clientY };\n if (!session && Math.hypot(point.x - start.x, point.y - start.y) >= SLOP) {\n if (event.pointerType !== \"mouse\" && !held) {\n cancel();\n return;\n }\n begin();\n }\n if (session && !finished && !frame) frame = win.requestAnimationFrame(renderFrame);\n };\n const up = (event: PointerEvent) => {\n if (event.pointerId !== id || finished) return;\n released = true;\n if (!session) {\n clean();\n return;\n }\n point = { x: event.clientX, y: event.clientY };\n hitTest();\n const target = over;\n const payload = session.payload;\n const result = target ? target.messages.dropped({ label: payload.label, target: target.label }) : messages.cancelled(payload);\n const drop = target?.drop;\n clean();\n announce(source, result);\n drop?.(payload);\n };\n // Capture ends without a release only when the browser takes the pointer away.\n const lostCapture = (event: PointerEvent) => {\n if (event.pointerId === id) cancel();\n };\n const cancelPointer = (event: PointerEvent) => {\n if (event.pointerId !== id) return;\n released = true;\n cancel();\n };\n const other = (event: PointerEvent) => {\n if (event.pointerId !== id) cancel();\n };\n const key = (event: KeyboardEvent) => {\n if (event.key !== \"Escape\") return;\n // A hold is not a drag yet: Escape ends it and still reaches the menu the hold opened.\n if (!session) {\n cancel();\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n cancel();\n };\n abandon = cancel;\n engine.abandonPress = cancel;\n win.addEventListener(\"pointermove\", move, true);\n win.addEventListener(\"pointerup\", up, true);\n win.addEventListener(\"pointercancel\", cancelPointer, true);\n win.addEventListener(\"pointerdown\", other, true);\n win.addEventListener(\"blur\", cancel);\n if (event.pointerType !== \"mouse\") {\n // A held finger drags: it selects no text, and Android's long-press menu does not open, also before the hold fires.\n source.dataset.pressing = \"\";\n win.addEventListener(\"contextmenu\", preventContext, true);\n timer = win.setTimeout(hold, HOLD_MS);\n }\n };\n announcerFor(source);\n source.addEventListener(\"pointerdown\", down);\n source.addEventListener(\"dragstart\", nativeDrag);\n source.addEventListener(\"touchmove\", preventScroll, { passive: false });\n return () => {\n abandon?.();\n if (engine.session && source.contains(engine.session.origin)) engine.session.cancel();\n source.removeEventListener(\"pointerdown\", down);\n source.removeEventListener(\"dragstart\", nativeDrag);\n source.removeEventListener(\"touchmove\", preventScroll);\n };\n};\n\nconst FOCUSABLE = \"a[href], button, input, select, textarea, [tabindex]\";\n/** The origin itself when it takes focus, else the nearest ancestor that does, such as a menu's group. */\nconst focusTarget = (origin: HTMLElement): HTMLElement =>\n (origin.matches(FOCUSABLE) ? origin : origin.closest<HTMLElement>(FOCUSABLE)) ?? origin;\n\nexport const startKeyboardDrag = (input: DragPayload, origin: HTMLElement, messages: DragAndDropMessages): (() => void) => {\n const doc = origin.ownerDocument;\n const win = doc.defaultView!;\n const engine = engineFor(doc);\n engine.session?.cancel();\n engine.abandonPress?.();\n const payload = { ...input };\n const choices = () =>\n [...engine.targets]\n .filter((target) => accepts(target, payload) && reachable(target, origin))\n .sort((a, b) => (a.element.compareDocumentPosition(b.element) & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1));\n let targets: Target[] = [];\n let current: Target | undefined;\n /** Listening for keys: the first destination is chosen. */\n let ready = false;\n let finished = false;\n let frame = 0;\n const source = origin.closest<HTMLElement>(\".k2b-drag-source\") ?? undefined;\n const end = (target?: Target, text?: string) => {\n if (finished) return;\n finished = true;\n win.cancelAnimationFrame(frame);\n doc.removeEventListener(\"keydown\", key, true);\n doc.removeEventListener(\"pointerdown\", cancel, true);\n win.removeEventListener(\"blur\", cancel);\n const result = text ?? (target ? target.messages.dropped({ label: payload.label, target: target.label }) : messages.cancelled(payload));\n const drop = target?.drop;\n clearSession(engine, session, source);\n announce(origin, result);\n // Focus scrolls the origin back into view when choosing a destination scrolled it away.\n if (origin.isConnected) focusTarget(origin).focus();\n drop?.(payload);\n };\n const cancel = () => end();\n const pickupModal = modalOf(origin);\n /**\n * Whether a modal dialog opened over the pickup, leaving the origin inert: the key comes from inside another modal,\n * or a modal opened over a pickup that started outside of every modal.\n */\n const behindModal = (event: KeyboardEvent) => {\n const keyModal = event.target instanceof Element ? modalOf(event.target) : undefined;\n if (keyModal && keyModal !== pickupModal && !keyModal.contains(origin)) return true;\n // A dialog stack that shares one native dialog hides the level below, the origin's, when the next one opens.\n if (pickupModal && (!origin.isConnected || !visible(origin))) return true;\n return !pickupModal && Array.from(doc.querySelectorAll(\"dialog[open]\")).some(isModal);\n };\n const describe = (target: Target) =>\n target.messages.choice({ target: target.label, index: targets.indexOf(target) + 1, count: targets.length });\n const choose = (target: Target, text = describe(target)) => {\n if (current) mark(current, engine.targets.has(current) ? payload : undefined);\n current = target;\n current.element.dataset.drop = \"over\";\n current.element.scrollIntoView({ block: \"nearest\", inline: \"nearest\" });\n announce(origin, text);\n };\n const key = (event: KeyboardEvent) => {\n const backward = event.key === \"ArrowUp\" || event.key === \"ArrowLeft\" || (event.key === \"Tab\" && event.shiftKey);\n const forward = !backward && (event.key === \"ArrowDown\" || event.key === \"ArrowRight\" || event.key === \"Tab\");\n if (!backward && !forward && ![\"Home\", \"End\", \"Enter\", \" \", \"Escape\"].includes(event.key)) return;\n // A modal dialog opened since the pickup: its keys are its own, and the pickup behind it ends.\n if (behindModal(event)) {\n cancel();\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n if (event.key === \"Escape\") {\n cancel();\n return;\n }\n // Destinations may have been hidden or shown since the last key, for example by a layout change.\n targets = choices();\n if (!targets.length) {\n end(undefined, messages.noTarget(payload));\n return;\n }\n const index = current ? targets.indexOf(current) : -1;\n const count = targets.length;\n if (forward) choose(targets[index < 0 ? 0 : (index + 1) % count]!);\n else if (backward) choose(targets[index < 0 ? count - 1 : (index - 1 + count) % count]!);\n else if (event.key === \"Home\") choose(targets[0]!);\n else if (event.key === \"End\") choose(targets[count - 1]!);\n else end(index >= 0 ? current : undefined);\n };\n /** Chooses the first destination and starts listening; without one, the sequence ends at once. */\n const settle = () => {\n targets = choices();\n if (!targets.length) {\n end(undefined, messages.noTarget(payload));\n return;\n }\n ready = true;\n // One announcement, so a screen reader does not drop the instructions for the first choice.\n choose(targets[0]!, `${messages.pickedUpKeyboard({ label: payload.label, count: targets.length })} ${describe(targets[0]!)}`);\n // A menu's activating key has already traversed capture. Defer the listener until that dispatch has ended.\n queueMicrotask(() => {\n if (finished) return;\n doc.addEventListener(\"keydown\", key, true);\n doc.addEventListener(\"pointerdown\", cancel, true);\n win.addEventListener(\"blur\", cancel);\n });\n };\n const session: Session = {\n payload,\n origin,\n cancel,\n // Settled a frame later, so a target that a re-render replaces has registered again before none counts as left.\n targetsChanged() {\n if (!ready || finished || frame) return;\n frame = win.requestAnimationFrame(() => {\n frame = 0;\n if (finished) return;\n targets = choices();\n if (!targets.length) cancel();\n else choose(current && targets.includes(current) ? current : targets[0]!);\n });\n },\n };\n // The drag is active before destinations are counted, so a host can mount the ones it shows only while dragging.\n engine.session = session;\n for (const target of engine.targets) mark(target, payload);\n if (source) source.dataset.dragging = \"\";\n setActiveDrag(payload);\n if (finished) return cancel;\n if (choices().length) settle();\n else\n frame = win.requestAnimationFrame(() => {\n frame = 0;\n if (!finished) settle();\n });\n return cancel;\n};\n"],"mappings":"AAAA,SAAS,YAAY,QAAQ,UAAU;AACvC,SAAS,qBAAqB,QAAQ,4BAA4B;AAgBlE,MAAM,IAAI,GAAG,EAAE;AACf,MAAM,MAAM,GAAG,+FAA+F;AAC9G,MAAM,OAAO,GAAG,GAAG;AACnB,MAAM,eAAe,GAAG,EAAE;AAC1B,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,GAAG,YAAY,CAAc,CAAC;AACnE;AACA,OAAO,MAAM,UAAU,GAAG,MAA+B,cAAc,CAAC,CAAC;AACzE,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAA8B,CAAC;AACjE;AACA,OAAO,MAAM,kBAAkB,GAAI,QAAqC,IAAmB;EACzF,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC;EAChC,OAAO,MAAM,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC;AAClD,CAAC;AAsBD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAmB,CAAC;AAC/C,MAAM,SAAS,GAAI,GAAa,IAAa;EAC3C,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;EAC7B,IAAI,CAAC,MAAM,EAAE;IACX,MAAM,GAAG;MAAE,OAAO,EAAE,IAAI,GAAG,CAAC,CAAC;MAAE,SAAS,EAAE,IAAI,OAAO,CAAC;IAAE,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC;EAC1B;EACA,OAAO,MAAM;AACf,CAAC;AACD,MAAM,OAAO,GAAG,CAAC,MAAc,EAAE,OAAoB,KACnD,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;AACxF,MAAM,OAAO,GAAI,MAAe,IAAK;EACnC,IAAI;IACF,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;EACjC,CAAC,CAAC,MAAM;IACN,OAAO,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;EACvC;AACF,CAAC;AACD;AACA,MAAM,OAAO,GAAI,OAAgB,IAA0B;EACzD,KAAK,IAAI,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,EAC3G,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM;EACpC,OAAO,SAAS;AAClB,CAAC;AACD,MAAM,OAAO,GAAI,OAAgB,IAC/B,OAAO,OAAO,CAAC,eAAe,KAAK,UAAU,GACzC,OAAO,CAAC,eAAe,CAAC;EAAE,kBAAkB,EAAE;AAAK,CAAC,CAAC,GACrD,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ;AAC9F;AACA;AACA;AACA;AACA,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,MAAmB,KAAK;EACzD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO;EAC9B,IAAI,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK;EACpF,OAAO,OAAO,CAAC,OAAO,CAAC;AACzB,CAAC;AACD,MAAM,IAAI,GAAG,CAAC,MAAc,EAAE,OAAqB,KAAK;EACtD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,KACvE,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI;AACzC,CAAC;AACD,MAAM,YAAY,GAAI,MAAmB,IAAkB;EACzD,IAAI;IACF,OAAO,MAAM,CAAC,OAAO,CAAoB,oBAAoB,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI;EAC7F,CAAC,CAAC,MAAM;IACN,OAAO,MAAM,CAAC,OAAO,CAAoB,cAAc,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI;EACvF;AACF,CAAC;AACD;AACA,MAAM,iBAAiB,GAAG,GAAG;AAE7B;AACA,MAAM,UAAU,GAAG,IAAI,OAAO,CAAqB,CAAC;AACpD,MAAM,YAAY,GAAI,MAAmB,IAAgB;EACvD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;EACnC,IAAI,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;EACtC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,CAAC,aAAa,KAAK,MAAM,EAAE;IAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC;IACxD,MAAM,CAAC,SAAS,GAAG,oBAAoB;IACvC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC;IACrC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,QAAQ,CAAC;IAC1C,MAAM,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC;IAC1C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;MAC1B,QAAQ,EAAE,UAAU;MACpB,KAAK,EAAE,KAAK;MACZ,MAAM,EAAE,KAAK;MACb,IAAI,EAAE,kBAAkB;MACxB,QAAQ,EAAE,QAAQ;MAClB,UAAU,EAAE;IACd,CAAC,CAAC;IACF;IACA,IAAI,MAAM,KAAK,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAC3D,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;IAC3B,SAAS,GAAG;MAAE,MAAM;MAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,iBAAiB;MAAE,KAAK,EAAE;IAAG,CAAC;IAC/E,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;EACnC;EACA,OAAO,SAAS;AAClB,CAAC;AACD,MAAM,QAAQ,GAAG,CAAC,MAAmB,EAAE,IAAY,KAAK;EACtD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC;EACtC,MAAM,KAAK,GAAI,IAAY,IAAK;IAC9B,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,WAAW,KAAK,IAAI,GAAG,GAAG,IAAI,QAAQ,GAAG,IAAI;EAC/F,CAAC;EACD,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;EAChD,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE;IACxC,KAAK,CAAC,IAAI,CAAC;IACX;EACF;EACA;EACA,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;EACpC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAE,UAAU,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AACnH,CAAC;AAED,OAAO,MAAM,kBAAkB,GAAG,CAAC,OAAoB,EAAE,OAAgC,KAAK;EAC5F,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC;EAC/C,MAAM,KAAa,GAAG;IAAE,OAAO;IAAE,GAAG;EAAQ,CAAC;EAC7C;EACA,YAAY,CAAC,OAAO,CAAC;EACrB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;EACzB,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC;EACpC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC;EACpC,MAAM,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC;EAClC,OAAO;IACL,MAAM,CAAC,IAA6B,EAAE;MACpC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;MAC1B,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC;MACpC,MAAM,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC;IACpC,CAAC;IACD,OAAO,GAAG;MACR,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;MAC5B,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;MAChC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI;MAC3B,MAAM,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC;IACpC;EACF,CAAC;AACH,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,OAAgB,EAAE,MAAoB,KAAK;EAC/E,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,EAAE;EAChC,MAAM,CAAC,OAAO,GAAG,SAAS;EAC1B,IAAI,MAAM,EAAE,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ;EAC1C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;EACjD,aAAa,CAAC,SAAS,CAAC;AAC1B,CAAC;;AAED;AACA;AACA;AACA;AACA,MAAM,cAAc,GAAG,CAAC,GAAa,EAAE,SAAkB,KAAK;EAC5D,MAAM,GAAG,GAAG,GAAG,CAAC,WAAY;EAC5B,IAAI,SAAS,KAAK,SAAS,EAAE;IAC3B,MAAM,IAAI,GAAG,MAAM;MACjB,GAAG,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC;MACpD,GAAG,CAAC,mBAAmB,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC;MACpD,GAAG,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC;IACpD,CAAC;IACD,MAAM,QAAQ,GAAI,KAAmB,IAAK;MACxC,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE;MACnC,IAAI,CAAC,CAAC;MACN,cAAc,CAAC,GAAG,CAAC;IACrB,CAAC;IACD,MAAM,IAAI,GAAI,KAAmB,IAAK;MACpC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IACD,GAAG,CAAC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC;IACjD,GAAG,CAAC,gBAAgB,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC;IACjD,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC;IAC/C;EACF;EACA,MAAM,KAAK,GAAI,KAAY,IAAK;IAC9B,KAAK,CAAC,cAAc,CAAC,CAAC;IACtB,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAChC,GAAG,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC;EAC/C,CAAC;EACD,MAAM,QAAQ,GAAI,KAAY,IAAK,KAAK,CAAC,cAAc,CAAC,CAAC;EACzD,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC;EAC1C,GAAG,CAAC,gBAAgB,CAAC,UAAU,EAAE,QAAQ,EAAE;IAAE,OAAO,EAAE,IAAI;IAAE,OAAO,EAAE;EAAM,CAAC,CAAC;EAC7E,GAAG,CAAC,UAAU,CAAC,MAAM;IACnB,GAAG,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC;IAC7C,GAAG,CAAC,mBAAmB,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC;EACrD,CAAC,EAAE,CAAC,CAAC;AACP,CAAC;;AAED;AACA,MAAM,OAAO,GAAG,yBAAyB;AACzC,MAAM,MAAM,GAAG,iBAAiB;AAChC;AACA;AACA;AACA;AACA;AACA,MAAM,QAAQ,GAAG,CAAC,GAAa,EAAE,GAAmB,EAAE,CAAS,EAAE,CAAS,EAAE,KAAiD,KAAK;EAChI,MAAM,GAAG,GAAG,GAAG,CAAC,WAAY;EAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,gBAAgB;EACjC,MAAM,UAAU,GAAI,OAAgB,IAAK;IACvC,IAAI,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;IACjC,IAAI,CAAC,QAAQ,EAAE;MACb,MAAM,KAAK,GAAG,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC;MAC3C,QAAQ,GAAG;QAAE,CAAC,EAAE,KAAK,CAAC,SAAS;QAAE,CAAC,EAAE,KAAK,CAAC;MAAU,CAAC;MACrD,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC9B;IACA,OAAO,QAAQ;EACjB,CAAC;EACD,KAAK,IAAI,OAAO,GAAG,GAAG,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE;IAChE,MAAM,QAAQ,GAAG,OAAO,KAAK,IAAI;IACjC,IAAI,IAAa;IACjB,IAAI,IAAa;IACjB,IAAI,QAAQ,EAAE;MACZ;MACA,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC;MAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG;MAClD,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;MAC3E,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7E,CAAC,MAAM;MACL,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC;MAC/B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;MAC1B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B;IACA,MAAM,IAAI,GAAG,QAAQ,GAAG;MAAE,IAAI,EAAE,CAAC;MAAE,GAAG,EAAE,CAAC;MAAE,KAAK,EAAE,GAAG,CAAC,UAAU;MAAE,MAAM,EAAE,GAAG,CAAC;IAAY,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC7H,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,KAAa,EAAE,GAAW,EAAE,QAAgB,EAAE,GAAW,KAAK;MACzF,IAAI,KAAK,GAAG,KAAK,IAAI,KAAK,GAAG,GAAG,EAAE,OAAO,CAAC;MAC1C,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK;MAC5B,MAAM,KAAK,GAAG,GAAG,GAAG,KAAK;MACzB,IAAI,MAAM,GAAG,eAAe,IAAI,QAAQ,GAAG,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC;MACjH,IAAI,KAAK,GAAG,eAAe,IAAI,QAAQ,GAAG,GAAG,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC;MAChH,OAAO,CAAC;IACV,CAAC;IACD,MAAM,EAAE,GAAG,IAAI,GACX,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,IAAI,QAAQ,GAAG,GAAG,CAAC,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,GAC3H,CAAC;IACL,MAAM,EAAE,GAAG,IAAI,GACX,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,IAAI,QAAQ,GAAG,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,GAC7H,CAAC;IACL,IAAI,EAAE,IAAI,EAAE,EAAE;MACZ,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU;MAClC,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS;MACjC,OAAO,CAAC,UAAU,IAAI,EAAE;MACxB,OAAO,CAAC,SAAS,IAAI,EAAE;MACvB,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,IAAI,OAAO,CAAC,SAAS,KAAK,OAAO,EAAE,OAAO,IAAI;IAClF;IACA,IAAI,OAAO,YAAY,iBAAiB,EAAE,OAAO,KAAK;EACxD;EACA,OAAO,KAAK;AACd,CAAC;AAED,OAAO,MAAM,cAAc,GAAG,CAC5B,MAAmB,EACnB,IAAuF,KACtE;EACjB,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa;EAChC,MAAM,GAAG,GAAG,GAAG,CAAC,WAAY;EAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC;EAC7B,IAAI,OAAiC;EACrC;EACA,IAAI,UAAU,GAAG,KAAK;EACtB;AACF;AACA;AACA;EACE,MAAM,aAAa,GAAI,KAAiB,IAAK;IAC3C,IAAI,UAAU,IAAI,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;EAC5D,CAAC;EACD;AACF;AACA;AACA;EACE,MAAM,OAAO,GAAI,MAA0B,IAAK;IAC9C;IACA,IAAI,IAAI,GAAG,MAAM,YAAY,OAAO,GAAG,MAAM,GAAG,IAAI;IACpD,OAAO,IAAI,IAAI,EAAE,IAAI,YAAY,WAAW,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,aAAa;IACxE,IAAI,IAAI,YAAY,WAAW,IAAI,IAAI,CAAC,iBAAiB,EAAE,OAAO,IAAI;IACtE,MAAM,KAAK,GAAG,MAAM,YAAY,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI;IACvE,OAAO,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;EACjD,CAAC;EACD,MAAM,UAAU,GAAI,KAAY,IAAK;IACnC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;EACpD,CAAC;EACD,MAAM,IAAI,GAAI,KAAmB,IAAK;IACpC,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjF,IAAI,EAAE,KAAK,CAAC,MAAM,YAAY,OAAO,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,MAAM,EAAE;IAC/F,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;IAC3B,MAAM,CAAC,YAAY,GAAG,CAAC;IACvB;IACA,YAAY,CAAC,MAAM,CAAC;IACpB,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS;IAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,KAAK,OAAO;IAC3C,MAAM,KAAK,GAAG;MAAE,CAAC,EAAE,KAAK,CAAC,OAAO;MAAE,CAAC,EAAE,KAAK,CAAC;IAAQ,CAAC;IACpD,IAAI,KAAK,GAAG,KAAK;IACjB,IAAI,IAAI,GAAG,KAAK;IAChB,IAAI,QAAQ,GAAG,KAAK;IACpB;IACA,IAAI,QAAQ,GAAG,KAAK;IACpB,IAAI,OAA4B;IAChC,IAAI,QAA6B;IACjC,IAAI,OAAgC;IACpC,IAAI,gBAA0C;IAC9C,IAAI,KAAK,GAAG,CAAC;IACb,IAAI,KAAyB;IAC7B,IAAI,IAAwB;IAC5B,IAAI,OAA2B;IAC/B,MAAM,aAAa,GAAG,IAAI,OAAO,CAAoC,CAAC;IACtE,MAAM,IAAI,GAAG,MAAM;MACjB,IAAI,IAAI,IAAI,QAAQ,EAAE;MACtB,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC;MACvB,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;QACnB,MAAM,CAAC,CAAC;QACR;MACF;MACA,IAAI,GAAG,IAAI;MACX,UAAU,GAAG,IAAI;MACjB,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE;MACxB,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC;IAC5C,CAAC;IACD;IACA;IACA,MAAM,cAAc,GAAI,KAAY,IAAK;MACvC,KAAK,CAAC,cAAc,CAAC,CAAC;MACtB,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM;MAClB,IAAI,QAAQ,EAAE;MACd,QAAQ,GAAG,IAAI;MACf,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC;MACvB,GAAG,CAAC,oBAAoB,CAAC,KAAK,CAAC;MAC/B,GAAG,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC;MAClD,GAAG,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC;MAC9C,GAAG,CAAC,mBAAmB,CAAC,eAAe,EAAE,aAAa,EAAE,IAAI,CAAC;MAC7D,GAAG,CAAC,mBAAmB,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC;MACnD,GAAG,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;MACvC,GAAG,CAAC,mBAAmB,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC;MAC7C,GAAG,CAAC,mBAAmB,CAAC,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC;MAC5D,UAAU,GAAG,KAAK;MAClB,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,WAAW,CAAC;MAC7D,IAAI,MAAM,CAAC,iBAAiB,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,qBAAqB,CAAC,EAAE,CAAC;MACpE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI;MAC1B,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ;MAC9B,OAAO,EAAE,MAAM,CAAC,CAAC;MACjB,gBAAgB,GAAG,CAAC;MACpB,IAAI,MAAM,CAAC,YAAY,KAAK,MAAM,EAAE,MAAM,CAAC,YAAY,GAAG,SAAS;MACnE,IAAI,OAAO,KAAK,MAAM,EAAE,OAAO,GAAG,SAAS;MAC3C,IAAI,OAAO,EAAE;QACX,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;QACrC,cAAc,CAAC,GAAG,EAAE,QAAQ,GAAG,SAAS,GAAG,EAAE,CAAC;MAChD,CAAC,MAAM,IAAI,IAAI,EAAE,cAAc,CAAC,GAAG,EAAE,QAAQ,GAAG,SAAS,GAAG,EAAE,CAAC;IACjE,CAAC;IACD,MAAM,MAAM,GAAG,MAAM;MACnB,IAAI,QAAQ,EAAE;MACd,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO;MAChC,KAAK,CAAC,CAAC;MACP,IAAI,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,OAAO,GAAG,MAAM;MACpB,MAAM,OAAO,GAAG,OAAO,CAAE,OAAO;MAChC,MAAM,GAAG,GAAG,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;MAClD,IAAI,KAAyB;MAC7B,IAAI,IAAwB;MAC5B,KAAK,IAAI,OAAO,GAAG,GAAG,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE;QAChE,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC;QAC5C;QACA,IAAI,CAAC,MAAM,IAAI,OAAO,YAAY,iBAAiB,EAAE;QACrD,IAAI,CAAC,MAAM,EAAE;QACb,KAAK,KAAK,MAAM;QAChB,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;UAC5B,IAAI,GAAG,MAAM;UACb;QACF;MACF;MACA,MAAM,QAAQ,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK;MACzC,IAAI,IAAI,KAAK,IAAI,IAAI,QAAQ,KAAK,OAAO,EAAE;QACzC,IAAI,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC;QACpE,IAAI,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC;QAC7E,IAAI,GAAG,IAAI;QACX,OAAO,GAAG,QAAQ;QAClB,IAAI,IAAI,EAAE;UACR,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,MAAM;UAClC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,EAAE,IAAI,CAAC;UAAM,CAAC,CAAC,CAAC;QAC9D,CAAC,MAAM,IAAI,OAAO,EAAE;UAClB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,SAAS;UACxC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,MAAM,EAAE,OAAO,CAAC,KAAK;YAAE,KAAK,EAAE,OAAO,CAAC;UAAM,CAAC,CAAC,CAAC;QAC7F;MACF;MACA,IAAI,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,MAAM;MAC5C,IAAI,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,SAAS;MACrD,OAAO,GAAG;IACZ,CAAC;IACD,MAAM,WAAW,GAAG,MAAM;MACxB,KAAK,GAAG,CAAC;MACT,IAAI,QAAQ,IAAI,CAAC,OAAO,EAAE;MAC1B,OAAO,CAAE,KAAK,CAAC,SAAS,GAAG,eAAe,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,QAAQ;MACvE,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC;MACrB,IAAI,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,KAAK,GAAG,GAAG,CAAC,qBAAqB,CAAC,WAAW,CAAC;IACzG,CAAC;IACD,MAAM,KAAK,GAAG,MAAM;MAClB,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC;MACtB,IAAI,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE;QACtC,MAAM,CAAC,CAAC;QACR;MACF;MACA,MAAM,OAAO,GAAG;QAAE,GAAG,OAAO,CAAC;MAAQ,CAAC;MACtC,QAAQ,GAAG,OAAO,CAAC,QAAQ;MAC3B,OAAO,GAAG;QACR,OAAO;QACP,MAAM,EAAE,MAAM;QACd,MAAM;QACN,cAAc,EAAE,MAAM;UACpB,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,CAAC,qBAAqB,CAAC,WAAW,CAAC;QAC5D;MACF,CAAC;MACD,MAAM,CAAC,OAAO,GAAG,OAAO;MACxB,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,QAAQ,CAAC,EAAE,CAAC;MACvD,IAAI,QAAQ,EAAE;MACd,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI;MAC1B,MAAM,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE;MAC5B,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC;MACzD,gBAAgB,GAAG,qBAAqB,CAAC,EAAE,CAAC;MAC5C;MACA;MACA,IAAI,KAAK,EACP,IAAI;QACF,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,WAAW,CAAC;MAC5D,CAAC,CAAC,MAAM;QACN;MAAA;MAEJ,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC;MAClC;MACA;MACA,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,EAAE,OAAO,CAAc,SAAS,CAAC;MACnE,OAAO,CAAC,SAAS,GAAG,KAAK,GAAG,kBAAkB,GAAG,yBAAyB;MAC1E,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC;MAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC;MACnC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,IAAI,YAAY;MAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC;MACvC,KAAK,CAAC,SAAS,GAAG,yBAAyB;MAC3C,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,KAAK;MACjC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;MAC3B,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE;QACtC,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC;QACvC,KAAK,CAAC,SAAS,GAAG,yBAAyB;QAC3C,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;QACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;MACvB;MACA;MACA,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC;MACzC,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;MACnC,OAAO,CAAC,WAAW,GAAG,CAAC;MACvB,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,eAAe,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,QAAQ;MACtE,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;MAC1D,aAAa,CAAC,OAAO,CAAC;MACtB,IAAI,QAAQ,EAAE;MACd,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;MAC5C,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC;IAC5C,CAAC;IACD,MAAM,IAAI,GAAI,KAAmB,IAAK;MACpC,IAAI,KAAK,CAAC,SAAS,KAAK,EAAE,IAAI,QAAQ,EAAE;MACxC,KAAK,GAAG;QAAE,CAAC,EAAE,KAAK,CAAC,OAAO;QAAE,CAAC,EAAE,KAAK,CAAC;MAAQ,CAAC;MAC9C,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;QACxE,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,IAAI,CAAC,IAAI,EAAE;UAC1C,MAAM,CAAC,CAAC;UACR;QACF;QACA,KAAK,CAAC,CAAC;MACT;MACA,IAAI,OAAO,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,CAAC,qBAAqB,CAAC,WAAW,CAAC;IACpF,CAAC;IACD,MAAM,EAAE,GAAI,KAAmB,IAAK;MAClC,IAAI,KAAK,CAAC,SAAS,KAAK,EAAE,IAAI,QAAQ,EAAE;MACxC,QAAQ,GAAG,IAAI;MACf,IAAI,CAAC,OAAO,EAAE;QACZ,KAAK,CAAC,CAAC;QACP;MACF;MACA,KAAK,GAAG;QAAE,CAAC,EAAE,KAAK,CAAC,OAAO;QAAE,CAAC,EAAE,KAAK,CAAC;MAAQ,CAAC;MAC9C,OAAO,CAAC,CAAC;MACT,MAAM,MAAM,GAAG,IAAI;MACnB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO;MAC/B,MAAM,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,KAAK,EAAE,OAAO,CAAC,KAAK;QAAE,MAAM,EAAE,MAAM,CAAC;MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC;MAC7H,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI;MACzB,KAAK,CAAC,CAAC;MACP,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;MACxB,IAAI,GAAG,OAAO,CAAC;IACjB,CAAC;IACD;IACA,MAAM,WAAW,GAAI,KAAmB,IAAK;MAC3C,IAAI,KAAK,CAAC,SAAS,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IACD,MAAM,aAAa,GAAI,KAAmB,IAAK;MAC7C,IAAI,KAAK,CAAC,SAAS,KAAK,EAAE,EAAE;MAC5B,QAAQ,GAAG,IAAI;MACf,MAAM,CAAC,CAAC;IACV,CAAC;IACD,MAAM,KAAK,GAAI,KAAmB,IAAK;MACrC,IAAI,KAAK,CAAC,SAAS,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IACD,MAAM,GAAG,GAAI,KAAoB,IAAK;MACpC,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;MAC5B;MACA,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,CAAC,CAAC;QACR;MACF;MACA,KAAK,CAAC,cAAc,CAAC,CAAC;MACtB,KAAK,CAAC,eAAe,CAAC,CAAC;MACvB,MAAM,CAAC,CAAC;IACV,CAAC;IACD,OAAO,GAAG,MAAM;IAChB,MAAM,CAAC,YAAY,GAAG,MAAM;IAC5B,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC;IAC/C,GAAG,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC;IAC3C,GAAG,CAAC,gBAAgB,CAAC,eAAe,EAAE,aAAa,EAAE,IAAI,CAAC;IAC1D,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC;IAChD,GAAG,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC;IACpC,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,EAAE;MACjC;MACA,MAAM,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE;MAC5B,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC;MACzD,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;IACvC;EACF,CAAC;EACD,YAAY,CAAC,MAAM,CAAC;EACpB,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC;EAC5C,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC;EAChD,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,aAAa,EAAE;IAAE,OAAO,EAAE;EAAM,CAAC,CAAC;EACvE,OAAO,MAAM;IACX,OAAO,GAAG,CAAC;IACX,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrF,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC;IAC/C,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,UAAU,CAAC;IACnD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,aAAa,CAAC;EACxD,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAAG,sDAAsD;AACxE;AACA,MAAM,WAAW,GAAI,MAAmB,IACtC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,OAAO,CAAc,SAAS,CAAC,KAAK,MAAM;AAEzF,OAAO,MAAM,iBAAiB,GAAG,CAAC,KAAkB,EAAE,MAAmB,EAAE,QAA6B,KAAmB;EACzH,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa;EAChC,MAAM,GAAG,GAAG,GAAG,CAAC,WAAY;EAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC;EAC7B,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;EACxB,MAAM,CAAC,YAAY,GAAG,CAAC;EACvB,MAAM,OAAO,GAAG;IAAE,GAAG;EAAM,CAAC;EAC5B,MAAM,OAAO,GAAG,MACd,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAChB,MAAM,CAAE,MAAM,IAAK,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACzE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAM,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,2BAA2B,GAAG,CAAC,CAAC,GAAG,CAAE,CAAC;EAC/G,IAAI,OAAiB,GAAG,EAAE;EAC1B,IAAI,OAA2B;EAC/B;EACA,IAAI,KAAK,GAAG,KAAK;EACjB,IAAI,QAAQ,GAAG,KAAK;EACpB,IAAI,KAAK,GAAG,CAAC;EACb,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAc,kBAAkB,CAAC,IAAI,SAAS;EAC3E,MAAM,GAAG,GAAG,CAAC,MAAe,EAAE,IAAa,KAAK;IAC9C,IAAI,QAAQ,EAAE;IACd,QAAQ,GAAG,IAAI;IACf,GAAG,CAAC,oBAAoB,CAAC,KAAK,CAAC;IAC/B,GAAG,CAAC,mBAAmB,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC;IAC7C,GAAG,CAAC,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC;IACpD,GAAG,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,KAAK,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;MAAE,KAAK,EAAE,OAAO,CAAC,KAAK;MAAE,MAAM,EAAE,MAAM,CAAC;IAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACvI,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI;IACzB,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;IACA,IAAI,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;IACnD,IAAI,GAAG,OAAO,CAAC;EACjB,CAAC;EACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC;EAC1B,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;EACnC;AACF;AACA;AACA;EACE,MAAM,WAAW,GAAI,KAAoB,IAAK;IAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,YAAY,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS;IACpF,IAAI,QAAQ,IAAI,QAAQ,KAAK,WAAW,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,IAAI;IACnF;IACA,IAAI,WAAW,KAAK,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,IAAI;IACzE,OAAO,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;EACvF,CAAC;EACD,MAAM,QAAQ,GAAI,MAAc,IAC9B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC,KAAK;IAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;IAAE,KAAK,EAAE,OAAO,CAAC;EAAO,CAAC,CAAC;EAC7G,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK;IAC1D,IAAI,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC;IAC7E,OAAO,GAAG,MAAM;IAChB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,MAAM;IACrC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;MAAE,KAAK,EAAE,SAAS;MAAE,MAAM,EAAE;IAAU,CAAC,CAAC;IACvE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;EACxB,CAAC;EACD,MAAM,GAAG,GAAI,KAAoB,IAAK;IACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW,IAAK,KAAK,CAAC,GAAG,KAAK,KAAK,IAAI,KAAK,CAAC,QAAS;IAChH,MAAM,OAAO,GAAG,CAAC,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,WAAW,IAAI,KAAK,CAAC,GAAG,KAAK,YAAY,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC;IAC7G,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IAC3F;IACA,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;MACtB,MAAM,CAAC,CAAC;MACR;IACF;IACA,KAAK,CAAC,cAAc,CAAC,CAAC;IACtB,KAAK,CAAC,eAAe,CAAC,CAAC;IACvB,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;MAC1B,MAAM,CAAC,CAAC;MACR;IACF;IACA;IACA,OAAO,GAAG,OAAO,CAAC,CAAC;IACnB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;MACnB,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;MAC1C;IACF;IACA,MAAM,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM;IAC5B,IAAI,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,CAAE,CAAC,CAAC,KAC9D,IAAI,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,IAAI,KAAK,CAAE,CAAC,CAAC,KACpF,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC,KAC9C,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,CAAC,KACrD,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC;EAC5C,CAAC;EACD;EACA,MAAM,MAAM,GAAG,MAAM;IACnB,OAAO,GAAG,OAAO,CAAC,CAAC;IACnB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;MACnB,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;MAC1C;IACF;IACA,KAAK,GAAG,IAAI;IACZ;IACA,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC;MAAE,KAAK,EAAE,OAAO,CAAC,KAAK;MAAE,KAAK,EAAE,OAAO,CAAC;IAAO,CAAC,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;IAC7H;IACA,cAAc,CAAC,MAAM;MACnB,IAAI,QAAQ,EAAE;MACd,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC;MAC1C,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC;MACjD,GAAG,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC;IACtC,CAAC,CAAC;EACJ,CAAC;EACD,MAAM,OAAgB,GAAG;IACvB,OAAO;IACP,MAAM;IACN,MAAM;IACN;IACA,cAAc,GAAG;MACf,IAAI,CAAC,KAAK,IAAI,QAAQ,IAAI,KAAK,EAAE;MACjC,KAAK,GAAG,GAAG,CAAC,qBAAqB,CAAC,MAAM;QACtC,KAAK,GAAG,CAAC;QACT,IAAI,QAAQ,EAAE;QACd,OAAO,GAAG,OAAO,CAAC,CAAC;QACnB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KACzB,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;MAC3E,CAAC,CAAC;IACJ;EACF,CAAC;EACD;EACA,MAAM,CAAC,OAAO,GAAG,OAAO;EACxB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;EAC1D,IAAI,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE;EACxC,aAAa,CAAC,OAAO,CAAC;EACtB,IAAI,QAAQ,EAAE,OAAO,MAAM;EAC3B,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KAE7B,KAAK,GAAG,GAAG,CAAC,qBAAqB,CAAC,MAAM;IACtC,KAAK,GAAG,CAAC;IACT,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;EACzB,CAAC,CAAC;EACJ,OAAO,MAAM;AACf,CAAC","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@ export { Button, ButtonLink, IconButton, IconButtonLink } from "./Button";
|
|
|
2
2
|
export { ContextMenu } from "./ContextMenu";
|
|
3
3
|
export { CopyButton } from "./CopyButton";
|
|
4
4
|
export { Disclosure } from "./Disclosure";
|
|
5
|
+
export { activeDrag, DragSource, DropTarget, useKeyboardDrag } from "./DragAndDrop";
|
|
5
6
|
export { Dropdown, DropdownItem, dropdownPosition } from "./Dropdown";
|
|
6
7
|
export { FilterChip } from "./FilterChip";
|
|
7
8
|
export { GestureMenu } from "./GestureMenu";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["actions/index.ts"],"sourcesContent":["export type { ButtonAlign, ButtonLinkProps, ButtonProps, ButtonSize, ButtonVariant, IconButtonLinkProps, IconButtonProps } from \"./Button\";\nexport { Button, ButtonLink, IconButton, IconButtonLink } from \"./Button\";\nexport type { ContextMenuProps } from \"./ContextMenu\";\nexport { ContextMenu } from \"./ContextMenu\";\nexport type { CopyButtonProps, CopyButtonValue } from \"./CopyButton\";\nexport { CopyButton } from \"./CopyButton\";\nexport type { DisclosureProps } from \"./Disclosure\";\nexport { Disclosure } from \"./Disclosure\";\nexport type {\n DropdownAction,\n DropdownActionBase,\n DropdownChoice,\n DropdownItemProps,\n DropdownPosition,\n DropdownProps,\n DropdownSection,\n DropdownTriggerProps,\n} from \"./Dropdown\";\nexport { Dropdown, DropdownItem, dropdownPosition } from \"./Dropdown\";\nexport type { FilterChipOption, FilterChipProps, FilterChipSection } from \"./FilterChip\";\nexport { FilterChip } from \"./FilterChip\";\nexport type { GestureKind, GestureMenuAction, GestureMenuItem, GestureMenuProps, GestureMenuSection } from \"./GestureMenu\";\nexport { GestureMenu } from \"./GestureMenu\";\nexport type { RemoveButtonProps } from \"./RemoveButton\";\nexport { RemoveButton } from \"./RemoveButton\";\nexport type { SegmentedControlProps, SegmentOption } from \"./SegmentedControl\";\nexport { SegmentedControl } from \"./SegmentedControl\";\nexport type { SplitButtonProps } from \"./SplitButton\";\nexport { SplitButton } from \"./SplitButton\";\nexport type {\n SpotlightButtonProps,\n SpotlightButtonVariant,\n SpotlightSearchOptions,\n SpotlightSearchResolver,\n} from \"./SpotlightSearch\";\nexport {\n openSpotlightSearch,\n SpotlightButton,\n} from \"./SpotlightSearch\";\nexport type { TabOption, TabsItemProps, TabsProps } from \"./Tabs\";\nexport { Tabs } from \"./Tabs\";\nexport type { ToolbarActionProps, ToolbarGroupProps, ToolbarLabelProps, ToolbarProps, ToolbarSeparatorProps } from \"./Toolbar\";\nexport { Toolbar } from \"./Toolbar\";\n"],"mappings":"AACA,SAAS,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,QAAQ,UAAU;AAEzE,SAAS,WAAW,QAAQ,eAAe;AAE3C,SAAS,UAAU,QAAQ,cAAc;AAEzC,SAAS,UAAU,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":[],"sources":["actions/index.ts"],"sourcesContent":["export type { ButtonAlign, ButtonLinkProps, ButtonProps, ButtonSize, ButtonVariant, IconButtonLinkProps, IconButtonProps } from \"./Button\";\nexport { Button, ButtonLink, IconButton, IconButtonLink } from \"./Button\";\nexport type { ContextMenuProps } from \"./ContextMenu\";\nexport { ContextMenu } from \"./ContextMenu\";\nexport type { CopyButtonProps, CopyButtonValue } from \"./CopyButton\";\nexport { CopyButton } from \"./CopyButton\";\nexport type { DisclosureProps } from \"./Disclosure\";\nexport { Disclosure } from \"./Disclosure\";\nexport type { DragPayload, DragSourceProps, DropTargetProps } from \"./DragAndDrop\";\nexport { activeDrag, DragSource, DropTarget, useKeyboardDrag } from \"./DragAndDrop\";\nexport type {\n DropdownAction,\n DropdownActionBase,\n DropdownChoice,\n DropdownItemProps,\n DropdownPosition,\n DropdownProps,\n DropdownSection,\n DropdownTriggerProps,\n} from \"./Dropdown\";\nexport { Dropdown, DropdownItem, dropdownPosition } from \"./Dropdown\";\nexport type { FilterChipOption, FilterChipProps, FilterChipSection } from \"./FilterChip\";\nexport { FilterChip } from \"./FilterChip\";\nexport type { GestureKind, GestureMenuAction, GestureMenuItem, GestureMenuProps, GestureMenuSection } from \"./GestureMenu\";\nexport { GestureMenu } from \"./GestureMenu\";\nexport type { RemoveButtonProps } from \"./RemoveButton\";\nexport { RemoveButton } from \"./RemoveButton\";\nexport type { SegmentedControlProps, SegmentOption } from \"./SegmentedControl\";\nexport { SegmentedControl } from \"./SegmentedControl\";\nexport type { SplitButtonProps } from \"./SplitButton\";\nexport { SplitButton } from \"./SplitButton\";\nexport type {\n SpotlightButtonProps,\n SpotlightButtonVariant,\n SpotlightSearchOptions,\n SpotlightSearchResolver,\n} from \"./SpotlightSearch\";\nexport {\n openSpotlightSearch,\n SpotlightButton,\n} from \"./SpotlightSearch\";\nexport type { TabOption, TabsItemProps, TabsProps } from \"./Tabs\";\nexport { Tabs } from \"./Tabs\";\nexport type { ToolbarActionProps, ToolbarGroupProps, ToolbarLabelProps, ToolbarProps, ToolbarSeparatorProps } from \"./Toolbar\";\nexport { Toolbar } from \"./Toolbar\";\n"],"mappings":"AACA,SAAS,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,QAAQ,UAAU;AAEzE,SAAS,WAAW,QAAQ,eAAe;AAE3C,SAAS,UAAU,QAAQ,cAAc;AAEzC,SAAS,UAAU,QAAQ,cAAc;AAEzC,SAAS,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,QAAQ,eAAe;AAWnF,SAAS,QAAQ,EAAE,YAAY,EAAE,gBAAgB,QAAQ,YAAY;AAErE,SAAS,UAAU,QAAQ,cAAc;AAEzC,SAAS,WAAW,QAAQ,eAAe;AAE3C,SAAS,YAAY,QAAQ,gBAAgB;AAE7C,SAAS,gBAAgB,QAAQ,oBAAoB;AAErD,SAAS,WAAW,QAAQ,eAAe;AAO3C,SACE,mBAAmB,EACnB,eAAe,QACV,mBAAmB;AAE1B,SAAS,IAAI,QAAQ,QAAQ;AAE7B,SAAS,OAAO,QAAQ,WAAW","ignoreList":[]}
|