first commit
This commit is contained in:
+8
@@ -0,0 +1,8 @@
|
||||
//#region ../../packages/hooks/use-same-target/index.d.ts
|
||||
declare const useSameTarget: (handleClick?: (e: MouseEvent) => void) => {
|
||||
onClick: (e: MouseEvent) => void;
|
||||
onMousedown: (e: MouseEvent) => void;
|
||||
onMouseup: (e: MouseEvent) => void;
|
||||
};
|
||||
//#endregion
|
||||
export { useSameTarget };
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
||||
const require_runtime = require('../../_virtual/_rolldown/runtime.js');
|
||||
let _vue_shared = require("@vue/shared");
|
||||
|
||||
//#region ../../packages/hooks/use-same-target/index.ts
|
||||
const useSameTarget = (handleClick) => {
|
||||
if (!handleClick) return {
|
||||
onClick: _vue_shared.NOOP,
|
||||
onMousedown: _vue_shared.NOOP,
|
||||
onMouseup: _vue_shared.NOOP
|
||||
};
|
||||
let mousedownTarget = false;
|
||||
let mouseupTarget = false;
|
||||
const onClick = (e) => {
|
||||
if (mousedownTarget && mouseupTarget) handleClick(e);
|
||||
mousedownTarget = mouseupTarget = false;
|
||||
};
|
||||
const onMousedown = (e) => {
|
||||
mousedownTarget = e.target === e.currentTarget;
|
||||
};
|
||||
const onMouseup = (e) => {
|
||||
mouseupTarget = e.target === e.currentTarget;
|
||||
};
|
||||
return {
|
||||
onClick,
|
||||
onMousedown,
|
||||
onMouseup
|
||||
};
|
||||
};
|
||||
|
||||
//#endregion
|
||||
exports.useSameTarget = useSameTarget;
|
||||
//# sourceMappingURL=index.js.map
|
||||
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.js","names":["NOOP"],"sources":["../../../../../packages/hooks/use-same-target/index.ts"],"sourcesContent":["import { NOOP } from '@element-plus/utils'\n\nexport const useSameTarget = (handleClick?: (e: MouseEvent) => void) => {\n if (!handleClick) {\n return { onClick: NOOP, onMousedown: NOOP, onMouseup: NOOP }\n }\n\n let mousedownTarget = false\n let mouseupTarget = false\n // refer to this https://javascript.info/mouse-events-basics\n // events fired in the order: mousedown -> mouseup -> click\n // we need to set the mousedown handle to false after click fired.\n const onClick = (e: MouseEvent) => {\n // if and only if\n if (mousedownTarget && mouseupTarget) {\n handleClick(e)\n }\n mousedownTarget = mouseupTarget = false\n }\n\n const onMousedown = (e: MouseEvent) => {\n // marking current mousedown target.\n mousedownTarget = e.target === e.currentTarget\n }\n const onMouseup = (e: MouseEvent) => {\n // marking current mouseup target.\n mouseupTarget = e.target === e.currentTarget\n }\n\n return { onClick, onMousedown, onMouseup }\n}\n"],"mappings":";;;;;AAEA,MAAa,iBAAiB,gBAA0C;AACtE,KAAI,CAAC,YACH,QAAO;EAAE,SAASA;EAAM,aAAaA;EAAM,WAAWA;EAAM;CAG9D,IAAI,kBAAkB;CACtB,IAAI,gBAAgB;CAIpB,MAAM,WAAW,MAAkB;AAEjC,MAAI,mBAAmB,cACrB,aAAY,EAAE;AAEhB,oBAAkB,gBAAgB;;CAGpC,MAAM,eAAe,MAAkB;AAErC,oBAAkB,EAAE,WAAW,EAAE;;CAEnC,MAAM,aAAa,MAAkB;AAEnC,kBAAgB,EAAE,WAAW,EAAE;;AAGjC,QAAO;EAAE;EAAS;EAAa;EAAW"}
|
||||
Reference in New Issue
Block a user