@tamagui/context-menu 2.0.0-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/dist/cjs/ContextMenu.cjs +182 -0
  2. package/dist/cjs/ContextMenu.js +145 -0
  3. package/dist/cjs/ContextMenu.js.map +6 -0
  4. package/dist/cjs/ContextMenu.native.js +191 -0
  5. package/dist/cjs/ContextMenu.native.js.map +1 -0
  6. package/dist/cjs/createNonNativeContextMenu.cjs +394 -0
  7. package/dist/cjs/createNonNativeContextMenu.js +318 -0
  8. package/dist/cjs/createNonNativeContextMenu.js.map +6 -0
  9. package/dist/cjs/createNonNativeContextMenu.native.js +420 -0
  10. package/dist/cjs/createNonNativeContextMenu.native.js.map +1 -0
  11. package/dist/cjs/index.cjs +39 -0
  12. package/dist/cjs/index.js +32 -0
  13. package/dist/cjs/index.js.map +6 -0
  14. package/dist/cjs/index.native.js +42 -0
  15. package/dist/cjs/index.native.js.map +1 -0
  16. package/dist/esm/ContextMenu.js +127 -0
  17. package/dist/esm/ContextMenu.js.map +6 -0
  18. package/dist/esm/ContextMenu.mjs +148 -0
  19. package/dist/esm/ContextMenu.mjs.map +1 -0
  20. package/dist/esm/ContextMenu.native.js +154 -0
  21. package/dist/esm/ContextMenu.native.js.map +1 -0
  22. package/dist/esm/createNonNativeContextMenu.js +307 -0
  23. package/dist/esm/createNonNativeContextMenu.js.map +6 -0
  24. package/dist/esm/createNonNativeContextMenu.mjs +359 -0
  25. package/dist/esm/createNonNativeContextMenu.mjs.map +1 -0
  26. package/dist/esm/createNonNativeContextMenu.native.js +382 -0
  27. package/dist/esm/createNonNativeContextMenu.native.js.map +1 -0
  28. package/dist/esm/index.js +18 -0
  29. package/dist/esm/index.js.map +6 -0
  30. package/dist/esm/index.mjs +16 -0
  31. package/dist/esm/index.mjs.map +1 -0
  32. package/dist/esm/index.native.js +16 -0
  33. package/dist/esm/index.native.js.map +1 -0
  34. package/dist/jsx/ContextMenu.js +127 -0
  35. package/dist/jsx/ContextMenu.js.map +6 -0
  36. package/dist/jsx/ContextMenu.mjs +148 -0
  37. package/dist/jsx/ContextMenu.mjs.map +1 -0
  38. package/dist/jsx/ContextMenu.native.js +191 -0
  39. package/dist/jsx/ContextMenu.native.js.map +1 -0
  40. package/dist/jsx/createNonNativeContextMenu.js +307 -0
  41. package/dist/jsx/createNonNativeContextMenu.js.map +6 -0
  42. package/dist/jsx/createNonNativeContextMenu.mjs +359 -0
  43. package/dist/jsx/createNonNativeContextMenu.mjs.map +1 -0
  44. package/dist/jsx/createNonNativeContextMenu.native.js +420 -0
  45. package/dist/jsx/createNonNativeContextMenu.native.js.map +1 -0
  46. package/dist/jsx/index.js +18 -0
  47. package/dist/jsx/index.js.map +6 -0
  48. package/dist/jsx/index.mjs +16 -0
  49. package/dist/jsx/index.mjs.map +1 -0
  50. package/dist/jsx/index.native.js +42 -0
  51. package/dist/jsx/index.native.js.map +1 -0
  52. package/package.json +56 -0
  53. package/src/ContextMenu.tsx +187 -0
  54. package/src/createNonNativeContextMenu.tsx +607 -0
  55. package/src/index.tsx +17 -0
  56. package/types/ContextMenu.d.ts +98 -0
  57. package/types/ContextMenu.d.ts.map +1 -0
  58. package/types/createNonNativeContextMenu.d.ts +123 -0
  59. package/types/createNonNativeContextMenu.d.ts.map +1 -0
  60. package/types/index.d.ts +96 -0
  61. package/types/index.d.ts.map +1 -0
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/createNonNativeContextMenu.tsx"],
4
+ "mappings": "AACA,SAAS,sBAAgD;AACzD,SAAS,4BAA4B;AACrC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EAEA;AAAA,OACK;AACP,OAAO,SAAS,aAAa;AA4GrB,SAqEA,UArEA,KAqEA,YArEA;AAvGD,MAAM,sBAAsB;AAoE5B,SAAS,2BAA2B,QAA6B;AACtE,QAAM,EAAE,KAAK,IAAI,eAAe,MAAM,GAMhC,oBAAoB,eAEpB,EAAE,UAAU,qBAAqB,kBAAkB,sBAAsB,IAC7E,oBAA6C,GAEzC,kBAAkB,CAAC,UAAyC;AAChE,UAAM,EAAE,OAAO,UAAU,cAAc,KAAK,QAAQ,IAAM,GAAG,KAAK,IAAI,OAChE,CAAC,MAAM,OAAO,IAAI,MAAM,SAAS,EAAK,GACtC,aAAa,MAAM,OAA0B,IAAI,GAEjD,mBAAmB,MAAM;AAAA,MAC7B,CAACA,UAAkB;AACjB,gBAAQA,KAAI,GACZ,eAAeA,KAAI;AAAA,MACrB;AAAA,MACA,CAAC,YAAY;AAAA,IACf;AAEA,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,WAAW,MAAM;AAAA,QACjB;AAAA,QACA,WAAW,MAAM;AAAA,QACjB;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QAEA;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,SAAS;AAAA,YAChB;AAAA,YACA;AAAA,YACA,cAAc;AAAA,YACd;AAAA,YACC,GAAG;AAAA,YAEH;AAAA;AAAA,QACH;AAAA;AAAA,IACF;AAAA,EAEJ;AAEA,kBAAgB,cAAc;AAM9B,QAAM,eAAe,sBAEf,qBAAqB,KAAK;AAAA,IAC9B,CAAC,OAAO,iBAAiB;AACvB,YAAM,EAAE,OAAO,OAAO,WAAW,IAAO,SAAS,UAAU,GAAG,aAAa,IAAI,OACzE,UAAU,sBAAsB,KAAK,GACrC,WAAW,MAAM,OAAc,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC,GAC7C,aAAa,MAAM;AAAA,QACvB,OAAO;AAAA,UACL,SAAS;AAAA,YACP,uBAAuB,MACrB,QACI,QAAQ,SAAS,EAAE,OAAO,GAAG,QAAQ,GAAG,GAAG,SAAS,QAAQ,CAAC,IAC7D,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,GAAG,SAAS,QAAQ;AAAA,YAClE,GAAI,CAAC,SAAS;AAAA,cACZ,SAAS,CAAC,MAAW,EAAE,SAAS,QAAQ,GAAG,SAAS,QAAQ,GAAG,GAAG,CAAC;AAAA,cACnE,iBAAiB,CAAC,MAChB,EAAE,SAAS,QAAQ,GAAG,SAAS,QAAQ,GAAG,GAAG,CAAC;AAAA,YAClD;AAAA,UACF;AAAA,QACF;AAAA,QACA,CAAC,SAAS,QAAQ,GAAG,SAAS,QAAQ,CAAC;AAAA,MACzC,GACM,oBAAoB,MAAM,OAAO,CAAC,GAClC,iBAAiB,MAAM;AAAA,QAC3B,MAAM,OAAO,aAAa,kBAAkB,OAAO;AAAA,QACnD,CAAC;AAAA,MACH,GACM,aAAa,CAAC,UAAiD;AACnE,QAAI,UAAU,iBAAiB,cAAc,iBAAiB,gBAC5D,SAAS,UAAU,EAAE,GAAG,MAAM,SAAS,GAAG,MAAM,QAAQ,IAExD,SAAS,UAAU;AAAA,UACjB,GAAI,MAAc,YAAY;AAAA,UAC9B,GAAI,MAAc,YAAY;AAAA,QAChC,GAEF,QAAQ,aAAa,EAAI;AAAA,MAC3B;AAEA,YAAM,UAAU,MAAM,gBAAgB,CAAC,cAAc,CAAC,GACtD,MAAM;AAAA,QACJ,MAAM,MAAM,YAAY,eAAe;AAAA,QACvC,CAAC,UAAU,cAAc;AAAA,MAC3B;AAEA,YAAM,OAAO,UAAU,OAAO;AAE9B,aACE,iCACE;AAAA,4BAAC,KAAK,QAAL,EAAY,OAAO,SAAS,qBAAqB,YAAwB;AAAA,QAC1E;AAAA,UAAC;AAAA;AAAA,YACC,KAAI;AAAA,YACJ,eAAe;AAAA,YACf,IAAI,QAAQ;AAAA,YACZ,cAAY,QAAQ,OAAO,SAAS;AAAA,YACpC,iBAAe,WAAW,KAAK;AAAA,YAC9B,GAAG;AAAA,YACJ,KAAK,YAAY,cAAc,QAAQ,UAAU;AAAA,YACjD,OAAO,QAAQ,EAAE,oBAAoB,QAAQ,GAAI,MAAiB,IAAI;AAAA,YACrE,GAAI,SAAS;AAAA,cACZ,eAAe,WACX,MAAM,gBACN,qBAAqB,MAAM,eAAe,CAAC,UAAe;AACxD,+BAAe,GACf,WAAW,KAAK,GAChB,MAAM,eAAe;AAAA,cACvB,CAAC;AAAA,cACL,eAAe,WACX,MAAM,gBACN,qBAAqB,MAAM,eAAe,CAAC,UAAe;AACxD,gBAAI,MAAM,gBAAgB,YAC1B,eAAe,GACf,kBAAkB,UAAU,OAAO;AAAA,kBACjC,MAAM,WAAW,KAAK;AAAA,kBACtB;AAAA,gBACF;AAAA,cACF,CAAC;AAAA,cACL,eAAe,WACX,MAAM,gBACN,qBAAqB,MAAM,eAAe,CAAC,UAAe;AACxD,gBAAI,MAAM,gBAAgB,WAC1B,eAAe;AAAA,cACjB,CAAC;AAAA,cACL,iBAAiB,WACb,MAAM,kBACN,qBAAqB,MAAM,iBAAiB,CAAC,UAAe;AAC1D,gBAAI,MAAM,gBAAgB,WAC1B,eAAe;AAAA,cACjB,CAAC;AAAA,cACL,aAAa,WACT,MAAM,cACN,qBAAqB,MAAM,aAAa,CAAC,UAAe;AACtD,gBAAI,MAAM,gBAAgB,WAC1B,eAAe;AAAA,cACjB,CAAC;AAAA,YACP;AAAA,YACC,GAAI,CAAC,SAAS;AAAA,cACb,aAAa,WACT,MAAM,cACN,qBAAqB,MAAM,aAAa,CAAC,UAAe;AACtD,+BAAe,GACf,WAAW,KAAK,GAChB,MAAM,eAAe;AAAA,cACvB,CAAC;AAAA,YACP;AAAA,YAEC;AAAA;AAAA,QACH;AAAA,SACF;AAAA,IAEJ;AAAA,EACF;AAEA,qBAAmB,cAAc;AAMjC,QAAM,cAAc,qBAEd,oBAAoB,CAAC,UAA+C;AACxE,UAAM,EAAE,OAAO,UAAU,GAAG,YAAY,IAAI,OACtC,UAAU,YAAY,sBAAsB,KAAK,IAAI,MACrD,UAAU,YACd,oBAAC,uBAAqB,GAAI,SAAkB,UAAS,IAErD;AAEF,WACE,oBAAC,KAAK,QAAL,EAAY,OAAO,SAAS,qBAAsB,GAAG,aACnD,mBACH;AAAA,EAEJ;AAEA,oBAAkB,cAAc;AAMhC,QAAM,eAAe,sBAEf,qBAAqB,MAAM,WAG/B,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,OAAO,GAAG,aAAa,IAAI,OAC7B,UAAU,sBAAsB,KAAK,GACrC,0BAA0B,MAAM,OAAO,EAAK;AAElD,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,IAAI,QAAQ;AAAA,QACZ,mBAAiB,QAAQ;AAAA,QACzB,OAAO,SAAS;AAAA,QACf,GAAG;AAAA,QACJ,KAAK;AAAA,QACL,kBAAkB,qBAAqB,MAAM,kBAAkB,CAAC,UAAU;AACxE,UAAK,wBAAwB,WAAS,QAAQ,WAAW,SAAS,MAAM,GACxE,wBAAwB,UAAU,IAClC,MAAM,eAAe;AAAA,QACvB,CAAC;AAAA,QACD,mBAAmB,qBAAqB,MAAM,mBAAmB,CAAC,UAAU;AAC1E,gBAAM,gBAAgB,MAAM,OAAO,eAC7B,gBACJ,cAAc,WAAW,KAAK,cAAc,YAAY,IACpD,eAAe,cAAc,WAAW,KAAK;AACnD,WAAI,CAAC,QAAQ,SAAS,kBAAc,wBAAwB,UAAU;AAAA,QACxE,CAAC;AAAA;AAAA,IACH;AAAA,EAEJ,CAAC;AAED,qBAAmB,cAAc;AAMjC,QAAM,YAAY,mBAEZ,kBAAkB,MAAM,WAG5B,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,OAAO,GAAG,UAAU,IAAI;AAChC,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,eAAe;AAAA,QACf,OAAO,SAAS;AAAA,QACf,GAAG;AAAA,QACJ,KAAK;AAAA;AAAA,IACP;AAAA,EAEJ,CAAC;AAED,kBAAgB,cAAc;AAM9B,QAAM,qBAAqB,2BAErB,0BAA0B,MAAM,WAGpC,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,OAAO,GAAG,kBAAkB,IAAI;AACxC,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,eAAe;AAAA,QACf,OAAO,SAAS;AAAA,QACf,GAAG;AAAA,QACJ,KAAK;AAAA;AAAA,IACP;AAAA,EAEJ,CAAC;AAED,0BAAwB,cAAc;AAMtC,QAAM,mBAAmB,yBAEnB,wBAAwB,MAAM,WAGlC,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,OAAO,GAAG,gBAAgB,IAAI;AACtC,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,OAAO,SAAS;AAAA,QACf,GAAG;AAAA,QACJ,KAAK;AAAA;AAAA,IACP;AAAA,EAEJ,CAAC;AAED,wBAAsB,cAAc;AAMpC,QAAM,kBAAkB,wBAElB,uBAAuB,MAAM,WAGjC,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,OAAO,GAAG,eAAe,IAAI;AACrC,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,eAAe;AAAA,QACf,OAAO,SAAS;AAAA,QACf,GAAG;AAAA,QACJ,KAAK;AAAA;AAAA,IACP;AAAA,EAEJ,CAAC;AAED,uBAAqB,cAAc;AAMnC,QAAM,iBAAiB,4BAEjB,2BAA2B,KAAK,cAAc,UAElD,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,OAAO,GAAG,mBAAmB,IAAI;AACzC,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,eAAe;AAAA,QACf,OAAO,SAAS;AAAA,QACf,GAAG;AAAA,QACJ,KAAK;AAAA;AAAA,IACP;AAAA,EAEJ,CAAC;AAED,2BAAyB,cAAc;AAMvC,QAAM,WAAW,kBAEX,iBAAiB,CAAC,UAA4C;AAClE,UAAM,EAAE,OAAO,UAAU,cAAc,MAAM,UAAU,aAAa,GAAG,KAAK,IAAI,OAC1E,CAAC,MAAM,OAAO,IAAI,qBAAqB;AAAA,MAC3C,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ,CAAC;AAED,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,OAAO,SAAS;AAAA,QAChB;AAAA,QACA,cAAc;AAAA,QACb,GAAG;AAAA,QAEH;AAAA;AAAA,IACH;AAAA,EAEJ;AAEA,iBAAe,cAAc;AAM7B,QAAM,mBAAmB,yBAEnB,wBAAwB,KAAK;AAAA,IACjC,CAAC,OAAO,iBAAiB;AACvB,YAAM,EAAE,OAAO,GAAG,gBAAgB,IAAI;AACtC,aACE;AAAA,QAAC,KAAK;AAAA,QAAL;AAAA,UACC,eAAe;AAAA,UACf,OAAO,SAAS;AAAA,UACf,GAAG;AAAA,UACJ,KAAK;AAAA;AAAA,MACP;AAAA,IAEJ;AAAA,EACF;AAEA,wBAAsB,cAAc;AAMpC,QAAM,mBAAmB,yBAEnB,wBAAwB,MAAM,WAGlC,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,OAAO,GAAG,gBAAgB,IAAI;AACtC,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,OAAO,SAAS;AAAA,QACf,GAAG;AAAA,QACJ,KAAK;AAAA,QACL,OACE,QACI;AAAA,UACE,GAAI,MAAM;AAAA,UAER,mDACE;AAAA,UACF,kDACE;AAAA,UACF,mDACE;AAAA,UACF,wCACE;AAAA,UACF,yCACE;AAAA,QAEN,IACA;AAAA;AAAA,IAER;AAAA,EAEJ,CAAC;AAED,wBAAsB,cAAc;AAMpC,QAAM,aAAa,oBAEb,mBAAmB,MAAM,WAG7B,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,OAAO,GAAG,WAAW,IAAI;AACjC,WACE;AAAA,MAAC,KAAK;AAAA,MAAL;AAAA,QACC,eAAe;AAAA,QACf,OAAO,SAAS;AAAA,QACf,GAAG;AAAA,QACJ,KAAK;AAAA;AAAA,IACP;AAAA,EAEJ,CAAC;AAED,mBAAiB,cAAc;AAM/B,QAAM,mBAAmB,KAAK,OACxB,mBAAmB,KAAK,OACxB,uBAAuB,KAAK,WAC5B,uBAAuB,KAAK,WAC5B,0BAA0B,KAAK,cAC/B,uBAAuB,KAAK,WAC5B,sBAAsB,KAAK;AAKjC,SAAO,qBAAqB,iBAAiB;AAAA,IAC3C,MAAM;AAAA,IACN,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,OAAO;AAAA,IACP,OAAO;AAAA,IACP,MAAM;AAAA,IACN,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,eAAe;AAAA,IACf,WAAW;AAAA,IACX,OAAO;AAAA,IACP,KAAK;AAAA,IACL,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,cAAc;AAAA,IACd,UAAU;AAAA,IACV,WAAW;AAAA,IACX,SAzByB,MAAM;AAAA,EA0BjC,CAAC;AACH;",
5
+ "names": ["open"]
6
+ }
@@ -0,0 +1,359 @@
1
+ import { createBaseMenu } from "@tamagui/create-menu";
2
+ import { useControllableState } from "@tamagui/use-controllable-state";
3
+ import { composeEventHandlers, composeRefs, createStyledContext, isAndroid, isWeb, Slot, View, withStaticProperties } from "@tamagui/web";
4
+ import React, { useId } from "react";
5
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
6
+ const CONTEXTMENU_CONTEXT = "ContextMenuContext";
7
+ function createNonNativeContextMenu(params) {
8
+ const {
9
+ Menu
10
+ } = createBaseMenu(params),
11
+ CONTEXT_MENU_NAME = "ContextMenu",
12
+ {
13
+ Provider: ContextMenuProvider,
14
+ useStyledContext: useContextMenuContext
15
+ } = createStyledContext(),
16
+ ContextMenuComp = props => {
17
+ const {
18
+ scope,
19
+ children,
20
+ onOpenChange,
21
+ dir,
22
+ modal = !0,
23
+ ...rest
24
+ } = props,
25
+ [open, setOpen] = React.useState(!1),
26
+ triggerRef = React.useRef(null),
27
+ handleOpenChange = React.useCallback(open2 => {
28
+ setOpen(open2), onOpenChange?.(open2);
29
+ }, [onOpenChange]);
30
+ return /* @__PURE__ */jsx(ContextMenuProvider, {
31
+ scope,
32
+ triggerId: useId(),
33
+ triggerRef,
34
+ contentId: useId(),
35
+ open,
36
+ onOpenChange: handleOpenChange,
37
+ modal,
38
+ children: /* @__PURE__ */jsx(Menu, {
39
+ scope: scope || CONTEXTMENU_CONTEXT,
40
+ dir,
41
+ open,
42
+ onOpenChange: handleOpenChange,
43
+ modal,
44
+ ...rest,
45
+ children
46
+ })
47
+ });
48
+ };
49
+ ContextMenuComp.displayName = CONTEXT_MENU_NAME;
50
+ const TRIGGER_NAME = "ContextMenuTrigger",
51
+ ContextMenuTrigger = View.styleable((props, forwardedRef) => {
52
+ const {
53
+ scope,
54
+ style,
55
+ disabled = !1,
56
+ asChild,
57
+ children,
58
+ ...triggerProps
59
+ } = props,
60
+ context = useContextMenuContext(scope),
61
+ pointRef = React.useRef({
62
+ x: 0,
63
+ y: 0
64
+ }),
65
+ virtualRef = React.useMemo(() => ({
66
+ current: {
67
+ getBoundingClientRect: () => isWeb ? DOMRect.fromRect({
68
+ width: 0,
69
+ height: 0,
70
+ ...pointRef.current
71
+ }) : {
72
+ width: 0,
73
+ height: 0,
74
+ top: 0,
75
+ left: 0,
76
+ ...pointRef.current
77
+ },
78
+ ...(!isWeb && {
79
+ measure: c => c(pointRef.current.x, pointRef.current.y, 0, 0),
80
+ measureInWindow: c => c(pointRef.current.x, pointRef.current.y, 0, 0)
81
+ })
82
+ }
83
+ }), [pointRef.current.x, pointRef.current.y]),
84
+ longPressTimerRef = React.useRef(0),
85
+ clearLongPress = React.useCallback(() => window.clearTimeout(longPressTimerRef.current), []),
86
+ handleOpen = event => {
87
+ isWeb && (event instanceof MouseEvent || event instanceof PointerEvent) ? pointRef.current = {
88
+ x: event.clientX,
89
+ y: event.clientY
90
+ } : pointRef.current = {
91
+ x: event.nativeEvent.pageX,
92
+ y: event.nativeEvent.pageY
93
+ }, context.onOpenChange(!0);
94
+ };
95
+ React.useEffect(() => clearLongPress, [clearLongPress]), React.useEffect(() => void (disabled && clearLongPress()), [disabled, clearLongPress]);
96
+ const Comp = asChild ? Slot : View;
97
+ return /* @__PURE__ */jsxs(Fragment, {
98
+ children: [/* @__PURE__ */jsx(Menu.Anchor, {
99
+ scope: scope || CONTEXTMENU_CONTEXT,
100
+ virtualRef
101
+ }), /* @__PURE__ */jsx(Comp, {
102
+ tag: "span",
103
+ componentName: TRIGGER_NAME,
104
+ id: context.triggerId,
105
+ "data-state": context.open ? "open" : "closed",
106
+ "data-disabled": disabled ? "" : void 0,
107
+ ...triggerProps,
108
+ ref: composeRefs(forwardedRef, context.triggerRef),
109
+ style: isWeb ? {
110
+ WebkitTouchCallout: "none",
111
+ ...style
112
+ } : null,
113
+ ...(isWeb && {
114
+ onContextMenu: disabled ? props.onContextMenu : composeEventHandlers(props.onContextMenu, event => {
115
+ clearLongPress(), handleOpen(event), event.preventDefault();
116
+ }),
117
+ onPointerDown: disabled ? props.onPointerDown : composeEventHandlers(props.onPointerDown, event => {
118
+ event.pointerType !== "mouse" && (clearLongPress(), longPressTimerRef.current = window.setTimeout(() => handleOpen(event), 700));
119
+ }),
120
+ onPointerMove: disabled ? props.onPointerMove : composeEventHandlers(props.onPointerMove, event => {
121
+ event.pointerType !== "mouse" && clearLongPress();
122
+ }),
123
+ onPointerCancel: disabled ? props.onPointerCancel : composeEventHandlers(props.onPointerCancel, event => {
124
+ event.pointerType !== "mouse" && clearLongPress();
125
+ }),
126
+ onPointerUp: disabled ? props.onPointerUp : composeEventHandlers(props.onPointerUp, event => {
127
+ event.pointerType !== "mouse" && clearLongPress();
128
+ })
129
+ }),
130
+ ...(!isWeb && {
131
+ onLongPress: disabled ? props.onLongPress : composeEventHandlers(props.onLongPress, event => {
132
+ clearLongPress(), handleOpen(event), event.preventDefault();
133
+ })
134
+ }),
135
+ children
136
+ })]
137
+ });
138
+ });
139
+ ContextMenuTrigger.displayName = TRIGGER_NAME;
140
+ const PORTAL_NAME = "ContextMenuPortal",
141
+ ContextMenuPortal = props => {
142
+ const {
143
+ scope,
144
+ children,
145
+ ...portalProps
146
+ } = props,
147
+ context = isAndroid ? useContextMenuContext(scope) : null,
148
+ content = isAndroid ? /* @__PURE__ */jsx(ContextMenuProvider, {
149
+ ...context,
150
+ children
151
+ }) : children;
152
+ return /* @__PURE__ */jsx(Menu.Portal, {
153
+ scope: scope || CONTEXTMENU_CONTEXT,
154
+ ...portalProps,
155
+ children: content
156
+ });
157
+ };
158
+ ContextMenuPortal.displayName = PORTAL_NAME;
159
+ const CONTENT_NAME = "ContextMenuContent",
160
+ ContextMenuContent = React.forwardRef((props, forwardedRef) => {
161
+ const {
162
+ scope,
163
+ ...contentProps
164
+ } = props,
165
+ context = useContextMenuContext(scope),
166
+ hasInteractedOutsideRef = React.useRef(!1);
167
+ return /* @__PURE__ */jsx(Menu.Content, {
168
+ id: context.contentId,
169
+ "aria-labelledby": context.triggerId,
170
+ scope: scope || CONTEXTMENU_CONTEXT,
171
+ ...contentProps,
172
+ ref: forwardedRef,
173
+ onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, event => {
174
+ hasInteractedOutsideRef.current || context.triggerRef.current?.focus(), hasInteractedOutsideRef.current = !1, event.preventDefault();
175
+ }),
176
+ onInteractOutside: composeEventHandlers(props.onInteractOutside, event => {
177
+ const originalEvent = event.detail.originalEvent,
178
+ ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === !0,
179
+ isRightClick = originalEvent.button === 2 || ctrlLeftClick;
180
+ (!context.modal || isRightClick) && (hasInteractedOutsideRef.current = !0);
181
+ })
182
+ });
183
+ });
184
+ ContextMenuContent.displayName = CONTENT_NAME;
185
+ const ITEM_NAME = "ContextMenuItem",
186
+ ContextMenuItem = React.forwardRef((props, forwardedRef) => {
187
+ const {
188
+ scope,
189
+ ...itemProps
190
+ } = props;
191
+ return /* @__PURE__ */jsx(Menu.Item, {
192
+ componentName: ITEM_NAME,
193
+ scope: scope || CONTEXTMENU_CONTEXT,
194
+ ...itemProps,
195
+ ref: forwardedRef
196
+ });
197
+ });
198
+ ContextMenuItem.displayName = ITEM_NAME;
199
+ const CHECKBOX_ITEM_NAME = "ContextMenuCheckboxItem",
200
+ ContextMenuCheckboxItem = React.forwardRef((props, forwardedRef) => {
201
+ const {
202
+ scope,
203
+ ...checkboxItemProps
204
+ } = props;
205
+ return /* @__PURE__ */jsx(Menu.CheckboxItem, {
206
+ componentName: CHECKBOX_ITEM_NAME,
207
+ scope: scope || CONTEXTMENU_CONTEXT,
208
+ ...checkboxItemProps,
209
+ ref: forwardedRef
210
+ });
211
+ });
212
+ ContextMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;
213
+ const RADIO_GROUP_NAME = "ContextMenuRadioGroup",
214
+ ContextMenuRadioGroup = React.forwardRef((props, forwardedRef) => {
215
+ const {
216
+ scope,
217
+ ...radioGroupProps
218
+ } = props;
219
+ return /* @__PURE__ */jsx(Menu.RadioGroup, {
220
+ scope: scope || CONTEXTMENU_CONTEXT,
221
+ ...radioGroupProps,
222
+ ref: forwardedRef
223
+ });
224
+ });
225
+ ContextMenuRadioGroup.displayName = RADIO_GROUP_NAME;
226
+ const RADIO_ITEM_NAME = "ContextMenuRadioItem",
227
+ ContextMenuRadioItem = React.forwardRef((props, forwardedRef) => {
228
+ const {
229
+ scope,
230
+ ...radioItemProps
231
+ } = props;
232
+ return /* @__PURE__ */jsx(Menu.RadioItem, {
233
+ componentName: RADIO_ITEM_NAME,
234
+ scope: scope || CONTEXTMENU_CONTEXT,
235
+ ...radioItemProps,
236
+ ref: forwardedRef
237
+ });
238
+ });
239
+ ContextMenuRadioItem.displayName = RADIO_ITEM_NAME;
240
+ const INDICATOR_NAME = "ContextMenuItemIndicator",
241
+ ContextMenuItemIndicator = Menu.ItemIndicator.styleable((props, forwardedRef) => {
242
+ const {
243
+ scope,
244
+ ...itemIndicatorProps
245
+ } = props;
246
+ return /* @__PURE__ */jsx(Menu.ItemIndicator, {
247
+ componentName: INDICATOR_NAME,
248
+ scope: scope || CONTEXTMENU_CONTEXT,
249
+ ...itemIndicatorProps,
250
+ ref: forwardedRef
251
+ });
252
+ });
253
+ ContextMenuItemIndicator.displayName = INDICATOR_NAME;
254
+ const SUB_NAME = "ContextMenuSub",
255
+ ContextMenuSub = props => {
256
+ const {
257
+ scope,
258
+ children,
259
+ onOpenChange,
260
+ open: openProp,
261
+ defaultOpen,
262
+ ...rest
263
+ } = props,
264
+ [open, setOpen] = useControllableState({
265
+ prop: openProp,
266
+ defaultProp: defaultOpen,
267
+ onChange: onOpenChange
268
+ });
269
+ return /* @__PURE__ */jsx(Menu.Sub, {
270
+ scope: scope || CONTEXTMENU_CONTEXT,
271
+ open,
272
+ onOpenChange: setOpen,
273
+ ...rest,
274
+ children
275
+ });
276
+ };
277
+ ContextMenuSub.displayName = SUB_NAME;
278
+ const SUB_TRIGGER_NAME = "ContextMenuSubTrigger",
279
+ ContextMenuSubTrigger = View.styleable((props, forwardedRef) => {
280
+ const {
281
+ scope,
282
+ ...subTriggerProps
283
+ } = props;
284
+ return /* @__PURE__ */jsx(Menu.SubTrigger, {
285
+ componentName: SUB_TRIGGER_NAME,
286
+ scope: scope || CONTEXTMENU_CONTEXT,
287
+ ...subTriggerProps,
288
+ ref: forwardedRef
289
+ });
290
+ });
291
+ ContextMenuSubTrigger.displayName = SUB_TRIGGER_NAME;
292
+ const SUB_CONTENT_NAME = "ContextMenuSubContent",
293
+ ContextMenuSubContent = React.forwardRef((props, forwardedRef) => {
294
+ const {
295
+ scope,
296
+ ...subContentProps
297
+ } = props;
298
+ return /* @__PURE__ */jsx(Menu.SubContent, {
299
+ scope: scope || CONTEXTMENU_CONTEXT,
300
+ ...subContentProps,
301
+ ref: forwardedRef,
302
+ style: isWeb ? {
303
+ ...props.style,
304
+ "--tamagui-context-menu-content-transform-origin": "var(--tamagui-popper-transform-origin)",
305
+ "--tamagui-context-menu-content-available-width": "var(--tamagui-popper-available-width)",
306
+ "--tamagui-context-menu-content-available-height": "var(--tamagui-popper-available-height)",
307
+ "--tamagui-context-menu-trigger-width": "var(--tamagui-popper-anchor-width)",
308
+ "--tamagui-context-menu-trigger-height": "var(--tamagui-popper-anchor-height)"
309
+ } : null
310
+ });
311
+ });
312
+ ContextMenuSubContent.displayName = SUB_CONTENT_NAME;
313
+ const ARROW_NAME = "ContextMenuArrow",
314
+ ContextMenuArrow = React.forwardRef((props, forwardedRef) => {
315
+ const {
316
+ scope,
317
+ ...arrowProps
318
+ } = props;
319
+ return /* @__PURE__ */jsx(Menu.Arrow, {
320
+ componentName: ARROW_NAME,
321
+ scope: scope || CONTEXTMENU_CONTEXT,
322
+ ...arrowProps,
323
+ ref: forwardedRef
324
+ });
325
+ });
326
+ ContextMenuArrow.displayName = ARROW_NAME;
327
+ const ContextMenuGroup = Menu.Group,
328
+ ContextMenuLabel = Menu.Label,
329
+ ContextMenuSeparator = Menu.Separator,
330
+ ContextMenuItemTitle = Menu.ItemTitle,
331
+ ContextMenuItemSubTitle = Menu.ItemSubtitle,
332
+ ContextMenuItemImage = Menu.ItemImage,
333
+ ContextMenuItemIcon = Menu.ItemIcon;
334
+ return withStaticProperties(ContextMenuComp, {
335
+ Root: ContextMenuComp,
336
+ Trigger: ContextMenuTrigger,
337
+ Portal: ContextMenuPortal,
338
+ Content: ContextMenuContent,
339
+ Group: ContextMenuGroup,
340
+ Label: ContextMenuLabel,
341
+ Item: ContextMenuItem,
342
+ CheckboxItem: ContextMenuCheckboxItem,
343
+ RadioGroup: ContextMenuRadioGroup,
344
+ RadioItem: ContextMenuRadioItem,
345
+ ItemIndicator: ContextMenuItemIndicator,
346
+ Separator: ContextMenuSeparator,
347
+ Arrow: ContextMenuArrow,
348
+ Sub: ContextMenuSub,
349
+ SubTrigger: ContextMenuSubTrigger,
350
+ SubContent: ContextMenuSubContent,
351
+ ItemTitle: ContextMenuItemTitle,
352
+ ItemSubtitle: ContextMenuItemSubTitle,
353
+ ItemIcon: ContextMenuItemIcon,
354
+ ItemImage: ContextMenuItemImage,
355
+ Preview: () => null
356
+ });
357
+ }
358
+ export { CONTEXTMENU_CONTEXT, createNonNativeContextMenu };
359
+ //# sourceMappingURL=createNonNativeContextMenu.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createBaseMenu","useControllableState","composeEventHandlers","composeRefs","createStyledContext","isAndroid","isWeb","Slot","View","withStaticProperties","React","useId","Fragment","jsx","jsxs","CONTEXTMENU_CONTEXT","createNonNativeContextMenu","params","Menu","CONTEXT_MENU_NAME","Provider","ContextMenuProvider","useStyledContext","useContextMenuContext","ContextMenuComp","props","scope","children","onOpenChange","dir","modal","rest","open","setOpen","useState","triggerRef","useRef","handleOpenChange","useCallback","open2","triggerId","contentId","displayName","TRIGGER_NAME","ContextMenuTrigger","styleable","forwardedRef","style","disabled","asChild","triggerProps","context","pointRef","x","y","virtualRef","useMemo","current","getBoundingClientRect","DOMRect","fromRect","width","height","top","left","measure","c","measureInWindow","longPressTimerRef","clearLongPress","window","clearTimeout","handleOpen","event","MouseEvent","PointerEvent","clientX","clientY","nativeEvent","pageX","pageY","useEffect","Comp","Anchor","tag","componentName","id","ref","WebkitTouchCallout","onContextMenu","preventDefault","onPointerDown","pointerType","setTimeout","onPointerMove","onPointerCancel","onPointerUp","onLongPress","PORTAL_NAME","ContextMenuPortal","portalProps","content","Portal","CONTENT_NAME","ContextMenuContent","forwardRef","contentProps","hasInteractedOutsideRef","Content","onCloseAutoFocus","focus","onInteractOutside","originalEvent","detail","ctrlLeftClick","button","ctrlKey","isRightClick","ITEM_NAME","ContextMenuItem","itemProps","Item","CHECKBOX_ITEM_NAME","ContextMenuCheckboxItem","checkboxItemProps","CheckboxItem","RADIO_GROUP_NAME","ContextMenuRadioGroup","radioGroupProps","RadioGroup","RADIO_ITEM_NAME","ContextMenuRadioItem","radioItemProps","RadioItem","INDICATOR_NAME","ContextMenuItemIndicator","ItemIndicator","itemIndicatorProps","SUB_NAME","ContextMenuSub","openProp","defaultOpen","prop","defaultProp","onChange","Sub","SUB_TRIGGER_NAME","ContextMenuSubTrigger","subTriggerProps","SubTrigger","SUB_CONTENT_NAME","ContextMenuSubContent","subContentProps","SubContent","ARROW_NAME","ContextMenuArrow","arrowProps","Arrow","ContextMenuGroup","Group","ContextMenuLabel","Label","ContextMenuSeparator","Separator","ContextMenuItemTitle","ItemTitle","ContextMenuItemSubTitle","ItemSubtitle","ContextMenuItemImage","ItemImage","ContextMenuItemIcon","ItemIcon","Root","Trigger","Preview"],"sources":["../../src/createNonNativeContextMenu.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}