react-pdf-levelup 1.0.13 → 1.0.15
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/index.cjs +24 -117
- package/dist/index.d.cts +2 -11
- package/dist/index.d.ts +2 -11
- package/dist/index.js +24 -117
- package/package.json +1 -2
package/dist/index.cjs
CHANGED
|
@@ -582,140 +582,47 @@ var Footer = ({ children, style, fixed = false }) => {
|
|
|
582
582
|
|
|
583
583
|
// src/components/PDF/core/QRCode.tsx
|
|
584
584
|
var import_react8 = __toESM(require("react"), 1);
|
|
585
|
-
var import_react9 = require("react");
|
|
586
585
|
var import_renderer8 = require("@react-pdf/renderer");
|
|
587
|
-
var import_qr_code_styling = __toESM(require("qr-code-styling"), 1);
|
|
588
586
|
var styles8 = import_renderer8.StyleSheet.create({
|
|
589
587
|
qrContainer: {
|
|
590
588
|
position: "relative",
|
|
591
589
|
alignItems: "center",
|
|
592
590
|
justifyContent: "center"
|
|
591
|
+
},
|
|
592
|
+
logo: {
|
|
593
|
+
position: "absolute",
|
|
594
|
+
zIndex: 2
|
|
595
|
+
},
|
|
596
|
+
logoBackground: {
|
|
597
|
+
position: "absolute",
|
|
598
|
+
zIndex: 1
|
|
593
599
|
}
|
|
594
600
|
});
|
|
595
601
|
var QRCode = ({
|
|
596
|
-
|
|
602
|
+
dataURL,
|
|
597
603
|
size = 150,
|
|
598
|
-
|
|
599
|
-
dotsGradient,
|
|
600
|
-
backgroundColor = "#ffffff",
|
|
601
|
-
dotsType = "square",
|
|
602
|
-
cornersType = "square",
|
|
603
|
-
cornersSquareColor,
|
|
604
|
-
cornersDotColor,
|
|
604
|
+
style,
|
|
605
605
|
logo,
|
|
606
606
|
logoSize = 30,
|
|
607
|
-
logoBackgroundColor,
|
|
608
|
-
logoMargin = 5
|
|
609
|
-
errorCorrectionLevel = "M",
|
|
610
|
-
margin = 10,
|
|
611
|
-
style
|
|
607
|
+
logoBackgroundColor = "#ffffff",
|
|
608
|
+
logoMargin = 5
|
|
612
609
|
}) => {
|
|
613
|
-
const [qrDataURL, setQrDataURL] = (0, import_react9.useState)("");
|
|
614
|
-
const qrCodeRef = (0, import_react9.useRef)(null);
|
|
615
|
-
(0, import_react9.useEffect)(() => {
|
|
616
|
-
if (typeof window !== "undefined" && !qrCodeRef.current) {
|
|
617
|
-
qrCodeRef.current = new import_qr_code_styling.default({
|
|
618
|
-
width: 300,
|
|
619
|
-
height: 300,
|
|
620
|
-
type: "canvas",
|
|
621
|
-
data: "Initial",
|
|
622
|
-
dotsOptions: {
|
|
623
|
-
type: "square",
|
|
624
|
-
color: "#000000"
|
|
625
|
-
},
|
|
626
|
-
cornersSquareOptions: {
|
|
627
|
-
type: "square"
|
|
628
|
-
},
|
|
629
|
-
cornersDotOptions: {
|
|
630
|
-
type: "square"
|
|
631
|
-
},
|
|
632
|
-
backgroundOptions: {
|
|
633
|
-
color: "#ffffff"
|
|
634
|
-
},
|
|
635
|
-
imageOptions: {
|
|
636
|
-
crossOrigin: "anonymous",
|
|
637
|
-
margin: 5
|
|
638
|
-
}
|
|
639
|
-
});
|
|
640
|
-
}
|
|
641
|
-
const generateQRCode = async () => {
|
|
642
|
-
if (typeof window === "undefined" || !qrCodeRef.current) return;
|
|
643
|
-
try {
|
|
644
|
-
const options = {
|
|
645
|
-
width: size,
|
|
646
|
-
height: size,
|
|
647
|
-
data: value,
|
|
648
|
-
margin,
|
|
649
|
-
qrOptions: {
|
|
650
|
-
errorCorrectionLevel
|
|
651
|
-
},
|
|
652
|
-
dotsOptions: {
|
|
653
|
-
type: dotsType,
|
|
654
|
-
color: dotsColor
|
|
655
|
-
},
|
|
656
|
-
cornersSquareOptions: {
|
|
657
|
-
type: cornersType,
|
|
658
|
-
color: cornersSquareColor || dotsColor
|
|
659
|
-
},
|
|
660
|
-
cornersDotOptions: {
|
|
661
|
-
type: cornersType,
|
|
662
|
-
color: cornersDotColor || dotsColor
|
|
663
|
-
},
|
|
664
|
-
backgroundOptions: {
|
|
665
|
-
color: backgroundColor
|
|
666
|
-
}
|
|
667
|
-
};
|
|
668
|
-
if (dotsGradient && dotsGradient.length === 2) {
|
|
669
|
-
options.dotsOptions.gradient = {
|
|
670
|
-
type: "linear",
|
|
671
|
-
colorStops: [
|
|
672
|
-
{ offset: 0, color: dotsGradient[0] },
|
|
673
|
-
{ offset: 1, color: dotsGradient[1] }
|
|
674
|
-
]
|
|
675
|
-
};
|
|
676
|
-
}
|
|
677
|
-
if (logo) {
|
|
678
|
-
options.image = logo;
|
|
679
|
-
options.imageOptions = {
|
|
680
|
-
hideBackgroundDots: true,
|
|
681
|
-
imageSize: logoSize / size,
|
|
682
|
-
crossOrigin: "anonymous",
|
|
683
|
-
margin: logoMargin
|
|
684
|
-
};
|
|
685
|
-
if (logoBackgroundColor) {
|
|
686
|
-
options.imageOptions.margin = logoMargin;
|
|
687
|
-
}
|
|
688
|
-
}
|
|
689
|
-
qrCodeRef.current.update(options);
|
|
690
|
-
const dataURL = await qrCodeRef.current.getDataUrl();
|
|
691
|
-
setQrDataURL(dataURL);
|
|
692
|
-
} catch (error) {
|
|
693
|
-
console.error("Error generating QR code:", error);
|
|
694
|
-
}
|
|
695
|
-
};
|
|
696
|
-
generateQRCode();
|
|
697
|
-
}, [
|
|
698
|
-
value,
|
|
699
|
-
size,
|
|
700
|
-
dotsColor,
|
|
701
|
-
dotsGradient,
|
|
702
|
-
backgroundColor,
|
|
703
|
-
dotsType,
|
|
704
|
-
cornersType,
|
|
705
|
-
cornersSquareColor,
|
|
706
|
-
cornersDotColor,
|
|
707
|
-
logo,
|
|
708
|
-
logoSize,
|
|
709
|
-
logoBackgroundColor,
|
|
710
|
-
logoMargin,
|
|
711
|
-
errorCorrectionLevel,
|
|
712
|
-
margin
|
|
713
|
-
]);
|
|
714
610
|
const containerStyle = __spreadValues(__spreadProps(__spreadValues({}, styles8.qrContainer), {
|
|
715
611
|
width: size,
|
|
716
612
|
height: size
|
|
717
613
|
}), style);
|
|
718
|
-
|
|
614
|
+
const logoContainerSize = logoSize + logoMargin * 2;
|
|
615
|
+
const logoBackgroundStyle = __spreadProps(__spreadValues({}, styles8.logoBackground), {
|
|
616
|
+
width: logoContainerSize,
|
|
617
|
+
height: logoContainerSize,
|
|
618
|
+
backgroundColor: logoBackgroundColor,
|
|
619
|
+
borderRadius: logoContainerSize / 2
|
|
620
|
+
});
|
|
621
|
+
const logoStyle = __spreadProps(__spreadValues({}, styles8.logo), {
|
|
622
|
+
width: logoSize,
|
|
623
|
+
height: logoSize
|
|
624
|
+
});
|
|
625
|
+
return /* @__PURE__ */ import_react8.default.createElement(import_renderer8.View, { style: containerStyle }, dataURL ? /* @__PURE__ */ import_react8.default.createElement(import_react8.default.Fragment, null, /* @__PURE__ */ import_react8.default.createElement(import_renderer8.Image, { src: dataURL || "/placeholder.svg", style: { width: size, height: size } }), logo && /* @__PURE__ */ import_react8.default.createElement(import_react8.default.Fragment, null, /* @__PURE__ */ import_react8.default.createElement(import_renderer8.View, { style: logoBackgroundStyle }), /* @__PURE__ */ import_react8.default.createElement(import_renderer8.Image, { src: logo || "/placeholder.svg", style: logoStyle }))) : null);
|
|
719
626
|
};
|
|
720
627
|
var QRCode_default = QRCode;
|
|
721
628
|
// Annotate the CommonJS export names for ESM import in node:
|
package/dist/index.d.cts
CHANGED
|
@@ -114,22 +114,13 @@ declare const Header: React.FC<PageElementProps>;
|
|
|
114
114
|
declare const Footer: React.FC<PageElementProps>;
|
|
115
115
|
|
|
116
116
|
interface QRCodeProps {
|
|
117
|
-
|
|
117
|
+
dataURL: string;
|
|
118
118
|
size?: number;
|
|
119
|
-
|
|
120
|
-
dotsGradient?: [string, string];
|
|
121
|
-
backgroundColor?: string;
|
|
122
|
-
dotsType?: "square" | "dots" | "rounded" | "classy" | "classy-rounded" | "extra-rounded";
|
|
123
|
-
cornersType?: "square" | "dots" | "rounded" | "extra-rounded";
|
|
124
|
-
cornersSquareColor?: string;
|
|
125
|
-
cornersDotColor?: string;
|
|
119
|
+
style?: any;
|
|
126
120
|
logo?: string;
|
|
127
121
|
logoSize?: number;
|
|
128
122
|
logoBackgroundColor?: string;
|
|
129
123
|
logoMargin?: number;
|
|
130
|
-
errorCorrectionLevel?: "L" | "M" | "Q" | "H";
|
|
131
|
-
margin?: number;
|
|
132
|
-
style?: any;
|
|
133
124
|
}
|
|
134
125
|
declare const QRCode: React.FC<QRCodeProps>;
|
|
135
126
|
|
package/dist/index.d.ts
CHANGED
|
@@ -114,22 +114,13 @@ declare const Header: React.FC<PageElementProps>;
|
|
|
114
114
|
declare const Footer: React.FC<PageElementProps>;
|
|
115
115
|
|
|
116
116
|
interface QRCodeProps {
|
|
117
|
-
|
|
117
|
+
dataURL: string;
|
|
118
118
|
size?: number;
|
|
119
|
-
|
|
120
|
-
dotsGradient?: [string, string];
|
|
121
|
-
backgroundColor?: string;
|
|
122
|
-
dotsType?: "square" | "dots" | "rounded" | "classy" | "classy-rounded" | "extra-rounded";
|
|
123
|
-
cornersType?: "square" | "dots" | "rounded" | "extra-rounded";
|
|
124
|
-
cornersSquareColor?: string;
|
|
125
|
-
cornersDotColor?: string;
|
|
119
|
+
style?: any;
|
|
126
120
|
logo?: string;
|
|
127
121
|
logoSize?: number;
|
|
128
122
|
logoBackgroundColor?: string;
|
|
129
123
|
logoMargin?: number;
|
|
130
|
-
errorCorrectionLevel?: "L" | "M" | "Q" | "H";
|
|
131
|
-
margin?: number;
|
|
132
|
-
style?: any;
|
|
133
124
|
}
|
|
134
125
|
declare const QRCode: React.FC<QRCodeProps>;
|
|
135
126
|
|
package/dist/index.js
CHANGED
|
@@ -506,140 +506,47 @@ var Footer = ({ children, style, fixed = false }) => {
|
|
|
506
506
|
|
|
507
507
|
// src/components/PDF/core/QRCode.tsx
|
|
508
508
|
import React8 from "react";
|
|
509
|
-
import { useEffect, useState, useRef } from "react";
|
|
510
509
|
import { Image as Image2, StyleSheet as StyleSheet8, View as View5 } from "@react-pdf/renderer";
|
|
511
|
-
import QRCodeStyling from "qr-code-styling";
|
|
512
510
|
var styles8 = StyleSheet8.create({
|
|
513
511
|
qrContainer: {
|
|
514
512
|
position: "relative",
|
|
515
513
|
alignItems: "center",
|
|
516
514
|
justifyContent: "center"
|
|
515
|
+
},
|
|
516
|
+
logo: {
|
|
517
|
+
position: "absolute",
|
|
518
|
+
zIndex: 2
|
|
519
|
+
},
|
|
520
|
+
logoBackground: {
|
|
521
|
+
position: "absolute",
|
|
522
|
+
zIndex: 1
|
|
517
523
|
}
|
|
518
524
|
});
|
|
519
525
|
var QRCode = ({
|
|
520
|
-
|
|
526
|
+
dataURL,
|
|
521
527
|
size = 150,
|
|
522
|
-
|
|
523
|
-
dotsGradient,
|
|
524
|
-
backgroundColor = "#ffffff",
|
|
525
|
-
dotsType = "square",
|
|
526
|
-
cornersType = "square",
|
|
527
|
-
cornersSquareColor,
|
|
528
|
-
cornersDotColor,
|
|
528
|
+
style,
|
|
529
529
|
logo,
|
|
530
530
|
logoSize = 30,
|
|
531
|
-
logoBackgroundColor,
|
|
532
|
-
logoMargin = 5
|
|
533
|
-
errorCorrectionLevel = "M",
|
|
534
|
-
margin = 10,
|
|
535
|
-
style
|
|
531
|
+
logoBackgroundColor = "#ffffff",
|
|
532
|
+
logoMargin = 5
|
|
536
533
|
}) => {
|
|
537
|
-
const [qrDataURL, setQrDataURL] = useState("");
|
|
538
|
-
const qrCodeRef = useRef(null);
|
|
539
|
-
useEffect(() => {
|
|
540
|
-
if (typeof window !== "undefined" && !qrCodeRef.current) {
|
|
541
|
-
qrCodeRef.current = new QRCodeStyling({
|
|
542
|
-
width: 300,
|
|
543
|
-
height: 300,
|
|
544
|
-
type: "canvas",
|
|
545
|
-
data: "Initial",
|
|
546
|
-
dotsOptions: {
|
|
547
|
-
type: "square",
|
|
548
|
-
color: "#000000"
|
|
549
|
-
},
|
|
550
|
-
cornersSquareOptions: {
|
|
551
|
-
type: "square"
|
|
552
|
-
},
|
|
553
|
-
cornersDotOptions: {
|
|
554
|
-
type: "square"
|
|
555
|
-
},
|
|
556
|
-
backgroundOptions: {
|
|
557
|
-
color: "#ffffff"
|
|
558
|
-
},
|
|
559
|
-
imageOptions: {
|
|
560
|
-
crossOrigin: "anonymous",
|
|
561
|
-
margin: 5
|
|
562
|
-
}
|
|
563
|
-
});
|
|
564
|
-
}
|
|
565
|
-
const generateQRCode = async () => {
|
|
566
|
-
if (typeof window === "undefined" || !qrCodeRef.current) return;
|
|
567
|
-
try {
|
|
568
|
-
const options = {
|
|
569
|
-
width: size,
|
|
570
|
-
height: size,
|
|
571
|
-
data: value,
|
|
572
|
-
margin,
|
|
573
|
-
qrOptions: {
|
|
574
|
-
errorCorrectionLevel
|
|
575
|
-
},
|
|
576
|
-
dotsOptions: {
|
|
577
|
-
type: dotsType,
|
|
578
|
-
color: dotsColor
|
|
579
|
-
},
|
|
580
|
-
cornersSquareOptions: {
|
|
581
|
-
type: cornersType,
|
|
582
|
-
color: cornersSquareColor || dotsColor
|
|
583
|
-
},
|
|
584
|
-
cornersDotOptions: {
|
|
585
|
-
type: cornersType,
|
|
586
|
-
color: cornersDotColor || dotsColor
|
|
587
|
-
},
|
|
588
|
-
backgroundOptions: {
|
|
589
|
-
color: backgroundColor
|
|
590
|
-
}
|
|
591
|
-
};
|
|
592
|
-
if (dotsGradient && dotsGradient.length === 2) {
|
|
593
|
-
options.dotsOptions.gradient = {
|
|
594
|
-
type: "linear",
|
|
595
|
-
colorStops: [
|
|
596
|
-
{ offset: 0, color: dotsGradient[0] },
|
|
597
|
-
{ offset: 1, color: dotsGradient[1] }
|
|
598
|
-
]
|
|
599
|
-
};
|
|
600
|
-
}
|
|
601
|
-
if (logo) {
|
|
602
|
-
options.image = logo;
|
|
603
|
-
options.imageOptions = {
|
|
604
|
-
hideBackgroundDots: true,
|
|
605
|
-
imageSize: logoSize / size,
|
|
606
|
-
crossOrigin: "anonymous",
|
|
607
|
-
margin: logoMargin
|
|
608
|
-
};
|
|
609
|
-
if (logoBackgroundColor) {
|
|
610
|
-
options.imageOptions.margin = logoMargin;
|
|
611
|
-
}
|
|
612
|
-
}
|
|
613
|
-
qrCodeRef.current.update(options);
|
|
614
|
-
const dataURL = await qrCodeRef.current.getDataUrl();
|
|
615
|
-
setQrDataURL(dataURL);
|
|
616
|
-
} catch (error) {
|
|
617
|
-
console.error("Error generating QR code:", error);
|
|
618
|
-
}
|
|
619
|
-
};
|
|
620
|
-
generateQRCode();
|
|
621
|
-
}, [
|
|
622
|
-
value,
|
|
623
|
-
size,
|
|
624
|
-
dotsColor,
|
|
625
|
-
dotsGradient,
|
|
626
|
-
backgroundColor,
|
|
627
|
-
dotsType,
|
|
628
|
-
cornersType,
|
|
629
|
-
cornersSquareColor,
|
|
630
|
-
cornersDotColor,
|
|
631
|
-
logo,
|
|
632
|
-
logoSize,
|
|
633
|
-
logoBackgroundColor,
|
|
634
|
-
logoMargin,
|
|
635
|
-
errorCorrectionLevel,
|
|
636
|
-
margin
|
|
637
|
-
]);
|
|
638
534
|
const containerStyle = __spreadValues(__spreadProps(__spreadValues({}, styles8.qrContainer), {
|
|
639
535
|
width: size,
|
|
640
536
|
height: size
|
|
641
537
|
}), style);
|
|
642
|
-
|
|
538
|
+
const logoContainerSize = logoSize + logoMargin * 2;
|
|
539
|
+
const logoBackgroundStyle = __spreadProps(__spreadValues({}, styles8.logoBackground), {
|
|
540
|
+
width: logoContainerSize,
|
|
541
|
+
height: logoContainerSize,
|
|
542
|
+
backgroundColor: logoBackgroundColor,
|
|
543
|
+
borderRadius: logoContainerSize / 2
|
|
544
|
+
});
|
|
545
|
+
const logoStyle = __spreadProps(__spreadValues({}, styles8.logo), {
|
|
546
|
+
width: logoSize,
|
|
547
|
+
height: logoSize
|
|
548
|
+
});
|
|
549
|
+
return /* @__PURE__ */ React8.createElement(View5, { style: containerStyle }, dataURL ? /* @__PURE__ */ React8.createElement(React8.Fragment, null, /* @__PURE__ */ React8.createElement(Image2, { src: dataURL || "/placeholder.svg", style: { width: size, height: size } }), logo && /* @__PURE__ */ React8.createElement(React8.Fragment, null, /* @__PURE__ */ React8.createElement(View5, { style: logoBackgroundStyle }), /* @__PURE__ */ React8.createElement(Image2, { src: logo || "/placeholder.svg", style: logoStyle }))) : null);
|
|
643
550
|
};
|
|
644
551
|
var QRCode_default = QRCode;
|
|
645
552
|
export {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-pdf-levelup",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.15",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"type": "module",
|
|
@@ -26,7 +26,6 @@
|
|
|
26
26
|
"lucide-react": "^0.477.0",
|
|
27
27
|
"next": "14.2.24",
|
|
28
28
|
"next-transpile-modules": "^10.0.1",
|
|
29
|
-
"qr-code-styling": "^1.9.1",
|
|
30
29
|
"qrcode": "^1.5.4",
|
|
31
30
|
"react": "^18",
|
|
32
31
|
"react-dom": "^18",
|