@blimu/react 1.1.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/client/auth.service.cjs +9 -10
- package/dist/client/auth.service.cjs.map +1 -1
- package/dist/client/auth.service.d.ts.map +1 -1
- package/dist/client/auth.service.js +0 -1
- package/dist/client/auth.service.js.map +1 -1
- package/dist/client/runtime-client.cjs +1 -1
- package/dist/client/runtime-client.cjs.map +1 -1
- package/dist/client/runtime-client.d.ts +1 -1
- package/dist/client/runtime-client.d.ts.map +1 -1
- package/dist/client/runtime-client.js +1 -1
- package/dist/client/runtime-client.js.map +1 -1
- package/dist/components/index.cjs +6 -6
- package/dist/components/index.d.ts +6 -6
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +3 -3
- package/dist/components/members-list.cjs +2 -2
- package/dist/components/members-list.cjs.map +1 -1
- package/dist/components/members-list.d.ts.map +1 -1
- package/dist/components/members-list.js +2 -2
- package/dist/components/members-list.js.map +1 -1
- package/dist/components/sign-in-button.cjs +1 -1
- package/dist/components/sign-in-button.cjs.map +1 -1
- package/dist/components/sign-in-button.d.ts.map +1 -1
- package/dist/components/sign-in-button.js +1 -1
- package/dist/components/sign-in-button.js.map +1 -1
- package/dist/components/ui/avatar.cjs +1 -1
- package/dist/components/ui/avatar.cjs.map +1 -1
- package/dist/components/ui/avatar.d.ts +2 -2
- package/dist/components/ui/avatar.d.ts.map +1 -1
- package/dist/components/ui/avatar.js +1 -1
- package/dist/components/ui/avatar.js.map +1 -1
- package/dist/components/ui/badge.d.ts +2 -2
- package/dist/components/ui/badge.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.cjs +2 -2
- package/dist/components/ui/dropdown-menu.cjs.map +1 -1
- package/dist/components/ui/dropdown-menu.d.ts +2 -2
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.js +2 -2
- package/dist/components/ui/dropdown-menu.js.map +1 -1
- package/dist/components/ui/popover.d.ts +2 -2
- package/dist/components/ui/popover.d.ts.map +1 -1
- package/dist/components/ui/separator.d.ts +1 -1
- package/dist/components/ui/separator.d.ts.map +1 -1
- package/dist/components/user-avatar.cjs +1 -1
- package/dist/components/user-avatar.cjs.map +1 -1
- package/dist/components/user-avatar.d.ts +5 -5
- package/dist/components/user-avatar.d.ts.map +1 -1
- package/dist/components/user-avatar.js +1 -1
- package/dist/components/user-avatar.js.map +1 -1
- package/dist/components/user-button/user-button.cjs +1 -1
- package/dist/components/user-button/user-button.cjs.map +1 -1
- package/dist/components/user-button/user-button.d.ts +1 -1
- package/dist/components/user-button/user-button.d.ts.map +1 -1
- package/dist/components/user-button/user-button.js +1 -1
- package/dist/components/user-button/user-button.js.map +1 -1
- package/dist/hooks/index.cjs +2 -2
- package/dist/hooks/index.d.ts +3 -3
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/hooks/use-auth.cjs.map +1 -1
- package/dist/hooks/use-auth.d.ts.map +1 -1
- package/dist/hooks/use-auth.js.map +1 -1
- package/dist/hooks/use-members.cjs +3 -3
- package/dist/hooks/use-members.cjs.map +1 -1
- package/dist/hooks/use-members.d.ts +5 -5
- package/dist/hooks/use-members.d.ts.map +1 -1
- package/dist/hooks/use-members.js +3 -3
- package/dist/hooks/use-members.js.map +1 -1
- package/dist/index.cjs +6 -6
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/lib/variants.d.ts +1 -1
- package/dist/node_modules/@radix-ui/react-menu/dist/index.cjs +1 -1
- package/dist/node_modules/@radix-ui/react-menu/dist/index.cjs.map +1 -1
- package/dist/node_modules/js-cookie/dist/js.cookie.cjs +2 -1
- package/dist/node_modules/js-cookie/dist/js.cookie.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/Icon.cjs +3 -2
- package/dist/node_modules/lucide-react/dist/esm/Icon.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.cjs +3 -2
- package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.cjs +2 -1
- package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/check.cjs +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/check.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-right.cjs +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-right.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/circle.cjs +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/circle.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/log-out.cjs +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/log-out.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/Combination.cjs +3 -2
- package/dist/node_modules/react-remove-scroll/dist/es2015/Combination.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/sidecar.cjs +2 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/sidecar.cjs.map +1 -1
- package/dist/node_modules/tailwindcss/dist/plugin.cjs +2 -1
- package/dist/node_modules/tailwindcss/dist/plugin.cjs.map +1 -1
- package/dist/providers/blimu/blimu.context.cjs.map +1 -1
- package/dist/providers/blimu/blimu.context.d.ts +4 -4
- package/dist/providers/blimu/blimu.context.d.ts.map +1 -1
- package/dist/providers/blimu/blimu.context.js.map +1 -1
- package/dist/providers/blimu/blimu.provider.cjs.map +1 -1
- package/dist/providers/blimu/blimu.provider.d.ts +1 -1
- package/dist/providers/blimu/blimu.provider.d.ts.map +1 -1
- package/dist/providers/blimu/blimu.provider.js.map +1 -1
- package/dist/providers/index.cjs +2 -2
- package/dist/providers/index.d.ts +3 -3
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +1 -1
- package/dist/providers/theme/index.d.ts +2 -2
- package/dist/providers/theme/index.d.ts.map +1 -1
- package/dist/providers/theme/theme.provider.cjs.map +1 -1
- package/dist/providers/theme/theme.provider.d.ts.map +1 -1
- package/dist/providers/theme/theme.provider.js.map +1 -1
- package/dist/styles/styles.css +34 -40
- package/dist/styles/tw-styles.css +34 -40
- package/dist/tailwind.cjs +39 -39
- package/dist/tailwind.cjs.map +1 -1
- package/dist/tailwind.js +38 -38
- package/dist/tailwind.js.map +1 -1
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.ts +22 -8
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +29 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"js.cookie.cjs","sources":["../../../../../../node_modules/js-cookie/dist/js.cookie.mjs"],"sourcesContent":["/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\n"],"names":["converter"],"mappings":"
|
|
1
|
+
{"version":3,"file":"js.cookie.cjs","sources":["../../../../../../node_modules/js-cookie/dist/js.cookie.mjs"],"sourcesContent":["/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\n"],"names":["converter"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
2
3
|
const React = require("react");
|
|
3
4
|
const defaultAttributes = require("./defaultAttributes.cjs");
|
|
4
5
|
const utils = require("./shared/src/utils.cjs");
|
|
@@ -16,7 +17,7 @@ const Icon = React.forwardRef(
|
|
|
16
17
|
"svg",
|
|
17
18
|
{
|
|
18
19
|
ref,
|
|
19
|
-
...defaultAttributes,
|
|
20
|
+
...defaultAttributes.default,
|
|
20
21
|
width: size,
|
|
21
22
|
height: size,
|
|
22
23
|
stroke: color,
|
|
@@ -31,5 +32,5 @@ const Icon = React.forwardRef(
|
|
|
31
32
|
]
|
|
32
33
|
)
|
|
33
34
|
);
|
|
34
|
-
|
|
35
|
+
exports.default = Icon;
|
|
35
36
|
//# sourceMappingURL=Icon.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.cjs","sources":["../../../../../../../node_modules/lucide-react/dist/esm/Icon.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.js';\nimport { mergeClasses, hasA11yProp } from './shared/src/utils.js';\n\nconst Icon = forwardRef(\n ({\n color = \"currentColor\",\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = \"\",\n children,\n iconNode,\n ...rest\n }, ref) => createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: mergeClasses(\"lucide\", className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n )\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.js.map\n"],"names":["forwardRef","createElement","mergeClasses","hasA11yProp"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Icon.cjs","sources":["../../../../../../../node_modules/lucide-react/dist/esm/Icon.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.js';\nimport { mergeClasses, hasA11yProp } from './shared/src/utils.js';\n\nconst Icon = forwardRef(\n ({\n color = \"currentColor\",\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = \"\",\n children,\n iconNode,\n ...rest\n }, ref) => createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: mergeClasses(\"lucide\", className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n )\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.js.map\n"],"names":["forwardRef","createElement","defaultAttributes","mergeClasses","hasA11yProp"],"mappings":";;;;;AAWK,MAAC,OAAOA,MAAAA;AAAAA,EACX,CAAC;AAAA,IACC,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,cAAc;AAAA,IACd;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACP,GAAK,QAAQC,MAAAA;AAAAA,IACT;AAAA,IACA;AAAA,MACE;AAAA,MACA,GAAGC,kBAAAA;AAAAA,MACH,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,aAAa,sBAAsB,OAAO,WAAW,IAAI,KAAK,OAAO,IAAI,IAAI;AAAA,MAC7E,WAAWC,MAAAA,aAAa,UAAU,SAAS;AAAA,MAC3C,GAAG,CAAC,YAAY,CAACC,MAAAA,YAAY,IAAI,KAAK,EAAE,eAAe,OAAM;AAAA,MAC7D,GAAG;AAAA,IACT;AAAA,IACI;AAAA,MACE,GAAG,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,MAAMH,MAAAA,cAAc,KAAK,KAAK,CAAC;AAAA,MAC3D,GAAG,MAAM,QAAQ,QAAQ,IAAI,WAAW,CAAC,QAAQ;AAAA,IACvD;AAAA,EACA;AACA;;","x_google_ignoreList":[0]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
2
3
|
const React = require("react");
|
|
3
4
|
const utils = require("./shared/src/utils.cjs");
|
|
4
5
|
const Icon = require("./Icon.cjs");
|
|
5
6
|
const createLucideIcon = (iconName, iconNode) => {
|
|
6
7
|
const Component = React.forwardRef(
|
|
7
|
-
({ className, ...props }, ref) => React.createElement(Icon, {
|
|
8
|
+
({ className, ...props }, ref) => React.createElement(Icon.default, {
|
|
8
9
|
ref,
|
|
9
10
|
iconNode,
|
|
10
11
|
className: utils.mergeClasses(
|
|
@@ -18,5 +19,5 @@ const createLucideIcon = (iconName, iconNode) => {
|
|
|
18
19
|
Component.displayName = utils.toPascalCase(iconName);
|
|
19
20
|
return Component;
|
|
20
21
|
};
|
|
21
|
-
|
|
22
|
+
exports.default = createLucideIcon;
|
|
22
23
|
//# sourceMappingURL=createLucideIcon.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createLucideIcon.cjs","sources":["../../../../../../../node_modules/lucide-react/dist/esm/createLucideIcon.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses, toKebabCase, toPascalCase } from './shared/src/utils.js';\nimport Icon from './Icon.js';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.js.map\n"],"names":["forwardRef","createElement","mergeClasses","toKebabCase","toPascalCase"],"mappings":"
|
|
1
|
+
{"version":3,"file":"createLucideIcon.cjs","sources":["../../../../../../../node_modules/lucide-react/dist/esm/createLucideIcon.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses, toKebabCase, toPascalCase } from './shared/src/utils.js';\nimport Icon from './Icon.js';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.js.map\n"],"names":["forwardRef","createElement","Icon","mergeClasses","toKebabCase","toPascalCase"],"mappings":";;;;;AAWK,MAAC,mBAAmB,CAAC,UAAU,aAAa;AAC/C,QAAM,YAAYA,MAAAA;AAAAA,IAChB,CAAC,EAAE,WAAW,GAAG,MAAK,GAAI,QAAQC,MAAAA,cAAcC,cAAM;AAAA,MACpD;AAAA,MACA;AAAA,MACA,WAAWC,MAAAA;AAAAA,QACT,UAAUC,MAAAA,YAAYC,MAAAA,aAAa,QAAQ,CAAC,CAAC;AAAA,QAC7C,UAAU,QAAQ;AAAA,QAClB;AAAA,MACR;AAAA,MACM,GAAG;AAAA,IACT,CAAK;AAAA,EACL;AACE,YAAU,cAAcA,MAAAA,aAAa,QAAQ;AAC7C,SAAO;AACT;;","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
2
3
|
var defaultAttributes = {
|
|
3
4
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4
5
|
width: 24,
|
|
@@ -10,5 +11,5 @@ var defaultAttributes = {
|
|
|
10
11
|
strokeLinecap: "round",
|
|
11
12
|
strokeLinejoin: "round"
|
|
12
13
|
};
|
|
13
|
-
|
|
14
|
+
exports.default = defaultAttributes;
|
|
14
15
|
//# sourceMappingURL=defaultAttributes.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultAttributes.cjs","sources":["../../../../../../../node_modules/lucide-react/dist/esm/defaultAttributes.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.js.map\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"defaultAttributes.cjs","sources":["../../../../../../../node_modules/lucide-react/dist/esm/defaultAttributes.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.js.map\n"],"names":[],"mappings":";;AAOG,IAAC,oBAAoB;AAAA,EACtB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,eAAe;AAAA,EACf,gBAAgB;AAClB;;","x_google_ignoreList":[0]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const createLucideIcon = require("../createLucideIcon.cjs");
|
|
4
4
|
const __iconNode = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
|
|
5
|
-
const Check = createLucideIcon("check", __iconNode);
|
|
5
|
+
const Check = createLucideIcon.default("check", __iconNode);
|
|
6
6
|
exports.__iconNode = __iconNode;
|
|
7
7
|
exports.default = Check;
|
|
8
8
|
//# sourceMappingURL=check.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.cjs","sources":["../../../../../../../../node_modules/lucide-react/dist/esm/icons/check.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"M20 6 9 17l-5-5\", key: \"1gmf2c\" }]];\nconst Check = createLucideIcon(\"check\", __iconNode);\n\nexport { __iconNode, Check as default };\n//# sourceMappingURL=check.js.map\n"],"names":[],"mappings":";;;AASK,MAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,GAAG,mBAAmB,KAAK,UAAU,CAAC;AAChE,MAAC,
|
|
1
|
+
{"version":3,"file":"check.cjs","sources":["../../../../../../../../node_modules/lucide-react/dist/esm/icons/check.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"M20 6 9 17l-5-5\", key: \"1gmf2c\" }]];\nconst Check = createLucideIcon(\"check\", __iconNode);\n\nexport { __iconNode, Check as default };\n//# sourceMappingURL=check.js.map\n"],"names":["createLucideIcon"],"mappings":";;;AASK,MAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,GAAG,mBAAmB,KAAK,UAAU,CAAC;AAChE,MAAC,QAAQA,iBAAAA,QAAiB,SAAS,UAAU;;;","x_google_ignoreList":[0]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const createLucideIcon = require("../createLucideIcon.cjs");
|
|
4
4
|
const __iconNode = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
|
|
5
|
-
const ChevronRight = createLucideIcon("chevron-right", __iconNode);
|
|
5
|
+
const ChevronRight = createLucideIcon.default("chevron-right", __iconNode);
|
|
6
6
|
exports.__iconNode = __iconNode;
|
|
7
7
|
exports.default = ChevronRight;
|
|
8
8
|
//# sourceMappingURL=chevron-right.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chevron-right.cjs","sources":["../../../../../../../../node_modules/lucide-react/dist/esm/icons/chevron-right.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m9 18 6-6-6-6\", key: \"mthhwq\" }]];\nconst ChevronRight = createLucideIcon(\"chevron-right\", __iconNode);\n\nexport { __iconNode, ChevronRight as default };\n//# sourceMappingURL=chevron-right.js.map\n"],"names":[],"mappings":";;;AASK,MAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,GAAG,iBAAiB,KAAK,UAAU,CAAC;AAC9D,MAAC,
|
|
1
|
+
{"version":3,"file":"chevron-right.cjs","sources":["../../../../../../../../node_modules/lucide-react/dist/esm/icons/chevron-right.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m9 18 6-6-6-6\", key: \"mthhwq\" }]];\nconst ChevronRight = createLucideIcon(\"chevron-right\", __iconNode);\n\nexport { __iconNode, ChevronRight as default };\n//# sourceMappingURL=chevron-right.js.map\n"],"names":["createLucideIcon"],"mappings":";;;AASK,MAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,GAAG,iBAAiB,KAAK,UAAU,CAAC;AAC9D,MAAC,eAAeA,iBAAAA,QAAiB,iBAAiB,UAAU;;;","x_google_ignoreList":[0]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
3
|
const createLucideIcon = require("../createLucideIcon.cjs");
|
|
4
4
|
const __iconNode = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]];
|
|
5
|
-
const Circle = createLucideIcon("circle", __iconNode);
|
|
5
|
+
const Circle = createLucideIcon.default("circle", __iconNode);
|
|
6
6
|
exports.__iconNode = __iconNode;
|
|
7
7
|
exports.default = Circle;
|
|
8
8
|
//# sourceMappingURL=circle.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circle.cjs","sources":["../../../../../../../../node_modules/lucide-react/dist/esm/icons/circle.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }]];\nconst Circle = createLucideIcon(\"circle\", __iconNode);\n\nexport { __iconNode, Circle as default };\n//# sourceMappingURL=circle.js.map\n"],"names":[],"mappings":";;;AASK,MAAC,aAAa,CAAC,CAAC,UAAU,EAAE,IAAI,MAAM,IAAI,MAAM,GAAG,MAAM,KAAK,SAAQ,CAAE,CAAC;AACzE,MAAC,
|
|
1
|
+
{"version":3,"file":"circle.cjs","sources":["../../../../../../../../node_modules/lucide-react/dist/esm/icons/circle.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }]];\nconst Circle = createLucideIcon(\"circle\", __iconNode);\n\nexport { __iconNode, Circle as default };\n//# sourceMappingURL=circle.js.map\n"],"names":["createLucideIcon"],"mappings":";;;AASK,MAAC,aAAa,CAAC,CAAC,UAAU,EAAE,IAAI,MAAM,IAAI,MAAM,GAAG,MAAM,KAAK,SAAQ,CAAE,CAAC;AACzE,MAAC,SAASA,iBAAAA,QAAiB,UAAU,UAAU;;;","x_google_ignoreList":[0]}
|
|
@@ -6,7 +6,7 @@ const __iconNode = [
|
|
|
6
6
|
["path", { d: "M21 12H9", key: "dn1m92" }],
|
|
7
7
|
["path", { d: "M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4", key: "1uf3rs" }]
|
|
8
8
|
];
|
|
9
|
-
const LogOut = createLucideIcon("log-out", __iconNode);
|
|
9
|
+
const LogOut = createLucideIcon.default("log-out", __iconNode);
|
|
10
10
|
exports.__iconNode = __iconNode;
|
|
11
11
|
exports.default = LogOut;
|
|
12
12
|
//# sourceMappingURL=log-out.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log-out.cjs","sources":["../../../../../../../../node_modules/lucide-react/dist/esm/icons/log-out.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m16 17 5-5-5-5\", key: \"1bji2h\" }],\n [\"path\", { d: \"M21 12H9\", key: \"dn1m92\" }],\n [\"path\", { d: \"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4\", key: \"1uf3rs\" }]\n];\nconst LogOut = createLucideIcon(\"log-out\", __iconNode);\n\nexport { __iconNode, LogOut as default };\n//# sourceMappingURL=log-out.js.map\n"],"names":[],"mappings":";;;AASK,MAAC,aAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,GAAG,kBAAkB,KAAK,SAAQ,CAAE;AAAA,EAC/C,CAAC,QAAQ,EAAE,GAAG,YAAY,KAAK,SAAQ,CAAE;AAAA,EACzC,CAAC,QAAQ,EAAE,GAAG,2CAA2C,KAAK,SAAQ,CAAE;AAC1E;AACK,MAAC,
|
|
1
|
+
{"version":3,"file":"log-out.cjs","sources":["../../../../../../../../node_modules/lucide-react/dist/esm/icons/log-out.js"],"sourcesContent":["/**\n * @license lucide-react v0.562.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m16 17 5-5-5-5\", key: \"1bji2h\" }],\n [\"path\", { d: \"M21 12H9\", key: \"dn1m92\" }],\n [\"path\", { d: \"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4\", key: \"1uf3rs\" }]\n];\nconst LogOut = createLucideIcon(\"log-out\", __iconNode);\n\nexport { __iconNode, LogOut as default };\n//# sourceMappingURL=log-out.js.map\n"],"names":["createLucideIcon"],"mappings":";;;AASK,MAAC,aAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,GAAG,kBAAkB,KAAK,SAAQ,CAAE;AAAA,EAC/C,CAAC,QAAQ,EAAE,GAAG,YAAY,KAAK,SAAQ,CAAE;AAAA,EACzC,CAAC,QAAQ,EAAE,GAAG,2CAA2C,KAAK,SAAQ,CAAE;AAC1E;AACK,MAAC,SAASA,iBAAAA,QAAiB,WAAW,UAAU;;;","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
2
3
|
const tslib_es6 = require("../../../tslib/tslib.es6.cjs");
|
|
3
4
|
const React = require("react");
|
|
4
5
|
const UI = require("./UI.cjs");
|
|
@@ -21,8 +22,8 @@ function _interopNamespaceDefault(e) {
|
|
|
21
22
|
}
|
|
22
23
|
const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
|
|
23
24
|
var ReactRemoveScroll = React__namespace.forwardRef(function(props, ref) {
|
|
24
|
-
return React__namespace.createElement(UI.RemoveScroll, tslib_es6.__assign({}, props, { ref, sideCar: sidecar }));
|
|
25
|
+
return React__namespace.createElement(UI.RemoveScroll, tslib_es6.__assign({}, props, { ref, sideCar: sidecar.default }));
|
|
25
26
|
});
|
|
26
27
|
ReactRemoveScroll.classNames = UI.RemoveScroll.classNames;
|
|
27
|
-
|
|
28
|
+
exports.default = ReactRemoveScroll;
|
|
28
29
|
//# sourceMappingURL=Combination.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combination.cjs","sources":["../../../../../../../node_modules/react-remove-scroll/dist/es2015/Combination.js"],"sourcesContent":["import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, __assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n"],"names":["React","RemoveScroll","__assign","SideCar"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Combination.cjs","sources":["../../../../../../../node_modules/react-remove-scroll/dist/es2015/Combination.js"],"sourcesContent":["import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, __assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n"],"names":["React","RemoveScroll","__assign","SideCar"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAIG,IAAC,oBAAoBA,iBAAM,WAAW,SAAU,OAAO,KAAK;AAAE,SAAQA,iBAAM,cAAcC,GAAAA,cAAcC,UAAAA,SAAS,IAAI,OAAO,EAAE,KAAU,SAASC,QAAAA,QAAO,CAAE,CAAC;AAAI,CAAC;AACnK,kBAAkB,aAAaF,GAAAA,aAAa;;","x_google_ignoreList":[0]}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
2
3
|
const SideEffect = require("./SideEffect.cjs");
|
|
3
4
|
const medium = require("./medium.cjs");
|
|
4
5
|
const _exports = require("../../../use-sidecar/dist/es2015/exports.cjs");
|
|
5
6
|
const SideCar = _exports.exportSidecar(medium.effectCar, SideEffect.RemoveScrollSideCar);
|
|
6
|
-
|
|
7
|
+
exports.default = SideCar;
|
|
7
8
|
//# sourceMappingURL=sidecar.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidecar.cjs","sources":["../../../../../../../node_modules/react-remove-scroll/dist/es2015/sidecar.js"],"sourcesContent":["import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n"],"names":["exportSidecar","effectCar","RemoveScrollSideCar"],"mappings":"
|
|
1
|
+
{"version":3,"file":"sidecar.cjs","sources":["../../../../../../../node_modules/react-remove-scroll/dist/es2015/sidecar.js"],"sourcesContent":["import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n"],"names":["exportSidecar","effectCar","RemoveScrollSideCar"],"mappings":";;;;;AAGA,MAAA,UAAeA,SAAAA,cAAcC,OAAAA,WAAWC,8BAAmB;;","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
2
3
|
function g(i, n) {
|
|
3
4
|
return { handler: i, config: n };
|
|
4
5
|
}
|
|
@@ -9,5 +10,5 @@ g.withOptions = function(i, n = () => ({})) {
|
|
|
9
10
|
return t.__isOptionsFunction = true, t;
|
|
10
11
|
};
|
|
11
12
|
var u = g;
|
|
12
|
-
|
|
13
|
+
exports.default = u;
|
|
13
14
|
//# sourceMappingURL=plugin.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.cjs","sources":["../../../../../../node_modules/tailwindcss/dist/plugin.mjs"],"sourcesContent":["function g(i,n){return{handler:i,config:n}}g.withOptions=function(i,n=()=>({})){function t(o){return{handler:i(o),config:n(o)}}return t.__isOptionsFunction=!0,t};var u=g;export{u as default};\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"plugin.cjs","sources":["../../../../../../node_modules/tailwindcss/dist/plugin.mjs"],"sourcesContent":["function g(i,n){return{handler:i,config:n}}g.withOptions=function(i,n=()=>({})){function t(o){return{handler:i(o),config:n(o)}}return t.__isOptionsFunction=!0,t};var u=g;export{u as default};\n"],"names":[],"mappings":";;AAAA,SAAS,EAAE,GAAE,GAAE;AAAC,SAAM,EAAC,SAAQ,GAAE,QAAO,EAAC;AAAC;AAAC,EAAE,cAAY,SAAS,GAAE,IAAE,OAAK,CAAA,IAAI;AAAC,WAAS,EAAE,GAAE;AAAC,WAAM,EAAC,SAAQ,EAAE,CAAC,GAAE,QAAO,EAAE,CAAC,EAAC;AAAA,EAAC;AAAC,SAAO,EAAE,sBAAoB,MAAG;AAAC;AAAK,IAAC,IAAE;;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blimu.context.cjs","sources":["../../../src/providers/blimu/blimu.context.tsx"],"sourcesContent":["import { createContext } from 'react';\n\nimport type { BlimuRuntimeClientWrapper } from '../../client/runtime-client';\nimport type { AuthState, BlimuConfig } from '../../types';\nimport type { Theme } from '../theme/theme.context';\n\nexport interface AppearanceConfig {\n /**\n * Base theme (light, dark, or system)\n * @default \"system\"\n */\n baseTheme?: Theme;\n /**\n * CSS variable overrides\n */\n variables?: Record<string, string
|
|
1
|
+
{"version":3,"file":"blimu.context.cjs","sources":["../../../src/providers/blimu/blimu.context.tsx"],"sourcesContent":["import { createContext } from 'react';\n\nimport type { BlimuRuntimeClientWrapper } from '../../client/runtime-client';\nimport type { AuthState, BlimuConfig } from '../../types';\nimport type { Theme } from '../theme/theme.context';\n\nexport interface AppearanceConfig {\n /**\n * Base theme (light, dark, or system)\n * @default \"system\"\n */\n baseTheme?: Theme | undefined;\n /**\n * CSS variable overrides\n */\n variables?: Record<string, string> | undefined;\n /**\n * Whether to inherit theme from parent app (e.g., next-themes)\n * @default true\n */\n inheritTheme?: boolean | undefined;\n}\n\nexport interface BlimuContextValue {\n client: BlimuRuntimeClientWrapper;\n config: BlimuConfig;\n state: AuthState;\n appearance?: AppearanceConfig | undefined;\n}\n\nexport const BlimuContext = createContext<BlimuContextValue | null>(null);\n"],"names":["createContext"],"mappings":";;;AA8BO,MAAM,eAAeA,MAAAA,cAAwC,IAAI;;"}
|
|
@@ -6,22 +6,22 @@ export interface AppearanceConfig {
|
|
|
6
6
|
* Base theme (light, dark, or system)
|
|
7
7
|
* @default "system"
|
|
8
8
|
*/
|
|
9
|
-
baseTheme?: Theme;
|
|
9
|
+
baseTheme?: Theme | undefined;
|
|
10
10
|
/**
|
|
11
11
|
* CSS variable overrides
|
|
12
12
|
*/
|
|
13
|
-
variables?: Record<string, string
|
|
13
|
+
variables?: Record<string, string> | undefined;
|
|
14
14
|
/**
|
|
15
15
|
* Whether to inherit theme from parent app (e.g., next-themes)
|
|
16
16
|
* @default true
|
|
17
17
|
*/
|
|
18
|
-
inheritTheme?: boolean;
|
|
18
|
+
inheritTheme?: boolean | undefined;
|
|
19
19
|
}
|
|
20
20
|
export interface BlimuContextValue {
|
|
21
21
|
client: BlimuRuntimeClientWrapper;
|
|
22
22
|
config: BlimuConfig;
|
|
23
23
|
state: AuthState;
|
|
24
|
-
appearance?: AppearanceConfig;
|
|
24
|
+
appearance?: AppearanceConfig | undefined;
|
|
25
25
|
}
|
|
26
26
|
export declare const BlimuContext: import("react").Context<BlimuContextValue | null>;
|
|
27
27
|
//# sourceMappingURL=blimu.context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blimu.context.d.ts","sourceRoot":"","sources":["../../../src/providers/blimu/blimu.context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEpD,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"blimu.context.d.ts","sourceRoot":"","sources":["../../../src/providers/blimu/blimu.context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEpD,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,SAAS,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAC9B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAC/C;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,yBAAyB,CAAC;IAClC,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;CAC3C;AAED,eAAO,MAAM,YAAY,mDAAgD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blimu.context.js","sources":["../../../src/providers/blimu/blimu.context.tsx"],"sourcesContent":["import { createContext } from 'react';\n\nimport type { BlimuRuntimeClientWrapper } from '../../client/runtime-client';\nimport type { AuthState, BlimuConfig } from '../../types';\nimport type { Theme } from '../theme/theme.context';\n\nexport interface AppearanceConfig {\n /**\n * Base theme (light, dark, or system)\n * @default \"system\"\n */\n baseTheme?: Theme;\n /**\n * CSS variable overrides\n */\n variables?: Record<string, string
|
|
1
|
+
{"version":3,"file":"blimu.context.js","sources":["../../../src/providers/blimu/blimu.context.tsx"],"sourcesContent":["import { createContext } from 'react';\n\nimport type { BlimuRuntimeClientWrapper } from '../../client/runtime-client';\nimport type { AuthState, BlimuConfig } from '../../types';\nimport type { Theme } from '../theme/theme.context';\n\nexport interface AppearanceConfig {\n /**\n * Base theme (light, dark, or system)\n * @default \"system\"\n */\n baseTheme?: Theme | undefined;\n /**\n * CSS variable overrides\n */\n variables?: Record<string, string> | undefined;\n /**\n * Whether to inherit theme from parent app (e.g., next-themes)\n * @default true\n */\n inheritTheme?: boolean | undefined;\n}\n\nexport interface BlimuContextValue {\n client: BlimuRuntimeClientWrapper;\n config: BlimuConfig;\n state: AuthState;\n appearance?: AppearanceConfig | undefined;\n}\n\nexport const BlimuContext = createContext<BlimuContextValue | null>(null);\n"],"names":[],"mappings":";AA8BO,MAAM,eAAe,cAAwC,IAAI;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blimu.provider.cjs","sources":["../../../src/providers/blimu/blimu.provider.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { BlimuRuntimeClientWrapper } from '../../client/runtime-client';\nimport { useStore } from '../../hooks/use-store';\nimport type { BlimuRadiusPreset, BlimuTheme } from '../../types';\nimport { AuthProvider } from '../auth/auth.provider';\nimport { BlimuContext } from './blimu.context';\n\ninterface BlimuProviderProps {\n publishableKey: string;\n children: React.ReactNode;\n theme?: BlimuTheme;\n}\n\n/**\n * Convert theme configuration to CSS custom properties\n */\nfunction themeToStyleVars(theme?: BlimuTheme): React.CSSProperties {\n if (!theme) return {};\n\n const vars: Record<string, string> = {};\n\n // Map colors to CSS variables\n if (theme.colors) {\n const colorMap: Record<keyof typeof theme.colors, string> = {\n background: '--blimu-background',\n foreground: '--blimu-foreground',\n card: '--blimu-card',\n cardForeground: '--blimu-card-foreground',\n popover: '--blimu-popover',\n popoverForeground: '--blimu-popover-foreground',\n primary: '--blimu-primary',\n primaryForeground: '--blimu-primary-foreground',\n secondary: '--blimu-secondary',\n secondaryForeground: '--blimu-secondary-foreground',\n muted: '--blimu-muted',\n mutedForeground: '--blimu-muted-foreground',\n accent: '--blimu-accent',\n accentForeground: '--blimu-accent-foreground',\n destructive: '--blimu-destructive',\n destructiveForeground: '--blimu-destructive-foreground',\n border: '--blimu-border',\n input: '--blimu-input',\n ring: '--blimu-ring',\n };\n\n Object.entries(theme.colors).forEach(([key, value]) => {\n if (value) {\n const varName = colorMap[key as keyof typeof theme.colors];\n if (varName) {\n vars[varName] = value;\n }\n }\n });\n }\n\n // Map radius to CSS variable\n if (theme.radius) {\n const radiusMap: Record<BlimuRadiusPreset, string> = {\n none: '0',\n sm: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n xl: '1rem',\n full: '9999px',\n };\n\n vars['--blimu-radius'] = radiusMap[theme.radius as BlimuRadiusPreset] ?? theme.radius;\n }\n\n return vars as React.CSSProperties;\n}\n\n/**\n * Provider component that initializes Blimu SDK and wraps the application\n *\n * This provider must be at the root of your application to enable authentication\n * and authorization features.\n *\n * @example\n * ```tsx\n * function App() {\n * return (\n * <BlimuProvider publishableKey=\"pk_...\">\n * <YourApp />\n * </BlimuProvider>\n * );\n * }\n * ```\n *\n * @example With theme customization\n * ```tsx\n * function App() {\n * return (\n * <BlimuProvider\n * publishableKey=\"pk_...\"\n * theme={{\n * colors: {\n * primary: 'oklch(0.5 0.2 250)',\n * background: '#ffffff',\n * },\n * radius: 'lg',\n * }}\n * >\n * <YourApp />\n * </BlimuProvider>\n * );\n * }\n * ```\n */\nexport function BlimuProvider({ publishableKey, children, theme }: BlimuProviderProps) {\n const client = useMemo(() => new BlimuRuntimeClientWrapper({ publishableKey }), [publishableKey]);\n const state = useStore(client.store);\n const themeVars = useMemo(() => themeToStyleVars(theme), [theme]);\n\n const value = {\n client,\n state,\n config: {\n publishableKey,\n redirectUri: window.location.origin,\n theme,\n },\n };\n\n return (\n <div data-blimu style={themeVars}>\n <BlimuContext.Provider value={value}>\n <AuthProvider>{children}</AuthProvider>\n </BlimuContext.Provider>\n </div>\n );\n}\n"],"names":["useMemo","BlimuRuntimeClientWrapper","useStore","jsx","BlimuContext","AuthProvider"],"mappings":";;;;;;;;AAiBA,SAAS,iBAAiB,OAAyC;AACjE,MAAI,CAAC,MAAO,QAAO,CAAA;AAEnB,QAAM,OAA+B,CAAA;AAGrC,MAAI,MAAM,QAAQ;AAChB,UAAM,WAAsD;AAAA,MAC1D,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,MAAM;AAAA,MACN,gBAAgB;AAAA,MAChB,SAAS;AAAA,MACT,mBAAmB;AAAA,MACnB,SAAS;AAAA,MACT,mBAAmB;AAAA,MACnB,WAAW;AAAA,MACX,qBAAqB;AAAA,MACrB,OAAO;AAAA,MACP,iBAAiB;AAAA,MACjB,QAAQ;AAAA,MACR,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,uBAAuB;AAAA,MACvB,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,IAAA;AAGR,WAAO,QAAQ,MAAM,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AACrD,UAAI,OAAO;AACT,cAAM,UAAU,SAAS,GAAgC;AACzD,YAAI,SAAS;AACX,eAAK,OAAO,IAAI;AAAA,QAClB;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAGA,MAAI,MAAM,QAAQ;AAChB,UAAM,YAA+C;AAAA,MACnD,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,MAAM;AAAA,IAAA;AAGR,SAAK,gBAAgB,IAAI,UAAU,MAAM,MAA2B,KAAK,MAAM;AAAA,EACjF;AAEA,SAAO;AACT;AAuCO,SAAS,cAAc,EAAE,gBAAgB,UAAU,SAA6B;AACrF,QAAM,SAASA,MAAAA,QAAQ,MAAM,IAAIC,cAAAA,0BAA0B,EAAE,eAAA,CAAgB,GAAG,CAAC,cAAc,CAAC;AAChG,QAAM,QAAQC,SAAAA,SAAS,OAAO,KAAK;AACnC,QAAM,YAAYF,MAAAA,QAAQ,MAAM,iBAAiB,KAAK,GAAG,CAAC,KAAK,CAAC;AAEhE,QAAM,
|
|
1
|
+
{"version":3,"file":"blimu.provider.cjs","sources":["../../../src/providers/blimu/blimu.provider.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { BlimuRuntimeClientWrapper } from '../../client/runtime-client';\nimport { useStore } from '../../hooks/use-store';\nimport type { BlimuRadiusPreset, BlimuTheme } from '../../types';\nimport { AuthProvider } from '../auth/auth.provider';\nimport { BlimuContext, type BlimuContextValue } from './blimu.context';\n\ninterface BlimuProviderProps {\n publishableKey: string;\n children: React.ReactNode;\n theme?: BlimuTheme | undefined;\n}\n\n/**\n * Convert theme configuration to CSS custom properties\n */\nfunction themeToStyleVars(theme?: BlimuTheme): React.CSSProperties {\n if (!theme) return {};\n\n const vars: Record<string, string> = {};\n\n // Map colors to CSS variables\n if (theme.colors) {\n const colorMap: Record<keyof typeof theme.colors, string> = {\n background: '--blimu-background',\n foreground: '--blimu-foreground',\n card: '--blimu-card',\n cardForeground: '--blimu-card-foreground',\n popover: '--blimu-popover',\n popoverForeground: '--blimu-popover-foreground',\n primary: '--blimu-primary',\n primaryForeground: '--blimu-primary-foreground',\n secondary: '--blimu-secondary',\n secondaryForeground: '--blimu-secondary-foreground',\n muted: '--blimu-muted',\n mutedForeground: '--blimu-muted-foreground',\n accent: '--blimu-accent',\n accentForeground: '--blimu-accent-foreground',\n destructive: '--blimu-destructive',\n destructiveForeground: '--blimu-destructive-foreground',\n border: '--blimu-border',\n input: '--blimu-input',\n ring: '--blimu-ring',\n };\n\n Object.entries(theme.colors).forEach(([key, value]) => {\n if (value) {\n const varName = colorMap[key as keyof typeof theme.colors];\n if (varName) {\n vars[varName] = value;\n }\n }\n });\n }\n\n // Map radius to CSS variable\n if (theme.radius) {\n const radiusMap: Record<BlimuRadiusPreset, string> = {\n none: '0',\n sm: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n xl: '1rem',\n full: '9999px',\n };\n\n vars['--blimu-radius'] = radiusMap[theme.radius as BlimuRadiusPreset] ?? theme.radius;\n }\n\n return vars as React.CSSProperties;\n}\n\n/**\n * Provider component that initializes Blimu SDK and wraps the application\n *\n * This provider must be at the root of your application to enable authentication\n * and authorization features.\n *\n * @example\n * ```tsx\n * function App() {\n * return (\n * <BlimuProvider publishableKey=\"pk_...\">\n * <YourApp />\n * </BlimuProvider>\n * );\n * }\n * ```\n *\n * @example With theme customization\n * ```tsx\n * function App() {\n * return (\n * <BlimuProvider\n * publishableKey=\"pk_...\"\n * theme={{\n * colors: {\n * primary: 'oklch(0.5 0.2 250)',\n * background: '#ffffff',\n * },\n * radius: 'lg',\n * }}\n * >\n * <YourApp />\n * </BlimuProvider>\n * );\n * }\n * ```\n */\nexport function BlimuProvider({ publishableKey, children, theme }: BlimuProviderProps) {\n const client = useMemo(() => new BlimuRuntimeClientWrapper({ publishableKey }), [publishableKey]);\n const state = useStore(client.store);\n const themeVars = useMemo(() => themeToStyleVars(theme), [theme]);\n\n const value: BlimuContextValue = {\n client,\n state,\n config: {\n publishableKey,\n redirectUri: window.location.origin,\n theme,\n },\n };\n\n return (\n <div data-blimu style={themeVars}>\n <BlimuContext.Provider value={value}>\n <AuthProvider>{children}</AuthProvider>\n </BlimuContext.Provider>\n </div>\n );\n}\n"],"names":["useMemo","BlimuRuntimeClientWrapper","useStore","jsx","BlimuContext","AuthProvider"],"mappings":";;;;;;;;AAiBA,SAAS,iBAAiB,OAAyC;AACjE,MAAI,CAAC,MAAO,QAAO,CAAA;AAEnB,QAAM,OAA+B,CAAA;AAGrC,MAAI,MAAM,QAAQ;AAChB,UAAM,WAAsD;AAAA,MAC1D,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,MAAM;AAAA,MACN,gBAAgB;AAAA,MAChB,SAAS;AAAA,MACT,mBAAmB;AAAA,MACnB,SAAS;AAAA,MACT,mBAAmB;AAAA,MACnB,WAAW;AAAA,MACX,qBAAqB;AAAA,MACrB,OAAO;AAAA,MACP,iBAAiB;AAAA,MACjB,QAAQ;AAAA,MACR,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,uBAAuB;AAAA,MACvB,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,IAAA;AAGR,WAAO,QAAQ,MAAM,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AACrD,UAAI,OAAO;AACT,cAAM,UAAU,SAAS,GAAgC;AACzD,YAAI,SAAS;AACX,eAAK,OAAO,IAAI;AAAA,QAClB;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAGA,MAAI,MAAM,QAAQ;AAChB,UAAM,YAA+C;AAAA,MACnD,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,MAAM;AAAA,IAAA;AAGR,SAAK,gBAAgB,IAAI,UAAU,MAAM,MAA2B,KAAK,MAAM;AAAA,EACjF;AAEA,SAAO;AACT;AAuCO,SAAS,cAAc,EAAE,gBAAgB,UAAU,SAA6B;AACrF,QAAM,SAASA,MAAAA,QAAQ,MAAM,IAAIC,cAAAA,0BAA0B,EAAE,eAAA,CAAgB,GAAG,CAAC,cAAc,CAAC;AAChG,QAAM,QAAQC,SAAAA,SAAS,OAAO,KAAK;AACnC,QAAM,YAAYF,MAAAA,QAAQ,MAAM,iBAAiB,KAAK,GAAG,CAAC,KAAK,CAAC;AAEhE,QAAM,QAA2B;AAAA,IAC/B;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,MACN;AAAA,MACA,aAAa,OAAO,SAAS;AAAA,MAC7B;AAAA,IAAA;AAAA,EACF;AAGF,SACEG,2BAAAA,IAAC,OAAA,EAAI,cAAU,MAAC,OAAO,WACrB,UAAAA,+BAACC,cAAAA,aAAa,UAAb,EAAsB,OACrB,UAAAD,2BAAAA,IAACE,cAAAA,cAAA,EAAc,SAAA,CAAS,GAC1B,GACF;AAEJ;;"}
|
|
@@ -3,7 +3,7 @@ import type { BlimuTheme } from '../../types';
|
|
|
3
3
|
interface BlimuProviderProps {
|
|
4
4
|
publishableKey: string;
|
|
5
5
|
children: React.ReactNode;
|
|
6
|
-
theme?: BlimuTheme;
|
|
6
|
+
theme?: BlimuTheme | undefined;
|
|
7
7
|
}
|
|
8
8
|
/**
|
|
9
9
|
* Provider component that initializes Blimu SDK and wraps the application
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blimu.provider.d.ts","sourceRoot":"","sources":["../../../src/providers/blimu/blimu.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAIvC,OAAO,KAAK,EAAqB,UAAU,EAAE,MAAM,aAAa,CAAC;AAIjE,UAAU,kBAAkB;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"blimu.provider.d.ts","sourceRoot":"","sources":["../../../src/providers/blimu/blimu.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAIvC,OAAO,KAAK,EAAqB,UAAU,EAAE,MAAM,aAAa,CAAC;AAIjE,UAAU,kBAAkB;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CAChC;AA6DD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,aAAa,CAAC,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,kBAAkB,qBAsBpF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blimu.provider.js","sources":["../../../src/providers/blimu/blimu.provider.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { BlimuRuntimeClientWrapper } from '../../client/runtime-client';\nimport { useStore } from '../../hooks/use-store';\nimport type { BlimuRadiusPreset, BlimuTheme } from '../../types';\nimport { AuthProvider } from '../auth/auth.provider';\nimport { BlimuContext } from './blimu.context';\n\ninterface BlimuProviderProps {\n publishableKey: string;\n children: React.ReactNode;\n theme?: BlimuTheme;\n}\n\n/**\n * Convert theme configuration to CSS custom properties\n */\nfunction themeToStyleVars(theme?: BlimuTheme): React.CSSProperties {\n if (!theme) return {};\n\n const vars: Record<string, string> = {};\n\n // Map colors to CSS variables\n if (theme.colors) {\n const colorMap: Record<keyof typeof theme.colors, string> = {\n background: '--blimu-background',\n foreground: '--blimu-foreground',\n card: '--blimu-card',\n cardForeground: '--blimu-card-foreground',\n popover: '--blimu-popover',\n popoverForeground: '--blimu-popover-foreground',\n primary: '--blimu-primary',\n primaryForeground: '--blimu-primary-foreground',\n secondary: '--blimu-secondary',\n secondaryForeground: '--blimu-secondary-foreground',\n muted: '--blimu-muted',\n mutedForeground: '--blimu-muted-foreground',\n accent: '--blimu-accent',\n accentForeground: '--blimu-accent-foreground',\n destructive: '--blimu-destructive',\n destructiveForeground: '--blimu-destructive-foreground',\n border: '--blimu-border',\n input: '--blimu-input',\n ring: '--blimu-ring',\n };\n\n Object.entries(theme.colors).forEach(([key, value]) => {\n if (value) {\n const varName = colorMap[key as keyof typeof theme.colors];\n if (varName) {\n vars[varName] = value;\n }\n }\n });\n }\n\n // Map radius to CSS variable\n if (theme.radius) {\n const radiusMap: Record<BlimuRadiusPreset, string> = {\n none: '0',\n sm: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n xl: '1rem',\n full: '9999px',\n };\n\n vars['--blimu-radius'] = radiusMap[theme.radius as BlimuRadiusPreset] ?? theme.radius;\n }\n\n return vars as React.CSSProperties;\n}\n\n/**\n * Provider component that initializes Blimu SDK and wraps the application\n *\n * This provider must be at the root of your application to enable authentication\n * and authorization features.\n *\n * @example\n * ```tsx\n * function App() {\n * return (\n * <BlimuProvider publishableKey=\"pk_...\">\n * <YourApp />\n * </BlimuProvider>\n * );\n * }\n * ```\n *\n * @example With theme customization\n * ```tsx\n * function App() {\n * return (\n * <BlimuProvider\n * publishableKey=\"pk_...\"\n * theme={{\n * colors: {\n * primary: 'oklch(0.5 0.2 250)',\n * background: '#ffffff',\n * },\n * radius: 'lg',\n * }}\n * >\n * <YourApp />\n * </BlimuProvider>\n * );\n * }\n * ```\n */\nexport function BlimuProvider({ publishableKey, children, theme }: BlimuProviderProps) {\n const client = useMemo(() => new BlimuRuntimeClientWrapper({ publishableKey }), [publishableKey]);\n const state = useStore(client.store);\n const themeVars = useMemo(() => themeToStyleVars(theme), [theme]);\n\n const value = {\n client,\n state,\n config: {\n publishableKey,\n redirectUri: window.location.origin,\n theme,\n },\n };\n\n return (\n <div data-blimu style={themeVars}>\n <BlimuContext.Provider value={value}>\n <AuthProvider>{children}</AuthProvider>\n </BlimuContext.Provider>\n </div>\n );\n}\n"],"names":[],"mappings":";;;;;;AAiBA,SAAS,iBAAiB,OAAyC;AACjE,MAAI,CAAC,MAAO,QAAO,CAAA;AAEnB,QAAM,OAA+B,CAAA;AAGrC,MAAI,MAAM,QAAQ;AAChB,UAAM,WAAsD;AAAA,MAC1D,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,MAAM;AAAA,MACN,gBAAgB;AAAA,MAChB,SAAS;AAAA,MACT,mBAAmB;AAAA,MACnB,SAAS;AAAA,MACT,mBAAmB;AAAA,MACnB,WAAW;AAAA,MACX,qBAAqB;AAAA,MACrB,OAAO;AAAA,MACP,iBAAiB;AAAA,MACjB,QAAQ;AAAA,MACR,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,uBAAuB;AAAA,MACvB,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,IAAA;AAGR,WAAO,QAAQ,MAAM,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AACrD,UAAI,OAAO;AACT,cAAM,UAAU,SAAS,GAAgC;AACzD,YAAI,SAAS;AACX,eAAK,OAAO,IAAI;AAAA,QAClB;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAGA,MAAI,MAAM,QAAQ;AAChB,UAAM,YAA+C;AAAA,MACnD,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,MAAM;AAAA,IAAA;AAGR,SAAK,gBAAgB,IAAI,UAAU,MAAM,MAA2B,KAAK,MAAM;AAAA,EACjF;AAEA,SAAO;AACT;AAuCO,SAAS,cAAc,EAAE,gBAAgB,UAAU,SAA6B;AACrF,QAAM,SAAS,QAAQ,MAAM,IAAI,0BAA0B,EAAE,eAAA,CAAgB,GAAG,CAAC,cAAc,CAAC;AAChG,QAAM,QAAQ,SAAS,OAAO,KAAK;AACnC,QAAM,YAAY,QAAQ,MAAM,iBAAiB,KAAK,GAAG,CAAC,KAAK,CAAC;AAEhE,QAAM,
|
|
1
|
+
{"version":3,"file":"blimu.provider.js","sources":["../../../src/providers/blimu/blimu.provider.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { BlimuRuntimeClientWrapper } from '../../client/runtime-client';\nimport { useStore } from '../../hooks/use-store';\nimport type { BlimuRadiusPreset, BlimuTheme } from '../../types';\nimport { AuthProvider } from '../auth/auth.provider';\nimport { BlimuContext, type BlimuContextValue } from './blimu.context';\n\ninterface BlimuProviderProps {\n publishableKey: string;\n children: React.ReactNode;\n theme?: BlimuTheme | undefined;\n}\n\n/**\n * Convert theme configuration to CSS custom properties\n */\nfunction themeToStyleVars(theme?: BlimuTheme): React.CSSProperties {\n if (!theme) return {};\n\n const vars: Record<string, string> = {};\n\n // Map colors to CSS variables\n if (theme.colors) {\n const colorMap: Record<keyof typeof theme.colors, string> = {\n background: '--blimu-background',\n foreground: '--blimu-foreground',\n card: '--blimu-card',\n cardForeground: '--blimu-card-foreground',\n popover: '--blimu-popover',\n popoverForeground: '--blimu-popover-foreground',\n primary: '--blimu-primary',\n primaryForeground: '--blimu-primary-foreground',\n secondary: '--blimu-secondary',\n secondaryForeground: '--blimu-secondary-foreground',\n muted: '--blimu-muted',\n mutedForeground: '--blimu-muted-foreground',\n accent: '--blimu-accent',\n accentForeground: '--blimu-accent-foreground',\n destructive: '--blimu-destructive',\n destructiveForeground: '--blimu-destructive-foreground',\n border: '--blimu-border',\n input: '--blimu-input',\n ring: '--blimu-ring',\n };\n\n Object.entries(theme.colors).forEach(([key, value]) => {\n if (value) {\n const varName = colorMap[key as keyof typeof theme.colors];\n if (varName) {\n vars[varName] = value;\n }\n }\n });\n }\n\n // Map radius to CSS variable\n if (theme.radius) {\n const radiusMap: Record<BlimuRadiusPreset, string> = {\n none: '0',\n sm: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n xl: '1rem',\n full: '9999px',\n };\n\n vars['--blimu-radius'] = radiusMap[theme.radius as BlimuRadiusPreset] ?? theme.radius;\n }\n\n return vars as React.CSSProperties;\n}\n\n/**\n * Provider component that initializes Blimu SDK and wraps the application\n *\n * This provider must be at the root of your application to enable authentication\n * and authorization features.\n *\n * @example\n * ```tsx\n * function App() {\n * return (\n * <BlimuProvider publishableKey=\"pk_...\">\n * <YourApp />\n * </BlimuProvider>\n * );\n * }\n * ```\n *\n * @example With theme customization\n * ```tsx\n * function App() {\n * return (\n * <BlimuProvider\n * publishableKey=\"pk_...\"\n * theme={{\n * colors: {\n * primary: 'oklch(0.5 0.2 250)',\n * background: '#ffffff',\n * },\n * radius: 'lg',\n * }}\n * >\n * <YourApp />\n * </BlimuProvider>\n * );\n * }\n * ```\n */\nexport function BlimuProvider({ publishableKey, children, theme }: BlimuProviderProps) {\n const client = useMemo(() => new BlimuRuntimeClientWrapper({ publishableKey }), [publishableKey]);\n const state = useStore(client.store);\n const themeVars = useMemo(() => themeToStyleVars(theme), [theme]);\n\n const value: BlimuContextValue = {\n client,\n state,\n config: {\n publishableKey,\n redirectUri: window.location.origin,\n theme,\n },\n };\n\n return (\n <div data-blimu style={themeVars}>\n <BlimuContext.Provider value={value}>\n <AuthProvider>{children}</AuthProvider>\n </BlimuContext.Provider>\n </div>\n );\n}\n"],"names":[],"mappings":";;;;;;AAiBA,SAAS,iBAAiB,OAAyC;AACjE,MAAI,CAAC,MAAO,QAAO,CAAA;AAEnB,QAAM,OAA+B,CAAA;AAGrC,MAAI,MAAM,QAAQ;AAChB,UAAM,WAAsD;AAAA,MAC1D,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,MAAM;AAAA,MACN,gBAAgB;AAAA,MAChB,SAAS;AAAA,MACT,mBAAmB;AAAA,MACnB,SAAS;AAAA,MACT,mBAAmB;AAAA,MACnB,WAAW;AAAA,MACX,qBAAqB;AAAA,MACrB,OAAO;AAAA,MACP,iBAAiB;AAAA,MACjB,QAAQ;AAAA,MACR,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,uBAAuB;AAAA,MACvB,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,MAAM;AAAA,IAAA;AAGR,WAAO,QAAQ,MAAM,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AACrD,UAAI,OAAO;AACT,cAAM,UAAU,SAAS,GAAgC;AACzD,YAAI,SAAS;AACX,eAAK,OAAO,IAAI;AAAA,QAClB;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAGA,MAAI,MAAM,QAAQ;AAChB,UAAM,YAA+C;AAAA,MACnD,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,MAAM;AAAA,IAAA;AAGR,SAAK,gBAAgB,IAAI,UAAU,MAAM,MAA2B,KAAK,MAAM;AAAA,EACjF;AAEA,SAAO;AACT;AAuCO,SAAS,cAAc,EAAE,gBAAgB,UAAU,SAA6B;AACrF,QAAM,SAAS,QAAQ,MAAM,IAAI,0BAA0B,EAAE,eAAA,CAAgB,GAAG,CAAC,cAAc,CAAC;AAChG,QAAM,QAAQ,SAAS,OAAO,KAAK;AACnC,QAAM,YAAY,QAAQ,MAAM,iBAAiB,KAAK,GAAG,CAAC,KAAK,CAAC;AAEhE,QAAM,QAA2B;AAAA,IAC/B;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,MACN;AAAA,MACA,aAAa,OAAO,SAAS;AAAA,MAC7B;AAAA,IAAA;AAAA,EACF;AAGF,SACE,oBAAC,OAAA,EAAI,cAAU,MAAC,OAAO,WACrB,UAAA,oBAAC,aAAa,UAAb,EAAsB,OACrB,UAAA,oBAAC,cAAA,EAAc,SAAA,CAAS,GAC1B,GACF;AAEJ;"}
|
package/dist/providers/index.cjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const auth_provider = require("./auth/auth.provider.cjs");
|
|
3
4
|
const blimu_hook = require("./blimu/blimu.hook.cjs");
|
|
4
5
|
const blimu_provider = require("./blimu/blimu.provider.cjs");
|
|
5
|
-
const auth_provider = require("./auth/auth.provider.cjs");
|
|
6
6
|
const theme_provider = require("./theme/theme.provider.cjs");
|
|
7
7
|
const theme_hook = require("./theme/theme.hook.cjs");
|
|
8
|
+
exports.AuthProvider = auth_provider.AuthProvider;
|
|
8
9
|
exports.useBlimu = blimu_hook.useBlimu;
|
|
9
10
|
exports.BlimuProvider = blimu_provider.BlimuProvider;
|
|
10
|
-
exports.AuthProvider = auth_provider.AuthProvider;
|
|
11
11
|
exports.ThemeProvider = theme_provider.ThemeProvider;
|
|
12
12
|
exports.useTheme = theme_hook.useTheme;
|
|
13
13
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
export { AuthProvider } from './auth/auth.provider';
|
|
2
|
+
export type { AppearanceConfig } from './blimu/blimu.context';
|
|
1
3
|
export { useBlimu } from './blimu/blimu.hook';
|
|
2
4
|
export { BlimuProvider } from './blimu/blimu.provider';
|
|
3
|
-
export { AuthProvider } from './auth/auth.provider';
|
|
4
|
-
export { ThemeProvider, useTheme } from './theme';
|
|
5
5
|
export type { Theme, ThemeContextValue } from './theme';
|
|
6
|
-
export
|
|
6
|
+
export { ThemeProvider, useTheme } from './theme';
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC"}
|
package/dist/providers/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { AuthProvider } from "./auth/auth.provider.js";
|
|
1
2
|
import { useBlimu } from "./blimu/blimu.hook.js";
|
|
2
3
|
import { BlimuProvider } from "./blimu/blimu.provider.js";
|
|
3
|
-
import { AuthProvider } from "./auth/auth.provider.js";
|
|
4
4
|
import { ThemeProvider } from "./theme/theme.provider.js";
|
|
5
5
|
import { useTheme } from "./theme/theme.hook.js";
|
|
6
6
|
export {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ThemeProvider } from './theme.provider';
|
|
2
|
-
export { useTheme } from './theme.hook';
|
|
3
1
|
export type { Theme, ThemeContextValue } from './theme.context';
|
|
2
|
+
export { useTheme } from './theme.hook';
|
|
3
|
+
export { ThemeProvider } from './theme.provider';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/theme/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/theme/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.provider.cjs","sources":["../../../src/providers/theme/theme.provider.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\n\nimport type { Theme, ThemeContextValue } from './theme.context';\nimport { ThemeContext } from './theme.context';\n\ninterface ThemeProviderProps {\n children: React.ReactNode;\n defaultTheme?: Theme;\n storageKey?: string;\n /**\n * Whether to automatically detect and sync with parent app's theme\n * @default true\n */\n autoDetect?: boolean;\n}\n\n/**\n * ThemeProvider component that manages theme state and syncs with system preferences\n *\n * Supports automatic detection of parent app's theme (e.g., next-themes) via\n * MutationObserver watching for class changes on the document element.\n *\n * @example\n * ```tsx\n * <ThemeProvider defaultTheme=\"system\" storageKey=\"my-app-theme\">\n * <App />\n * </ThemeProvider>\n * ```\n */\nexport function ThemeProvider({\n children,\n defaultTheme = 'system',\n storageKey = 'blimu-theme',\n autoDetect = true,\n}: ThemeProviderProps) {\n const [theme, setTheme] = useState<Theme>(() => {\n if (typeof window === 'undefined') {\n return defaultTheme;\n }\n const stored = localStorage.getItem(storageKey) as Theme | null;\n return stored || defaultTheme;\n });\n\n const [resolvedTheme, setResolvedTheme] = useState<'light' | 'dark'>(() => {\n if (typeof window === 'undefined') {\n return 'light';\n }\n return getResolvedTheme(theme);\n });\n\n // Apply theme to document\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n\n const root = window.document.documentElement;\n root.classList.remove('light', 'dark');\n\n if (theme === 'system') {\n const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light';\n root.classList.add(systemTheme);\n setResolvedTheme(systemTheme);\n return;\n }\n\n root.classList.add(theme);\n setResolvedTheme(theme);\n }, [theme]);\n\n // Persist theme to localStorage\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n localStorage.setItem(storageKey, theme);\n }, [theme, storageKey]);\n\n // Auto-detect parent app's theme changes (e.g., next-themes)\n useEffect(() => {\n if (!autoDetect || typeof window === 'undefined') {\n return;\n }\n\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.attributeName === 'class') {\n const isDark = document.documentElement.classList.contains('dark');\n const isLight = document.documentElement.classList.contains('light');\n\n // Only sync if parent app has explicitly set a theme class\n if (isDark || isLight) {\n const detectedTheme = isDark ? 'dark' : 'light';\n if (resolvedTheme !== detectedTheme) {\n setResolvedTheme(detectedTheme);\n }\n }\n }\n });\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['class'],\n });\n\n return () => observer.disconnect();\n }, [autoDetect, resolvedTheme]);\n\n // Listen to system theme changes when theme is 'system'\n useEffect(() => {\n if (theme !== 'system' || typeof window === 'undefined') {\n return;\n }\n\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n const handleChange = (e: MediaQueryListEvent) => {\n const root = window.document.documentElement;\n root.classList.remove('light', 'dark');\n const systemTheme = e.matches ? 'dark' : 'light';\n root.classList.add(systemTheme);\n setResolvedTheme(systemTheme);\n };\n\n mediaQuery.addEventListener('change', handleChange);\n return () => mediaQuery.removeEventListener('change', handleChange);\n }, [theme]);\n\n const value = useMemo<ThemeContextValue>(\n () => ({\n theme,\n setTheme,\n resolvedTheme,\n }),\n [theme, resolvedTheme],\n );\n\n return <ThemeContext.Provider value={value}>{children}</ThemeContext.Provider>;\n}\n\n/**\n * Get the resolved theme (light or dark) from a Theme value\n */\nfunction getResolvedTheme(theme: Theme): 'light' | 'dark' {\n if (theme === 'system') {\n if (typeof window === 'undefined') {\n return 'light';\n }\n return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\n }\n return theme;\n}\n"],"names":["useState","useEffect","useMemo","jsx","ThemeContext"],"mappings":";;;;;AA6BO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA,eAAe;AAAA,EACf,aAAa;AAAA,EACb,aAAa;AACf,GAAuB;AACrB,QAAM,CAAC,OAAO,QAAQ,IAAIA,MAAAA,SAAgB,MAAM;AAC9C,QAAI,OAAO,WAAW,aAAa;AACjC,aAAO;AAAA,IACT;AACA,UAAM,SAAS,aAAa,QAAQ,UAAU;AAC9C,WAAO,UAAU;AAAA,EACnB,CAAC;AAED,QAAM,CAAC,eAAe,gBAAgB,IAAIA,MAAAA,SAA2B,MAAM;AACzE,QAAI,OAAO,WAAW,aAAa;AACjC,aAAO;AAAA,IACT;AACA,WAAO,iBAAiB,KAAK;AAAA,EAC/B,CAAC;AAGDC,QAAAA,UAAU,MAAM;AACd,QAAI,OAAO,WAAW,aAAa;AACjC;AAAA,IACF;AAEA,UAAM,OAAO,OAAO,SAAS;AAC7B,SAAK,UAAU,OAAO,SAAS,MAAM;AAErC,QAAI,UAAU,UAAU;AACtB,YAAM,cAAc,OAAO,WAAW,8BAA8B,EAAE,UAClE,SACA;AACJ,WAAK,UAAU,IAAI,WAAW;
|
|
1
|
+
{"version":3,"file":"theme.provider.cjs","sources":["../../../src/providers/theme/theme.provider.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\n\nimport type { Theme, ThemeContextValue } from './theme.context';\nimport { ThemeContext } from './theme.context';\n\ninterface ThemeProviderProps {\n children: React.ReactNode;\n defaultTheme?: Theme;\n storageKey?: string;\n /**\n * Whether to automatically detect and sync with parent app's theme\n * @default true\n */\n autoDetect?: boolean;\n}\n\n/**\n * ThemeProvider component that manages theme state and syncs with system preferences\n *\n * Supports automatic detection of parent app's theme (e.g., next-themes) via\n * MutationObserver watching for class changes on the document element.\n *\n * @example\n * ```tsx\n * <ThemeProvider defaultTheme=\"system\" storageKey=\"my-app-theme\">\n * <App />\n * </ThemeProvider>\n * ```\n */\nexport function ThemeProvider({\n children,\n defaultTheme = 'system',\n storageKey = 'blimu-theme',\n autoDetect = true,\n}: ThemeProviderProps) {\n const [theme, setTheme] = useState<Theme>(() => {\n if (typeof window === 'undefined') {\n return defaultTheme;\n }\n const stored = localStorage.getItem(storageKey) as Theme | null;\n return stored || defaultTheme;\n });\n\n const [resolvedTheme, setResolvedTheme] = useState<'light' | 'dark'>(() => {\n if (typeof window === 'undefined') {\n return 'light';\n }\n return getResolvedTheme(theme);\n });\n\n // Apply theme to document\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n\n const root = window.document.documentElement;\n root.classList.remove('light', 'dark');\n\n if (theme === 'system') {\n const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light';\n root.classList.add(systemTheme);\n // eslint-disable-next-line react-hooks/set-state-in-effect\n setResolvedTheme(systemTheme);\n return;\n }\n\n root.classList.add(theme);\n setResolvedTheme(theme);\n }, [theme]);\n\n // Persist theme to localStorage\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n localStorage.setItem(storageKey, theme);\n }, [theme, storageKey]);\n\n // Auto-detect parent app's theme changes (e.g., next-themes)\n useEffect(() => {\n if (!autoDetect || typeof window === 'undefined') {\n return;\n }\n\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.attributeName === 'class') {\n const isDark = document.documentElement.classList.contains('dark');\n const isLight = document.documentElement.classList.contains('light');\n\n // Only sync if parent app has explicitly set a theme class\n if (isDark || isLight) {\n const detectedTheme = isDark ? 'dark' : 'light';\n if (resolvedTheme !== detectedTheme) {\n setResolvedTheme(detectedTheme);\n }\n }\n }\n });\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['class'],\n });\n\n return () => observer.disconnect();\n }, [autoDetect, resolvedTheme]);\n\n // Listen to system theme changes when theme is 'system'\n useEffect(() => {\n if (theme !== 'system' || typeof window === 'undefined') {\n return;\n }\n\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n const handleChange = (e: MediaQueryListEvent) => {\n const root = window.document.documentElement;\n root.classList.remove('light', 'dark');\n const systemTheme = e.matches ? 'dark' : 'light';\n root.classList.add(systemTheme);\n setResolvedTheme(systemTheme);\n };\n\n mediaQuery.addEventListener('change', handleChange);\n return () => mediaQuery.removeEventListener('change', handleChange);\n }, [theme]);\n\n const value = useMemo<ThemeContextValue>(\n () => ({\n theme,\n setTheme,\n resolvedTheme,\n }),\n [theme, resolvedTheme],\n );\n\n return <ThemeContext.Provider value={value}>{children}</ThemeContext.Provider>;\n}\n\n/**\n * Get the resolved theme (light or dark) from a Theme value\n */\nfunction getResolvedTheme(theme: Theme): 'light' | 'dark' {\n if (theme === 'system') {\n if (typeof window === 'undefined') {\n return 'light';\n }\n return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\n }\n return theme;\n}\n"],"names":["useState","useEffect","useMemo","jsx","ThemeContext"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.provider.d.ts","sourceRoot":"","sources":["../../../src/providers/theme/theme.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,KAAK,EAAE,KAAK,EAAqB,MAAM,iBAAiB,CAAC;AAGhE,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,YAAuB,EACvB,UAA0B,EAC1B,UAAiB,GAClB,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"theme.provider.d.ts","sourceRoot":"","sources":["../../../src/providers/theme/theme.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,KAAK,EAAE,KAAK,EAAqB,MAAM,iBAAiB,CAAC;AAGhE,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,YAAuB,EACvB,UAA0B,EAC1B,UAAiB,GAClB,EAAE,kBAAkB,qBA2GpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.provider.js","sources":["../../../src/providers/theme/theme.provider.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\n\nimport type { Theme, ThemeContextValue } from './theme.context';\nimport { ThemeContext } from './theme.context';\n\ninterface ThemeProviderProps {\n children: React.ReactNode;\n defaultTheme?: Theme;\n storageKey?: string;\n /**\n * Whether to automatically detect and sync with parent app's theme\n * @default true\n */\n autoDetect?: boolean;\n}\n\n/**\n * ThemeProvider component that manages theme state and syncs with system preferences\n *\n * Supports automatic detection of parent app's theme (e.g., next-themes) via\n * MutationObserver watching for class changes on the document element.\n *\n * @example\n * ```tsx\n * <ThemeProvider defaultTheme=\"system\" storageKey=\"my-app-theme\">\n * <App />\n * </ThemeProvider>\n * ```\n */\nexport function ThemeProvider({\n children,\n defaultTheme = 'system',\n storageKey = 'blimu-theme',\n autoDetect = true,\n}: ThemeProviderProps) {\n const [theme, setTheme] = useState<Theme>(() => {\n if (typeof window === 'undefined') {\n return defaultTheme;\n }\n const stored = localStorage.getItem(storageKey) as Theme | null;\n return stored || defaultTheme;\n });\n\n const [resolvedTheme, setResolvedTheme] = useState<'light' | 'dark'>(() => {\n if (typeof window === 'undefined') {\n return 'light';\n }\n return getResolvedTheme(theme);\n });\n\n // Apply theme to document\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n\n const root = window.document.documentElement;\n root.classList.remove('light', 'dark');\n\n if (theme === 'system') {\n const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light';\n root.classList.add(systemTheme);\n setResolvedTheme(systemTheme);\n return;\n }\n\n root.classList.add(theme);\n setResolvedTheme(theme);\n }, [theme]);\n\n // Persist theme to localStorage\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n localStorage.setItem(storageKey, theme);\n }, [theme, storageKey]);\n\n // Auto-detect parent app's theme changes (e.g., next-themes)\n useEffect(() => {\n if (!autoDetect || typeof window === 'undefined') {\n return;\n }\n\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.attributeName === 'class') {\n const isDark = document.documentElement.classList.contains('dark');\n const isLight = document.documentElement.classList.contains('light');\n\n // Only sync if parent app has explicitly set a theme class\n if (isDark || isLight) {\n const detectedTheme = isDark ? 'dark' : 'light';\n if (resolvedTheme !== detectedTheme) {\n setResolvedTheme(detectedTheme);\n }\n }\n }\n });\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['class'],\n });\n\n return () => observer.disconnect();\n }, [autoDetect, resolvedTheme]);\n\n // Listen to system theme changes when theme is 'system'\n useEffect(() => {\n if (theme !== 'system' || typeof window === 'undefined') {\n return;\n }\n\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n const handleChange = (e: MediaQueryListEvent) => {\n const root = window.document.documentElement;\n root.classList.remove('light', 'dark');\n const systemTheme = e.matches ? 'dark' : 'light';\n root.classList.add(systemTheme);\n setResolvedTheme(systemTheme);\n };\n\n mediaQuery.addEventListener('change', handleChange);\n return () => mediaQuery.removeEventListener('change', handleChange);\n }, [theme]);\n\n const value = useMemo<ThemeContextValue>(\n () => ({\n theme,\n setTheme,\n resolvedTheme,\n }),\n [theme, resolvedTheme],\n );\n\n return <ThemeContext.Provider value={value}>{children}</ThemeContext.Provider>;\n}\n\n/**\n * Get the resolved theme (light or dark) from a Theme value\n */\nfunction getResolvedTheme(theme: Theme): 'light' | 'dark' {\n if (theme === 'system') {\n if (typeof window === 'undefined') {\n return 'light';\n }\n return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\n }\n return theme;\n}\n"],"names":[],"mappings":";;;AA6BO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA,eAAe;AAAA,EACf,aAAa;AAAA,EACb,aAAa;AACf,GAAuB;AACrB,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAgB,MAAM;AAC9C,QAAI,OAAO,WAAW,aAAa;AACjC,aAAO;AAAA,IACT;AACA,UAAM,SAAS,aAAa,QAAQ,UAAU;AAC9C,WAAO,UAAU;AAAA,EACnB,CAAC;AAED,QAAM,CAAC,eAAe,gBAAgB,IAAI,SAA2B,MAAM;AACzE,QAAI,OAAO,WAAW,aAAa;AACjC,aAAO;AAAA,IACT;AACA,WAAO,iBAAiB,KAAK;AAAA,EAC/B,CAAC;AAGD,YAAU,MAAM;AACd,QAAI,OAAO,WAAW,aAAa;AACjC;AAAA,IACF;AAEA,UAAM,OAAO,OAAO,SAAS;AAC7B,SAAK,UAAU,OAAO,SAAS,MAAM;AAErC,QAAI,UAAU,UAAU;AACtB,YAAM,cAAc,OAAO,WAAW,8BAA8B,EAAE,UAClE,SACA;AACJ,WAAK,UAAU,IAAI,WAAW;
|
|
1
|
+
{"version":3,"file":"theme.provider.js","sources":["../../../src/providers/theme/theme.provider.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\n\nimport type { Theme, ThemeContextValue } from './theme.context';\nimport { ThemeContext } from './theme.context';\n\ninterface ThemeProviderProps {\n children: React.ReactNode;\n defaultTheme?: Theme;\n storageKey?: string;\n /**\n * Whether to automatically detect and sync with parent app's theme\n * @default true\n */\n autoDetect?: boolean;\n}\n\n/**\n * ThemeProvider component that manages theme state and syncs with system preferences\n *\n * Supports automatic detection of parent app's theme (e.g., next-themes) via\n * MutationObserver watching for class changes on the document element.\n *\n * @example\n * ```tsx\n * <ThemeProvider defaultTheme=\"system\" storageKey=\"my-app-theme\">\n * <App />\n * </ThemeProvider>\n * ```\n */\nexport function ThemeProvider({\n children,\n defaultTheme = 'system',\n storageKey = 'blimu-theme',\n autoDetect = true,\n}: ThemeProviderProps) {\n const [theme, setTheme] = useState<Theme>(() => {\n if (typeof window === 'undefined') {\n return defaultTheme;\n }\n const stored = localStorage.getItem(storageKey) as Theme | null;\n return stored || defaultTheme;\n });\n\n const [resolvedTheme, setResolvedTheme] = useState<'light' | 'dark'>(() => {\n if (typeof window === 'undefined') {\n return 'light';\n }\n return getResolvedTheme(theme);\n });\n\n // Apply theme to document\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n\n const root = window.document.documentElement;\n root.classList.remove('light', 'dark');\n\n if (theme === 'system') {\n const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light';\n root.classList.add(systemTheme);\n // eslint-disable-next-line react-hooks/set-state-in-effect\n setResolvedTheme(systemTheme);\n return;\n }\n\n root.classList.add(theme);\n setResolvedTheme(theme);\n }, [theme]);\n\n // Persist theme to localStorage\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n localStorage.setItem(storageKey, theme);\n }, [theme, storageKey]);\n\n // Auto-detect parent app's theme changes (e.g., next-themes)\n useEffect(() => {\n if (!autoDetect || typeof window === 'undefined') {\n return;\n }\n\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.attributeName === 'class') {\n const isDark = document.documentElement.classList.contains('dark');\n const isLight = document.documentElement.classList.contains('light');\n\n // Only sync if parent app has explicitly set a theme class\n if (isDark || isLight) {\n const detectedTheme = isDark ? 'dark' : 'light';\n if (resolvedTheme !== detectedTheme) {\n setResolvedTheme(detectedTheme);\n }\n }\n }\n });\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['class'],\n });\n\n return () => observer.disconnect();\n }, [autoDetect, resolvedTheme]);\n\n // Listen to system theme changes when theme is 'system'\n useEffect(() => {\n if (theme !== 'system' || typeof window === 'undefined') {\n return;\n }\n\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n const handleChange = (e: MediaQueryListEvent) => {\n const root = window.document.documentElement;\n root.classList.remove('light', 'dark');\n const systemTheme = e.matches ? 'dark' : 'light';\n root.classList.add(systemTheme);\n setResolvedTheme(systemTheme);\n };\n\n mediaQuery.addEventListener('change', handleChange);\n return () => mediaQuery.removeEventListener('change', handleChange);\n }, [theme]);\n\n const value = useMemo<ThemeContextValue>(\n () => ({\n theme,\n setTheme,\n resolvedTheme,\n }),\n [theme, resolvedTheme],\n );\n\n return <ThemeContext.Provider value={value}>{children}</ThemeContext.Provider>;\n}\n\n/**\n * Get the resolved theme (light or dark) from a Theme value\n */\nfunction getResolvedTheme(theme: Theme): 'light' | 'dark' {\n if (theme === 'system') {\n if (typeof window === 'undefined') {\n return 'light';\n }\n return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\n }\n return theme;\n}\n"],"names":[],"mappings":"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"}
|