@blimu/react 1.1.0 → 1.1.4
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/_virtual/index.cjs +5 -1
- package/dist/_virtual/index.cjs.map +1 -1
- package/dist/_virtual/index.js +3 -3
- package/dist/_virtual/index2.cjs +4 -1
- package/dist/_virtual/index2.cjs.map +1 -1
- package/dist/_virtual/index2.js +2 -2
- package/dist/_virtual/use-sync-external-store-shim.development.cjs +4 -1
- package/dist/_virtual/use-sync-external-store-shim.development.cjs.map +1 -1
- package/dist/_virtual/use-sync-external-store-shim.development.js +2 -2
- package/dist/_virtual/use-sync-external-store-shim.production.cjs +4 -1
- package/dist/_virtual/use-sync-external-store-shim.production.cjs.map +1 -1
- package/dist/_virtual/use-sync-external-store-shim.production.js +2 -2
- package/dist/client/auth.service.cjs +248 -1
- 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 +193 -96
- package/dist/client/auth.service.js.map +1 -1
- package/dist/client/external-store.cjs +26 -1
- package/dist/client/external-store.cjs.map +1 -1
- package/dist/client/external-store.js +22 -8
- package/dist/client/external-store.js.map +1 -1
- package/dist/client/runtime-client.cjs +136 -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 +85 -51
- package/dist/client/runtime-client.js.map +1 -1
- package/dist/components/index.cjs +13 -0
- package/dist/components/index.cjs.map +1 -0
- package/dist/components/index.d.ts +6 -6
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +13 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/members-list.cjs +132 -1
- 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 +69 -64
- package/dist/components/members-list.js.map +1 -1
- package/dist/components/redirect-to-sign-in.cjs +34 -1
- package/dist/components/redirect-to-sign-in.cjs.map +1 -1
- package/dist/components/redirect-to-sign-in.js +28 -20
- package/dist/components/redirect-to-sign-in.js.map +1 -1
- package/dist/components/sign-in-button.cjs +36 -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 +25 -21
- package/dist/components/sign-in-button.js.map +1 -1
- package/dist/components/ui/avatar.cjs +42 -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 +23 -23
- 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 +148 -1
- 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 +83 -81
- 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 +22 -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 +16 -16
- package/dist/components/user-avatar.js.map +1 -1
- package/dist/components/user-button/styles.cjs +39 -1
- package/dist/components/user-button/styles.cjs.map +1 -1
- package/dist/components/user-button/styles.js +6 -5
- package/dist/components/user-button/styles.js.map +1 -1
- package/dist/components/user-button/user-button.cjs +98 -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 +64 -58
- package/dist/components/user-button/user-button.js.map +1 -1
- package/dist/hooks/index.cjs +14 -0
- package/dist/hooks/index.cjs.map +1 -0
- package/dist/hooks/index.d.ts +3 -2
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +14 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/use-auth.cjs +44 -1
- package/dist/hooks/use-auth.cjs.map +1 -1
- package/dist/hooks/use-auth.d.ts +13 -15
- package/dist/hooks/use-auth.d.ts.map +1 -1
- package/dist/hooks/use-auth.js +30 -26
- package/dist/hooks/use-auth.js.map +1 -1
- package/dist/hooks/use-client.cjs +9 -1
- package/dist/hooks/use-client.cjs.map +1 -1
- package/dist/hooks/use-client.d.ts +1 -1
- package/dist/hooks/use-client.d.ts.map +1 -1
- package/dist/hooks/use-client.js +6 -5
- package/dist/hooks/use-client.js.map +1 -1
- package/dist/hooks/use-members.cjs +60 -1
- 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 +53 -41
- package/dist/hooks/use-members.js.map +1 -1
- package/dist/hooks/use-store.cjs +17 -1
- package/dist/hooks/use-store.cjs.map +1 -1
- package/dist/hooks/use-store.js +7 -7
- package/dist/hooks/use-store.js.map +1 -1
- package/dist/index.cjs +37 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -35
- package/dist/lib/utils.cjs +8 -1
- package/dist/lib/utils.cjs.map +1 -1
- package/dist/lib/utils.js +5 -5
- package/dist/lib/utils.js.map +1 -1
- package/dist/lib/variants.cjs +46 -1
- package/dist/lib/variants.cjs.map +1 -1
- package/dist/lib/variants.d.ts +1 -1
- package/dist/lib/variants.js +6 -5
- package/dist/lib/variants.js.map +1 -1
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.cjs +721 -1
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js +571 -377
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -1
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.cjs +625 -1
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +539 -316
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -1
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs +313 -1
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +261 -172
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.cjs +154 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.cjs +173 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +144 -107
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +1 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +111 -87
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -1
- package/dist/node_modules/@radix-ui/primitive/dist/index.cjs +11 -1
- package/dist/node_modules/@radix-ui/primitive/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/primitive/dist/index.js +7 -5
- package/dist/node_modules/@radix-ui/primitive/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-arrow/dist/index.cjs +42 -1
- package/dist/node_modules/@radix-ui/react-arrow/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-arrow/dist/index.js +17 -16
- package/dist/node_modules/@radix-ui/react-arrow/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-avatar/dist/index.cjs +140 -1
- package/dist/node_modules/@radix-ui/react-avatar/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-avatar/dist/index.js +105 -57
- package/dist/node_modules/@radix-ui/react-avatar/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context/dist/index.cjs +80 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context/dist/index.js +49 -41
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive/dist/index.cjs +56 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive/dist/index.js +17 -10
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-slot/dist/index.cjs +119 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-slot/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-slot/dist/index.js +86 -42
- package/dist/node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-slot/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-collection/dist/index.cjs +70 -1
- package/dist/node_modules/@radix-ui/react-collection/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-collection/dist/index.js +57 -37
- package/dist/node_modules/@radix-ui/react-collection/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-compose-refs/dist/index.cjs +56 -1
- package/dist/node_modules/@radix-ui/react-compose-refs/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-compose-refs/dist/index.js +29 -19
- package/dist/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-context/dist/index.cjs +79 -1
- package/dist/node_modules/@radix-ui/react-context/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-context/dist/index.js +48 -39
- package/dist/node_modules/@radix-ui/react-context/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-direction/dist/index.cjs +27 -1
- package/dist/node_modules/@radix-ui/react-direction/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-direction/dist/index.js +6 -6
- package/dist/node_modules/@radix-ui/react-direction/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.cjs +229 -1
- package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +182 -97
- package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-dropdown-menu/dist/index.cjs +296 -1
- package/dist/node_modules/@radix-ui/react-dropdown-menu/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-dropdown-menu/dist/index.js +232 -167
- package/dist/node_modules/@radix-ui/react-dropdown-menu/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-focus-guards/dist/index.cjs +46 -1
- package/dist/node_modules/@radix-ui/react-focus-guards/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-focus-guards/dist/index.js +23 -11
- package/dist/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.cjs +224 -1
- package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.js +169 -98
- package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-id/dist/index.cjs +31 -1
- package/dist/node_modules/@radix-ui/react-id/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-id/dist/index.js +11 -10
- package/dist/node_modules/@radix-ui/react-id/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-menu/dist/index.cjs +845 -1
- package/dist/node_modules/@radix-ui/react-menu/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-menu/dist/index.js +662 -442
- package/dist/node_modules/@radix-ui/react-menu/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-popper/dist/index.cjs +308 -1
- package/dist/node_modules/@radix-ui/react-popper/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-popper/dist/index.js +209 -137
- package/dist/node_modules/@radix-ui/react-popper/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-portal/dist/index.cjs +34 -1
- package/dist/node_modules/@radix-ui/react-portal/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-portal/dist/index.js +14 -12
- package/dist/node_modules/@radix-ui/react-portal/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-presence/dist/index.cjs +145 -1
- package/dist/node_modules/@radix-ui/react-presence/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-presence/dist/index.js +103 -45
- package/dist/node_modules/@radix-ui/react-presence/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-primitive/dist/index.cjs +61 -1
- package/dist/node_modules/@radix-ui/react-primitive/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-primitive/dist/index.js +21 -14
- package/dist/node_modules/@radix-ui/react-primitive/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-roving-focus/dist/index.cjs +244 -1
- package/dist/node_modules/@radix-ui/react-roving-focus/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-roving-focus/dist/index.js +179 -135
- package/dist/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-slot/dist/index.cjs +105 -1
- package/dist/node_modules/@radix-ui/react-slot/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-slot/dist/index.js +74 -35
- package/dist/node_modules/@radix-ui/react-slot/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-callback-ref/dist/index.cjs +28 -1
- package/dist/node_modules/@radix-ui/react-use-callback-ref/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +8 -7
- package/dist/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-controllable-state/dist/index.cjs +86 -1
- package/dist/node_modules/@radix-ui/react-use-controllable-state/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +57 -40
- package/dist/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-escape-keydown/dist/index.cjs +34 -1
- package/dist/node_modules/@radix-ui/react-use-escape-keydown/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +13 -10
- package/dist/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-is-hydrated/dist/index.cjs +15 -1
- package/dist/node_modules/@radix-ui/react-use-is-hydrated/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-is-hydrated/dist/index.js +8 -8
- package/dist/node_modules/@radix-ui/react-use-is-hydrated/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-layout-effect/dist/index.cjs +23 -1
- package/dist/node_modules/@radix-ui/react-use-layout-effect/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +3 -3
- package/dist/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-size/dist/index.cjs +56 -1
- package/dist/node_modules/@radix-ui/react-use-size/dist/index.cjs.map +1 -1
- package/dist/node_modules/@radix-ui/react-use-size/dist/index.js +34 -22
- package/dist/node_modules/@radix-ui/react-use-size/dist/index.js.map +1 -1
- package/dist/node_modules/aria-hidden/dist/es2015/index.cjs +122 -1
- package/dist/node_modules/aria-hidden/dist/es2015/index.cjs.map +1 -1
- package/dist/node_modules/aria-hidden/dist/es2015/index.js +111 -41
- package/dist/node_modules/aria-hidden/dist/es2015/index.js.map +1 -1
- package/dist/node_modules/class-variance-authority/dist/index.cjs +45 -1
- package/dist/node_modules/class-variance-authority/dist/index.cjs.map +1 -1
- package/dist/node_modules/class-variance-authority/dist/index.js +40 -30
- package/dist/node_modules/class-variance-authority/dist/index.js.map +1 -1
- package/dist/node_modules/clsx/dist/clsx.cjs +17 -1
- package/dist/node_modules/clsx/dist/clsx.cjs.map +1 -1
- package/dist/node_modules/clsx/dist/clsx.js +13 -13
- package/dist/node_modules/clsx/dist/clsx.js.map +1 -1
- package/dist/node_modules/get-nonce/dist/es2015/index.cjs +9 -1
- package/dist/node_modules/get-nonce/dist/es2015/index.cjs.map +1 -1
- package/dist/node_modules/get-nonce/dist/es2015/index.js +5 -3
- package/dist/node_modules/get-nonce/dist/es2015/index.js.map +1 -1
- package/dist/node_modules/js-cookie/dist/js.cookie.cjs +99 -1
- package/dist/node_modules/js-cookie/dist/js.cookie.cjs.map +1 -1
- package/dist/node_modules/js-cookie/dist/js.cookie.js +69 -43
- package/dist/node_modules/js-cookie/dist/js.cookie.js.map +1 -1
- package/dist/node_modules/jwt-decode/build/esm/index.cjs +58 -1
- package/dist/node_modules/jwt-decode/build/esm/index.cjs.map +1 -1
- package/dist/node_modules/jwt-decode/build/esm/index.js +36 -30
- package/dist/node_modules/jwt-decode/build/esm/index.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/Icon.cjs +35 -1
- package/dist/node_modules/lucide-react/dist/esm/Icon.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/Icon.js +25 -25
- package/dist/node_modules/lucide-react/dist/esm/Icon.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.cjs +22 -1
- package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.js +16 -15
- package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.cjs +14 -1
- package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.js +2 -2
- package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/check.cjs +7 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/check.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/check.js +5 -4
- package/dist/node_modules/lucide-react/dist/esm/icons/check.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-right.cjs +7 -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/chevron-right.js +5 -4
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-right.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/circle.cjs +7 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/circle.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/circle.js +5 -4
- package/dist/node_modules/lucide-react/dist/esm/icons/circle.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/log-out.cjs +11 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/log-out.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/log-out.js +6 -5
- package/dist/node_modules/lucide-react/dist/esm/icons/log-out.js.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/shared/src/utils.cjs +26 -1
- package/dist/node_modules/lucide-react/dist/esm/shared/src/utils.cjs.map +1 -1
- package/dist/node_modules/lucide-react/dist/esm/shared/src/utils.js +22 -14
- package/dist/node_modules/lucide-react/dist/esm/shared/src/utils.js.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/Combination.cjs +28 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/Combination.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/Combination.js +8 -8
- package/dist/node_modules/react-remove-scroll/dist/es2015/Combination.js.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/SideEffect.cjs +197 -4
- package/dist/node_modules/react-remove-scroll/dist/es2015/SideEffect.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +163 -98
- package/dist/node_modules/react-remove-scroll/dist/es2015/SideEffect.js.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/UI.cjs +55 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/UI.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/UI.js +31 -24
- package/dist/node_modules/react-remove-scroll/dist/es2015/UI.js.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.cjs +19 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +12 -9
- package/dist/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/handleScroll.cjs +102 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/handleScroll.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +85 -51
- package/dist/node_modules/react-remove-scroll/dist/es2015/handleScroll.js.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/medium.cjs +5 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/medium.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/medium.js +3 -3
- package/dist/node_modules/react-remove-scroll/dist/es2015/medium.js.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/sidecar.cjs +7 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/sidecar.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll/dist/es2015/sidecar.js +5 -5
- package/dist/node_modules/react-remove-scroll/dist/es2015/sidecar.js.map +1 -1
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/component.cjs +62 -36
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/component.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/component.js +41 -65
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/component.js.map +1 -1
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/constants.cjs +10 -1
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/constants.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +8 -5
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/constants.js.map +1 -1
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/utils.cjs +37 -1
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/utils.cjs.map +1 -1
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +28 -16
- package/dist/node_modules/react-remove-scroll-bar/dist/es2015/utils.js.map +1 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/component.cjs +13 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/component.cjs.map +1 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/component.js +9 -7
- package/dist/node_modules/react-style-singleton/dist/es2015/component.js.map +1 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/hook.cjs +33 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/hook.cjs.map +1 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/hook.js +11 -10
- package/dist/node_modules/react-style-singleton/dist/es2015/hook.js.map +1 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/singleton.cjs +48 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/singleton.cjs.map +1 -1
- package/dist/node_modules/react-style-singleton/dist/es2015/singleton.js +35 -17
- package/dist/node_modules/react-style-singleton/dist/es2015/singleton.js.map +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.cjs +3014 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.cjs.map +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +804 -555
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -1
- package/dist/node_modules/tailwindcss/dist/plugin.cjs +13 -1
- package/dist/node_modules/tailwindcss/dist/plugin.cjs.map +1 -1
- package/dist/node_modules/tailwindcss/dist/plugin.js +8 -8
- package/dist/node_modules/tailwindcss/dist/plugin.js.map +1 -1
- package/dist/node_modules/tslib/tslib.es6.cjs +38 -1
- package/dist/node_modules/tslib/tslib.es6.cjs.map +1 -1
- package/dist/node_modules/tslib/tslib.es6.js +33 -21
- package/dist/node_modules/tslib/tslib.es6.js.map +1 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/assignRef.cjs +11 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/assignRef.cjs.map +1 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/assignRef.js +8 -3
- package/dist/node_modules/use-callback-ref/dist/es2015/assignRef.js.map +1 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/useMergeRef.cjs +52 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/useMergeRef.cjs.map +1 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +28 -19
- package/dist/node_modules/use-callback-ref/dist/es2015/useMergeRef.js.map +1 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/useRef.cjs +29 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/useRef.cjs.map +1 -1
- package/dist/node_modules/use-callback-ref/dist/es2015/useRef.js +15 -11
- package/dist/node_modules/use-callback-ref/dist/es2015/useRef.js.map +1 -1
- package/dist/node_modules/use-sidecar/dist/es2015/exports.cjs +38 -1
- package/dist/node_modules/use-sidecar/dist/es2015/exports.cjs.map +1 -1
- package/dist/node_modules/use-sidecar/dist/es2015/exports.js +15 -12
- package/dist/node_modules/use-sidecar/dist/es2015/exports.js.map +1 -1
- package/dist/node_modules/use-sidecar/dist/es2015/medium.cjs +88 -1
- package/dist/node_modules/use-sidecar/dist/es2015/medium.cjs.map +1 -1
- package/dist/node_modules/use-sidecar/dist/es2015/medium.js +64 -43
- package/dist/node_modules/use-sidecar/dist/es2015/medium.js.map +1 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.cjs +68 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.cjs.map +1 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +49 -39
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.cjs +53 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.cjs.map +1 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +39 -32
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js.map +1 -1
- package/dist/node_modules/use-sync-external-store/shim/index.cjs +17 -1
- package/dist/node_modules/use-sync-external-store/shim/index.cjs.map +1 -1
- package/dist/node_modules/use-sync-external-store/shim/index.js +14 -7
- package/dist/node_modules/use-sync-external-store/shim/index.js.map +1 -1
- package/dist/providers/auth/auth.context.cjs +5 -1
- package/dist/providers/auth/auth.context.cjs.map +1 -1
- package/dist/providers/auth/auth.context.js +3 -3
- package/dist/providers/auth/auth.context.js.map +1 -1
- package/dist/providers/auth/auth.hook.cjs +12 -1
- package/dist/providers/auth/auth.hook.cjs.map +1 -1
- package/dist/providers/auth/auth.hook.js +8 -7
- package/dist/providers/auth/auth.hook.js.map +1 -1
- package/dist/providers/auth/auth.provider.cjs +37 -1
- package/dist/providers/auth/auth.provider.cjs.map +1 -1
- package/dist/providers/auth/auth.provider.js +31 -22
- package/dist/providers/auth/auth.provider.js.map +1 -1
- package/dist/providers/blimu/blimu.context.cjs +5 -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 +3 -3
- package/dist/providers/blimu/blimu.context.js.map +1 -1
- package/dist/providers/blimu/blimu.hook.cjs +12 -1
- package/dist/providers/blimu/blimu.hook.cjs.map +1 -1
- package/dist/providers/blimu/blimu.hook.js +8 -7
- package/dist/providers/blimu/blimu.hook.js.map +1 -1
- package/dist/providers/blimu/blimu.provider.cjs +71 -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 +32 -27
- package/dist/providers/blimu/blimu.provider.js.map +1 -1
- package/dist/providers/index.cjs +13 -0
- package/dist/providers/index.cjs.map +1 -0
- package/dist/providers/index.d.ts +3 -3
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +13 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/theme/index.d.ts +2 -2
- package/dist/providers/theme/index.d.ts.map +1 -1
- package/dist/providers/theme/theme.context.cjs +5 -1
- package/dist/providers/theme/theme.context.cjs.map +1 -1
- package/dist/providers/theme/theme.context.js +3 -3
- package/dist/providers/theme/theme.context.js.map +1 -1
- package/dist/providers/theme/theme.hook.cjs +12 -1
- package/dist/providers/theme/theme.hook.cjs.map +1 -1
- package/dist/providers/theme/theme.hook.js +8 -7
- package/dist/providers/theme/theme.hook.js.map +1 -1
- package/dist/providers/theme/theme.provider.cjs +104 -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 +85 -48
- 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 +200 -0
- package/dist/tailwind.cjs.map +1 -0
- package/dist/{tailwind.plugin.js → tailwind.js} +43 -43
- package/dist/tailwind.js.map +1 -0
- package/dist/types/index.cjs +11 -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 +8 -8
- package/dist/types/index.js.map +1 -1
- package/dist/utils/publishable-key.cjs +62 -1
- package/dist/utils/publishable-key.cjs.map +1 -1
- package/dist/utils/publishable-key.js +52 -27
- package/dist/utils/publishable-key.js.map +1 -1
- package/package.json +68 -53
- package/dist/components.cjs +0 -2
- package/dist/components.cjs.map +0 -1
- package/dist/components.js +0 -13
- package/dist/components.js.map +0 -1
- package/dist/hooks.cjs +0 -2
- package/dist/hooks.cjs.map +0 -1
- package/dist/hooks.js +0 -14
- package/dist/hooks.js.map +0 -1
- package/dist/providers.cjs +0 -2
- package/dist/providers.cjs.map +0 -1
- package/dist/providers.js +0 -13
- package/dist/providers.js.map +0 -1
- package/dist/tailwind.plugin.cjs +0 -2
- package/dist/tailwind.plugin.cjs.map +0 -1
- package/dist/tailwind.plugin.js.map +0 -1
|
@@ -1,2 +1,63 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const developmentDomains = [".dev-blimuauth.com", ".blimuauth.com"];
|
|
4
|
+
function decodePublishableKey(publishableKey) {
|
|
5
|
+
try {
|
|
6
|
+
const prefixMatch = publishableKey.match(/^pk_(test|live)_(.+)$/);
|
|
7
|
+
if (!prefixMatch) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
const isProduction = prefixMatch[1] === "live";
|
|
11
|
+
const encoded = prefixMatch[2];
|
|
12
|
+
if (!encoded) {
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
const decoded = atob(encoded.replace(/-/g, "+").replace(/_/g, "/"));
|
|
16
|
+
const uiDomain = decoded.trim().split("$")[0];
|
|
17
|
+
if (!uiDomain) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
return { uiDomain, isProduction };
|
|
21
|
+
} catch (error) {
|
|
22
|
+
console.error("Failed to decode publishable key:", publishableKey, error);
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
function getAuthDomainFromPublishableKey(publishableKey) {
|
|
27
|
+
const decoded = decodePublishableKey(publishableKey);
|
|
28
|
+
if (!decoded) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
if (decoded.uiDomain === "localhost" || decoded.uiDomain.includes("localhost")) {
|
|
32
|
+
return `http://${decoded.uiDomain}`;
|
|
33
|
+
}
|
|
34
|
+
return `https://${decoded.uiDomain}`;
|
|
35
|
+
}
|
|
36
|
+
function getAuthApiUrl(publishableKey) {
|
|
37
|
+
const decoded = decodePublishableKey(publishableKey);
|
|
38
|
+
if (!decoded) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
if (decoded.uiDomain === "localhost" || decoded.uiDomain.includes("localhost")) {
|
|
42
|
+
return `http://${decoded.uiDomain}`;
|
|
43
|
+
}
|
|
44
|
+
if (decoded.isProduction) {
|
|
45
|
+
if (decoded.uiDomain.startsWith("id.")) {
|
|
46
|
+
const apiDomain = decoded.uiDomain.replace(/^id\./, "blimu.");
|
|
47
|
+
return `https://${apiDomain}`;
|
|
48
|
+
}
|
|
49
|
+
return null;
|
|
50
|
+
} else {
|
|
51
|
+
for (const domain of developmentDomains) {
|
|
52
|
+
if (decoded.uiDomain.endsWith(domain)) {
|
|
53
|
+
const subdomain = decoded.uiDomain.replace(domain, "");
|
|
54
|
+
return `https://${subdomain}.api${domain}`;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
exports.decodePublishableKey = decodePublishableKey;
|
|
61
|
+
exports.getAuthApiUrl = getAuthApiUrl;
|
|
62
|
+
exports.getAuthDomainFromPublishableKey = getAuthDomainFromPublishableKey;
|
|
2
63
|
//# sourceMappingURL=publishable-key.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publishable-key.cjs","sources":["../../src/utils/publishable-key.ts"],"sourcesContent":["/**\n * Utility functions for working with publishable keys\n *\n * Publishable key format: pk_test_<base64(fullUIDomain)>\n * or pk_live_<base64(fullUIDomain)> for production\n *\n * Test: {subdomain}.blimuauth.com\n * Live: id.{rootDomain}\n */\n\nexport interface DecodedPublishableKey {\n uiDomain: string;\n isProduction: boolean;\n}\n\n// CAUTION: Order matters, dev-blimuauth.com must be first\nconst developmentDomains = ['.dev-blimuauth.com', '.blimuauth.com'];\n\n/**\n * Decode publishable key to extract full UI domain\n *\n * @param publishableKey - The publishable key (e.g., pk_test_... or pk_live_...)\n * @returns Decoded information or null if invalid\n */\nexport function decodePublishableKey(publishableKey: string): DecodedPublishableKey | null {\n try {\n // Remove prefix (pk_test_ or pk_live_)\n const prefixMatch = publishableKey.match(/^pk_(test|live)_(.+)$/);\n if (!prefixMatch) {\n return null;\n }\n\n const isProduction = prefixMatch[1] === 'live';\n const encoded = prefixMatch[2];\n\n if (!encoded) {\n return null;\n }\n\n // Decode base64url\n const decoded = atob(encoded.replace(/-/g, '+').replace(/_/g, '/'));\n const uiDomain = decoded.trim().split('$')[0];\n\n if (!uiDomain) {\n return null;\n }\n\n return { uiDomain, isProduction };\n } catch (error) {\n console.error('Failed to decode publishable key:', publishableKey, error);\n return null;\n }\n}\n\n/**\n * Get auth UI domain URL from publishable key\n *\n * @param publishableKey - The publishable key\n * @returns Auth UI domain URL (e.g., https://subdomain.blimuauth.com or https://id.scrunchai.com)\n */\nexport function getAuthDomainFromPublishableKey(publishableKey: string): string | null {\n const decoded = decodePublishableKey(publishableKey);\n if (!decoded) {\n return null;\n }\n\n // For localhost development, use http://\n if (decoded.uiDomain === 'localhost' || decoded.uiDomain.includes('localhost')) {\n return `http://${decoded.uiDomain}`;\n }\n\n return `https://${decoded.uiDomain}`;\n}\n\n/**\n * Get auth API domain URL from publishable key\n *\n * Test environment: {subdomain}.api.blimuauth.com\n * Live environment: blimu.{customDomain}\n *\n * @param publishableKey - The publishable key\n * @returns Auth API domain URL (e.g., https://subdomain.api.blimuauth.com or https://blimu.scrunchai.com)\n */\nexport function getAuthApiUrl(publishableKey: string): string | null {\n const decoded = decodePublishableKey(publishableKey);\n if (!decoded) {\n return null;\n }\n\n // For localhost development\n if (decoded.uiDomain === 'localhost' || decoded.uiDomain.includes('localhost')) {\n return `http://${decoded.uiDomain}`;\n }\n\n if (decoded.isProduction) {\n // Live: Replace \"id.\" with \"blimu.\" to get API domain\n // e.g., id.scrunchai.com -> blimu.scrunchai.com\n if (decoded.uiDomain.startsWith('id.')) {\n const apiDomain = decoded.uiDomain.replace(/^id\\./, 'blimu.');\n return `https://${apiDomain}`;\n }\n return null;\n } else {\n for (const domain of developmentDomains) {\n if (decoded.uiDomain.endsWith(domain)) {\n const subdomain = decoded.uiDomain.replace(domain, '');\n return `https://${subdomain}.api${domain}`;\n }\n }\n\n return null;\n }\n}\n"],"names":[
|
|
1
|
+
{"version":3,"file":"publishable-key.cjs","sources":["../../src/utils/publishable-key.ts"],"sourcesContent":["/**\n * Utility functions for working with publishable keys\n *\n * Publishable key format: pk_test_<base64(fullUIDomain)>\n * or pk_live_<base64(fullUIDomain)> for production\n *\n * Test: {subdomain}.blimuauth.com\n * Live: id.{rootDomain}\n */\n\nexport interface DecodedPublishableKey {\n uiDomain: string;\n isProduction: boolean;\n}\n\n// CAUTION: Order matters, dev-blimuauth.com must be first\nconst developmentDomains = ['.dev-blimuauth.com', '.blimuauth.com'];\n\n/**\n * Decode publishable key to extract full UI domain\n *\n * @param publishableKey - The publishable key (e.g., pk_test_... or pk_live_...)\n * @returns Decoded information or null if invalid\n */\nexport function decodePublishableKey(publishableKey: string): DecodedPublishableKey | null {\n try {\n // Remove prefix (pk_test_ or pk_live_)\n const prefixMatch = publishableKey.match(/^pk_(test|live)_(.+)$/);\n if (!prefixMatch) {\n return null;\n }\n\n const isProduction = prefixMatch[1] === 'live';\n const encoded = prefixMatch[2];\n\n if (!encoded) {\n return null;\n }\n\n // Decode base64url\n const decoded = atob(encoded.replace(/-/g, '+').replace(/_/g, '/'));\n const uiDomain = decoded.trim().split('$')[0];\n\n if (!uiDomain) {\n return null;\n }\n\n return { uiDomain, isProduction };\n } catch (error) {\n console.error('Failed to decode publishable key:', publishableKey, error);\n return null;\n }\n}\n\n/**\n * Get auth UI domain URL from publishable key\n *\n * @param publishableKey - The publishable key\n * @returns Auth UI domain URL (e.g., https://subdomain.blimuauth.com or https://id.scrunchai.com)\n */\nexport function getAuthDomainFromPublishableKey(publishableKey: string): string | null {\n const decoded = decodePublishableKey(publishableKey);\n if (!decoded) {\n return null;\n }\n\n // For localhost development, use http://\n if (decoded.uiDomain === 'localhost' || decoded.uiDomain.includes('localhost')) {\n return `http://${decoded.uiDomain}`;\n }\n\n return `https://${decoded.uiDomain}`;\n}\n\n/**\n * Get auth API domain URL from publishable key\n *\n * Test environment: {subdomain}.api.blimuauth.com\n * Live environment: blimu.{customDomain}\n *\n * @param publishableKey - The publishable key\n * @returns Auth API domain URL (e.g., https://subdomain.api.blimuauth.com or https://blimu.scrunchai.com)\n */\nexport function getAuthApiUrl(publishableKey: string): string | null {\n const decoded = decodePublishableKey(publishableKey);\n if (!decoded) {\n return null;\n }\n\n // For localhost development\n if (decoded.uiDomain === 'localhost' || decoded.uiDomain.includes('localhost')) {\n return `http://${decoded.uiDomain}`;\n }\n\n if (decoded.isProduction) {\n // Live: Replace \"id.\" with \"blimu.\" to get API domain\n // e.g., id.scrunchai.com -> blimu.scrunchai.com\n if (decoded.uiDomain.startsWith('id.')) {\n const apiDomain = decoded.uiDomain.replace(/^id\\./, 'blimu.');\n return `https://${apiDomain}`;\n }\n return null;\n } else {\n for (const domain of developmentDomains) {\n if (decoded.uiDomain.endsWith(domain)) {\n const subdomain = decoded.uiDomain.replace(domain, '');\n return `https://${subdomain}.api${domain}`;\n }\n }\n\n return null;\n }\n}\n"],"names":[],"mappings":";;AAgBA,MAAM,qBAAqB,CAAC,sBAAsB,gBAAgB;AAQ3D,SAAS,qBAAqB,gBAAsD;AACzF,MAAI;AAEF,UAAM,cAAc,eAAe,MAAM,uBAAuB;AAChE,QAAI,CAAC,aAAa;AAChB,aAAO;AAAA,IACT;AAEA,UAAM,eAAe,YAAY,CAAC,MAAM;AACxC,UAAM,UAAU,YAAY,CAAC;AAE7B,QAAI,CAAC,SAAS;AACZ,aAAO;AAAA,IACT;AAGA,UAAM,UAAU,KAAK,QAAQ,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,GAAG,CAAC;AAClE,UAAM,WAAW,QAAQ,KAAA,EAAO,MAAM,GAAG,EAAE,CAAC;AAE5C,QAAI,CAAC,UAAU;AACb,aAAO;AAAA,IACT;AAEA,WAAO,EAAE,UAAU,aAAA;AAAA,EACrB,SAAS,OAAO;AACd,YAAQ,MAAM,qCAAqC,gBAAgB,KAAK;AACxE,WAAO;AAAA,EACT;AACF;AAQO,SAAS,gCAAgC,gBAAuC;AACrF,QAAM,UAAU,qBAAqB,cAAc;AACnD,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAGA,MAAI,QAAQ,aAAa,eAAe,QAAQ,SAAS,SAAS,WAAW,GAAG;AAC9E,WAAO,UAAU,QAAQ,QAAQ;AAAA,EACnC;AAEA,SAAO,WAAW,QAAQ,QAAQ;AACpC;AAWO,SAAS,cAAc,gBAAuC;AACnE,QAAM,UAAU,qBAAqB,cAAc;AACnD,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAGA,MAAI,QAAQ,aAAa,eAAe,QAAQ,SAAS,SAAS,WAAW,GAAG;AAC9E,WAAO,UAAU,QAAQ,QAAQ;AAAA,EACnC;AAEA,MAAI,QAAQ,cAAc;AAGxB,QAAI,QAAQ,SAAS,WAAW,KAAK,GAAG;AACtC,YAAM,YAAY,QAAQ,SAAS,QAAQ,SAAS,QAAQ;AAC5D,aAAO,WAAW,SAAS;AAAA,IAC7B;AACA,WAAO;AAAA,EACT,OAAO;AACL,eAAW,UAAU,oBAAoB;AACvC,UAAI,QAAQ,SAAS,SAAS,MAAM,GAAG;AACrC,cAAM,YAAY,QAAQ,SAAS,QAAQ,QAAQ,EAAE;AACrD,eAAO,WAAW,SAAS,OAAO,MAAM;AAAA,MAC1C;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AACF;;;;"}
|
|
@@ -1,38 +1,63 @@
|
|
|
1
|
-
const
|
|
2
|
-
function
|
|
1
|
+
const developmentDomains = [".dev-blimuauth.com", ".blimuauth.com"];
|
|
2
|
+
function decodePublishableKey(publishableKey) {
|
|
3
3
|
try {
|
|
4
|
-
const
|
|
5
|
-
if (!
|
|
4
|
+
const prefixMatch = publishableKey.match(/^pk_(test|live)_(.+)$/);
|
|
5
|
+
if (!prefixMatch) {
|
|
6
6
|
return null;
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
}
|
|
8
|
+
const isProduction = prefixMatch[1] === "live";
|
|
9
|
+
const encoded = prefixMatch[2];
|
|
10
|
+
if (!encoded) {
|
|
9
11
|
return null;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
}
|
|
13
|
+
const decoded = atob(encoded.replace(/-/g, "+").replace(/_/g, "/"));
|
|
14
|
+
const uiDomain = decoded.trim().split("$")[0];
|
|
15
|
+
if (!uiDomain) {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
return { uiDomain, isProduction };
|
|
19
|
+
} catch (error) {
|
|
20
|
+
console.error("Failed to decode publishable key:", publishableKey, error);
|
|
21
|
+
return null;
|
|
14
22
|
}
|
|
15
23
|
}
|
|
16
|
-
function
|
|
17
|
-
const
|
|
18
|
-
|
|
24
|
+
function getAuthDomainFromPublishableKey(publishableKey) {
|
|
25
|
+
const decoded = decodePublishableKey(publishableKey);
|
|
26
|
+
if (!decoded) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
if (decoded.uiDomain === "localhost" || decoded.uiDomain.includes("localhost")) {
|
|
30
|
+
return `http://${decoded.uiDomain}`;
|
|
31
|
+
}
|
|
32
|
+
return `https://${decoded.uiDomain}`;
|
|
19
33
|
}
|
|
20
|
-
function
|
|
21
|
-
const
|
|
22
|
-
if (!
|
|
34
|
+
function getAuthApiUrl(publishableKey) {
|
|
35
|
+
const decoded = decodePublishableKey(publishableKey);
|
|
36
|
+
if (!decoded) {
|
|
23
37
|
return null;
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
if (
|
|
30
|
-
|
|
31
|
-
|
|
38
|
+
}
|
|
39
|
+
if (decoded.uiDomain === "localhost" || decoded.uiDomain.includes("localhost")) {
|
|
40
|
+
return `http://${decoded.uiDomain}`;
|
|
41
|
+
}
|
|
42
|
+
if (decoded.isProduction) {
|
|
43
|
+
if (decoded.uiDomain.startsWith("id.")) {
|
|
44
|
+
const apiDomain = decoded.uiDomain.replace(/^id\./, "blimu.");
|
|
45
|
+
return `https://${apiDomain}`;
|
|
46
|
+
}
|
|
47
|
+
return null;
|
|
48
|
+
} else {
|
|
49
|
+
for (const domain of developmentDomains) {
|
|
50
|
+
if (decoded.uiDomain.endsWith(domain)) {
|
|
51
|
+
const subdomain = decoded.uiDomain.replace(domain, "");
|
|
52
|
+
return `https://${subdomain}.api${domain}`;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
32
57
|
}
|
|
33
58
|
export {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
59
|
+
decodePublishableKey,
|
|
60
|
+
getAuthApiUrl,
|
|
61
|
+
getAuthDomainFromPublishableKey
|
|
37
62
|
};
|
|
38
63
|
//# sourceMappingURL=publishable-key.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publishable-key.js","sources":["../../src/utils/publishable-key.ts"],"sourcesContent":["/**\n * Utility functions for working with publishable keys\n *\n * Publishable key format: pk_test_<base64(fullUIDomain)>\n * or pk_live_<base64(fullUIDomain)> for production\n *\n * Test: {subdomain}.blimuauth.com\n * Live: id.{rootDomain}\n */\n\nexport interface DecodedPublishableKey {\n uiDomain: string;\n isProduction: boolean;\n}\n\n// CAUTION: Order matters, dev-blimuauth.com must be first\nconst developmentDomains = ['.dev-blimuauth.com', '.blimuauth.com'];\n\n/**\n * Decode publishable key to extract full UI domain\n *\n * @param publishableKey - The publishable key (e.g., pk_test_... or pk_live_...)\n * @returns Decoded information or null if invalid\n */\nexport function decodePublishableKey(publishableKey: string): DecodedPublishableKey | null {\n try {\n // Remove prefix (pk_test_ or pk_live_)\n const prefixMatch = publishableKey.match(/^pk_(test|live)_(.+)$/);\n if (!prefixMatch) {\n return null;\n }\n\n const isProduction = prefixMatch[1] === 'live';\n const encoded = prefixMatch[2];\n\n if (!encoded) {\n return null;\n }\n\n // Decode base64url\n const decoded = atob(encoded.replace(/-/g, '+').replace(/_/g, '/'));\n const uiDomain = decoded.trim().split('$')[0];\n\n if (!uiDomain) {\n return null;\n }\n\n return { uiDomain, isProduction };\n } catch (error) {\n console.error('Failed to decode publishable key:', publishableKey, error);\n return null;\n }\n}\n\n/**\n * Get auth UI domain URL from publishable key\n *\n * @param publishableKey - The publishable key\n * @returns Auth UI domain URL (e.g., https://subdomain.blimuauth.com or https://id.scrunchai.com)\n */\nexport function getAuthDomainFromPublishableKey(publishableKey: string): string | null {\n const decoded = decodePublishableKey(publishableKey);\n if (!decoded) {\n return null;\n }\n\n // For localhost development, use http://\n if (decoded.uiDomain === 'localhost' || decoded.uiDomain.includes('localhost')) {\n return `http://${decoded.uiDomain}`;\n }\n\n return `https://${decoded.uiDomain}`;\n}\n\n/**\n * Get auth API domain URL from publishable key\n *\n * Test environment: {subdomain}.api.blimuauth.com\n * Live environment: blimu.{customDomain}\n *\n * @param publishableKey - The publishable key\n * @returns Auth API domain URL (e.g., https://subdomain.api.blimuauth.com or https://blimu.scrunchai.com)\n */\nexport function getAuthApiUrl(publishableKey: string): string | null {\n const decoded = decodePublishableKey(publishableKey);\n if (!decoded) {\n return null;\n }\n\n // For localhost development\n if (decoded.uiDomain === 'localhost' || decoded.uiDomain.includes('localhost')) {\n return `http://${decoded.uiDomain}`;\n }\n\n if (decoded.isProduction) {\n // Live: Replace \"id.\" with \"blimu.\" to get API domain\n // e.g., id.scrunchai.com -> blimu.scrunchai.com\n if (decoded.uiDomain.startsWith('id.')) {\n const apiDomain = decoded.uiDomain.replace(/^id\\./, 'blimu.');\n return `https://${apiDomain}`;\n }\n return null;\n } else {\n for (const domain of developmentDomains) {\n if (decoded.uiDomain.endsWith(domain)) {\n const subdomain = decoded.uiDomain.replace(domain, '');\n return `https://${subdomain}.api${domain}`;\n }\n }\n\n return null;\n }\n}\n"],"names":[
|
|
1
|
+
{"version":3,"file":"publishable-key.js","sources":["../../src/utils/publishable-key.ts"],"sourcesContent":["/**\n * Utility functions for working with publishable keys\n *\n * Publishable key format: pk_test_<base64(fullUIDomain)>\n * or pk_live_<base64(fullUIDomain)> for production\n *\n * Test: {subdomain}.blimuauth.com\n * Live: id.{rootDomain}\n */\n\nexport interface DecodedPublishableKey {\n uiDomain: string;\n isProduction: boolean;\n}\n\n// CAUTION: Order matters, dev-blimuauth.com must be first\nconst developmentDomains = ['.dev-blimuauth.com', '.blimuauth.com'];\n\n/**\n * Decode publishable key to extract full UI domain\n *\n * @param publishableKey - The publishable key (e.g., pk_test_... or pk_live_...)\n * @returns Decoded information or null if invalid\n */\nexport function decodePublishableKey(publishableKey: string): DecodedPublishableKey | null {\n try {\n // Remove prefix (pk_test_ or pk_live_)\n const prefixMatch = publishableKey.match(/^pk_(test|live)_(.+)$/);\n if (!prefixMatch) {\n return null;\n }\n\n const isProduction = prefixMatch[1] === 'live';\n const encoded = prefixMatch[2];\n\n if (!encoded) {\n return null;\n }\n\n // Decode base64url\n const decoded = atob(encoded.replace(/-/g, '+').replace(/_/g, '/'));\n const uiDomain = decoded.trim().split('$')[0];\n\n if (!uiDomain) {\n return null;\n }\n\n return { uiDomain, isProduction };\n } catch (error) {\n console.error('Failed to decode publishable key:', publishableKey, error);\n return null;\n }\n}\n\n/**\n * Get auth UI domain URL from publishable key\n *\n * @param publishableKey - The publishable key\n * @returns Auth UI domain URL (e.g., https://subdomain.blimuauth.com or https://id.scrunchai.com)\n */\nexport function getAuthDomainFromPublishableKey(publishableKey: string): string | null {\n const decoded = decodePublishableKey(publishableKey);\n if (!decoded) {\n return null;\n }\n\n // For localhost development, use http://\n if (decoded.uiDomain === 'localhost' || decoded.uiDomain.includes('localhost')) {\n return `http://${decoded.uiDomain}`;\n }\n\n return `https://${decoded.uiDomain}`;\n}\n\n/**\n * Get auth API domain URL from publishable key\n *\n * Test environment: {subdomain}.api.blimuauth.com\n * Live environment: blimu.{customDomain}\n *\n * @param publishableKey - The publishable key\n * @returns Auth API domain URL (e.g., https://subdomain.api.blimuauth.com or https://blimu.scrunchai.com)\n */\nexport function getAuthApiUrl(publishableKey: string): string | null {\n const decoded = decodePublishableKey(publishableKey);\n if (!decoded) {\n return null;\n }\n\n // For localhost development\n if (decoded.uiDomain === 'localhost' || decoded.uiDomain.includes('localhost')) {\n return `http://${decoded.uiDomain}`;\n }\n\n if (decoded.isProduction) {\n // Live: Replace \"id.\" with \"blimu.\" to get API domain\n // e.g., id.scrunchai.com -> blimu.scrunchai.com\n if (decoded.uiDomain.startsWith('id.')) {\n const apiDomain = decoded.uiDomain.replace(/^id\\./, 'blimu.');\n return `https://${apiDomain}`;\n }\n return null;\n } else {\n for (const domain of developmentDomains) {\n if (decoded.uiDomain.endsWith(domain)) {\n const subdomain = decoded.uiDomain.replace(domain, '');\n return `https://${subdomain}.api${domain}`;\n }\n }\n\n return null;\n }\n}\n"],"names":[],"mappings":"AAgBA,MAAM,qBAAqB,CAAC,sBAAsB,gBAAgB;AAQ3D,SAAS,qBAAqB,gBAAsD;AACzF,MAAI;AAEF,UAAM,cAAc,eAAe,MAAM,uBAAuB;AAChE,QAAI,CAAC,aAAa;AAChB,aAAO;AAAA,IACT;AAEA,UAAM,eAAe,YAAY,CAAC,MAAM;AACxC,UAAM,UAAU,YAAY,CAAC;AAE7B,QAAI,CAAC,SAAS;AACZ,aAAO;AAAA,IACT;AAGA,UAAM,UAAU,KAAK,QAAQ,QAAQ,MAAM,GAAG,EAAE,QAAQ,MAAM,GAAG,CAAC;AAClE,UAAM,WAAW,QAAQ,KAAA,EAAO,MAAM,GAAG,EAAE,CAAC;AAE5C,QAAI,CAAC,UAAU;AACb,aAAO;AAAA,IACT;AAEA,WAAO,EAAE,UAAU,aAAA;AAAA,EACrB,SAAS,OAAO;AACd,YAAQ,MAAM,qCAAqC,gBAAgB,KAAK;AACxE,WAAO;AAAA,EACT;AACF;AAQO,SAAS,gCAAgC,gBAAuC;AACrF,QAAM,UAAU,qBAAqB,cAAc;AACnD,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAGA,MAAI,QAAQ,aAAa,eAAe,QAAQ,SAAS,SAAS,WAAW,GAAG;AAC9E,WAAO,UAAU,QAAQ,QAAQ;AAAA,EACnC;AAEA,SAAO,WAAW,QAAQ,QAAQ;AACpC;AAWO,SAAS,cAAc,gBAAuC;AACnE,QAAM,UAAU,qBAAqB,cAAc;AACnD,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAGA,MAAI,QAAQ,aAAa,eAAe,QAAQ,SAAS,SAAS,WAAW,GAAG;AAC9E,WAAO,UAAU,QAAQ,QAAQ;AAAA,EACnC;AAEA,MAAI,QAAQ,cAAc;AAGxB,QAAI,QAAQ,SAAS,WAAW,KAAK,GAAG;AACtC,YAAM,YAAY,QAAQ,SAAS,QAAQ,SAAS,QAAQ;AAC5D,aAAO,WAAW,SAAS;AAAA,IAC7B;AACA,WAAO;AAAA,EACT,OAAO;AACL,eAAW,UAAU,oBAAoB;AACvC,UAAI,QAAQ,SAAS,SAAS,MAAM,GAAG;AACrC,cAAM,YAAY,QAAQ,SAAS,QAAQ,QAAQ,EAAE;AACrD,eAAO,WAAW,SAAS,OAAO,MAAM;AAAA,MAC1C;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AACF;"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blimu/react",
|
|
3
|
-
"version": "1.1.
|
|
4
|
-
"description": "React components and hooks for Blimu authentication and authorization",
|
|
3
|
+
"version": "1.1.4",
|
|
5
4
|
"type": "module",
|
|
5
|
+
"description": "React components and hooks for Blimu authentication and authorization",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/blimu-dev/blimu-ts"
|
|
@@ -10,8 +10,7 @@
|
|
|
10
10
|
"publishConfig": {
|
|
11
11
|
"access": "public"
|
|
12
12
|
},
|
|
13
|
-
"main": "./dist/index.
|
|
14
|
-
"module": "./dist/index.js",
|
|
13
|
+
"main": "./dist/index.js",
|
|
15
14
|
"types": "./dist/index.d.ts",
|
|
16
15
|
"files": [
|
|
17
16
|
"dist",
|
|
@@ -20,9 +19,46 @@
|
|
|
20
19
|
"sideEffects": [
|
|
21
20
|
"*.css"
|
|
22
21
|
],
|
|
22
|
+
"exports": {
|
|
23
|
+
".": {
|
|
24
|
+
"types": "./dist/index.d.ts",
|
|
25
|
+
"import": "./dist/index.js",
|
|
26
|
+
"require": "./dist/index.cjs",
|
|
27
|
+
"default": "./dist/index.js"
|
|
28
|
+
},
|
|
29
|
+
"./hooks": {
|
|
30
|
+
"types": "./dist/hooks/index.d.ts",
|
|
31
|
+
"import": "./dist/hooks/index.js",
|
|
32
|
+
"require": "./dist/hooks/index.cjs",
|
|
33
|
+
"default": "./dist/hooks/index.js"
|
|
34
|
+
},
|
|
35
|
+
"./providers": {
|
|
36
|
+
"types": "./dist/providers/index.d.ts",
|
|
37
|
+
"import": "./dist/providers/index.js",
|
|
38
|
+
"require": "./dist/providers/index.cjs",
|
|
39
|
+
"default": "./dist/providers/index.js"
|
|
40
|
+
},
|
|
41
|
+
"./components": {
|
|
42
|
+
"types": "./dist/components/index.d.ts",
|
|
43
|
+
"import": "./dist/components/index.js",
|
|
44
|
+
"require": "./dist/components/index.cjs",
|
|
45
|
+
"default": "./dist/components/index.js"
|
|
46
|
+
},
|
|
47
|
+
"./types": {
|
|
48
|
+
"types": "./dist/types/index.d.ts",
|
|
49
|
+
"import": "./dist/types/index.js",
|
|
50
|
+
"require": "./dist/types/index.cjs",
|
|
51
|
+
"default": "./dist/types/index.js"
|
|
52
|
+
},
|
|
53
|
+
"./styles": "./dist/styles/styles.css",
|
|
54
|
+
"./tw-styles": "./dist/styles/tw-styles.css",
|
|
55
|
+
"./package.json": "./package.json"
|
|
56
|
+
},
|
|
23
57
|
"scripts": {
|
|
24
|
-
"build": "
|
|
58
|
+
"d:build": "npm run build && npm run typecheck",
|
|
59
|
+
"build": "vite build && yarn typecheck && tsc --project tsconfig.build.json --emitDeclarationOnly && node build-css.js",
|
|
25
60
|
"lint": "eslint . --max-warnings 0",
|
|
61
|
+
"typecheck": "tsc --noEmit",
|
|
26
62
|
"dev": "vite build --watch",
|
|
27
63
|
"test": "vitest run",
|
|
28
64
|
"test:watch": "vitest",
|
|
@@ -30,7 +66,7 @@
|
|
|
30
66
|
"test:coverage": "vitest run --coverage",
|
|
31
67
|
"storybook": "storybook dev -p 6006",
|
|
32
68
|
"build-storybook": "storybook build",
|
|
33
|
-
"prepublishOnly": "
|
|
69
|
+
"prepublishOnly": "echo 'Skipping build in prepublishOnly - packages already built'"
|
|
34
70
|
},
|
|
35
71
|
"peerDependencies": {
|
|
36
72
|
"react": "^18.0.0 || ^19.0.0",
|
|
@@ -44,7 +80,7 @@
|
|
|
44
80
|
}
|
|
45
81
|
},
|
|
46
82
|
"dependencies": {
|
|
47
|
-
"@blimu/client": "1.1.
|
|
83
|
+
"@blimu/client": "1.1.4",
|
|
48
84
|
"@radix-ui/react-avatar": "^1.1.11",
|
|
49
85
|
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
50
86
|
"@radix-ui/react-popover": "^1.1.15",
|
|
@@ -54,10 +90,10 @@
|
|
|
54
90
|
"js-cookie": "^3.0.5",
|
|
55
91
|
"jwt-decode": "^4.0.0",
|
|
56
92
|
"lucide-react": "^0.562.0",
|
|
57
|
-
"tailwind-merge": "^3.4.0"
|
|
58
|
-
"zustand": "^5.0.9"
|
|
93
|
+
"tailwind-merge": "^3.4.0"
|
|
59
94
|
},
|
|
60
95
|
"devDependencies": {
|
|
96
|
+
"@eslint/js": "^9.39.2",
|
|
61
97
|
"@storybook/addon-links": "^10.1.11",
|
|
62
98
|
"@storybook/react": "^10.1.11",
|
|
63
99
|
"@storybook/react-vite": "^10.1.11",
|
|
@@ -65,62 +101,37 @@
|
|
|
65
101
|
"@tailwindcss/vite": "^4.1.18",
|
|
66
102
|
"@testing-library/dom": "^10.4.1",
|
|
67
103
|
"@testing-library/jest-dom": "^6.9.1",
|
|
68
|
-
"@testing-library/react": "^16.3.
|
|
104
|
+
"@testing-library/react": "^16.3.2",
|
|
69
105
|
"@testing-library/user-event": "^14.6.1",
|
|
70
106
|
"@types/js-cookie": "^3.0.6",
|
|
71
|
-
"@types/react": "^19.2.
|
|
107
|
+
"@types/react": "^19.2.8",
|
|
72
108
|
"@types/react-dom": "^19.2.3",
|
|
73
109
|
"@vitejs/plugin-react": "^5.1.2",
|
|
74
|
-
"@vitest/coverage-v8": "^4.0.
|
|
75
|
-
"@vitest/ui": "^4.0.
|
|
110
|
+
"@vitest/coverage-v8": "^4.0.17",
|
|
111
|
+
"@vitest/ui": "^4.0.17",
|
|
112
|
+
"eslint": "^9.39.2",
|
|
113
|
+
"eslint-config-prettier": "^10.1.8",
|
|
114
|
+
"eslint-plugin-prettier": "^5.5.5",
|
|
115
|
+
"eslint-plugin-react-hooks": "^7.0.1",
|
|
116
|
+
"eslint-plugin-react-refresh": "^0.4.26",
|
|
117
|
+
"eslint-plugin-simple-import-sort": "^12.1.1",
|
|
118
|
+
"eslint-plugin-unused-imports": "^4.3.0",
|
|
119
|
+
"globals": "^17.0.0",
|
|
76
120
|
"jsdom": "^27.4.0",
|
|
77
121
|
"msw": "^2.12.7",
|
|
78
122
|
"node-fetch": "^3.3.2",
|
|
123
|
+
"prettier": "^3.8.0",
|
|
79
124
|
"react": "^19.2.3",
|
|
80
125
|
"react-dom": "^19.2.3",
|
|
81
126
|
"storybook": "^10.1.11",
|
|
82
127
|
"tailwindcss": "^4.1.18",
|
|
83
128
|
"tw-animate-css": "^1.4.0",
|
|
84
|
-
"
|
|
85
|
-
"vite
|
|
86
|
-
"
|
|
129
|
+
"typescript-eslint": "^8.53.0",
|
|
130
|
+
"vite": "^7.3.1",
|
|
131
|
+
"vite-tsconfig-paths": "^6.0.4",
|
|
132
|
+
"vitest": "^4.0.17"
|
|
87
133
|
},
|
|
88
|
-
"
|
|
89
|
-
".": {
|
|
90
|
-
"types": "./dist/index.d.ts",
|
|
91
|
-
"import": "./dist/index.js",
|
|
92
|
-
"require": "./dist/index.cjs",
|
|
93
|
-
"default": "./dist/index.js"
|
|
94
|
-
},
|
|
95
|
-
"./hooks": {
|
|
96
|
-
"types": "./dist/hooks/index.d.ts",
|
|
97
|
-
"import": "./dist/hooks/index.js",
|
|
98
|
-
"require": "./dist/hooks/index.cjs",
|
|
99
|
-
"default": "./dist/hooks/index.js"
|
|
100
|
-
},
|
|
101
|
-
"./providers": {
|
|
102
|
-
"types": "./dist/providers/index.d.ts",
|
|
103
|
-
"import": "./dist/providers/index.js",
|
|
104
|
-
"require": "./dist/providers/index.cjs",
|
|
105
|
-
"default": "./dist/providers/index.js"
|
|
106
|
-
},
|
|
107
|
-
"./components": {
|
|
108
|
-
"types": "./dist/components/index.d.ts",
|
|
109
|
-
"import": "./dist/components/index.js",
|
|
110
|
-
"require": "./dist/components/index.cjs",
|
|
111
|
-
"default": "./dist/components/index.js"
|
|
112
|
-
},
|
|
113
|
-
"./types": {
|
|
114
|
-
"types": "./dist/types/index.d.ts",
|
|
115
|
-
"import": "./dist/types/index.js",
|
|
116
|
-
"require": "./dist/types/index.cjs",
|
|
117
|
-
"default": "./dist/types/index.js"
|
|
118
|
-
},
|
|
119
|
-
"./styles": "./dist/styles/styles.css",
|
|
120
|
-
"./tw-styles": "./dist/styles/tw-styles.css",
|
|
121
|
-
"./package.json": "./package.json"
|
|
122
|
-
},
|
|
123
|
-
"packageManager": "yarn@3.8.7",
|
|
134
|
+
"packageManager": "yarn@4.12.0",
|
|
124
135
|
"volta": {
|
|
125
136
|
"extends": "../../package.json"
|
|
126
137
|
},
|
|
@@ -128,5 +139,9 @@
|
|
|
128
139
|
"workerDirectory": [
|
|
129
140
|
".storybook/public"
|
|
130
141
|
]
|
|
131
|
-
}
|
|
142
|
+
},
|
|
143
|
+
"engines": {
|
|
144
|
+
"node": ">=18.0.0"
|
|
145
|
+
},
|
|
146
|
+
"license": "MIT"
|
|
132
147
|
}
|
package/dist/components.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./components/redirect-to-sign-in.cjs"),t=require("./components/user-button/user-button.cjs"),r=require("./components/user-avatar.cjs"),n=require("./components/sign-in-button.cjs"),i=require("./components/members-list.cjs");exports.RedirectToSignIn=e.RedirectToSignIn;exports.UserButton=t.UserButton;exports.UserAvatar=r.UserAvatar;exports.SignInButton=n.SignInButton;exports.MembersList=i.MembersList;
|
|
2
|
-
//# sourceMappingURL=components.cjs.map
|
package/dist/components.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"components.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/components.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { RedirectToSignIn as t } from "./components/redirect-to-sign-in.js";
|
|
2
|
-
import { UserButton as m } from "./components/user-button/user-button.js";
|
|
3
|
-
import { UserAvatar as f } from "./components/user-avatar.js";
|
|
4
|
-
import { SignInButton as x } from "./components/sign-in-button.js";
|
|
5
|
-
import { MembersList as s } from "./components/members-list.js";
|
|
6
|
-
export {
|
|
7
|
-
s as MembersList,
|
|
8
|
-
t as RedirectToSignIn,
|
|
9
|
-
x as SignInButton,
|
|
10
|
-
f as UserAvatar,
|
|
11
|
-
m as UserButton
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=components.js.map
|
package/dist/components.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"components.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|
package/dist/hooks.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./providers/blimu/blimu.hook.cjs"),e=require("./hooks/use-auth.cjs"),s=require("./hooks/use-client.cjs"),r=require("./hooks/use-store.cjs"),t=require("./hooks/use-members.cjs");exports.useBlimu=u.useBlimu;exports.useAuth=e.useAuth;exports.useUser=e.useUser;exports.useClient=s.useClient;exports.useStore=r.useStore;exports.useMembers=t.useMembers;
|
|
2
|
-
//# sourceMappingURL=hooks.cjs.map
|
package/dist/hooks.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/hooks.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { useBlimu as o } from "./providers/blimu/blimu.hook.js";
|
|
2
|
-
import { useAuth as t, useUser as u } from "./hooks/use-auth.js";
|
|
3
|
-
import { useClient as f } from "./hooks/use-client.js";
|
|
4
|
-
import { useStore as x } from "./hooks/use-store.js";
|
|
5
|
-
import { useMembers as l } from "./hooks/use-members.js";
|
|
6
|
-
export {
|
|
7
|
-
t as useAuth,
|
|
8
|
-
o as useBlimu,
|
|
9
|
-
f as useClient,
|
|
10
|
-
l as useMembers,
|
|
11
|
-
x as useStore,
|
|
12
|
-
u as useUser
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=hooks.js.map
|
package/dist/hooks.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|
package/dist/providers.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./providers/blimu/blimu.hook.cjs"),r=require("./providers/blimu/blimu.provider.cjs"),i=require("./providers/auth/auth.provider.cjs"),o=require("./providers/theme/theme.provider.cjs"),u=require("./providers/theme/theme.hook.cjs");exports.useBlimu=e.useBlimu;exports.BlimuProvider=r.BlimuProvider;exports.AuthProvider=i.AuthProvider;exports.ThemeProvider=o.ThemeProvider;exports.useTheme=u.useTheme;
|
|
2
|
-
//# sourceMappingURL=providers.cjs.map
|
package/dist/providers.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"providers.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/providers.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { useBlimu as o } from "./providers/blimu/blimu.hook.js";
|
|
2
|
-
import { BlimuProvider as t } from "./providers/blimu/blimu.provider.js";
|
|
3
|
-
import { AuthProvider as i } from "./providers/auth/auth.provider.js";
|
|
4
|
-
import { ThemeProvider as u } from "./providers/theme/theme.provider.js";
|
|
5
|
-
import { useTheme as d } from "./providers/theme/theme.hook.js";
|
|
6
|
-
export {
|
|
7
|
-
i as AuthProvider,
|
|
8
|
-
t as BlimuProvider,
|
|
9
|
-
u as ThemeProvider,
|
|
10
|
-
o as useBlimu,
|
|
11
|
-
d as useTheme
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=providers.js.map
|
package/dist/providers.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"providers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|
package/dist/tailwind.plugin.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./node_modules/tailwindcss/dist/plugin.cjs"),l=o(({addBase:r,theme:u})=>{r({":root":{"--blimu-background":"oklch(1 0 0)","--blimu-foreground":"oklch(0.145 0 0)","--blimu-card":"oklch(1 0 0)","--blimu-card-foreground":"oklch(0.145 0 0)","--blimu-popover":"oklch(1 0 0)","--blimu-popover-foreground":"oklch(0.145 0 0)","--blimu-primary":"oklch(0.5 0.2 270)","--blimu-primary-foreground":"oklch(0.985 0 0)","--blimu-secondary":"oklch(0.97 0 0)","--blimu-secondary-foreground":"oklch(0.205 0 0)","--blimu-muted":"oklch(0.97 0 0)","--blimu-muted-foreground":"oklch(0.556 0 0)","--blimu-accent":"oklch(0.97 0 0)","--blimu-accent-foreground":"oklch(0.205 0 0)","--blimu-destructive":"oklch(0.577 0.245 27.325)","--blimu-destructive-foreground":"oklch(0.577 0.245 27.325)","--blimu-border":"oklch(0.922 0 0)","--blimu-input":"oklch(0.922 0 0)","--blimu-ring":"oklch(0.4 0 0)","--blimu-chart-1":"oklch(0.646 0.222 41.116)","--blimu-chart-2":"oklch(0.6 0.118 184.704)","--blimu-chart-3":"oklch(0.398 0.07 227.392)","--blimu-chart-4":"oklch(0.828 0.189 84.429)","--blimu-chart-5":"oklch(0.769 0.188 70.08)","--blimu-radius":"0.625rem","--blimu-sidebar":"oklch(0.985 0 0)","--blimu-sidebar-foreground":"oklch(0.145 0 0)","--blimu-sidebar-primary":"oklch(0.205 0 0)","--blimu-sidebar-primary-foreground":"oklch(0.985 0 0)","--blimu-sidebar-accent":"oklch(0.97 0 0)","--blimu-sidebar-accent-foreground":"oklch(0.205 0 0)","--blimu-sidebar-border":"oklch(0.922 0 0)","--blimu-sidebar-ring":"oklch(0.708 0 0)"},".dark":{"--blimu-background":"oklch(0.145 0 0)","--blimu-foreground":"oklch(0.985 0 0)","--blimu-card":"oklch(0.145 0 0)","--blimu-card-foreground":"oklch(0.985 0 0)","--blimu-popover":"oklch(0.22 0 0)","--blimu-popover-foreground":"oklch(0.985 0 0)","--blimu-primary":"oklch(0.65 0.2 270)","--blimu-primary-foreground":"oklch(0.985 0 0)","--blimu-secondary":"oklch(0.269 0 0)","--blimu-secondary-foreground":"oklch(0.985 0 0)","--blimu-muted":"oklch(0.269 0 0)","--blimu-muted-foreground":"oklch(0.708 0 0)","--blimu-accent":"oklch(0.269 0 0)","--blimu-accent-foreground":"oklch(0.985 0 0)","--blimu-destructive":"oklch(0.396 0.141 25.723)","--blimu-destructive-foreground":"oklch(0.637 0.237 25.331)","--blimu-border":"oklch(0.269 0 0)","--blimu-input":"oklch(0.269 0 0)","--blimu-ring":"oklch(0.7 0 0)","--blimu-chart-1":"oklch(0.488 0.243 264.376)","--blimu-chart-2":"oklch(0.696 0.17 162.48)","--blimu-chart-3":"oklch(0.769 0.188 70.08)","--blimu-chart-4":"oklch(0.627 0.265 303.9)","--blimu-chart-5":"oklch(0.645 0.246 16.439)","--blimu-sidebar":"oklch(0.205 0 0)","--blimu-sidebar-foreground":"oklch(0.985 0 0)","--blimu-sidebar-primary":"oklch(0.488 0.243 264.376)","--blimu-sidebar-primary-foreground":"oklch(0.985 0 0)","--blimu-sidebar-accent":"oklch(0.269 0 0)","--blimu-sidebar-accent-foreground":"oklch(0.985 0 0)","--blimu-sidebar-border":"oklch(0.269 0 0)","--blimu-sidebar-ring":"oklch(0.439 0 0)"}})},{theme:{extend:{colors:{background:"oklch(var(--blimu-background))",foreground:"oklch(var(--blimu-foreground))",card:{DEFAULT:"oklch(var(--blimu-card))",foreground:"oklch(var(--blimu-card-foreground))"},popover:{DEFAULT:"oklch(var(--blimu-popover))",foreground:"oklch(var(--blimu-popover-foreground))"},primary:{DEFAULT:"oklch(var(--blimu-primary))",foreground:"oklch(var(--blimu-primary-foreground))"},secondary:{DEFAULT:"oklch(var(--blimu-secondary))",foreground:"oklch(var(--blimu-secondary-foreground))"},muted:{DEFAULT:"oklch(var(--blimu-muted))",foreground:"oklch(var(--blimu-muted-foreground))"},accent:{DEFAULT:"oklch(var(--blimu-accent))",foreground:"oklch(var(--blimu-accent-foreground))"},destructive:{DEFAULT:"oklch(var(--blimu-destructive))",foreground:"oklch(var(--blimu-destructive-foreground))"},border:"oklch(var(--blimu-border))",input:"oklch(var(--blimu-input))",ring:"oklch(var(--blimu-ring))",blimu:{background:"oklch(var(--blimu-background))",foreground:"oklch(var(--blimu-foreground))",card:{DEFAULT:"oklch(var(--blimu-card))",foreground:"oklch(var(--blimu-card-foreground))"},popover:{DEFAULT:"oklch(var(--blimu-popover))",foreground:"oklch(var(--blimu-popover-foreground))"},primary:{DEFAULT:"oklch(var(--blimu-primary))",foreground:"oklch(var(--blimu-primary-foreground))"},secondary:{DEFAULT:"oklch(var(--blimu-secondary))",foreground:"oklch(var(--blimu-secondary-foreground))"},muted:{DEFAULT:"oklch(var(--blimu-muted))",foreground:"oklch(var(--blimu-muted-foreground))"},accent:{DEFAULT:"oklch(var(--blimu-accent))",foreground:"oklch(var(--blimu-accent-foreground))"},destructive:{DEFAULT:"oklch(var(--blimu-destructive))",foreground:"oklch(var(--blimu-destructive-foreground))"},border:"oklch(var(--blimu-border))",input:"oklch(var(--blimu-input))",ring:"oklch(var(--blimu-ring))",chart:{1:"oklch(var(--blimu-chart-1))",2:"oklch(var(--blimu-chart-2))",3:"oklch(var(--blimu-chart-3))",4:"oklch(var(--blimu-chart-4))",5:"oklch(var(--blimu-chart-5))"},sidebar:{DEFAULT:"oklch(var(--blimu-sidebar))",foreground:"oklch(var(--blimu-sidebar-foreground))",primary:{DEFAULT:"oklch(var(--blimu-sidebar-primary))",foreground:"oklch(var(--blimu-sidebar-primary-foreground))"},accent:{DEFAULT:"oklch(var(--blimu-sidebar-accent))",foreground:"oklch(var(--blimu-sidebar-accent-foreground))"},border:"oklch(var(--blimu-sidebar-border))",ring:"oklch(var(--blimu-sidebar-ring))"}}},borderRadius:{blimu:"var(--blimu-radius)","blimu-sm":"calc(var(--blimu-radius) - 4px)","blimu-md":"calc(var(--blimu-radius) - 2px)","blimu-lg":"var(--blimu-radius)","blimu-xl":"calc(var(--blimu-radius) + 4px)"}}},content:["animate-in","animate-out","fade-in-0","fade-out-0","zoom-in-95","zoom-out-95","slide-in-from-top","slide-in-from-bottom","slide-in-from-left","slide-in-from-right"]});exports.blimuPlugin=l;
|
|
2
|
-
//# sourceMappingURL=tailwind.plugin.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind.plugin.cjs","sources":["../src/tailwind.plugin.ts"],"sourcesContent":["import plugin from 'tailwindcss/plugin';\n\n/**\n * Blimu Tailwind CSS Plugin\n *\n * This plugin extends Tailwind with Blimu-specific design tokens and utilities.\n * It injects CSS variables and extends the theme with the Blimu color palette.\n *\n * @example\n * ```javascript\n * // tailwind.config.js\n * import { blimuPlugin } from '@blimu/react/tailwind';\n *\n * export default {\n * plugins: [blimuPlugin],\n * };\n * ```\n */\nexport const blimuPlugin: ReturnType<typeof plugin> = plugin(\n ({ addBase, theme }) => {\n // Inject CSS variables as base styles\n addBase({\n ':root': {\n '--blimu-background': 'oklch(1 0 0)',\n '--blimu-foreground': 'oklch(0.145 0 0)',\n '--blimu-card': 'oklch(1 0 0)',\n '--blimu-card-foreground': 'oklch(0.145 0 0)',\n '--blimu-popover': 'oklch(1 0 0)',\n '--blimu-popover-foreground': 'oklch(0.145 0 0)',\n '--blimu-primary': 'oklch(0.5 0.2 270)',\n '--blimu-primary-foreground': 'oklch(0.985 0 0)',\n '--blimu-secondary': 'oklch(0.97 0 0)',\n '--blimu-secondary-foreground': 'oklch(0.205 0 0)',\n '--blimu-muted': 'oklch(0.97 0 0)',\n '--blimu-muted-foreground': 'oklch(0.556 0 0)',\n '--blimu-accent': 'oklch(0.97 0 0)',\n '--blimu-accent-foreground': 'oklch(0.205 0 0)',\n '--blimu-destructive': 'oklch(0.577 0.245 27.325)',\n '--blimu-destructive-foreground': 'oklch(0.577 0.245 27.325)',\n '--blimu-border': 'oklch(0.922 0 0)',\n '--blimu-input': 'oklch(0.922 0 0)',\n '--blimu-ring': 'oklch(0.4 0 0)',\n '--blimu-chart-1': 'oklch(0.646 0.222 41.116)',\n '--blimu-chart-2': 'oklch(0.6 0.118 184.704)',\n '--blimu-chart-3': 'oklch(0.398 0.07 227.392)',\n '--blimu-chart-4': 'oklch(0.828 0.189 84.429)',\n '--blimu-chart-5': 'oklch(0.769 0.188 70.08)',\n '--blimu-radius': '0.625rem',\n '--blimu-sidebar': 'oklch(0.985 0 0)',\n '--blimu-sidebar-foreground': 'oklch(0.145 0 0)',\n '--blimu-sidebar-primary': 'oklch(0.205 0 0)',\n '--blimu-sidebar-primary-foreground': 'oklch(0.985 0 0)',\n '--blimu-sidebar-accent': 'oklch(0.97 0 0)',\n '--blimu-sidebar-accent-foreground': 'oklch(0.205 0 0)',\n '--blimu-sidebar-border': 'oklch(0.922 0 0)',\n '--blimu-sidebar-ring': 'oklch(0.708 0 0)',\n },\n '.dark': {\n '--blimu-background': 'oklch(0.145 0 0)',\n '--blimu-foreground': 'oklch(0.985 0 0)',\n '--blimu-card': 'oklch(0.145 0 0)',\n '--blimu-card-foreground': 'oklch(0.985 0 0)',\n '--blimu-popover': 'oklch(0.22 0 0)',\n '--blimu-popover-foreground': 'oklch(0.985 0 0)',\n '--blimu-primary': 'oklch(0.65 0.2 270)',\n '--blimu-primary-foreground': 'oklch(0.985 0 0)',\n '--blimu-secondary': 'oklch(0.269 0 0)',\n '--blimu-secondary-foreground': 'oklch(0.985 0 0)',\n '--blimu-muted': 'oklch(0.269 0 0)',\n '--blimu-muted-foreground': 'oklch(0.708 0 0)',\n '--blimu-accent': 'oklch(0.269 0 0)',\n '--blimu-accent-foreground': 'oklch(0.985 0 0)',\n '--blimu-destructive': 'oklch(0.396 0.141 25.723)',\n '--blimu-destructive-foreground': 'oklch(0.637 0.237 25.331)',\n '--blimu-border': 'oklch(0.269 0 0)',\n '--blimu-input': 'oklch(0.269 0 0)',\n '--blimu-ring': 'oklch(0.7 0 0)',\n '--blimu-chart-1': 'oklch(0.488 0.243 264.376)',\n '--blimu-chart-2': 'oklch(0.696 0.17 162.48)',\n '--blimu-chart-3': 'oklch(0.769 0.188 70.08)',\n '--blimu-chart-4': 'oklch(0.627 0.265 303.9)',\n '--blimu-chart-5': 'oklch(0.645 0.246 16.439)',\n '--blimu-sidebar': 'oklch(0.205 0 0)',\n '--blimu-sidebar-foreground': 'oklch(0.985 0 0)',\n '--blimu-sidebar-primary': 'oklch(0.488 0.243 264.376)',\n '--blimu-sidebar-primary-foreground': 'oklch(0.985 0 0)',\n '--blimu-sidebar-accent': 'oklch(0.269 0 0)',\n '--blimu-sidebar-accent-foreground': 'oklch(0.985 0 0)',\n '--blimu-sidebar-border': 'oklch(0.269 0 0)',\n '--blimu-sidebar-ring': 'oklch(0.439 0 0)',\n },\n });\n },\n {\n // Extend Tailwind with Blimu-specific utilities\n theme: {\n extend: {\n colors: {\n // Top-level aliases matching Shadcn pattern (for compatibility)\n background: 'oklch(var(--blimu-background))',\n foreground: 'oklch(var(--blimu-foreground))',\n card: {\n DEFAULT: 'oklch(var(--blimu-card))',\n foreground: 'oklch(var(--blimu-card-foreground))',\n },\n popover: {\n DEFAULT: 'oklch(var(--blimu-popover))',\n foreground: 'oklch(var(--blimu-popover-foreground))',\n },\n primary: {\n DEFAULT: 'oklch(var(--blimu-primary))',\n foreground: 'oklch(var(--blimu-primary-foreground))',\n },\n secondary: {\n DEFAULT: 'oklch(var(--blimu-secondary))',\n foreground: 'oklch(var(--blimu-secondary-foreground))',\n },\n muted: {\n DEFAULT: 'oklch(var(--blimu-muted))',\n foreground: 'oklch(var(--blimu-muted-foreground))',\n },\n accent: {\n DEFAULT: 'oklch(var(--blimu-accent))',\n foreground: 'oklch(var(--blimu-accent-foreground))',\n },\n destructive: {\n DEFAULT: 'oklch(var(--blimu-destructive))',\n foreground: 'oklch(var(--blimu-destructive-foreground))',\n },\n border: 'oklch(var(--blimu-border))',\n input: 'oklch(var(--blimu-input))',\n ring: 'oklch(var(--blimu-ring))',\n // Scoped Blimu colors (preferred for explicit scoping)\n blimu: {\n background: 'oklch(var(--blimu-background))',\n foreground: 'oklch(var(--blimu-foreground))',\n card: {\n DEFAULT: 'oklch(var(--blimu-card))',\n foreground: 'oklch(var(--blimu-card-foreground))',\n },\n popover: {\n DEFAULT: 'oklch(var(--blimu-popover))',\n foreground: 'oklch(var(--blimu-popover-foreground))',\n },\n primary: {\n DEFAULT: 'oklch(var(--blimu-primary))',\n foreground: 'oklch(var(--blimu-primary-foreground))',\n },\n secondary: {\n DEFAULT: 'oklch(var(--blimu-secondary))',\n foreground: 'oklch(var(--blimu-secondary-foreground))',\n },\n muted: {\n DEFAULT: 'oklch(var(--blimu-muted))',\n foreground: 'oklch(var(--blimu-muted-foreground))',\n },\n accent: {\n DEFAULT: 'oklch(var(--blimu-accent))',\n foreground: 'oklch(var(--blimu-accent-foreground))',\n },\n destructive: {\n DEFAULT: 'oklch(var(--blimu-destructive))',\n foreground: 'oklch(var(--blimu-destructive-foreground))',\n },\n border: 'oklch(var(--blimu-border))',\n input: 'oklch(var(--blimu-input))',\n ring: 'oklch(var(--blimu-ring))',\n chart: {\n 1: 'oklch(var(--blimu-chart-1))',\n 2: 'oklch(var(--blimu-chart-2))',\n 3: 'oklch(var(--blimu-chart-3))',\n 4: 'oklch(var(--blimu-chart-4))',\n 5: 'oklch(var(--blimu-chart-5))',\n },\n sidebar: {\n DEFAULT: 'oklch(var(--blimu-sidebar))',\n foreground: 'oklch(var(--blimu-sidebar-foreground))',\n primary: {\n DEFAULT: 'oklch(var(--blimu-sidebar-primary))',\n foreground: 'oklch(var(--blimu-sidebar-primary-foreground))',\n },\n accent: {\n DEFAULT: 'oklch(var(--blimu-sidebar-accent))',\n foreground: 'oklch(var(--blimu-sidebar-accent-foreground))',\n },\n border: 'oklch(var(--blimu-sidebar-border))',\n ring: 'oklch(var(--blimu-sidebar-ring))',\n },\n },\n },\n borderRadius: {\n blimu: 'var(--blimu-radius)',\n 'blimu-sm': 'calc(var(--blimu-radius) - 4px)',\n 'blimu-md': 'calc(var(--blimu-radius) - 2px)',\n 'blimu-lg': 'var(--blimu-radius)',\n 'blimu-xl': 'calc(var(--blimu-radius) + 4px)',\n },\n },\n },\n // Safelist critical animation classes\n content: [\n 'animate-in',\n 'animate-out',\n 'fade-in-0',\n 'fade-out-0',\n 'zoom-in-95',\n 'zoom-out-95',\n 'slide-in-from-top',\n 'slide-in-from-bottom',\n 'slide-in-from-left',\n 'slide-in-from-right',\n ],\n },\n);\n"],"names":["blimuPlugin","plugin","addBase","theme"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tailwind.plugin.js","sources":["../src/tailwind.plugin.ts"],"sourcesContent":["import plugin from 'tailwindcss/plugin';\n\n/**\n * Blimu Tailwind CSS Plugin\n *\n * This plugin extends Tailwind with Blimu-specific design tokens and utilities.\n * It injects CSS variables and extends the theme with the Blimu color palette.\n *\n * @example\n * ```javascript\n * // tailwind.config.js\n * import { blimuPlugin } from '@blimu/react/tailwind';\n *\n * export default {\n * plugins: [blimuPlugin],\n * };\n * ```\n */\nexport const blimuPlugin: ReturnType<typeof plugin> = plugin(\n ({ addBase, theme }) => {\n // Inject CSS variables as base styles\n addBase({\n ':root': {\n '--blimu-background': 'oklch(1 0 0)',\n '--blimu-foreground': 'oklch(0.145 0 0)',\n '--blimu-card': 'oklch(1 0 0)',\n '--blimu-card-foreground': 'oklch(0.145 0 0)',\n '--blimu-popover': 'oklch(1 0 0)',\n '--blimu-popover-foreground': 'oklch(0.145 0 0)',\n '--blimu-primary': 'oklch(0.5 0.2 270)',\n '--blimu-primary-foreground': 'oklch(0.985 0 0)',\n '--blimu-secondary': 'oklch(0.97 0 0)',\n '--blimu-secondary-foreground': 'oklch(0.205 0 0)',\n '--blimu-muted': 'oklch(0.97 0 0)',\n '--blimu-muted-foreground': 'oklch(0.556 0 0)',\n '--blimu-accent': 'oklch(0.97 0 0)',\n '--blimu-accent-foreground': 'oklch(0.205 0 0)',\n '--blimu-destructive': 'oklch(0.577 0.245 27.325)',\n '--blimu-destructive-foreground': 'oklch(0.577 0.245 27.325)',\n '--blimu-border': 'oklch(0.922 0 0)',\n '--blimu-input': 'oklch(0.922 0 0)',\n '--blimu-ring': 'oklch(0.4 0 0)',\n '--blimu-chart-1': 'oklch(0.646 0.222 41.116)',\n '--blimu-chart-2': 'oklch(0.6 0.118 184.704)',\n '--blimu-chart-3': 'oklch(0.398 0.07 227.392)',\n '--blimu-chart-4': 'oklch(0.828 0.189 84.429)',\n '--blimu-chart-5': 'oklch(0.769 0.188 70.08)',\n '--blimu-radius': '0.625rem',\n '--blimu-sidebar': 'oklch(0.985 0 0)',\n '--blimu-sidebar-foreground': 'oklch(0.145 0 0)',\n '--blimu-sidebar-primary': 'oklch(0.205 0 0)',\n '--blimu-sidebar-primary-foreground': 'oklch(0.985 0 0)',\n '--blimu-sidebar-accent': 'oklch(0.97 0 0)',\n '--blimu-sidebar-accent-foreground': 'oklch(0.205 0 0)',\n '--blimu-sidebar-border': 'oklch(0.922 0 0)',\n '--blimu-sidebar-ring': 'oklch(0.708 0 0)',\n },\n '.dark': {\n '--blimu-background': 'oklch(0.145 0 0)',\n '--blimu-foreground': 'oklch(0.985 0 0)',\n '--blimu-card': 'oklch(0.145 0 0)',\n '--blimu-card-foreground': 'oklch(0.985 0 0)',\n '--blimu-popover': 'oklch(0.22 0 0)',\n '--blimu-popover-foreground': 'oklch(0.985 0 0)',\n '--blimu-primary': 'oklch(0.65 0.2 270)',\n '--blimu-primary-foreground': 'oklch(0.985 0 0)',\n '--blimu-secondary': 'oklch(0.269 0 0)',\n '--blimu-secondary-foreground': 'oklch(0.985 0 0)',\n '--blimu-muted': 'oklch(0.269 0 0)',\n '--blimu-muted-foreground': 'oklch(0.708 0 0)',\n '--blimu-accent': 'oklch(0.269 0 0)',\n '--blimu-accent-foreground': 'oklch(0.985 0 0)',\n '--blimu-destructive': 'oklch(0.396 0.141 25.723)',\n '--blimu-destructive-foreground': 'oklch(0.637 0.237 25.331)',\n '--blimu-border': 'oklch(0.269 0 0)',\n '--blimu-input': 'oklch(0.269 0 0)',\n '--blimu-ring': 'oklch(0.7 0 0)',\n '--blimu-chart-1': 'oklch(0.488 0.243 264.376)',\n '--blimu-chart-2': 'oklch(0.696 0.17 162.48)',\n '--blimu-chart-3': 'oklch(0.769 0.188 70.08)',\n '--blimu-chart-4': 'oklch(0.627 0.265 303.9)',\n '--blimu-chart-5': 'oklch(0.645 0.246 16.439)',\n '--blimu-sidebar': 'oklch(0.205 0 0)',\n '--blimu-sidebar-foreground': 'oklch(0.985 0 0)',\n '--blimu-sidebar-primary': 'oklch(0.488 0.243 264.376)',\n '--blimu-sidebar-primary-foreground': 'oklch(0.985 0 0)',\n '--blimu-sidebar-accent': 'oklch(0.269 0 0)',\n '--blimu-sidebar-accent-foreground': 'oklch(0.985 0 0)',\n '--blimu-sidebar-border': 'oklch(0.269 0 0)',\n '--blimu-sidebar-ring': 'oklch(0.439 0 0)',\n },\n });\n },\n {\n // Extend Tailwind with Blimu-specific utilities\n theme: {\n extend: {\n colors: {\n // Top-level aliases matching Shadcn pattern (for compatibility)\n background: 'oklch(var(--blimu-background))',\n foreground: 'oklch(var(--blimu-foreground))',\n card: {\n DEFAULT: 'oklch(var(--blimu-card))',\n foreground: 'oklch(var(--blimu-card-foreground))',\n },\n popover: {\n DEFAULT: 'oklch(var(--blimu-popover))',\n foreground: 'oklch(var(--blimu-popover-foreground))',\n },\n primary: {\n DEFAULT: 'oklch(var(--blimu-primary))',\n foreground: 'oklch(var(--blimu-primary-foreground))',\n },\n secondary: {\n DEFAULT: 'oklch(var(--blimu-secondary))',\n foreground: 'oklch(var(--blimu-secondary-foreground))',\n },\n muted: {\n DEFAULT: 'oklch(var(--blimu-muted))',\n foreground: 'oklch(var(--blimu-muted-foreground))',\n },\n accent: {\n DEFAULT: 'oklch(var(--blimu-accent))',\n foreground: 'oklch(var(--blimu-accent-foreground))',\n },\n destructive: {\n DEFAULT: 'oklch(var(--blimu-destructive))',\n foreground: 'oklch(var(--blimu-destructive-foreground))',\n },\n border: 'oklch(var(--blimu-border))',\n input: 'oklch(var(--blimu-input))',\n ring: 'oklch(var(--blimu-ring))',\n // Scoped Blimu colors (preferred for explicit scoping)\n blimu: {\n background: 'oklch(var(--blimu-background))',\n foreground: 'oklch(var(--blimu-foreground))',\n card: {\n DEFAULT: 'oklch(var(--blimu-card))',\n foreground: 'oklch(var(--blimu-card-foreground))',\n },\n popover: {\n DEFAULT: 'oklch(var(--blimu-popover))',\n foreground: 'oklch(var(--blimu-popover-foreground))',\n },\n primary: {\n DEFAULT: 'oklch(var(--blimu-primary))',\n foreground: 'oklch(var(--blimu-primary-foreground))',\n },\n secondary: {\n DEFAULT: 'oklch(var(--blimu-secondary))',\n foreground: 'oklch(var(--blimu-secondary-foreground))',\n },\n muted: {\n DEFAULT: 'oklch(var(--blimu-muted))',\n foreground: 'oklch(var(--blimu-muted-foreground))',\n },\n accent: {\n DEFAULT: 'oklch(var(--blimu-accent))',\n foreground: 'oklch(var(--blimu-accent-foreground))',\n },\n destructive: {\n DEFAULT: 'oklch(var(--blimu-destructive))',\n foreground: 'oklch(var(--blimu-destructive-foreground))',\n },\n border: 'oklch(var(--blimu-border))',\n input: 'oklch(var(--blimu-input))',\n ring: 'oklch(var(--blimu-ring))',\n chart: {\n 1: 'oklch(var(--blimu-chart-1))',\n 2: 'oklch(var(--blimu-chart-2))',\n 3: 'oklch(var(--blimu-chart-3))',\n 4: 'oklch(var(--blimu-chart-4))',\n 5: 'oklch(var(--blimu-chart-5))',\n },\n sidebar: {\n DEFAULT: 'oklch(var(--blimu-sidebar))',\n foreground: 'oklch(var(--blimu-sidebar-foreground))',\n primary: {\n DEFAULT: 'oklch(var(--blimu-sidebar-primary))',\n foreground: 'oklch(var(--blimu-sidebar-primary-foreground))',\n },\n accent: {\n DEFAULT: 'oklch(var(--blimu-sidebar-accent))',\n foreground: 'oklch(var(--blimu-sidebar-accent-foreground))',\n },\n border: 'oklch(var(--blimu-sidebar-border))',\n ring: 'oklch(var(--blimu-sidebar-ring))',\n },\n },\n },\n borderRadius: {\n blimu: 'var(--blimu-radius)',\n 'blimu-sm': 'calc(var(--blimu-radius) - 4px)',\n 'blimu-md': 'calc(var(--blimu-radius) - 2px)',\n 'blimu-lg': 'var(--blimu-radius)',\n 'blimu-xl': 'calc(var(--blimu-radius) + 4px)',\n },\n },\n },\n // Safelist critical animation classes\n content: [\n 'animate-in',\n 'animate-out',\n 'fade-in-0',\n 'fade-out-0',\n 'zoom-in-95',\n 'zoom-out-95',\n 'slide-in-from-top',\n 'slide-in-from-bottom',\n 'slide-in-from-left',\n 'slide-in-from-right',\n ],\n },\n);\n"],"names":["blimuPlugin","plugin","addBase","theme"],"mappings":"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"}
|