@pzerelles/headlessui-svelte 2.1.2-next.10 → 2.1.2-next.12

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 (69) hide show
  1. package/dist/hooks/use-controllable.svelte.js +2 -1
  2. package/dist/hooks/use-did-element-move.svelte.js +5 -10
  3. package/dist/internal/FloatingProvider.svelte +12 -0
  4. package/dist/internal/FloatingProvider.svelte.d.ts +22 -0
  5. package/dist/internal/floating-provider.svelte.d.ts +3 -0
  6. package/dist/internal/floating-provider.svelte.js +206 -0
  7. package/dist/internal/floating.svelte.d.ts +48 -23
  8. package/dist/internal/floating.svelte.js +78 -260
  9. package/dist/internal/inner.svelte.d.ts +91 -0
  10. package/dist/internal/inner.svelte.js +202 -0
  11. package/dist/listbox/Listbox.svelte +38 -52
  12. package/dist/listbox/Listbox.svelte.d.ts +3 -54
  13. package/dist/listbox/ListboxButton.svelte +7 -6
  14. package/dist/listbox/ListboxOption.svelte +7 -3
  15. package/dist/listbox/ListboxOptions.svelte +50 -50
  16. package/dist/listbox/context.svelte.d.ts +75 -0
  17. package/dist/listbox/context.svelte.js +36 -0
  18. package/dist/menu/Menu.svelte +2 -2
  19. package/dist/menu/MenuButton.svelte +4 -2
  20. package/dist/menu/MenuItems.svelte +15 -11
  21. package/dist/tabs/TabGroup.svelte.d.ts +1 -1
  22. package/dist/utils/ElementOrComponent.svelte +1 -1
  23. package/dist/utils/floating-ui/svelte/components/FloatingNode.svelte +17 -0
  24. package/dist/utils/floating-ui/svelte/components/FloatingNode.svelte.d.ts +23 -0
  25. package/dist/utils/floating-ui/svelte/components/FloatingTree.svelte +50 -0
  26. package/dist/utils/floating-ui/svelte/components/FloatingTree.svelte.d.ts +41 -0
  27. package/dist/utils/floating-ui/svelte/hooks/useFloating.svelte.d.ts +6 -0
  28. package/dist/utils/floating-ui/svelte/hooks/useFloating.svelte.js +158 -0
  29. package/dist/utils/floating-ui/svelte/hooks/useFloatingRootContext.svelte.d.ts +11 -0
  30. package/dist/utils/floating-ui/svelte/hooks/useFloatingRootContext.svelte.js +53 -0
  31. package/dist/utils/floating-ui/svelte/hooks/useId.svelte.d.ts +9 -0
  32. package/dist/utils/floating-ui/svelte/hooks/useId.svelte.js +28 -0
  33. package/dist/utils/floating-ui/svelte/hooks/useInteractions.svelte.d.ts +23 -0
  34. package/dist/utils/floating-ui/svelte/hooks/useInteractions.svelte.js +72 -0
  35. package/dist/utils/floating-ui/svelte/index.d.ts +5 -0
  36. package/dist/utils/floating-ui/svelte/index.js +5 -0
  37. package/dist/utils/floating-ui/svelte/inner.svelte.d.ts +83 -0
  38. package/dist/utils/floating-ui/svelte/inner.svelte.js +178 -0
  39. package/dist/utils/floating-ui/svelte/types.d.ts +114 -0
  40. package/dist/utils/floating-ui/svelte/types.js +1 -0
  41. package/dist/utils/floating-ui/svelte/utils/createPubSub.d.ts +5 -0
  42. package/dist/utils/floating-ui/svelte/utils/createPubSub.js +14 -0
  43. package/dist/utils/floating-ui/svelte/utils/getFloatingFocusElement.d.ts +2 -0
  44. package/dist/utils/floating-ui/svelte/utils/getFloatingFocusElement.js +13 -0
  45. package/dist/utils/floating-ui/svelte/utils/log.d.ts +2 -0
  46. package/dist/utils/floating-ui/svelte/utils/log.js +19 -0
  47. package/dist/utils/floating-ui/svelte/utils.d.ts +19 -0
  48. package/dist/utils/floating-ui/svelte/utils.js +136 -0
  49. package/dist/utils/floating-ui/svelte-dom/arrow.d.ts +22 -0
  50. package/dist/utils/floating-ui/svelte-dom/arrow.js +29 -0
  51. package/dist/utils/floating-ui/svelte-dom/index.d.ts +2 -0
  52. package/dist/utils/floating-ui/svelte-dom/index.js +2 -0
  53. package/dist/utils/floating-ui/svelte-dom/types.d.ts +80 -0
  54. package/dist/utils/floating-ui/svelte-dom/types.js +3 -0
  55. package/dist/utils/floating-ui/svelte-dom/useFloating.svelte.d.ts +6 -0
  56. package/dist/utils/floating-ui/svelte-dom/useFloating.svelte.js +182 -0
  57. package/dist/utils/floating-ui/svelte-dom/utils/deepEqual.d.ts +1 -0
  58. package/dist/utils/floating-ui/svelte-dom/utils/deepEqual.js +50 -0
  59. package/dist/utils/floating-ui/svelte-dom/utils/getDPR.d.ts +1 -0
  60. package/dist/utils/floating-ui/svelte-dom/utils/getDPR.js +7 -0
  61. package/dist/utils/floating-ui/svelte-dom/utils/roundByDPR.d.ts +1 -0
  62. package/dist/utils/floating-ui/svelte-dom/utils/roundByDPR.js +5 -0
  63. package/dist/utils/floating-ui/svelte-dom/utils/useLatestRef.d.ts +4 -0
  64. package/dist/utils/floating-ui/svelte-dom/utils/useLatestRef.js +7 -0
  65. package/dist/utils/style.d.ts +2 -0
  66. package/dist/utils/style.js +6 -0
  67. package/package.json +3 -2
  68. package/dist/listbox/ListboxStates.d.ts +0 -12
  69. package/dist/listbox/ListboxStates.js +0 -15
@@ -0,0 +1,50 @@
1
+ // Fork of `fast-deep-equal` that only does the comparisons we need and compares
2
+ // functions
3
+ export function deepEqual(a, b) {
4
+ if (a === b) {
5
+ return true;
6
+ }
7
+ if (typeof a !== typeof b) {
8
+ return false;
9
+ }
10
+ if (typeof a === "function" && a.toString() === b.toString()) {
11
+ return true;
12
+ }
13
+ let length;
14
+ let i;
15
+ let keys;
16
+ if (a && b && typeof a === "object") {
17
+ if (Array.isArray(a)) {
18
+ length = a.length;
19
+ if (length !== b.length)
20
+ return false;
21
+ for (i = length; i-- !== 0;) {
22
+ if (!deepEqual(a[i], b[i])) {
23
+ return false;
24
+ }
25
+ }
26
+ return true;
27
+ }
28
+ keys = Object.keys(a);
29
+ length = keys.length;
30
+ if (length !== Object.keys(b).length) {
31
+ return false;
32
+ }
33
+ for (i = length; i-- !== 0;) {
34
+ if (!{}.hasOwnProperty.call(b, keys[i])) {
35
+ return false;
36
+ }
37
+ }
38
+ for (i = length; i-- !== 0;) {
39
+ const key = keys[i];
40
+ if (key === "_owner" && a.$$typeof) {
41
+ continue;
42
+ }
43
+ if (!deepEqual(a[key], b[key])) {
44
+ return false;
45
+ }
46
+ }
47
+ return true;
48
+ }
49
+ return a !== a && b !== b;
50
+ }
@@ -0,0 +1 @@
1
+ export declare function getDPR(element: Element): number;
@@ -0,0 +1,7 @@
1
+ export function getDPR(element) {
2
+ if (typeof window === "undefined") {
3
+ return 1;
4
+ }
5
+ const win = element.ownerDocument.defaultView || window;
6
+ return win.devicePixelRatio || 1;
7
+ }
@@ -0,0 +1 @@
1
+ export declare function roundByDPR(element: Element, value: number): number;
@@ -0,0 +1,5 @@
1
+ import { getDPR } from "./getDPR.js";
2
+ export function roundByDPR(element, value) {
3
+ const dpr = getDPR(element);
4
+ return Math.round(value * dpr) / dpr;
5
+ }
@@ -0,0 +1,4 @@
1
+ import type { MutableRefObject } from "../../../ref.svelte.js";
2
+ export declare function useLatestRef<T>(options: {
3
+ value: T;
4
+ }): MutableRefObject<T>;
@@ -0,0 +1,7 @@
1
+ export function useLatestRef(options) {
2
+ return {
3
+ get current() {
4
+ return options.value;
5
+ },
6
+ };
7
+ }
@@ -0,0 +1,2 @@
1
+ export declare const camelToKebab: (s: string) => string;
2
+ export declare const stylePropsToString: (props: Record<string, unknown>) => string;
@@ -0,0 +1,6 @@
1
+ export const camelToKebab = (s) => s.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);
2
+ export const stylePropsToString = (props) => {
3
+ return Object.entries(props)
4
+ .map(([key, value]) => `${camelToKebab(key)}: ${typeof value === "number" ? `${value}px` : value}`)
5
+ .join(";");
6
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pzerelles/headlessui-svelte",
3
- "version": "2.1.2-next.10",
3
+ "version": "2.1.2-next.12",
4
4
  "exports": {
5
5
  ".": {
6
6
  "types": "./dist/index.d.ts",
@@ -42,7 +42,7 @@
42
42
  "publint": "^0.2.10",
43
43
  "svelte": "^5.0.0-next.244",
44
44
  "svelte-check": "^3.8.6",
45
- "tailwindcss": "^3.4.10",
45
+ "tailwindcss": "^3.4.11",
46
46
  "tslib": "^2.7.0",
47
47
  "typescript": "^5.6.2",
48
48
  "typescript-eslint": "^8.5.0",
@@ -52,6 +52,7 @@
52
52
  "dependencies": {
53
53
  "@floating-ui/core": "^1.6.7",
54
54
  "@floating-ui/dom": "^1.6.10",
55
+ "@floating-ui/utils": "^0.2.7",
55
56
  "clsx": "^2.1.1",
56
57
  "esm-env": "^1.0.0",
57
58
  "nanoid": "^5.0.7"
@@ -1,12 +0,0 @@
1
- export declare enum ListboxStates {
2
- Open = 0,
3
- Closed = 1
4
- }
5
- export declare enum ValueMode {
6
- Single = 0,
7
- Multi = 1
8
- }
9
- export declare enum ActivationTrigger {
10
- Pointer = 0,
11
- Other = 1
12
- }
@@ -1,15 +0,0 @@
1
- export var ListboxStates;
2
- (function (ListboxStates) {
3
- ListboxStates[ListboxStates["Open"] = 0] = "Open";
4
- ListboxStates[ListboxStates["Closed"] = 1] = "Closed";
5
- })(ListboxStates || (ListboxStates = {}));
6
- export var ValueMode;
7
- (function (ValueMode) {
8
- ValueMode[ValueMode["Single"] = 0] = "Single";
9
- ValueMode[ValueMode["Multi"] = 1] = "Multi";
10
- })(ValueMode || (ValueMode = {}));
11
- export var ActivationTrigger;
12
- (function (ActivationTrigger) {
13
- ActivationTrigger[ActivationTrigger["Pointer"] = 0] = "Pointer";
14
- ActivationTrigger[ActivationTrigger["Other"] = 1] = "Other";
15
- })(ActivationTrigger || (ActivationTrigger = {}));