@becklyn/next 1.0.6 → 2.0.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.
@@ -1,5 +1,5 @@
1
1
  export interface ClickOutsideOptions {
2
2
  callback: (event: MouseEvent) => void;
3
3
  }
4
- export declare const useClickOutside: <T extends HTMLElement>({ callback }: ClickOutsideOptions) => import("react").MutableRefObject<T | null>;
4
+ export declare const useClickOutside: <T extends HTMLElement>({ callback }: ClickOutsideOptions) => import("react").RefObject<T | null>;
5
5
  //# sourceMappingURL=click.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"click.d.ts","sourceRoot":"","sources":["../../../lib/click.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;CACzC;AAED,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,WAAW,EAAE,cAAc,mBAAmB,+CAevF,CAAC"}
1
+ {"version":3,"file":"click.d.ts","sourceRoot":"","sources":["../../../lib/click.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;CACzC;AAED,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,WAAW,EAAE,cAAc,mBAAmB,wCAevF,CAAC"}
@@ -1,4 +1,4 @@
1
- export declare const useStaticContent: () => (boolean | import("react").MutableRefObject<{
1
+ export declare const useStaticContent: () => (boolean | import("react").RefObject<{
2
2
  innerHTML: string;
3
3
  } | null>)[];
4
4
  //# sourceMappingURL=staticContent.d.ts.map
@@ -1,5 +1,5 @@
1
1
  export interface ClickOutsideOptions {
2
2
  callback: (event: MouseEvent) => void;
3
3
  }
4
- export declare const useClickOutside: <T extends HTMLElement>({ callback }: ClickOutsideOptions) => import("react").MutableRefObject<T | null>;
4
+ export declare const useClickOutside: <T extends HTMLElement>({ callback }: ClickOutsideOptions) => import("react").RefObject<T | null>;
5
5
  //# sourceMappingURL=click.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"click.d.ts","sourceRoot":"","sources":["../../../lib/click.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;CACzC;AAED,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,WAAW,EAAE,cAAc,mBAAmB,+CAevF,CAAC"}
1
+ {"version":3,"file":"click.d.ts","sourceRoot":"","sources":["../../../lib/click.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;CACzC;AAED,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,WAAW,EAAE,cAAc,mBAAmB,wCAevF,CAAC"}
@@ -1,4 +1,4 @@
1
- export declare const useStaticContent: () => (boolean | import("react").MutableRefObject<{
1
+ export declare const useStaticContent: () => (boolean | import("react").RefObject<{
2
2
  innerHTML: string;
3
3
  } | null>)[];
4
4
  //# sourceMappingURL=staticContent.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@becklyn/next",
3
- "version": "1.0.6",
3
+ "version": "2.0.0",
4
4
  "license": "MIT",
5
5
  "scripts": {
6
6
  "lint": "eslint . --max-warnings 0 && prettier --check \"./**/*.{ts,tsx}\"",
@@ -9,21 +9,19 @@
9
9
  "prepublishOnly": "npm run lint && npm run build"
10
10
  },
11
11
  "dependencies": {
12
- "@contentful/rich-text-react-renderer": "^15.22.11",
13
- "@popperjs/core": "^2.11.8",
12
+ "@contentful/rich-text-react-renderer": "^16.0.1",
14
13
  "keen-slider": "^6.8.6",
15
- "react-popper": "^2.3.0",
16
14
  "sass": "^1.86.3"
17
15
  },
18
16
  "devDependencies": {
19
17
  "@becklyn/eslint": "*",
20
18
  "@becklyn/tsconfig": "*",
21
- "@contentful/rich-text-types": "^16.8.5",
22
- "@types/node": "^22.14.0",
23
- "@types/react": "^18.3.20",
24
- "@types/react-dom": "^18.3.6",
25
- "next": "^14.2.27",
26
- "react": "^18.3.1",
19
+ "@contentful/rich-text-types": "^17.0.0",
20
+ "@types/node": "^22.14.1",
21
+ "@types/react": "^19.1.2",
22
+ "@types/react-dom": "^19.1.2",
23
+ "next": "^15.3.0",
24
+ "react": "^19.1.0",
27
25
  "typescript": "^5.8.3"
28
26
  },
29
27
  "peerDependencies": {
@@ -1,29 +0,0 @@
1
- import { Dispatch, SetStateAction } from "react";
2
- import { Options } from "@popperjs/core";
3
- interface DropdownOptions extends Partial<Options> {
4
- isOpen?: boolean;
5
- setIsOpen?: Dispatch<SetStateAction<boolean>>;
6
- onClose?: () => void;
7
- }
8
- export declare const useDropdown: ({ isOpen: externalIsOpen, setIsOpen: externalSetIsOpen, onClose, ...options }: DropdownOptions) => {
9
- styles: {
10
- [key: string]: React.CSSProperties;
11
- };
12
- attributes: {
13
- [key: string]: {
14
- [key: string]: string;
15
- } | undefined;
16
- };
17
- state: import("@popperjs/core").State | null;
18
- update: import("@popperjs/core").Instance["update"] | null;
19
- forceUpdate: import("@popperjs/core").Instance["forceUpdate"] | null;
20
- isOpen: boolean;
21
- setIsOpen: Dispatch<SetStateAction<boolean>>;
22
- clickOutsideRef: import("react").MutableRefObject<HTMLElement | null>;
23
- referenceElement: HTMLElement | null;
24
- popperElement: HTMLElement | null;
25
- setReferenceElement: Dispatch<SetStateAction<HTMLElement | null>>;
26
- setPopperElement: Dispatch<SetStateAction<HTMLElement | null>>;
27
- };
28
- export {};
29
- //# sourceMappingURL=dropdown.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dropdown.d.ts","sourceRoot":"","sources":["../../../lib/dropdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAuB,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAKzC,UAAU,eAAgB,SAAQ,OAAO,CAAC,OAAO,CAAC;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,eAAO,MAAM,WAAW,GAAI,+EAKzB,eAAe;;;;;;;;;;;;;;;;;;;CA+FjB,CAAC"}
@@ -1,88 +0,0 @@
1
- "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.useDropdown = void 0;
15
- const react_1 = require("react");
16
- const react_popper_1 = require("react-popper");
17
- const click_1 = require("./click");
18
- const escape_1 = require("./escape");
19
- const focusTrap_1 = require("./focusTrap");
20
- const useDropdown = (_a) => {
21
- var { isOpen: externalIsOpen, setIsOpen: externalSetIsOpen, onClose } = _a, options = __rest(_a, ["isOpen", "setIsOpen", "onClose"]);
22
- const [internalIsOpen, internalSetIsOpen] = (0, react_1.useState)(false);
23
- const [referenceElement, setReferenceElement] = (0, react_1.useState)(null);
24
- const [popperElement, setPopperElement] = (0, react_1.useState)(null);
25
- const [, { update }] = (0, focusTrap_1.useTrapFocus)(popperElement);
26
- const isOpen = externalIsOpen !== undefined ? externalIsOpen : internalIsOpen;
27
- const setIsOpen = externalSetIsOpen !== undefined ? externalSetIsOpen : internalSetIsOpen;
28
- const clickOutsideRef = (0, click_1.useClickOutside)({
29
- callback: e => {
30
- if (popperElement && popperElement.contains(e.target)) {
31
- return;
32
- }
33
- handleClose();
34
- },
35
- });
36
- const popper = (0, react_popper_1.usePopper)(referenceElement, popperElement, options);
37
- const { forceUpdate } = popper;
38
- (0, escape_1.useEscapeListener)(e => {
39
- if (!isOpen || !referenceElement) {
40
- return;
41
- }
42
- if (!referenceElement.contains(e.target) &&
43
- !e.target.contains(popperElement)) {
44
- return;
45
- }
46
- handleClose();
47
- }, [referenceElement, popperElement, isOpen]);
48
- (0, react_1.useEffect)(() => {
49
- if (!referenceElement) {
50
- return;
51
- }
52
- const observer = new ResizeObserver(() => {
53
- if (!forceUpdate) {
54
- return;
55
- }
56
- forceUpdate();
57
- });
58
- observer.observe(referenceElement);
59
- return () => observer.disconnect();
60
- }, [referenceElement, forceUpdate]);
61
- (0, react_1.useEffect)(() => {
62
- if (!popperElement) {
63
- return;
64
- }
65
- const observer = new MutationObserver(() => {
66
- update();
67
- });
68
- observer.observe(popperElement, { subtree: true, attributes: true });
69
- return () => observer.disconnect();
70
- }, [popperElement, update]);
71
- const handleClose = () => {
72
- if (!isOpen) {
73
- return;
74
- }
75
- setIsOpen(false);
76
- if (onClose) {
77
- onClose();
78
- }
79
- };
80
- return Object.assign({ isOpen,
81
- setIsOpen,
82
- clickOutsideRef,
83
- referenceElement,
84
- popperElement,
85
- setReferenceElement,
86
- setPopperElement }, popper);
87
- };
88
- exports.useDropdown = useDropdown;
@@ -1,29 +0,0 @@
1
- import { Dispatch, SetStateAction } from "react";
2
- import { Options } from "@popperjs/core";
3
- interface DropdownOptions extends Partial<Options> {
4
- isOpen?: boolean;
5
- setIsOpen?: Dispatch<SetStateAction<boolean>>;
6
- onClose?: () => void;
7
- }
8
- export declare const useDropdown: ({ isOpen: externalIsOpen, setIsOpen: externalSetIsOpen, onClose, ...options }: DropdownOptions) => {
9
- styles: {
10
- [key: string]: React.CSSProperties;
11
- };
12
- attributes: {
13
- [key: string]: {
14
- [key: string]: string;
15
- } | undefined;
16
- };
17
- state: import("@popperjs/core").State | null;
18
- update: import("@popperjs/core").Instance["update"] | null;
19
- forceUpdate: import("@popperjs/core").Instance["forceUpdate"] | null;
20
- isOpen: boolean;
21
- setIsOpen: Dispatch<SetStateAction<boolean>>;
22
- clickOutsideRef: import("react").MutableRefObject<HTMLElement | null>;
23
- referenceElement: HTMLElement | null;
24
- popperElement: HTMLElement | null;
25
- setReferenceElement: Dispatch<SetStateAction<HTMLElement | null>>;
26
- setPopperElement: Dispatch<SetStateAction<HTMLElement | null>>;
27
- };
28
- export {};
29
- //# sourceMappingURL=dropdown.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dropdown.d.ts","sourceRoot":"","sources":["../../../lib/dropdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAuB,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAKzC,UAAU,eAAgB,SAAQ,OAAO,CAAC,OAAO,CAAC;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,eAAO,MAAM,WAAW,GAAI,+EAKzB,eAAe;;;;;;;;;;;;;;;;;;;CA+FjB,CAAC"}
@@ -1,79 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useDropdown = void 0;
4
- const react_1 = require("react");
5
- const react_popper_1 = require("react-popper");
6
- const click_1 = require("./click");
7
- const escape_1 = require("./escape");
8
- const focusTrap_1 = require("./focusTrap");
9
- const useDropdown = ({ isOpen: externalIsOpen, setIsOpen: externalSetIsOpen, onClose, ...options }) => {
10
- const [internalIsOpen, internalSetIsOpen] = (0, react_1.useState)(false);
11
- const [referenceElement, setReferenceElement] = (0, react_1.useState)(null);
12
- const [popperElement, setPopperElement] = (0, react_1.useState)(null);
13
- const [, { update }] = (0, focusTrap_1.useTrapFocus)(popperElement);
14
- const isOpen = externalIsOpen !== undefined ? externalIsOpen : internalIsOpen;
15
- const setIsOpen = externalSetIsOpen !== undefined ? externalSetIsOpen : internalSetIsOpen;
16
- const clickOutsideRef = (0, click_1.useClickOutside)({
17
- callback: e => {
18
- if (popperElement && popperElement.contains(e.target)) {
19
- return;
20
- }
21
- handleClose();
22
- },
23
- });
24
- const popper = (0, react_popper_1.usePopper)(referenceElement, popperElement, options);
25
- const { forceUpdate } = popper;
26
- (0, escape_1.useEscapeListener)(e => {
27
- if (!isOpen || !referenceElement) {
28
- return;
29
- }
30
- if (!referenceElement.contains(e.target) &&
31
- !e.target.contains(popperElement)) {
32
- return;
33
- }
34
- handleClose();
35
- }, [referenceElement, popperElement, isOpen]);
36
- (0, react_1.useEffect)(() => {
37
- if (!referenceElement) {
38
- return;
39
- }
40
- const observer = new ResizeObserver(() => {
41
- if (!forceUpdate) {
42
- return;
43
- }
44
- forceUpdate();
45
- });
46
- observer.observe(referenceElement);
47
- return () => observer.disconnect();
48
- }, [referenceElement, forceUpdate]);
49
- (0, react_1.useEffect)(() => {
50
- if (!popperElement) {
51
- return;
52
- }
53
- const observer = new MutationObserver(() => {
54
- update();
55
- });
56
- observer.observe(popperElement, { subtree: true, attributes: true });
57
- return () => observer.disconnect();
58
- }, [popperElement, update]);
59
- const handleClose = () => {
60
- if (!isOpen) {
61
- return;
62
- }
63
- setIsOpen(false);
64
- if (onClose) {
65
- onClose();
66
- }
67
- };
68
- return {
69
- isOpen,
70
- setIsOpen,
71
- clickOutsideRef,
72
- referenceElement,
73
- popperElement,
74
- setReferenceElement,
75
- setPopperElement,
76
- ...popper,
77
- };
78
- };
79
- exports.useDropdown = useDropdown;