deepsea-components 5.2.2 → 5.3.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.
- package/dist/cjs/components/Title.d.ts +3 -0
- package/dist/cjs/components/Title.js +46 -0
- package/dist/cjs/components/Title.js.map +7 -0
- package/dist/cjs/utils/getReactVersion.d.ts +1 -0
- package/dist/cjs/utils/getReactVersion.js +34 -0
- package/dist/cjs/utils/getReactVersion.js.map +7 -0
- package/dist/esm/components/Title.d.ts +3 -0
- package/dist/esm/components/Title.js +23 -0
- package/dist/esm/components/Title.js.map +1 -0
- package/dist/esm/utils/getReactVersion.d.ts +1 -0
- package/dist/esm/utils/getReactVersion.js +6 -0
- package/dist/esm/utils/getReactVersion.js.map +1 -0
- package/package.json +4 -2
- package/src/components/Title.tsx +24 -0
- package/src/utils/getReactVersion.ts +7 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ComponentProps } from "react";
|
|
2
|
+
export type TitleProps = ComponentProps<"title">;
|
|
3
|
+
export declare const Title: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLTitleElement>, HTMLTitleElement>, "ref"> & import("react").RefAttributes<HTMLTitleElement>>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/components/Title.tsx
|
|
20
|
+
var Title_exports = {};
|
|
21
|
+
__export(Title_exports, {
|
|
22
|
+
Title: () => Title
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(Title_exports);
|
|
25
|
+
var import_react = require("react");
|
|
26
|
+
var import_react_dom = require("react-dom");
|
|
27
|
+
var import_getReactVersion = require("../utils/getReactVersion");
|
|
28
|
+
var [major] = (0, import_getReactVersion.getReactVersion)();
|
|
29
|
+
var Title = (0, import_react.forwardRef)((props, ref) => {
|
|
30
|
+
if (major >= 19)
|
|
31
|
+
return /* @__PURE__ */ React.createElement("title", { ref, ...props });
|
|
32
|
+
const ele = (0, import_react.useRef)(null);
|
|
33
|
+
(0, import_react.useImperativeHandle)(ref, () => ele.current, [ele.current]);
|
|
34
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
35
|
+
const title = document.head.querySelector("title");
|
|
36
|
+
if (title === ele.current)
|
|
37
|
+
return;
|
|
38
|
+
document.head.insertBefore(ele.current, title);
|
|
39
|
+
}, []);
|
|
40
|
+
return (0, import_react_dom.createPortal)(/* @__PURE__ */ React.createElement("title", { ref: ele, ...props }), document.head);
|
|
41
|
+
});
|
|
42
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
43
|
+
0 && (module.exports = {
|
|
44
|
+
Title
|
|
45
|
+
});
|
|
46
|
+
//# sourceMappingURL=Title.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/Title.tsx"],
|
|
4
|
+
"sourcesContent": ["import { ComponentProps, forwardRef, useImperativeHandle, useLayoutEffect, useRef } from \"react\"\r\nimport { createPortal } from \"react-dom\"\r\nimport { getReactVersion } from \"../utils/getReactVersion\"\r\n\r\nexport type TitleProps = ComponentProps<\"title\">\r\n\r\nconst [major] = getReactVersion()\r\n\r\nexport const Title = forwardRef<HTMLTitleElement, TitleProps>((props, ref) => {\r\n\r\n if (major >= 19) return <title ref={ref} {...props} />\r\n\r\n const ele = useRef<HTMLTitleElement>(null)\r\n\r\n useImperativeHandle(ref, () => ele.current as HTMLTitleElement, [ele.current])\r\n\r\n useLayoutEffect(() => {\r\n const title = document.head.querySelector(\"title\")\r\n if (title === ele.current) return\r\n document.head.insertBefore(ele.current as HTMLTitleElement, title)\r\n }, [])\r\n\r\n return createPortal(<title ref={ele} {...props} />, document.head)\r\n})\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyF;AACzF,uBAA6B;AAC7B,6BAAgC;AAIhC,IAAM,CAAC,KAAK,QAAI,wCAAgB;AAEzB,IAAM,YAAQ,yBAAyC,CAAC,OAAO,QAAQ;AAE1E,MAAI,SAAS;AAAI,WAAO,oCAAC,WAAM,KAAW,GAAG,OAAO;AAEpD,QAAM,UAAM,qBAAyB,IAAI;AAEzC,wCAAoB,KAAK,MAAM,IAAI,SAA6B,CAAC,IAAI,OAAO,CAAC;AAE7E,oCAAgB,MAAM;AAClB,UAAM,QAAQ,SAAS,KAAK,cAAc,OAAO;AACjD,QAAI,UAAU,IAAI;AAAS;AAC3B,aAAS,KAAK,aAAa,IAAI,SAA6B,KAAK;AAAA,EACrE,GAAG,CAAC,CAAC;AAEL,aAAO,+BAAa,oCAAC,WAAM,KAAK,KAAM,GAAG,OAAO,GAAI,SAAS,IAAI;AACrE,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getReactVersion(): number[];
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/utils/getReactVersion.ts
|
|
20
|
+
var getReactVersion_exports = {};
|
|
21
|
+
__export(getReactVersion_exports, {
|
|
22
|
+
getReactVersion: () => getReactVersion
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(getReactVersion_exports);
|
|
25
|
+
var import_react = require("react");
|
|
26
|
+
var reg = /(\d+)\.(\d+)\.(\d+)/;
|
|
27
|
+
function getReactVersion() {
|
|
28
|
+
return import_react.version.match(reg).slice(1).map(Number);
|
|
29
|
+
}
|
|
30
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
31
|
+
0 && (module.exports = {
|
|
32
|
+
getReactVersion
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=getReactVersion.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/utils/getReactVersion.ts"],
|
|
4
|
+
"sourcesContent": ["import { version } from \"react\"\r\n\r\nconst reg = /(\\d+)\\.(\\d+)\\.(\\d+)/\r\n\r\nexport function getReactVersion() {\r\n return version.match(reg)!.slice(1).map(Number)\r\n}\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAwB;AAExB,IAAM,MAAM;AAEL,SAAS,kBAAkB;AAC9B,SAAO,qBAAQ,MAAM,GAAG,EAAG,MAAM,CAAC,EAAE,IAAI,MAAM;AAClD;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ComponentProps } from "react";
|
|
2
|
+
export type TitleProps = ComponentProps<"title">;
|
|
3
|
+
export declare const Title: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLTitleElement>, HTMLTitleElement>, "ref"> & import("react").RefAttributes<HTMLTitleElement>>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { forwardRef, useImperativeHandle, useLayoutEffect, useRef } from "react";
|
|
2
|
+
import { createPortal } from "react-dom";
|
|
3
|
+
import { getReactVersion } from "../utils/getReactVersion";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
const [major] = getReactVersion();
|
|
6
|
+
export const Title = /*#__PURE__*/forwardRef((props, ref) => {
|
|
7
|
+
if (major >= 19) return /*#__PURE__*/_jsx("title", {
|
|
8
|
+
ref: ref,
|
|
9
|
+
...props
|
|
10
|
+
});
|
|
11
|
+
const ele = useRef(null);
|
|
12
|
+
useImperativeHandle(ref, () => ele.current, [ele.current]);
|
|
13
|
+
useLayoutEffect(() => {
|
|
14
|
+
const title = document.head.querySelector("title");
|
|
15
|
+
if (title === ele.current) return;
|
|
16
|
+
document.head.insertBefore(ele.current, title);
|
|
17
|
+
}, []);
|
|
18
|
+
return /*#__PURE__*/createPortal( /*#__PURE__*/_jsx("title", {
|
|
19
|
+
ref: ele,
|
|
20
|
+
...props
|
|
21
|
+
}), document.head);
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=Title.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useImperativeHandle","useLayoutEffect","useRef","createPortal","getReactVersion","jsx","_jsx","major","Title","props","ref","ele","current","title","document","head","querySelector","insertBefore"],"sources":["../../../src/components/Title.tsx"],"sourcesContent":["import { ComponentProps, forwardRef, useImperativeHandle, useLayoutEffect, useRef } from \"react\"\r\nimport { createPortal } from \"react-dom\"\r\nimport { getReactVersion } from \"../utils/getReactVersion\"\r\n\r\nexport type TitleProps = ComponentProps<\"title\">\r\n\r\nconst [major] = getReactVersion()\r\n\r\nexport const Title = forwardRef<HTMLTitleElement, TitleProps>((props, ref) => {\r\n\r\n if (major >= 19) return <title ref={ref} {...props} />\r\n\r\n const ele = useRef<HTMLTitleElement>(null)\r\n\r\n useImperativeHandle(ref, () => ele.current as HTMLTitleElement, [ele.current])\r\n\r\n useLayoutEffect(() => {\r\n const title = document.head.querySelector(\"title\")\r\n if (title === ele.current) return\r\n document.head.insertBefore(ele.current as HTMLTitleElement, title)\r\n }, [])\r\n\r\n return createPortal(<title ref={ele} {...props} />, document.head)\r\n})\r\n"],"mappings":"AAAA,SAAyBA,UAAU,EAAEC,mBAAmB,EAAEC,eAAe,EAAEC,MAAM,QAAQ,OAAO;AAChG,SAASC,YAAY,QAAQ,WAAW;AACxC,SAASC,eAAe;AAAkC,SAAAC,GAAA,IAAAC,IAAA;AAI1D,MAAM,CAACC,KAAK,CAAC,GAAGH,eAAe,CAAC,CAAC;AAEjC,OAAO,MAAMI,KAAK,gBAAGT,UAAU,CAA+B,CAACU,KAAK,EAAEC,GAAG,KAAK;EAE1E,IAAIH,KAAK,IAAI,EAAE,EAAE,oBAAOD,IAAA;IAAOI,GAAG,EAAEA,GAAI;IAAA,GAAKD;EAAK,CAAG,CAAC;EAEtD,MAAME,GAAG,GAAGT,MAAM,CAAmB,IAAI,CAAC;EAE1CF,mBAAmB,CAACU,GAAG,EAAE,MAAMC,GAAG,CAACC,OAA2B,EAAE,CAACD,GAAG,CAACC,OAAO,CAAC,CAAC;EAE9EX,eAAe,CAAC,MAAM;IAClB,MAAMY,KAAK,GAAGC,QAAQ,CAACC,IAAI,CAACC,aAAa,CAAC,OAAO,CAAC;IAClD,IAAIH,KAAK,KAAKF,GAAG,CAACC,OAAO,EAAE;IAC3BE,QAAQ,CAACC,IAAI,CAACE,YAAY,CAACN,GAAG,CAACC,OAAO,EAAsBC,KAAK,CAAC;EACtE,CAAC,EAAE,EAAE,CAAC;EAEN,oBAAOV,YAAY,eAACG,IAAA;IAAOI,GAAG,EAAEC,GAAI;IAAA,GAAKF;EAAK,CAAG,CAAC,EAAEK,QAAQ,CAACC,IAAI,CAAC;AACtE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getReactVersion(): number[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["version","reg","getReactVersion","match","slice","map","Number"],"sources":["../../../src/utils/getReactVersion.ts"],"sourcesContent":["import { version } from \"react\"\r\n\r\nconst reg = /(\\d+)\\.(\\d+)\\.(\\d+)/\r\n\r\nexport function getReactVersion() {\r\n return version.match(reg)!.slice(1).map(Number)\r\n}\r\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,OAAO;AAE/B,MAAMC,GAAG,GAAG,qBAAqB;AAEjC,OAAO,SAASC,eAAeA,CAAA,EAAG;EAC9B,OAAOF,OAAO,CAACG,KAAK,CAACF,GAAG,CAAC,CAAEG,KAAK,CAAC,CAAC,CAAC,CAACC,GAAG,CAACC,MAAM,CAAC;AACnD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "deepsea-components",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.3.0",
|
|
4
4
|
"description": "格数科技自用组件库",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -38,7 +38,9 @@
|
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
40
|
"@types/react": "^18.3.1",
|
|
41
|
-
"react": "^18.
|
|
41
|
+
"@types/react-dom": "^18.2.22",
|
|
42
|
+
"react": "^18.3.1",
|
|
43
|
+
"react-dom": "^18.2.0"
|
|
42
44
|
},
|
|
43
45
|
"scripts": {
|
|
44
46
|
"dev": "father dev",
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ComponentProps, forwardRef, useImperativeHandle, useLayoutEffect, useRef } from "react"
|
|
2
|
+
import { createPortal } from "react-dom"
|
|
3
|
+
import { getReactVersion } from "../utils/getReactVersion"
|
|
4
|
+
|
|
5
|
+
export type TitleProps = ComponentProps<"title">
|
|
6
|
+
|
|
7
|
+
const [major] = getReactVersion()
|
|
8
|
+
|
|
9
|
+
export const Title = forwardRef<HTMLTitleElement, TitleProps>((props, ref) => {
|
|
10
|
+
|
|
11
|
+
if (major >= 19) return <title ref={ref} {...props} />
|
|
12
|
+
|
|
13
|
+
const ele = useRef<HTMLTitleElement>(null)
|
|
14
|
+
|
|
15
|
+
useImperativeHandle(ref, () => ele.current as HTMLTitleElement, [ele.current])
|
|
16
|
+
|
|
17
|
+
useLayoutEffect(() => {
|
|
18
|
+
const title = document.head.querySelector("title")
|
|
19
|
+
if (title === ele.current) return
|
|
20
|
+
document.head.insertBefore(ele.current as HTMLTitleElement, title)
|
|
21
|
+
}, [])
|
|
22
|
+
|
|
23
|
+
return createPortal(<title ref={ele} {...props} />, document.head)
|
|
24
|
+
})
|