@adhese/sdk-devtools 0.11.6 → 0.12.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.
- package/CHANGELOG.md +20 -0
- package/dist/AdheseContext.js +19 -0
- package/dist/AdheseContext.js.map +1 -0
- package/dist/Devtools.hooks.js +24 -0
- package/dist/Devtools.hooks.js.map +1 -0
- package/dist/Devtools.js +79 -0
- package/dist/Devtools.js.map +1 -0
- package/dist/cjs/AdheseContext.cjs +19 -0
- package/dist/cjs/AdheseContext.cjs.map +1 -0
- package/dist/cjs/Devtools.cjs +79 -0
- package/dist/cjs/Devtools.cjs.map +1 -0
- package/dist/cjs/Devtools.hooks.cjs +24 -0
- package/dist/cjs/Devtools.hooks.cjs.map +1 -0
- package/dist/cjs/components/badge.cjs +27 -0
- package/dist/cjs/components/badge.cjs.map +1 -0
- package/dist/cjs/components/button.cjs +49 -0
- package/dist/cjs/components/button.cjs.map +1 -0
- package/dist/cjs/components/editSlot.cjs +110 -0
- package/dist/cjs/components/editSlot.cjs.map +1 -0
- package/dist/cjs/components/form.cjs +110 -0
- package/dist/cjs/components/form.cjs.map +1 -0
- package/dist/cjs/components/fronttailSettings.cjs +94 -0
- package/dist/cjs/components/fronttailSettings.cjs.map +1 -0
- package/dist/cjs/components/input.cjs +22 -0
- package/dist/cjs/components/input.cjs.map +1 -0
- package/dist/cjs/components/label.cjs +38 -0
- package/dist/cjs/components/label.cjs.map +1 -0
- package/dist/cjs/components/logTable.cjs +67 -0
- package/dist/cjs/components/logTable.cjs.map +1 -0
- package/dist/cjs/components/parametersTable.cjs +40 -0
- package/dist/cjs/components/parametersTable.cjs.map +1 -0
- package/dist/cjs/components/previewButton.cjs +19 -0
- package/dist/cjs/components/previewButton.cjs.map +1 -0
- package/dist/cjs/components/settings.cjs +10 -0
- package/dist/cjs/components/settings.cjs.map +1 -0
- package/dist/cjs/components/sheet.cjs +118 -0
- package/dist/cjs/components/sheet.cjs.map +1 -0
- package/dist/cjs/components/slotsTable.cjs +230 -0
- package/dist/cjs/components/slotsTable.cjs.map +1 -0
- package/dist/cjs/components/switch.cjs +45 -0
- package/dist/cjs/components/switch.cjs.map +1 -0
- package/dist/cjs/components/table.cjs +91 -0
- package/dist/cjs/components/table.cjs.map +1 -0
- package/dist/cjs/components/tabs.cjs +65 -0
- package/dist/cjs/components/tabs.cjs.map +1 -0
- package/dist/cjs/devtools.composables.cjs +116 -0
- package/dist/cjs/devtools.composables.cjs.map +1 -0
- package/dist/cjs/main.cjs +16 -0
- package/dist/cjs/main.cjs.map +1 -0
- package/dist/cjs/modifiedSlots.store.cjs +63 -0
- package/dist/cjs/modifiedSlots.store.cjs.map +1 -0
- package/dist/cjs/package.json.cjs +7 -0
- package/dist/cjs/package.json.cjs.map +1 -0
- package/dist/cjs/sdkDevtools.cjs +17 -0
- package/dist/cjs/sdkDevtools.cjs.map +1 -0
- package/dist/cjs/utils.cjs +9 -0
- package/dist/cjs/utils.cjs.map +1 -0
- package/dist/components/badge.js +27 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/button.js +49 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/editSlot.js +110 -0
- package/dist/components/editSlot.js.map +1 -0
- package/dist/components/form.js +110 -0
- package/dist/components/form.js.map +1 -0
- package/dist/components/fronttailSettings.js +94 -0
- package/dist/components/fronttailSettings.js.map +1 -0
- package/dist/components/input.js +22 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/label.js +21 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/logTable.js +67 -0
- package/dist/components/logTable.js.map +1 -0
- package/dist/components/parametersTable.js +40 -0
- package/dist/components/parametersTable.js.map +1 -0
- package/dist/components/previewButton.js +19 -0
- package/dist/components/previewButton.js.map +1 -0
- package/dist/components/settings.js +10 -0
- package/dist/components/settings.js.map +1 -0
- package/dist/components/sheet.js +101 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/slotsTable.js +230 -0
- package/dist/components/slotsTable.js.map +1 -0
- package/dist/components/switch.js +28 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/table.js +91 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/tabs.js +48 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/devtools.composables.js +116 -0
- package/dist/devtools.composables.js.map +1 -0
- package/dist/main.js +16 -0
- package/dist/main.js.map +1 -0
- package/dist/modifiedSlots.store.js +63 -0
- package/dist/modifiedSlots.store.js.map +1 -0
- package/dist/package.json.js +7 -0
- package/dist/package.json.js.map +1 -0
- package/dist/sdkDevtools.d.ts +11 -0
- package/dist/sdkDevtools.js +17 -0
- package/dist/sdkDevtools.js.map +1 -0
- package/dist/utils.js +9 -0
- package/dist/utils.js.map +1 -0
- package/package.json +11 -8
- package/dist/devtools-Cbms1xWf.cjs +0 -816
- package/dist/devtools-Cbms1xWf.cjs.map +0 -1
- package/dist/devtools-CjRcI3Xd.js +0 -797
- package/dist/devtools-CjRcI3Xd.js.map +0 -1
- package/dist/index.cjs +0 -47
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.ts +0 -14
- package/dist/index.js +0 -47
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const SheetPrimitive = require("@radix-ui/react-dialog");
|
|
5
|
+
const reactIcons = require("@radix-ui/react-icons");
|
|
6
|
+
const classVarianceAuthority = require("class-variance-authority");
|
|
7
|
+
const react = require("react");
|
|
8
|
+
const utils = require("../utils.cjs");
|
|
9
|
+
function _interopNamespaceDefault(e) {
|
|
10
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
11
|
+
if (e) {
|
|
12
|
+
for (const k in e) {
|
|
13
|
+
if (k !== "default") {
|
|
14
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
15
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
get: () => e[k]
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
n.default = e;
|
|
23
|
+
return Object.freeze(n);
|
|
24
|
+
}
|
|
25
|
+
const SheetPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(SheetPrimitive);
|
|
26
|
+
const Sheet = SheetPrimitive__namespace.Root;
|
|
27
|
+
const SheetTrigger = SheetPrimitive__namespace.Trigger;
|
|
28
|
+
const SheetPortal = SheetPrimitive__namespace.Portal;
|
|
29
|
+
const SheetOverlay = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
30
|
+
SheetPrimitive__namespace.Overlay,
|
|
31
|
+
{
|
|
32
|
+
className: utils.cn(
|
|
33
|
+
"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
34
|
+
className
|
|
35
|
+
),
|
|
36
|
+
...props,
|
|
37
|
+
ref
|
|
38
|
+
}
|
|
39
|
+
));
|
|
40
|
+
SheetOverlay.displayName = SheetPrimitive__namespace.Overlay.displayName;
|
|
41
|
+
const sheetVariants = classVarianceAuthority.cva(
|
|
42
|
+
"fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
|
|
43
|
+
{
|
|
44
|
+
variants: {
|
|
45
|
+
side: {
|
|
46
|
+
top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
|
|
47
|
+
bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
|
|
48
|
+
left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
|
|
49
|
+
right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
defaultVariants: {
|
|
53
|
+
side: "right"
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
);
|
|
57
|
+
const SheetContent = react.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(SheetPortal, { children: [
|
|
58
|
+
/* @__PURE__ */ jsxRuntime.jsx(SheetOverlay, {}),
|
|
59
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
60
|
+
SheetPrimitive__namespace.Content,
|
|
61
|
+
{
|
|
62
|
+
ref,
|
|
63
|
+
className: utils.cn(sheetVariants({ side }), className),
|
|
64
|
+
...props,
|
|
65
|
+
children: [
|
|
66
|
+
children,
|
|
67
|
+
/* @__PURE__ */ jsxRuntime.jsxs(SheetPrimitive__namespace.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
|
|
68
|
+
/* @__PURE__ */ jsxRuntime.jsx(reactIcons.Cross2Icon, { className: "h-4 w-4" }),
|
|
69
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
|
|
70
|
+
] })
|
|
71
|
+
]
|
|
72
|
+
}
|
|
73
|
+
)
|
|
74
|
+
] }));
|
|
75
|
+
SheetContent.displayName = SheetPrimitive__namespace.Content.displayName;
|
|
76
|
+
function SheetHeader({
|
|
77
|
+
className,
|
|
78
|
+
...props
|
|
79
|
+
}) {
|
|
80
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
81
|
+
"div",
|
|
82
|
+
{
|
|
83
|
+
className: utils.cn(
|
|
84
|
+
"flex flex-col space-y-2 text-center sm:text-left",
|
|
85
|
+
className
|
|
86
|
+
),
|
|
87
|
+
...props
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
|
+
SheetHeader.displayName = "SheetHeader";
|
|
92
|
+
const SheetTitle = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
93
|
+
SheetPrimitive__namespace.Title,
|
|
94
|
+
{
|
|
95
|
+
ref,
|
|
96
|
+
className: utils.cn("text-lg font-semibold text-foreground", className),
|
|
97
|
+
...props
|
|
98
|
+
}
|
|
99
|
+
));
|
|
100
|
+
SheetTitle.displayName = SheetPrimitive__namespace.Title.displayName;
|
|
101
|
+
const SheetDescription = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
102
|
+
SheetPrimitive__namespace.Description,
|
|
103
|
+
{
|
|
104
|
+
ref,
|
|
105
|
+
className: utils.cn("text-sm text-muted-foreground", className),
|
|
106
|
+
...props
|
|
107
|
+
}
|
|
108
|
+
));
|
|
109
|
+
SheetDescription.displayName = SheetPrimitive__namespace.Description.displayName;
|
|
110
|
+
exports.Sheet = Sheet;
|
|
111
|
+
exports.SheetContent = SheetContent;
|
|
112
|
+
exports.SheetDescription = SheetDescription;
|
|
113
|
+
exports.SheetHeader = SheetHeader;
|
|
114
|
+
exports.SheetOverlay = SheetOverlay;
|
|
115
|
+
exports.SheetPortal = SheetPortal;
|
|
116
|
+
exports.SheetTitle = SheetTitle;
|
|
117
|
+
exports.SheetTrigger = SheetTrigger;
|
|
118
|
+
//# sourceMappingURL=sheet.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sheet.cjs","sources":["../../../src/components/sheet.tsx"],"sourcesContent":["/* eslint-disable ts/naming-convention */\nimport * as SheetPrimitive from '@radix-ui/react-dialog';\nimport { Cross2Icon } from '@radix-ui/react-icons';\nimport { type VariantProps, cva } from 'class-variance-authority';\nimport { type ComponentPropsWithoutRef, type ElementRef, type HTMLAttributes, type ReactElement, forwardRef } from 'react';\nimport { cn } from '../utils';\n\nconst Sheet = SheetPrimitive.Root;\n\nconst SheetTrigger = SheetPrimitive.Trigger;\n\nconst SheetClose = SheetPrimitive.Close;\n\nconst SheetPortal = SheetPrimitive.Portal;\n\nconst SheetOverlay = forwardRef<\n ElementRef<typeof SheetPrimitive.Overlay>,\n ComponentPropsWithoutRef<typeof SheetPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <SheetPrimitive.Overlay\n className={cn(\n 'fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',\n className,\n )}\n {...props}\n ref={ref}\n />\n));\nSheetOverlay.displayName = SheetPrimitive.Overlay.displayName;\n\nconst sheetVariants = cva(\n 'fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500',\n {\n variants: {\n side: {\n top: 'inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top',\n bottom:\n 'inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom',\n left: 'inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm',\n right:\n 'inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm',\n },\n },\n defaultVariants: {\n side: 'right',\n },\n },\n);\n\ninterface SheetContentProps\n extends ComponentPropsWithoutRef<typeof SheetPrimitive.Content>,\n VariantProps<typeof sheetVariants> {}\n\nconst SheetContent = forwardRef<\n ElementRef<typeof SheetPrimitive.Content>,\n SheetContentProps\n>(({ side = 'right', className, children, ...props }, ref) => (\n <SheetPortal>\n <SheetOverlay />\n <SheetPrimitive.Content\n ref={ref}\n className={cn(sheetVariants({ side }), className)}\n {...props}\n >\n {children}\n <SheetPrimitive.Close className=\"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary\">\n <Cross2Icon className=\"h-4 w-4\" />\n <span className=\"sr-only\">Close</span>\n </SheetPrimitive.Close>\n </SheetPrimitive.Content>\n </SheetPortal>\n));\nSheetContent.displayName = SheetPrimitive.Content.displayName;\n\nfunction SheetHeader({\n className,\n ...props\n}: HTMLAttributes<HTMLDivElement>): ReactElement {\n return (\n <div\n className={cn(\n 'flex flex-col space-y-2 text-center sm:text-left',\n className,\n )}\n {...props}\n />\n );\n}\nSheetHeader.displayName = 'SheetHeader';\n\nfunction SheetFooter({\n className,\n ...props\n}: HTMLAttributes<HTMLDivElement>): ReactElement {\n return (\n <div\n className={cn(\n 'flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2',\n className,\n )}\n {...props}\n />\n );\n}\nSheetFooter.displayName = 'SheetFooter';\n\nconst SheetTitle = forwardRef<\n ElementRef<typeof SheetPrimitive.Title>,\n ComponentPropsWithoutRef<typeof SheetPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <SheetPrimitive.Title\n ref={ref}\n className={cn('text-lg font-semibold text-foreground', className)}\n {...props}\n />\n));\nSheetTitle.displayName = SheetPrimitive.Title.displayName;\n\nconst SheetDescription = forwardRef<\n ElementRef<typeof SheetPrimitive.Description>,\n ComponentPropsWithoutRef<typeof SheetPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <SheetPrimitive.Description\n ref={ref}\n className={cn('text-sm text-muted-foreground', className)}\n {...props}\n />\n));\nSheetDescription.displayName = SheetPrimitive.Description.displayName;\n\nexport {\n Sheet,\n SheetPortal,\n SheetOverlay,\n SheetTrigger,\n SheetClose,\n SheetContent,\n SheetHeader,\n SheetFooter,\n SheetTitle,\n SheetDescription,\n};\n"],"names":["SheetPrimitive","forwardRef","jsx","cn","cva","jsxs","Cross2Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM,QAAQA,0BAAe;AAE7B,MAAM,eAAeA,0BAAe;AAIpC,MAAM,cAAcA,0BAAe;AAE7B,MAAA,eAAeC,iBAGnB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAACF,0BAAe;AAAA,EAAf;AAAA,IACC,WAAWG,MAAA;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA,IACJ;AAAA,EAAA;AACF,CACD;AACD,aAAa,cAAcH,0BAAe,QAAQ;AAElD,MAAM,gBAAgBI,uBAAA;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,KAAK;AAAA,QACL,QACE;AAAA,QACF,MAAM;AAAA,QACN,OACE;AAAA,MACJ;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAMA,MAAM,eAAeH,MAAAA,WAGnB,CAAC,EAAE,OAAO,SAAS,WAAW,UAAU,GAAG,MAAS,GAAA,wCACnD,aACC,EAAA,UAAA;AAAA,EAAAC,2BAAA,IAAC,cAAa,EAAA;AAAA,EACdG,2BAAA;AAAA,IAACL,0BAAe;AAAA,IAAf;AAAA,MACC;AAAA,MACA,WAAWG,MAAG,GAAA,cAAc,EAAE,KAAM,CAAA,GAAG,SAAS;AAAA,MAC/C,GAAG;AAAA,MAEH,UAAA;AAAA,QAAA;AAAA,QACAE,2BAAA,KAAAL,0BAAe,OAAf,EAAqB,WAAU,4OAC9B,UAAA;AAAA,UAACE,2BAAAA,IAAAI,WAAA,YAAA,EAAW,WAAU,UAAU,CAAA;AAAA,UAC/BJ,2BAAA,IAAA,QAAA,EAAK,WAAU,WAAU,UAAK,SAAA;AAAA,QAAA,GACjC;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAAA,EAAA,CACF,CACD;AACD,aAAa,cAAcF,0BAAe,QAAQ;AAElD,SAAS,YAAY;AAAA,EACnB;AAAA,EACA,GAAG;AACL,GAAiD;AAE7C,SAAAE,2BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,MAAA;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AACA,YAAY,cAAc;AAkBpB,MAAA,aAAaF,iBAGjB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAACF,0BAAe;AAAA,EAAf;AAAA,IACC;AAAA,IACA,WAAWG,MAAAA,GAAG,yCAAyC,SAAS;AAAA,IAC/D,GAAG;AAAA,EAAA;AACN,CACD;AACD,WAAW,cAAcH,0BAAe,MAAM;AAExC,MAAA,mBAAmBC,iBAGvB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAACF,0BAAe;AAAA,EAAf;AAAA,IACC;AAAA,IACA,WAAWG,MAAAA,GAAG,iCAAiC,SAAS;AAAA,IACvD,GAAG;AAAA,EAAA;AACN,CACD;AACD,iBAAiB,cAAcH,0BAAe,YAAY;;;;;;;;;"}
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const react = require("react");
|
|
5
|
+
const sdkShared = require("@adhese/sdk-shared");
|
|
6
|
+
const reactIcons = require("@radix-ui/react-icons");
|
|
7
|
+
const utils = require("../utils.cjs");
|
|
8
|
+
const AdheseContext = require("../AdheseContext.cjs");
|
|
9
|
+
const modifiedSlots_store = require("../modifiedSlots.store.cjs");
|
|
10
|
+
const table = require("./table.cjs");
|
|
11
|
+
const badge = require("./badge.cjs");
|
|
12
|
+
const button = require("./button.cjs");
|
|
13
|
+
const sheet = require("./sheet.cjs");
|
|
14
|
+
const editSlot = require("./editSlot.cjs");
|
|
15
|
+
const slotIndexBadgeClasses = [
|
|
16
|
+
"bg-blue-500 hover:bg-blue-500",
|
|
17
|
+
"bg-amber-500 hover:bg-amber-500",
|
|
18
|
+
"bg-green-500 hover:bg-green-500",
|
|
19
|
+
"bg-red-500 hover:bg-red-500",
|
|
20
|
+
"bg-purple-500 hover:bg-purple-500",
|
|
21
|
+
"bg-cyan-500 hover:bg-cyan-500",
|
|
22
|
+
"bg-pink-500 hover:bg-pink-500"
|
|
23
|
+
];
|
|
24
|
+
const renderStatusMap = {
|
|
25
|
+
initializing: "Initializing",
|
|
26
|
+
initialized: "Initialized",
|
|
27
|
+
loading: "Loading",
|
|
28
|
+
loaded: "Loaded",
|
|
29
|
+
rendering: "Rendering",
|
|
30
|
+
rendered: "Rendered",
|
|
31
|
+
empty: "Empty",
|
|
32
|
+
error: "Error"
|
|
33
|
+
};
|
|
34
|
+
function SlotsTable() {
|
|
35
|
+
const [slots, setSlots] = react.useState([]);
|
|
36
|
+
const adheseContext = AdheseContext.useAdheseContext();
|
|
37
|
+
react.useEffect(() => {
|
|
38
|
+
if (!adheseContext)
|
|
39
|
+
return;
|
|
40
|
+
const disposeWatcher = sdkShared.watch(() => adheseContext.slots, (newSlots) => {
|
|
41
|
+
setSlots(Array.from(newSlots.values()));
|
|
42
|
+
}, { immediate: true, deep: true });
|
|
43
|
+
return () => {
|
|
44
|
+
disposeWatcher();
|
|
45
|
+
};
|
|
46
|
+
}, [adheseContext]);
|
|
47
|
+
const modifiedSlots = modifiedSlots_store.useModifiedSlots();
|
|
48
|
+
const formattedSlots = react.useMemo(() => slots.filter((slot) => {
|
|
49
|
+
var _a, _b;
|
|
50
|
+
return !((_b = (_a = slot.pluginOptions) == null ? void 0 : _a.devtools) == null ? void 0 : _b.hijackedSlot);
|
|
51
|
+
}).map((slot) => {
|
|
52
|
+
var _a;
|
|
53
|
+
const hijackedSlotOptions = modifiedSlots.slots.get(slot.name);
|
|
54
|
+
const hijackedSlot = adheseContext && hijackedSlotOptions && ((_a = adheseContext.get) == null ? void 0 : _a.call(adheseContext, sdkShared.generateName(adheseContext.location, hijackedSlotOptions.format, hijackedSlotOptions.slot)));
|
|
55
|
+
return {
|
|
56
|
+
...hijackedSlot ?? slot,
|
|
57
|
+
parameters: Array.from((hijackedSlot ?? slot).parameters.entries()),
|
|
58
|
+
hijackedSlot,
|
|
59
|
+
originalSlot: slot
|
|
60
|
+
};
|
|
61
|
+
}).toSorted((a, b) => {
|
|
62
|
+
var _a, _b;
|
|
63
|
+
const offsetA = ((_a = a.element) == null ? void 0 : _a.getBoundingClientRect().top) ?? 0;
|
|
64
|
+
const offsetB = ((_b = b.element) == null ? void 0 : _b.getBoundingClientRect().top) ?? 0;
|
|
65
|
+
return offsetA - offsetB;
|
|
66
|
+
}), [slots]);
|
|
67
|
+
const slotParametersExist = react.useMemo(() => formattedSlots.some((formattedSlot) => formattedSlot.parameters.length > 0), [formattedSlots]);
|
|
68
|
+
const previewExist = react.useMemo(() => formattedSlots.some((formattedSlot) => {
|
|
69
|
+
var _a;
|
|
70
|
+
return (_a = formattedSlot.data) == null ? void 0 : _a.preview;
|
|
71
|
+
}), [formattedSlots]);
|
|
72
|
+
const slotCodeExists = react.useMemo(() => formattedSlots.some((formattedSlot) => formattedSlot.slot), [formattedSlots]);
|
|
73
|
+
const origins = react.useMemo(() => {
|
|
74
|
+
const set = /* @__PURE__ */ new Set();
|
|
75
|
+
for (const slot of formattedSlots) {
|
|
76
|
+
const { data } = slot;
|
|
77
|
+
if (data)
|
|
78
|
+
set.add(data.origin);
|
|
79
|
+
}
|
|
80
|
+
return Array.from(set);
|
|
81
|
+
}, [formattedSlots]);
|
|
82
|
+
return adheseContext && formattedSlots.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(table.Table, { children: [
|
|
83
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHeader, { children: /* @__PURE__ */ jsxRuntime.jsxs(table.TableRow, { children: [
|
|
84
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Name" }),
|
|
85
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Location" }),
|
|
86
|
+
slotCodeExists && /* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Slot" }),
|
|
87
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Format" }),
|
|
88
|
+
origins.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Origin" }),
|
|
89
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Render Status" }),
|
|
90
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Campaign ID" }),
|
|
91
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Booking ID" }),
|
|
92
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Creative ID" }),
|
|
93
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Traffic ID" }),
|
|
94
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Creative type" }),
|
|
95
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Impression tracked" }),
|
|
96
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Viewability tracked" }),
|
|
97
|
+
slotParametersExist && /* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Parameters" }),
|
|
98
|
+
previewExist && /* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Preview" }),
|
|
99
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Controls" })
|
|
100
|
+
] }) }),
|
|
101
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableBody, { children: formattedSlots.map(({
|
|
102
|
+
data,
|
|
103
|
+
name,
|
|
104
|
+
format,
|
|
105
|
+
location,
|
|
106
|
+
status,
|
|
107
|
+
isViewabilityTracked,
|
|
108
|
+
isImpressionTracked,
|
|
109
|
+
element,
|
|
110
|
+
parameters,
|
|
111
|
+
slot,
|
|
112
|
+
hijackedSlot,
|
|
113
|
+
originalSlot
|
|
114
|
+
}, index) => /* @__PURE__ */ jsxRuntime.jsx(react.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs(table.TableRow, { id: name, children: [
|
|
115
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { className: "font-medium", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
116
|
+
"button",
|
|
117
|
+
{
|
|
118
|
+
onClick: () => {
|
|
119
|
+
if (element) {
|
|
120
|
+
element.scrollIntoView();
|
|
121
|
+
element.style.outline = "solid 5px red";
|
|
122
|
+
setTimeout(() => {
|
|
123
|
+
element.style.outline = "";
|
|
124
|
+
}, 1e3);
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
className: "flex flex-col gap-1",
|
|
128
|
+
children: [
|
|
129
|
+
/* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { className: utils.cn(slotIndexBadgeClasses[index % slotIndexBadgeClasses.length], "text-white"), children: name }),
|
|
130
|
+
hijackedSlot && /* @__PURE__ */ jsxRuntime.jsx("del", { className: "text-xs text-muted-foreground", children: originalSlot.name })
|
|
131
|
+
]
|
|
132
|
+
}
|
|
133
|
+
) }),
|
|
134
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: location }),
|
|
135
|
+
slotCodeExists && /* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: slot ?? "" }),
|
|
136
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: !(data == null ? void 0 : data.adFormat) || (data == null ? void 0 : data.adFormat) === format ? format : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
137
|
+
/* @__PURE__ */ jsxRuntime.jsx("del", { className: "text-red-300 italic", children: format }),
|
|
138
|
+
/* @__PURE__ */ jsxRuntime.jsx("ins", { className: "no-underline text-green-700", children: data == null ? void 0 : data.adFormat })
|
|
139
|
+
] }) }),
|
|
140
|
+
origins.length > 1 && /* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: (data == null ? void 0 : data.origin) && /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { className: utils.cn(slotIndexBadgeClasses[origins.indexOf(data.origin) % slotIndexBadgeClasses.length], "text-white"), children: data.origin.toLowerCase() }) }),
|
|
141
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { variant: "outline", className: utils.cn(status === "error" ? "bg-red-500 text-red-50" : ""), children: renderStatusMap[status] }) }),
|
|
142
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: (data == null ? void 0 : data.orderId) && (data == null ? void 0 : data.orderId) !== "0" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
143
|
+
"a",
|
|
144
|
+
{
|
|
145
|
+
href: `https://${adheseContext.options.account}.adhese.org/campaigns.html#campaignDetail/editCampaign/${data.orderId}`,
|
|
146
|
+
target: "_blank",
|
|
147
|
+
referrerPolicy: "no-referrer",
|
|
148
|
+
className: utils.cn(button.buttonVariants({
|
|
149
|
+
variant: "ghost",
|
|
150
|
+
size: "sm"
|
|
151
|
+
})),
|
|
152
|
+
children: data.orderId
|
|
153
|
+
}
|
|
154
|
+
) : "-" }),
|
|
155
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: (data == null ? void 0 : data.adspaceId) && (data == null ? void 0 : data.adspaceId) !== "0" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
156
|
+
"a",
|
|
157
|
+
{
|
|
158
|
+
href: `https://${adheseContext.options.account}.adhese.org/campaigns.html#campaignDetail/bookingDetail/${data.adspaceId}/${data.orderId}`,
|
|
159
|
+
target: "_blank",
|
|
160
|
+
referrerPolicy: "no-referrer",
|
|
161
|
+
className: utils.cn(button.buttonVariants({
|
|
162
|
+
variant: "ghost",
|
|
163
|
+
size: "sm"
|
|
164
|
+
})),
|
|
165
|
+
children: data.adspaceId
|
|
166
|
+
}
|
|
167
|
+
) : "-" }),
|
|
168
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: (data == null ? void 0 : data.libId) && (data == null ? void 0 : data.orderId) !== "0" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
169
|
+
"a",
|
|
170
|
+
{
|
|
171
|
+
href: `https://${adheseContext.options.account}.adhese.org/campaigns.html#campaignDetail/creativeDetail/${data.libId}/${data.orderId}`,
|
|
172
|
+
target: "_blank",
|
|
173
|
+
referrerPolicy: "no-referrer",
|
|
174
|
+
className: utils.cn(button.buttonVariants({
|
|
175
|
+
variant: "ghost",
|
|
176
|
+
size: "sm"
|
|
177
|
+
})),
|
|
178
|
+
children: data.libId
|
|
179
|
+
}
|
|
180
|
+
) : "-" }),
|
|
181
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: (data == null ? void 0 : data.id) ?? "-" }),
|
|
182
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: (data == null ? void 0 : data.ext) ? /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { variant: "outline", children: data.ext }) : "-" }),
|
|
183
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: isImpressionTracked ? /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { className: "bg-green-100 text-green-900 hover:bg-green-100", children: "Yes" }) : /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { variant: "secondary", children: "No" }) }),
|
|
184
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: isViewabilityTracked ? /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { className: "bg-green-100 text-green-900 hover:bg-green-100", children: "Yes" }) : /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { variant: "secondary", children: "No" }) }),
|
|
185
|
+
slotParametersExist && /* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: parameters.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(sheet.Sheet, { children: [
|
|
186
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
187
|
+
sheet.SheetTrigger,
|
|
188
|
+
{
|
|
189
|
+
className: button.buttonVariants({
|
|
190
|
+
variant: "secondary",
|
|
191
|
+
size: "sm"
|
|
192
|
+
}),
|
|
193
|
+
children: "Show"
|
|
194
|
+
}
|
|
195
|
+
),
|
|
196
|
+
/* @__PURE__ */ jsxRuntime.jsxs(sheet.SheetContent, { className: "bg-white flex flex-col gap-4", children: [
|
|
197
|
+
/* @__PURE__ */ jsxRuntime.jsx(sheet.SheetHeader, { children: /* @__PURE__ */ jsxRuntime.jsx(sheet.SheetTitle, { children: "Parameters" }) }),
|
|
198
|
+
/* @__PURE__ */ jsxRuntime.jsxs(table.Table, { children: [
|
|
199
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHeader, { children: /* @__PURE__ */ jsxRuntime.jsxs(table.TableRow, { children: [
|
|
200
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Key" }),
|
|
201
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableHead, { children: "Value" })
|
|
202
|
+
] }) }),
|
|
203
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableBody, { children: parameters.map(([parameterName, value]) => /* @__PURE__ */ jsxRuntime.jsxs(table.TableRow, { children: [
|
|
204
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { variant: "outline", children: parameterName }) }),
|
|
205
|
+
/* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: Array.isArray(value) ? /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "flex gap-1", children: value.map((item, paramIndex) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { variant: "outline", children: item }) }, paramIndex)) }) : /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { variant: "outline", children: value }) })
|
|
206
|
+
] }, parameterName)) })
|
|
207
|
+
] })
|
|
208
|
+
] })
|
|
209
|
+
] }) }),
|
|
210
|
+
previewExist && /* @__PURE__ */ jsxRuntime.jsx(table.TableCell, { children: (data == null ? void 0 : data.preview) && /* @__PURE__ */ jsxRuntime.jsx(badge.Badge, { className: "bg-amber-400 text-amber-950 hover:bg-amber-400", children: "PREVIEW" }) }),
|
|
211
|
+
/* @__PURE__ */ jsxRuntime.jsxs(table.TableCell, { className: "flex gap-1", children: [
|
|
212
|
+
/* @__PURE__ */ jsxRuntime.jsx(editSlot.EditSlot, { id: originalSlot.id }),
|
|
213
|
+
modifiedSlots.slots.has(originalSlot.name) && /* @__PURE__ */ jsxRuntime.jsx(
|
|
214
|
+
button.Button,
|
|
215
|
+
{
|
|
216
|
+
onClick: () => {
|
|
217
|
+
modifiedSlots.remove(originalSlot.name);
|
|
218
|
+
},
|
|
219
|
+
variant: "ghost",
|
|
220
|
+
size: "sm",
|
|
221
|
+
title: "Reset",
|
|
222
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(reactIcons.ResetIcon, {})
|
|
223
|
+
}
|
|
224
|
+
)
|
|
225
|
+
] })
|
|
226
|
+
] }) }, originalSlot.id)) })
|
|
227
|
+
] }) : /* @__PURE__ */ jsxRuntime.jsx("p", { children: "No slots available" });
|
|
228
|
+
}
|
|
229
|
+
exports.SlotsTable = SlotsTable;
|
|
230
|
+
//# sourceMappingURL=slotsTable.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slotsTable.cjs","sources":["../../../src/components/slotsTable.tsx"],"sourcesContent":["import { Fragment, type ReactElement, useEffect, useMemo, useState } from 'react';\nimport type { AdheseSlot } from '@adhese/sdk';\nimport { type UnwrapRef, generateName, watch } from '@adhese/sdk-shared';\nimport { ResetIcon } from '@radix-ui/react-icons';\nimport { cn } from '../utils';\nimport { useAdheseContext } from '../AdheseContext';\nimport { useModifiedSlots } from '../modifiedSlots.store';\nimport type { DevtoolsSlotPluginOptions } from '../devtools.composables';\nimport { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from './table';\nimport { Badge } from './badge';\nimport { Button, buttonVariants } from './button';\nimport { Sheet, SheetContent, SheetHeader, SheetTitle, SheetTrigger } from './sheet';\nimport { EditSlot } from './editSlot';\n\nconst slotIndexBadgeClasses = [\n 'bg-blue-500 hover:bg-blue-500',\n 'bg-amber-500 hover:bg-amber-500',\n 'bg-green-500 hover:bg-green-500',\n 'bg-red-500 hover:bg-red-500',\n 'bg-purple-500 hover:bg-purple-500',\n 'bg-cyan-500 hover:bg-cyan-500',\n 'bg-pink-500 hover:bg-pink-500',\n] as const;\n\nconst renderStatusMap = {\n initializing: 'Initializing',\n initialized: 'Initialized',\n loading: 'Loading',\n loaded: 'Loaded',\n rendering: 'Rendering',\n rendered: 'Rendered',\n empty: 'Empty',\n error: 'Error',\n} as const satisfies Record<UnwrapRef<AdheseSlot['status']>, string>;\n\n// eslint-disable-next-line ts/naming-convention\nexport function SlotsTable(): ReactElement {\n const [slots, setSlots] = useState<ReadonlyArray<AdheseSlot>>([]);\n\n const adheseContext = useAdheseContext();\n\n useEffect(() => {\n if (!adheseContext)\n return;\n\n const disposeWatcher = watch(() => adheseContext.slots, (newSlots) => {\n setSlots(Array.from(newSlots.values()));\n }, { immediate: true, deep: true });\n\n return (): void => {\n disposeWatcher();\n };\n }, [adheseContext]);\n const modifiedSlots = useModifiedSlots();\n\n const formattedSlots = useMemo(() => slots\n .filter(slot => !(slot.pluginOptions?.devtools as DevtoolsSlotPluginOptions)?.hijackedSlot).map((slot) => {\n const hijackedSlotOptions = modifiedSlots.slots.get(slot.name);\n const hijackedSlot = (adheseContext && hijackedSlotOptions) && adheseContext.get?.(generateName(adheseContext.location, hijackedSlotOptions.format, hijackedSlotOptions.slot));\n\n return ({\n ...(hijackedSlot ?? slot),\n parameters: Array.from((hijackedSlot ?? slot).parameters.entries()),\n hijackedSlot,\n originalSlot: slot,\n });\n })\n .toSorted((a, b) => {\n const offsetA = a.element?.getBoundingClientRect().top ?? 0;\n const offsetB = b.element?.getBoundingClientRect().top ?? 0;\n\n return offsetA - offsetB;\n }), [slots]);\n\n const slotParametersExist = useMemo(() => formattedSlots.some(formattedSlot => formattedSlot.parameters.length > 0), [formattedSlots]);\n const previewExist = useMemo(() => formattedSlots.some(formattedSlot => formattedSlot.data?.preview), [formattedSlots]);\n const slotCodeExists = useMemo(() => formattedSlots.some(formattedSlot => formattedSlot.slot), [formattedSlots]);\n\n const origins: ReadonlyArray<string> = useMemo(() => {\n const set = new Set<string>();\n\n for (const slot of formattedSlots) {\n const { data } = slot;\n\n if (data)\n set.add(data.origin);\n }\n\n return Array.from(set);\n }, [formattedSlots]);\n\n return (\n adheseContext && (formattedSlots.length > 0)\n ? (\n <Table>\n <TableHeader>\n <TableRow>\n <TableHead>Name</TableHead>\n <TableHead>Location</TableHead>\n {slotCodeExists && <TableHead>Slot</TableHead>}\n <TableHead>Format</TableHead>\n {origins.length > 1 && <TableHead>Origin</TableHead>}\n <TableHead>Render Status</TableHead>\n <TableHead>Campaign ID</TableHead>\n <TableHead>Booking ID</TableHead>\n <TableHead>Creative ID</TableHead>\n <TableHead>Traffic ID</TableHead>\n <TableHead>Creative type</TableHead>\n <TableHead>Impression tracked</TableHead>\n <TableHead>Viewability tracked</TableHead>\n {\n slotParametersExist && <TableHead>Parameters</TableHead>\n }\n {\n previewExist && <TableHead>Preview</TableHead>\n }\n <TableHead>Controls</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {formattedSlots.map(({\n data,\n name,\n format,\n location,\n status,\n isViewabilityTracked,\n isImpressionTracked,\n element,\n parameters,\n slot,\n hijackedSlot,\n originalSlot,\n }, index) => (\n <Fragment key={originalSlot.id}>\n <TableRow id={name}>\n <TableCell className=\"font-medium\">\n <button\n onClick={() => {\n if (element) {\n element.scrollIntoView();\n element.style.outline = 'solid 5px red';\n\n setTimeout(() => {\n element.style.outline = '';\n }, 1000);\n }\n }}\n className=\"flex flex-col gap-1\"\n >\n <Badge className={cn(slotIndexBadgeClasses[index % slotIndexBadgeClasses.length], 'text-white')}>\n {name}\n </Badge>\n {hijackedSlot && <del className=\"text-xs text-muted-foreground\">{originalSlot.name}</del>}\n </button>\n </TableCell>\n <TableCell>{location}</TableCell>\n {slotCodeExists && <TableCell>{slot ?? ''}</TableCell>}\n <TableCell>\n {!data?.adFormat || data?.adFormat === format\n ? format\n : (\n <>\n <del className=\"text-red-300 italic\">{format}</del>\n <ins className=\"no-underline text-green-700\">{data?.adFormat}</ins>\n </>\n )}\n </TableCell>\n {origins.length > 1 && (\n <TableCell>\n {data?.origin && <Badge className={cn(slotIndexBadgeClasses[origins.indexOf(data.origin) % slotIndexBadgeClasses.length], 'text-white')}>{data.origin.toLowerCase()}</Badge>}\n </TableCell>\n )}\n <TableCell>\n <Badge variant=\"outline\" className={cn(status === 'error' ? 'bg-red-500 text-red-50' : '')}>\n {renderStatusMap[status]}\n </Badge>\n </TableCell>\n <TableCell>\n {data?.orderId && data?.orderId !== '0'\n ? (\n <a\n href={`https://${adheseContext.options.account}.adhese.org/campaigns.html#campaignDetail/editCampaign/${data.orderId}`}\n target=\"_blank\"\n referrerPolicy=\"no-referrer\"\n className={cn(buttonVariants({\n variant: 'ghost',\n size: 'sm',\n }))}\n >\n {data.orderId}\n </a>\n )\n : '-'}\n </TableCell>\n <TableCell>\n {data?.adspaceId && data?.adspaceId !== '0'\n ? (\n <a\n href={`https://${adheseContext.options.account}.adhese.org/campaigns.html#campaignDetail/bookingDetail/${data.adspaceId}/${data.orderId}`}\n target=\"_blank\"\n referrerPolicy=\"no-referrer\"\n className={cn(buttonVariants({\n variant: 'ghost',\n size: 'sm',\n }))}\n >\n {data.adspaceId}\n </a>\n )\n : '-'}\n </TableCell>\n <TableCell>\n {data?.libId && data?.orderId !== '0'\n ? (\n <a\n href={`https://${adheseContext.options.account}.adhese.org/campaigns.html#campaignDetail/creativeDetail/${data.libId}/${data.orderId}`}\n target=\"_blank\"\n referrerPolicy=\"no-referrer\"\n className={cn(buttonVariants({\n variant: 'ghost',\n size: 'sm',\n }))}\n >\n {data.libId}\n </a>\n )\n : '-'}\n </TableCell>\n <TableCell>{data?.id ?? '-'}</TableCell>\n <TableCell>{data?.ext ? <Badge variant=\"outline\">{data.ext}</Badge> : '-'}</TableCell>\n <TableCell>\n {isImpressionTracked\n ? <Badge className=\"bg-green-100 text-green-900 hover:bg-green-100\">Yes</Badge>\n : <Badge variant=\"secondary\">No</Badge>}\n </TableCell>\n <TableCell>\n {isViewabilityTracked\n ? <Badge className=\"bg-green-100 text-green-900 hover:bg-green-100\">Yes</Badge>\n : <Badge variant=\"secondary\">No</Badge>}\n </TableCell>\n {\n slotParametersExist && (\n <TableCell>\n {\n parameters.length > 0 && (\n <Sheet>\n <SheetTrigger className={buttonVariants({\n variant: 'secondary',\n size: 'sm',\n })}\n >\n Show\n </SheetTrigger>\n <SheetContent className=\"bg-white flex flex-col gap-4\">\n <SheetHeader>\n <SheetTitle>\n Parameters\n </SheetTitle>\n </SheetHeader>\n <Table>\n <TableHeader>\n <TableRow>\n <TableHead>Key</TableHead>\n <TableHead>Value</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {parameters.map(([parameterName, value]) => (\n <TableRow key={parameterName}>\n <TableCell>\n <Badge variant=\"outline\">{parameterName}</Badge>\n </TableCell>\n <TableCell>\n {\n Array.isArray(value)\n ? (\n <ul className=\"flex gap-1\">\n {value.map((item, paramIndex) => (\n <li key={paramIndex}>\n <Badge variant=\"outline\">{item}</Badge>\n </li>\n ))}\n </ul>\n )\n : <Badge variant=\"outline\">{value}</Badge>\n }\n </TableCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </SheetContent>\n </Sheet>\n )\n }\n </TableCell>\n )\n }\n {previewExist && (\n <TableCell>\n {data?.preview\n && (\n <Badge className=\"bg-amber-400 text-amber-950 hover:bg-amber-400\">\n PREVIEW\n </Badge>\n )}\n </TableCell>\n )}\n <TableCell className=\"flex gap-1\">\n <EditSlot id={originalSlot.id} />\n {modifiedSlots.slots.has(originalSlot.name) && (\n <Button\n onClick={\n () => {\n modifiedSlots.remove(originalSlot.name);\n }\n }\n variant=\"ghost\"\n size=\"sm\"\n title=\"Reset\"\n >\n <ResetIcon />\n </Button>\n )}\n </TableCell>\n </TableRow>\n </Fragment>\n ))}\n </TableBody>\n </Table>\n )\n : <p>No slots available</p>\n );\n}\n"],"names":["useState","useAdheseContext","useEffect","watch","useModifiedSlots","useMemo","generateName","Table","jsx","TableHeader","TableRow","TableHead","TableBody","Fragment","jsxs","TableCell","Badge","cn","buttonVariants","Sheet","SheetTrigger","SheetContent","SheetHeader","SheetTitle","EditSlot","Button","ResetIcon"],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const SwitchPrimitives = require("@radix-ui/react-switch");
|
|
5
|
+
const react = require("react");
|
|
6
|
+
const utils = require("../utils.cjs");
|
|
7
|
+
function _interopNamespaceDefault(e) {
|
|
8
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
9
|
+
if (e) {
|
|
10
|
+
for (const k in e) {
|
|
11
|
+
if (k !== "default") {
|
|
12
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
13
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: () => e[k]
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
n.default = e;
|
|
21
|
+
return Object.freeze(n);
|
|
22
|
+
}
|
|
23
|
+
const SwitchPrimitives__namespace = /* @__PURE__ */ _interopNamespaceDefault(SwitchPrimitives);
|
|
24
|
+
const Switch = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
25
|
+
SwitchPrimitives__namespace.Root,
|
|
26
|
+
{
|
|
27
|
+
className: utils.cn(
|
|
28
|
+
"peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",
|
|
29
|
+
className
|
|
30
|
+
),
|
|
31
|
+
...props,
|
|
32
|
+
ref,
|
|
33
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
34
|
+
SwitchPrimitives__namespace.Thumb,
|
|
35
|
+
{
|
|
36
|
+
className: utils.cn(
|
|
37
|
+
"pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0"
|
|
38
|
+
)
|
|
39
|
+
}
|
|
40
|
+
)
|
|
41
|
+
}
|
|
42
|
+
));
|
|
43
|
+
Switch.displayName = SwitchPrimitives__namespace.Root.displayName;
|
|
44
|
+
exports.Switch = Switch;
|
|
45
|
+
//# sourceMappingURL=switch.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switch.cjs","sources":["../../../src/components/switch.tsx"],"sourcesContent":["// eslint-disable-next-line ts/naming-convention\nimport * as SwitchPrimitives from '@radix-ui/react-switch';\n\nimport { type ComponentPropsWithoutRef, type ElementRef, forwardRef } from 'react';\nimport { cn } from '../utils';\n\n// eslint-disable-next-line ts/naming-convention\nconst Switch = forwardRef<\n ElementRef<typeof SwitchPrimitives.Root>,\n ComponentPropsWithoutRef<typeof SwitchPrimitives.Root>\n>(({ className, ...props }, ref) => (\n <SwitchPrimitives.Root\n className={cn(\n 'peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input',\n className,\n )}\n {...props}\n ref={ref}\n >\n <SwitchPrimitives.Thumb\n className={cn(\n 'pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0',\n )}\n />\n </SwitchPrimitives.Root>\n));\nSwitch.displayName = SwitchPrimitives.Root.displayName;\n\nexport { Switch };\n"],"names":["forwardRef","jsx","SwitchPrimitives","cn"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAOM,MAAA,SAASA,iBAGb,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAACC,4BAAiB;AAAA,EAAjB;AAAA,IACC,WAAWC,MAAA;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA,IACJ;AAAA,IAEA,UAAAF,2BAAA;AAAA,MAACC,4BAAiB;AAAA,MAAjB;AAAA,QACC,WAAWC,MAAA;AAAA,UACT;AAAA,QACF;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AACF,CACD;AACD,OAAO,cAAcD,4BAAiB,KAAK;;"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const react = require("react");
|
|
5
|
+
const utils = require("../utils.cjs");
|
|
6
|
+
const Table = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
7
|
+
"table",
|
|
8
|
+
{
|
|
9
|
+
ref,
|
|
10
|
+
className: utils.cn("w-full caption-bottom text-sm", className),
|
|
11
|
+
...props
|
|
12
|
+
}
|
|
13
|
+
) }));
|
|
14
|
+
Table.displayName = "Table";
|
|
15
|
+
const TableHeader = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("thead", { ref, className: utils.cn("[&_tr]:border-b", className), ...props }));
|
|
16
|
+
TableHeader.displayName = "TableHeader";
|
|
17
|
+
const TableBody = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
18
|
+
"tbody",
|
|
19
|
+
{
|
|
20
|
+
ref,
|
|
21
|
+
className: utils.cn("[&_tr:last-child]:border-0", className),
|
|
22
|
+
...props
|
|
23
|
+
}
|
|
24
|
+
));
|
|
25
|
+
TableBody.displayName = "TableBody";
|
|
26
|
+
const TableFooter = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
27
|
+
"tfoot",
|
|
28
|
+
{
|
|
29
|
+
ref,
|
|
30
|
+
className: utils.cn(
|
|
31
|
+
"border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",
|
|
32
|
+
className
|
|
33
|
+
),
|
|
34
|
+
...props
|
|
35
|
+
}
|
|
36
|
+
));
|
|
37
|
+
TableFooter.displayName = "TableFooter";
|
|
38
|
+
const TableRow = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
39
|
+
"tr",
|
|
40
|
+
{
|
|
41
|
+
ref,
|
|
42
|
+
className: utils.cn(
|
|
43
|
+
"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",
|
|
44
|
+
className
|
|
45
|
+
),
|
|
46
|
+
...props
|
|
47
|
+
}
|
|
48
|
+
));
|
|
49
|
+
TableRow.displayName = "TableRow";
|
|
50
|
+
const TableHead = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
51
|
+
"th",
|
|
52
|
+
{
|
|
53
|
+
ref,
|
|
54
|
+
className: utils.cn(
|
|
55
|
+
"h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",
|
|
56
|
+
className
|
|
57
|
+
),
|
|
58
|
+
...props
|
|
59
|
+
}
|
|
60
|
+
));
|
|
61
|
+
TableHead.displayName = "TableHead";
|
|
62
|
+
const TableCell = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
63
|
+
"td",
|
|
64
|
+
{
|
|
65
|
+
ref,
|
|
66
|
+
className: utils.cn(
|
|
67
|
+
"p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",
|
|
68
|
+
className
|
|
69
|
+
),
|
|
70
|
+
...props
|
|
71
|
+
}
|
|
72
|
+
));
|
|
73
|
+
TableCell.displayName = "TableCell";
|
|
74
|
+
const TableCaption = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
75
|
+
"caption",
|
|
76
|
+
{
|
|
77
|
+
ref,
|
|
78
|
+
className: utils.cn("mt-4 text-sm text-muted-foreground", className),
|
|
79
|
+
...props
|
|
80
|
+
}
|
|
81
|
+
));
|
|
82
|
+
TableCaption.displayName = "TableCaption";
|
|
83
|
+
exports.Table = Table;
|
|
84
|
+
exports.TableBody = TableBody;
|
|
85
|
+
exports.TableCaption = TableCaption;
|
|
86
|
+
exports.TableCell = TableCell;
|
|
87
|
+
exports.TableFooter = TableFooter;
|
|
88
|
+
exports.TableHead = TableHead;
|
|
89
|
+
exports.TableHeader = TableHeader;
|
|
90
|
+
exports.TableRow = TableRow;
|
|
91
|
+
//# sourceMappingURL=table.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table.cjs","sources":["../../../src/components/table.tsx"],"sourcesContent":["/* eslint-disable ts/naming-convention */\nimport { type HTMLAttributes, type TdHTMLAttributes, type ThHTMLAttributes, forwardRef } from 'react';\nimport { cn } from '../utils';\n\nconst Table = forwardRef<\n HTMLTableElement,\n HTMLAttributes<HTMLTableElement>\n>(({ className, ...props }, ref) => (\n <div className=\"relative w-full overflow-auto\">\n <table\n ref={ref}\n className={cn('w-full caption-bottom text-sm', className)}\n {...props}\n />\n </div>\n));\nTable.displayName = 'Table';\n\nconst TableHeader = forwardRef<\n HTMLTableSectionElement,\n HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <thead ref={ref} className={cn('[&_tr]:border-b', className)} {...props} />\n));\nTableHeader.displayName = 'TableHeader';\n\nconst TableBody = forwardRef<\n HTMLTableSectionElement,\n HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tbody\n ref={ref}\n className={cn('[&_tr:last-child]:border-0', className)}\n {...props}\n />\n));\nTableBody.displayName = 'TableBody';\n\nconst TableFooter = forwardRef<\n HTMLTableSectionElement,\n HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tfoot\n ref={ref}\n className={cn(\n 'border-t bg-muted/50 font-medium [&>tr]:last:border-b-0',\n className,\n )}\n {...props}\n />\n));\nTableFooter.displayName = 'TableFooter';\n\nconst TableRow = forwardRef<\n HTMLTableRowElement,\n HTMLAttributes<HTMLTableRowElement>\n>(({ className, ...props }, ref) => (\n <tr\n ref={ref}\n className={cn(\n 'border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted',\n className,\n )}\n {...props}\n />\n));\nTableRow.displayName = 'TableRow';\n\nconst TableHead = forwardRef<\n HTMLTableCellElement,\n ThHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <th\n ref={ref}\n className={cn(\n 'h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]',\n className,\n )}\n {...props}\n />\n));\nTableHead.displayName = 'TableHead';\n\nconst TableCell = forwardRef<\n HTMLTableCellElement,\n TdHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <td\n ref={ref}\n className={cn(\n 'p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]',\n className,\n )}\n {...props}\n />\n));\nTableCell.displayName = 'TableCell';\n\nconst TableCaption = forwardRef<\n HTMLTableCaptionElement,\n HTMLAttributes<HTMLTableCaptionElement>\n>(({ className, ...props }, ref) => (\n <caption\n ref={ref}\n className={cn('mt-4 text-sm text-muted-foreground', className)}\n {...props}\n />\n));\nTableCaption.displayName = 'TableCaption';\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n"],"names":["forwardRef","jsx","cn"],"mappings":";;;;;AAIA,MAAM,QAAQA,MAAAA,WAGZ,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1BC,2BAAAA,IAAC,OAAI,EAAA,WAAU,iCACb,UAAAA,2BAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC;AAAA,IACA,WAAWC,MAAAA,GAAG,iCAAiC,SAAS;AAAA,IACvD,GAAG;AAAA,EAAA;AACN,EAAA,CACF,CACD;AACD,MAAM,cAAc;AAEpB,MAAM,cAAcF,MAGlB,WAAA,CAAC,EAAE,WAAW,GAAG,MAAS,GAAA,uCACzB,SAAM,EAAA,KAAU,WAAWE,SAAG,mBAAmB,SAAS,GAAI,GAAG,OAAO,CAC1E;AACD,YAAY,cAAc;AAEpB,MAAA,YAAYF,iBAGhB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC;AAAA,IACA,WAAWC,MAAAA,GAAG,8BAA8B,SAAS;AAAA,IACpD,GAAG;AAAA,EAAA;AACN,CACD;AACD,UAAU,cAAc;AAElB,MAAA,cAAcF,iBAGlB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC;AAAA,IACA,WAAWC,MAAA;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA,EAAA;AACN,CACD;AACD,YAAY,cAAc;AAEpB,MAAA,WAAWF,iBAGf,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC;AAAA,IACA,WAAWC,MAAA;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA,EAAA;AACN,CACD;AACD,SAAS,cAAc;AAEjB,MAAA,YAAYF,iBAGhB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC;AAAA,IACA,WAAWC,MAAA;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA,EAAA;AACN,CACD;AACD,UAAU,cAAc;AAElB,MAAA,YAAYF,iBAGhB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC;AAAA,IACA,WAAWC,MAAA;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA,EAAA;AACN,CACD;AACD,UAAU,cAAc;AAElB,MAAA,eAAeF,iBAGnB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1BC,2BAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC;AAAA,IACA,WAAWC,MAAAA,GAAG,sCAAsC,SAAS;AAAA,IAC5D,GAAG;AAAA,EAAA;AACN,CACD;AACD,aAAa,cAAc;;;;;;;;;"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const TabsPrimitive = require("@radix-ui/react-tabs");
|
|
5
|
+
const react = require("react");
|
|
6
|
+
const utils = require("../utils.cjs");
|
|
7
|
+
function _interopNamespaceDefault(e) {
|
|
8
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
9
|
+
if (e) {
|
|
10
|
+
for (const k in e) {
|
|
11
|
+
if (k !== "default") {
|
|
12
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
13
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: () => e[k]
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
n.default = e;
|
|
21
|
+
return Object.freeze(n);
|
|
22
|
+
}
|
|
23
|
+
const TabsPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(TabsPrimitive);
|
|
24
|
+
const Tabs = TabsPrimitive__namespace.Root;
|
|
25
|
+
const TabsList = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
26
|
+
TabsPrimitive__namespace.List,
|
|
27
|
+
{
|
|
28
|
+
ref,
|
|
29
|
+
className: utils.cn(
|
|
30
|
+
"inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",
|
|
31
|
+
className
|
|
32
|
+
),
|
|
33
|
+
...props
|
|
34
|
+
}
|
|
35
|
+
));
|
|
36
|
+
TabsList.displayName = TabsPrimitive__namespace.List.displayName;
|
|
37
|
+
const TabsTrigger = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
38
|
+
TabsPrimitive__namespace.Trigger,
|
|
39
|
+
{
|
|
40
|
+
ref,
|
|
41
|
+
className: utils.cn(
|
|
42
|
+
"inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",
|
|
43
|
+
className
|
|
44
|
+
),
|
|
45
|
+
...props
|
|
46
|
+
}
|
|
47
|
+
));
|
|
48
|
+
TabsTrigger.displayName = TabsPrimitive__namespace.Trigger.displayName;
|
|
49
|
+
const TabsContent = react.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
50
|
+
TabsPrimitive__namespace.Content,
|
|
51
|
+
{
|
|
52
|
+
ref,
|
|
53
|
+
className: utils.cn(
|
|
54
|
+
"mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
55
|
+
className
|
|
56
|
+
),
|
|
57
|
+
...props
|
|
58
|
+
}
|
|
59
|
+
));
|
|
60
|
+
TabsContent.displayName = TabsPrimitive__namespace.Content.displayName;
|
|
61
|
+
exports.Tabs = Tabs;
|
|
62
|
+
exports.TabsContent = TabsContent;
|
|
63
|
+
exports.TabsList = TabsList;
|
|
64
|
+
exports.TabsTrigger = TabsTrigger;
|
|
65
|
+
//# sourceMappingURL=tabs.cjs.map
|