design-zystem 1.0.408 → 1.0.409

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/ui/index.js CHANGED
@@ -4249,6 +4249,24 @@ var isOverlayOfDrawerAbove = (overlay, panel) => {
4249
4249
  return overlayIndex > panelIndex && panelIndex !== -1;
4250
4250
  };
4251
4251
 
4252
+ // src/ui/lib/drawer/swallowRestOfClick.ts
4253
+ var REST_OF_CLICK = ["pointerup", "mousedown", "mouseup", "click"];
4254
+ var swallowRestOfClick = () => {
4255
+ const swallow = (event) => {
4256
+ event.stopPropagation();
4257
+ event.preventDefault();
4258
+ if (event.type === "click") release();
4259
+ };
4260
+ const release = () => {
4261
+ REST_OF_CLICK.forEach(
4262
+ (type) => window.removeEventListener(type, swallow, true)
4263
+ );
4264
+ window.removeEventListener("pointerdown", release, true);
4265
+ };
4266
+ REST_OF_CLICK.forEach((type) => window.addEventListener(type, swallow, true));
4267
+ window.addEventListener("pointerdown", release, true);
4268
+ };
4269
+
4252
4270
  // src/ui/components/ui/Drawer.tsx
4253
4271
  var import_jsx_runtime48 = require("react/jsx-runtime");
4254
4272
  var KEEP_OPEN_SELECTOR = '[role="dialog"], [role="listbox"], [data-drawer-keep-open]';
@@ -4297,10 +4315,15 @@ var Drawer = ({
4297
4315
  if (!isTopDrawer(contentRef.current)) return;
4298
4316
  if ((_a = contentRef.current) == null ? void 0 : _a.contains(target)) return;
4299
4317
  if (belongsToLayerAbove(target)) return;
4318
+ if (event.button === 0) {
4319
+ event.stopPropagation();
4320
+ event.preventDefault();
4321
+ swallowRestOfClick();
4322
+ }
4300
4323
  closeDrawer();
4301
4324
  };
4302
- document.addEventListener("pointerdown", handlePointerDown);
4303
- return () => document.removeEventListener("pointerdown", handlePointerDown);
4325
+ document.addEventListener("pointerdown", handlePointerDown, true);
4326
+ return () => document.removeEventListener("pointerdown", handlePointerDown, true);
4304
4327
  }, [modal, open, onClose]);
4305
4328
  (0, import_react28.useEffect)(() => {
4306
4329
  if (modal || !open) return;
package/dist/ui/index.mjs CHANGED
@@ -4069,6 +4069,24 @@ var isOverlayOfDrawerAbove = (overlay, panel) => {
4069
4069
  return overlayIndex > panelIndex && panelIndex !== -1;
4070
4070
  };
4071
4071
 
4072
+ // src/ui/lib/drawer/swallowRestOfClick.ts
4073
+ var REST_OF_CLICK = ["pointerup", "mousedown", "mouseup", "click"];
4074
+ var swallowRestOfClick = () => {
4075
+ const swallow = (event) => {
4076
+ event.stopPropagation();
4077
+ event.preventDefault();
4078
+ if (event.type === "click") release();
4079
+ };
4080
+ const release = () => {
4081
+ REST_OF_CLICK.forEach(
4082
+ (type) => window.removeEventListener(type, swallow, true)
4083
+ );
4084
+ window.removeEventListener("pointerdown", release, true);
4085
+ };
4086
+ REST_OF_CLICK.forEach((type) => window.addEventListener(type, swallow, true));
4087
+ window.addEventListener("pointerdown", release, true);
4088
+ };
4089
+
4072
4090
  // src/ui/components/ui/Drawer.tsx
4073
4091
  import { jsx as jsx48, jsxs as jsxs24 } from "react/jsx-runtime";
4074
4092
  var KEEP_OPEN_SELECTOR = '[role="dialog"], [role="listbox"], [data-drawer-keep-open]';
@@ -4117,10 +4135,15 @@ var Drawer = ({
4117
4135
  if (!isTopDrawer(contentRef.current)) return;
4118
4136
  if ((_a = contentRef.current) == null ? void 0 : _a.contains(target)) return;
4119
4137
  if (belongsToLayerAbove(target)) return;
4138
+ if (event.button === 0) {
4139
+ event.stopPropagation();
4140
+ event.preventDefault();
4141
+ swallowRestOfClick();
4142
+ }
4120
4143
  closeDrawer();
4121
4144
  };
4122
- document.addEventListener("pointerdown", handlePointerDown);
4123
- return () => document.removeEventListener("pointerdown", handlePointerDown);
4145
+ document.addEventListener("pointerdown", handlePointerDown, true);
4146
+ return () => document.removeEventListener("pointerdown", handlePointerDown, true);
4124
4147
  }, [modal, open, onClose]);
4125
4148
  useEffect6(() => {
4126
4149
  if (modal || !open) return;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "design-zystem",
3
- "version": "1.0.408",
3
+ "version": "1.0.409",
4
4
  "description": "A React design system of importable components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",