cursedbelt 5.55.2 → 5.56.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/react/file-tree/FileTree.d.ts.map +1 -1
- package/dist/react/file-tree/FileTree.js +7 -0
- package/dist/react/file-tree/FileTree.js.map +1 -1
- package/dist/react/file-tree/fileTree.css +14 -0
- package/dist/react/filter-rail/FilterRail.js +1 -1
- package/dist/react/filter-rail/FilterRail.js.map +1 -1
- package/dist/react/filter-rail/RailSection.js +2 -2
- package/dist/react/filter-rail/RailSection.js.map +1 -1
- package/dist/react/filter-rail/headerContextMenu.d.ts.map +1 -1
- package/dist/react/filter-rail/headerContextMenu.js +20 -1
- package/dist/react/filter-rail/headerContextMenu.js.map +1 -1
- package/dist/react/hooks/longPressContextMenu.d.ts +35 -0
- package/dist/react/hooks/longPressContextMenu.d.ts.map +1 -0
- package/dist/react/hooks/longPressContextMenu.js +136 -0
- package/dist/react/hooks/longPressContextMenu.js.map +1 -0
- package/dist/react/hooks/useLongPressContextMenu.d.ts +4 -0
- package/dist/react/hooks/useLongPressContextMenu.d.ts.map +1 -0
- package/dist/react/hooks/useLongPressContextMenu.js +12 -0
- package/dist/react/hooks/useLongPressContextMenu.js.map +1 -0
- package/package.json +1 -1
- package/src/react/file-tree/FileTree.spec.tsx +19 -0
- package/src/react/file-tree/FileTree.tsx +8 -0
- package/src/react/file-tree/fileTree.css +14 -0
- package/src/react/filter-rail/FilterRail.tsx +1 -1
- package/src/react/filter-rail/RailSection.tsx +2 -2
- package/src/react/filter-rail/headerContextMenu.spec.tsx +52 -0
- package/src/react/filter-rail/headerContextMenu.ts +19 -1
- package/src/react/hooks/longPressContextMenu.spec.ts +102 -0
- package/src/react/hooks/longPressContextMenu.ts +135 -0
- package/src/react/hooks/useLongPressContextMenu.ts +15 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileTree.d.ts","sourceRoot":"","sources":["../../../src/react/file-tree/FileTree.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgKG;AACH,OAAO,KAAK,EACV,SAAS,IAAI,cAAc,EAC3B,GAAG,EAEH,SAAS,EACV,MAAM,OAAO,CAAC;AAEf,OAAO,EACL,KAAK,cAAc,EAKnB,KAAK,YAAY,EACjB,KAAK,YAAY,EAOlB,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"FileTree.d.ts","sourceRoot":"","sources":["../../../src/react/file-tree/FileTree.tsx"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import { draggedIdsOf, nodesByIds, planWrap, refuseCopy, refuseWrap, resolveMult
|
|
|
8
8
|
import { useInView } from '../media/previewGate.js';
|
|
9
9
|
import { lazyPart } from '../components/DataTable/lazyPart.js';
|
|
10
10
|
import { applyFolderView, tagFilterActive } from './folderView.js';
|
|
11
|
+
import { useLongPressContextMenu } from '../hooks/useLongPressContextMenu.js';
|
|
11
12
|
import { FolderViewStrip, folderTargets, folderViewMenuItems, RowTagDots, withFolderItems, } from './FolderViewMenus.js';
|
|
12
13
|
import './fileTree.css';
|
|
13
14
|
import { cn, RAW_BUTTON } from '../lib/cn.js';
|
|
@@ -942,6 +943,12 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
|
|
|
942
943
|
}, [wantsBlankMenu, openViewMenu]);
|
|
943
944
|
/** Fetch the panels once the page is idle, if this tree has any menu to open. */
|
|
944
945
|
const hasMenus = wantsBlankMenu || Boolean(rowMenu);
|
|
946
|
+
/*
|
|
947
|
+
* A finger held on a row or on the blank space opens the same menu a right-click does —
|
|
948
|
+
* iOS has no right-click and never fires `contextmenu` for a hold (owner, 2026-10-04). The
|
|
949
|
+
* grip is excluded: a finger held there is about to drag. See `longPressContextMenu.ts`.
|
|
950
|
+
*/
|
|
951
|
+
useLongPressContextMenu(scrollRef, hasMenus || Boolean(onRowMenu), '[data-cbft-grip]');
|
|
945
952
|
useEffect(() => {
|
|
946
953
|
if (!hasMenus)
|
|
947
954
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileTree.js","sourceRoot":"","sources":["../../../src/react/file-tree/FileTree.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FileTree.js","sourceRoot":"","sources":["../../../src/react/file-tree/FileTree.tsx"],"names":[],"mappings":";;AAuKA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpF,OAAO,EAEL,cAAc,EACd,YAAY,EACZ,SAAS,EAKT,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,mBAAmB,GACpB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EACL,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAEL,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,gBAAgB,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,SAAS,GAAG,QAAQ,CAAiB,GAAG,EAAE,CAC9C,MAAM,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CACzD,CAAC;AAEF,oFAAoF;AACpF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAkB,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;AAE9E,gFAAgF;AAChF,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB,qEAAqE;AACrE,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,4DAA4D;AAC5D,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,GAAG,CAAC;AAE3B,+FAA+F;AAC/F,MAAM,kBAAkB,GAAG,IAAI,CAAC;AA+BhC,MAAM,QAAQ,GAAc,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAE3E,mGAAmG;AACnG,MAAM,aAAa,GAAG,qBAAqB,CAAC;AAC5C,4FAA4F;AAC5F,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAExC;;;GAGG;AACH,MAAM,OAAO,GAAsB,EAAE,CAAC;AA0atC;;;;;;;;;;;;GAYG;AACH,SAAS,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAyC;IACxE,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;QACxB,OAAO,CACL,eAAK,SAAS,EAAC,0BAA0B,EAAC,OAAO,EAAC,WAAW,iBAAa,MAAM,aAC9E,mCAAmB,EACnB,eAAM,CAAC,EAAC,4EAA4E,GAAG,EACvF,eAAM,CAAC,EAAC,kBAAkB,EAAC,SAAS,EAAC,qBAAqB,GAAG,IACzD,CACP,CAAC;IACJ,OAAO,CACL,eAAK,SAAS,EAAC,4BAA4B,EAAC,OAAO,EAAC,WAAW,iBAAa,MAAM,aAChF,0BAAQ,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,GAAS,EAChD,eAAM,CAAC,EAAC,yFAAyF,GAAG,IAChG,CACP,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAS,QAAQ,CAAC,EAChB,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,GAMV;IACC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAC,WAAW,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAI,CAAC;IACrF,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IACvE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,IAAI,CAAC,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,CACL,cACE,GAAG,EAAE,GAAG,EAER,SAAS,EAAC,YAAY,EACtB,GAAG,EAAE,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EACrC,GAAG,EAAC,EAAE,iBACM,MAAM,EAClB,OAAO,EAAC,MAAM,EACd,QAAQ,EAAC,OAAO,EAChB,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,KACzB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAT1C,GAAG,CAUR,CACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EACvB,KAAK,EACL,UAAU,EACV,QAAQ,EACR,WAAW,EACX,iBAAiB,EACjB,MAAM,EACN,SAAS,EAAE,aAAa,EACxB,iBAAiB,EACjB,cAAc,GAAG,KAAK,EACtB,cAAc,EACd,SAAS,EACT,SAAS,EACT,cAAc,EACd,WAAW,GAAG,QAAQ,EACtB,MAAM,EACN,UAAU,EACV,aAAa,EACb,mBAAmB,EACnB,YAAY,GAAG,KAAK,EACpB,YAAY,EACZ,OAAO,EACP,SAAS,EACT,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,OAAO,EACP,KAAK,EACL,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,OAAO,EACP,SAAS,EACT,OAAO,EACP,cAAc,EACd,UAAU,GAAG,IAAI,EACjB,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,UAAU,EACV,YAAY,GAAG,IAAI,EACnB,QAAQ,GAAG,IAAI,EACf,MAAM,EACN,KAAK,GAAG,mBAAmB,EAC3B,SAAS,GAAG,OAAO,EACnB,SAAS,EACT,MAAM,GAAG,KAAK,GACA;IACd,MAAM,SAAS,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC/C,+FAA+F;IAC/F,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,GAAG,EAAuB,CAAC,CAAC;IACvD;;;;;;;;OAQG;IACH,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,GAAG,EAAuB,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,MAAM,CACvB,IAAI,CACL,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,CAA8D,IAAI,CAAC,CAAC;IACzF,6EAA6E;IAC7E,MAAM,MAAM,GAAG,MAAM,CAAW,EAAE,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9C;;;;;;;;;OASG;IACH,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC;;;;;;;OAOG;IACH,MAAM,MAAM,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAE3C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAoB,EAAE,CAAC,CAAC;IACxE;;;;;;;OAOG;IACH,MAAM,kBAAkB,GAAG,aAAa,IAAI,YAAY,CAAC;IACzD,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,IAAc,EAAE,EAAE;QACjB,IAAI,aAAa,KAAK,SAAS;YAAE,eAAe,CAAC,IAAI,CAAC,CAAC;QACvD,iBAAiB,EAAE,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,EACD,CAAC,aAAa,EAAE,iBAAiB,CAAC,CACnC,CAAC;IACF;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAoB,EAAE,CAAC,CAAC;IACxE,yFAAyF;IACzF,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CACH,YAAY,CAAC,MAAM,KAAK,CAAC;QACvB,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EACnE,CAAC,kBAAkB,EAAE,YAAY,CAAC,CACnC,CAAC;IACF;;;OAGG;IACH,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,GAAsB,EAAE,EAAE;QACzB,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,CACvB,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACpF,CAAC;QACF,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,YAAY,CAAC,CAAC,GAAG,kBAAkB,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;IACpE,CAAC,EACD,CAAC,kBAAkB,EAAE,YAAY,CAAC,CACnC,CAAC;IACF,2FAA2F;IAC3F,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,GAAsB,EAAE,EAAE;QACzB,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,CACvB,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACpF,CAAC;QACF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAAE,OAAO;QAC/D,YAAY,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC,EACD,CAAC,kBAAkB,EAAE,YAAY,CAAC,CACnC,CAAC;IAEF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAmB,IAAI,CAAC,CAAC;IACzD;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAyC,IAAI,CAAC,CAAC;IACrF,yFAAyF;IACzF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC1E;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAGhC,IAAI,CAAC,CAAC;IAChB;;;;;;;;;;;;;;OAcG;IACH,MAAM,QAAQ,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAC7C,wFAAwF;IACxF,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5B,uFAAuF;IACvF,MAAM,YAAY,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;IACtD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS;YAAE,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;IAC1C,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB;;;OAGG;IACH,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EACtF,CAAC,KAAK,EAAE,UAAU,CAAC,CACpB,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,EAAE,KAAK,IAAI,KAAK,CAAC;IAC3C,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,EAClE,CAAC,WAAW,EAAE,MAAM,CAAC,CACtB,CAAC;IACF;;;;OAIG;IACH,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EACzE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAC/B,CAAC;IACF;;;OAGG;IACH,MAAM,IAAI,GAAG,OAAO,CAClB,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EACrD,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAC3B,CAAC;IAEF,MAAM,MAAM,GAAG,SAAS,IAAI,OAAO,CAAC;IAEpC;;;;;;;;;;;;;;;OAeG;IACH,MAAM,UAAU,GAAG,OAAO,CAAgB,GAAG,EAAE;QAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACrF,MAAM,GAAG,GAAkB,EAAE,CAAC;QAC9B,KAAK,MAAM,EAAE,IAAI,MAAM,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACzB,IAAI,IAAI;gBAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAExB;;;;OAIG;IACH,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,WAAW,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAC9D,CAAC,WAAW,EAAE,UAAU,CAAC,CAC1B,CAAC;IACF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChE,MAAM,GAAG,GAAG,OAAO,CACjB,GAAG,EAAE,CAAC,CAAC,SAAS,EAAE,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EACjE,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,6EAA6E;IAC7E,MAAM,MAAM,GAAG,WAAW,CACxB,CAAC,GAAsB,EAAE,EAAE;QACzB,MAAM,GAAG,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC;QAChC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC/F,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CACd,GAAG,EAAE;YACH,IAAI,SAAS,CAAC,OAAO,KAAK,GAAG;gBAAE,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QACzD,CAAC,EACD,GAAG,EAAE,GAAE,CAAC,CACT,CAAC;IACJ,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IAEF;;;;;;;OAOG;IACH,MAAM,KAAK,GAAG,WAAW,CACvB,CAAC,IAAkB,EAAE,MAAe,EAAuC,EAAE;QAC3E,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3D,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5C;;;;;;;WAOG;QACH,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACnE,CAAC,EACD,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAC7B,CAAC;IAEF,sEAAsE;IACtE,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,IAAI,UAAU,CAAC,CAAC;IAEnD;;;;;OAKG;IACH,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,GAAsB,EAAE,MAAoB,EAAE,EAAE;QAC/C,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC7B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,IAAI,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAW,EAAE,MAAM,CAAC,CAAC;;YACxC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC,EACD,CAAC,MAAM,EAAE,UAAU,CAAC,CACrB,CAAC;IAEF,yFAAyF;IAEzF;;;;;;;;OAQG;IACH,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EACjF,CAAC,KAAK,EAAE,KAAK,CAAC,CACf,CAAC;IAEF;;;OAGG;IACH,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,IAAY,EAAE,EAAE;QACf,oFAAoF;QACpF,wFAAwF;QACxF,IAAI,QAAQ;YAAE,aAAa,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;;YAC7C,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,EACD,CAAC,aAAa,EAAE,QAAQ,CAAC,CAC1B,CAAC;IAEF;;;;;;;;;;;OAWG;IACH,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,IAAI,MAAM,GAAkB,IAAI,CAAC;QACjC,IAAI,UAAU,KAAK,IAAI;YAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,CAAC,IAA6B,EAAE,SAAmB,EAAW,EAAE;YAC3E,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;gBACxB,IAAI,IAAI,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;oBAC3B,KAAK,MAAM,EAAE,IAAI,SAAS;wBAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACzC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;oBAClC,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;oBAAE,OAAO,IAAI,CAAC;YACjF,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QACF,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IAExB;;;;;OAKG;IACH,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX;;;;OAIG;IACH,MAAM,MAAM,GAAG,WAAW,CACxB,CAAC,EAAU,EAAE,EAAE;QACb,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;YACzC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,CAAC,EACD,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CACtC,CAAC;IAEF,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,EAAU,EAAE,EAAE;QACb,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1C,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC,EACD,CAAC,SAAS,EAAE,WAAW,CAAC,CACzB,CAAC;IAEF;;;;;;;;;;;OAWG;IACH,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,IAAkB,EAAE,EAAE;QACrB,IAAI,CAAC,cAAc;YAAE,OAAO;QAC5B,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,CAAC,EACD,CAAC,cAAc,EAAE,MAAM,CAAC,CACzB,CAAC;IAEF;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CACH,cAAc,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;QACpD,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,EAAE,EACR,CAAC,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,CAAC,CACjD,CAAC;IACF;;;;;;;OAOG;IACH,MAAM,aAAa,GAAG,MAAM,CAAoB,UAAU,CAAC,CAAC;IAC5D,2FAA2F;IAC3F,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IAC9C,SAAS,CAAC,GAAG,EAAE;QACb,aAAa,CAAC,OAAO,GAAG,UAAU,CAAC;QACnC,cAAc,CAAC,OAAO,GAAG,cAAc,CAAC;IAC1C,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;IACjC,mFAAmF;IACnF,MAAM,WAAW,GAAG,MAAM,CAA4B,IAAI,CAAC,CAAC;IAC5D,0FAA0F;IAC1F,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAEtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACH;;;;;;;;;;;;OAYG;IACH,mMAAmM;IACnM,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE,MAAM;YAAE,OAAO;QACtC,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACtC,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC;YAChC,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC;QAClC,CAAC;QACD;;;WAGG;QACH,IAAI,WAAW,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YACvC,WAAW,CAAC,OAAO,GAAG,UAAU,CAAC;YACjC,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC;YACrC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnF,oFAAoF;gBACpF,0EAA0E;gBAC1E,cAAc,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;gBACjC,OAAO;YACT,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GACP,QAAQ,CAAC,aAAa,CAAc,0BAA0B,CAAC;YAC/D,QAAQ,CAAC,aAAa,CAAc,4BAA4B,CAAC,CAAC;QACpE,IAAI,CAAC,GAAG,EAAE,cAAc;YAAE,OAAO;QACjC,MAAM,GAAG,GAAG,GAAG,CAAC,qBAAqB,EAAE,CAAC;QACxC;;;;;;WAMG;QACH,MAAM,KAAK,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,qBAAqB,EAAE,CAAC;QAC9F,IAAI,GAAG,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO;QAC/D,yFAAyF;QACzF,kDAAkD;QAClD,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;IAE1C,yFAAyF;IAEzF,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,IAAI,CAAC,UAAU,CAAC,OAAO;YAAE,OAAO;QAChC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACxC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;IAC5B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO;QAC5B,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,wEAAwE;IACxE,MAAM,KAAK,GAAG,WAAW,CACvB,CACE,CAAS,EACT,CAAS,EACoD,EAAE;QAC/D;;;;;;;;;;;WAWG;QACH,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,CAAC,EAAE;gBAAE,SAAS;YAClB,MAAM,GAAG,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK;gBACpE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC7C,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,EAAE;gBAAE,SAAS;YAClB,MAAM,GAAG,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK;gBACpE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC5F,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,EACD,CAAC,UAAU,EAAE,IAAI,CAAC,CACnB,CAAC;IAEF,MAAM,OAAO,GAAG,WAAW,CACzB,CAAC,MAAe,EAAE,KAAuB,EAAE,EAAE;QAC3C,cAAc,EAAE,CAAC;QACjB,UAAU,EAAE,CAAC;QACb,oFAAoF;QACpF,uFAAuF;QACvF,4EAA4E;QAC5E,IAAI,KAAK,EAAE,MAAM;YAAE,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;QACjD,IAAI,MAAM,IAAI,KAAK,EAAE,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO;gBAAE,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YAC7F,qFAAqF;YACrF,6EAA6E;YAC7E,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAClF,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QACtB,CAAC;aAAM,IAAI,MAAM,IAAI,KAAK,EAAE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,YAAY,EAAE,CAAC;YACzE,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QACtB,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,mFAAmF;YACnF,mDAAmD;YACnD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC;YAC5B,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;YACpB,WAAW,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,EACD,CAAC,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,CAAC,CACnF,CAAC;IAEF,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,KAAqC,EAAE,IAAkB,EAAE,EAAE;QAC5D,qEAAqE;QACrE,mFAAmF;QACnF,IAAI,CAAC,CAAC,YAAY,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK;YACpF,OAAO;QAET;;;;;;WAMG;QACH,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QACjD;;;;;;;WAOG;QACH,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,SAAS,KAAK,KAAK,CAAC;YAAE,OAAO;QAE/E,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,KAAK,GAAc;YACrB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,GAAG;YACH,MAAM;YACN,MAAM;YACN,CAAC,EAAE,MAAM;YACT,CAAC,EAAE,MAAM;YACT,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,KAAK;SACf,CAAC;QACF,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;QACnC,MAAM,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAE5C,MAAM,IAAI,GAAG,CAAC,SAAuB,EAAE,EAAE;YACvC,MAAM,SAAS,GACb,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;YAC9E,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,GAAG,cAAc;gBAAE,OAAO;YAExD,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;YACzE,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAC;YACxD,MAAM,OAAO,GAAG,OAAO,CACrB,aAAa;gBACX,MAAM;gBACN,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI;oBAC1B,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK;oBAC5B,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG;oBAC1B,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CACnC,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACZ,qFAAqF;gBACrF,UAAU,EAAE,CAAC;gBACb,cAAc,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;gBAC/E,MAAM,KAAK,GACT,KAAK,KAAK,IAAI;oBACZ,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE;oBAC1D,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;gBACtD,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;gBACvF,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;YAED,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;YACxD,mFAAmF;YACnF,kFAAkF;YAClF,kCAAkC;YAClC,MAAM,KAAK,GAAG,gBAAgB,CAAC;gBAC7B,KAAK,EAAE,KAAK;gBACZ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI;gBACrB,WAAW,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG;gBAC9B,OAAO,EAAE,GAAG;gBACZ,mFAAmF;gBACnF,iFAAiF;gBACjF,2DAA2D;gBAC3D,YAAY,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,MAAM;gBAC1C,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACpC,CAAC,CAAC;YAEH,gFAAgF;YAChF,oDAAoD;YACpD,MAAM,IAAI,GAAG,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;YAC3B,MAAM,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI,EAAE,EAAE;gBAAE,UAAU,EAAE,CAAC;YAC3D,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpC,MAAM,CAAC,OAAO,GAAG;oBACf,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE;wBACrB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;wBACtB,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;4BAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACxD,CAAC,EAAE,cAAc,CAAC;iBACnB,CAAC;YACJ,CAAC;YAED,2EAA2E;YAC3E,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,CAAC,GAAG;gBACpB,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,SAAS,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,GAAG,eAAe;oBAC7C,CAAC,CAAC,CAAC,CAAC;oBACJ,CAAC,CAAC,SAAS,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,GAAG,eAAe;wBAChD,CAAC,CAAC,CAAC;wBACH,CAAC,CAAC,CAAC,CAAC;YACV,IAAI,SAAS,KAAK,CAAC;gBAAE,cAAc,EAAE,CAAC;iBACjC,IAAI,UAAU,CAAC,OAAO,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;gBACrD,cAAc,EAAE,CAAC;gBACjB,UAAU,CAAC,OAAO,GAAG;oBACnB,SAAS;oBACT,KAAK,EAAE,WAAW,CAAC,GAAG,EAAE;wBACtB,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,eAAe,EAAE,CAAC,CAAC;oBACpE,CAAC,EAAE,EAAE,CAAC;iBACP,CAAC;YACJ,CAAC;YAED,KAAK,GAAG;gBACN,GAAG,KAAK;gBACR,CAAC,EAAE,SAAS,CAAC,OAAO;gBACpB,CAAC,EAAE,SAAS,CAAC,OAAO;gBACpB,MAAM,EAAE,IAAI;gBACZ,kFAAkF;gBAClF,oDAAoD;gBACpD,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ;gBACtC,OAAO,EAAE,KAAK;aACf,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,CAAC,MAAe,EAAE,EAAE,CAAC,GAAG,EAAE;YACvC,MAAM,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAChD,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAChD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC5C,MAAM,CAAC,mBAAmB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YACpD,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC7C,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC;QACF,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QACxB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7B;;;;;;;;;;;WAWG;QACH,MAAM,KAAK,GAAG,CAAC,QAAuB,EAAE,EAAE;YACxC,IAAI,QAAQ,CAAC,GAAG,KAAK,QAAQ;gBAAE,OAAO;YACtC,QAAQ,CAAC,cAAc,EAAE,CAAC;YAC1B,MAAM,EAAE,CAAC;QACX,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACzC,MAAM,CAAC,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC,EACD;QACE,KAAK;QACL,YAAY;QACZ,OAAO;QACP,SAAS;QACT,YAAY;QACZ,SAAS;QACT,mBAAmB;QACnB,OAAO;QACP,YAAY;QACZ,aAAa;QACb,UAAU;QACV,UAAU;QACV,KAAK;QACL,KAAK;QACL,cAAc;QACd,UAAU;KACX,CACF,CAAC;IAEF,yFAAyF;IACzF,sDAAsD;IACtD,EAAE;IACF,2FAA2F;IAC3F,2FAA2F;IAC3F,wFAAwF;IACxF,SAAS,CAAC,GAAG,EAAE;QACb,IACE,IAAI;YACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YACxC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAE9C,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;IAE7B,SAAS,CACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,cAAc,EAAE,CAAC;QACjB,UAAU,EAAE,CAAC;IACf,CAAC,EACD,CAAC,cAAc,EAAE,UAAU,CAAC,CAC7B,CAAC;IAEF,yFAAyF;IAEzF;;;;;;;OAOG;IACH,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,EAAU,EAAE,UAAmB,EAA2B,EAAE;QACrF,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;QAChD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;QACjD,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,EAAiB,EAAE,UAAU,GAAG,KAAK,EAAE,EAAE;QACxC,UAAU,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAC5D,IAAI,EAAE;YAAE,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC;IACzC,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IAEF,yFAAyF;IAEzF;;;;OAIG;IACH,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAIpC,IAAI,CAAC,CAAC;IAER,mFAAmF;IACnF,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,IAAkB,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,EAC3F,CAAC,OAAO,EAAE,UAAU,CAAC,CACtB,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,IAAkB,EAAE,UAAmB,EAAE,EAAmB,EAAE,EAAE;QAC/D,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAChD,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,EAAmB,EAAE,EAAE;QACtB,IAAI,UAAU;YAAE,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;;YACvC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACxC,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF;;;;;OAKG;IACH,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,IAAI,cAAc,CAAC,CAAC;IAC7D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,QAAQ,IAAI,CAAC,cAAc;YAAE,OAAO;QACzC,MAAM,aAAa,GAAG,CAAC,KAAiB,EAAE,EAAE;YAC1C,IAAI,KAAK,CAAC,MAAM,YAAY,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;gBAAE,OAAO;YACjF,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,YAAY,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACxD,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAC1E,CAAC,EAAE,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC,CAAC;IAEnC,iFAAiF;IACjF,MAAM,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD;;;;OAIG;IACH,uBAAuB,CAAC,SAAS,EAAE,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACvF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAG,UAAU,CAAC,mBAAmB,CAAC;QAC5C,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf;;;;OAIG;IACH,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAC,EAAU,EAAE,UAAmB,EAAE,EAAE;QAClC,qBAAqB,CAAC,GAAG,EAAE;YACzB,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC;YAC9C,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,UAAU,CAAC,QAAQ,CAAC,IAAI;gBAAE,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC;QAC7E,CAAC,CAAC,CAAC;IACL,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,WAAW,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAChD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;QACrC,WAAW,CAAC,OAAO,GAAG,UAAU,IAAI,IAAI,CAAC;QACzC,IAAI,CAAC,QAAQ,IAAI,UAAU;YAAE,OAAO;QACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC;QACtC,IAAI,MAAM,IAAI,MAAM,KAAK,QAAQ,CAAC,IAAI;YAAE,OAAO;QAC/C,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE3B;;;OAGG;IACH,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,GAAgB,EAAE,EAAE;QACnB,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,KAAK,GAAG,gBAAgB,CAAC;YAC7B,KAAK,EAAE,KAAK;YACZ,GAAG;YACH,iFAAiF;YACjF,mDAAmD;YACnD,WAAW,EAAE,GAAG;YAChB,YAAY,EAAE,KAAK;YACnB;;;;;eAKG;YACH,OAAO,EAAE,SAAS,CAAC,GAAG;YACtB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAC9B,OAAO;QACT,CAAC;QACD,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7C,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC9B,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YACtC,iFAAiF;YACjF,uDAAuD;YACvD,OAAO;QACT,CAAC;QACD,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACxC,+EAA+E;QAC/E,sDAAsD;QACtD,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,EACD,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CACzE,CAAC;IAEF,MAAM,SAAS,GAAG,WAAW,CAC3B,CACE,KAAuC,EACvC,GAAgB;IAChB;;;;;OAKG;IACH,IAA4B,EAC5B,UAAmB,EACnB,EAAE;QACF,IAAI,UAAU;YAAE,OAAO;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACzE,IAAI,IAAI;gBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/C,CAAC,CAAC;QAEF;;;;WAIG;QACH,IAAI,SAAS,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,aAAa,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YAC1F,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,sFAAsF;YACtF,uFAAuF;YACvF,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,qBAAqB,EAAE,CAAC;YACpE,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QACD,oFAAoF;QACpF,IACE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;YACpB,CAAC,KAAK,CAAC,GAAG,KAAK,aAAa,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,EACxE,CAAC;YACD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,qBAAqB,EAAE,CAAC;YACpE,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE;gBAChC,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,EAAE;gBACxB,CAAC,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC;aACpB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD;;;;WAIG;QACH,IAAI,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAChG,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,UAAU,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACvD,OAAO;QACT,CAAC;QAED;;;;;;;;;;;;;;;WAeG;QACH,IACE,cAAc;YACd,KAAK,CAAC,OAAO;YACb,CAAC,KAAK,CAAC,MAAM;YACb,CAAC,KAAK,CAAC,QAAQ;YACf,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,GAAG,EAC/B,CAAC;YACD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,OAAO;QACT,CAAC;QAED;;;;;;;;;;;;;;;WAeG;QACH,IACE,WAAW;YACX,KAAK,CAAC,OAAO;YACb,CAAC,KAAK,CAAC,MAAM;YACb,CAAC,KAAK,CAAC,QAAQ;YACf,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,GAAG,EAC/B,CAAC;YACD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI;gBAAE,OAAO;YAClB;;;;;eAKG;YACH,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACrD,IAAI,OAAO,EAAE,CAAC;gBACZ,SAAS,CAAC,OAAO,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,SAAS,KAAK,KAAK,CAAC,CAAC;YACtF,IAAI,KAAK,EAAE,CAAC;gBACV,SAAS,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBACrD,OAAO;YACT,CAAC;YACD,WAAW,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;WAqBG;QACH,IACE,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC;YAChC,CAAC,KAAK,CAAC,MAAM;YACb,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,EAC7D,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC;gBACtC,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrD,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBACnC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACZ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC/E,OAAO;YACT,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,MAAM,EAAE,CAAC;gBAChC,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACtC,kFAAkF;gBAClF,6EAA6E;gBAC7E,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;gBAChD,IAAI,OAAO,EAAE,CAAC;oBACZ,SAAS,CAAC,OAAO,CAAC,CAAC;oBACnB,OAAO;gBACT,CAAC;gBACD,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACZ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACrF,OAAO;YACT,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,SAAS,EAAE,CAAC;gBACnC;;;;;mBAKG;gBACH,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;oBAC9B,YAAY,CAAC,OAAO,GAAG,GAAG,CAAC;oBAC3B,UAAU,CAAC,GAAG,EAAE;wBACd,IAAI,YAAY,CAAC,OAAO,KAAK,GAAG;4BAAE,OAAO;wBACzC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;wBAC5B,SAAS,CAAC,GAAG,CAAC,CAAC;oBACjB,CAAC,EAAE,CAAC,CAAC,CAAC;oBACN,OAAO;gBACT,CAAC;gBACD,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,SAAS,CAAC,GAAG,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;YACD,OAAO;QACT,CAAC;QAED;;;;;;;;WAQG;QACH,IACE,YAAY;YACZ,KAAK,CAAC,MAAM;YACZ,CAAC,KAAK,CAAC,OAAO;YACd,CAAC,KAAK,CAAC,OAAO;YACd,CAAC,KAAK,CAAC,GAAG,KAAK,WAAW,IAAI,KAAK,CAAC,GAAG,KAAK,YAAY,CAAC,EACzD,CAAC;YACD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,mBAAmB,CAAC;gBAChC,KAAK,EAAE,KAAK;gBACZ,IAAI;gBACJ,GAAG;gBACH,SAAS,EAAE,KAAK,CAAC,GAAG,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBACpD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChC,CAAC,CAAC;YACH,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7C,iFAAiF;gBACjF,gFAAgF;gBAChF,4EAA4E;gBAC5E,kEAAkE;gBAClE,UAAU,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAChC,CAAC;YACD,OAAO;QACT,CAAC;QAED,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC;YAClB,KAAK,WAAW;gBACd,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,CAAC,CAAC,CAAC,CAAC;gBACR,OAAO;YACT,KAAK,SAAS;gBACZ,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACT,OAAO;YACT,KAAK,YAAY;gBACf,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,8EAA8E;gBAC9E,qBAAqB;gBACrB,IAAI,GAAG,CAAC,UAAU,IAAI,CAAC,GAAG,CAAC,QAAQ;oBAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;qBACpD,IAAI,GAAG,CAAC,UAAU;oBAAE,IAAI,CAAC,CAAC,CAAC,CAAC;gBACjC,OAAO;YACT,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,QAAQ;oBAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxD,iFAAiF;gBACjF,+EAA+E;gBAC/E,+DAA+D;qBAC1D,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,QAAQ;oBAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC7D,OAAO;YACT,CAAC;YACD,KAAK,MAAM;gBACT,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,CAAC,CAAC;oBAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;gBACnD,OAAO;YACT,KAAK,KAAK;gBACR,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBAAE,QAAQ,CAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;gBAC5E,OAAO;YACT;;;;;;;;;;;;;;;cAeE;YACF,KAAK,OAAO;gBACV,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IACE,aAAa;oBACb,CAAC,KAAK,CAAC,MAAM;oBACb,CAAC,KAAK,CAAC,OAAO;oBACd,CAAC,KAAK,CAAC,OAAO;oBACd,CAAC,KAAK,CAAC,QAAQ,EACf,CAAC;oBACD,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACxB,OAAO;gBACT,CAAC;gBACD,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC/B,OAAO;YACT,KAAK,GAAG;gBACN,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,kFAAkF;gBAClF,kFAAkF;gBAClF,gFAAgF;gBAChF,iBAAiB;gBACjB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC5D,OAAO;YACT,KAAK,IAAI;gBACP,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,aAAa,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1B,OAAO;YACT,mFAAmF;YACnF,wEAAwE;YACxE,KAAK,WAAW,CAAC;YACjB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd;;;;;;;;;mBASG;gBACH,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;gBAChE,IAAI,OAAO,IAAI,YAAY,EAAE,CAAC;oBAC5B,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;oBACrC,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,QAAQ;oBAAE,OAAO;gBACtB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YACD;;;;eAIG;YACH,KAAK,QAAQ;gBACX,IAAI,CAAC,SAAS;oBAAE,OAAO;gBACvB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnB,SAAS,CAAC,EAAE,CAAC,CAAC;gBACd,OAAO;YACT;gBACE,MAAM;QACV,CAAC;QACD,kFAAkF;QAClF,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO;QACrF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GACR,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,GAAG,kBAAkB;YAC7C,CAAC,CAAC,KAAK,CAAC,GAAG;YACX,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC;QACzC,SAAS,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAChD,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,QAAQ,CAAE,IAAI,CAAC,KAAK,CAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,EACD;QACE,KAAK;QACL,OAAO;QACP,OAAO;QACP,YAAY;QACZ,OAAO;QACP,SAAS;QACT,UAAU;QACV,QAAQ;QACR,YAAY;QACZ,MAAM;QACN,QAAQ;QACR,YAAY;QACZ,UAAU;QACV,MAAM;QACN,cAAc;QACd,aAAa;QACb,SAAS;QACT,UAAU;QACV,WAAW;QACX,UAAU;QACV,QAAQ;QACR,WAAW;QACX,MAAM;QACN,SAAS;QACT,UAAU;QACV,KAAK;QACL,IAAI;QACJ,KAAK;QACL,MAAM;QACN,SAAS;KACV,CACF,CAAC;IAEF;;;;;;;;;OASG;IACH,MAAM,OAAO,GAAG,WAAW,CACzB,CAAC,KAA2C,EAAE,EAAE;QAC9C,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC;QACjC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;QAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,SAAS,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO;QACxC,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC;QACjC,MAAM,KAAK,GACT,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QACrE,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;YAC1D,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,SAAS,CAAC,EAAE,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QACD,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,SAAS,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC,EACD,CAAC,SAAS,EAAE,SAAS,CAAC,CACvB,CAAC;IAEF,yFAAyF;IAEzF,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,KAAqB,EAAE,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,EAC5F,CAAC,mBAAmB,EAAE,cAAc,CAAC,CACtC,CAAC;IAEF;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,OAAgB,EAAE,EAAE;QACnB,UAAU,EAAE,CAAC;QACb,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACxC,IAAI,OAAO,EAAE,CAAC;YACZ,oFAAoF;YACpF,wDAAwD;YACxD,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC;QAC5B,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QACpB,WAAW,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,EACD,CAAC,WAAW,EAAE,UAAU,CAAC,CAC1B,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,IAAyB,EAAE,EAAE,CACrD,cAAc;QACZ,CAAC,CAAC;YACE,UAAU,EAAE,CAAC,KAAqB,EAAE,EAAE;gBACpC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;oBAAE,OAAO;gBACnC,6EAA6E;gBAC7E,2EAA2E;gBAC3E,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,iBAAiB,CAAC,IAAI,EAAE,EAAE,IAAI,kBAAkB,CAAC,CAAC;gBAElD,kFAAkF;gBAClF,gFAAgF;gBAChF,0EAA0E;gBAC1E,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpE,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI,EAAE,EAAE;oBAAE,UAAU,EAAE,CAAC;gBAC3D,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpC,MAAM,CAAC,OAAO,GAAG;wBACf,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE;4BACrB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;4BACtB,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gCAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACxD,CAAC,EAAE,cAAc,CAAC;qBACnB,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,WAAW,EAAE,GAAG,EAAE;gBAChB,iBAAiB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;gBAChG,+EAA+E;gBAC/E,+EAA+E;gBAC/E,kDAAkD;gBAClD,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,IAAI,EAAE,EAAE;oBAAE,UAAU,EAAE,CAAC;YACpD,CAAC;YACD,MAAM,EAAE,CAAC,KAAqB,EAAE,EAAE;gBAChC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;oBAAE,OAAO;gBACnC,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtB,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9B,CAAC;YACD,gFAAgF;YAChF,+CAA+C;YAC/C,SAAS,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;SACxC;QACH,CAAC,CAAC,EAAE,CAAC;IAET,yFAAyF;IAEzF,MAAM,MAAM,GACV,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IACzF,MAAM,QAAQ,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAErE;;;;;;;;OAQG;IACH,MAAM,aAAa,GAAG,CACpB,IAAkB,EAClB,KAAuB;IACvB;6FACyF;IACzF,IAA4B,EACnB,EAAE;QACX,IAAI,CAAC,iBAAiB;YAAE,OAAO,KAAK,CAAC;QACrC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,uFAAuF;YACvF,8EAA8E;YAC9E,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,IAAI,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/E,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;YACzB,iBAAiB,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;QACzB,iBAAiB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF;;;;;;;;;;OAUG;IACH,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAClC,eACE,SAAS,EAAC,yBAAyB,EACnC,KAAK,EAAE,EAAE,cAAc,EAAE,KAAK,EAAyB,aAGvD,eAAM,SAAS,EAAC,WAAW,iBAAa,MAAM,YAC3C,UAAU,CAAC,CAAC,CAAC,CACZ,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CACjD,CAAC,CAAC,CAAC,CACF,KAAC,WAAW,IAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,GAAI,CACzE,GACI,EACN,SAAS,CACR,QAAQ,EAAE,IAAI,IAAI,EAAE,EACpB,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAC7B,GAAG,EAAE,CAAC,aAAa,EAAE,EAAE;YACvB,wFAAwF;YACxF,oFAAoF;YACpF,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAC9B,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CACxC,IACG,CACP,CAAC;IAEF,MAAM,SAAS,GAAG,CAChB,OAAe,EACf,MAA+B,EAC/B,MAAkB;IAClB;;;;OAIG;IACH,YAAiC,QAAQ,EACzC,WAAoB,EACpB,QAAiB,EACjB,EAAE;QACF,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,SAAS,KAAK,QAAQ,CAAC;gBAAE,MAAM,EAAE,CAAC;;gBAC/D,MAAM,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC;QACF,OAAO,CACL,KAAC,KAAK,IACJ,SAAS,EAAC,iBAAiB,EAC3B,YAAY,EAAE,OAAO,EACrB,SAAS,sBACE,MAAM,KACb,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACxC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,QAAQ,KAAK,SAAS;gBACpB,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;gBAC9B,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAExD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EAC3C,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EACjD,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,EAClD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC3B,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,MAAM,EAAE,CAAC;gBACX,CAAC;qBAAM,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;oBACjC,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC,GACD,CACH,CAAC;IACJ,CAAC,CAAC;IAEF;;;;;;;;;;;OAWG;IACH,MAAM,SAAS,GAAG,CAAC,GAAgB,EAAE,UAAmB,EAAa,EAAE;QACrE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;QACrB,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5C,6EAA6E;QAC7E,8EAA8E;QAC9E,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzC;;;;;;;;;WASG;QACH,MAAM,UAAU,GACd,UAAU,KAAK,IAAI,CAAC,EAAE;YACtB,CAAC,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;QAClD,MAAM,YAAY,GAAG,MAAM,KAAK,IAAI,CAAC,EAAE,IAAI,cAAc,KAAK,IAAI,CAAC,EAAE,CAAC;QACtE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1C,MAAM,MAAM,GACV,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;YACnE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE;gBACvC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI;gBACxB,CAAC,CAAC,IAAI;YACR,CAAC,CAAC,IAAI,CAAC;QAEX,MAAM,OAAO,GAAG,CAGd,wBACE,IAAI,EAAC,UAAU,mBACA,UAAU,gBAEb,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,mBAU3B,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,kBACnD,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,KAC5E,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D;qFACyE;YACzE,QAAQ,EACN,IAAI,CAAC,EAAE;gBACP,CAAC,UAAU;oBACT,CAAC,CAAC,OAAO,EAAE,MAAM;wBACf,CAAC,CAAC,OAAO,CAAC,EAAE;wBACZ,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE;oBAC1B,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM;wBAC1B,CAAC,CAAC,OAAO,CAAC,EAAE;wBACZ,CAAC,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,CAAC,CAAC,EAER,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE;gBACV,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC/C,IAAI,EAAE;oBAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;oBACjC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpC,CAAC,EACD,GAAG,EAAE,IAAI,CAAC,EAAE,aAGH,IAAI,CAAC,EAAE,EAChB,SAAS,EAAC,UAAU,mBACL,UAAU,IAAI,SAAS,cAG5B,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,SAAS,kBAC1B,SAAS,IAAI,SAAS,eACzB,YAAY,IAAI,SAAS,iBACvB,MAAM,IAAI,SAAS,iBAInB,QAAQ,IAAI,SAAS,sBAChB,UAAU,IAAI,SAAS,mBAI1B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,SAAS,qBAEpD,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC,IAAI,SAAS,iBAElE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,kBAEhE,IAAI,CAAC,OAAO,IAAI,SAAS,iBAI1B,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,oBAG3C,CAAC,OAAO,EAAE,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC;gBACzF,SAAS,EAEX,KAAK,EAAE,EAAE,cAAc,EAAE,GAAG,CAAC,KAAK,EAAyB,EAC3D,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;gBACvB,IAAI,OAAO,CAAC,KAAK,CAAC;oBAAE,OAAO;gBAC3B,gFAAgF;gBAChF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;oBAAE,OAAO;gBAC/B,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACzB,CAAC,EACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,IAAI,OAAO,CAAC,KAAK,CAAC;oBAAE,OAAO;gBAC3B,gEAAgE;gBAChE,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC3B,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;oBAC/B,OAAO;gBACT,CAAC;gBACD,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC;oBAAE,OAAO;gBAC7C,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjB,CAAC,EACD,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;gBACvB,IAAI,OAAO,CAAC,KAAK,CAAC;oBAAE,OAAO;gBAC3B,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC,EACD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,IAAI,OAAO,CAAC,KAAK,CAAC;oBAAE,OAAO;gBAC3B,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAC1C,CAAC,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAC9D,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;gBACvB,IAAI,OAAO,CAAC,KAAK,CAAC;oBAAE,OAAO;gBAC3B,sFAAsF;gBACtF,iFAAiF;gBACjF,IAAI,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC;oBAC1B,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;oBACxB,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;oBAChD,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBACxD,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;oBAAE,OAAO;gBAC9B,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACxE,CAAC,KACG,gBAAgB,CAAC,IAAI,CAAC;YAEzB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAIhB,eACE,SAAS,EAAC,aAAa,eACZ,GAAG,CAAC,QAAQ,IAAI,SAAS,iBACxB,MAAM,EAClB,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EACjD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjB,KAAK,CAAC,eAAe,EAAE,CAAC;oBACxB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClB,CAAC,YAWD,cACE,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,SAAS,EAAC,OAAO,iBAML,MAAM,YAElB,eAAM,CAAC,EAAC,cAAc,GAAG,GACrB,GACD,CACR,CAAC,CAAC,CAAC,CAiBF,eAAM,SAAS,EAAC,WAAW,iBAAa,MAAM,YAC5C,KAAC,QAAQ,IACP,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,GAAG,CAAC,QAAQ,KACd,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACtC,SAAS,EAAE,kBAAkB,EAAE,CAAC,IAAI,CAAC,GACrC,GACG,CACR;YAEA,UAAU,IAAI,QAAQ,CAAC,CAAC,CAAC,CACxB,SAAS,CACP,SAAS,CAAC,IAAI,CAAC,EACf,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,EAChC,GAAG,EAAE,CAAC,cAAc,EAAE,EAAE,EACxB,QAAQ,EACR,SAAS;YACT,yEAAyE;YACzE,sEAAsE;YACtE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAC3C,CACF,CAAC,CAAC,CAAC,CACF,KAAC,OAAO,IAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,YAMpD,gBAAM,SAAS,EAAC,WAAW,aACxB,IAAI,CAAC,IAAI,EAGT,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,aAAa,YAAE,IAAI,CAAC,MAAM,GAAQ,CAAC,CAAC,CAAC,IAAI,IACnE,GACC,CACX;YA+BA,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAC7C,eAAM,SAAS,EAAC,kBAAkB,EAAC,IAAI,EAAC,KAAK,gBAAY,QAAQ,YAE/D,eACE,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,SAAS,EAAC,OAAO,iBACL,MAAM,aAElB,eAAM,CAAC,EAAC,8EAA8E,GAAG,EACzF,eAAM,CAAC,EAAC,sEAAsE,GAAG,EACjF,eAAM,CAAC,EAAC,kCAAkC,GAAG,EAC7C,eAAM,CAAC,EAAC,YAAY,GAAG,IACnB,GACD,CACR,CAAC,CAAC,CAAC,IAAI;YACP,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CACtC,KAAC,UAAU,IAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,GAAI,CAC3D,CAAC,CAAC,CAAC,IAAI;YACP,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CACvD,KAAC,OAAO,IAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,YAIvD,eAAM,SAAS,EAAC,aAAa,EAAC,IAAI,EAAC,KAAK,gBAAY,SAAS,6BAEtD,GACC,CACX,CAAC,CAAC,CAAC,IAAI;YACP,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YAC9C,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,YAAY,YAAE,IAAI,CAAC,KAAK,GAAQ,CAAC,CAAC,CAAC,IAAI;YAgBlF,cAAc,CAAC,CAAC,CAAC,CAChB,eAAM,SAAS,EAAC,2BAA2B,YACzC,KAAC,OAAO,IAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,gBAAgB,YAClE;wBACE,+EAA+E;wBAC/E,2EAA2E;wBAC3E,8EAA8E;wBAC9E,+EAA+E;wBAC/E,8EAA8E;wBAC9E,2EAA2E;wBAC3E,uEAAuE;wBACvE,yCAAyC;wBACzC,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,kBACvB,QAAQ,gBACV,QAAQ,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,EAChE,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EACjD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;4BACjB,KAAK,CAAC,eAAe,EAAE,CAAC;4BACxB,SAAS,CAAC,IAAI,CAAC,CAAC;wBAClB,CAAC,YAMD,eACE,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,SAAS,EAAC,OAAO,iBACL,MAAM,aAElB,eAAM,CAAC,EAAC,UAAU,GAAG,EACrB,eAAM,CAAC,EAAC,4MAA4M,GAAG,IACnN,GACC,GACD,GACL,CACR,CAAC,CAAC,CAAC,IAAI;YAEP,WAAW,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,YAAY,YAAE,WAAW,CAAC,IAAI,CAAC,GAAQ,CAAC,CAAC,CAAC,IAAI;YAoB5E,CAAC,YAAY,IAAI,aAAa,CAAC,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,CAC7D,eAAM,SAAS,EAAC,WAAW,iBAAa,MAAM,oBAAgB,EAAE,YAE9D,eACE,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,IAAI,EAAC,cAAc,EACnB,MAAM,EAAC,MAAM,EACb,SAAS,EAAC,OAAO,iBACL,MAAM,aAElB,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,KAAK,GAAG,EAChC,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,GAAG,EACjC,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,GAAG,EACjC,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,KAAK,GAAG,EACjC,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,GAAG,EAClC,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,KAAK,GAAG,IAC9B,GACD,CACR,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC;QAEF,2EAA2E;QAC3E,0EAA0E;QAC1E,0BAA0B;QAC1B,MAAM,IAAI,GACR,iBAAiB,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CACnC,KAAC,OAAO,IAAe,OAAO,EAAE,iBAAiB,YAC9C,OAAO,IADI,IAAI,CAAC,EAAE,CAEX,CACX,CAAC,CAAC,CAAC,CACF,OAAO,CACR,CAAC;QAEJ,8EAA8E;QAC9E,kFAAkF;QAClF,2EAA2E;QAC3E,OAAO,CAAC,UAAU,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAC1D,MAAC,QAAQ,eACN,IAAI,EACJ,QAAQ,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,KAFX,IAAI,CAAC,EAAE,CAGX,CACZ,CAAC,CAAC,CAAC,CACF,IAAI,CACL,CAAC;IACJ,CAAC,CAAC;IAEF,mFAAmF;IACnF,MAAM,SAAS,GAAG,GAAc,EAAE;QAChC,MAAM,GAAG,GAAgB,EAAE,CAAC;QAC5B,IAAI,OAAO,EAAE,IAAI,KAAK,KAAK,EAAE,CAAC;YAC5B,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;YACjD,MAAM,KAAK,GAAG,GAAG,EAAE;gBACjB,UAAU,CAAC,IAAI,CAAC,CAAC;gBACjB,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;YACxC,CAAC,CAAC;YACF,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,GAAG,GAAG,aAAa,CACvB,IAAI,EACJ,SAAS,EACT,CAAC,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,IAAI,KAAK,QAAQ,CACvD,CAAC;YACF,MAAM,EAAE,GAAG,UAAU;gBACnB,CAAC,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;gBACtF,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACvC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAClB,GAAG,CAAC,IAAI,CACN,KAAC,SAAS,IAER,IAAI,EAAC,KAAK,EACV,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,eAAe,IAAI,CAAC,IAAI,EAAE,EACjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,KAAK,IALV,UAAU,CAMd,CACH,CAAC;QACN,CAAC;QACD,MAAM,MAAM,GACV,UAAU,EAAE,KAAK,EAAE,IAAI,KAAK,MAAM;YAChC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YACrB,CAAC,CAAC,OAAO,EAAE,IAAI,KAAK,MAAM;gBACxB,CAAC,CAAC,OAAO,CAAC,EAAE;gBACZ,CAAC,CAAC,IAAI,CAAC;QACb,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,KAAK,GAAG,GAAG,EAAE;gBACjB,UAAU,CAAC,IAAI,CAAC,CAAC;gBACjB,UAAU,EAAE,UAAU,EAAE,CAAC;YAC3B,CAAC,CAAC;YACF,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,EAAE,EAAE,CAAC;iBACzC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;iBAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,GAAG,CAAC,IAAI,CACN,KAAC,SAAS,IAER,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,MAAM,EAAE,WAAW,IAAI,CAAC,EACrC,UAAU,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,EACpC,aAAa,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EACzE,OAAO,EAAE,KAAK,IAPV,WAAW,CAQf,CACH,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,EAAE,KAAK,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YACvC,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC;YACjC,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACvF,IAAI,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,oFAAoF;gBACpF,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;gBACrF,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;YACzD,CAAC;YACD,GAAG,CAAC,IAAI,CACN,KAAC,SAAS,IAER,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EACjD,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,GAAG,EAAE;oBACZ,UAAU,CAAC,UAAU,EAAE,CAAC;oBACxB,IAAI,GAAG,CAAC,CAAC,CAAC;wBAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC9C,CAAC,IATI,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAU5B,CACH,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IAEF,OAAO,CACL,eACE,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,OAAO,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,qBAEnF,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,aAE3C,UAAU,CAAC,CAAC,CAAC,KAAC,eAAe,IAAC,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,GAAI,CAAC,CAAC,CAAC,IAAI,EAgBnF,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACvB,eAAK,SAAS,EAAC,aAAa,aAC1B,cAAK,SAAS,EAAC,kBAAkB,YAAE,WAAW,GAAO,EACrD,cACE,IAAI,EAAC,MAAM,gBACC,WAAW,KACnB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC/D,SAAS,EAAE,mBAAmB,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,YAExE,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,GAC1C,IACF,CACP,CAAC,CAAC,CAAC,IAAI,EAKR,cACE,SAAS,EAAC,aAAa,EACvB,GAAG,EAAE,SAAS,oBAKZ,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,MAAM,CAAC;oBACpD,cAAc,KAAK,kBAAkB;oBACrC,SAAS,KAEP,gBAAgB,CAAC,IAAI,CAAC,EAC1B,WAAW,EAAE,GAAG,EAAE;oBAChB,gFAAgF;oBAChF,8EAA8E;gBAChF,CAAC,YAED,eACE,IAAI,EAAC,MAAM,gBACC,SAAS,KAIjB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC/D,SAAS,EAAE,YAAY,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,aAEjE,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAC7B,cAAK,SAAS,EAAC,YAAY,YAGxB,UAAU,IAAI,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gCAClE,CAAC,CAAC,qEAAqE;gCACvE,CAAC,CAAC,KAAK,GACL,CACP,CAAC,CAAC,CAAC,IAAI,EAUP,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAErD,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,EAOxC,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,QAAQ,CAAC;4BAClF,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;4BACb,CAAC,CAAC,IAAI,IACJ,GACF,EAYL,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CACd,eACE,SAAS,EAAC,WAAW,kBACP,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,SAAS,EAC7C,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,iBACtC,MAAM,aAIlB,eAAM,SAAS,EAAC,gBAAgB,YAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,GACrE,EAGP,eAAM,SAAS,EAAC,iBAAiB,YAC9B,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GACvD,IACH,CACP,CAAC,CAAC,CAAC,IAAI,EACP,SAAS,EAAE,EAGZ,eAAM,SAAS,EAAC,SAAS,EAAC,IAAI,EAAC,QAAQ,eAAW,QAAQ,YACvD,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GACjF,IACH,CACP,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,OAAO,CAAC,KAAwE;IACvF,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IACxC,IAAI,CAAC,CAAC,MAAM,YAAY,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C;;;;;;;;OAQG;IACH,IAAI,aAAa,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAClF,OAAO,MAAM,YAAY,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;AAC7E,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,UAAU,CAAC,KAA2D;IAC7E,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAC9E,OAAO,KAAK,CAAC,MAAM,YAAY,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAC;AAC9F,CAAC;AAED,SAAS,MAAM,CAAC,KAA8B,EAAE,EAAU;IACxD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE;YAAE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC1B,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,IAAiB;IACrC,KAAK,IAAI,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACpE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;QAClD,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;IAC1F,CAAC;IACD,OAAO,QAAQ,CAAC,gBAAgB,IAAI,QAAQ,CAAC,eAAe,CAAC;AAC/D,CAAC"}
|
|
@@ -629,6 +629,20 @@
|
|
|
629
629
|
white-space: nowrap;
|
|
630
630
|
}
|
|
631
631
|
|
|
632
|
+
/*
|
|
633
|
+
* A finger held on a row opens its menu (`longPressContextMenu.ts`), so on a touch screen the
|
|
634
|
+
* hold must not ALSO start selecting the name under it. A coarse pointer only: a mouse may
|
|
635
|
+
* still drag-select a name to copy it.
|
|
636
|
+
*/
|
|
637
|
+
@media (pointer: coarse) {
|
|
638
|
+
.cbft-row,
|
|
639
|
+
.cbft-name,
|
|
640
|
+
.cbft-suffix {
|
|
641
|
+
-webkit-user-select: none;
|
|
642
|
+
user-select: none;
|
|
643
|
+
}
|
|
644
|
+
}
|
|
645
|
+
|
|
632
646
|
/*
|
|
633
647
|
* A derived extension, a step quieter than the name — see `FileTreeNode.suffix`. Quieter
|
|
634
648
|
* because the name is what you scan FOR and the suffix is what you scan BY; at full
|
|
@@ -189,6 +189,6 @@ function FilterRailButton({ item, active, collapsed, onSelect, title, }) {
|
|
|
189
189
|
* right-click listener needs (see `headerContextMenu.ts`). */
|
|
190
190
|
function SectionHeading({ label, action, onContextMenu, }) {
|
|
191
191
|
const ref = useHeaderContextMenu(onContextMenu);
|
|
192
|
-
return (_jsxs("div", { ref: ref, className: 'flex items-center justify-between gap-1 px-2 pt-1 pb-1', children: [_jsx("span", { className: 'truncate text-xs font-semibold uppercase tracking-wide text-muted-foreground', children: label }), action] }));
|
|
192
|
+
return (_jsxs("div", { ref: ref, className: 'flex select-none items-center justify-between gap-1 px-2 pt-1 pb-1', children: [_jsx("span", { className: 'truncate text-xs font-semibold uppercase tracking-wide text-muted-foreground', children: label }), action] }));
|
|
193
193
|
}
|
|
194
194
|
//# sourceMappingURL=FilterRail.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterRail.js","sourceRoot":"","sources":["../../../src/react/filter-rail/FilterRail.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FilterRail.js","sourceRoot":"","sources":["../../../src/react/filter-rail/FilterRail.tsx"],"names":[],"mappings":"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"}
|
|
@@ -44,11 +44,11 @@ export function RailSection({ label, children, action, open: controlledOpen, onO
|
|
|
44
44
|
const bodyId = useId();
|
|
45
45
|
const heading = 'truncate text-xs font-semibold uppercase tracking-wide text-muted-foreground';
|
|
46
46
|
if (!collapsible)
|
|
47
|
-
return (_jsxs("section", { "aria-labelledby": headingId, className: className, "data-cb-rail-section": 'static', children: [_jsxs("div", { ref: headerRef, className: cn('flex items-center justify-between gap-1 px-2 pt-1 pb-1', headerClassName), children: [_jsx("h2", { className: cn('m-0', heading), id: headingId, children: label }), action] }), _jsx("div", { className: contentClassName, children: children })] }));
|
|
47
|
+
return (_jsxs("section", { "aria-labelledby": headingId, className: className, "data-cb-rail-section": 'static', children: [_jsxs("div", { ref: headerRef, className: cn('flex select-none items-center justify-between gap-1 px-2 pt-1 pb-1', headerClassName), children: [_jsx("h2", { className: cn('m-0', heading), id: headingId, children: label }), action] }), _jsx("div", { className: contentClassName, children: children })] }));
|
|
48
48
|
// A plain disclosure — a button with `aria-expanded` / `aria-controls` over a body that is
|
|
49
49
|
// not rendered while shut. Not Radix Collapsible: it animates nothing here, and every app with
|
|
50
50
|
// a sidebar would pay for its presence machinery in its first chunk.
|
|
51
|
-
return (_jsxs("section", { "aria-labelledby": headingId, className: className, "data-cb-rail-section": open ? 'open' : 'closed', children: [_jsxs("div", { ref: headerRef, className: cn('flex items-center gap-1 pt-1 pb-1', headerClassName), children: [_jsx("h2", { className: 'm-0 flex min-w-0 flex-1', children: _jsxs("button", {
|
|
51
|
+
return (_jsxs("section", { "aria-labelledby": headingId, className: className, "data-cb-rail-section": open ? 'open' : 'closed', children: [_jsxs("div", { ref: headerRef, className: cn('flex select-none items-center gap-1 pt-1 pb-1', headerClassName), children: [_jsx("h2", { className: 'm-0 flex min-w-0 flex-1', children: _jsxs("button", {
|
|
52
52
|
// guardrails-ignore no-raw-action-button: the section's heading IS its toggle — a
|
|
53
53
|
// chevron and a small-caps label laid out as one heading, not a centred Button.
|
|
54
54
|
type: 'button', id: headingId, "aria-expanded": open, "aria-controls": open ? bodyId : undefined, "data-state": open ? 'open' : 'closed', onClick: () => setOpen(!open), className: cn(RAW_BUTTON, 'group/rail-section flex min-w-0 flex-1 items-center gap-1 rounded-md px-1 py-0.5 text-left transition-colors hover:bg-card-raised focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring', TAP_TARGET_HEIGHT), children: [_jsx(ChevronRight, { "aria-hidden": true, className: 'size-3.5 shrink-0 text-muted-foreground transition-transform duration-150 group-data-[state=open]/rail-section:rotate-90' }), _jsx("span", { className: heading, children: label })] }) }), action ? _jsx("div", { className: 'flex shrink-0 items-center gap-0.5', children: action }) : null] }), open ? (_jsx("div", { id: bodyId, className: contentClassName, children: children })) : null] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RailSection.js","sourceRoot":"","sources":["../../../src/react/filter-rail/RailSection.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAkB,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAiC,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAuD1C,+FAA+F;AAC/F,MAAM,IAAI,GAAG,QAAQ,CAAC;AACtB,MAAM,IAAI,GAAG,MAAM,CAAC;AAEpB;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAChC,GAAuB,EACvB,WAAW,GAAG,IAAI;IAElB,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;IAC5E,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3F,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,MAAM,EACN,IAAI,EAAE,cAAc,EACpB,YAAY,EACZ,UAAU,EACV,WAAW,GAAG,IAAI,EAClB,WAAW,GAAG,IAAI,EAClB,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,mBAAmB,GACF;IACjB,MAAM,SAAS,GAAG,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;IAC5D,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAChF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,CAAC,WAAW;QACvB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,cAAc,KAAK,SAAS;YAC5B,CAAC,CAAC,cAAc;YAChB,CAAC,CAAC,UAAU;gBACV,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,KAAK,CAAC;IACd,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,EAAE;QAChC,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,UAAU;gBAAE,aAAa,CAAC,IAAI,CAAC,CAAC;;gBAC/B,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QACD,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC;IACvB,MAAM,OAAO,GAAG,8EAA8E,CAAC;IAE/F,IAAI,CAAC,WAAW;QACd,OAAO,CACL,sCAA0B,SAAS,EAAE,SAAS,EAAE,SAAS,0BAAuB,QAAQ,aACtF,eAAK,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"RailSection.js","sourceRoot":"","sources":["../../../src/react/filter-rail/RailSection.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headerContextMenu.d.ts","sourceRoot":"","sources":["../../../src/react/filter-rail/headerContextMenu.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"headerContextMenu.d.ts","sourceRoot":"","sources":["../../../src/react/filter-rail/headerContextMenu.ts"],"names":[],"mappings":"AAyBA,yFAAyF;AACzF,MAAM,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B,KAAK,IAAI,CAAC;AAEX,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,wBAAwB,GAAG,SAAS,oDAsBjF"}
|
|
@@ -11,6 +11,15 @@
|
|
|
11
11
|
* heading is a label, not a control, and giving it a role to hang a handler on would announce
|
|
12
12
|
* it to a screen reader as something to press. The menu it opens is also reachable from the
|
|
13
13
|
* tree itself (its blank space, and Shift+F10 on a row), so nothing is pointer-only.
|
|
14
|
+
*
|
|
15
|
+
* A finger HELD on the heading opens it too — iOS has no right-click (owner, 2026-10-04: *"on
|
|
16
|
+
* mobile I cannot hold control and click … make holding down on those spots pop up the menu"*).
|
|
17
|
+
* See `longPressContextMenu.ts`.
|
|
18
|
+
*
|
|
19
|
+
* 🔴 The binder is IMPORTED LAZILY, only once a heading has a menu: every app with a rail loads
|
|
20
|
+
* this hook in its entry, and most (roms's library) never pass a handler — a static import put
|
|
21
|
+
* 0.59 kB gzip on roms's entry for a menu it does not have (forge task 2791). A hold takes
|
|
22
|
+
* 500ms, so the chunk is in long before a finger could need it.
|
|
14
23
|
*/
|
|
15
24
|
import { useEffect, useRef } from 'react';
|
|
16
25
|
export function useHeaderContextMenu(handler) {
|
|
@@ -24,7 +33,17 @@ export function useHeaderContextMenu(handler) {
|
|
|
24
33
|
return;
|
|
25
34
|
const listener = (event) => latest.current?.(event);
|
|
26
35
|
el.addEventListener('contextmenu', listener);
|
|
27
|
-
|
|
36
|
+
let unbindHold;
|
|
37
|
+
let gone = false;
|
|
38
|
+
void import('../hooks/longPressContextMenu.js').then(({ bindLongPressContextMenu }) => {
|
|
39
|
+
if (!gone)
|
|
40
|
+
unbindHold = bindLongPressContextMenu(el);
|
|
41
|
+
});
|
|
42
|
+
return () => {
|
|
43
|
+
gone = true;
|
|
44
|
+
el.removeEventListener('contextmenu', listener);
|
|
45
|
+
unbindHold?.();
|
|
46
|
+
};
|
|
28
47
|
}, [wanted]);
|
|
29
48
|
return ref;
|
|
30
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headerContextMenu.js","sourceRoot":"","sources":["../../../src/react/filter-rail/headerContextMenu.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"headerContextMenu.js","sourceRoot":"","sources":["../../../src/react/filter-rail/headerContextMenu.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAS1C,MAAM,UAAU,oBAAoB,CAAC,OAA6C;IAChF,MAAM,GAAG,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM;YAAE,OAAO;QAC3B,MAAM,QAAQ,GAAG,CAAC,KAAiB,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QAChE,EAAE,CAAC,gBAAgB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAC7C,IAAI,UAAoC,CAAC;QACzC,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,KAAK,MAAM,CAAC,kCAAkC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,wBAAwB,EAAE,EAAE,EAAE;YACpF,IAAI,CAAC,IAAI;gBAAE,UAAU,GAAG,wBAAwB,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE;YACV,IAAI,GAAG,IAAI,CAAC;YACZ,EAAE,CAAC,mBAAmB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAChD,UAAU,EAAE,EAAE,CAAC;QACjB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A touch HOLD answers like a right-click: it dispatches a real `contextmenu` at the finger.
|
|
3
|
+
*
|
|
4
|
+
* Owner, 2026-10-04: *"on mobile I cannot hold control and click like I can on mac to make the
|
|
5
|
+
* menus popup, we need to make holding down on those spots pop up the menu on iphone and mobile
|
|
6
|
+
* viewers."* iOS Safari never fires `contextmenu` for a long-press, so every menu wired to it —
|
|
7
|
+
* the file tree's rows and blank space, the rail heading's view menu (show hidden folders) —
|
|
8
|
+
* was unreachable on an iPhone.
|
|
9
|
+
*
|
|
10
|
+
* 🔴 It DISPATCHES the event rather than calling a handler, so every listener already on the
|
|
11
|
+
* surface — a native one through a ref, React's `onContextMenu` on a descendant row — answers
|
|
12
|
+
* a hold exactly as it answers a right-click, and a new menu needs no touch code of its own.
|
|
13
|
+
*
|
|
14
|
+
* The rules, each one a failure it prevents:
|
|
15
|
+
* · touch and pen only — a mouse already has a right-click;
|
|
16
|
+
* · a finger that travels past {@link LONG_PRESS_SLOP_PX} is a scroll or a drag, not a hold;
|
|
17
|
+
* · a browser that fires its OWN `contextmenu` for a hold (Android Chrome) keeps it — the
|
|
18
|
+
* timer is dropped, so one hold never opens two menus; one that arrives AFTER ours fired is
|
|
19
|
+
* swallowed for the same reason;
|
|
20
|
+
* · the `click` the lift produces is swallowed at the window, before `useOutsidePress`'s
|
|
21
|
+
* document listener can read it as a press outside the menu that just opened and shut it;
|
|
22
|
+
* · `-webkit-touch-callout: none` while bound, so iOS does not put its own callout on top;
|
|
23
|
+
* · a press inside `ignore` (a selector) is not a hold — the file tree's grip, where a finger
|
|
24
|
+
* that stays down is about to drag.
|
|
25
|
+
*/
|
|
26
|
+
/** How long a finger must stay down — iOS's own long-press duration. */
|
|
27
|
+
export declare const LONG_PRESS_MS = 500;
|
|
28
|
+
/** How far a finger may drift and still be holding still. */
|
|
29
|
+
export declare const LONG_PRESS_SLOP_PX = 8;
|
|
30
|
+
/** Bind a hold-for-menu to `element`; returns the cleanup. */
|
|
31
|
+
export declare function bindLongPressContextMenu(element: HTMLElement, { delayMs, ignore }?: {
|
|
32
|
+
delayMs?: number;
|
|
33
|
+
ignore?: string;
|
|
34
|
+
}): () => void;
|
|
35
|
+
//# sourceMappingURL=longPressContextMenu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"longPressContextMenu.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/longPressContextMenu.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAOH,wEAAwE;AACxE,eAAO,MAAM,aAAa,MAAM,CAAC;AACjC,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAIpC,8DAA8D;AAC9D,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,WAAW,EACpB,EAAE,OAAuB,EAAE,MAAM,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9E,MAAM,IAAI,CA4FZ"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A touch HOLD answers like a right-click: it dispatches a real `contextmenu` at the finger.
|
|
3
|
+
*
|
|
4
|
+
* Owner, 2026-10-04: *"on mobile I cannot hold control and click like I can on mac to make the
|
|
5
|
+
* menus popup, we need to make holding down on those spots pop up the menu on iphone and mobile
|
|
6
|
+
* viewers."* iOS Safari never fires `contextmenu` for a long-press, so every menu wired to it —
|
|
7
|
+
* the file tree's rows and blank space, the rail heading's view menu (show hidden folders) —
|
|
8
|
+
* was unreachable on an iPhone.
|
|
9
|
+
*
|
|
10
|
+
* 🔴 It DISPATCHES the event rather than calling a handler, so every listener already on the
|
|
11
|
+
* surface — a native one through a ref, React's `onContextMenu` on a descendant row — answers
|
|
12
|
+
* a hold exactly as it answers a right-click, and a new menu needs no touch code of its own.
|
|
13
|
+
*
|
|
14
|
+
* The rules, each one a failure it prevents:
|
|
15
|
+
* · touch and pen only — a mouse already has a right-click;
|
|
16
|
+
* · a finger that travels past {@link LONG_PRESS_SLOP_PX} is a scroll or a drag, not a hold;
|
|
17
|
+
* · a browser that fires its OWN `contextmenu` for a hold (Android Chrome) keeps it — the
|
|
18
|
+
* timer is dropped, so one hold never opens two menus; one that arrives AFTER ours fired is
|
|
19
|
+
* swallowed for the same reason;
|
|
20
|
+
* · the `click` the lift produces is swallowed at the window, before `useOutsidePress`'s
|
|
21
|
+
* document listener can read it as a press outside the menu that just opened and shut it;
|
|
22
|
+
* · `-webkit-touch-callout: none` while bound, so iOS does not put its own callout on top;
|
|
23
|
+
* · a press inside `ignore` (a selector) is not a hold — the file tree's grip, where a finger
|
|
24
|
+
* that stays down is about to drag.
|
|
25
|
+
*/
|
|
26
|
+
/*
|
|
27
|
+
* 🔴 No runtime import, React's included: a rail heading loads this module LAZILY (forge task
|
|
28
|
+
* 2791), and a chunk with dependencies drags a preload map into the chunk that imports it. The
|
|
29
|
+
* hook lives in `useLongPressContextMenu.ts`.
|
|
30
|
+
*/
|
|
31
|
+
/** How long a finger must stay down — iOS's own long-press duration. */
|
|
32
|
+
export const LONG_PRESS_MS = 500;
|
|
33
|
+
/** How far a finger may drift and still be holding still. */
|
|
34
|
+
export const LONG_PRESS_SLOP_PX = 8;
|
|
35
|
+
/** How long after a fired hold its lift's `click` and a late native menu are swallowed. */
|
|
36
|
+
const AFTERMATH_MS = 800;
|
|
37
|
+
/** Bind a hold-for-menu to `element`; returns the cleanup. */
|
|
38
|
+
export function bindLongPressContextMenu(element, { delayMs = LONG_PRESS_MS, ignore } = {}) {
|
|
39
|
+
let timer;
|
|
40
|
+
let pointerId = -1;
|
|
41
|
+
let startX = 0;
|
|
42
|
+
let startY = 0;
|
|
43
|
+
let target = null;
|
|
44
|
+
/** Until when a native `contextmenu` and a `click` are the aftermath of OUR menu. */
|
|
45
|
+
let firedUntil = 0;
|
|
46
|
+
let dispatching = false;
|
|
47
|
+
const cancel = () => {
|
|
48
|
+
if (timer !== undefined)
|
|
49
|
+
clearTimeout(timer);
|
|
50
|
+
timer = undefined;
|
|
51
|
+
};
|
|
52
|
+
const swallowClick = (event) => {
|
|
53
|
+
window.removeEventListener('click', swallowClick, true);
|
|
54
|
+
if (Date.now() > firedUntil)
|
|
55
|
+
return;
|
|
56
|
+
event.preventDefault();
|
|
57
|
+
event.stopImmediatePropagation();
|
|
58
|
+
};
|
|
59
|
+
const fire = () => {
|
|
60
|
+
timer = undefined;
|
|
61
|
+
if (!(target instanceof Element) || !target.isConnected)
|
|
62
|
+
return;
|
|
63
|
+
firedUntil = Date.now() + AFTERMATH_MS;
|
|
64
|
+
window.addEventListener('click', swallowClick, true);
|
|
65
|
+
setTimeout(() => window.removeEventListener('click', swallowClick, true), AFTERMATH_MS);
|
|
66
|
+
dispatching = true;
|
|
67
|
+
try {
|
|
68
|
+
target.dispatchEvent(new MouseEvent('contextmenu', {
|
|
69
|
+
bubbles: true,
|
|
70
|
+
cancelable: true,
|
|
71
|
+
composed: true,
|
|
72
|
+
clientX: startX,
|
|
73
|
+
clientY: startY,
|
|
74
|
+
button: 2,
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
finally {
|
|
78
|
+
dispatching = false;
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
const onDown = (event) => {
|
|
82
|
+
cancel();
|
|
83
|
+
if (event.pointerType === 'mouse' || !event.isPrimary)
|
|
84
|
+
return;
|
|
85
|
+
if (ignore && event.target instanceof Element && event.target.closest(ignore))
|
|
86
|
+
return;
|
|
87
|
+
pointerId = event.pointerId;
|
|
88
|
+
startX = event.clientX;
|
|
89
|
+
startY = event.clientY;
|
|
90
|
+
target = event.target;
|
|
91
|
+
timer = setTimeout(fire, delayMs);
|
|
92
|
+
};
|
|
93
|
+
const onMove = (event) => {
|
|
94
|
+
if (timer === undefined || event.pointerId !== pointerId)
|
|
95
|
+
return;
|
|
96
|
+
if (Math.hypot(event.clientX - startX, event.clientY - startY) > LONG_PRESS_SLOP_PX)
|
|
97
|
+
cancel();
|
|
98
|
+
};
|
|
99
|
+
const onEnd = (event) => {
|
|
100
|
+
if (event.pointerId === pointerId)
|
|
101
|
+
cancel();
|
|
102
|
+
};
|
|
103
|
+
const onNativeMenu = (event) => {
|
|
104
|
+
if (dispatching)
|
|
105
|
+
return;
|
|
106
|
+
if (timer !== undefined) {
|
|
107
|
+
cancel(); // the browser answered the hold itself — that is the one menu
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
if (Date.now() <= firedUntil) {
|
|
111
|
+
event.preventDefault();
|
|
112
|
+
event.stopImmediatePropagation();
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
const previousCallout = element.style.getPropertyValue('-webkit-touch-callout');
|
|
116
|
+
element.style.setProperty('-webkit-touch-callout', 'none');
|
|
117
|
+
element.addEventListener('pointerdown', onDown);
|
|
118
|
+
element.addEventListener('pointermove', onMove);
|
|
119
|
+
element.addEventListener('pointerup', onEnd);
|
|
120
|
+
element.addEventListener('pointercancel', onEnd);
|
|
121
|
+
element.addEventListener('contextmenu', onNativeMenu, true);
|
|
122
|
+
return () => {
|
|
123
|
+
cancel();
|
|
124
|
+
window.removeEventListener('click', swallowClick, true);
|
|
125
|
+
element.removeEventListener('pointerdown', onDown);
|
|
126
|
+
element.removeEventListener('pointermove', onMove);
|
|
127
|
+
element.removeEventListener('pointerup', onEnd);
|
|
128
|
+
element.removeEventListener('pointercancel', onEnd);
|
|
129
|
+
element.removeEventListener('contextmenu', onNativeMenu, true);
|
|
130
|
+
if (previousCallout)
|
|
131
|
+
element.style.setProperty('-webkit-touch-callout', previousCallout);
|
|
132
|
+
else
|
|
133
|
+
element.style.removeProperty('-webkit-touch-callout');
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=longPressContextMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"longPressContextMenu.js","sourceRoot":"","sources":["../../../src/react/hooks/longPressContextMenu.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
/** {@link bindLongPressContextMenu} on a ref's element while `enabled`. */
|
|
3
|
+
export declare function useLongPressContextMenu(ref: RefObject<HTMLElement | null>, enabled?: boolean, ignore?: string): void;
|
|
4
|
+
//# sourceMappingURL=useLongPressContextMenu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLongPressContextMenu.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/useLongPressContextMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAa,MAAM,OAAO,CAAC;AAGlD,2EAA2E;AAC3E,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,EAClC,OAAO,UAAO,EACd,MAAM,CAAC,EAAE,MAAM,GACd,IAAI,CAMN"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { bindLongPressContextMenu } from './longPressContextMenu.js';
|
|
3
|
+
/** {@link bindLongPressContextMenu} on a ref's element while `enabled`. */
|
|
4
|
+
export function useLongPressContextMenu(ref, enabled = true, ignore) {
|
|
5
|
+
useEffect(() => {
|
|
6
|
+
const element = ref.current;
|
|
7
|
+
if (!element || !enabled)
|
|
8
|
+
return;
|
|
9
|
+
return bindLongPressContextMenu(element, ignore ? { ignore } : {});
|
|
10
|
+
}, [ref, enabled, ignore]);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=useLongPressContextMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLongPressContextMenu.js","sourceRoot":"","sources":["../../../src/react/hooks/useLongPressContextMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,2EAA2E;AAC3E,MAAM,UAAU,uBAAuB,CACrC,GAAkC,EAClC,OAAO,GAAG,IAAI,EACd,MAAe;IAEf,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO;YAAE,OAAO;QACjC,OAAO,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAC7B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cursedbelt",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.56.0",
|
|
4
4
|
"license": "ISC",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "The React design system of the cursedbelt split — components, styles, theme. cursedbelt-core below it; server tier in cursedbelt-server.",
|
|
@@ -38,6 +38,9 @@ const TREE: FileTreeNode[] = [
|
|
|
38
38
|
/** `SPRING_OPEN_MS` in `FileTree.tsx` — Finder's and Explorer's own figure. */
|
|
39
39
|
const SPRING = 600;
|
|
40
40
|
|
|
41
|
+
/** Past `LONG_PRESS_MS` (500) — a literal, so the spec stands without the binder. */
|
|
42
|
+
const HOLD = 550;
|
|
43
|
+
|
|
41
44
|
const tree = (props: Partial<React.ComponentProps<typeof FileTree>> = {}) =>
|
|
42
45
|
render(
|
|
43
46
|
<FileTree nodes={TREE} selectedId={null} onSelect={() => undefined} {...props} />,
|
|
@@ -1149,6 +1152,22 @@ describe('the keyboard, beyond walking', () => {
|
|
|
1149
1152
|
expect(opened).toEqual(['simpsons', 'simpsons/screencaps']);
|
|
1150
1153
|
});
|
|
1151
1154
|
|
|
1155
|
+
test('🔴 a finger HELD on a row opens its menu — iOS has no right-click', async () => {
|
|
1156
|
+
// Owner, 2026-10-04: *"on mobile I cannot hold control and click like I can on mac to make
|
|
1157
|
+
// the menus popup, we need to make holding down on those spots pop up the menu on iphone"*.
|
|
1158
|
+
const opened: Array<{ id: string; x: number }> = [];
|
|
1159
|
+
tree({ onRowMenu: (node, at) => opened.push({ id: node.id, x: at.x }) });
|
|
1160
|
+
fireEvent.pointerDown(screen.getByText('Dinos'), {
|
|
1161
|
+
pointerType: 'touch',
|
|
1162
|
+
pointerId: 9,
|
|
1163
|
+
isPrimary: true,
|
|
1164
|
+
clientX: 21,
|
|
1165
|
+
clientY: 4,
|
|
1166
|
+
});
|
|
1167
|
+
await new Promise((resolve) => setTimeout(resolve, HOLD));
|
|
1168
|
+
expect(opened).toEqual([{ id: 'dinos', x: 21 }]);
|
|
1169
|
+
});
|
|
1170
|
+
|
|
1152
1171
|
test('🔴 the keyboard comes back from a rename instead of landing on <body>', () => {
|
|
1153
1172
|
// Committing unmounts the focused `<input>`, and a browser hands focus to `<body>` —
|
|
1154
1173
|
// which is not in the tree, so every key this component defines is gone until something
|
|
@@ -197,6 +197,7 @@ import {
|
|
|
197
197
|
import { useInView } from '../media/previewGate.js';
|
|
198
198
|
import { lazyPart } from '../components/DataTable/lazyPart.js';
|
|
199
199
|
import { applyFolderView, tagFilterActive } from './folderView.js';
|
|
200
|
+
import { useLongPressContextMenu } from '../hooks/useLongPressContextMenu.js';
|
|
200
201
|
import {
|
|
201
202
|
type FileTreeMenuItem,
|
|
202
203
|
FolderViewStrip,
|
|
@@ -1811,6 +1812,13 @@ export function FileTree({
|
|
|
1811
1812
|
|
|
1812
1813
|
/** Fetch the panels once the page is idle, if this tree has any menu to open. */
|
|
1813
1814
|
const hasMenus = wantsBlankMenu || Boolean(rowMenu);
|
|
1815
|
+
|
|
1816
|
+
/*
|
|
1817
|
+
* A finger held on a row or on the blank space opens the same menu a right-click does —
|
|
1818
|
+
* iOS has no right-click and never fires `contextmenu` for a hold (owner, 2026-10-04). The
|
|
1819
|
+
* grip is excluded: a finger held there is about to drag. See `longPressContextMenu.ts`.
|
|
1820
|
+
*/
|
|
1821
|
+
useLongPressContextMenu(scrollRef, hasMenus || Boolean(onRowMenu), '[data-cbft-grip]');
|
|
1814
1822
|
useEffect(() => {
|
|
1815
1823
|
if (!hasMenus) return;
|
|
1816
1824
|
const load = () => void TreePanel.preload().catch(() => {});
|
|
@@ -629,6 +629,20 @@
|
|
|
629
629
|
white-space: nowrap;
|
|
630
630
|
}
|
|
631
631
|
|
|
632
|
+
/*
|
|
633
|
+
* A finger held on a row opens its menu (`longPressContextMenu.ts`), so on a touch screen the
|
|
634
|
+
* hold must not ALSO start selecting the name under it. A coarse pointer only: a mouse may
|
|
635
|
+
* still drag-select a name to copy it.
|
|
636
|
+
*/
|
|
637
|
+
@media (pointer: coarse) {
|
|
638
|
+
.cbft-row,
|
|
639
|
+
.cbft-name,
|
|
640
|
+
.cbft-suffix {
|
|
641
|
+
-webkit-user-select: none;
|
|
642
|
+
user-select: none;
|
|
643
|
+
}
|
|
644
|
+
}
|
|
645
|
+
|
|
632
646
|
/*
|
|
633
647
|
* A derived extension, a step quieter than the name — see `FileTreeNode.suffix`. Quieter
|
|
634
648
|
* because the name is what you scan FOR and the suffix is what you scan BY; at full
|
|
@@ -639,7 +639,7 @@ function SectionHeading({
|
|
|
639
639
|
}): ReactNode {
|
|
640
640
|
const ref = useHeaderContextMenu(onContextMenu);
|
|
641
641
|
return (
|
|
642
|
-
<div ref={ref} className='flex items-center justify-between gap-1 px-2 pt-1 pb-1'>
|
|
642
|
+
<div ref={ref} className='flex select-none items-center justify-between gap-1 px-2 pt-1 pb-1'>
|
|
643
643
|
<span className='truncate text-xs font-semibold uppercase tracking-wide text-muted-foreground'>
|
|
644
644
|
{label}
|
|
645
645
|
</span>
|
|
@@ -116,7 +116,7 @@ export function RailSection({
|
|
|
116
116
|
if (!collapsible)
|
|
117
117
|
return (
|
|
118
118
|
<section aria-labelledby={headingId} className={className} data-cb-rail-section='static'>
|
|
119
|
-
<div ref={headerRef} className={cn('flex items-center justify-between gap-1 px-2 pt-1 pb-1', headerClassName)}>
|
|
119
|
+
<div ref={headerRef} className={cn('flex select-none items-center justify-between gap-1 px-2 pt-1 pb-1', headerClassName)}>
|
|
120
120
|
<h2 className={cn('m-0', heading)} id={headingId}>
|
|
121
121
|
{label}
|
|
122
122
|
</h2>
|
|
@@ -131,7 +131,7 @@ export function RailSection({
|
|
|
131
131
|
// a sidebar would pay for its presence machinery in its first chunk.
|
|
132
132
|
return (
|
|
133
133
|
<section aria-labelledby={headingId} className={className} data-cb-rail-section={open ? 'open' : 'closed'}>
|
|
134
|
-
<div ref={headerRef} className={cn('flex items-center gap-1 pt-1 pb-1', headerClassName)}>
|
|
134
|
+
<div ref={headerRef} className={cn('flex select-none items-center gap-1 pt-1 pb-1', headerClassName)}>
|
|
135
135
|
<h2 className='m-0 flex min-w-0 flex-1'>
|
|
136
136
|
<button
|
|
137
137
|
// guardrails-ignore no-raw-action-button: the section's heading IS its toggle — a
|
|
@@ -9,6 +9,9 @@ import { RailSection } from './RailSection.js';
|
|
|
9
9
|
* bar of the file tree"*). Without the prop, the browser's menu stays.
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
+
/** Past `LONG_PRESS_MS` (500) — a literal, so the spec stands without the binder. */
|
|
13
|
+
const HOLD = 550;
|
|
14
|
+
|
|
12
15
|
afterEach(cleanup);
|
|
13
16
|
|
|
14
17
|
const heading = (text: string) => screen.getByText(text).closest('div') as HTMLElement;
|
|
@@ -60,3 +63,52 @@ describe('a section heading\'s right-click', () => {
|
|
|
60
63
|
expect(fireEvent.contextMenu(heading('Files'))).toBe(true);
|
|
61
64
|
});
|
|
62
65
|
});
|
|
66
|
+
|
|
67
|
+
describe('a section heading held by a finger', () => {
|
|
68
|
+
test('🔴 a touch held on the heading opens its menu — iOS never fires contextmenu for a hold', async () => {
|
|
69
|
+
// Owner, 2026-10-04: *"on mobile I cannot hold control and click like I can on mac to make
|
|
70
|
+
// the menus popup"*. Collections' "Files" heading is where hidden folders are shown again.
|
|
71
|
+
const seen: number[] = [];
|
|
72
|
+
render(
|
|
73
|
+
<FilterRail
|
|
74
|
+
label='Library'
|
|
75
|
+
selected={null}
|
|
76
|
+
onSelect={() => undefined}
|
|
77
|
+
sections={[
|
|
78
|
+
{
|
|
79
|
+
id: 'files',
|
|
80
|
+
label: 'Files',
|
|
81
|
+
onHeaderContextMenu: (event) => {
|
|
82
|
+
event.preventDefault();
|
|
83
|
+
seen.push(event.clientX);
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
]}
|
|
87
|
+
/>,
|
|
88
|
+
);
|
|
89
|
+
// The binder is a lazy chunk (forge task 2791) — let it land, as it does long before a hold.
|
|
90
|
+
await import('../hooks/longPressContextMenu.js');
|
|
91
|
+
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
92
|
+
fireEvent.pointerDown(screen.getByText('Files'), {
|
|
93
|
+
pointerType: 'touch',
|
|
94
|
+
pointerId: 3,
|
|
95
|
+
isPrimary: true,
|
|
96
|
+
clientX: 17,
|
|
97
|
+
});
|
|
98
|
+
await new Promise((resolve) => setTimeout(resolve, HOLD));
|
|
99
|
+
expect(seen).toEqual([17]);
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
describe('the hold binder stays off the entry', () => {
|
|
104
|
+
test('🔴 headerContextMenu imports longPressContextMenu lazily, never statically', async () => {
|
|
105
|
+
// Every rail loads this hook in its app's entry; a static import put the binder on roms's
|
|
106
|
+
// entry (+0.59 kB gzip) for a menu roms never passes (forge task 2791).
|
|
107
|
+
const source = await Bun.file(new URL('./headerContextMenu.ts', import.meta.url)).text();
|
|
108
|
+
expect(source).not.toMatch(/^import[^;]*longPressContextMenu/m);
|
|
109
|
+
expect(source).toContain("import('../hooks/longPressContextMenu.js')");
|
|
110
|
+
// …and the binder imports nothing at runtime, or its chunk's preload map lands in the entry.
|
|
111
|
+
const binder = await Bun.file(new URL('../hooks/longPressContextMenu.ts', import.meta.url)).text();
|
|
112
|
+
expect(binder).not.toMatch(/^import (?!type )/m);
|
|
113
|
+
});
|
|
114
|
+
});
|
|
@@ -11,6 +11,15 @@
|
|
|
11
11
|
* heading is a label, not a control, and giving it a role to hang a handler on would announce
|
|
12
12
|
* it to a screen reader as something to press. The menu it opens is also reachable from the
|
|
13
13
|
* tree itself (its blank space, and Shift+F10 on a row), so nothing is pointer-only.
|
|
14
|
+
*
|
|
15
|
+
* A finger HELD on the heading opens it too — iOS has no right-click (owner, 2026-10-04: *"on
|
|
16
|
+
* mobile I cannot hold control and click … make holding down on those spots pop up the menu"*).
|
|
17
|
+
* See `longPressContextMenu.ts`.
|
|
18
|
+
*
|
|
19
|
+
* 🔴 The binder is IMPORTED LAZILY, only once a heading has a menu: every app with a rail loads
|
|
20
|
+
* this hook in its entry, and most (roms's library) never pass a handler — a static import put
|
|
21
|
+
* 0.59 kB gzip on roms's entry for a menu it does not have (forge task 2791). A hold takes
|
|
22
|
+
* 500ms, so the chunk is in long before a finger could need it.
|
|
14
23
|
*/
|
|
15
24
|
import { useEffect, useRef } from 'react';
|
|
16
25
|
|
|
@@ -31,7 +40,16 @@ export function useHeaderContextMenu(handler: HeaderContextMenuHandler | undefin
|
|
|
31
40
|
if (!el || !wanted) return;
|
|
32
41
|
const listener = (event: MouseEvent) => latest.current?.(event);
|
|
33
42
|
el.addEventListener('contextmenu', listener);
|
|
34
|
-
|
|
43
|
+
let unbindHold: (() => void) | undefined;
|
|
44
|
+
let gone = false;
|
|
45
|
+
void import('../hooks/longPressContextMenu.js').then(({ bindLongPressContextMenu }) => {
|
|
46
|
+
if (!gone) unbindHold = bindLongPressContextMenu(el);
|
|
47
|
+
});
|
|
48
|
+
return () => {
|
|
49
|
+
gone = true;
|
|
50
|
+
el.removeEventListener('contextmenu', listener);
|
|
51
|
+
unbindHold?.();
|
|
52
|
+
};
|
|
35
53
|
}, [wanted]);
|
|
36
54
|
return ref;
|
|
37
55
|
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { afterEach, beforeEach, describe, expect, jest, test } from 'bun:test';
|
|
2
|
+
import { fireEvent } from '@testing-library/react';
|
|
3
|
+
import { bindLongPressContextMenu, LONG_PRESS_MS, LONG_PRESS_SLOP_PX } from './longPressContextMenu.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* A finger held still answers like a right-click (owner, 2026-10-04: *"make holding down on
|
|
7
|
+
* those spots pop up the menu on iphone"*) — and nothing that is not a hold does.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
let host: HTMLElement;
|
|
11
|
+
let child: HTMLElement;
|
|
12
|
+
let menus: Array<{ x: number; y: number; on: EventTarget | null }>;
|
|
13
|
+
let unbind: () => void;
|
|
14
|
+
|
|
15
|
+
const touch = { pointerType: 'touch', pointerId: 7, isPrimary: true };
|
|
16
|
+
|
|
17
|
+
beforeEach(() => {
|
|
18
|
+
jest.useFakeTimers();
|
|
19
|
+
host = document.createElement('div');
|
|
20
|
+
child = document.createElement('span');
|
|
21
|
+
host.append(child);
|
|
22
|
+
document.body.append(host);
|
|
23
|
+
menus = [];
|
|
24
|
+
host.addEventListener('contextmenu', (event) => {
|
|
25
|
+
event.preventDefault();
|
|
26
|
+
menus.push({ x: event.clientX, y: event.clientY, on: event.target });
|
|
27
|
+
});
|
|
28
|
+
unbind = bindLongPressContextMenu(host);
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
afterEach(() => {
|
|
32
|
+
unbind();
|
|
33
|
+
host.remove();
|
|
34
|
+
jest.useRealTimers();
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
describe('bindLongPressContextMenu', () => {
|
|
38
|
+
test('a touch held still opens the context menu at the finger, on what was pressed', () => {
|
|
39
|
+
fireEvent.pointerDown(child, { ...touch, clientX: 30, clientY: 40 });
|
|
40
|
+
jest.advanceTimersByTime(LONG_PRESS_MS - 1);
|
|
41
|
+
expect(menus).toEqual([]);
|
|
42
|
+
jest.advanceTimersByTime(1);
|
|
43
|
+
expect(menus).toEqual([{ x: 30, y: 40, on: child }]);
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
test('a tap, a scroll and a mouse are not holds', () => {
|
|
47
|
+
fireEvent.pointerDown(child, { ...touch, clientX: 0, clientY: 0 });
|
|
48
|
+
fireEvent.pointerUp(child, touch);
|
|
49
|
+
jest.advanceTimersByTime(LONG_PRESS_MS * 2);
|
|
50
|
+
|
|
51
|
+
fireEvent.pointerDown(child, { ...touch, clientX: 0, clientY: 0 });
|
|
52
|
+
fireEvent.pointerMove(child, { ...touch, clientX: 0, clientY: LONG_PRESS_SLOP_PX + 1 });
|
|
53
|
+
jest.advanceTimersByTime(LONG_PRESS_MS * 2);
|
|
54
|
+
|
|
55
|
+
fireEvent.pointerDown(child, { ...touch, clientX: 0, clientY: 0 });
|
|
56
|
+
fireEvent.pointerCancel(child, touch);
|
|
57
|
+
jest.advanceTimersByTime(LONG_PRESS_MS * 2);
|
|
58
|
+
|
|
59
|
+
fireEvent.pointerDown(child, { pointerType: 'mouse', pointerId: 1, isPrimary: true });
|
|
60
|
+
jest.advanceTimersByTime(LONG_PRESS_MS * 2);
|
|
61
|
+
expect(menus).toEqual([]);
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
test('the lift after a hold does not click what it was held on', () => {
|
|
65
|
+
let clicks = 0;
|
|
66
|
+
child.addEventListener('click', () => clicks++);
|
|
67
|
+
fireEvent.pointerDown(child, { ...touch, clientX: 1, clientY: 1 });
|
|
68
|
+
jest.advanceTimersByTime(LONG_PRESS_MS);
|
|
69
|
+
fireEvent.pointerUp(child, touch);
|
|
70
|
+
fireEvent.click(child);
|
|
71
|
+
expect(menus).toHaveLength(1);
|
|
72
|
+
expect(clicks).toBe(0);
|
|
73
|
+
// …and only that one click: the next tap is a tap.
|
|
74
|
+
fireEvent.click(child);
|
|
75
|
+
expect(clicks).toBe(1);
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
test('a browser that answers the hold itself (Android) opens ONE menu, not two', () => {
|
|
79
|
+
fireEvent.pointerDown(child, { ...touch, clientX: 5, clientY: 5 });
|
|
80
|
+
fireEvent.contextMenu(child, { clientX: 5, clientY: 5 }); // the browser's own, first
|
|
81
|
+
jest.advanceTimersByTime(LONG_PRESS_MS * 2);
|
|
82
|
+
expect(menus).toHaveLength(1);
|
|
83
|
+
|
|
84
|
+
fireEvent.pointerDown(child, { ...touch, clientX: 5, clientY: 5 });
|
|
85
|
+
jest.advanceTimersByTime(LONG_PRESS_MS);
|
|
86
|
+
fireEvent.contextMenu(child, { clientX: 5, clientY: 5 }); // the browser's own, late
|
|
87
|
+
expect(menus).toHaveLength(2);
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
test('`ignore` leaves a press inside it alone; cleanup unbinds', () => {
|
|
91
|
+
unbind();
|
|
92
|
+
unbind = bindLongPressContextMenu(host, { ignore: 'span' });
|
|
93
|
+
fireEvent.pointerDown(child, touch);
|
|
94
|
+
jest.advanceTimersByTime(LONG_PRESS_MS * 2);
|
|
95
|
+
expect(menus).toEqual([]);
|
|
96
|
+
unbind();
|
|
97
|
+
fireEvent.pointerDown(host, touch);
|
|
98
|
+
jest.advanceTimersByTime(LONG_PRESS_MS * 2);
|
|
99
|
+
expect(menus).toEqual([]);
|
|
100
|
+
unbind = () => undefined;
|
|
101
|
+
});
|
|
102
|
+
});
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A touch HOLD answers like a right-click: it dispatches a real `contextmenu` at the finger.
|
|
3
|
+
*
|
|
4
|
+
* Owner, 2026-10-04: *"on mobile I cannot hold control and click like I can on mac to make the
|
|
5
|
+
* menus popup, we need to make holding down on those spots pop up the menu on iphone and mobile
|
|
6
|
+
* viewers."* iOS Safari never fires `contextmenu` for a long-press, so every menu wired to it —
|
|
7
|
+
* the file tree's rows and blank space, the rail heading's view menu (show hidden folders) —
|
|
8
|
+
* was unreachable on an iPhone.
|
|
9
|
+
*
|
|
10
|
+
* 🔴 It DISPATCHES the event rather than calling a handler, so every listener already on the
|
|
11
|
+
* surface — a native one through a ref, React's `onContextMenu` on a descendant row — answers
|
|
12
|
+
* a hold exactly as it answers a right-click, and a new menu needs no touch code of its own.
|
|
13
|
+
*
|
|
14
|
+
* The rules, each one a failure it prevents:
|
|
15
|
+
* · touch and pen only — a mouse already has a right-click;
|
|
16
|
+
* · a finger that travels past {@link LONG_PRESS_SLOP_PX} is a scroll or a drag, not a hold;
|
|
17
|
+
* · a browser that fires its OWN `contextmenu` for a hold (Android Chrome) keeps it — the
|
|
18
|
+
* timer is dropped, so one hold never opens two menus; one that arrives AFTER ours fired is
|
|
19
|
+
* swallowed for the same reason;
|
|
20
|
+
* · the `click` the lift produces is swallowed at the window, before `useOutsidePress`'s
|
|
21
|
+
* document listener can read it as a press outside the menu that just opened and shut it;
|
|
22
|
+
* · `-webkit-touch-callout: none` while bound, so iOS does not put its own callout on top;
|
|
23
|
+
* · a press inside `ignore` (a selector) is not a hold — the file tree's grip, where a finger
|
|
24
|
+
* that stays down is about to drag.
|
|
25
|
+
*/
|
|
26
|
+
/*
|
|
27
|
+
* 🔴 No runtime import, React's included: a rail heading loads this module LAZILY (forge task
|
|
28
|
+
* 2791), and a chunk with dependencies drags a preload map into the chunk that imports it. The
|
|
29
|
+
* hook lives in `useLongPressContextMenu.ts`.
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
/** How long a finger must stay down — iOS's own long-press duration. */
|
|
33
|
+
export const LONG_PRESS_MS = 500;
|
|
34
|
+
/** How far a finger may drift and still be holding still. */
|
|
35
|
+
export const LONG_PRESS_SLOP_PX = 8;
|
|
36
|
+
/** How long after a fired hold its lift's `click` and a late native menu are swallowed. */
|
|
37
|
+
const AFTERMATH_MS = 800;
|
|
38
|
+
|
|
39
|
+
/** Bind a hold-for-menu to `element`; returns the cleanup. */
|
|
40
|
+
export function bindLongPressContextMenu(
|
|
41
|
+
element: HTMLElement,
|
|
42
|
+
{ delayMs = LONG_PRESS_MS, ignore }: { delayMs?: number; ignore?: string } = {},
|
|
43
|
+
): () => void {
|
|
44
|
+
let timer: ReturnType<typeof setTimeout> | undefined;
|
|
45
|
+
let pointerId = -1;
|
|
46
|
+
let startX = 0;
|
|
47
|
+
let startY = 0;
|
|
48
|
+
let target: EventTarget | null = null;
|
|
49
|
+
/** Until when a native `contextmenu` and a `click` are the aftermath of OUR menu. */
|
|
50
|
+
let firedUntil = 0;
|
|
51
|
+
let dispatching = false;
|
|
52
|
+
|
|
53
|
+
const cancel = () => {
|
|
54
|
+
if (timer !== undefined) clearTimeout(timer);
|
|
55
|
+
timer = undefined;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const swallowClick = (event: MouseEvent) => {
|
|
59
|
+
window.removeEventListener('click', swallowClick, true);
|
|
60
|
+
if (Date.now() > firedUntil) return;
|
|
61
|
+
event.preventDefault();
|
|
62
|
+
event.stopImmediatePropagation();
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
const fire = () => {
|
|
66
|
+
timer = undefined;
|
|
67
|
+
if (!(target instanceof Element) || !target.isConnected) return;
|
|
68
|
+
firedUntil = Date.now() + AFTERMATH_MS;
|
|
69
|
+
window.addEventListener('click', swallowClick, true);
|
|
70
|
+
setTimeout(() => window.removeEventListener('click', swallowClick, true), AFTERMATH_MS);
|
|
71
|
+
dispatching = true;
|
|
72
|
+
try {
|
|
73
|
+
target.dispatchEvent(
|
|
74
|
+
new MouseEvent('contextmenu', {
|
|
75
|
+
bubbles: true,
|
|
76
|
+
cancelable: true,
|
|
77
|
+
composed: true,
|
|
78
|
+
clientX: startX,
|
|
79
|
+
clientY: startY,
|
|
80
|
+
button: 2,
|
|
81
|
+
}),
|
|
82
|
+
);
|
|
83
|
+
} finally {
|
|
84
|
+
dispatching = false;
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
const onDown = (event: PointerEvent) => {
|
|
89
|
+
cancel();
|
|
90
|
+
if (event.pointerType === 'mouse' || !event.isPrimary) return;
|
|
91
|
+
if (ignore && event.target instanceof Element && event.target.closest(ignore)) return;
|
|
92
|
+
pointerId = event.pointerId;
|
|
93
|
+
startX = event.clientX;
|
|
94
|
+
startY = event.clientY;
|
|
95
|
+
target = event.target;
|
|
96
|
+
timer = setTimeout(fire, delayMs);
|
|
97
|
+
};
|
|
98
|
+
const onMove = (event: PointerEvent) => {
|
|
99
|
+
if (timer === undefined || event.pointerId !== pointerId) return;
|
|
100
|
+
if (Math.hypot(event.clientX - startX, event.clientY - startY) > LONG_PRESS_SLOP_PX) cancel();
|
|
101
|
+
};
|
|
102
|
+
const onEnd = (event: PointerEvent) => {
|
|
103
|
+
if (event.pointerId === pointerId) cancel();
|
|
104
|
+
};
|
|
105
|
+
const onNativeMenu = (event: MouseEvent) => {
|
|
106
|
+
if (dispatching) return;
|
|
107
|
+
if (timer !== undefined) {
|
|
108
|
+
cancel(); // the browser answered the hold itself — that is the one menu
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (Date.now() <= firedUntil) {
|
|
112
|
+
event.preventDefault();
|
|
113
|
+
event.stopImmediatePropagation();
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
const previousCallout = element.style.getPropertyValue('-webkit-touch-callout');
|
|
118
|
+
element.style.setProperty('-webkit-touch-callout', 'none');
|
|
119
|
+
element.addEventListener('pointerdown', onDown);
|
|
120
|
+
element.addEventListener('pointermove', onMove);
|
|
121
|
+
element.addEventListener('pointerup', onEnd);
|
|
122
|
+
element.addEventListener('pointercancel', onEnd);
|
|
123
|
+
element.addEventListener('contextmenu', onNativeMenu, true);
|
|
124
|
+
return () => {
|
|
125
|
+
cancel();
|
|
126
|
+
window.removeEventListener('click', swallowClick, true);
|
|
127
|
+
element.removeEventListener('pointerdown', onDown);
|
|
128
|
+
element.removeEventListener('pointermove', onMove);
|
|
129
|
+
element.removeEventListener('pointerup', onEnd);
|
|
130
|
+
element.removeEventListener('pointercancel', onEnd);
|
|
131
|
+
element.removeEventListener('contextmenu', onNativeMenu, true);
|
|
132
|
+
if (previousCallout) element.style.setProperty('-webkit-touch-callout', previousCallout);
|
|
133
|
+
else element.style.removeProperty('-webkit-touch-callout');
|
|
134
|
+
};
|
|
135
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type RefObject, useEffect } from 'react';
|
|
2
|
+
import { bindLongPressContextMenu } from './longPressContextMenu.js';
|
|
3
|
+
|
|
4
|
+
/** {@link bindLongPressContextMenu} on a ref's element while `enabled`. */
|
|
5
|
+
export function useLongPressContextMenu(
|
|
6
|
+
ref: RefObject<HTMLElement | null>,
|
|
7
|
+
enabled = true,
|
|
8
|
+
ignore?: string,
|
|
9
|
+
): void {
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
const element = ref.current;
|
|
12
|
+
if (!element || !enabled) return;
|
|
13
|
+
return bindLongPressContextMenu(element, ignore ? { ignore } : {});
|
|
14
|
+
}, [ref, enabled, ignore]);
|
|
15
|
+
}
|