@hanzogui/context-menu 7.0.0 → 7.3.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.
Files changed (45) hide show
  1. package/dist/cjs/ContextMenu.cjs +185 -0
  2. package/dist/cjs/ContextMenu.native.js +193 -0
  3. package/dist/cjs/ContextMenu.native.js.map +1 -0
  4. package/dist/cjs/createNonNativeContextMenu.cjs +443 -0
  5. package/dist/cjs/createNonNativeContextMenu.native.js +470 -0
  6. package/dist/cjs/createNonNativeContextMenu.native.js.map +1 -0
  7. package/dist/cjs/index.cjs +41 -0
  8. package/dist/cjs/index.native.js +44 -0
  9. package/dist/cjs/index.native.js.map +1 -0
  10. package/dist/esm/ContextMenu.mjs +149 -0
  11. package/dist/esm/ContextMenu.mjs.map +1 -0
  12. package/dist/esm/ContextMenu.native.js +154 -0
  13. package/dist/esm/ContextMenu.native.js.map +1 -0
  14. package/dist/esm/createNonNativeContextMenu.mjs +406 -0
  15. package/dist/esm/createNonNativeContextMenu.mjs.map +1 -0
  16. package/dist/esm/createNonNativeContextMenu.native.js +430 -0
  17. package/dist/esm/createNonNativeContextMenu.native.js.map +1 -0
  18. package/dist/esm/index.js +15 -0
  19. package/dist/esm/index.js.map +1 -0
  20. package/dist/esm/index.mjs +15 -0
  21. package/dist/esm/index.mjs.map +1 -0
  22. package/dist/esm/index.native.js +15 -0
  23. package/dist/esm/index.native.js.map +1 -0
  24. package/dist/jsx/ContextMenu.mjs +149 -0
  25. package/dist/jsx/ContextMenu.mjs.map +1 -0
  26. package/dist/jsx/ContextMenu.native.js +193 -0
  27. package/dist/jsx/ContextMenu.native.js.map +1 -0
  28. package/dist/jsx/createNonNativeContextMenu.mjs +406 -0
  29. package/dist/jsx/createNonNativeContextMenu.mjs.map +1 -0
  30. package/dist/jsx/createNonNativeContextMenu.native.js +470 -0
  31. package/dist/jsx/createNonNativeContextMenu.native.js.map +1 -0
  32. package/dist/jsx/index.js +15 -0
  33. package/dist/jsx/index.js.map +1 -0
  34. package/dist/jsx/index.mjs +15 -0
  35. package/dist/jsx/index.mjs.map +1 -0
  36. package/dist/jsx/index.native.js +44 -0
  37. package/dist/jsx/index.native.js.map +1 -0
  38. package/package.json +15 -13
  39. package/src/createNonNativeContextMenu.tsx +17 -17
  40. package/types/ContextMenu.d.ts +26 -26
  41. package/types/ContextMenu.d.ts.map +1 -0
  42. package/types/createNonNativeContextMenu.d.ts +41 -41
  43. package/types/createNonNativeContextMenu.d.ts.map +1 -0
  44. package/types/index.d.ts +26 -26
  45. package/types/index.d.ts.map +1 -0
@@ -0,0 +1,470 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var createNonNativeContextMenu_exports = {};
37
+ __export(createNonNativeContextMenu_exports, {
38
+ CONTEXTMENU_CONTEXT: () => CONTEXTMENU_CONTEXT,
39
+ createNonNativeContextMenu: () => createNonNativeContextMenu
40
+ });
41
+ module.exports = __toCommonJS(createNonNativeContextMenu_exports);
42
+ var import_jsx_runtime = require("react/jsx-runtime");
43
+ var import_create_menu = require("@hanzogui/create-menu");
44
+ var import_use_controllable_state = require("@hanzogui/use-controllable-state");
45
+ var import_web = require("@hanzogui/web");
46
+ var import_react = __toESM(require("react"), 1);
47
+ function _instanceof(left, right) {
48
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
49
+ return !!right[Symbol.hasInstance](left);
50
+ } else {
51
+ return left instanceof right;
52
+ }
53
+ }
54
+ var CONTEXTMENU_CONTEXT = "ContextMenuContext";
55
+ function createNonNativeContextMenu(params) {
56
+ var {
57
+ Menu
58
+ } = (0, import_create_menu.createBaseMenu)(params);
59
+ var CONTEXT_MENU_NAME = "ContextMenu";
60
+ var {
61
+ Provider: ContextMenuProvider,
62
+ useStyledContext: useContextMenuContext
63
+ } = (0, import_web.createStyledContext)();
64
+ var ContextMenuComp = function (props) {
65
+ var {
66
+ scope,
67
+ children,
68
+ onOpenChange,
69
+ dir,
70
+ modal = true,
71
+ ...rest
72
+ } = props;
73
+ var [open, setOpen] = import_react.default.useState(false);
74
+ var triggerRef = import_react.default.useRef(null);
75
+ var handleOpenChange = import_react.default.useCallback(function (open2, event) {
76
+ onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(open2, event);
77
+ if (event === null || event === void 0 ? void 0 : event.defaultPrevented) return;
78
+ setOpen(open2);
79
+ }, [onOpenChange]);
80
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ContextMenuProvider, {
81
+ scope,
82
+ triggerId: (0, import_react.useId)(),
83
+ triggerRef,
84
+ contentId: (0, import_react.useId)(),
85
+ open,
86
+ onOpenChange: handleOpenChange,
87
+ modal,
88
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu, {
89
+ scope: scope || CONTEXTMENU_CONTEXT,
90
+ dir,
91
+ open,
92
+ onOpenChange: handleOpenChange,
93
+ modal,
94
+ ...rest,
95
+ children
96
+ })
97
+ });
98
+ };
99
+ ContextMenuComp.displayName = CONTEXT_MENU_NAME;
100
+ var TRIGGER_NAME = "ContextMenuTrigger";
101
+ var ContextMenuTrigger = import_web.View.styleable(function (props, forwardedRef) {
102
+ var {
103
+ scope,
104
+ style,
105
+ disabled = false,
106
+ asChild,
107
+ children,
108
+ ...triggerProps
109
+ } = props;
110
+ var context = useContextMenuContext(scope);
111
+ var pointRef = import_react.default.useRef({
112
+ x: 0,
113
+ y: 0
114
+ });
115
+ var virtualRef = import_react.default.useMemo(function () {
116
+ return {
117
+ current: {
118
+ getBoundingClientRect: function () {
119
+ if (import_web.isWeb) {
120
+ var scrollX = window.scrollX || document.documentElement.scrollLeft;
121
+ var scrollY = window.scrollY || document.documentElement.scrollTop;
122
+ return DOMRect.fromRect({
123
+ width: 0,
124
+ height: 0,
125
+ x: pointRef.current.x - scrollX,
126
+ y: pointRef.current.y - scrollY
127
+ });
128
+ }
129
+ return {
130
+ width: 0,
131
+ height: 0,
132
+ top: 0,
133
+ left: 0,
134
+ ...pointRef.current
135
+ };
136
+ },
137
+ ...(!import_web.isWeb && {
138
+ measure: function (c) {
139
+ return c(pointRef.current.x, pointRef.current.y, 0, 0);
140
+ },
141
+ measureInWindow: function (c) {
142
+ return c(pointRef.current.x, pointRef.current.y, 0, 0);
143
+ }
144
+ })
145
+ }
146
+ };
147
+ }, [pointRef.current.x, pointRef.current.y]);
148
+ var longPressTimerRef = import_react.default.useRef(0);
149
+ var clearLongPress = import_react.default.useCallback(function () {
150
+ return window.clearTimeout(longPressTimerRef.current);
151
+ }, []);
152
+ var createOpenChangeEvent = function () {
153
+ var defaultPrevented = false;
154
+ return {
155
+ get defaultPrevented() {
156
+ return defaultPrevented;
157
+ },
158
+ preventDefault() {
159
+ defaultPrevented = true;
160
+ }
161
+ };
162
+ };
163
+ var handleOpen = function (event) {
164
+ if (import_web.isWeb && (_instanceof(event, MouseEvent) || _instanceof(event, PointerEvent))) {
165
+ pointRef.current = {
166
+ x: event.clientX,
167
+ y: event.clientY
168
+ };
169
+ } else {
170
+ pointRef.current = {
171
+ x: event.nativeEvent.pageX,
172
+ y: event.nativeEvent.pageY
173
+ };
174
+ }
175
+ var openChangeEvent = createOpenChangeEvent();
176
+ context.onOpenChange(true, openChangeEvent);
177
+ return openChangeEvent;
178
+ };
179
+ import_react.default.useEffect(function () {
180
+ return clearLongPress;
181
+ }, [clearLongPress]);
182
+ import_react.default.useEffect(function () {
183
+ return void (disabled && clearLongPress());
184
+ }, [disabled, clearLongPress]);
185
+ var Comp = asChild ? import_web.Slot : import_web.View;
186
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
187
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.Anchor, {
188
+ scope: scope || CONTEXTMENU_CONTEXT,
189
+ virtualRef
190
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(Comp, {
191
+ render: "span",
192
+ componentName: TRIGGER_NAME,
193
+ id: context.triggerId,
194
+ "data-state": context.open ? "open" : "closed",
195
+ "data-disabled": disabled ? "" : void 0,
196
+ ...triggerProps,
197
+ ref: (0, import_web.composeRefs)(forwardedRef, context.triggerRef),
198
+ style: import_web.isWeb ? {
199
+ WebkitTouchCallout: "none",
200
+ ...style
201
+ } : null,
202
+ ...(import_web.isWeb && {
203
+ onContextMenu: disabled ? props.onContextMenu : (0, import_web.composeEventHandlers)(props.onContextMenu, function (event) {
204
+ clearLongPress();
205
+ var openChangeEvent = handleOpen(event);
206
+ if (!openChangeEvent.defaultPrevented) {
207
+ event.preventDefault();
208
+ }
209
+ }),
210
+ onPointerDown: disabled ? props.onPointerDown : (0, import_web.composeEventHandlers)(props.onPointerDown, function (event) {
211
+ if (event.pointerType === "mouse") return;
212
+ clearLongPress();
213
+ longPressTimerRef.current = window.setTimeout(function () {
214
+ return handleOpen(event);
215
+ }, 700);
216
+ }),
217
+ onPointerMove: disabled ? props.onPointerMove : (0, import_web.composeEventHandlers)(props.onPointerMove, function (event) {
218
+ if (event.pointerType === "mouse") return;
219
+ clearLongPress();
220
+ }),
221
+ onPointerCancel: disabled ? props.onPointerCancel : (0, import_web.composeEventHandlers)(props.onPointerCancel, function (event) {
222
+ if (event.pointerType === "mouse") return;
223
+ clearLongPress();
224
+ }),
225
+ onPointerUp: disabled ? props.onPointerUp : (0, import_web.composeEventHandlers)(props.onPointerUp, function (event) {
226
+ if (event.pointerType === "mouse") return;
227
+ clearLongPress();
228
+ })
229
+ }),
230
+ ...(!import_web.isWeb && {
231
+ onLongPress: disabled ? props.onLongPress : (0, import_web.composeEventHandlers)(props.onLongPress, function (event) {
232
+ clearLongPress();
233
+ var openChangeEvent = handleOpen(event);
234
+ if (!openChangeEvent.defaultPrevented) {
235
+ event.preventDefault();
236
+ }
237
+ })
238
+ }),
239
+ children
240
+ })]
241
+ });
242
+ });
243
+ ContextMenuTrigger.displayName = TRIGGER_NAME;
244
+ var PORTAL_NAME = "ContextMenuPortal";
245
+ var ContextMenuPortal = function (props) {
246
+ var {
247
+ scope,
248
+ children,
249
+ ...portalProps
250
+ } = props;
251
+ var context = import_web.isAndroid ? useContextMenuContext(scope) : null;
252
+ var content = import_web.isAndroid ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(ContextMenuProvider, {
253
+ ...context,
254
+ children
255
+ }) : children;
256
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.Portal, {
257
+ scope: scope || CONTEXTMENU_CONTEXT,
258
+ ...portalProps,
259
+ children: content
260
+ });
261
+ };
262
+ ContextMenuPortal.displayName = PORTAL_NAME;
263
+ var CONTENT_NAME = "ContextMenuContent";
264
+ var ContextMenuContent = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
265
+ var {
266
+ scope,
267
+ ...contentProps
268
+ } = props;
269
+ var context = useContextMenuContext(scope);
270
+ var hasInteractedOutsideRef = import_react.default.useRef(false);
271
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.Content, {
272
+ id: context.contentId,
273
+ "aria-labelledby": context.triggerId,
274
+ scope: scope || CONTEXTMENU_CONTEXT,
275
+ ...contentProps,
276
+ ref: forwardedRef,
277
+ onCloseAutoFocus: (0, import_web.composeEventHandlers)(props.onCloseAutoFocus, function (event) {
278
+ var _context_triggerRef_current;
279
+ if (!hasInteractedOutsideRef.current) (_context_triggerRef_current = context.triggerRef.current) === null || _context_triggerRef_current === void 0 ? void 0 : _context_triggerRef_current.focus();
280
+ hasInteractedOutsideRef.current = false;
281
+ event.preventDefault();
282
+ }),
283
+ onInteractOutside: (0, import_web.composeEventHandlers)(props.onInteractOutside, function (event) {
284
+ var originalEvent = event.detail.originalEvent;
285
+ var ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;
286
+ var isRightClick = originalEvent.button === 2 || ctrlLeftClick;
287
+ if (!context.modal || isRightClick) hasInteractedOutsideRef.current = true;
288
+ })
289
+ });
290
+ });
291
+ ContextMenuContent.displayName = CONTENT_NAME;
292
+ var ITEM_NAME = "ContextMenuItem";
293
+ var ContextMenuItem = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
294
+ var {
295
+ scope,
296
+ ...itemProps
297
+ } = props;
298
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.Item, {
299
+ componentName: ITEM_NAME,
300
+ scope: scope || CONTEXTMENU_CONTEXT,
301
+ ...itemProps,
302
+ ref: forwardedRef
303
+ });
304
+ });
305
+ ContextMenuItem.displayName = ITEM_NAME;
306
+ var CHECKBOX_ITEM_NAME = "ContextMenuCheckboxItem";
307
+ var ContextMenuCheckboxItem = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
308
+ var {
309
+ scope,
310
+ ...checkboxItemProps
311
+ } = props;
312
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.CheckboxItem, {
313
+ componentName: CHECKBOX_ITEM_NAME,
314
+ scope: scope || CONTEXTMENU_CONTEXT,
315
+ ...checkboxItemProps,
316
+ ref: forwardedRef
317
+ });
318
+ });
319
+ ContextMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;
320
+ var RADIO_GROUP_NAME = "ContextMenuRadioGroup";
321
+ var ContextMenuRadioGroup = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
322
+ var {
323
+ scope,
324
+ ...radioGroupProps
325
+ } = props;
326
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.RadioGroup, {
327
+ scope: scope || CONTEXTMENU_CONTEXT,
328
+ ...radioGroupProps,
329
+ ref: forwardedRef
330
+ });
331
+ });
332
+ ContextMenuRadioGroup.displayName = RADIO_GROUP_NAME;
333
+ var RADIO_ITEM_NAME = "ContextMenuRadioItem";
334
+ var ContextMenuRadioItem = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
335
+ var {
336
+ scope,
337
+ ...radioItemProps
338
+ } = props;
339
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.RadioItem, {
340
+ componentName: RADIO_ITEM_NAME,
341
+ scope: scope || CONTEXTMENU_CONTEXT,
342
+ ...radioItemProps,
343
+ ref: forwardedRef
344
+ });
345
+ });
346
+ ContextMenuRadioItem.displayName = RADIO_ITEM_NAME;
347
+ var INDICATOR_NAME = "ContextMenuItemIndicator";
348
+ var ContextMenuItemIndicator = Menu.ItemIndicator.styleable(function (props, forwardedRef) {
349
+ var {
350
+ scope,
351
+ ...itemIndicatorProps
352
+ } = props;
353
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.ItemIndicator, {
354
+ componentName: INDICATOR_NAME,
355
+ scope: scope || CONTEXTMENU_CONTEXT,
356
+ ...itemIndicatorProps,
357
+ ref: forwardedRef
358
+ });
359
+ });
360
+ ContextMenuItemIndicator.displayName = INDICATOR_NAME;
361
+ var SUB_NAME = "ContextMenuSub";
362
+ var ContextMenuSub = function (props) {
363
+ var {
364
+ scope,
365
+ children,
366
+ onOpenChange,
367
+ open: openProp,
368
+ defaultOpen,
369
+ ...rest
370
+ } = props;
371
+ var [open, setOpen] = (0, import_use_controllable_state.useControllableState)({
372
+ prop: openProp,
373
+ defaultProp: defaultOpen,
374
+ onChange: onOpenChange
375
+ });
376
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.Sub, {
377
+ scope: scope || CONTEXTMENU_CONTEXT,
378
+ open,
379
+ onOpenChange: setOpen,
380
+ ...rest,
381
+ children
382
+ });
383
+ };
384
+ ContextMenuSub.displayName = SUB_NAME;
385
+ var SUB_TRIGGER_NAME = "ContextMenuSubTrigger";
386
+ var ContextMenuSubTrigger = import_web.View.styleable(function (props, forwardedRef) {
387
+ var {
388
+ scope,
389
+ ...subTriggerProps
390
+ } = props;
391
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.SubTrigger, {
392
+ componentName: SUB_TRIGGER_NAME,
393
+ scope: scope || CONTEXTMENU_CONTEXT,
394
+ ...subTriggerProps,
395
+ ref: forwardedRef
396
+ });
397
+ });
398
+ ContextMenuSubTrigger.displayName = SUB_TRIGGER_NAME;
399
+ var SUB_CONTENT_NAME = "ContextMenuSubContent";
400
+ var ContextMenuSubContent = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
401
+ var {
402
+ scope,
403
+ ...subContentProps
404
+ } = props;
405
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.SubContent, {
406
+ scope: scope || CONTEXTMENU_CONTEXT,
407
+ ...subContentProps,
408
+ ref: forwardedRef,
409
+ style: import_web.isWeb ? {
410
+ ...props.style,
411
+ ...{
412
+ "--gui-context-menu-content-transform-origin": "var(--gui-popper-transform-origin)",
413
+ "--gui-context-menu-content-available-width": "var(--gui-popper-available-width)",
414
+ "--gui-context-menu-content-available-height": "var(--gui-popper-available-height)",
415
+ "--gui-context-menu-trigger-width": "var(--gui-popper-anchor-width)",
416
+ "--gui-context-menu-trigger-height": "var(--gui-popper-anchor-height)"
417
+ }
418
+ } : null
419
+ });
420
+ });
421
+ ContextMenuSubContent.displayName = SUB_CONTENT_NAME;
422
+ var ARROW_NAME = "ContextMenuArrow";
423
+ var ContextMenuArrow = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
424
+ var {
425
+ scope,
426
+ ...arrowProps
427
+ } = props;
428
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Menu.Arrow, {
429
+ componentName: ARROW_NAME,
430
+ scope: scope || CONTEXTMENU_CONTEXT,
431
+ ...arrowProps,
432
+ ref: forwardedRef
433
+ });
434
+ });
435
+ ContextMenuArrow.displayName = ARROW_NAME;
436
+ var ContextMenuGroup = Menu.Group;
437
+ var ContextMenuLabel = Menu.Label;
438
+ var ContextMenuSeparator = Menu.Separator;
439
+ var ContextMenuItemTitle = Menu.ItemTitle;
440
+ var ContextMenuItemSubTitle = Menu.ItemSubtitle;
441
+ var ContextMenuItemImage = Menu.ItemImage;
442
+ var ContextMenuItemIcon = Menu.ItemIcon;
443
+ var ContextMenuPreview = function () {
444
+ return null;
445
+ };
446
+ return (0, import_web.withStaticProperties)(ContextMenuComp, {
447
+ Root: ContextMenuComp,
448
+ Trigger: ContextMenuTrigger,
449
+ Portal: ContextMenuPortal,
450
+ Content: ContextMenuContent,
451
+ Group: ContextMenuGroup,
452
+ Label: ContextMenuLabel,
453
+ Item: ContextMenuItem,
454
+ CheckboxItem: ContextMenuCheckboxItem,
455
+ RadioGroup: ContextMenuRadioGroup,
456
+ RadioItem: ContextMenuRadioItem,
457
+ ItemIndicator: ContextMenuItemIndicator,
458
+ Separator: ContextMenuSeparator,
459
+ Arrow: ContextMenuArrow,
460
+ Sub: ContextMenuSub,
461
+ SubTrigger: ContextMenuSubTrigger,
462
+ SubContent: ContextMenuSubContent,
463
+ ItemTitle: ContextMenuItemTitle,
464
+ ItemSubtitle: ContextMenuItemSubTitle,
465
+ ItemIcon: ContextMenuItemIcon,
466
+ ItemImage: ContextMenuItemImage,
467
+ Preview: ContextMenuPreview
468
+ });
469
+ }
470
+ //# sourceMappingURL=createNonNativeContextMenu.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","createNonNativeContextMenu_exports","CONTEXTMENU_CONTEXT","createNonNativeContextMenu","module","exports","import_jsx_runtime","require","import_create_menu","import_use_controllable_state","import_web","import_react","_instanceof","left","right","Symbol","hasInstance","params","Menu","createBaseMenu","CONTEXT_MENU_NAME","Provider","ContextMenuProvider","useStyledContext","useContextMenuContext","createStyledContext","ContextMenuComp","props","scope","children","onOpenChange","dir","modal","rest","open","setOpen","default","useState","triggerRef","useRef","handleOpenChange","useCallback","open2","event","defaultPrevented","jsx","triggerId","useId","contentId","displayName","TRIGGER_NAME","ContextMenuTrigger","View","styleable","forwardedRef","style","disabled","asChild","triggerProps","context","pointRef","x","y","virtualRef","useMemo","current","getBoundingClientRect","isWeb","scrollX","window","document","documentElement","scrollLeft","scrollY","scrollTop","DOMRect","fromRect","width","height","top","measure","c","measureInWindow","longPressTimerRef","clearLongPress","clearTimeout","createOpenChangeEvent","preventDefault","handleOpen","MouseEvent","PointerEvent","clientX","clientY","nativeEvent","pageX","pageY","openChangeEvent","useEffect","Comp","Slot","jsxs","Fragment","Anchor","render","componentName","id","ref","composeRefs","WebkitTouchCallout","onContextMenu","composeEventHandlers","onPointerDown","pointerType","setTimeout","onPointerMove","onPointerCancel","onPointerUp","onLongPress","PORTAL_NAME","ContextMenuPortal","portalProps","isAndroid","content","Portal","CONTENT_NAME","ContextMenuContent","forwardRef","contentProps","hasInteractedOutsideRef","Content","onCloseAutoFocus","_context_triggerRef_current","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","useControllableState","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","ContextMenuPreview","withStaticProperties","Root","Trigger","Preview"],"sources":["createNonNativeContextMenu.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar createNonNativeContextMenu_exports = {};\n__export(createNonNativeContextMenu_exports, {\n CONTEXTMENU_CONTEXT: () => CONTEXTMENU_CONTEXT,\n createNonNativeContextMenu: () => createNonNativeContextMenu\n});\nmodule.exports = __toCommonJS(createNonNativeContextMenu_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_create_menu = require(\"@hanzogui/create-menu\");\nvar import_use_controllable_state = require(\"@hanzogui/use-controllable-state\");\nvar import_web = require(\"@hanzogui/web\");\nvar import_react = __toESM(require(\"react\"), 1);\nfunction _instanceof(left, right) {\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nvar CONTEXTMENU_CONTEXT = \"ContextMenuContext\";\nfunction createNonNativeContextMenu(params) {\n var { Menu } = (0, import_create_menu.createBaseMenu)(params);\n var CONTEXT_MENU_NAME = \"ContextMenu\";\n var { Provider: ContextMenuProvider, useStyledContext: useContextMenuContext } = (0, import_web.createStyledContext)();\n var ContextMenuComp = function(props) {\n var { scope, children, onOpenChange, dir, modal = true, ...rest } = props;\n var [open, setOpen] = import_react.default.useState(false);\n var triggerRef = import_react.default.useRef(null);\n var handleOpenChange = import_react.default.useCallback(function(open2, event) {\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(open2, event);\n if (event === null || event === void 0 ? void 0 : event.defaultPrevented) return;\n setOpen(open2);\n }, [\n onOpenChange\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ContextMenuProvider, {\n scope,\n triggerId: (0, import_react.useId)(),\n triggerRef,\n contentId: (0, import_react.useId)(),\n open,\n onOpenChange: handleOpenChange,\n modal,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu, {\n scope: scope || CONTEXTMENU_CONTEXT,\n dir,\n open,\n onOpenChange: handleOpenChange,\n modal,\n ...rest,\n children\n })\n });\n };\n ContextMenuComp.displayName = CONTEXT_MENU_NAME;\n var TRIGGER_NAME = \"ContextMenuTrigger\";\n var ContextMenuTrigger = import_web.View.styleable(function(props, forwardedRef) {\n var { scope, style, disabled = false, asChild, children, ...triggerProps } = props;\n var context = useContextMenuContext(scope);\n var pointRef = import_react.default.useRef({\n x: 0,\n y: 0\n });\n var virtualRef = import_react.default.useMemo(function() {\n return {\n current: {\n getBoundingClientRect: function() {\n if (import_web.isWeb) {\n var scrollX = window.scrollX || document.documentElement.scrollLeft;\n var scrollY = window.scrollY || document.documentElement.scrollTop;\n return DOMRect.fromRect({\n width: 0,\n height: 0,\n x: pointRef.current.x - scrollX,\n y: pointRef.current.y - scrollY\n });\n }\n return {\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n ...pointRef.current\n };\n },\n ...!import_web.isWeb && {\n measure: function(c) {\n return c(pointRef.current.x, pointRef.current.y, 0, 0);\n },\n measureInWindow: function(c) {\n return c(pointRef.current.x, pointRef.current.y, 0, 0);\n }\n }\n }\n };\n }, [\n pointRef.current.x,\n pointRef.current.y\n ]);\n var longPressTimerRef = import_react.default.useRef(0);\n var clearLongPress = import_react.default.useCallback(function() {\n return window.clearTimeout(longPressTimerRef.current);\n }, []);\n var createOpenChangeEvent = function() {\n var defaultPrevented = false;\n return {\n get defaultPrevented() {\n return defaultPrevented;\n },\n preventDefault() {\n defaultPrevented = true;\n }\n };\n };\n var handleOpen = function(event) {\n if (import_web.isWeb && (_instanceof(event, MouseEvent) || _instanceof(event, PointerEvent))) {\n pointRef.current = {\n x: event.clientX,\n y: event.clientY\n };\n } else {\n pointRef.current = {\n x: event.nativeEvent.pageX,\n y: event.nativeEvent.pageY\n };\n }\n var openChangeEvent = createOpenChangeEvent();\n context.onOpenChange(true, openChangeEvent);\n return openChangeEvent;\n };\n import_react.default.useEffect(function() {\n return clearLongPress;\n }, [\n clearLongPress\n ]);\n import_react.default.useEffect(function() {\n return void (disabled && clearLongPress());\n }, [\n disabled,\n clearLongPress\n ]);\n var Comp = asChild ? import_web.Slot : import_web.View;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Anchor, {\n scope: scope || CONTEXTMENU_CONTEXT,\n virtualRef\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, {\n render: \"span\",\n componentName: TRIGGER_NAME,\n id: context.triggerId,\n \"data-state\": context.open ? \"open\" : \"closed\",\n \"data-disabled\": disabled ? \"\" : void 0,\n ...triggerProps,\n ref: (0, import_web.composeRefs)(forwardedRef, context.triggerRef),\n style: import_web.isWeb ? {\n WebkitTouchCallout: \"none\",\n ...style\n } : null,\n ...import_web.isWeb && {\n onContextMenu: disabled ? props.onContextMenu : (0, import_web.composeEventHandlers)(props.onContextMenu, function(event) {\n clearLongPress();\n var openChangeEvent = handleOpen(event);\n if (!openChangeEvent.defaultPrevented) {\n event.preventDefault();\n }\n }),\n onPointerDown: disabled ? props.onPointerDown : (0, import_web.composeEventHandlers)(props.onPointerDown, function(event) {\n if (event.pointerType === \"mouse\") return;\n clearLongPress();\n longPressTimerRef.current = window.setTimeout(function() {\n return handleOpen(event);\n }, 700);\n }),\n onPointerMove: disabled ? props.onPointerMove : (0, import_web.composeEventHandlers)(props.onPointerMove, function(event) {\n if (event.pointerType === \"mouse\") return;\n clearLongPress();\n }),\n onPointerCancel: disabled ? props.onPointerCancel : (0, import_web.composeEventHandlers)(props.onPointerCancel, function(event) {\n if (event.pointerType === \"mouse\") return;\n clearLongPress();\n }),\n onPointerUp: disabled ? props.onPointerUp : (0, import_web.composeEventHandlers)(props.onPointerUp, function(event) {\n if (event.pointerType === \"mouse\") return;\n clearLongPress();\n })\n },\n ...!import_web.isWeb && {\n onLongPress: disabled ? props.onLongPress : (0, import_web.composeEventHandlers)(props.onLongPress, function(event) {\n clearLongPress();\n var openChangeEvent = handleOpen(event);\n if (!openChangeEvent.defaultPrevented) {\n event.preventDefault();\n }\n })\n },\n children\n })\n ]\n });\n });\n ContextMenuTrigger.displayName = TRIGGER_NAME;\n var PORTAL_NAME = \"ContextMenuPortal\";\n var ContextMenuPortal = function(props) {\n var { scope, children, ...portalProps } = props;\n var context = import_web.isAndroid ? useContextMenuContext(scope) : null;\n var content = import_web.isAndroid ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ContextMenuProvider, {\n ...context,\n children\n }) : children;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Portal, {\n scope: scope || CONTEXTMENU_CONTEXT,\n ...portalProps,\n children: content\n });\n };\n ContextMenuPortal.displayName = PORTAL_NAME;\n var CONTENT_NAME = \"ContextMenuContent\";\n var ContextMenuContent = /* @__PURE__ */ import_react.default.forwardRef(function(props, forwardedRef) {\n var { scope, ...contentProps } = props;\n var context = useContextMenuContext(scope);\n var hasInteractedOutsideRef = import_react.default.useRef(false);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Content, {\n id: context.contentId,\n \"aria-labelledby\": context.triggerId,\n scope: scope || CONTEXTMENU_CONTEXT,\n ...contentProps,\n ref: forwardedRef,\n onCloseAutoFocus: (0, import_web.composeEventHandlers)(props.onCloseAutoFocus, function(event) {\n var _context_triggerRef_current;\n if (!hasInteractedOutsideRef.current) (_context_triggerRef_current = context.triggerRef.current) === null || _context_triggerRef_current === void 0 ? void 0 : _context_triggerRef_current.focus();\n hasInteractedOutsideRef.current = false;\n event.preventDefault();\n }),\n onInteractOutside: (0, import_web.composeEventHandlers)(props.onInteractOutside, function(event) {\n var originalEvent = event.detail.originalEvent;\n var ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n var isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n if (!context.modal || isRightClick) hasInteractedOutsideRef.current = true;\n })\n });\n });\n ContextMenuContent.displayName = CONTENT_NAME;\n var ITEM_NAME = \"ContextMenuItem\";\n var ContextMenuItem = /* @__PURE__ */ import_react.default.forwardRef(function(props, forwardedRef) {\n var { scope, ...itemProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Item, {\n componentName: ITEM_NAME,\n scope: scope || CONTEXTMENU_CONTEXT,\n ...itemProps,\n ref: forwardedRef\n });\n });\n ContextMenuItem.displayName = ITEM_NAME;\n var CHECKBOX_ITEM_NAME = \"ContextMenuCheckboxItem\";\n var ContextMenuCheckboxItem = /* @__PURE__ */ import_react.default.forwardRef(function(props, forwardedRef) {\n var { scope, ...checkboxItemProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.CheckboxItem, {\n componentName: CHECKBOX_ITEM_NAME,\n scope: scope || CONTEXTMENU_CONTEXT,\n ...checkboxItemProps,\n ref: forwardedRef\n });\n });\n ContextMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;\n var RADIO_GROUP_NAME = \"ContextMenuRadioGroup\";\n var ContextMenuRadioGroup = /* @__PURE__ */ import_react.default.forwardRef(function(props, forwardedRef) {\n var { scope, ...radioGroupProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.RadioGroup, {\n scope: scope || CONTEXTMENU_CONTEXT,\n ...radioGroupProps,\n ref: forwardedRef\n });\n });\n ContextMenuRadioGroup.displayName = RADIO_GROUP_NAME;\n var RADIO_ITEM_NAME = \"ContextMenuRadioItem\";\n var ContextMenuRadioItem = /* @__PURE__ */ import_react.default.forwardRef(function(props, forwardedRef) {\n var { scope, ...radioItemProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.RadioItem, {\n componentName: RADIO_ITEM_NAME,\n scope: scope || CONTEXTMENU_CONTEXT,\n ...radioItemProps,\n ref: forwardedRef\n });\n });\n ContextMenuRadioItem.displayName = RADIO_ITEM_NAME;\n var INDICATOR_NAME = \"ContextMenuItemIndicator\";\n var ContextMenuItemIndicator = Menu.ItemIndicator.styleable(function(props, forwardedRef) {\n var { scope, ...itemIndicatorProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.ItemIndicator, {\n componentName: INDICATOR_NAME,\n scope: scope || CONTEXTMENU_CONTEXT,\n ...itemIndicatorProps,\n ref: forwardedRef\n });\n });\n ContextMenuItemIndicator.displayName = INDICATOR_NAME;\n var SUB_NAME = \"ContextMenuSub\";\n var ContextMenuSub = function(props) {\n var { scope, children, onOpenChange, open: openProp, defaultOpen, ...rest } = props;\n var [open, setOpen] = (0, import_use_controllable_state.useControllableState)({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Sub, {\n scope: scope || CONTEXTMENU_CONTEXT,\n open,\n onOpenChange: setOpen,\n ...rest,\n children\n });\n };\n ContextMenuSub.displayName = SUB_NAME;\n var SUB_TRIGGER_NAME = \"ContextMenuSubTrigger\";\n var ContextMenuSubTrigger = import_web.View.styleable(function(props, forwardedRef) {\n var { scope, ...subTriggerProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.SubTrigger, {\n componentName: SUB_TRIGGER_NAME,\n scope: scope || CONTEXTMENU_CONTEXT,\n ...subTriggerProps,\n ref: forwardedRef\n });\n });\n ContextMenuSubTrigger.displayName = SUB_TRIGGER_NAME;\n var SUB_CONTENT_NAME = \"ContextMenuSubContent\";\n var ContextMenuSubContent = /* @__PURE__ */ import_react.default.forwardRef(function(props, forwardedRef) {\n var { scope, ...subContentProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.SubContent, {\n scope: scope || CONTEXTMENU_CONTEXT,\n ...subContentProps,\n ref: forwardedRef,\n style: import_web.isWeb ? {\n ...props.style,\n ...{\n \"--gui-context-menu-content-transform-origin\": \"var(--gui-popper-transform-origin)\",\n \"--gui-context-menu-content-available-width\": \"var(--gui-popper-available-width)\",\n \"--gui-context-menu-content-available-height\": \"var(--gui-popper-available-height)\",\n \"--gui-context-menu-trigger-width\": \"var(--gui-popper-anchor-width)\",\n \"--gui-context-menu-trigger-height\": \"var(--gui-popper-anchor-height)\"\n }\n } : null\n });\n });\n ContextMenuSubContent.displayName = SUB_CONTENT_NAME;\n var ARROW_NAME = \"ContextMenuArrow\";\n var ContextMenuArrow = /* @__PURE__ */ import_react.default.forwardRef(function(props, forwardedRef) {\n var { scope, ...arrowProps } = props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Menu.Arrow, {\n componentName: ARROW_NAME,\n scope: scope || CONTEXTMENU_CONTEXT,\n ...arrowProps,\n ref: forwardedRef\n });\n });\n ContextMenuArrow.displayName = ARROW_NAME;\n var ContextMenuGroup = Menu.Group;\n var ContextMenuLabel = Menu.Label;\n var ContextMenuSeparator = Menu.Separator;\n var ContextMenuItemTitle = Menu.ItemTitle;\n var ContextMenuItemSubTitle = Menu.ItemSubtitle;\n var ContextMenuItemImage = Menu.ItemImage;\n var ContextMenuItemIcon = Menu.ItemIcon;\n var ContextMenuPreview = function() {\n return null;\n };\n return (0, import_web.withStaticProperties)(ContextMenuComp, {\n Root: ContextMenuComp,\n Trigger: ContextMenuTrigger,\n Portal: ContextMenuPortal,\n Content: ContextMenuContent,\n Group: ContextMenuGroup,\n Label: ContextMenuLabel,\n Item: ContextMenuItem,\n CheckboxItem: ContextMenuCheckboxItem,\n RadioGroup: ContextMenuRadioGroup,\n RadioItem: ContextMenuRadioItem,\n ItemIndicator: ContextMenuItemIndicator,\n Separator: ContextMenuSeparator,\n Arrow: ContextMenuArrow,\n Sub: ContextMenuSub,\n SubTrigger: ContextMenuSubTrigger,\n SubContent: ContextMenuSubContent,\n ItemTitle: ContextMenuItemTitle,\n ItemSubtitle: ContextMenuItemSubTitle,\n ItemIcon: ContextMenuItemIcon,\n ItemImage: ContextMenuItemImage,\n Preview: ContextMenuPreview\n });\n}\n//# sourceMappingURL=createNonNativeContextMenu.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var index_exports = {};
24
+ __export(index_exports, {
25
+ ContextMenu: () => ContextMenu
26
+ });
27
+ module.exports = __toCommonJS(index_exports);
28
+ var import_polyfill_dev = require("@hanzogui/polyfill-dev");
29
+ var import_create_menu = require("@hanzogui/create-menu");
30
+ var import_ContextMenu = require("./ContextMenu.cjs");
31
+ const ContextMenu = (0, import_ContextMenu.createContextMenu)({
32
+ Icon: import_create_menu.MenuPredefined.MenuIcon,
33
+ Image: import_create_menu.MenuPredefined.MenuImage,
34
+ Indicator: import_create_menu.MenuPredefined.MenuIndicator,
35
+ Item: import_create_menu.MenuPredefined.MenuItem,
36
+ Label: import_create_menu.MenuPredefined.MenuLabel,
37
+ MenuGroup: import_create_menu.MenuPredefined.MenuGroup,
38
+ Separator: import_create_menu.MenuPredefined.MenuSeparator,
39
+ SubTitle: import_create_menu.MenuPredefined.SubTitle,
40
+ Title: import_create_menu.MenuPredefined.Title
41
+ });
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var index_exports = {};
26
+ __export(index_exports, {
27
+ ContextMenu: () => ContextMenu
28
+ });
29
+ module.exports = __toCommonJS(index_exports);
30
+ var import_polyfill_dev = require("@hanzogui/polyfill-dev");
31
+ var import_create_menu = require("@hanzogui/create-menu");
32
+ var import_ContextMenu = require("./ContextMenu.native.js");
33
+ var ContextMenu = (0, import_ContextMenu.createContextMenu)({
34
+ Icon: import_create_menu.MenuPredefined.MenuIcon,
35
+ Image: import_create_menu.MenuPredefined.MenuImage,
36
+ Indicator: import_create_menu.MenuPredefined.MenuIndicator,
37
+ Item: import_create_menu.MenuPredefined.MenuItem,
38
+ Label: import_create_menu.MenuPredefined.MenuLabel,
39
+ MenuGroup: import_create_menu.MenuPredefined.MenuGroup,
40
+ Separator: import_create_menu.MenuPredefined.MenuSeparator,
41
+ SubTitle: import_create_menu.MenuPredefined.SubTitle,
42
+ Title: import_create_menu.MenuPredefined.Title
43
+ });
44
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","index_exports","ContextMenu","module","exports","import_polyfill_dev","require","import_create_menu","import_ContextMenu","createContextMenu","Icon","MenuPredefined","MenuIcon","Image","MenuImage","Indicator","MenuIndicator","Item","MenuItem","Label","MenuLabel","MenuGroup","Separator","MenuSeparator","SubTitle","Title"],"sources":["index.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar index_exports = {};\n__export(index_exports, {\n ContextMenu: () => ContextMenu\n});\nmodule.exports = __toCommonJS(index_exports);\nvar import_polyfill_dev = require(\"@hanzogui/polyfill-dev\");\nvar import_create_menu = require(\"@hanzogui/create-menu\");\nvar import_ContextMenu = require(\"./ContextMenu\");\nvar ContextMenu = (0, import_ContextMenu.createContextMenu)({\n Icon: import_create_menu.MenuPredefined.MenuIcon,\n Image: import_create_menu.MenuPredefined.MenuImage,\n Indicator: import_create_menu.MenuPredefined.MenuIndicator,\n Item: import_create_menu.MenuPredefined.MenuItem,\n Label: import_create_menu.MenuPredefined.MenuLabel,\n MenuGroup: import_create_menu.MenuPredefined.MenuGroup,\n Separator: import_create_menu.MenuPredefined.MenuSeparator,\n SubTitle: import_create_menu.MenuPredefined.SubTitle,\n Title: import_create_menu.MenuPredefined.Title\n});\n//# sourceMappingURL=index.js.map\n"],"mappings":"AAAA,YAAY;;AACZ,IAAIA,SAAS,GAAGC,MAAM,CAACC,cAAc;AACrC,IAAIC,gBAAgB,GAAGF,MAAM,CAACG,wBAAwB;AACtD,IAAIC,iBAAiB,GAAGJ,MAAM,CAACK,mBAAmB;AAClD,IAAIC,YAAY,GAAGN,MAAM,CAACO,SAAS,CAACC,cAAc;AAClD,IAAIC,QAAQ,GAAGA,CAACC,MAAM,EAAEC,GAAG,KAAK;EAC9B,KAAK,IAAIC,IAAI,IAAID,GAAG,EAClBZ,SAAS,CAACW,MAAM,EAAEE,IAAI,EAAE;IAAEC,GAAG,EAAEF,GAAG,CAACC,IAAI,CAAC;IAAEE,UAAU,EAAE;EAAK,CAAC,CAAC;AACjE,CAAC;AACD,IAAIC,WAAW,GAAGA,CAACC,EAAE,EAAEC,IAAI,EAAEC,MAAM,EAAEC,IAAI,KAAK;EAC5C,IAAIF,IAAI,IAAI,OAAOA,IAAI,KAAK,QAAQ,IAAI,OAAOA,IAAI,KAAK,UAAU,EAAE;IAClE,KAAK,IAAIG,GAAG,IAAIhB,iBAAiB,CAACa,IAAI,CAAC,EACrC,IAAI,CAACX,YAAY,CAACe,IAAI,CAACL,EAAE,EAAEI,GAAG,CAAC,IAAIA,GAAG,KAAKF,MAAM,EAC/CnB,SAAS,CAACiB,EAAE,EAAEI,GAAG,EAAE;MAAEP,GAAG,EAAEA,CAAA,KAAMI,IAAI,CAACG,GAAG,CAAC;MAAEN,UAAU,EAAE,EAAEK,IAAI,GAAGjB,gBAAgB,CAACe,IAAI,EAAEG,GAAG,CAAC,CAAC,IAAID,IAAI,CAACL;IAAW,CAAC,CAAC;EACxH;EACA,OAAOE,EAAE;AACX,CAAC;AACD,IAAIM,YAAY,GAAIC,GAAG,IAAKR,WAAW,CAAChB,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE;EAAEyB,KAAK,EAAE;AAAK,CAAC,CAAC,EAAED,GAAG,CAAC;AAC1F,IAAIE,aAAa,GAAG,CAAC,CAAC;AACtBhB,QAAQ,CAACgB,aAAa,EAAE;EACtBC,WAAW,EAAEA,CAAA,KAAMA;AACrB,CAAC,CAAC;AACFC,MAAM,CAACC,OAAO,GAAGN,YAAY,CAACG,aAAa,CAAC;AAC5C,IAAII,mBAAmB,GAAGC,OAAO,CAAC,wBAAwB,CAAC;AAC3D,IAAIC,kBAAkB,GAAGD,OAAO,CAAC,uBAAuB,CAAC;AACzD,IAAIE,kBAAkB,GAAGF,OAAO,CAAC,yBAAe,CAAC;AACjD,IAAIJ,WAAW,GAAG,CAAC,CAAC,EAAEM,kBAAkB,CAACC,iBAAiB,EAAE;EAC1DC,IAAI,EAAEH,kBAAkB,CAACI,cAAc,CAACC,QAAQ;EAChDC,KAAK,EAAEN,kBAAkB,CAACI,cAAc,CAACG,SAAS;EAClDC,SAAS,EAAER,kBAAkB,CAACI,cAAc,CAACK,aAAa;EAC1DC,IAAI,EAAEV,kBAAkB,CAACI,cAAc,CAACO,QAAQ;EAChDC,KAAK,EAAEZ,kBAAkB,CAACI,cAAc,CAACS,SAAS;EAClDC,SAAS,EAAEd,kBAAkB,CAACI,cAAc,CAACU,SAAS;EACtDC,SAAS,EAAEf,kBAAkB,CAACI,cAAc,CAACY,aAAa;EAC1DC,QAAQ,EAAEjB,kBAAkB,CAACI,cAAc,CAACa,QAAQ;EACpDC,KAAK,EAAElB,kBAAkB,CAACI,cAAc,CAACc;AAC3C,CAAC,CAAC","ignoreList":[]}