@c15t/react 0.0.1-rc.10
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/LICENSE.md +595 -0
- package/README.md +55 -0
- package/dist/components/consent-manager-dialog/__tests__/styles.spec.cjs +223 -0
- package/dist/components/consent-manager-dialog/__tests__/styles.spec.d.ts +2 -0
- package/dist/components/consent-manager-dialog/__tests__/styles.spec.d.ts.map +1 -0
- package/dist/components/consent-manager-dialog/__tests__/styles.spec.js +188 -0
- package/dist/components/consent-manager-dialog/__tests__/utils.cjs +68 -0
- package/dist/components/consent-manager-dialog/__tests__/utils.d.ts +13 -0
- package/dist/components/consent-manager-dialog/__tests__/utils.d.ts.map +1 -0
- package/dist/components/consent-manager-dialog/__tests__/utils.js +34 -0
- package/dist/components/consent-manager-dialog/atoms/dialog-card.cjs +154 -0
- package/dist/components/consent-manager-dialog/atoms/dialog-card.d.ts +90 -0
- package/dist/components/consent-manager-dialog/atoms/dialog-card.d.ts.map +1 -0
- package/dist/components/consent-manager-dialog/atoms/dialog-card.js +95 -0
- package/dist/components/consent-manager-dialog/atoms/overlay.cjs +86 -0
- package/dist/components/consent-manager-dialog/atoms/overlay.d.ts +71 -0
- package/dist/components/consent-manager-dialog/atoms/overlay.d.ts.map +1 -0
- package/dist/components/consent-manager-dialog/atoms/overlay.js +37 -0
- package/dist/components/consent-manager-dialog/consent-manager-dialog.cjs +148 -0
- package/dist/components/consent-manager-dialog/consent-manager-dialog.d.ts +40 -0
- package/dist/components/consent-manager-dialog/consent-manager-dialog.d.ts.map +1 -0
- package/dist/components/consent-manager-dialog/consent-manager-dialog.js +100 -0
- package/dist/components/consent-manager-dialog/consent-manager-dialog.module.cjs +50 -0
- package/dist/components/consent-manager-dialog/consent-manager-dialog.module.js +16 -0
- package/dist/components/consent-manager-dialog/consent-manager-dialog_module.css +202 -0
- package/dist/components/consent-manager-dialog/index.cjs +51 -0
- package/dist/components/consent-manager-dialog/index.d.ts +4 -0
- package/dist/components/consent-manager-dialog/index.d.ts.map +1 -0
- package/dist/components/consent-manager-dialog/index.js +18 -0
- package/dist/components/consent-manager-dialog/theme.cjs +19 -0
- package/dist/components/consent-manager-dialog/theme.d.ts +19 -0
- package/dist/components/consent-manager-dialog/theme.d.ts.map +1 -0
- package/dist/components/consent-manager-dialog/theme.js +0 -0
- package/dist/components/consent-manager-widget/__tests__/styles.spec.cjs +228 -0
- package/dist/components/consent-manager-widget/__tests__/styles.spec.d.ts +2 -0
- package/dist/components/consent-manager-widget/__tests__/styles.spec.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/__tests__/styles.spec.js +193 -0
- package/dist/components/consent-manager-widget/__tests__/utils.cjs +68 -0
- package/dist/components/consent-manager-widget/__tests__/utils.d.ts +13 -0
- package/dist/components/consent-manager-widget/__tests__/utils.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/__tests__/utils.js +34 -0
- package/dist/components/consent-manager-widget/atoms/accordion.cjs +169 -0
- package/dist/components/consent-manager-widget/atoms/accordion.d.ts +57 -0
- package/dist/components/consent-manager-widget/atoms/accordion.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/atoms/accordion.js +106 -0
- package/dist/components/consent-manager-widget/atoms/button.cjs +93 -0
- package/dist/components/consent-manager-widget/atoms/button.d.ts +27 -0
- package/dist/components/consent-manager-widget/atoms/button.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/atoms/button.js +52 -0
- package/dist/components/consent-manager-widget/atoms/footer.cjs +74 -0
- package/dist/components/consent-manager-widget/atoms/footer.d.ts +15 -0
- package/dist/components/consent-manager-widget/atoms/footer.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/atoms/footer.js +23 -0
- package/dist/components/consent-manager-widget/atoms/logo.cjs +101 -0
- package/dist/components/consent-manager-widget/atoms/logo.d.ts +8 -0
- package/dist/components/consent-manager-widget/atoms/logo.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/atoms/logo.js +67 -0
- package/dist/components/consent-manager-widget/atoms/root.cjs +60 -0
- package/dist/components/consent-manager-widget/atoms/root.d.ts +82 -0
- package/dist/components/consent-manager-widget/atoms/root.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/atoms/root.js +25 -0
- package/dist/components/consent-manager-widget/consent-manager-widget.cjs +96 -0
- package/dist/components/consent-manager-widget/consent-manager-widget.d.ts +44 -0
- package/dist/components/consent-manager-widget/consent-manager-widget.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/consent-manager-widget.js +62 -0
- package/dist/components/consent-manager-widget/consent-manager-widget.module.cjs +61 -0
- package/dist/components/consent-manager-widget/consent-manager-widget.module.js +27 -0
- package/dist/components/consent-manager-widget/consent-manager-widget_module.css +337 -0
- package/dist/components/consent-manager-widget/index.cjs +69 -0
- package/dist/components/consent-manager-widget/index.d.ts +11 -0
- package/dist/components/consent-manager-widget/index.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/index.js +36 -0
- package/dist/components/consent-manager-widget/theme.cjs +19 -0
- package/dist/components/consent-manager-widget/theme.d.ts +50 -0
- package/dist/components/consent-manager-widget/theme.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/theme.js +0 -0
- package/dist/components/consent-manager-widget/types.cjs +19 -0
- package/dist/components/consent-manager-widget/types.d.ts +18 -0
- package/dist/components/consent-manager-widget/types.d.ts.map +1 -0
- package/dist/components/consent-manager-widget/types.js +0 -0
- package/dist/components/cookie-banner/__tests__/styles.spec.cjs +241 -0
- package/dist/components/cookie-banner/__tests__/styles.spec.d.ts +2 -0
- package/dist/components/cookie-banner/__tests__/styles.spec.d.ts.map +1 -0
- package/dist/components/cookie-banner/__tests__/styles.spec.js +206 -0
- package/dist/components/cookie-banner/__tests__/utils.cjs +67 -0
- package/dist/components/cookie-banner/__tests__/utils.d.ts +13 -0
- package/dist/components/cookie-banner/__tests__/utils.d.ts.map +1 -0
- package/dist/components/cookie-banner/__tests__/utils.js +33 -0
- package/dist/components/cookie-banner/atoms/overlay.cjs +89 -0
- package/dist/components/cookie-banner/atoms/overlay.d.ts +46 -0
- package/dist/components/cookie-banner/atoms/overlay.d.ts.map +1 -0
- package/dist/components/cookie-banner/atoms/overlay.js +40 -0
- package/dist/components/cookie-banner/atoms/root.cjs +132 -0
- package/dist/components/cookie-banner/atoms/root.d.ts +93 -0
- package/dist/components/cookie-banner/atoms/root.d.ts.map +1 -0
- package/dist/components/cookie-banner/atoms/root.js +83 -0
- package/dist/components/cookie-banner/components.cjs +186 -0
- package/dist/components/cookie-banner/components.d.ts +136 -0
- package/dist/components/cookie-banner/components.d.ts.map +1 -0
- package/dist/components/cookie-banner/components.js +121 -0
- package/dist/components/cookie-banner/cookie-banner.cjs +100 -0
- package/dist/components/cookie-banner/cookie-banner.d.ts +144 -0
- package/dist/components/cookie-banner/cookie-banner.d.ts.map +1 -0
- package/dist/components/cookie-banner/cookie-banner.js +66 -0
- package/dist/components/cookie-banner/cookie-banner.module.cjs +55 -0
- package/dist/components/cookie-banner/cookie-banner.module.js +21 -0
- package/dist/components/cookie-banner/cookie-banner_module.css +224 -0
- package/dist/components/cookie-banner/error-boundary.cjs +68 -0
- package/dist/components/cookie-banner/error-boundary.d.ts +56 -0
- package/dist/components/cookie-banner/error-boundary.d.ts.map +1 -0
- package/dist/components/cookie-banner/error-boundary.js +34 -0
- package/dist/components/cookie-banner/index.cjs +59 -0
- package/dist/components/cookie-banner/index.d.ts +52 -0
- package/dist/components/cookie-banner/index.d.ts.map +1 -0
- package/dist/components/cookie-banner/index.js +26 -0
- package/dist/components/cookie-banner/theme.cjs +19 -0
- package/dist/components/cookie-banner/theme.d.ts +71 -0
- package/dist/components/cookie-banner/theme.d.ts.map +1 -0
- package/dist/components/cookie-banner/theme.js +0 -0
- package/dist/components/shared/libs/polymorphic.cjs +19 -0
- package/dist/components/shared/libs/polymorphic.d.ts +15 -0
- package/dist/components/shared/libs/polymorphic.d.ts.map +1 -0
- package/dist/components/shared/libs/polymorphic.js +0 -0
- package/dist/components/shared/libs/recursive-clone-children.cjs +49 -0
- package/dist/components/shared/libs/recursive-clone-children.d.ts +14 -0
- package/dist/components/shared/libs/recursive-clone-children.d.ts.map +1 -0
- package/dist/components/shared/libs/recursive-clone-children.js +15 -0
- package/dist/components/shared/primitives/box.cjs +54 -0
- package/dist/components/shared/primitives/box.d.ts +47 -0
- package/dist/components/shared/primitives/box.d.ts.map +1 -0
- package/dist/components/shared/primitives/box.js +20 -0
- package/dist/components/shared/primitives/button.cjs +96 -0
- package/dist/components/shared/primitives/button.d.ts +207 -0
- package/dist/components/shared/primitives/button.d.ts.map +1 -0
- package/dist/components/shared/primitives/button.js +62 -0
- package/dist/components/shared/primitives/button.types.cjs +19 -0
- package/dist/components/shared/primitives/button.types.d.ts +35 -0
- package/dist/components/shared/primitives/button.types.d.ts.map +1 -0
- package/dist/components/shared/primitives/button.types.js +0 -0
- package/dist/components/shared/ui/accordion/accordion.cjs +219 -0
- package/dist/components/shared/ui/accordion/accordion.d.ts +44 -0
- package/dist/components/shared/ui/accordion/accordion.d.ts.map +1 -0
- package/dist/components/shared/ui/accordion/accordion.js +165 -0
- package/dist/components/shared/ui/accordion/accordion.module.cjs +49 -0
- package/dist/components/shared/ui/accordion/accordion.module.js +15 -0
- package/dist/components/shared/ui/accordion/accordion.types.cjs +19 -0
- package/dist/components/shared/ui/accordion/accordion.types.d.ts +74 -0
- package/dist/components/shared/ui/accordion/accordion.types.d.ts.map +1 -0
- package/dist/components/shared/ui/accordion/accordion.types.js +0 -0
- package/dist/components/shared/ui/accordion/accordion_module.css +197 -0
- package/dist/components/shared/ui/accordion/index.cjs +76 -0
- package/dist/components/shared/ui/accordion/index.d.ts +3 -0
- package/dist/components/shared/ui/accordion/index.d.ts.map +1 -0
- package/dist/components/shared/ui/accordion/index.js +2 -0
- package/dist/components/shared/ui/button/button.cjs +199 -0
- package/dist/components/shared/ui/button/button.d.ts +444 -0
- package/dist/components/shared/ui/button/button.d.ts.map +1 -0
- package/dist/components/shared/ui/button/button.js +149 -0
- package/dist/components/shared/ui/button/button.module.cjs +65 -0
- package/dist/components/shared/ui/button/button.module.js +31 -0
- package/dist/components/shared/ui/button/button.types.cjs +19 -0
- package/dist/components/shared/ui/button/button.types.d.ts +45 -0
- package/dist/components/shared/ui/button/button.types.d.ts.map +1 -0
- package/dist/components/shared/ui/button/button.types.js +0 -0
- package/dist/components/shared/ui/button/button_module.css +247 -0
- package/dist/components/shared/ui/button/index.cjs +76 -0
- package/dist/components/shared/ui/button/index.d.ts +3 -0
- package/dist/components/shared/ui/button/index.d.ts.map +1 -0
- package/dist/components/shared/ui/button/index.js +2 -0
- package/dist/components/shared/ui/icon.cjs +57 -0
- package/dist/components/shared/ui/icon.d.ts +8 -0
- package/dist/components/shared/ui/icon.d.ts.map +1 -0
- package/dist/components/shared/ui/icon.js +23 -0
- package/dist/components/shared/ui/logo.cjs +101 -0
- package/dist/components/shared/ui/logo.d.ts +8 -0
- package/dist/components/shared/ui/logo.d.ts.map +1 -0
- package/dist/components/shared/ui/logo.js +67 -0
- package/dist/components/shared/ui/switch/index.cjs +76 -0
- package/dist/components/shared/ui/switch/index.d.ts +3 -0
- package/dist/components/shared/ui/switch/index.d.ts.map +1 -0
- package/dist/components/shared/ui/switch/index.js +2 -0
- package/dist/components/shared/ui/switch/switch.cjs +95 -0
- package/dist/components/shared/ui/switch/switch.d.ts +24 -0
- package/dist/components/shared/ui/switch/switch.d.ts.map +1 -0
- package/dist/components/shared/ui/switch/switch.js +47 -0
- package/dist/components/shared/ui/switch/switch.module.cjs +45 -0
- package/dist/components/shared/ui/switch/switch.module.js +11 -0
- package/dist/components/shared/ui/switch/switch.types.cjs +19 -0
- package/dist/components/shared/ui/switch/switch.types.d.ts +34 -0
- package/dist/components/shared/ui/switch/switch.types.d.ts.map +1 -0
- package/dist/components/shared/ui/switch/switch.types.js +0 -0
- package/dist/components/shared/ui/switch/switch_module.css +183 -0
- package/dist/context/consent-manager-context.cjs +38 -0
- package/dist/context/consent-manager-context.d.ts +13 -0
- package/dist/context/consent-manager-context.d.ts.map +1 -0
- package/dist/context/consent-manager-context.js +4 -0
- package/dist/context/theme-context.cjs +40 -0
- package/dist/context/theme-context.d.ts +102 -0
- package/dist/context/theme-context.d.ts.map +1 -0
- package/dist/context/theme-context.js +5 -0
- package/dist/hooks/index.cjs +94 -0
- package/dist/hooks/index.d.ts +5 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +4 -0
- package/dist/hooks/use-consent-manager.cjs +45 -0
- package/dist/hooks/use-consent-manager.d.ts +61 -0
- package/dist/hooks/use-consent-manager.d.ts.map +1 -0
- package/dist/hooks/use-consent-manager.js +11 -0
- package/dist/hooks/use-focus-trap.cjs +76 -0
- package/dist/hooks/use-focus-trap.d.ts +15 -0
- package/dist/hooks/use-focus-trap.d.ts.map +1 -0
- package/dist/hooks/use-focus-trap.js +42 -0
- package/dist/hooks/use-scroll-lock.cjs +55 -0
- package/dist/hooks/use-scroll-lock.d.ts +26 -0
- package/dist/hooks/use-scroll-lock.d.ts.map +1 -0
- package/dist/hooks/use-scroll-lock.js +21 -0
- package/dist/hooks/use-theme.cjs +56 -0
- package/dist/hooks/use-theme.d.ts +2 -0
- package/dist/hooks/use-theme.d.ts.map +1 -0
- package/dist/hooks/use-theme.js +22 -0
- package/dist/hooks/use-translations.cjs +58 -0
- package/dist/hooks/use-translations.d.ts +29 -0
- package/dist/hooks/use-translations.d.ts.map +1 -0
- package/dist/hooks/use-translations.js +24 -0
- package/dist/index.cjs +101 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/providers/consent-manager-provider.cjs +110 -0
- package/dist/providers/consent-manager-provider.d.ts +16 -0
- package/dist/providers/consent-manager-provider.d.ts.map +1 -0
- package/dist/providers/consent-manager-provider.js +76 -0
- package/dist/types/consent-manager.cjs +19 -0
- package/dist/types/consent-manager.d.ts +120 -0
- package/dist/types/consent-manager.d.ts.map +1 -0
- package/dist/types/consent-manager.js +0 -0
- package/dist/types/theme/index.cjs +76 -0
- package/dist/types/theme/index.d.ts +3 -0
- package/dist/types/theme/index.d.ts.map +1 -0
- package/dist/types/theme/index.js +2 -0
- package/dist/types/theme/style-keys.cjs +19 -0
- package/dist/types/theme/style-keys.d.ts +14 -0
- package/dist/types/theme/style-keys.d.ts.map +1 -0
- package/dist/types/theme/style-keys.js +0 -0
- package/dist/types/theme/style-types.cjs +19 -0
- package/dist/types/theme/style-types.d.ts +34 -0
- package/dist/types/theme/style-types.d.ts.map +1 -0
- package/dist/types/theme/style-types.js +0 -0
- package/dist/utils/cn.cjs +55 -0
- package/dist/utils/cn.d.ts +11 -0
- package/dist/utils/cn.d.ts.map +1 -0
- package/dist/utils/cn.js +6 -0
- package/dist/utils/merge-styles.cjs +62 -0
- package/dist/utils/merge-styles.d.ts +11 -0
- package/dist/utils/merge-styles.d.ts.map +1 -0
- package/dist/utils/merge-styles.js +28 -0
- package/dist/utils/translations.cjs +86 -0
- package/dist/utils/translations.d.ts +14 -0
- package/dist/utils/translations.d.ts.map +1 -0
- package/dist/utils/translations.js +50 -0
- package/dist/utils/use-styles.cjs +95 -0
- package/dist/utils/use-styles.d.ts +32 -0
- package/dist/utils/use-styles.d.ts.map +1 -0
- package/dist/utils/use-styles.js +61 -0
- package/package.json +90 -0
|
File without changes
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = function(exports1, definition) {
|
|
5
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: definition[key]
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
})();
|
|
11
|
+
(()=>{
|
|
12
|
+
__webpack_require__.o = function(obj, prop) {
|
|
13
|
+
return Object.prototype.hasOwnProperty.call(obj, prop);
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
(()=>{
|
|
17
|
+
__webpack_require__.r = function(exports1) {
|
|
18
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
19
|
+
value: 'Module'
|
|
20
|
+
});
|
|
21
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
22
|
+
value: true
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
})();
|
|
26
|
+
var __webpack_exports__ = {};
|
|
27
|
+
__webpack_require__.r(__webpack_exports__);
|
|
28
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
29
|
+
recursiveCloneChildren: ()=>recursiveCloneChildren
|
|
30
|
+
});
|
|
31
|
+
const external_react_namespaceObject = require("react");
|
|
32
|
+
function recursiveCloneChildren(children, additionalProps, displayNames, uniqueId, asChild) {
|
|
33
|
+
const mappedChildren = external_react_namespaceObject.Children.map(children, (child)=>{
|
|
34
|
+
if (!/*#__PURE__*/ (0, external_react_namespaceObject.isValidElement)(child)) return child;
|
|
35
|
+
const displayName = child.type?.displayName || '';
|
|
36
|
+
const newProps = displayNames.includes(displayName) ? additionalProps : {};
|
|
37
|
+
const childProps = child.props;
|
|
38
|
+
return /*#__PURE__*/ (0, external_react_namespaceObject.cloneElement)(child, {
|
|
39
|
+
...newProps,
|
|
40
|
+
key: `${uniqueId}-${child.key || displayName}`
|
|
41
|
+
}, recursiveCloneChildren(childProps?.children, additionalProps, displayNames, uniqueId, childProps?.asChild));
|
|
42
|
+
});
|
|
43
|
+
return asChild ? mappedChildren?.[0] : mappedChildren;
|
|
44
|
+
}
|
|
45
|
+
var __webpack_export_target__ = exports;
|
|
46
|
+
for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
47
|
+
if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
|
|
48
|
+
value: true
|
|
49
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Recursively clones React children, adding additional props to components with matched display names.
|
|
4
|
+
*
|
|
5
|
+
* @param children - The node(s) to be cloned.
|
|
6
|
+
* @param additionalProps - The props to add to the matched components.
|
|
7
|
+
* @param displayNames - An array of display names to match components against.
|
|
8
|
+
* @param uniqueId - A unique ID prefix from the parent component to generate stable keys.
|
|
9
|
+
* @param asChild - Indicates whether the parent component uses the Slot component.
|
|
10
|
+
*
|
|
11
|
+
* @returns The cloned node(s) with the additional props applied to the matched components.
|
|
12
|
+
*/
|
|
13
|
+
export declare function recursiveCloneChildren(children: ReactNode, additionalProps: Record<string, unknown>, displayNames: string[], uniqueId: string, asChild?: boolean): ReactNode | ReactNode[];
|
|
14
|
+
//# sourceMappingURL=recursive-clone-children.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recursive-clone-children.d.ts","sourceRoot":"","sources":["../../../../src/components/shared/libs/recursive-clone-children.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIN,KAAK,SAAS,EAGd,MAAM,OAAO,CAAC;AAEf;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CACrC,QAAQ,EAAE,SAAS,EACnB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,YAAY,EAAE,MAAM,EAAE,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,OAAO,GACf,SAAS,GAAG,SAAS,EAAE,CAyBzB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
2
|
+
function recursiveCloneChildren(children, additionalProps, displayNames, uniqueId, asChild) {
|
|
3
|
+
const mappedChildren = __WEBPACK_EXTERNAL_MODULE_react__.Children.map(children, (child)=>{
|
|
4
|
+
if (!/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.isValidElement)(child)) return child;
|
|
5
|
+
const displayName = child.type?.displayName || '';
|
|
6
|
+
const newProps = displayNames.includes(displayName) ? additionalProps : {};
|
|
7
|
+
const childProps = child.props;
|
|
8
|
+
return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.cloneElement)(child, {
|
|
9
|
+
...newProps,
|
|
10
|
+
key: `${uniqueId}-${child.key || displayName}`
|
|
11
|
+
}, recursiveCloneChildren(childProps?.children, additionalProps, displayNames, uniqueId, childProps?.asChild));
|
|
12
|
+
});
|
|
13
|
+
return asChild ? mappedChildren?.[0] : mappedChildren;
|
|
14
|
+
}
|
|
15
|
+
export { recursiveCloneChildren };
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
var __webpack_require__ = {};
|
|
4
|
+
(()=>{
|
|
5
|
+
__webpack_require__.d = function(exports1, definition) {
|
|
6
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: definition[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
})();
|
|
12
|
+
(()=>{
|
|
13
|
+
__webpack_require__.o = function(obj, prop) {
|
|
14
|
+
return Object.prototype.hasOwnProperty.call(obj, prop);
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
(()=>{
|
|
18
|
+
__webpack_require__.r = function(exports1) {
|
|
19
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
20
|
+
value: 'Module'
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
23
|
+
value: true
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
})();
|
|
27
|
+
var __webpack_exports__ = {};
|
|
28
|
+
__webpack_require__.r(__webpack_exports__);
|
|
29
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
30
|
+
Box: ()=>Box
|
|
31
|
+
});
|
|
32
|
+
const jsx_runtime_namespaceObject = require("react/jsx-runtime");
|
|
33
|
+
const external_react_namespaceObject = require("react");
|
|
34
|
+
const react_slot_namespaceObject = require("@radix-ui/react-slot");
|
|
35
|
+
const use_styles_cjs_namespaceObject = require("../../../utils/use-styles.cjs");
|
|
36
|
+
const Box = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRef)(({ asChild, className, style, themeKey, baseClassName, ...props }, ref)=>{
|
|
37
|
+
const descriptionStyle = (0, use_styles_cjs_namespaceObject.useStyles)(themeKey, {
|
|
38
|
+
baseClassName,
|
|
39
|
+
className,
|
|
40
|
+
style
|
|
41
|
+
});
|
|
42
|
+
const Comp = asChild ? react_slot_namespaceObject.Slot : 'div';
|
|
43
|
+
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(Comp, {
|
|
44
|
+
ref: ref,
|
|
45
|
+
...props,
|
|
46
|
+
...descriptionStyle
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
Box.displayName = 'Box';
|
|
50
|
+
var __webpack_export_target__ = exports;
|
|
51
|
+
for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
52
|
+
if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
|
|
53
|
+
value: true
|
|
54
|
+
});
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { type HTMLAttributes } from 'react';
|
|
2
|
+
import type { ExtendThemeKeys } from '../../../types/theme';
|
|
3
|
+
/**
|
|
4
|
+
* Props for the description text component of the CookieBanner.
|
|
5
|
+
* Extends standard HTML div attributes.
|
|
6
|
+
*
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
export interface BoxProps extends Omit<HTMLAttributes<HTMLDivElement>, 'style'>, ExtendThemeKeys {
|
|
10
|
+
asChild?: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Renders the descriptive text content within a CookieBanner.
|
|
14
|
+
*
|
|
15
|
+
* @remarks
|
|
16
|
+
* This component is responsible for displaying the explanatory text that:
|
|
17
|
+
* - Informs users about the site's cookie usage
|
|
18
|
+
* - Explains what cookies are used for
|
|
19
|
+
* - Provides context for the cookie consent choices
|
|
20
|
+
*
|
|
21
|
+
* The component automatically inherits styles from the CookieBanner context
|
|
22
|
+
* and can be customized through className and style props.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* Basic usage:
|
|
26
|
+
* ```tsx
|
|
27
|
+
* <CookieBanner.Description>
|
|
28
|
+
* We use cookies to enhance your browsing experience and analyze site traffic.
|
|
29
|
+
* </CookieBanner.Description>
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* With custom styling:
|
|
34
|
+
* ```tsx
|
|
35
|
+
* <CookieBanner.Description
|
|
36
|
+
* className="text-gray-600"
|
|
37
|
+
* style={{ maxWidth: '500px' }}
|
|
38
|
+
* >
|
|
39
|
+
* By using our site, you acknowledge that you have read and understand our
|
|
40
|
+
* Cookie Policy and Privacy Policy.
|
|
41
|
+
* </CookieBanner.Description>
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* @public
|
|
45
|
+
*/
|
|
46
|
+
export declare const Box: import("react").ForwardRefExoticComponent<BoxProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
47
|
+
//# sourceMappingURL=box.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../../src/components/shared/primitives/box.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAc,MAAM,OAAO,CAAC;AAGxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGrD;;;;;GAKG;AACH,MAAM,WAAW,QAChB,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,EACpD,eAAe;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,GAAG,qGAef,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
|
|
3
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE__radix_ui_react_slot_85c2da36__ from "@radix-ui/react-slot";
|
|
5
|
+
import * as __WEBPACK_EXTERNAL_MODULE__utils_use_styles_js_413e0e0a__ from "../../../utils/use-styles.js";
|
|
6
|
+
const Box = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.forwardRef)(({ asChild, className, style, themeKey, baseClassName, ...props }, ref)=>{
|
|
7
|
+
const descriptionStyle = (0, __WEBPACK_EXTERNAL_MODULE__utils_use_styles_js_413e0e0a__.useStyles)(themeKey, {
|
|
8
|
+
baseClassName,
|
|
9
|
+
className,
|
|
10
|
+
style
|
|
11
|
+
});
|
|
12
|
+
const Comp = asChild ? __WEBPACK_EXTERNAL_MODULE__radix_ui_react_slot_85c2da36__.Slot : 'div';
|
|
13
|
+
return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Comp, {
|
|
14
|
+
ref: ref,
|
|
15
|
+
...props,
|
|
16
|
+
...descriptionStyle
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
Box.displayName = 'Box';
|
|
20
|
+
export { Box };
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = function(exports1, definition) {
|
|
5
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: definition[key]
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
})();
|
|
11
|
+
(()=>{
|
|
12
|
+
__webpack_require__.o = function(obj, prop) {
|
|
13
|
+
return Object.prototype.hasOwnProperty.call(obj, prop);
|
|
14
|
+
};
|
|
15
|
+
})();
|
|
16
|
+
(()=>{
|
|
17
|
+
__webpack_require__.r = function(exports1) {
|
|
18
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
19
|
+
value: 'Module'
|
|
20
|
+
});
|
|
21
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
22
|
+
value: true
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
})();
|
|
26
|
+
var __webpack_exports__ = {};
|
|
27
|
+
__webpack_require__.r(__webpack_exports__);
|
|
28
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
29
|
+
ConsentButton: ()=>ConsentButton
|
|
30
|
+
});
|
|
31
|
+
const jsx_runtime_namespaceObject = require("react/jsx-runtime");
|
|
32
|
+
const react_slot_namespaceObject = require("@radix-ui/react-slot");
|
|
33
|
+
const external_react_namespaceObject = require("react");
|
|
34
|
+
const use_consent_manager_cjs_namespaceObject = require("../../../hooks/use-consent-manager.cjs");
|
|
35
|
+
const use_theme_cjs_namespaceObject = require("../../../hooks/use-theme.cjs");
|
|
36
|
+
const use_styles_cjs_namespaceObject = require("../../../utils/use-styles.cjs");
|
|
37
|
+
const index_cjs_namespaceObject = require("../ui/button/index.cjs");
|
|
38
|
+
const ConsentButton = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRef)(({ asChild, className: forwardedClassName, style, noStyle, action, themeKey, baseClassName, variant = 'neutral', mode = 'stroke', size = 'small', onClick: forwardedOnClick, closeCookieBanner = false, closeCustomizeDialog = false, ...props }, ref)=>{
|
|
39
|
+
const { saveConsents, setShowPopup, setIsPrivacyDialogOpen } = (0, use_consent_manager_cjs_namespaceObject.useConsentManager)();
|
|
40
|
+
const { noStyle: contextNoStyle } = (0, use_theme_cjs_namespaceObject.useTheme)();
|
|
41
|
+
const buttonStyle = (0, use_styles_cjs_namespaceObject.useStyles)(themeKey ?? 'button', {
|
|
42
|
+
baseClassName: [
|
|
43
|
+
!(contextNoStyle || noStyle) && index_cjs_namespaceObject.buttonVariants({
|
|
44
|
+
variant,
|
|
45
|
+
mode,
|
|
46
|
+
size
|
|
47
|
+
}).root()
|
|
48
|
+
],
|
|
49
|
+
style: style,
|
|
50
|
+
className: forwardedClassName,
|
|
51
|
+
noStyle: noStyle
|
|
52
|
+
});
|
|
53
|
+
const buttonClick = (0, external_react_namespaceObject.useCallback)(()=>{
|
|
54
|
+
switch(action){
|
|
55
|
+
case 'accept-consent':
|
|
56
|
+
saveConsents('all');
|
|
57
|
+
break;
|
|
58
|
+
case 'reject-consent':
|
|
59
|
+
saveConsents('necessary');
|
|
60
|
+
break;
|
|
61
|
+
case 'custom-consent':
|
|
62
|
+
saveConsents('custom');
|
|
63
|
+
break;
|
|
64
|
+
case 'open-consent-dialog':
|
|
65
|
+
setIsPrivacyDialogOpen(true);
|
|
66
|
+
setShowPopup(false, true);
|
|
67
|
+
break;
|
|
68
|
+
default:
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
if (closeCookieBanner) setShowPopup(false);
|
|
72
|
+
if (closeCustomizeDialog) setIsPrivacyDialogOpen(false);
|
|
73
|
+
if (forwardedOnClick) forwardedOnClick();
|
|
74
|
+
}, [
|
|
75
|
+
closeCookieBanner,
|
|
76
|
+
closeCustomizeDialog,
|
|
77
|
+
forwardedOnClick,
|
|
78
|
+
saveConsents,
|
|
79
|
+
setIsPrivacyDialogOpen,
|
|
80
|
+
setShowPopup,
|
|
81
|
+
action
|
|
82
|
+
]);
|
|
83
|
+
const Comp = asChild ? react_slot_namespaceObject.Slot : 'button';
|
|
84
|
+
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(Comp, {
|
|
85
|
+
ref: ref,
|
|
86
|
+
...buttonStyle,
|
|
87
|
+
onClick: buttonClick,
|
|
88
|
+
...props
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
ConsentButton.displayName = 'ConsentButton';
|
|
92
|
+
var __webpack_export_target__ = exports;
|
|
93
|
+
for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
94
|
+
if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
|
|
95
|
+
value: true
|
|
96
|
+
});
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import type { VariantProps } from 'tailwind-variants';
|
|
2
|
+
import type { ConsentButtonProps } from './button.types';
|
|
3
|
+
/**
|
|
4
|
+
* Button component that allows users to reject non-essential cookies.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* When clicked, this button saves only necessary cookie consents and closes the banner.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* <CookieBannerRejectButton>
|
|
12
|
+
* Reject All Cookies
|
|
13
|
+
* </CookieBannerRejectButton>
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
export declare const ConsentButton: import("react").ForwardRefExoticComponent<ConsentButtonProps & VariantProps<import("tailwind-variants").TVReturnType<{
|
|
19
|
+
variant: {
|
|
20
|
+
primary: {};
|
|
21
|
+
neutral: {};
|
|
22
|
+
};
|
|
23
|
+
mode: {
|
|
24
|
+
filled: {};
|
|
25
|
+
stroke: {};
|
|
26
|
+
lighter: {};
|
|
27
|
+
ghost: {};
|
|
28
|
+
};
|
|
29
|
+
size: {
|
|
30
|
+
medium: {
|
|
31
|
+
root: string | undefined;
|
|
32
|
+
};
|
|
33
|
+
small: {
|
|
34
|
+
root: string | undefined;
|
|
35
|
+
};
|
|
36
|
+
xsmall: {
|
|
37
|
+
root: string | undefined;
|
|
38
|
+
};
|
|
39
|
+
xxsmall: {
|
|
40
|
+
root: string | undefined;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
}, {
|
|
44
|
+
root: (string | undefined)[];
|
|
45
|
+
icon: (string | undefined)[];
|
|
46
|
+
}, undefined, import("tailwind-variants/dist/config.js").TVConfig<{
|
|
47
|
+
variant: {
|
|
48
|
+
primary: {};
|
|
49
|
+
neutral: {};
|
|
50
|
+
};
|
|
51
|
+
mode: {
|
|
52
|
+
filled: {};
|
|
53
|
+
stroke: {};
|
|
54
|
+
lighter: {};
|
|
55
|
+
ghost: {};
|
|
56
|
+
};
|
|
57
|
+
size: {
|
|
58
|
+
medium: {
|
|
59
|
+
root: string | undefined;
|
|
60
|
+
};
|
|
61
|
+
small: {
|
|
62
|
+
root: string | undefined;
|
|
63
|
+
};
|
|
64
|
+
xsmall: {
|
|
65
|
+
root: string | undefined;
|
|
66
|
+
};
|
|
67
|
+
xxsmall: {
|
|
68
|
+
root: string | undefined;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
}, {
|
|
72
|
+
variant: {
|
|
73
|
+
primary: {};
|
|
74
|
+
neutral: {};
|
|
75
|
+
};
|
|
76
|
+
mode: {
|
|
77
|
+
filled: {};
|
|
78
|
+
stroke: {};
|
|
79
|
+
lighter: {};
|
|
80
|
+
ghost: {};
|
|
81
|
+
};
|
|
82
|
+
size: {
|
|
83
|
+
medium: {
|
|
84
|
+
root: string | undefined;
|
|
85
|
+
};
|
|
86
|
+
small: {
|
|
87
|
+
root: string | undefined;
|
|
88
|
+
};
|
|
89
|
+
xsmall: {
|
|
90
|
+
root: string | undefined;
|
|
91
|
+
};
|
|
92
|
+
xxsmall: {
|
|
93
|
+
root: string | undefined;
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
}>, {
|
|
97
|
+
variant: {
|
|
98
|
+
primary: {};
|
|
99
|
+
neutral: {};
|
|
100
|
+
};
|
|
101
|
+
mode: {
|
|
102
|
+
filled: {};
|
|
103
|
+
stroke: {};
|
|
104
|
+
lighter: {};
|
|
105
|
+
ghost: {};
|
|
106
|
+
};
|
|
107
|
+
size: {
|
|
108
|
+
medium: {
|
|
109
|
+
root: string | undefined;
|
|
110
|
+
};
|
|
111
|
+
small: {
|
|
112
|
+
root: string | undefined;
|
|
113
|
+
};
|
|
114
|
+
xsmall: {
|
|
115
|
+
root: string | undefined;
|
|
116
|
+
};
|
|
117
|
+
xxsmall: {
|
|
118
|
+
root: string | undefined;
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
}, {
|
|
122
|
+
root: (string | undefined)[];
|
|
123
|
+
icon: (string | undefined)[];
|
|
124
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
125
|
+
variant: {
|
|
126
|
+
primary: {};
|
|
127
|
+
neutral: {};
|
|
128
|
+
};
|
|
129
|
+
mode: {
|
|
130
|
+
filled: {};
|
|
131
|
+
stroke: {};
|
|
132
|
+
lighter: {};
|
|
133
|
+
ghost: {};
|
|
134
|
+
};
|
|
135
|
+
size: {
|
|
136
|
+
medium: {
|
|
137
|
+
root: string | undefined;
|
|
138
|
+
};
|
|
139
|
+
small: {
|
|
140
|
+
root: string | undefined;
|
|
141
|
+
};
|
|
142
|
+
xsmall: {
|
|
143
|
+
root: string | undefined;
|
|
144
|
+
};
|
|
145
|
+
xxsmall: {
|
|
146
|
+
root: string | undefined;
|
|
147
|
+
};
|
|
148
|
+
};
|
|
149
|
+
}, {
|
|
150
|
+
root: (string | undefined)[];
|
|
151
|
+
icon: (string | undefined)[];
|
|
152
|
+
}, undefined, import("tailwind-variants/dist/config.js").TVConfig<{
|
|
153
|
+
variant: {
|
|
154
|
+
primary: {};
|
|
155
|
+
neutral: {};
|
|
156
|
+
};
|
|
157
|
+
mode: {
|
|
158
|
+
filled: {};
|
|
159
|
+
stroke: {};
|
|
160
|
+
lighter: {};
|
|
161
|
+
ghost: {};
|
|
162
|
+
};
|
|
163
|
+
size: {
|
|
164
|
+
medium: {
|
|
165
|
+
root: string | undefined;
|
|
166
|
+
};
|
|
167
|
+
small: {
|
|
168
|
+
root: string | undefined;
|
|
169
|
+
};
|
|
170
|
+
xsmall: {
|
|
171
|
+
root: string | undefined;
|
|
172
|
+
};
|
|
173
|
+
xxsmall: {
|
|
174
|
+
root: string | undefined;
|
|
175
|
+
};
|
|
176
|
+
};
|
|
177
|
+
}, {
|
|
178
|
+
variant: {
|
|
179
|
+
primary: {};
|
|
180
|
+
neutral: {};
|
|
181
|
+
};
|
|
182
|
+
mode: {
|
|
183
|
+
filled: {};
|
|
184
|
+
stroke: {};
|
|
185
|
+
lighter: {};
|
|
186
|
+
ghost: {};
|
|
187
|
+
};
|
|
188
|
+
size: {
|
|
189
|
+
medium: {
|
|
190
|
+
root: string | undefined;
|
|
191
|
+
};
|
|
192
|
+
small: {
|
|
193
|
+
root: string | undefined;
|
|
194
|
+
};
|
|
195
|
+
xsmall: {
|
|
196
|
+
root: string | undefined;
|
|
197
|
+
};
|
|
198
|
+
xxsmall: {
|
|
199
|
+
root: string | undefined;
|
|
200
|
+
};
|
|
201
|
+
};
|
|
202
|
+
}>, unknown, unknown, undefined>>> & {
|
|
203
|
+
action: "accept-consent" | "reject-consent" | "custom-consent" | "open-consent-dialog";
|
|
204
|
+
closeCustomizeDialog?: boolean;
|
|
205
|
+
closeCookieBanner?: boolean;
|
|
206
|
+
} & import("react").RefAttributes<HTMLButtonElement>>;
|
|
207
|
+
//# sourceMappingURL=button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../../src/components/shared/primitives/button.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAMtD,OAAO,KAAK,EAAwB,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAE/E;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAKpB,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,qBAAqB;2BACD,OAAO;wBACV,OAAO;qDAkF7B,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
|
|
2
|
+
import * as __WEBPACK_EXTERNAL_MODULE__radix_ui_react_slot_85c2da36__ from "@radix-ui/react-slot";
|
|
3
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE__hooks_use_consent_manager_js_8a30bd26__ from "../../../hooks/use-consent-manager.js";
|
|
5
|
+
import * as __WEBPACK_EXTERNAL_MODULE__hooks_use_theme_js_3abff3d7__ from "../../../hooks/use-theme.js";
|
|
6
|
+
import * as __WEBPACK_EXTERNAL_MODULE__utils_use_styles_js_413e0e0a__ from "../../../utils/use-styles.js";
|
|
7
|
+
import * as __WEBPACK_EXTERNAL_MODULE__ui_button_index_js_15bac350__ from "../ui/button/index.js";
|
|
8
|
+
const ConsentButton = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.forwardRef)(({ asChild, className: forwardedClassName, style, noStyle, action, themeKey, baseClassName, variant = 'neutral', mode = 'stroke', size = 'small', onClick: forwardedOnClick, closeCookieBanner = false, closeCustomizeDialog = false, ...props }, ref)=>{
|
|
9
|
+
const { saveConsents, setShowPopup, setIsPrivacyDialogOpen } = (0, __WEBPACK_EXTERNAL_MODULE__hooks_use_consent_manager_js_8a30bd26__.useConsentManager)();
|
|
10
|
+
const { noStyle: contextNoStyle } = (0, __WEBPACK_EXTERNAL_MODULE__hooks_use_theme_js_3abff3d7__.useTheme)();
|
|
11
|
+
const buttonStyle = (0, __WEBPACK_EXTERNAL_MODULE__utils_use_styles_js_413e0e0a__.useStyles)(themeKey ?? 'button', {
|
|
12
|
+
baseClassName: [
|
|
13
|
+
!(contextNoStyle || noStyle) && __WEBPACK_EXTERNAL_MODULE__ui_button_index_js_15bac350__.buttonVariants({
|
|
14
|
+
variant,
|
|
15
|
+
mode,
|
|
16
|
+
size
|
|
17
|
+
}).root()
|
|
18
|
+
],
|
|
19
|
+
style: style,
|
|
20
|
+
className: forwardedClassName,
|
|
21
|
+
noStyle: noStyle
|
|
22
|
+
});
|
|
23
|
+
const buttonClick = (0, __WEBPACK_EXTERNAL_MODULE_react__.useCallback)(()=>{
|
|
24
|
+
switch(action){
|
|
25
|
+
case 'accept-consent':
|
|
26
|
+
saveConsents('all');
|
|
27
|
+
break;
|
|
28
|
+
case 'reject-consent':
|
|
29
|
+
saveConsents('necessary');
|
|
30
|
+
break;
|
|
31
|
+
case 'custom-consent':
|
|
32
|
+
saveConsents('custom');
|
|
33
|
+
break;
|
|
34
|
+
case 'open-consent-dialog':
|
|
35
|
+
setIsPrivacyDialogOpen(true);
|
|
36
|
+
setShowPopup(false, true);
|
|
37
|
+
break;
|
|
38
|
+
default:
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
if (closeCookieBanner) setShowPopup(false);
|
|
42
|
+
if (closeCustomizeDialog) setIsPrivacyDialogOpen(false);
|
|
43
|
+
if (forwardedOnClick) forwardedOnClick();
|
|
44
|
+
}, [
|
|
45
|
+
closeCookieBanner,
|
|
46
|
+
closeCustomizeDialog,
|
|
47
|
+
forwardedOnClick,
|
|
48
|
+
saveConsents,
|
|
49
|
+
setIsPrivacyDialogOpen,
|
|
50
|
+
setShowPopup,
|
|
51
|
+
action
|
|
52
|
+
]);
|
|
53
|
+
const Comp = asChild ? __WEBPACK_EXTERNAL_MODULE__radix_ui_react_slot_85c2da36__.Slot : 'button';
|
|
54
|
+
return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Comp, {
|
|
55
|
+
ref: ref,
|
|
56
|
+
...buttonStyle,
|
|
57
|
+
onClick: buttonClick,
|
|
58
|
+
...props
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
ConsentButton.displayName = 'ConsentButton';
|
|
62
|
+
export { ConsentButton };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.r = function(exports1) {
|
|
5
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
6
|
+
value: 'Module'
|
|
7
|
+
});
|
|
8
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
9
|
+
value: true
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
})();
|
|
13
|
+
var __webpack_exports__ = {};
|
|
14
|
+
__webpack_require__.r(__webpack_exports__);
|
|
15
|
+
var __webpack_export_target__ = exports;
|
|
16
|
+
for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
17
|
+
if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
|
|
18
|
+
value: true
|
|
19
|
+
});
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { ComponentRef, HTMLAttributes } from 'react';
|
|
2
|
+
import type { ButtonSharedProps } from '../ui/button';
|
|
3
|
+
import type { ExtendThemeKeys, ThemeValue } from '../../../types/theme';
|
|
4
|
+
import type { CSSVariables } from '../../../types/theme';
|
|
5
|
+
export type ConsentButtonElement = ComponentRef<'button'>;
|
|
6
|
+
/**
|
|
7
|
+
* Props for CookieBanner button components.
|
|
8
|
+
*
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
export interface ConsentButtonProps extends Omit<HTMLAttributes<HTMLButtonElement>, 'style'>, ExtendThemeKeys<CSSVariables> {
|
|
12
|
+
/**
|
|
13
|
+
* @remarks
|
|
14
|
+
* When true, the button will not apply any styles.
|
|
15
|
+
*/
|
|
16
|
+
noStyle?: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* @remarks
|
|
19
|
+
* When true, the button will render its children directly without wrapping them in a button element.
|
|
20
|
+
* This enables better composition with custom button implementations.
|
|
21
|
+
*/
|
|
22
|
+
asChild?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* @remarks
|
|
25
|
+
* Allows for custom click handling.
|
|
26
|
+
*/
|
|
27
|
+
onClick?: () => void;
|
|
28
|
+
}
|
|
29
|
+
export interface ConsentButtonStyles {
|
|
30
|
+
/** @remarks Styles for the root container element */
|
|
31
|
+
acceptButton?: ThemeValue & ButtonSharedProps;
|
|
32
|
+
rejectButton?: ThemeValue & ButtonSharedProps;
|
|
33
|
+
customizeButton?: ThemeValue & ButtonSharedProps;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=button.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button.types.d.ts","sourceRoot":"","sources":["../../../../src/components/shared/primitives/button.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;AAE1D;;;;GAIG;AACH,MAAM,WAAW,kBAChB,SAAQ,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC,EACvD,eAAe,CAAC,YAAY,CAAC;IAC9B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IACnC,qDAAqD;IACrD,YAAY,CAAC,EAAE,UAAU,GAAG,iBAAiB,CAAC;IAC9C,YAAY,CAAC,EAAE,UAAU,GAAG,iBAAiB,CAAC;IAC9C,eAAe,CAAC,EAAE,UAAU,GAAG,iBAAiB,CAAC;CACjD"}
|
|
File without changes
|