@monstermann/signals-modal 0.6.0 → 0.7.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 (91) hide show
  1. package/README.md +0 -377
  2. package/dist/anchor/withAnchorElement.mjs +3 -16
  3. package/dist/anchor/withAnchorMeasurement.mjs +4 -14
  4. package/dist/anchor/withMouseAnchor.mjs +4 -14
  5. package/dist/createModal.d.mts +2 -2
  6. package/dist/createModal.mjs +2 -4
  7. package/dist/floating/withFloatingElement.mjs +3 -16
  8. package/dist/floating/withFloatingMeasurement.mjs +4 -14
  9. package/dist/groups/getDialogs.mjs +1 -3
  10. package/dist/groups/getGroupsForModal.mjs +1 -3
  11. package/dist/groups/getModalsForGroup.mjs +1 -3
  12. package/dist/groups/getPopovers.mjs +1 -3
  13. package/dist/groups/getTooltips.mjs +1 -3
  14. package/dist/groups/internals.mjs +1 -3
  15. package/dist/groups/isDialog.mjs +1 -3
  16. package/dist/groups/isModalInGroup.mjs +1 -3
  17. package/dist/groups/isPopover.mjs +1 -3
  18. package/dist/groups/isTooltip.mjs +1 -3
  19. package/dist/groups/modalGroups.mjs +1 -2
  20. package/dist/groups/withModalGroups.mjs +1 -3
  21. package/dist/index.d.mts +2 -14
  22. package/dist/index.mjs +5 -18
  23. package/dist/internals/observeDimensions.mjs +1 -2
  24. package/dist/internals/observePosition.mjs +8 -3
  25. package/dist/internals/roundByDPR.mjs +1 -2
  26. package/dist/position/internals.mjs +1 -23
  27. package/dist/position/withBoundary.mjs +1 -3
  28. package/dist/position/withPlacement.mjs +4 -16
  29. package/dist/position/withPosition.mjs +6 -18
  30. package/dist/scroll/withCloseOnScroll.mjs +1 -3
  31. package/dist/status/closeAllModals.mjs +1 -3
  32. package/dist/status/closeModal.mjs +1 -3
  33. package/dist/status/getClosedModals.mjs +1 -3
  34. package/dist/status/getClosingModals.mjs +1 -3
  35. package/dist/status/getModalStatus.mjs +1 -3
  36. package/dist/status/getOpenModals.mjs +1 -3
  37. package/dist/status/getOpenedModals.mjs +1 -3
  38. package/dist/status/getOpeningModals.mjs +1 -3
  39. package/dist/status/getVisibleModals.mjs +1 -3
  40. package/dist/status/internals.mjs +7 -38
  41. package/dist/status/isAnyModalClosed.mjs +1 -3
  42. package/dist/status/isAnyModalClosing.mjs +1 -3
  43. package/dist/status/isAnyModalOpen.mjs +1 -3
  44. package/dist/status/isAnyModalOpened.mjs +1 -3
  45. package/dist/status/isAnyModalOpening.mjs +1 -3
  46. package/dist/status/isAnyModalVisible.mjs +1 -3
  47. package/dist/status/isModalClosed.mjs +1 -3
  48. package/dist/status/isModalClosing.mjs +1 -3
  49. package/dist/status/isModalOpen.mjs +1 -3
  50. package/dist/status/isModalOpened.mjs +1 -3
  51. package/dist/status/isModalOpening.mjs +1 -3
  52. package/dist/status/isModalVisible.mjs +1 -3
  53. package/dist/status/onModalClosed.d.mts +2 -2
  54. package/dist/status/onModalClosed.mjs +6 -10
  55. package/dist/status/onModalClosing.d.mts +2 -2
  56. package/dist/status/onModalClosing.mjs +6 -10
  57. package/dist/status/onModalOpened.d.mts +2 -2
  58. package/dist/status/onModalOpened.mjs +6 -10
  59. package/dist/status/onModalOpening.d.mts +2 -2
  60. package/dist/status/onModalOpening.mjs +6 -10
  61. package/dist/status/openModal.mjs +1 -3
  62. package/dist/status/setModalStatus.mjs +1 -3
  63. package/dist/status/withModalStatus.mjs +4 -6
  64. package/package.json +1 -1
  65. package/dist/anchor/getAnchorElement.d.mts +0 -34
  66. package/dist/anchor/getAnchorElement.mjs +0 -39
  67. package/dist/anchor/getAnchorMeasurement.d.mts +0 -43
  68. package/dist/anchor/getAnchorMeasurement.mjs +0 -47
  69. package/dist/anchor/internals.mjs +0 -25
  70. package/dist/anchor/setAnchorElement.d.mts +0 -30
  71. package/dist/anchor/setAnchorElement.mjs +0 -35
  72. package/dist/floating/getFloatingElement.d.mts +0 -34
  73. package/dist/floating/getFloatingElement.mjs +0 -39
  74. package/dist/floating/getFloatingMeasurement.d.mts +0 -43
  75. package/dist/floating/getFloatingMeasurement.mjs +0 -47
  76. package/dist/floating/internals.mjs +0 -25
  77. package/dist/floating/setFloatingElement.d.mts +0 -30
  78. package/dist/floating/setFloatingElement.mjs +0 -35
  79. package/dist/internals/findParentElement.mjs +0 -9
  80. package/dist/position/getModalPlacement.d.mts +0 -55
  81. package/dist/position/getModalPlacement.mjs +0 -58
  82. package/dist/position/getModalPosition.d.mts +0 -64
  83. package/dist/position/getModalPosition.mjs +0 -67
  84. package/dist/status/closeLastModal.d.mts +0 -22
  85. package/dist/status/closeLastModal.mjs +0 -29
  86. package/dist/utils/closeLastModalOnClickOutside.d.mts +0 -22
  87. package/dist/utils/closeLastModalOnClickOutside.mjs +0 -37
  88. package/dist/utils/closeLastModalOnEsc.d.mts +0 -22
  89. package/dist/utils/closeLastModalOnEsc.mjs +0 -35
  90. package/dist/utils/syncModalGroupsToBody.d.mts +0 -41
  91. package/dist/utils/syncModalGroupsToBody.mjs +0 -72
@@ -1,72 +0,0 @@
1
- import { getGroupsForModal } from "../groups/getGroupsForModal.mjs";
2
- import { getVisibleModals } from "../status/getVisibleModals.mjs";
3
- import { INTERNAL, effect, memo } from "@monstermann/signals";
4
-
5
- //#region src/utils/syncModalGroupsToBody.ts
6
- const path = "@signals-modal/utils/syncModalGroupsToBody.ts";
7
- const meta = {
8
- path,
9
- line: 5,
10
- name: "$classes"
11
- };
12
- const meta1 = {
13
- path,
14
- line: 54,
15
- name: "syncModalGroupsToBody"
16
- };
17
- const $classes = memo(() => {
18
- const modals = getVisibleModals();
19
- const clx = /* @__PURE__ */ new Set();
20
- for (const modal of modals) for (const group of getGroupsForModal(modal)) clx.add(`has-${group}`);
21
- return Array.from(clx).sort().join(" ");
22
- }, INTERNAL, meta);
23
- /**
24
- * # syncModalGroupsToBody
25
- *
26
- * ```ts
27
- * function syncModalGroupsToBody(): void;
28
- * ```
29
- *
30
- * Sets up a global `Effect` that adds `has-${group}` class names to `document.body` for opened modals.
31
- *
32
- * ## Example
33
- *
34
- * ```ts
35
- * import {
36
- * createModal,
37
- * withModalGroups,
38
- * withModalStatus,
39
- * syncModalGroupsToBody,
40
- * openModal,
41
- * closeModal,
42
- * } from "@monstermann/signals-modal";
43
- *
44
- * syncModalGroupsToBody();
45
- *
46
- * const modal = createModal("key", () => {
47
- * const $groups = withModalGroups(["dialog"]);
48
- * const { $status } = withModalStatus();
49
- * return { $groups, $status };
50
- * });
51
- *
52
- * document.body.classList; // []
53
- * openModal("key");
54
- * document.body.classList; // ["has-dialog"]
55
- * closeModal("key");
56
- * document.body.classList; // []
57
- * ```
58
- *
59
- */
60
- function syncModalGroupsToBody() {
61
- effect(() => {
62
- if (!$classes()) return;
63
- const classes = $classes().split(" ");
64
- document.body.classList.add(...classes);
65
- return () => {
66
- document.body.classList.remove(...classes);
67
- };
68
- }, INTERNAL, meta1);
69
- }
70
-
71
- //#endregion
72
- export { syncModalGroupsToBody };