@n1xyz/wallet-widget 0.0.33-alpha.0 → 0.0.33-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1 @@
1
- import '../../styles/main.css';
2
1
  export declare function N1WalletModal(): import("react/jsx-runtime").JSX.Element | null;
@@ -1,5 +1,4 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import '../../styles/main.css';
3
2
  import { lazy, Suspense, useEffect, useState, useCallback } from 'react';
4
3
  import { useN1WalletContext, useN1WalletInternalContext, } from '../../hooks';
5
4
  import { LoadingFallback } from '../../components/LoadingFallback';
@@ -1 +1 @@
1
- {"version":3,"file":"N1WalletModal.js","sourceRoot":"","sources":["../../../src/features/onboarding-flow/N1WalletModal.tsx"],"names":[],"mappings":"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","sourcesContent":["import '../../styles/main.css';\nimport { lazy, Suspense, useEffect, useState, useCallback, type SyntheticEvent } from 'react';\nimport {\n useN1WalletContext,\n useN1WalletInternalContext,\n} from '../../hooks';\nimport { LoadingFallback } from '../../components/LoadingFallback';\nimport { logger } from '../../utils/logger';\n\n// Lazy load the onboarding flow component\nconst OnboardingFlow = lazy(() =>\n import('./OnboardingFlow').then((mod) => ({\n default: mod.OnboardingFlow,\n }))\n);\n\nlet lastLoggedShowLogin: boolean | null = null;\n\nexport function N1WalletModal() {\n const { showLogin, setShowLogin } = useN1WalletContext();\n\n const {\n setStartClosingLogin,\n startClosingLogin,\n setLoading,\n dynamicWallet,\n dynamicSdkHasLoaded,\n blockModalReopen,\n } = useN1WalletInternalContext();\n\n const [showLoginAnimation, setShowLoginAnimation] = useState(false);\n const suppressDocumentClick = useCallback(() => {\n const handler = (event: MouseEvent | PointerEvent | TouchEvent) => {\n event.preventDefault();\n event.stopPropagation();\n };\n\n document.addEventListener('click', handler, true);\n document.addEventListener('pointerup', handler, true);\n document.addEventListener('touchend', handler, true);\n\n setTimeout(() => {\n document.removeEventListener('click', handler, true);\n document.removeEventListener('pointerup', handler, true);\n document.removeEventListener('touchend', handler, true);\n }, 350);\n }, []);\n\n const blockEventPropagation = useCallback((event: SyntheticEvent | Event) => {\n if ('preventDefault' in event) {\n event.preventDefault();\n }\n if ('stopPropagation' in event) {\n event.stopPropagation();\n }\n const nativeEvent =\n 'nativeEvent' in event\n ? (event.nativeEvent as Event & { stopImmediatePropagation?: () => void })\n : (event as Event & { stopImmediatePropagation?: () => void });\n nativeEvent?.stopImmediatePropagation?.();\n }, []);\n\n // Handle loading state\n useEffect(() => {\n if (dynamicSdkHasLoaded || dynamicWallet) {\n setLoading(false);\n }\n }, [dynamicSdkHasLoaded, dynamicWallet, setLoading]);\n\n // Handle modal visibility\n useEffect(() => {\n if (lastLoggedShowLogin !== showLogin) {\n logger.debug('N1WalletModal: showLogin state changed', { showLogin });\n lastLoggedShowLogin = showLogin;\n }\n\n if (showLogin) {\n setStartClosingLogin(false);\n setShowLoginAnimation(true);\n }\n }, [showLogin, setStartClosingLogin]);\n\n useEffect(() => {\n if (startClosingLogin) {\n logger.debug('N1WalletModal: startClosingLogin → true, beginning close animation');\n setShowLoginAnimation(false);\n const timeout = setTimeout(() => {\n logger.debug('N1WalletModal: closing animation complete, hiding modal');\n setStartClosingLogin(false);\n }, 700);\n return () => clearTimeout(timeout);\n }\n }, [startClosingLogin, setStartClosingLogin]);\n\n // Handle modal close for onboarding mode\n const handleOnboardingFlowClose = () => {\n logger.debug('N1WalletModal: handleOnboardingFlowClose invoked');\n suppressDocumentClick();\n blockModalReopen(1200);\n setShowLogin(false);\n setStartClosingLogin(true);\n };\n\n if (!showLogin && !startClosingLogin) return null;\n\n return (\n <div className=\"n1-wallet-widget dark \">\n {showLogin && (\n <div className=\"fixed inset-0 z-50 flex items-center justify-center w-full h-full\">\n <div\n className={`\n fixed inset-0 w-full h-full bg-black/40 backdrop-blur-sm\n transition-all duration-500 cubic-bezier(0.16, 1, 0.3, 1)\n ${showLoginAnimation ? 'opacity-100' : 'opacity-0'}\n `}\n onClick={(event) => {\n logger.debug('N1WalletModal: backdrop clicked, closing modal');\n blockEventPropagation(event);\n suppressDocumentClick();\n blockModalReopen(1200);\n setShowLogin(false);\n setStartClosingLogin(true);\n }}\n onMouseDown={blockEventPropagation}\n onMouseUp={blockEventPropagation}\n onPointerDown={blockEventPropagation}\n onPointerUp={blockEventPropagation}\n onTouchStart={blockEventPropagation}\n onTouchEnd={blockEventPropagation}\n />\n <div\n className={`\n scale-100 relative z-50 transition-all duration-500 cubic-bezier(0.16, 1, 0.3, 1)\n ${showLoginAnimation ? 'opacity-100 scale-100' : 'opacity-0 scale-95'}\n `}\n >\n <Suspense fallback={<LoadingFallback />}>\n <OnboardingFlow onClose={handleOnboardingFlowClose} />\n </Suspense>\n </div>\n </div>\n )}\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"N1WalletModal.js","sourceRoot":"","sources":["../../../src/features/onboarding-flow/N1WalletModal.tsx"],"names":[],"mappings":"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","sourcesContent":["import { lazy, Suspense, useEffect, useState, useCallback, type SyntheticEvent } from 'react';\nimport {\n useN1WalletContext,\n useN1WalletInternalContext,\n} from '../../hooks';\nimport { LoadingFallback } from '../../components/LoadingFallback';\nimport { logger } from '../../utils/logger';\n\n// Lazy load the onboarding flow component\nconst OnboardingFlow = lazy(() =>\n import('./OnboardingFlow').then((mod) => ({\n default: mod.OnboardingFlow,\n }))\n);\n\nlet lastLoggedShowLogin: boolean | null = null;\n\nexport function N1WalletModal() {\n const { showLogin, setShowLogin } = useN1WalletContext();\n\n const {\n setStartClosingLogin,\n startClosingLogin,\n setLoading,\n dynamicWallet,\n dynamicSdkHasLoaded,\n blockModalReopen,\n } = useN1WalletInternalContext();\n\n const [showLoginAnimation, setShowLoginAnimation] = useState(false);\n const suppressDocumentClick = useCallback(() => {\n const handler = (event: MouseEvent | PointerEvent | TouchEvent) => {\n event.preventDefault();\n event.stopPropagation();\n };\n\n document.addEventListener('click', handler, true);\n document.addEventListener('pointerup', handler, true);\n document.addEventListener('touchend', handler, true);\n\n setTimeout(() => {\n document.removeEventListener('click', handler, true);\n document.removeEventListener('pointerup', handler, true);\n document.removeEventListener('touchend', handler, true);\n }, 350);\n }, []);\n\n const blockEventPropagation = useCallback((event: SyntheticEvent | Event) => {\n if ('preventDefault' in event) {\n event.preventDefault();\n }\n if ('stopPropagation' in event) {\n event.stopPropagation();\n }\n const nativeEvent =\n 'nativeEvent' in event\n ? (event.nativeEvent as Event & { stopImmediatePropagation?: () => void })\n : (event as Event & { stopImmediatePropagation?: () => void });\n nativeEvent?.stopImmediatePropagation?.();\n }, []);\n\n // Handle loading state\n useEffect(() => {\n if (dynamicSdkHasLoaded || dynamicWallet) {\n setLoading(false);\n }\n }, [dynamicSdkHasLoaded, dynamicWallet, setLoading]);\n\n // Handle modal visibility\n useEffect(() => {\n if (lastLoggedShowLogin !== showLogin) {\n logger.debug('N1WalletModal: showLogin state changed', { showLogin });\n lastLoggedShowLogin = showLogin;\n }\n\n if (showLogin) {\n setStartClosingLogin(false);\n setShowLoginAnimation(true);\n }\n }, [showLogin, setStartClosingLogin]);\n\n useEffect(() => {\n if (startClosingLogin) {\n logger.debug('N1WalletModal: startClosingLogin → true, beginning close animation');\n setShowLoginAnimation(false);\n const timeout = setTimeout(() => {\n logger.debug('N1WalletModal: closing animation complete, hiding modal');\n setStartClosingLogin(false);\n }, 700);\n return () => clearTimeout(timeout);\n }\n }, [startClosingLogin, setStartClosingLogin]);\n\n // Handle modal close for onboarding mode\n const handleOnboardingFlowClose = () => {\n logger.debug('N1WalletModal: handleOnboardingFlowClose invoked');\n suppressDocumentClick();\n blockModalReopen(1200);\n setShowLogin(false);\n setStartClosingLogin(true);\n };\n\n if (!showLogin && !startClosingLogin) return null;\n\n return (\n <div className=\"n1-wallet-widget dark \">\n {showLogin && (\n <div className=\"fixed inset-0 z-50 flex items-center justify-center w-full h-full\">\n <div\n className={`\n fixed inset-0 w-full h-full bg-black/40 backdrop-blur-sm\n transition-all duration-500 cubic-bezier(0.16, 1, 0.3, 1)\n ${showLoginAnimation ? 'opacity-100' : 'opacity-0'}\n `}\n onClick={(event) => {\n logger.debug('N1WalletModal: backdrop clicked, closing modal');\n blockEventPropagation(event);\n suppressDocumentClick();\n blockModalReopen(1200);\n setShowLogin(false);\n setStartClosingLogin(true);\n }}\n onMouseDown={blockEventPropagation}\n onMouseUp={blockEventPropagation}\n onPointerDown={blockEventPropagation}\n onPointerUp={blockEventPropagation}\n onTouchStart={blockEventPropagation}\n onTouchEnd={blockEventPropagation}\n />\n <div\n className={`\n scale-100 relative z-50 transition-all duration-500 cubic-bezier(0.16, 1, 0.3, 1)\n ${showLoginAnimation ? 'opacity-100 scale-100' : 'opacity-0 scale-95'}\n `}\n >\n <Suspense fallback={<LoadingFallback />}>\n <OnboardingFlow onClose={handleOnboardingFlowClose} />\n </Suspense>\n </div>\n </div>\n )}\n </div>\n );\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@n1xyz/wallet-widget",
3
- "version": "0.0.33-alpha.0",
3
+ "version": "0.0.33-alpha.1",
4
4
  "description": "React wallet widget component for N1 applications",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -35,6 +35,7 @@
35
35
  "react-dom": ">=18.2.0"
36
36
  },
37
37
  "devDependencies": {
38
+ "@tailwindcss/postcss": "^4.1.17",
38
39
  "@types/node": "22.13.10",
39
40
  "@types/react": "18.2.66",
40
41
  "@types/react-dom": "18.2.22",