@saasbase-io/core-elements 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/dist/assets/icons/account.icon.d.ts +1 -0
  2. package/dist/assets/icons/burger-menu.icon.d.ts +1 -0
  3. package/dist/assets/icons/close.icon.d.ts +1 -0
  4. package/dist/assets/icons/edit.icon.d.ts +1 -0
  5. package/dist/assets/icons/index.d.ts +7 -0
  6. package/dist/assets/icons/location.icon.d.ts +1 -0
  7. package/dist/assets/icons/personal-info.icon.d.ts +1 -0
  8. package/dist/assets/icons/url.icon.d.ts +1 -0
  9. package/dist/components/frameworks/nextjs.d.ts +19 -0
  10. package/dist/components/frameworks/react.d.ts +24 -0
  11. package/dist/components/frameworks/web-components.d.ts +5 -0
  12. package/dist/components/index.d.ts +3 -0
  13. package/dist/components/renderers/index.d.ts +17 -0
  14. package/dist/components/renderers/renderElement.d.ts +4 -0
  15. package/dist/components/renderers/sb-button-renderer.d.ts +31 -0
  16. package/dist/components/renderers/sb-checkbox-renderer.d.ts +26 -0
  17. package/dist/components/renderers/sb-container-renderer.d.ts +23 -0
  18. package/dist/components/renderers/sb-countdown-renderer.d.ts +24 -0
  19. package/dist/components/renderers/sb-divider-renderer.d.ts +15 -0
  20. package/dist/components/renderers/sb-error-renderer.d.ts +15 -0
  21. package/dist/components/renderers/sb-gap-renderer.d.ts +15 -0
  22. package/dist/components/renderers/sb-html-renderer.d.ts +18 -0
  23. package/dist/components/renderers/sb-image-renderer.d.ts +20 -0
  24. package/dist/components/renderers/sb-input-renderer.d.ts +24 -0
  25. package/dist/components/renderers/sb-label-renderer.d.ts +15 -0
  26. package/dist/components/renderers/sb-logo-renderer.d.ts +20 -0
  27. package/dist/components/renderers/sb-otp-renderer.d.ts +19 -0
  28. package/dist/components/renderers/sb-spinner-renderer.d.ts +15 -0
  29. package/dist/components/renderers/sb-text-renderer.d.ts +15 -0
  30. package/dist/components/renderers/sb-watermark-renderer.d.ts +23 -0
  31. package/dist/components/ui/error/index.d.ts +6 -0
  32. package/dist/components/ui/hint/index.d.ts +6 -0
  33. package/dist/components/ui/index.d.ts +5 -0
  34. package/dist/components/ui/linear-loader/index.d.ts +12 -0
  35. package/dist/components/ui/spinner/index.d.ts +14 -0
  36. package/dist/components/ui/watermark/index.d.ts +9 -0
  37. package/dist/components/widgets/index.d.ts +4 -0
  38. package/dist/components/widgets/sb-preview/sb-preview.d.ts +14 -0
  39. package/dist/components/widgets/sb-signin/sb-signin.d.ts +11 -0
  40. package/dist/components/widgets/sb-signup/sb-signup.d.ts +11 -0
  41. package/dist/components/widgets/sb-user-profile/index.d.ts +2 -0
  42. package/dist/components/widgets/sb-user-profile/profile/account-info.d.ts +38 -0
  43. package/dist/components/widgets/sb-user-profile/profile/classes.d.ts +10 -0
  44. package/dist/components/widgets/sb-user-profile/profile/index.d.ts +5 -0
  45. package/dist/components/widgets/sb-user-profile/profile/location-info.d.ts +25 -0
  46. package/dist/components/widgets/sb-user-profile/profile/personal-info.d.ts +30 -0
  47. package/dist/components/widgets/sb-user-profile/profile/profile.d.ts +26 -0
  48. package/dist/components/widgets/sb-user-profile/profile/urls-info.d.ts +24 -0
  49. package/dist/components/widgets/sb-user-profile/sb-user-profile.d.ts +39 -0
  50. package/dist/components/widgets/sb-user-profile/sidebar/classes.d.ts +9 -0
  51. package/dist/components/widgets/sb-user-profile/sidebar/sidebar.d.ts +22 -0
  52. package/dist/components/wrappers/base-element/base-element.d.ts +11 -0
  53. package/dist/components/wrappers/index.d.ts +6 -0
  54. package/dist/components/wrappers/layout/layout.d.ts +56 -0
  55. package/dist/components/wrappers/layout/validation.d.ts +15 -0
  56. package/dist/components/wrappers/sb-authenticated/sb-authenticated.d.ts +16 -0
  57. package/dist/components/wrappers/sb-provider/sb-provider.d.ts +28 -0
  58. package/dist/components/wrappers/sb-signed-in/sb-signed-in.d.ts +9 -0
  59. package/dist/components/wrappers/sb-signed-out/sb-signed-out.d.ts +9 -0
  60. package/dist/constants/classes.d.ts +22 -0
  61. package/dist/constants/enums.d.ts +16 -0
  62. package/dist/constants/index.d.ts +4 -0
  63. package/dist/constants/regex.d.ts +4 -0
  64. package/dist/constants/styles.d.ts +2 -0
  65. package/dist/context/auth-context.d.ts +6 -0
  66. package/dist/context/customization-context.d.ts +4 -0
  67. package/dist/context/env-context.d.ts +4 -0
  68. package/dist/context/index.d.ts +4 -0
  69. package/dist/context/render-spec.d.ts +4 -0
  70. package/dist/funcs/env.d.ts +3 -0
  71. package/dist/funcs/index.d.ts +1 -0
  72. package/dist/index.d.ts +5 -0
  73. package/dist/index.js +6463 -0
  74. package/dist/index.js.map +1 -0
  75. package/dist/index.mjs +23975 -0
  76. package/dist/index.mjs.map +1 -0
  77. package/dist/styles.css +3649 -0
  78. package/dist/types/common/index.d.ts +15 -0
  79. package/dist/types/components/index.d.ts +1 -0
  80. package/dist/types/components/user-profile.d.ts +39 -0
  81. package/dist/types/core/index.d.ts +11 -0
  82. package/dist/types/index.d.ts +6 -0
  83. package/dist/types/layout/index.d.ts +245 -0
  84. package/dist/types/react/index.d.ts +61 -0
  85. package/dist/types/styles/index.d.ts +67 -0
  86. package/dist/utils/components.d.ts +7 -0
  87. package/dist/utils/html-base64.d.ts +1 -0
  88. package/dist/utils/index.d.ts +5 -0
  89. package/dist/utils/styles.d.ts +23 -0
  90. package/dist/utils/svg-base64.d.ts +2 -0
  91. package/dist/utils/tailwind.d.ts +7 -0
  92. package/package.json +74 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../node_modules/@saasbase-io/loginflow-websdk/dist/index.esm.js","../node_modules/@lit/reactive-element/decorators/custom-element.js","../node_modules/@lit/reactive-element/css-tag.js","../node_modules/@lit/reactive-element/reactive-element.js","../node_modules/@lit/reactive-element/decorators/property.js","../node_modules/@lit/reactive-element/decorators/state.js","../node_modules/@lit/reactive-element/decorators/base.js","../node_modules/@lit/reactive-element/decorators/query.js","../src/components/wrappers/base-element/base-element.ts","../node_modules/lit-html/directive.js","../node_modules/lit-html/lit-html.js","../node_modules/lit-html/directive-helpers.js","../node_modules/lit-html/async-directive.js","../node_modules/lit-html/directives/if-defined.js","../node_modules/lit-html/directives/unsafe-html.js","../node_modules/@lit/context/lib/context-request-event.js","../node_modules/@lit/context/lib/create-context.js","../node_modules/@lit/context/lib/controllers/context-consumer.js","../node_modules/@lit/context/lib/value-notifier.js","../node_modules/@lit/context/lib/controllers/context-provider.js","../node_modules/@lit/context/lib/decorators/provide.js","../node_modules/@lit/context/lib/decorators/consume.js","../node_modules/lit-html/directives/ref.js","../node_modules/@revotech-group/revotech-ui-kit/dist/rtg-ui-kit.js","../src/constants/classes.ts","../src/constants/enums.ts","../src/constants/styles.ts","../src/constants/regex.ts","../src/components/wrappers/layout/validation.ts","../src/context/env-context.ts","../src/context/auth-context.ts","../src/context/customization-context.ts","../src/context/render-spec.ts","../src/types/components/user-profile.ts","../node_modules/clsx/dist/clsx.mjs","../node_modules/tailwind-merge/dist/bundle-mjs.mjs","../src/utils/styles.ts","../src/utils/components.ts","../src/utils/svg-base64.ts","../src/utils/html-base64.ts","../src/assets/icons/edit.icon.ts","../src/assets/icons/account.icon.ts","../src/assets/icons/personal-info.icon.ts","../src/assets/icons/location.icon.ts","../src/assets/icons/url.icon.ts","../src/assets/icons/close.icon.ts","../src/assets/icons/burger-menu.icon.ts","../src/components/widgets/sb-user-profile/profile/classes.ts","../src/components/widgets/sb-user-profile/profile/account-info.ts","../src/components/widgets/sb-user-profile/profile/personal-info.ts","../src/components/widgets/sb-user-profile/profile/location-info.ts","../src/components/widgets/sb-user-profile/profile/urls-info.ts","../src/components/widgets/sb-user-profile/profile/profile.ts","../src/components/widgets/sb-user-profile/sidebar/classes.ts","../src/components/widgets/sb-user-profile/sidebar/sidebar.ts","../src/components/widgets/sb-user-profile/sb-user-profile.ts","../src/components/widgets/sb-preview/sb-preview.ts","../src/components/widgets/sb-signin/sb-signin.ts","../src/components/widgets/sb-signup/sb-signup.ts","../src/components/renderers/sb-text-renderer.ts","../node_modules/lit-html/directives/unsafe-svg.js","../src/components/renderers/sb-button-renderer.ts","../src/components/renderers/sb-divider-renderer.ts","../src/components/renderers/sb-checkbox-renderer.ts","../src/components/ui/error/index.ts","../src/components/ui/hint/index.ts","../src/components/ui/watermark/index.ts","../src/components/ui/spinner/index.ts","../src/components/ui/linear-loader/index.ts","../src/components/renderers/sb-otp-renderer.ts","../src/components/renderers/sb-error-renderer.ts","../src/components/renderers/sb-html-renderer.ts","../src/components/renderers/sb-gap-renderer.ts","../src/components/renderers/sb-countdown-renderer.ts","../src/components/renderers/sb-spinner-renderer.ts","../src/components/renderers/renderElement.ts","../src/components/renderers/sb-container-renderer.ts","../src/components/renderers/sb-image-renderer.ts","../src/components/renderers/sb-watermark-renderer.ts","../src/components/renderers/sb-logo-renderer.ts","../src/components/renderers/sb-input-renderer.ts","../src/components/renderers/sb-label-renderer.ts","../src/components/wrappers/layout/layout.ts","../src/components/wrappers/sb-provider/sb-provider.ts","../src/components/wrappers/sb-signed-out/sb-signed-out.ts","../src/components/wrappers/sb-signed-in/sb-signed-in.ts","../src/components/wrappers/sb-authenticated/sb-authenticated.ts","../src/index.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nclass Store {\n constructor() {\n this.data = new Map();\n }\n static get Instance() {\n if (!Store.instance) {\n Store.instance = new Store();\n }\n return Store.instance;\n }\n get(key) {\n return this.data.get(key);\n }\n set(key, value) {\n this.data.set(key, value);\n }\n setConfig(value) {\n this.data.set(\"config\", value);\n }\n getConfig() {\n return this.data.get(\"config\");\n }\n getApiBaseUrl() {\n const domain = this.getConfig().domain;\n if (domain.startsWith(\"localhost\")) {\n return `http://${domain}`;\n }\n return `https://${domain}`;\n }\n remove(key) {\n this.data.delete(key);\n }\n clear() {\n this.data.clear();\n }\n}\nconst store = Store.Instance;\n\nclass LoginflowError extends Error {\n constructor(code, message, details) {\n super(message);\n this.name = 'LoginflowError';\n this.code = code;\n this.details = details;\n }\n}\n\nclass HttpClient {\n constructor() { }\n static get Instance() {\n if (!HttpClient.instance) {\n HttpClient.instance = new HttpClient();\n }\n return HttpClient.instance;\n }\n request(endpoint_1) {\n return __awaiter(this, arguments, void 0, function* (endpoint, options = {}) {\n const config = store.getConfig();\n const url = `${store.getApiBaseUrl()}${endpoint}`;\n const timeout = 50000;\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), timeout);\n try {\n const response = yield fetch(url, Object.assign(Object.assign({}, options), { signal: controller.signal, headers: Object.assign(Object.assign(Object.assign({ 'Content-Type': 'application/json' }, (config.apiKey && { 'Authorization': `Bearer ${config.apiKey}` })), config.headers), options.headers) }));\n clearTimeout(timeoutId);\n if (!response.ok) {\n const errorData = yield response.json().catch(() => ({}));\n throw new LoginflowError(errorData.code || 'API_ERROR', errorData.message || `HTTP ${response.status}: ${response.statusText}`, errorData.details);\n }\n return yield response.json();\n }\n catch (error) {\n clearTimeout(timeoutId);\n if (error instanceof LoginflowError) {\n throw error;\n }\n if (error instanceof Error) {\n if (error.name === 'AbortError') {\n throw new LoginflowError('TIMEOUT', 'Request timeout');\n }\n throw new LoginflowError('NETWORK_ERROR', error.message);\n }\n throw new LoginflowError('UNKNOWN_ERROR', 'An unknown error occurred');\n }\n });\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n post(endpoint, data) {\n return __awaiter(this, void 0, void 0, function* () {\n return this.request(endpoint, {\n credentials: 'include',\n method: 'POST',\n body: data ? JSON.stringify(data) : undefined,\n });\n });\n }\n get(endpoint) {\n return __awaiter(this, void 0, void 0, function* () {\n return this.request(endpoint, {\n credentials: 'include',\n method: 'GET',\n });\n });\n }\n}\n\nclass SessionService {\n constructor() {\n this.AUTH_SESSION_STORAGE_KEY = 'saasbase_auth_session';\n this.refreshTimeoutId = null;\n this.refreshPromise = null;\n }\n static get Instance() {\n if (!SessionService.instance) {\n SessionService.instance = new SessionService();\n }\n return SessionService.instance;\n }\n setCurrentSession(session) {\n localStorage.setItem(this.AUTH_SESSION_STORAGE_KEY, JSON.stringify(session));\n }\n getCurrentSession() {\n const session = this.getStoredSession();\n if (!session) {\n return null;\n }\n if (this.isSessionExpired(session)) {\n this.clearSession();\n return null;\n }\n // Check if we should refresh proactively (when 80% of token lifetime has passed)\n if (this.shouldRefreshToken(session)) {\n this.triggerBackgroundRefresh(session);\n }\n return session;\n }\n isAuthenticated() {\n return this.getCurrentSession() !== null;\n }\n getAuthenticatedUser() {\n const session = this.getCurrentSession();\n if (!session || !session.id_token) {\n return null;\n }\n const decodedToken = this.decodeJWT(session.id_token);\n if (!decodedToken) {\n return null;\n }\n return decodedToken;\n }\n cleanup() {\n // Call this method when unmounting/destroying the SDK instance\n if (this.refreshTimeoutId) {\n clearTimeout(this.refreshTimeoutId);\n this.refreshTimeoutId = null;\n }\n // if (this.redirectTimeoutId) {\n // clearTimeout(this.redirectTimeoutId);\n // this.redirectTimeoutId = null;\n // }\n this.refreshPromise = null;\n }\n clearSession() {\n localStorage.removeItem(this.AUTH_SESSION_STORAGE_KEY);\n }\n isSessionExpired(session) {\n if (!session || !session.expires_at) {\n return true;\n }\n return Date.now() >= session.expires_at;\n }\n cleanExpiredSession() {\n const session = this.getStoredSession();\n if (session && this.isSessionExpired(session)) {\n this.clearSession();\n }\n }\n getStoredSession() {\n const storedSession = localStorage.getItem(this.AUTH_SESSION_STORAGE_KEY);\n if (!storedSession) {\n return null;\n }\n try {\n return JSON.parse(storedSession);\n }\n catch (_a) {\n // Invalid JSON, clean it up\n this.clearSession();\n return null;\n }\n }\n decodeJWT(token) {\n try {\n const base64Url = token.split('.')[1];\n const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');\n const jsonPayload = decodeURIComponent(atob(base64)\n .split('')\n .map(c => '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2))\n .join(''));\n return JSON.parse(jsonPayload);\n }\n catch (_a) {\n return null;\n }\n }\n shouldRefreshToken(session) {\n if (!session || !session.expires_at || !session.refresh_token) {\n return false;\n }\n const now = Date.now();\n const expiresAt = session.expires_at;\n const expiresIn = session.expires_in || 3600;\n // Refresh when 80% of the token lifetime has passed\n const refreshThreshold = now + (expiresIn * 1000 * 0.2);\n return expiresAt <= refreshThreshold;\n }\n scheduleTokenRefresh() {\n // Clear any existing timeout\n if (this.refreshTimeoutId) {\n clearTimeout(this.refreshTimeoutId);\n this.refreshTimeoutId = null;\n }\n const session = this.getCurrentSession();\n if (!session || !session.expires_at || !session.refresh_token) {\n return;\n }\n const now = Date.now();\n const expiresAt = session.expires_at;\n const expiresIn = session.expires_in || 3600;\n // Schedule refresh at 80% of token lifetime\n const timeUntilRefresh = (expiresAt - now) - (expiresIn * 1000 * 0.2);\n if (timeUntilRefresh > 0) {\n this.refreshTimeoutId = setTimeout(() => {\n this.triggerBackgroundRefresh(session);\n }, timeUntilRefresh);\n }\n }\n triggerBackgroundRefresh(session) {\n // Avoid multiple concurrent refresh attempts\n if (this.refreshPromise) {\n return;\n }\n // Don't refresh if no refresh token\n if (!session.refresh_token) {\n return;\n }\n this.refreshPromise = this.refreshTokens(session.refresh_token)\n .then((newSession) => {\n if (newSession) {\n // Store the new tokens\n this.setCurrentSession(newSession);\n // Schedule the next refresh\n this.scheduleTokenRefresh();\n }\n return newSession;\n })\n .catch((error) => {\n console.error('Background token refresh failed:', error);\n return null;\n })\n .finally(() => {\n this.refreshPromise = null;\n });\n }\n refreshTokens(refreshToken) {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n const response = yield HttpClient.Instance.post('/login-flow/v1/refresh', {\n refresh_token: refreshToken\n });\n return {\n id_token: response.id_token,\n access_token: response.access_token,\n refresh_token: response.refresh_token,\n expires_in: response.expires_in,\n expires_at: Date.now() + (response.expires_in * 1000)\n };\n }\n catch (error) {\n if (error instanceof LoginflowError) {\n console.error('Token refresh failed:', error.message, error.details);\n }\n else {\n console.error('Token refresh failed:', error);\n }\n // Clear the session if refresh fails\n this.clearSession();\n return null;\n }\n });\n }\n}\n\n/**\n * Centralized manager for flow state in sessionStorage.\n * Handles reading, writing, validation, and expiration of flow state.\n */\nclass FlowStateManager {\n constructor(storage = sessionStorage) {\n this.storage = storage;\n this.FLOW_STATE_KEY = 'saasbase_loginflow_state';\n this.FLOW_EXPIRY_MS = 9 * 60 * 1000; // 9 minutes\n }\n /**\n * Get the current flow state from storage.\n * Returns null if state doesn't exist or has expired.\n */\n getFlowState() {\n const storedFlow = this.storage.getItem(this.FLOW_STATE_KEY);\n if (!storedFlow) {\n return null;\n }\n try {\n const flowState = JSON.parse(storedFlow);\n if (this.isExpired(flowState)) {\n this.clearFlowState();\n return null;\n }\n return flowState;\n }\n catch (_a) {\n this.clearFlowState();\n return null;\n }\n }\n /**\n * Save flow state to storage.\n */\n saveFlowState(flowType, flow_id, response) {\n const now = Date.now();\n const existingState = this.getFlowState();\n const flowState = {\n flowType,\n flow_id,\n state: response.state,\n startedAt: (existingState === null || existingState === void 0 ? void 0 : existingState.startedAt) || now,\n lastUpdatedAt: now,\n render_spec: response.render_spec\n };\n this.storage.setItem(this.FLOW_STATE_KEY, JSON.stringify(flowState));\n }\n /**\n * Restore flow state from browser history state.\n * This is used when navigating back/forward to restore the flow state from history.\n * The restored state allows the SDK to resume the existing backend session.\n */\n restoreFromHistory(historyState) {\n const flowState = {\n flowType: historyState.flowType,\n flow_id: historyState.flow_id,\n state: historyState.state,\n startedAt: historyState.timestamp,\n lastUpdatedAt: historyState.timestamp,\n render_spec: undefined // Will be fetched during resume\n };\n this.storage.setItem(this.FLOW_STATE_KEY, JSON.stringify(flowState));\n }\n /**\n * Clear flow state from storage.\n */\n clearFlowState() {\n this.storage.removeItem(this.FLOW_STATE_KEY);\n }\n /**\n * Check if a flow state has expired.\n */\n isExpired(flowState) {\n const now = Date.now();\n return now - flowState.lastUpdatedAt > this.FLOW_EXPIRY_MS;\n }\n /**\n * Get the expiry time in milliseconds.\n */\n get expiryMs() {\n return this.FLOW_EXPIRY_MS;\n }\n}\n\n/**\n * Utility for detecting flow type based on URL path.\n */\nclass FlowTypeDetector {\n /**\n * Detect flow type from current URL path.\n */\n static detect(config, location = window.location) {\n const path = location.pathname.toLowerCase();\n if (path.includes(config.signinUrl)) {\n return 'signin';\n }\n if (path.includes(config.signupUrl)) {\n return 'signup';\n }\n return 'custom';\n }\n}\n\n/**\n * Simple event bus for flow-related events.\n * Enables loose coupling between Loginflow and NavigationManager.\n */\nclass FlowEventBus {\n constructor() {\n this.listeners = new Map();\n }\n /**\n * Subscribe to a flow event.\n */\n on(event, handler) {\n if (!this.listeners.has(event)) {\n this.listeners.set(event, new Set());\n }\n this.listeners.get(event).add(handler);\n }\n /**\n * Unsubscribe from a flow event.\n */\n off(event, handler) {\n var _a;\n (_a = this.listeners.get(event)) === null || _a === void 0 ? void 0 : _a.delete(handler);\n }\n /**\n * Emit a flow event to all subscribers.\n */\n emit(event, data) {\n const handlers = this.listeners.get(event);\n if (handlers) {\n handlers.forEach(handler => {\n try {\n handler(data);\n }\n catch (error) {\n console.error(`[FlowEventBus] Error in event handler for ${event}:`, error);\n }\n });\n }\n }\n /**\n * Remove all listeners.\n */\n clear() {\n this.listeners.clear();\n }\n /**\n * Remove all listeners for a specific event.\n */\n clearEvent(event) {\n this.listeners.delete(event);\n }\n}\n\n/**\n * Browser implementation using Performance Navigation Timing API.\n */\nclass BrowserNavigationTypeDetector {\n getNavigationType() {\n // Use the modern Navigation Timing API Level 2\n const navEntries = performance.getEntriesByType('navigation');\n if (navEntries.length > 0) {\n return navEntries[0].type;\n }\n // Fallback to deprecated API for older browsers\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const legacyNav = performance.navigation;\n if (legacyNav) {\n // TYPE_NAVIGATE = 0, TYPE_RELOAD = 1, TYPE_BACK_FORWARD = 2\n switch (legacyNav.type) {\n case 1:\n return 'reload';\n case 2:\n return 'back_forward';\n default:\n return 'navigate';\n }\n }\n // Default fallback if neither API is available\n return 'navigate';\n }\n}\n\nclass Loginflow {\n constructor(flowId, flowEventBus, location = window.location, flowStateManager, navigationTypeDetector) {\n this.httpClient = HttpClient.Instance;\n this.redirectTimeoutId = null;\n // Event handlers map for client-side events\n this.eventHandlers = new Map([\n ['switch_to_signin', this.handleSwitchToSignin.bind(this)],\n ['switch_to_signup', this.handleSwitchToSignup.bind(this)],\n ]);\n const config = store.getConfig();\n if (!config.domain) {\n throw new LoginflowError('CONFIG_ERROR', 'Domain is required');\n }\n if (!config.clientId) {\n throw new LoginflowError('CONFIG_ERROR', 'Client ID is required');\n }\n if (!config.clientSecret) {\n throw new LoginflowError('CONFIG_ERROR', 'Client Secret is required');\n }\n this.flowId = flowId;\n this.location = location;\n this.flowStateManager = flowStateManager || new FlowStateManager();\n this.flowEventBus = flowEventBus || new FlowEventBus();\n this.navigationTypeDetector = navigationTypeDetector || new BrowserNavigationTypeDetector();\n // Check and clean expired auth on initialization\n SessionService.Instance.cleanExpiredSession();\n // Schedule refresh for existing valid tokens\n SessionService.Instance.scheduleTokenRefresh();\n }\n static init(flowId, flowEventBus, location, flowStateManager, navigationTypeDetector) {\n return __awaiter(this, void 0, void 0, function* () {\n // Create SDK instance\n const sdk = new Loginflow(flowId, flowEventBus, location, flowStateManager, navigationTypeDetector);\n // Initialize flow automatically\n const flowResponse = yield sdk.initializeFlowInternal();\n return {\n sdk,\n flowType: flowResponse.flowType,\n isResumed: flowResponse.isResumed,\n state: flowResponse.state,\n render_spec: flowResponse.render_spec,\n auth_result: flowResponse.auth_result,\n };\n });\n }\n /**\n * Start a new flow with the server.\n */\n startFlow(flowType, request) {\n return __awaiter(this, void 0, void 0, function* () {\n if (!request.client_id) {\n throw new LoginflowError('VALIDATION_ERROR', 'Client ID is required');\n }\n const endpoint = `/login-flow/v1/${flowType}/start`;\n return this.executeFlowRequest(() => this.httpClient.post(endpoint, request), 'START_FLOW_ERROR', 'Failed to start flow');\n });\n }\n /**\n * Resume an existing flow with the server.\n */\n resumeFlow(flowType) {\n return __awaiter(this, void 0, void 0, function* () {\n const endpoint = `/login-flow/v1/${flowType}/resume`;\n return this.executeFlowRequest(() => this.httpClient.post(endpoint), 'RESUME_FLOW_ERROR', 'Failed to resume flow');\n });\n }\n /**\n * Process an event in the flow.\n */\n processEvent(request) {\n return __awaiter(this, void 0, void 0, function* () {\n if (!request.event) {\n throw new LoginflowError('VALIDATION_ERROR', 'Event type is required');\n }\n // Check for client-side event handlers\n const handler = this.eventHandlers.get(request.event);\n if (handler) {\n return yield handler();\n }\n // Server-side event processing\n return yield this.processServerEvent(request);\n });\n }\n /**\n * Execute a flow request with consistent error handling and side effects.\n */\n executeFlowRequest(operation, errorCode, errorMessage) {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n const response = yield operation();\n this.processAuthResult(response.auth_result);\n if (response.redirection) {\n this.redirect(response.redirection);\n }\n return response;\n }\n catch (error) {\n if (error instanceof LoginflowError) {\n throw error;\n }\n throw new LoginflowError(errorCode, errorMessage, error instanceof Error ? { originalError: error.message, stack: error.stack } : error);\n }\n });\n }\n /**\n * Process server-side events.\n */\n processServerEvent(request) {\n return __awaiter(this, void 0, void 0, function* () {\n // Check if flow state has expired (9 minutes timeout)\n let flowState = this.flowStateManager.getFlowState();\n if (!flowState) {\n // Flow state expired - restart the flow to get a fresh server session\n console.warn('Flow state expired, restarting flow before processing event');\n yield this.initializeFlowInternal();\n // Get the newly created flow state\n flowState = this.flowStateManager.getFlowState();\n if (!flowState) {\n throw new LoginflowError('FLOW_RESTART_ERROR', 'Failed to restart flow - no flow state after initialization');\n }\n }\n const previousState = flowState.state;\n const endpoint = `/login-flow/v1/${flowState.flowType}/events`;\n const response = yield this.executeFlowRequest(() => this.httpClient.post(endpoint, request), 'PROCESS_EVENT_ERROR', 'Failed to process event');\n // Only save flow state if authentication is not complete\n // If auth_result exists, processAuthResult already cleared the state\n if (!response.auth_result) {\n this.flowStateManager.saveFlowState(flowState.flowType, flowState.flow_id, response);\n // Emit event to notify listeners (e.g., NavigationManager)\n const updatedFlowState = this.flowStateManager.getFlowState();\n if (updatedFlowState) {\n const isNewStep = previousState !== response.state;\n this.flowEventBus.emit('flow:updated', {\n flowState: updatedFlowState,\n isNewStep\n });\n }\n }\n return response;\n });\n }\n /**\n * Handle successful authentication.\n */\n processAuthResult(authResult) {\n if (authResult) {\n const authData = {\n id_token: authResult.id_token,\n access_token: authResult.access_token,\n refresh_token: authResult.refresh_token,\n expires_in: authResult.expires_in,\n expires_at: Date.now() + (authResult.expires_in * 1000)\n };\n SessionService.Instance.setCurrentSession(authData);\n // Schedule the next refresh\n SessionService.Instance.scheduleTokenRefresh();\n // Clear flow states when authentication is successful\n this.flowStateManager.clearFlowState();\n // Reload the page to redirect to the configured home page\n this.reloadPage();\n }\n }\n /**\n * Initialize or resume the flow.\n */\n initializeFlowInternal() {\n return __awaiter(this, void 0, void 0, function* () {\n // Determine current flow type (from config or auto-detect)\n const config = store.getConfig();\n const currentFlowType = FlowTypeDetector.detect(config, this.location);\n this.validateFlowType(currentFlowType);\n // Check for existing flow state\n const existingFlowState = this.flowStateManager.getFlowState();\n if (this.shouldResumeFlow(existingFlowState, currentFlowType)) {\n return yield this.resumeExistingFlow(existingFlowState, currentFlowType);\n }\n return yield this.startNewFlow(currentFlowType);\n });\n }\n /**\n * Validate flow type requirements.\n */\n validateFlowType(flowType) {\n if (flowType === 'custom' && !this.flowId) {\n throw new LoginflowError('FLOW_ID_ERROR', 'Flow ID is required for custom flows');\n }\n }\n /**\n * Check if we should resume an existing flow.\n */\n shouldResumeFlow(existingState, currentFlowType) {\n if (!existingState) {\n return false;\n }\n // Check for explicit resume query parameter from backend redirects\n const urlParams = new URLSearchParams(this.location.search);\n const explicitResume = urlParams.get('resume') === 'true';\n // Check navigation type - only resume for reload or back_forward\n // For 'navigate' (fresh link/URL entry), start a new flow unless explicitly told to resume\n const navType = this.navigationTypeDetector.getNavigationType();\n if (navType === 'navigate' && !explicitResume) {\n this.flowStateManager.clearFlowState();\n console.log(`Fresh navigation detected (type: ${navType}), starting new flow`);\n return false;\n }\n // Check if flow type has changed\n if (existingState.flowType !== currentFlowType) {\n this.flowStateManager.clearFlowState();\n console.log(`Flow type changed from ${existingState.flowType} to ${currentFlowType}, starting new flow, flow_id: ${this.flowId}`);\n return false;\n }\n // Check if flow_id has changed for custom flows\n if (currentFlowType === 'custom' && existingState.flow_id !== this.flowId) {\n this.flowStateManager.clearFlowState();\n console.log(`Custom flow ID changed, starting new flow, flow_id: ${this.flowId}`);\n return false;\n }\n const resumeReason = explicitResume ? 'explicit resume=true' : `navigation type: ${navType}`;\n console.log(`Resuming existing flow (${resumeReason})`);\n return true;\n }\n /**\n * Resume an existing flow.\n */\n resumeExistingFlow(existingState, flowType) {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n const response = yield this.resumeFlow(flowType);\n // Only save flow state if authentication is not complete\n if (!response.auth_result) {\n this.flowStateManager.saveFlowState(flowType, existingState.flow_id, response);\n // Emit event to notify listeners\n const flowState = this.flowStateManager.getFlowState();\n if (flowState) {\n this.flowEventBus.emit('flow:resumed', { flowState });\n }\n }\n return {\n flowType,\n isResumed: true,\n state: response.state,\n render_spec: response.render_spec,\n auth_result: response.auth_result,\n };\n }\n catch (error) {\n // If resume fails, clear the state and start fresh\n this.flowStateManager.clearFlowState();\n console.warn('Failed to resume flow, starting fresh:', error);\n return yield this.startNewFlow(flowType);\n }\n });\n }\n /**\n * Start a new flow.\n */\n startNewFlow(flowType) {\n return __awaiter(this, void 0, void 0, function* () {\n const config = store.getConfig();\n // Build start flow request\n const startFlowRequest = {\n client_id: config.clientId,\n client_secret: config.clientSecret,\n origin_url: this.location.href,\n signin_url: config.signinUrl,\n signup_url: config.signupUrl,\n locale: config.locale || 'en',\n flow_id: this.determineFlowId(flowType)\n };\n const response = yield this.startFlow(flowType, startFlowRequest);\n // Only save flow state if authentication is not complete\n if (!response.auth_result) {\n this.flowStateManager.saveFlowState(flowType, startFlowRequest.flow_id, response);\n // Emit event to notify listeners\n const flowState = this.flowStateManager.getFlowState();\n if (flowState) {\n this.flowEventBus.emit('flow:started', { flowState });\n }\n }\n return {\n flowType,\n isResumed: false,\n state: response.state,\n render_spec: response.render_spec,\n auth_result: response.auth_result,\n };\n });\n }\n /**\n * Determine the flow_id based on flow type.\n */\n determineFlowId(flowType) {\n switch (flowType) {\n case 'signin':\n return this.flowId || 'signin-flow';\n case 'signup':\n return this.flowId || 'signup-flow';\n case 'custom':\n if (!this.flowId) {\n throw new LoginflowError('FLOW_ID_ERROR', 'Flow ID is required for custom flows');\n }\n return this.flowId;\n }\n }\n /**\n * Handle switch to signin event.\n */\n handleSwitchToSignin() {\n return __awaiter(this, void 0, void 0, function* () {\n const config = store.getConfig();\n this.redirect({ url: config.signinUrl, redirect_delay: 0 });\n return { state: 'End' };\n });\n }\n /**\n * Handle switch to signup event.\n */\n handleSwitchToSignup() {\n return __awaiter(this, void 0, void 0, function* () {\n const config = store.getConfig();\n this.redirect({ url: config.signupUrl, redirect_delay: 0 });\n return { state: 'End' };\n });\n }\n /**\n * Redirect to a URL.\n */\n redirect(rd) {\n if (!rd.url) {\n return;\n }\n // Clear any existing redirect timeout before scheduling a new one\n // This handles cases where navigation (like browser back) cancels a pending redirect\n if (this.redirectTimeoutId !== null) {\n console.log('Clearing existing redirect timeout before scheduling new redirect to:', rd.url);\n clearTimeout(this.redirectTimeoutId);\n this.redirectTimeoutId = null;\n }\n // Redirect URL inside a timeout to ensure the page is rendered.\n // It guarantees that all code in the current execution context finishes first,\n // even though the delay is \"zero\". It's not about time—it's about execution order in the event loop.\n this.redirectTimeoutId = setTimeout(() => {\n this.location.href = rd.url;\n }, rd.redirect_delay * 1000);\n }\n /**\n * Reload the current page.\n */\n reloadPage() {\n // Defer reload to ensure sessionStorage operations complete\n // This guarantees that all code in the current execution context finishes first\n setTimeout(() => {\n this.location.reload();\n }, 0);\n }\n /**\n * Get the event bus for external listeners.\n */\n getEventBus() {\n return this.flowEventBus;\n }\n /**\n * Cleanup resources.\n */\n cleanup() {\n // Cancel any pending redirect\n if (this.redirectTimeoutId) {\n clearTimeout(this.redirectTimeoutId);\n this.redirectTimeoutId = null;\n }\n // Clear event bus\n this.flowEventBus.clear();\n }\n}\n\n/**\n * Utility class for debouncing function calls.\n * Ensures a function is only called after a specified delay has passed since the last invocation.\n */\nclass Debouncer {\n constructor(delayMs) {\n this.delayMs = delayMs;\n this.timerId = null;\n }\n /**\n * Debounce a function call.\n * If called again before delay expires, the previous call is cancelled.\n */\n debounce(fn) {\n if (this.timerId) {\n clearTimeout(this.timerId);\n }\n this.timerId = setTimeout(() => {\n fn();\n this.timerId = null;\n }, this.delayMs);\n }\n /**\n * Cancel any pending debounced call.\n */\n cancel() {\n if (this.timerId) {\n clearTimeout(this.timerId);\n this.timerId = null;\n }\n }\n /**\n * Check if a debounced call is pending.\n */\n isPending() {\n return this.timerId !== null;\n }\n}\n\n/**\n * Adapter interfaces for browser APIs to enable dependency injection and testing.\n */\n/**\n * Default browser implementation of HistoryAdapter.\n */\nclass BrowserHistoryAdapter {\n pushState(state, title, url) {\n history.pushState(state, title, url);\n }\n replaceState(state, title, url) {\n history.replaceState(state, title, url);\n }\n get state() {\n return history.state;\n }\n}\n\n/**\n * Manages browser history integration for the authentication flow.\n * Listens to flow events via event bus and updates browser history accordingly.\n * Handles popstate events (browser back/forward) and triggers flow restart when needed.\n */\nclass NavigationManager {\n constructor(flowEventBus, onFlowRestartNeeded, skipHistoryTracking = false, location = window.location, flowStateManager, historyAdapter) {\n this.popstateListener = null;\n this.pageshowListener = null;\n this.isProcessing = false;\n this.isHandlingNavigationEvent = false;\n this.onFlowRestartNeeded = null;\n this.onFlowRestartNeeded = onFlowRestartNeeded;\n this.skipHistoryTracking = skipHistoryTracking;\n this.debouncer = new Debouncer(200);\n this.location = location;\n this.flowStateManager = flowStateManager || new FlowStateManager();\n this.historyAdapter = historyAdapter || new BrowserHistoryAdapter();\n // Subscribe to flow events\n this.subscribeToFlowEvents(flowEventBus);\n // Initialize popstate listener\n this.initializeListener();\n }\n /**\n * Subscribe to flow events from the event bus.\n */\n subscribeToFlowEvents(flowEventBus) {\n flowEventBus.on('flow:started', this.handleFlowStart.bind(this));\n flowEventBus.on('flow:updated', this.handleFlowUpdate.bind(this));\n flowEventBus.on('flow:resumed', this.handleFlowResume.bind(this));\n }\n /**\n * Initialize the popstate and pageshow listeners for browser navigation.\n */\n initializeListener() {\n this.popstateListener = (event) => {\n console.log('[NavigationManager] popstate event received');\n // Debounce rapid back/forward clicks\n this.debouncer.debounce(() => {\n console.log('[NavigationManager] Debounce timeout fired, handling popstate');\n void this.handlePopState(event);\n });\n };\n // Handle bfcache (back/forward cache) restoration\n // When a page is restored from bfcache, popstate might not fire reliably\n this.pageshowListener = (event) => {\n if (event.persisted) {\n console.log('[NavigationManager] Page restored from bfcache');\n // Debounce to handle potential race conditions\n this.debouncer.debounce(() => {\n console.log('[NavigationManager] Handling bfcache restoration');\n void this.handleBfcacheRestoration();\n });\n }\n };\n window.addEventListener('popstate', this.popstateListener);\n window.addEventListener('pageshow', this.pageshowListener);\n }\n /**\n * Handle browser back/forward navigation.\n */\n handlePopState(event) {\n return __awaiter(this, void 0, void 0, function* () {\n // Prevent concurrent processing\n if (this.isProcessing) {\n console.log('[NavigationManager] Already processing popstate, skipping');\n return;\n }\n console.log('[NavigationManager] Starting popstate processing');\n this.isProcessing = true;\n this.isHandlingNavigationEvent = true;\n try {\n const historyState = event.state;\n const sessionFlowState = this.flowStateManager.getFlowState();\n const config = store.getConfig();\n const urlFlowType = FlowTypeDetector.detect(config, this.location);\n // Restore history state to session storage BEFORE checking if restart is needed\n // This allows the SDK to resume the existing backend session using the flow-type-specific cookie\n if (historyState) {\n this.restoreHistoryStateToSession(historyState);\n }\n if (this.shouldRestartFlow(historyState, sessionFlowState, urlFlowType)) {\n yield this.triggerFlowRestart();\n return;\n }\n // Valid state - restored successfully\n console.log('[NavigationManager] Valid state restored from history');\n }\n finally {\n this.isProcessing = false;\n this.isHandlingNavigationEvent = false;\n }\n });\n }\n /**\n * Handle page restoration from bfcache (back/forward cache).\n * When a page is restored from bfcache, the popstate event might not fire reliably,\n * so we use the pageshow event with event.persisted=true to detect this case.\n */\n handleBfcacheRestoration() {\n return __awaiter(this, void 0, void 0, function* () {\n // Prevent concurrent processing\n if (this.isProcessing) {\n console.log('[NavigationManager] Already processing bfcache restoration, skipping');\n return;\n }\n console.log('[NavigationManager] Starting bfcache restoration processing');\n this.isProcessing = true;\n this.isHandlingNavigationEvent = true;\n try {\n // Get current history state (not from event, since pageshow doesn't provide it)\n const historyState = this.historyAdapter.state;\n const sessionFlowState = this.flowStateManager.getFlowState();\n const config = store.getConfig();\n const urlFlowType = FlowTypeDetector.detect(config, this.location);\n // Restore history state to session storage BEFORE checking if restart is needed\n if (historyState) {\n this.restoreHistoryStateToSession(historyState);\n }\n if (this.shouldRestartFlow(historyState, sessionFlowState, urlFlowType)) {\n yield this.triggerFlowRestart();\n return;\n }\n // Valid state - restored successfully\n console.log('[NavigationManager] Valid state restored from bfcache');\n }\n finally {\n this.isProcessing = false;\n this.isHandlingNavigationEvent = false;\n }\n });\n }\n /**\n * Restore history state to session storage.\n * This is crucial for cookie preservation: when navigating back, we restore the old flow state\n * so that Loginflow.initializeFlowInternal() can resume using the flow-type-specific cookie.\n */\n restoreHistoryStateToSession(historyState) {\n console.log('[NavigationManager] Restoring history state to session storage:', historyState);\n this.flowStateManager.restoreFromHistory(historyState);\n }\n /**\n * Determine if the flow should be restarted based on navigation state.\n * Note: We've already restored historyState to session storage at this point.\n */\n shouldRestartFlow(historyState, _sessionState, urlFlowType) {\n // Check for flow type mismatch between URL and history\n if (historyState && historyState.flowType !== urlFlowType) {\n console.log('[NavigationManager] Flow type changed via navigation:', historyState.flowType, '→', urlFlowType);\n // Clear the restored state since URL doesn't match\n this.flowStateManager.clearFlowState();\n return true;\n }\n // No history state - initial navigation\n if (!historyState) {\n console.log('[NavigationManager] No history state, skipping');\n return false;\n }\n // Check if session has expired based on timestamp\n const now = Date.now();\n if (now - historyState.timestamp > this.flowStateManager.expiryMs) {\n console.log('[NavigationManager] History state expired, clearing and restarting flow');\n this.flowStateManager.clearFlowState();\n return true;\n }\n // Always trigger restart after restoring state\n // The restored session storage will allow Loginflow to resume using the flow-type-specific cookie\n console.log('[NavigationManager] Valid history state restored, triggering restart to resume flow');\n return true;\n }\n /**\n * Trigger flow restart callback.\n */\n triggerFlowRestart() {\n return __awaiter(this, void 0, void 0, function* () {\n if (this.onFlowRestartNeeded) {\n yield this.onFlowRestartNeeded();\n }\n });\n }\n /**\n * Create a history state object from flow state.\n */\n createHistoryState(flowState) {\n return {\n flowType: flowState.flowType,\n flow_id: flowState.flow_id,\n state: flowState.state,\n timestamp: Date.now()\n };\n }\n /**\n * Update browser history.\n */\n updateBrowserHistory(flowState, mode) {\n // Skip history tracking if this instance was created with skipHistoryTracking\n if (this.skipHistoryTracking) {\n console.log('[NavigationManager] Skipping history tracking (created from navigation)');\n return;\n }\n const historyState = this.createHistoryState(flowState);\n try {\n if (mode === 'push') {\n this.historyAdapter.pushState(historyState, '', this.location.href);\n console.log('[NavigationManager] Pushed state to history');\n }\n else {\n this.historyAdapter.replaceState(historyState, '', this.location.href);\n console.log('[NavigationManager] Replaced state in history');\n }\n }\n catch (error) {\n console.error('[NavigationManager] Failed to update history:', error);\n }\n }\n /**\n * Handle flow start event.\n */\n handleFlowStart(data) {\n // When starting a flow, ALWAYS replace the current history entry\n // This works with app routers that already changed the URL\n this.updateBrowserHistory(data.flowState, 'replace');\n }\n /**\n * Handle flow update event.\n */\n handleFlowUpdate(data) {\n // If handling navigation, always replace; otherwise respect isNewStep\n const mode = this.isHandlingNavigationEvent || !data.isNewStep ? 'replace' : 'push';\n this.updateBrowserHistory(data.flowState, mode);\n }\n /**\n * Handle flow resume event.\n */\n handleFlowResume(data) {\n // Always replace state when resuming\n this.updateBrowserHistory(data.flowState, 'replace');\n }\n /**\n * Cleanup resources.\n */\n destroy() {\n // Cancel any pending debounced calls\n this.debouncer.cancel();\n // Remove popstate listener\n if (this.popstateListener) {\n window.removeEventListener('popstate', this.popstateListener);\n this.popstateListener = null;\n }\n // Remove pageshow listener\n if (this.pageshowListener) {\n window.removeEventListener('pageshow', this.pageshowListener);\n this.pageshowListener = null;\n }\n // Clear callback\n this.onFlowRestartNeeded = null;\n }\n}\n\nclass AuthService {\n constructor() {\n this.configured = false;\n this.loginflow = null;\n this.navigationManager = null;\n this.flowEventBus = null;\n }\n static get Instance() {\n if (!AuthService.instance) {\n AuthService.instance = new AuthService();\n }\n return AuthService.instance;\n }\n ensureConfigured() {\n if (!this.configured) {\n throw new LoginflowError('NOT_CONFIGURED', 'Auth.configure() must be called before using Auth methods');\n }\n }\n ensureLoginflowInitialized() {\n if (!this.loginflow) {\n throw new LoginflowError('LOGINFLOW_NOT_INITIALIZED', 'Call Auth.startLoginflow() first');\n }\n }\n startLoginflowInternal(flowId_1) {\n return __awaiter(this, arguments, void 0, function* (flowId, skipHistoryTracking = false) {\n this.ensureConfigured();\n // Cleanup old instances before creating new ones\n if (this.loginflow) {\n console.log('[AuthService] Cleaning up old loginflow instance');\n this.loginflow.cleanup();\n this.loginflow = null;\n }\n if (this.navigationManager) {\n console.log('[AuthService] Cleaning up old navigation manager instance');\n this.navigationManager.destroy();\n this.navigationManager = null;\n }\n // Create shared event bus for communication between Loginflow and NavigationManager\n this.flowEventBus = new FlowEventBus();\n // Create navigation manager with event bus\n // Pass a callback that restarts the flow when navigation is detected\n this.navigationManager = new NavigationManager(this.flowEventBus, () => __awaiter(this, void 0, void 0, function* () {\n console.log('[AuthService] Navigation restart triggered, restarting loginflow');\n // Don't pass flowId - let it auto-detect from current URL\n // Don't skip history tracking - we need to keep history in sync with session storage\n yield this.startLoginflowInternal(undefined, false);\n }), skipHistoryTracking);\n // Initialize Loginflow with the shared event bus\n const result = yield Loginflow.init(flowId, this.flowEventBus);\n this.loginflow = result.sdk;\n const response = {\n flowType: result.flowType,\n isResumed: result.isResumed,\n state: result.state,\n render_spec: result.render_spec,\n auth_result: result.auth_result,\n };\n // Emit flow state change event\n const config = store.getConfig();\n if (config.onFlowStateChange) {\n config.onFlowStateChange({\n eventType: result.isResumed ? 'flow_resumed' : 'flow_started',\n flowType: result.flowType,\n state: result.state,\n render_spec: result.render_spec,\n auth_result: result.auth_result,\n isResumed: result.isResumed,\n });\n }\n return response;\n });\n }\n configure(config) {\n // Validate required fields\n if (!config.domain || !config.clientId || !config.clientSecret) {\n throw new LoginflowError('CONFIG_ERROR', 'domain, clientId, and clientSecret are required');\n }\n store.setConfig(config);\n this.configured = true;\n }\n isAuthenticated() {\n this.ensureConfigured();\n return SessionService.Instance.isAuthenticated();\n }\n getCurrentSession() {\n this.ensureConfigured();\n return SessionService.Instance.getCurrentSession();\n }\n getAuthenticatedUser() {\n this.ensureConfigured();\n return SessionService.Instance.getAuthenticatedUser();\n }\n startLoginflow(flowId) {\n return __awaiter(this, void 0, void 0, function* () {\n return this.startLoginflowInternal(flowId, false);\n });\n }\n processLoginflowEvent(request) {\n return __awaiter(this, void 0, void 0, function* () {\n this.ensureConfigured();\n this.ensureLoginflowInitialized();\n const response = yield this.loginflow.processEvent(request);\n // Emit flow state change event\n const config = store.getConfig();\n if (config.onFlowStateChange) {\n // Get current flow state from sessionStorage to get flowType\n const flowStateStr = sessionStorage.getItem('saasbase_loginflow_state');\n let flowType = 'custom';\n if (flowStateStr) {\n try {\n const flowState = JSON.parse(flowStateStr);\n flowType = flowState.flowType;\n }\n catch (e) {\n console.error('Failed to parse flow state:', e);\n }\n }\n config.onFlowStateChange({\n eventType: 'flow_updated',\n flowType: flowType,\n state: response.state,\n render_spec: response.render_spec,\n auth_result: response.auth_result,\n });\n }\n return response;\n });\n }\n signOut() {\n this.ensureConfigured();\n // Clear session\n SessionService.Instance.clearSession();\n SessionService.Instance.cleanup();\n // Clear loginflow instance and cancel any pending operations\n if (this.loginflow) {\n this.loginflow.cleanup();\n this.loginflow = null;\n }\n // Clear navigation manager\n if (this.navigationManager) {\n this.navigationManager.destroy();\n this.navigationManager = null;\n }\n // Clear event bus\n if (this.flowEventBus) {\n this.flowEventBus.clear();\n this.flowEventBus = null;\n }\n // Refresh the page to clear any in-memory state\n window.location.reload();\n console.log('Refreshed the page to clear any in-memory state');\n }\n}\n\nconst Auth = AuthService.Instance;\n\nexport { Auth, LoginflowError };\n//# sourceMappingURL=index.esm.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=t=>(e,o)=>{void 0!==o?o.addInitializer((()=>{customElements.define(t,e)})):customElements.define(t,e)};export{t as customElement};\n//# sourceMappingURL=custom-element.js.map\n","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),o=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=o.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&o.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new n(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const o=1===t.length?t[0]:e.reduce(((e,s,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[o+1]),t[0]);return new n(o,t,s)},S=(s,o)=>{if(e)s.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement(\"style\"),n=t.litNonce;void 0!==n&&o.setAttribute(\"nonce\",n),o.textContent=e.cssText,s.appendChild(o)}},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{n as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as s}from\"./css-tag.js\";export{CSSResult,css,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{is:i,defineProperty:e,getOwnPropertyDescriptor:h,getOwnPropertyNames:r,getOwnPropertySymbols:o,getPrototypeOf:n}=Object,a=globalThis,c=a.trustedTypes,l=c?c.emptyScript:\"\",p=a.reactiveElementPolyfillSupport,d=(t,s)=>t,u={toAttribute(t,s){switch(s){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,s){let i=t;switch(s){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,s)=>!i(t,s),b={attribute:!0,type:String,converter:u,reflect:!1,useDefault:!1,hasChanged:f};Symbol.metadata??=Symbol(\"metadata\"),a.litPropertyMetadata??=new WeakMap;class y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,s=b){if(s.state&&(s.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((s=Object.create(s)).wrapped=!0),this.elementProperties.set(t,s),!s.noAccessor){const i=Symbol(),h=this.getPropertyDescriptor(t,i,s);void 0!==h&&e(this.prototype,t,h)}}static getPropertyDescriptor(t,s,i){const{get:e,set:r}=h(this.prototype,t)??{get(){return this[s]},set(t){this[s]=t}};return{get:e,set(s){const h=e?.call(this);r?.call(this,s),this.requestUpdate(t,h,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??b}static _$Ei(){if(this.hasOwnProperty(d(\"elementProperties\")))return;const t=n(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(d(\"finalized\")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d(\"properties\"))){const t=this.properties,s=[...r(t),...o(t)];for(const i of s)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const s=litPropertyMetadata.get(t);if(void 0!==s)for(const[t,i]of s)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,s]of this.elementProperties){const i=this._$Eu(t,s);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(s){const i=[];if(Array.isArray(s)){const e=new Set(s.flat(1/0).reverse());for(const s of e)i.unshift(t(s))}else void 0!==s&&i.push(t(s));return i}static _$Eu(t,s){const i=s.attribute;return!1===i?void 0:\"string\"==typeof i?i:\"string\"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,s=this.constructor.elementProperties;for(const i of s.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return s(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,s,i){this._$AK(t,i)}_$ET(t,s){const i=this.constructor.elementProperties.get(t),e=this.constructor._$Eu(t,i);if(void 0!==e&&!0===i.reflect){const h=(void 0!==i.converter?.toAttribute?i.converter:u).toAttribute(s,i.type);this._$Em=t,null==h?this.removeAttribute(e):this.setAttribute(e,h),this._$Em=null}}_$AK(t,s){const i=this.constructor,e=i._$Eh.get(t);if(void 0!==e&&this._$Em!==e){const t=i.getPropertyOptions(e),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:u;this._$Em=e;const r=h.fromAttribute(s,t.type);this[e]=r??this._$Ej?.get(e)??r,this._$Em=null}}requestUpdate(t,s,i){if(void 0!==t){const e=this.constructor,h=this[t];if(i??=e.getPropertyOptions(t),!((i.hasChanged??f)(h,s)||i.useDefault&&i.reflect&&h===this._$Ej?.get(t)&&!this.hasAttribute(e._$Eu(t,i))))return;this.C(t,s,i)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(t,s,{useDefault:i,reflect:e,wrapped:h},r){i&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,r??s??this[t]),!0!==h||void 0!==r)||(this._$AL.has(t)||(this.hasUpdated||i||(s=void 0),this._$AL.set(t,s)),!0===e&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,s]of this._$Ep)this[t]=s;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[s,i]of t){const{wrapped:t}=i,e=this[s];!0!==t||this._$AL.has(s)||void 0===e||this.C(s,void 0,i,e)}}let t=!1;const s=this._$AL;try{t=this.shouldUpdate(s),t?(this.willUpdate(s),this._$EO?.forEach((t=>t.hostUpdate?.())),this.update(s)):this._$EM()}catch(s){throw t=!1,this._$EM(),s}t&&this._$AE(s)}willUpdate(t){}_$AE(t){this._$EO?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach((t=>this._$ET(t,this[t]))),this._$EM()}updated(t){}firstUpdated(t){}}y.elementStyles=[],y.shadowRootOptions={mode:\"open\"},y[d(\"elementProperties\")]=new Map,y[d(\"finalized\")]=new Map,p?.({ReactiveElement:y}),(a.reactiveElementVersions??=[]).push(\"2.1.1\");export{y as ReactiveElement,s as adoptStyles,u as defaultConverter,t as getCompatibleStyle,f as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","import{defaultConverter as t,notEqual as e}from\"../reactive-element.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const o={attribute:!0,type:String,converter:t,reflect:!1,hasChanged:e},r=(t=o,e,r)=>{const{kind:n,metadata:i}=r;let s=globalThis.litPropertyMetadata.get(i);if(void 0===s&&globalThis.litPropertyMetadata.set(i,s=new Map),\"setter\"===n&&((t=Object.create(t)).wrapped=!0),s.set(r.name,t),\"accessor\"===n){const{name:o}=r;return{set(r){const n=e.get.call(this);e.set.call(this,r),this.requestUpdate(o,n,t)},init(e){return void 0!==e&&this.C(o,void 0,t,e),e}}}if(\"setter\"===n){const{name:o}=r;return function(r){const n=this[o];e.call(this,r),this.requestUpdate(o,n,t)}}throw Error(\"Unsupported decorator location: \"+n)};function n(t){return(e,o)=>\"object\"==typeof o?r(t,e,o):((t,e,o)=>{const r=e.hasOwnProperty(o);return e.constructor.createProperty(o,t),r?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}export{n as property,r as standardProperty};\n//# sourceMappingURL=property.js.map\n","import{property as t}from\"./property.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function r(r){return t({...r,state:!0,attribute:!1})}export{r as state};\n//# sourceMappingURL=state.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst e=(e,t,c)=>(c.configurable=!0,c.enumerable=!0,Reflect.decorate&&\"object\"!=typeof t&&Object.defineProperty(e,t,c),c);export{e as desc};\n//# sourceMappingURL=base.js.map\n","import{desc as t}from\"./base.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function e(e,r){return(n,s,i)=>{const o=t=>t.renderRoot?.querySelector(e)??null;if(r){const{get:e,set:r}=\"object\"==typeof s?n:i??(()=>{const t=Symbol();return{get(){return this[t]},set(e){this[t]=e}}})();return t(n,s,{get(){let t=e.call(this);return void 0===t&&(t=o(this),(null!==t||this.hasUpdated)&&r.call(this,t)),t}})}return t(n,s,{get(){return o(this)}})}}export{e as query};\n//# sourceMappingURL=query.js.map\n","import { LitElement } from \"lit\";\r\nimport { property } from \"lit/decorators.js\";\r\n\r\nexport abstract class BaseElement extends LitElement {\r\n @property({ type: Boolean }) shadow = false;\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n protected getAttributesToExclude(): string[] {\r\n return [];\r\n }\r\n\r\n // Filter attributes based on exclusion rules\r\n protected getFilteredAttributes(): Record<string, string> {\r\n const attributes: Record<string, string> = {};\r\n Array.from(this.attributes).forEach((attr) => {\r\n if (!this.getAttributesToExclude().includes(attr.name)) {\r\n attributes[attr.name] = attr.value ?? \"\";\r\n }\r\n });\r\n return attributes;\r\n }\r\n\r\n protected isCustomPropertySet(property: string): boolean {\r\n const value = getComputedStyle(this).getPropertyValue(property).trim();\r\n return value !== \"inherit\" && value.length > 0;\r\n }\r\n\r\n protected applyCustomClass(\r\n variables: string[],\r\n selector: string,\r\n className = \"\"\r\n ): void {\r\n if (variables.some((variable) => this.isCustomPropertySet(variable))) {\r\n this.shadowRoot?.querySelector(selector)?.classList.add(className);\r\n }\r\n }\r\n\r\n protected removeDuplicateContent() {\r\n const walker = document.createTreeWalker(\r\n this,\r\n NodeFilter.SHOW_TEXT | NodeFilter.SHOW_ELEMENT,\r\n {\r\n acceptNode: (node) => {\r\n if (node.nodeType === Node.COMMENT_NODE)\r\n return NodeFilter.FILTER_REJECT;\r\n if (node.nodeType === Node.TEXT_NODE && !node.textContent?.trim())\r\n return NodeFilter.FILTER_REJECT;\r\n return NodeFilter.FILTER_ACCEPT;\r\n },\r\n }\r\n );\r\n\r\n const seen = new Map<string, Node>();\r\n const nodesToRemove: Node[] = [];\r\n\r\n let node: Node | null;\r\n while ((node = walker.nextNode())) {\r\n let key: string;\r\n if (node.nodeType === Node.TEXT_NODE) {\r\n const text = node.textContent?.trim();\r\n if (!text) continue;\r\n key = `text:${text}`;\r\n } else if (node instanceof HTMLElement) {\r\n const attributes = Array.from(node.attributes)\r\n .map((attr) => `${attr.name}=${attr.value}`)\r\n .sort()\r\n .join(\":\");\r\n key = `element:${node.tagName}:${attributes}`;\r\n } else {\r\n continue;\r\n }\r\n\r\n if (seen.has(key)) {\r\n const firstNode = seen.get(key);\r\n if (firstNode?.parentNode) nodesToRemove.push(firstNode);\r\n seen.set(key, node);\r\n } else {\r\n seen.set(key, node);\r\n }\r\n }\r\n\r\n nodesToRemove.forEach((node) => node.parentNode?.removeChild(node));\r\n }\r\n\r\n protected moveLightDomChildrenInto(\r\n target: HTMLElement,\r\n specificNodes?: Node[]\r\n ): void {\r\n let nodesToMove: Node[];\r\n\r\n if (specificNodes?.length) {\r\n nodesToMove = specificNodes.filter(\r\n (node) =>\r\n this.contains(node) && node !== target && !node.contains(target)\r\n );\r\n\r\n // Remove existing duplicates in target\r\n nodesToMove.forEach((node) => {\r\n const existing = Array.from(target.childNodes).find((n) =>\r\n n.isEqualNode?.(node)\r\n );\r\n if (existing) target.removeChild(existing);\r\n });\r\n } else {\r\n nodesToMove = Array.from(this.childNodes).filter(\r\n (node) =>\r\n node !== target && !target.contains(node) && !node.contains(target)\r\n );\r\n }\r\n\r\n nodesToMove.forEach((node) => target.appendChild(node));\r\n }\r\n}\r\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},e=t=>(...e)=>({_$litDirective$:t,values:e});class i{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}export{i as Directive,t as PartType,e as directive};\n//# sourceMappingURL=directive.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,i=t.trustedTypes,s=i?i.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,e=\"$lit$\",h=`lit$${Math.random().toFixed(9).slice(2)}$`,o=\"?\"+h,n=`<${o}>`,r=document,l=()=>r.createComment(\"\"),c=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,a=Array.isArray,u=t=>a(t)||\"function\"==typeof t?.[Symbol.iterator],d=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,v=/-->/g,_=/>/g,m=RegExp(`>|${d}(?:([^\\\\s\"'>=/]+)(${d}*=${d}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),p=/'/g,g=/\"/g,$=/^(?:script|style|textarea|title)$/i,y=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=y(1),b=y(2),w=y(3),T=Symbol.for(\"lit-noChange\"),E=Symbol.for(\"lit-nothing\"),A=new WeakMap,C=r.createTreeWalker(r,129);function P(t,i){if(!a(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return void 0!==s?s.createHTML(i):i}const V=(t,i)=>{const s=t.length-1,o=[];let r,l=2===i?\"<svg>\":3===i?\"<math>\":\"\",c=f;for(let i=0;i<s;i++){const s=t[i];let a,u,d=-1,y=0;for(;y<s.length&&(c.lastIndex=y,u=c.exec(s),null!==u);)y=c.lastIndex,c===f?\"!--\"===u[1]?c=v:void 0!==u[1]?c=_:void 0!==u[2]?($.test(u[2])&&(r=RegExp(\"</\"+u[2],\"g\")),c=m):void 0!==u[3]&&(c=m):c===m?\">\"===u[0]?(c=r??f,d=-1):void 0===u[1]?d=-2:(d=c.lastIndex-u[2].length,a=u[1],c=void 0===u[3]?m:'\"'===u[3]?g:p):c===g||c===p?c=m:c===v||c===_?c=f:(c=m,r=void 0);const x=c===m&&t[i+1].startsWith(\"/>\")?\" \":\"\";l+=c===f?s+n:d>=0?(o.push(a),s.slice(0,d)+e+s.slice(d)+h+x):s+h+(-2===d?i:x)}return[P(t,l+(t[s]||\"<?>\")+(2===i?\"</svg>\":3===i?\"</math>\":\"\")),o]};class N{constructor({strings:t,_$litType$:s},n){let r;this.parts=[];let c=0,a=0;const u=t.length-1,d=this.parts,[f,v]=V(t,s);if(this.el=N.createElement(f,n),C.currentNode=this.el.content,2===s||3===s){const t=this.el.content.firstChild;t.replaceWith(...t.childNodes)}for(;null!==(r=C.nextNode())&&d.length<u;){if(1===r.nodeType){if(r.hasAttributes())for(const t of r.getAttributeNames())if(t.endsWith(e)){const i=v[a++],s=r.getAttribute(t).split(h),e=/([.?@])?(.*)/.exec(i);d.push({type:1,index:c,name:e[2],strings:s,ctor:\".\"===e[1]?H:\"?\"===e[1]?I:\"@\"===e[1]?L:k}),r.removeAttribute(t)}else t.startsWith(h)&&(d.push({type:6,index:c}),r.removeAttribute(t));if($.test(r.tagName)){const t=r.textContent.split(h),s=t.length-1;if(s>0){r.textContent=i?i.emptyScript:\"\";for(let i=0;i<s;i++)r.append(t[i],l()),C.nextNode(),d.push({type:2,index:++c});r.append(t[s],l())}}}else if(8===r.nodeType)if(r.data===o)d.push({type:2,index:c});else{let t=-1;for(;-1!==(t=r.data.indexOf(h,t+1));)d.push({type:7,index:c}),t+=h.length-1}c++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function S(t,i,s=t,e){if(i===T)return i;let h=void 0!==e?s._$Co?.[e]:s._$Cl;const o=c(i)?void 0:i._$litDirective$;return h?.constructor!==o&&(h?._$AO?.(!1),void 0===o?h=void 0:(h=new o(t),h._$AT(t,s,e)),void 0!==e?(s._$Co??=[])[e]=h:s._$Cl=h),void 0!==h&&(i=S(t,h._$AS(t,i.values),h,e)),i}class M{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:i},parts:s}=this._$AD,e=(t?.creationScope??r).importNode(i,!0);C.currentNode=e;let h=C.nextNode(),o=0,n=0,l=s[0];for(;void 0!==l;){if(o===l.index){let i;2===l.type?i=new R(h,h.nextSibling,this,t):1===l.type?i=new l.ctor(h,l.name,l.strings,this,t):6===l.type&&(i=new z(h,this,t)),this._$AV.push(i),l=s[++n]}o!==l?.index&&(h=C.nextNode(),o++)}return C.currentNode=r,e}p(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class R{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,i,s,e){this.type=2,this._$AH=E,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cv=e?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===t?.nodeType&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=S(this,t,i),c(t)?t===E||null==t||\"\"===t?(this._$AH!==E&&this._$AR(),this._$AH=E):t!==this._$AH&&t!==T&&this._(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):u(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==E&&c(this._$AH)?this._$AA.nextSibling.data=t:this.T(r.createTextNode(t)),this._$AH=t}$(t){const{values:i,_$litType$:s}=t,e=\"number\"==typeof s?this._$AC(t):(void 0===s.el&&(s.el=N.createElement(P(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===e)this._$AH.p(i);else{const t=new M(e,this),s=t.u(this.options);t.p(i),this.T(s),this._$AH=t}}_$AC(t){let i=A.get(t.strings);return void 0===i&&A.set(t.strings,i=new N(t)),i}k(t){a(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const h of t)e===i.length?i.push(s=new R(this.O(l()),this.O(l()),this,this.options)):s=i[e],s._$AI(h),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){for(this._$AP?.(!1,!0,i);t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){void 0===this._$AM&&(this._$Cv=t,this._$AP?.(t))}}class k{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,i,s,e,h){this.type=1,this._$AH=E,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=h,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=E}_$AI(t,i=this,s,e){const h=this.strings;let o=!1;if(void 0===h)t=S(this,t,i,0),o=!c(t)||t!==this._$AH&&t!==T,o&&(this._$AH=t);else{const e=t;let n,r;for(t=h[0],n=0;n<h.length-1;n++)r=S(this,e[s+n],i,n),r===T&&(r=this._$AH[n]),o||=!c(r)||r!==this._$AH[n],r===E?t=E:t!==E&&(t+=(r??\"\")+h[n+1]),this._$AH[n]=r}o&&!e&&this.j(t)}j(t){t===E?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??\"\")}}class H extends k{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===E?void 0:t}}class I extends k{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==E)}}class L extends k{constructor(t,i,s,e,h){super(t,i,s,e,h),this.type=5}_$AI(t,i=this){if((t=S(this,t,i,0)??E)===T)return;const s=this._$AH,e=t===E&&s!==E||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,h=t!==E&&(s===E||e);e&&this.element.removeEventListener(this.name,this,s),h&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){\"function\"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}}class z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){S(this,t)}}const Z={M:e,P:h,A:o,C:1,L:V,R:M,D:u,V:S,I:R,H:k,N:I,U:L,B:H,F:z},j=t.litHtmlPolyfillSupport;j?.(N,R),(t.litHtmlVersions??=[]).push(\"3.3.1\");const B=(t,i,s)=>{const e=s?.renderBefore??i;let h=e._$litPart$;if(void 0===h){const t=s?.renderBefore??null;e._$litPart$=h=new R(i.insertBefore(l(),t),t,void 0,s??{})}return h._$AI(t),h};export{Z as _$LH,x as html,w as mathml,T as noChange,E as nothing,B as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","import{_$LH as o}from\"./lit-html.js\";\n/**\n * @license\n * Copyright 2020 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{I:t}=o,i=o=>null===o||\"object\"!=typeof o&&\"function\"!=typeof o,n={HTML:1,SVG:2,MATHML:3},e=(o,t)=>void 0===t?void 0!==o?._$litType$:o?._$litType$===t,l=o=>null!=o?._$litType$?.h,d=o=>void 0!==o?._$litDirective$,c=o=>o?._$litDirective$,f=o=>void 0===o.strings,r=()=>document.createComment(\"\"),s=(o,i,n)=>{const e=o._$AA.parentNode,l=void 0===i?o._$AB:i._$AA;if(void 0===n){const i=e.insertBefore(r(),l),d=e.insertBefore(r(),l);n=new t(i,d,o,o.options)}else{const t=n._$AB.nextSibling,i=n._$AM,d=i!==o;if(d){let t;n._$AQ?.(o),n._$AM=o,void 0!==n._$AP&&(t=o._$AU)!==i._$AU&&n._$AP(t)}if(t!==l||d){let o=n._$AA;for(;o!==t;){const t=o.nextSibling;e.insertBefore(o,l),o=t}}}return n},v=(o,t,i=o)=>(o._$AI(t,i),o),u={},m=(o,t=u)=>o._$AH=t,p=o=>o._$AH,M=o=>{o._$AR(),o._$AA.remove()},h=o=>{o._$AR()};export{n as TemplateResultType,h as clearPart,p as getCommittedValue,c as getDirectiveClass,s as insertPart,l as isCompiledTemplateResult,d as isDirectiveResult,i as isPrimitive,f as isSingleExpression,e as isTemplateResult,M as removePart,v as setChildPartValue,m as setCommittedValue};\n//# sourceMappingURL=directive-helpers.js.map\n","import{isSingleExpression as i}from\"./directive-helpers.js\";import{Directive as t,PartType as e}from\"./directive.js\";export{directive}from\"./directive.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const s=(i,t)=>{const e=i._$AN;if(void 0===e)return!1;for(const i of e)i._$AO?.(t,!1),s(i,t);return!0},o=i=>{let t,e;do{if(void 0===(t=i._$AM))break;e=t._$AN,e.delete(i),i=t}while(0===e?.size)},r=i=>{for(let t;t=i._$AM;i=t){let e=t._$AN;if(void 0===e)t._$AN=e=new Set;else if(e.has(i))break;e.add(i),c(t)}};function h(i){void 0!==this._$AN?(o(this),this._$AM=i,r(this)):this._$AM=i}function n(i,t=!1,e=0){const r=this._$AH,h=this._$AN;if(void 0!==h&&0!==h.size)if(t)if(Array.isArray(r))for(let i=e;i<r.length;i++)s(r[i],!1),o(r[i]);else null!=r&&(s(r,!1),o(r));else s(this,i)}const c=i=>{i.type==e.CHILD&&(i._$AP??=n,i._$AQ??=h)};class f extends t{constructor(){super(...arguments),this._$AN=void 0}_$AT(i,t,e){super._$AT(i,t,e),r(this),this.isConnected=i._$AU}_$AO(i,t=!0){i!==this.isConnected&&(this.isConnected=i,i?this.reconnected?.():this.disconnected?.()),t&&(s(this,i),o(this))}setValue(t){if(i(this._$Ct))this._$Ct._$AI(t,this);else{const i=[...this._$Ct._$AH];i[this._$Ci]=t,this._$Ct._$AI(i,this,0)}}disconnected(){}reconnected(){}}export{f as AsyncDirective,t as Directive,e as PartType};\n//# sourceMappingURL=async-directive.js.map\n","import{nothing as t}from\"../lit-html.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const o=o=>o??t;export{o as ifDefined};\n//# sourceMappingURL=if-defined.js.map\n","import{nothing as t,noChange as i}from\"../lit-html.js\";import{Directive as r,PartType as s,directive as n}from\"../directive.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class e extends r{constructor(i){if(super(i),this.it=t,i.type!==s.CHILD)throw Error(this.constructor.directiveName+\"() can only be used in child bindings\")}render(r){if(r===t||null==r)return this._t=void 0,this.it=r;if(r===i)return r;if(\"string\"!=typeof r)throw Error(this.constructor.directiveName+\"() called with a non-string value\");if(r===this.it)return this._t;this.it=r;const s=[r];return s.raw=s,this._t={_$litType$:this.constructor.resultType,strings:s,values:[]}}}e.directiveName=\"unsafeHTML\",e.resultType=1;const o=n(e);export{e as UnsafeHTMLDirective,o as unsafeHTML};\n//# sourceMappingURL=unsafe-html.js.map\n","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nclass s extends Event{constructor(s,t,e,o){super(\"context-request\",{bubbles:!0,composed:!0}),this.context=s,this.contextTarget=t,this.callback=e,this.subscribe=o??!1}}export{s as ContextRequestEvent};\n//# sourceMappingURL=context-request-event.js.map\n","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nfunction n(n){return n}export{n as createContext};\n//# sourceMappingURL=create-context.js.map\n","import{ContextRequestEvent as t}from\"../context-request-event.js\";\n/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class s{constructor(t,s,i,h){if(this.subscribe=!1,this.provided=!1,this.value=void 0,this.t=(t,s)=>{this.unsubscribe&&(this.unsubscribe!==s&&(this.provided=!1,this.unsubscribe()),this.subscribe||this.unsubscribe()),this.value=t,this.host.requestUpdate(),this.provided&&!this.subscribe||(this.provided=!0,this.callback&&this.callback(t,s)),this.unsubscribe=s},this.host=t,void 0!==s.context){const t=s;this.context=t.context,this.callback=t.callback,this.subscribe=t.subscribe??!1}else this.context=s,this.callback=i,this.subscribe=h??!1;this.host.addController(this)}hostConnected(){this.dispatchRequest()}hostDisconnected(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=void 0)}dispatchRequest(){this.host.dispatchEvent(new t(this.context,this.host,this.t,this.subscribe))}}export{s as ContextConsumer};\n//# sourceMappingURL=context-consumer.js.map\n","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nclass s{get value(){return this.o}set value(s){this.setValue(s)}setValue(s,t=!1){const i=t||!Object.is(s,this.o);this.o=s,i&&this.updateObservers()}constructor(s){this.subscriptions=new Map,this.updateObservers=()=>{for(const[s,{disposer:t}]of this.subscriptions)s(this.o,t)},void 0!==s&&(this.value=s)}addCallback(s,t,i){if(!i)return void s(this.value);this.subscriptions.has(s)||this.subscriptions.set(s,{disposer:()=>{this.subscriptions.delete(s)},consumerHost:t});const{disposer:h}=this.subscriptions.get(s);s(this.value,h)}clearCallbacks(){this.subscriptions.clear()}}export{s as ValueNotifier};\n//# sourceMappingURL=value-notifier.js.map\n","import{ContextRequestEvent as t}from\"../context-request-event.js\";import{ValueNotifier as s}from\"../value-notifier.js\";\n/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class e extends Event{constructor(t,s){super(\"context-provider\",{bubbles:!0,composed:!0}),this.context=t,this.contextTarget=s}}class i extends s{constructor(s,e,i){super(void 0!==e.context?e.initialValue:i),this.onContextRequest=t=>{if(t.context!==this.context)return;const s=t.contextTarget??t.composedPath()[0];s!==this.host&&(t.stopPropagation(),this.addCallback(t.callback,s,t.subscribe))},this.onProviderRequest=s=>{if(s.context!==this.context)return;if((s.contextTarget??s.composedPath()[0])===this.host)return;const e=new Set;for(const[s,{consumerHost:i}]of this.subscriptions)e.has(s)||(e.add(s),i.dispatchEvent(new t(this.context,i,s,!0)));s.stopPropagation()},this.host=s,void 0!==e.context?this.context=e.context:this.context=e,this.attachListeners(),this.host.addController?.(this)}attachListeners(){this.host.addEventListener(\"context-request\",this.onContextRequest),this.host.addEventListener(\"context-provider\",this.onProviderRequest)}hostConnected(){this.host.dispatchEvent(new e(this.context,this.host))}}export{i as ContextProvider,e as ContextProviderEvent};\n//# sourceMappingURL=context-provider.js.map\n","import{ContextProvider as t}from\"../controllers/context-provider.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function e({context:e}){return(n,i)=>{const r=new WeakMap;if(\"object\"==typeof i)return{get(){return n.get.call(this)},set(t){return r.get(this).setValue(t),n.set.call(this,t)},init(n){return r.set(this,new t(this,{context:e,initialValue:n})),n}};{n.constructor.addInitializer((n=>{r.set(n,new t(n,{context:e}))}));const o=Object.getOwnPropertyDescriptor(n,i);let s;if(void 0===o){const t=new WeakMap;s={get(){return t.get(this)},set(e){r.get(this).setValue(e),t.set(this,e)},configurable:!0,enumerable:!0}}else{const t=o.set;s={...o,set(e){r.get(this).setValue(e),t?.call(this,e)}}}return void Object.defineProperty(n,i,s)}}}export{e as provide};\n//# sourceMappingURL=provide.js.map\n","import{ContextConsumer as t}from\"../controllers/context-consumer.js\";\n/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function c({context:c,subscribe:e}){return(o,n)=>{\"object\"==typeof n?n.addInitializer((function(){new t(this,{context:c,callback:t=>{o.set.call(this,t)},subscribe:e})})):o.constructor.addInitializer((o=>{new t(o,{context:c,callback:t=>{o[n]=t},subscribe:e})}))}}export{c as consume};\n//# sourceMappingURL=consume.js.map\n","import{nothing as t}from\"../lit-html.js\";import{AsyncDirective as i}from\"../async-directive.js\";import{directive as s}from\"../directive.js\";\n/**\n * @license\n * Copyright 2020 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const e=()=>new h;class h{}const o=new WeakMap,n=s(class extends i{render(i){return t}update(i,[s]){const e=s!==this.G;return e&&void 0!==this.G&&this.rt(void 0),(e||this.lt!==this.ct)&&(this.G=s,this.ht=i.options?.host,this.rt(this.ct=i.element)),t}rt(t){if(this.isConnected||(t=void 0),\"function\"==typeof this.G){const i=this.ht??globalThis;let s=o.get(i);void 0===s&&(s=new WeakMap,o.set(i,s)),void 0!==s.get(this.G)&&this.G.call(this.ht,void 0),s.set(this.G,t),void 0!==t&&this.G.call(this.ht,t)}else this.G.value=t}get lt(){return\"function\"==typeof this.G?o.get(this.ht??globalThis)?.get(this.G):this.G?.value}disconnected(){this.lt===this.ct&&this.rt(void 0)}reconnected(){this.rt(this.ct)}});export{e as createRef,n as ref};\n//# sourceMappingURL=ref.js.map\n","import { LitElement as W, css as ct, html as d, svg as pe, nothing as Z } from \"lit\";\nimport { property as l, query as ee, state as D, customElement as p } from \"lit/decorators.js\";\nimport { nothing as Yi } from \"lit/html.js\";\nimport { directive as Ns } from \"lit/directive.js\";\nimport { AsyncDirective as Ki } from \"lit/async-directive.js\";\nimport { ifDefined as Wi } from \"lit/directives/if-defined.js\";\nimport { unsafeHTML as kn } from \"lit/directives/unsafe-html.js\";\nimport { html as dt } from \"lit-element\";\nimport { createContext as Us, provide as Nr, consume as Ur } from \"@lit-labs/context\";\nimport { ref as Xi } from \"lit/directives/ref.js\";\nconst Xr = \"rtg-flex rtg-h-9 rtg-w-full rtg-no-autofill-bg rtg-rounded-md rtg-border rtg-border-input autofill:rtg-bg-transparent rtg-bg-transparent rtg-px-3 rtg-py-1 rtg-text-sm rtg-shadow-sm rtg-transition-colors file:rtg-border-0 file:rtg-bg-transparent file:rtg-text-sm file:rtg-font-medium placeholder:rtg-text-muted-foreground focus-visible:rtg-outline-none focus-visible:rtg-ring-[3px] focus-visible:rtg-ring-custom-outline focus-visible:rtg-border-ring disabled:rtg-opacity-50 input-base\";\nfunction An(e) {\n var t, o, s = \"\";\n if (typeof e == \"string\" || typeof e == \"number\") s += e;\n else if (typeof e == \"object\") if (Array.isArray(e)) {\n var r = e.length;\n for (t = 0; t < r; t++) e[t] && (o = An(e[t])) && (s && (s += \" \"), s += o);\n } else for (o in e) e[o] && (s && (s += \" \"), s += o);\n return s;\n}\nfunction Ln() {\n for (var e, t, o = 0, s = \"\", r = arguments.length; o < r; o++) (e = arguments[o]) && (t = An(e)) && (s && (s += \" \"), s += t);\n return s;\n}\nconst zs = \"-\", Zi = (e) => {\n const t = Ji(e), {\n conflictingClassGroups: o,\n conflictingClassGroupModifiers: s\n } = e;\n return {\n getClassGroupId: (i) => {\n const v = i.split(zs);\n return v[0] === \"\" && v.length !== 1 && v.shift(), In(v, t) || Qi(i);\n },\n getConflictingClassGroupIds: (i, v) => {\n const y = o[i] || [];\n return v && s[i] ? [...y, ...s[i]] : y;\n }\n };\n}, In = (e, t) => {\n var i;\n if (e.length === 0)\n return t.classGroupId;\n const o = e[0], s = t.nextPart.get(o), r = s ? In(e.slice(1), s) : void 0;\n if (r)\n return r;\n if (t.validators.length === 0)\n return;\n const n = e.join(zs);\n return (i = t.validators.find(({\n validator: v\n }) => v(n))) == null ? void 0 : i.classGroupId;\n}, Do = /^\\[(.+)\\]$/, Qi = (e) => {\n if (Do.test(e)) {\n const t = Do.exec(e)[1], o = t == null ? void 0 : t.substring(0, t.indexOf(\":\"));\n if (o)\n return \"arbitrary..\" + o;\n }\n}, Ji = (e) => {\n const {\n theme: t,\n prefix: o\n } = e, s = {\n nextPart: /* @__PURE__ */ new Map(),\n validators: []\n };\n return ta(Object.entries(e.classGroups), o).forEach(([n, i]) => {\n ts(i, s, n, t);\n }), s;\n}, ts = (e, t, o, s) => {\n e.forEach((r) => {\n if (typeof r == \"string\") {\n const n = r === \"\" ? t : Ro(t, r);\n n.classGroupId = o;\n return;\n }\n if (typeof r == \"function\") {\n if (ea(r)) {\n ts(r(s), t, o, s);\n return;\n }\n t.validators.push({\n validator: r,\n classGroupId: o\n });\n return;\n }\n Object.entries(r).forEach(([n, i]) => {\n ts(i, Ro(t, n), o, s);\n });\n });\n}, Ro = (e, t) => {\n let o = e;\n return t.split(zs).forEach((s) => {\n o.nextPart.has(s) || o.nextPart.set(s, {\n nextPart: /* @__PURE__ */ new Map(),\n validators: []\n }), o = o.nextPart.get(s);\n }), o;\n}, ea = (e) => e.isThemeGetter, ta = (e, t) => t ? e.map(([o, s]) => {\n const r = s.map((n) => typeof n == \"string\" ? t + n : typeof n == \"object\" ? Object.fromEntries(Object.entries(n).map(([i, v]) => [t + i, v])) : n);\n return [o, r];\n}) : e, ra = (e) => {\n if (e < 1)\n return {\n get: () => {\n },\n set: () => {\n }\n };\n let t = 0, o = /* @__PURE__ */ new Map(), s = /* @__PURE__ */ new Map();\n const r = (n, i) => {\n o.set(n, i), t++, t > e && (t = 0, s = o, o = /* @__PURE__ */ new Map());\n };\n return {\n get(n) {\n let i = o.get(n);\n if (i !== void 0)\n return i;\n if ((i = s.get(n)) !== void 0)\n return r(n, i), i;\n },\n set(n, i) {\n o.has(n) ? o.set(n, i) : r(n, i);\n }\n };\n}, Tn = \"!\", sa = (e) => {\n const {\n separator: t,\n experimentalParseClassName: o\n } = e, s = t.length === 1, r = t[0], n = t.length, i = (v) => {\n const y = [];\n let b = 0, x = 0, k;\n for (let O = 0; O < v.length; O++) {\n let M = v[O];\n if (b === 0) {\n if (M === r && (s || v.slice(O, O + n) === t)) {\n y.push(v.slice(x, O)), x = O + n;\n continue;\n }\n if (M === \"/\") {\n k = O;\n continue;\n }\n }\n M === \"[\" ? b++ : M === \"]\" && b--;\n }\n const F = y.length === 0 ? v : v.substring(x), H = F.startsWith(Tn), j = H ? F.substring(1) : F, U = k && k > x ? k - x : void 0;\n return {\n modifiers: y,\n hasImportantModifier: H,\n baseClassName: j,\n maybePostfixModifierPosition: U\n };\n };\n return o ? (v) => o({\n className: v,\n parseClassName: i\n }) : i;\n}, oa = (e) => {\n if (e.length <= 1)\n return e;\n const t = [];\n let o = [];\n return e.forEach((s) => {\n s[0] === \"[\" ? (t.push(...o.sort(), s), o = []) : o.push(s);\n }), t.push(...o.sort()), t;\n}, na = (e) => ({\n cache: ra(e.cacheSize),\n parseClassName: sa(e),\n ...Zi(e)\n}), ia = /\\s+/, aa = (e, t) => {\n const {\n parseClassName: o,\n getClassGroupId: s,\n getConflictingClassGroupIds: r\n } = t, n = [], i = e.trim().split(ia);\n let v = \"\";\n for (let y = i.length - 1; y >= 0; y -= 1) {\n const b = i[y], {\n modifiers: x,\n hasImportantModifier: k,\n baseClassName: F,\n maybePostfixModifierPosition: H\n } = o(b);\n let j = !!H, U = s(j ? F.substring(0, H) : F);\n if (!U) {\n if (!j) {\n v = b + (v.length > 0 ? \" \" + v : v);\n continue;\n }\n if (U = s(F), !U) {\n v = b + (v.length > 0 ? \" \" + v : v);\n continue;\n }\n j = !1;\n }\n const O = oa(x).join(\":\"), M = k ? O + Tn : O, X = M + U;\n if (n.includes(X))\n continue;\n n.push(X);\n const J = r(U, j);\n for (let ie = 0; ie < J.length; ++ie) {\n const N = J[ie];\n n.push(M + N);\n }\n v = b + (v.length > 0 ? \" \" + v : v);\n }\n return v;\n};\nfunction la() {\n let e = 0, t, o, s = \"\";\n for (; e < arguments.length; )\n (t = arguments[e++]) && (o = jn(t)) && (s && (s += \" \"), s += o);\n return s;\n}\nconst jn = (e) => {\n if (typeof e == \"string\")\n return e;\n let t, o = \"\";\n for (let s = 0; s < e.length; s++)\n e[s] && (t = jn(e[s])) && (o && (o += \" \"), o += t);\n return o;\n};\nfunction ca(e, ...t) {\n let o, s, r, n = i;\n function i(y) {\n const b = t.reduce((x, k) => k(x), e());\n return o = na(b), s = o.cache.get, r = o.cache.set, n = v, v(y);\n }\n function v(y) {\n const b = s(y);\n if (b)\n return b;\n const x = aa(y, o);\n return r(y, x), x;\n }\n return function() {\n return n(la.apply(null, arguments));\n };\n}\nconst G = (e) => {\n const t = (o) => o[e] || [];\n return t.isThemeGetter = !0, t;\n}, Mn = /^\\[(?:([a-z-]+):)?(.+)\\]$/i, da = /^\\d+\\/\\d+$/, ua = /* @__PURE__ */ new Set([\"px\", \"full\", \"screen\"]), ga = /^(\\d+(\\.\\d+)?)?(xs|sm|md|lg|xl)$/, pa = /\\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\\b(calc|min|max|clamp)\\(.+\\)|^0$/, ha = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\\(.+\\)$/, va = /^(inset_)?-?((\\d+)?\\.?(\\d+)[a-z]+|0)_-?((\\d+)?\\.?(\\d+)[a-z]+|0)/, fa = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\\(.+\\)$/, Oe = (e) => xt(e) || ua.has(e) || da.test(e), Me = (e) => At(e, \"length\", $a), xt = (e) => !!e && !Number.isNaN(Number(e)), Zr = (e) => At(e, \"number\", xt), Ht = (e) => !!e && Number.isInteger(Number(e)), ma = (e) => e.endsWith(\"%\") && xt(e.slice(0, -1)), E = (e) => Mn.test(e), Ne = (e) => ga.test(e), ba = /* @__PURE__ */ new Set([\"length\", \"size\", \"percentage\"]), wa = (e) => At(e, ba, Nn), ya = (e) => At(e, \"position\", Nn), xa = /* @__PURE__ */ new Set([\"image\", \"url\"]), _a = (e) => At(e, xa, Sa), Ca = (e) => At(e, \"\", Ea), Gt = () => !0, At = (e, t, o) => {\n const s = Mn.exec(e);\n return s ? s[1] ? typeof t == \"string\" ? s[1] === t : t.has(s[1]) : o(s[2]) : !1;\n}, $a = (e) => (\n // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.\n // For example, `hsl(0 0% 0%)` would be classified as a length without this check.\n // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.\n pa.test(e) && !ha.test(e)\n), Nn = () => !1, Ea = (e) => va.test(e), Sa = (e) => fa.test(e), Oa = () => {\n const e = G(\"colors\"), t = G(\"spacing\"), o = G(\"blur\"), s = G(\"brightness\"), r = G(\"borderColor\"), n = G(\"borderRadius\"), i = G(\"borderSpacing\"), v = G(\"borderWidth\"), y = G(\"contrast\"), b = G(\"grayscale\"), x = G(\"hueRotate\"), k = G(\"invert\"), F = G(\"gap\"), H = G(\"gradientColorStops\"), j = G(\"gradientColorStopPositions\"), U = G(\"inset\"), O = G(\"margin\"), M = G(\"opacity\"), X = G(\"padding\"), J = G(\"saturate\"), ie = G(\"scale\"), N = G(\"sepia\"), Le = G(\"skew\"), Ie = G(\"space\"), ve = G(\"translate\"), ae = () => [\"auto\", \"contain\", \"none\"], We = () => [\"auto\", \"hidden\", \"clip\", \"visible\", \"scroll\"], V = () => [\"auto\", E, t], q = () => [E, t], we = () => [\"\", Oe, Me], le = () => [\"auto\", xt, E], te = () => [\"bottom\", \"center\", \"left\", \"left-bottom\", \"left-top\", \"right\", \"right-bottom\", \"right-top\", \"top\"], oe = () => [\"solid\", \"dashed\", \"dotted\", \"double\", \"none\"], Te = () => [\"normal\", \"multiply\", \"screen\", \"overlay\", \"darken\", \"lighten\", \"color-dodge\", \"color-burn\", \"hard-light\", \"soft-light\", \"difference\", \"exclusion\", \"hue\", \"saturation\", \"color\", \"luminosity\"], ye = () => [\"start\", \"end\", \"center\", \"between\", \"around\", \"evenly\", \"stretch\"], xe = () => [\"\", \"0\", E], c = () => [\"auto\", \"avoid\", \"all\", \"avoid-page\", \"page\", \"left\", \"right\", \"column\"], f = () => [xt, E];\n return {\n cacheSize: 500,\n separator: \":\",\n theme: {\n colors: [Gt],\n spacing: [Oe, Me],\n blur: [\"none\", \"\", Ne, E],\n brightness: f(),\n borderColor: [e],\n borderRadius: [\"none\", \"\", \"full\", Ne, E],\n borderSpacing: q(),\n borderWidth: we(),\n contrast: f(),\n grayscale: xe(),\n hueRotate: f(),\n invert: xe(),\n gap: q(),\n gradientColorStops: [e],\n gradientColorStopPositions: [ma, Me],\n inset: V(),\n margin: V(),\n opacity: f(),\n padding: q(),\n saturate: f(),\n scale: f(),\n sepia: xe(),\n skew: f(),\n space: q(),\n translate: q()\n },\n classGroups: {\n // Layout\n /**\n * Aspect Ratio\n * @see https://tailwindcss.com/docs/aspect-ratio\n */\n aspect: [{\n aspect: [\"auto\", \"square\", \"video\", E]\n }],\n /**\n * Container\n * @see https://tailwindcss.com/docs/container\n */\n container: [\"container\"],\n /**\n * Columns\n * @see https://tailwindcss.com/docs/columns\n */\n columns: [{\n columns: [Ne]\n }],\n /**\n * Break After\n * @see https://tailwindcss.com/docs/break-after\n */\n \"break-after\": [{\n \"break-after\": c()\n }],\n /**\n * Break Before\n * @see https://tailwindcss.com/docs/break-before\n */\n \"break-before\": [{\n \"break-before\": c()\n }],\n /**\n * Break Inside\n * @see https://tailwindcss.com/docs/break-inside\n */\n \"break-inside\": [{\n \"break-inside\": [\"auto\", \"avoid\", \"avoid-page\", \"avoid-column\"]\n }],\n /**\n * Box Decoration Break\n * @see https://tailwindcss.com/docs/box-decoration-break\n */\n \"box-decoration\": [{\n \"box-decoration\": [\"slice\", \"clone\"]\n }],\n /**\n * Box Sizing\n * @see https://tailwindcss.com/docs/box-sizing\n */\n box: [{\n box: [\"border\", \"content\"]\n }],\n /**\n * Display\n * @see https://tailwindcss.com/docs/display\n */\n display: [\"block\", \"inline-block\", \"inline\", \"flex\", \"inline-flex\", \"table\", \"inline-table\", \"table-caption\", \"table-cell\", \"table-column\", \"table-column-group\", \"table-footer-group\", \"table-header-group\", \"table-row-group\", \"table-row\", \"flow-root\", \"grid\", \"inline-grid\", \"contents\", \"list-item\", \"hidden\"],\n /**\n * Floats\n * @see https://tailwindcss.com/docs/float\n */\n float: [{\n float: [\"right\", \"left\", \"none\", \"start\", \"end\"]\n }],\n /**\n * Clear\n * @see https://tailwindcss.com/docs/clear\n */\n clear: [{\n clear: [\"left\", \"right\", \"both\", \"none\", \"start\", \"end\"]\n }],\n /**\n * Isolation\n * @see https://tailwindcss.com/docs/isolation\n */\n isolation: [\"isolate\", \"isolation-auto\"],\n /**\n * Object Fit\n * @see https://tailwindcss.com/docs/object-fit\n */\n \"object-fit\": [{\n object: [\"contain\", \"cover\", \"fill\", \"none\", \"scale-down\"]\n }],\n /**\n * Object Position\n * @see https://tailwindcss.com/docs/object-position\n */\n \"object-position\": [{\n object: [...te(), E]\n }],\n /**\n * Overflow\n * @see https://tailwindcss.com/docs/overflow\n */\n overflow: [{\n overflow: We()\n }],\n /**\n * Overflow X\n * @see https://tailwindcss.com/docs/overflow\n */\n \"overflow-x\": [{\n \"overflow-x\": We()\n }],\n /**\n * Overflow Y\n * @see https://tailwindcss.com/docs/overflow\n */\n \"overflow-y\": [{\n \"overflow-y\": We()\n }],\n /**\n * Overscroll Behavior\n * @see https://tailwindcss.com/docs/overscroll-behavior\n */\n overscroll: [{\n overscroll: ae()\n }],\n /**\n * Overscroll Behavior X\n * @see https://tailwindcss.com/docs/overscroll-behavior\n */\n \"overscroll-x\": [{\n \"overscroll-x\": ae()\n }],\n /**\n * Overscroll Behavior Y\n * @see https://tailwindcss.com/docs/overscroll-behavior\n */\n \"overscroll-y\": [{\n \"overscroll-y\": ae()\n }],\n /**\n * Position\n * @see https://tailwindcss.com/docs/position\n */\n position: [\"static\", \"fixed\", \"absolute\", \"relative\", \"sticky\"],\n /**\n * Top / Right / Bottom / Left\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n inset: [{\n inset: [U]\n }],\n /**\n * Right / Left\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n \"inset-x\": [{\n \"inset-x\": [U]\n }],\n /**\n * Top / Bottom\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n \"inset-y\": [{\n \"inset-y\": [U]\n }],\n /**\n * Start\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n start: [{\n start: [U]\n }],\n /**\n * End\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n end: [{\n end: [U]\n }],\n /**\n * Top\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n top: [{\n top: [U]\n }],\n /**\n * Right\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n right: [{\n right: [U]\n }],\n /**\n * Bottom\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n bottom: [{\n bottom: [U]\n }],\n /**\n * Left\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n left: [{\n left: [U]\n }],\n /**\n * Visibility\n * @see https://tailwindcss.com/docs/visibility\n */\n visibility: [\"visible\", \"invisible\", \"collapse\"],\n /**\n * Z-Index\n * @see https://tailwindcss.com/docs/z-index\n */\n z: [{\n z: [\"auto\", Ht, E]\n }],\n // Flexbox and Grid\n /**\n * Flex Basis\n * @see https://tailwindcss.com/docs/flex-basis\n */\n basis: [{\n basis: V()\n }],\n /**\n * Flex Direction\n * @see https://tailwindcss.com/docs/flex-direction\n */\n \"flex-direction\": [{\n flex: [\"row\", \"row-reverse\", \"col\", \"col-reverse\"]\n }],\n /**\n * Flex Wrap\n * @see https://tailwindcss.com/docs/flex-wrap\n */\n \"flex-wrap\": [{\n flex: [\"wrap\", \"wrap-reverse\", \"nowrap\"]\n }],\n /**\n * Flex\n * @see https://tailwindcss.com/docs/flex\n */\n flex: [{\n flex: [\"1\", \"auto\", \"initial\", \"none\", E]\n }],\n /**\n * Flex Grow\n * @see https://tailwindcss.com/docs/flex-grow\n */\n grow: [{\n grow: xe()\n }],\n /**\n * Flex Shrink\n * @see https://tailwindcss.com/docs/flex-shrink\n */\n shrink: [{\n shrink: xe()\n }],\n /**\n * Order\n * @see https://tailwindcss.com/docs/order\n */\n order: [{\n order: [\"first\", \"last\", \"none\", Ht, E]\n }],\n /**\n * Grid Template Columns\n * @see https://tailwindcss.com/docs/grid-template-columns\n */\n \"grid-cols\": [{\n \"grid-cols\": [Gt]\n }],\n /**\n * Grid Column Start / End\n * @see https://tailwindcss.com/docs/grid-column\n */\n \"col-start-end\": [{\n col: [\"auto\", {\n span: [\"full\", Ht, E]\n }, E]\n }],\n /**\n * Grid Column Start\n * @see https://tailwindcss.com/docs/grid-column\n */\n \"col-start\": [{\n \"col-start\": le()\n }],\n /**\n * Grid Column End\n * @see https://tailwindcss.com/docs/grid-column\n */\n \"col-end\": [{\n \"col-end\": le()\n }],\n /**\n * Grid Template Rows\n * @see https://tailwindcss.com/docs/grid-template-rows\n */\n \"grid-rows\": [{\n \"grid-rows\": [Gt]\n }],\n /**\n * Grid Row Start / End\n * @see https://tailwindcss.com/docs/grid-row\n */\n \"row-start-end\": [{\n row: [\"auto\", {\n span: [Ht, E]\n }, E]\n }],\n /**\n * Grid Row Start\n * @see https://tailwindcss.com/docs/grid-row\n */\n \"row-start\": [{\n \"row-start\": le()\n }],\n /**\n * Grid Row End\n * @see https://tailwindcss.com/docs/grid-row\n */\n \"row-end\": [{\n \"row-end\": le()\n }],\n /**\n * Grid Auto Flow\n * @see https://tailwindcss.com/docs/grid-auto-flow\n */\n \"grid-flow\": [{\n \"grid-flow\": [\"row\", \"col\", \"dense\", \"row-dense\", \"col-dense\"]\n }],\n /**\n * Grid Auto Columns\n * @see https://tailwindcss.com/docs/grid-auto-columns\n */\n \"auto-cols\": [{\n \"auto-cols\": [\"auto\", \"min\", \"max\", \"fr\", E]\n }],\n /**\n * Grid Auto Rows\n * @see https://tailwindcss.com/docs/grid-auto-rows\n */\n \"auto-rows\": [{\n \"auto-rows\": [\"auto\", \"min\", \"max\", \"fr\", E]\n }],\n /**\n * Gap\n * @see https://tailwindcss.com/docs/gap\n */\n gap: [{\n gap: [F]\n }],\n /**\n * Gap X\n * @see https://tailwindcss.com/docs/gap\n */\n \"gap-x\": [{\n \"gap-x\": [F]\n }],\n /**\n * Gap Y\n * @see https://tailwindcss.com/docs/gap\n */\n \"gap-y\": [{\n \"gap-y\": [F]\n }],\n /**\n * Justify Content\n * @see https://tailwindcss.com/docs/justify-content\n */\n \"justify-content\": [{\n justify: [\"normal\", ...ye()]\n }],\n /**\n * Justify Items\n * @see https://tailwindcss.com/docs/justify-items\n */\n \"justify-items\": [{\n \"justify-items\": [\"start\", \"end\", \"center\", \"stretch\"]\n }],\n /**\n * Justify Self\n * @see https://tailwindcss.com/docs/justify-self\n */\n \"justify-self\": [{\n \"justify-self\": [\"auto\", \"start\", \"end\", \"center\", \"stretch\"]\n }],\n /**\n * Align Content\n * @see https://tailwindcss.com/docs/align-content\n */\n \"align-content\": [{\n content: [\"normal\", ...ye(), \"baseline\"]\n }],\n /**\n * Align Items\n * @see https://tailwindcss.com/docs/align-items\n */\n \"align-items\": [{\n items: [\"start\", \"end\", \"center\", \"baseline\", \"stretch\"]\n }],\n /**\n * Align Self\n * @see https://tailwindcss.com/docs/align-self\n */\n \"align-self\": [{\n self: [\"auto\", \"start\", \"end\", \"center\", \"stretch\", \"baseline\"]\n }],\n /**\n * Place Content\n * @see https://tailwindcss.com/docs/place-content\n */\n \"place-content\": [{\n \"place-content\": [...ye(), \"baseline\"]\n }],\n /**\n * Place Items\n * @see https://tailwindcss.com/docs/place-items\n */\n \"place-items\": [{\n \"place-items\": [\"start\", \"end\", \"center\", \"baseline\", \"stretch\"]\n }],\n /**\n * Place Self\n * @see https://tailwindcss.com/docs/place-self\n */\n \"place-self\": [{\n \"place-self\": [\"auto\", \"start\", \"end\", \"center\", \"stretch\"]\n }],\n // Spacing\n /**\n * Padding\n * @see https://tailwindcss.com/docs/padding\n */\n p: [{\n p: [X]\n }],\n /**\n * Padding X\n * @see https://tailwindcss.com/docs/padding\n */\n px: [{\n px: [X]\n }],\n /**\n * Padding Y\n * @see https://tailwindcss.com/docs/padding\n */\n py: [{\n py: [X]\n }],\n /**\n * Padding Start\n * @see https://tailwindcss.com/docs/padding\n */\n ps: [{\n ps: [X]\n }],\n /**\n * Padding End\n * @see https://tailwindcss.com/docs/padding\n */\n pe: [{\n pe: [X]\n }],\n /**\n * Padding Top\n * @see https://tailwindcss.com/docs/padding\n */\n pt: [{\n pt: [X]\n }],\n /**\n * Padding Right\n * @see https://tailwindcss.com/docs/padding\n */\n pr: [{\n pr: [X]\n }],\n /**\n * Padding Bottom\n * @see https://tailwindcss.com/docs/padding\n */\n pb: [{\n pb: [X]\n }],\n /**\n * Padding Left\n * @see https://tailwindcss.com/docs/padding\n */\n pl: [{\n pl: [X]\n }],\n /**\n * Margin\n * @see https://tailwindcss.com/docs/margin\n */\n m: [{\n m: [O]\n }],\n /**\n * Margin X\n * @see https://tailwindcss.com/docs/margin\n */\n mx: [{\n mx: [O]\n }],\n /**\n * Margin Y\n * @see https://tailwindcss.com/docs/margin\n */\n my: [{\n my: [O]\n }],\n /**\n * Margin Start\n * @see https://tailwindcss.com/docs/margin\n */\n ms: [{\n ms: [O]\n }],\n /**\n * Margin End\n * @see https://tailwindcss.com/docs/margin\n */\n me: [{\n me: [O]\n }],\n /**\n * Margin Top\n * @see https://tailwindcss.com/docs/margin\n */\n mt: [{\n mt: [O]\n }],\n /**\n * Margin Right\n * @see https://tailwindcss.com/docs/margin\n */\n mr: [{\n mr: [O]\n }],\n /**\n * Margin Bottom\n * @see https://tailwindcss.com/docs/margin\n */\n mb: [{\n mb: [O]\n }],\n /**\n * Margin Left\n * @see https://tailwindcss.com/docs/margin\n */\n ml: [{\n ml: [O]\n }],\n /**\n * Space Between X\n * @see https://tailwindcss.com/docs/space\n */\n \"space-x\": [{\n \"space-x\": [Ie]\n }],\n /**\n * Space Between X Reverse\n * @see https://tailwindcss.com/docs/space\n */\n \"space-x-reverse\": [\"space-x-reverse\"],\n /**\n * Space Between Y\n * @see https://tailwindcss.com/docs/space\n */\n \"space-y\": [{\n \"space-y\": [Ie]\n }],\n /**\n * Space Between Y Reverse\n * @see https://tailwindcss.com/docs/space\n */\n \"space-y-reverse\": [\"space-y-reverse\"],\n // Sizing\n /**\n * Width\n * @see https://tailwindcss.com/docs/width\n */\n w: [{\n w: [\"auto\", \"min\", \"max\", \"fit\", \"svw\", \"lvw\", \"dvw\", E, t]\n }],\n /**\n * Min-Width\n * @see https://tailwindcss.com/docs/min-width\n */\n \"min-w\": [{\n \"min-w\": [E, t, \"min\", \"max\", \"fit\"]\n }],\n /**\n * Max-Width\n * @see https://tailwindcss.com/docs/max-width\n */\n \"max-w\": [{\n \"max-w\": [E, t, \"none\", \"full\", \"min\", \"max\", \"fit\", \"prose\", {\n screen: [Ne]\n }, Ne]\n }],\n /**\n * Height\n * @see https://tailwindcss.com/docs/height\n */\n h: [{\n h: [E, t, \"auto\", \"min\", \"max\", \"fit\", \"svh\", \"lvh\", \"dvh\"]\n }],\n /**\n * Min-Height\n * @see https://tailwindcss.com/docs/min-height\n */\n \"min-h\": [{\n \"min-h\": [E, t, \"min\", \"max\", \"fit\", \"svh\", \"lvh\", \"dvh\"]\n }],\n /**\n * Max-Height\n * @see https://tailwindcss.com/docs/max-height\n */\n \"max-h\": [{\n \"max-h\": [E, t, \"min\", \"max\", \"fit\", \"svh\", \"lvh\", \"dvh\"]\n }],\n /**\n * Size\n * @see https://tailwindcss.com/docs/size\n */\n size: [{\n size: [E, t, \"auto\", \"min\", \"max\", \"fit\"]\n }],\n // Typography\n /**\n * Font Size\n * @see https://tailwindcss.com/docs/font-size\n */\n \"font-size\": [{\n text: [\"base\", Ne, Me]\n }],\n /**\n * Font Smoothing\n * @see https://tailwindcss.com/docs/font-smoothing\n */\n \"font-smoothing\": [\"antialiased\", \"subpixel-antialiased\"],\n /**\n * Font Style\n * @see https://tailwindcss.com/docs/font-style\n */\n \"font-style\": [\"italic\", \"not-italic\"],\n /**\n * Font Weight\n * @see https://tailwindcss.com/docs/font-weight\n */\n \"font-weight\": [{\n font: [\"thin\", \"extralight\", \"light\", \"normal\", \"medium\", \"semibold\", \"bold\", \"extrabold\", \"black\", Zr]\n }],\n /**\n * Font Family\n * @see https://tailwindcss.com/docs/font-family\n */\n \"font-family\": [{\n font: [Gt]\n }],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n \"fvn-normal\": [\"normal-nums\"],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n \"fvn-ordinal\": [\"ordinal\"],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n \"fvn-slashed-zero\": [\"slashed-zero\"],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n \"fvn-figure\": [\"lining-nums\", \"oldstyle-nums\"],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n \"fvn-spacing\": [\"proportional-nums\", \"tabular-nums\"],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n \"fvn-fraction\": [\"diagonal-fractions\", \"stacked-fractions\"],\n /**\n * Letter Spacing\n * @see https://tailwindcss.com/docs/letter-spacing\n */\n tracking: [{\n tracking: [\"tighter\", \"tight\", \"normal\", \"wide\", \"wider\", \"widest\", E]\n }],\n /**\n * Line Clamp\n * @see https://tailwindcss.com/docs/line-clamp\n */\n \"line-clamp\": [{\n \"line-clamp\": [\"none\", xt, Zr]\n }],\n /**\n * Line Height\n * @see https://tailwindcss.com/docs/line-height\n */\n leading: [{\n leading: [\"none\", \"tight\", \"snug\", \"normal\", \"relaxed\", \"loose\", Oe, E]\n }],\n /**\n * List Style Image\n * @see https://tailwindcss.com/docs/list-style-image\n */\n \"list-image\": [{\n \"list-image\": [\"none\", E]\n }],\n /**\n * List Style Type\n * @see https://tailwindcss.com/docs/list-style-type\n */\n \"list-style-type\": [{\n list: [\"none\", \"disc\", \"decimal\", E]\n }],\n /**\n * List Style Position\n * @see https://tailwindcss.com/docs/list-style-position\n */\n \"list-style-position\": [{\n list: [\"inside\", \"outside\"]\n }],\n /**\n * Placeholder Color\n * @deprecated since Tailwind CSS v3.0.0\n * @see https://tailwindcss.com/docs/placeholder-color\n */\n \"placeholder-color\": [{\n placeholder: [e]\n }],\n /**\n * Placeholder Opacity\n * @see https://tailwindcss.com/docs/placeholder-opacity\n */\n \"placeholder-opacity\": [{\n \"placeholder-opacity\": [M]\n }],\n /**\n * Text Alignment\n * @see https://tailwindcss.com/docs/text-align\n */\n \"text-alignment\": [{\n text: [\"left\", \"center\", \"right\", \"justify\", \"start\", \"end\"]\n }],\n /**\n * Text Color\n * @see https://tailwindcss.com/docs/text-color\n */\n \"text-color\": [{\n text: [e]\n }],\n /**\n * Text Opacity\n * @see https://tailwindcss.com/docs/text-opacity\n */\n \"text-opacity\": [{\n \"text-opacity\": [M]\n }],\n /**\n * Text Decoration\n * @see https://tailwindcss.com/docs/text-decoration\n */\n \"text-decoration\": [\"underline\", \"overline\", \"line-through\", \"no-underline\"],\n /**\n * Text Decoration Style\n * @see https://tailwindcss.com/docs/text-decoration-style\n */\n \"text-decoration-style\": [{\n decoration: [...oe(), \"wavy\"]\n }],\n /**\n * Text Decoration Thickness\n * @see https://tailwindcss.com/docs/text-decoration-thickness\n */\n \"text-decoration-thickness\": [{\n decoration: [\"auto\", \"from-font\", Oe, Me]\n }],\n /**\n * Text Underline Offset\n * @see https://tailwindcss.com/docs/text-underline-offset\n */\n \"underline-offset\": [{\n \"underline-offset\": [\"auto\", Oe, E]\n }],\n /**\n * Text Decoration Color\n * @see https://tailwindcss.com/docs/text-decoration-color\n */\n \"text-decoration-color\": [{\n decoration: [e]\n }],\n /**\n * Text Transform\n * @see https://tailwindcss.com/docs/text-transform\n */\n \"text-transform\": [\"uppercase\", \"lowercase\", \"capitalize\", \"normal-case\"],\n /**\n * Text Overflow\n * @see https://tailwindcss.com/docs/text-overflow\n */\n \"text-overflow\": [\"truncate\", \"text-ellipsis\", \"text-clip\"],\n /**\n * Text Wrap\n * @see https://tailwindcss.com/docs/text-wrap\n */\n \"text-wrap\": [{\n text: [\"wrap\", \"nowrap\", \"balance\", \"pretty\"]\n }],\n /**\n * Text Indent\n * @see https://tailwindcss.com/docs/text-indent\n */\n indent: [{\n indent: q()\n }],\n /**\n * Vertical Alignment\n * @see https://tailwindcss.com/docs/vertical-align\n */\n \"vertical-align\": [{\n align: [\"baseline\", \"top\", \"middle\", \"bottom\", \"text-top\", \"text-bottom\", \"sub\", \"super\", E]\n }],\n /**\n * Whitespace\n * @see https://tailwindcss.com/docs/whitespace\n */\n whitespace: [{\n whitespace: [\"normal\", \"nowrap\", \"pre\", \"pre-line\", \"pre-wrap\", \"break-spaces\"]\n }],\n /**\n * Word Break\n * @see https://tailwindcss.com/docs/word-break\n */\n break: [{\n break: [\"normal\", \"words\", \"all\", \"keep\"]\n }],\n /**\n * Hyphens\n * @see https://tailwindcss.com/docs/hyphens\n */\n hyphens: [{\n hyphens: [\"none\", \"manual\", \"auto\"]\n }],\n /**\n * Content\n * @see https://tailwindcss.com/docs/content\n */\n content: [{\n content: [\"none\", E]\n }],\n // Backgrounds\n /**\n * Background Attachment\n * @see https://tailwindcss.com/docs/background-attachment\n */\n \"bg-attachment\": [{\n bg: [\"fixed\", \"local\", \"scroll\"]\n }],\n /**\n * Background Clip\n * @see https://tailwindcss.com/docs/background-clip\n */\n \"bg-clip\": [{\n \"bg-clip\": [\"border\", \"padding\", \"content\", \"text\"]\n }],\n /**\n * Background Opacity\n * @deprecated since Tailwind CSS v3.0.0\n * @see https://tailwindcss.com/docs/background-opacity\n */\n \"bg-opacity\": [{\n \"bg-opacity\": [M]\n }],\n /**\n * Background Origin\n * @see https://tailwindcss.com/docs/background-origin\n */\n \"bg-origin\": [{\n \"bg-origin\": [\"border\", \"padding\", \"content\"]\n }],\n /**\n * Background Position\n * @see https://tailwindcss.com/docs/background-position\n */\n \"bg-position\": [{\n bg: [...te(), ya]\n }],\n /**\n * Background Repeat\n * @see https://tailwindcss.com/docs/background-repeat\n */\n \"bg-repeat\": [{\n bg: [\"no-repeat\", {\n repeat: [\"\", \"x\", \"y\", \"round\", \"space\"]\n }]\n }],\n /**\n * Background Size\n * @see https://tailwindcss.com/docs/background-size\n */\n \"bg-size\": [{\n bg: [\"auto\", \"cover\", \"contain\", wa]\n }],\n /**\n * Background Image\n * @see https://tailwindcss.com/docs/background-image\n */\n \"bg-image\": [{\n bg: [\"none\", {\n \"gradient-to\": [\"t\", \"tr\", \"r\", \"br\", \"b\", \"bl\", \"l\", \"tl\"]\n }, _a]\n }],\n /**\n * Background Color\n * @see https://tailwindcss.com/docs/background-color\n */\n \"bg-color\": [{\n bg: [e]\n }],\n /**\n * Gradient Color Stops From Position\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n \"gradient-from-pos\": [{\n from: [j]\n }],\n /**\n * Gradient Color Stops Via Position\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n \"gradient-via-pos\": [{\n via: [j]\n }],\n /**\n * Gradient Color Stops To Position\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n \"gradient-to-pos\": [{\n to: [j]\n }],\n /**\n * Gradient Color Stops From\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n \"gradient-from\": [{\n from: [H]\n }],\n /**\n * Gradient Color Stops Via\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n \"gradient-via\": [{\n via: [H]\n }],\n /**\n * Gradient Color Stops To\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n \"gradient-to\": [{\n to: [H]\n }],\n // Borders\n /**\n * Border Radius\n * @see https://tailwindcss.com/docs/border-radius\n */\n rounded: [{\n rounded: [n]\n }],\n /**\n * Border Radius Start\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-s\": [{\n \"rounded-s\": [n]\n }],\n /**\n * Border Radius End\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-e\": [{\n \"rounded-e\": [n]\n }],\n /**\n * Border Radius Top\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-t\": [{\n \"rounded-t\": [n]\n }],\n /**\n * Border Radius Right\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-r\": [{\n \"rounded-r\": [n]\n }],\n /**\n * Border Radius Bottom\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-b\": [{\n \"rounded-b\": [n]\n }],\n /**\n * Border Radius Left\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-l\": [{\n \"rounded-l\": [n]\n }],\n /**\n * Border Radius Start Start\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-ss\": [{\n \"rounded-ss\": [n]\n }],\n /**\n * Border Radius Start End\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-se\": [{\n \"rounded-se\": [n]\n }],\n /**\n * Border Radius End End\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-ee\": [{\n \"rounded-ee\": [n]\n }],\n /**\n * Border Radius End Start\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-es\": [{\n \"rounded-es\": [n]\n }],\n /**\n * Border Radius Top Left\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-tl\": [{\n \"rounded-tl\": [n]\n }],\n /**\n * Border Radius Top Right\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-tr\": [{\n \"rounded-tr\": [n]\n }],\n /**\n * Border Radius Bottom Right\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-br\": [{\n \"rounded-br\": [n]\n }],\n /**\n * Border Radius Bottom Left\n * @see https://tailwindcss.com/docs/border-radius\n */\n \"rounded-bl\": [{\n \"rounded-bl\": [n]\n }],\n /**\n * Border Width\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w\": [{\n border: [v]\n }],\n /**\n * Border Width X\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w-x\": [{\n \"border-x\": [v]\n }],\n /**\n * Border Width Y\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w-y\": [{\n \"border-y\": [v]\n }],\n /**\n * Border Width Start\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w-s\": [{\n \"border-s\": [v]\n }],\n /**\n * Border Width End\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w-e\": [{\n \"border-e\": [v]\n }],\n /**\n * Border Width Top\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w-t\": [{\n \"border-t\": [v]\n }],\n /**\n * Border Width Right\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w-r\": [{\n \"border-r\": [v]\n }],\n /**\n * Border Width Bottom\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w-b\": [{\n \"border-b\": [v]\n }],\n /**\n * Border Width Left\n * @see https://tailwindcss.com/docs/border-width\n */\n \"border-w-l\": [{\n \"border-l\": [v]\n }],\n /**\n * Border Opacity\n * @see https://tailwindcss.com/docs/border-opacity\n */\n \"border-opacity\": [{\n \"border-opacity\": [M]\n }],\n /**\n * Border Style\n * @see https://tailwindcss.com/docs/border-style\n */\n \"border-style\": [{\n border: [...oe(), \"hidden\"]\n }],\n /**\n * Divide Width X\n * @see https://tailwindcss.com/docs/divide-width\n */\n \"divide-x\": [{\n \"divide-x\": [v]\n }],\n /**\n * Divide Width X Reverse\n * @see https://tailwindcss.com/docs/divide-width\n */\n \"divide-x-reverse\": [\"divide-x-reverse\"],\n /**\n * Divide Width Y\n * @see https://tailwindcss.com/docs/divide-width\n */\n \"divide-y\": [{\n \"divide-y\": [v]\n }],\n /**\n * Divide Width Y Reverse\n * @see https://tailwindcss.com/docs/divide-width\n */\n \"divide-y-reverse\": [\"divide-y-reverse\"],\n /**\n * Divide Opacity\n * @see https://tailwindcss.com/docs/divide-opacity\n */\n \"divide-opacity\": [{\n \"divide-opacity\": [M]\n }],\n /**\n * Divide Style\n * @see https://tailwindcss.com/docs/divide-style\n */\n \"divide-style\": [{\n divide: oe()\n }],\n /**\n * Border Color\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color\": [{\n border: [r]\n }],\n /**\n * Border Color X\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color-x\": [{\n \"border-x\": [r]\n }],\n /**\n * Border Color Y\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color-y\": [{\n \"border-y\": [r]\n }],\n /**\n * Border Color S\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color-s\": [{\n \"border-s\": [r]\n }],\n /**\n * Border Color E\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color-e\": [{\n \"border-e\": [r]\n }],\n /**\n * Border Color Top\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color-t\": [{\n \"border-t\": [r]\n }],\n /**\n * Border Color Right\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color-r\": [{\n \"border-r\": [r]\n }],\n /**\n * Border Color Bottom\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color-b\": [{\n \"border-b\": [r]\n }],\n /**\n * Border Color Left\n * @see https://tailwindcss.com/docs/border-color\n */\n \"border-color-l\": [{\n \"border-l\": [r]\n }],\n /**\n * Divide Color\n * @see https://tailwindcss.com/docs/divide-color\n */\n \"divide-color\": [{\n divide: [r]\n }],\n /**\n * Outline Style\n * @see https://tailwindcss.com/docs/outline-style\n */\n \"outline-style\": [{\n outline: [\"\", ...oe()]\n }],\n /**\n * Outline Offset\n * @see https://tailwindcss.com/docs/outline-offset\n */\n \"outline-offset\": [{\n \"outline-offset\": [Oe, E]\n }],\n /**\n * Outline Width\n * @see https://tailwindcss.com/docs/outline-width\n */\n \"outline-w\": [{\n outline: [Oe, Me]\n }],\n /**\n * Outline Color\n * @see https://tailwindcss.com/docs/outline-color\n */\n \"outline-color\": [{\n outline: [e]\n }],\n /**\n * Ring Width\n * @see https://tailwindcss.com/docs/ring-width\n */\n \"ring-w\": [{\n ring: we()\n }],\n /**\n * Ring Width Inset\n * @see https://tailwindcss.com/docs/ring-width\n */\n \"ring-w-inset\": [\"ring-inset\"],\n /**\n * Ring Color\n * @see https://tailwindcss.com/docs/ring-color\n */\n \"ring-color\": [{\n ring: [e]\n }],\n /**\n * Ring Opacity\n * @see https://tailwindcss.com/docs/ring-opacity\n */\n \"ring-opacity\": [{\n \"ring-opacity\": [M]\n }],\n /**\n * Ring Offset Width\n * @see https://tailwindcss.com/docs/ring-offset-width\n */\n \"ring-offset-w\": [{\n \"ring-offset\": [Oe, Me]\n }],\n /**\n * Ring Offset Color\n * @see https://tailwindcss.com/docs/ring-offset-color\n */\n \"ring-offset-color\": [{\n \"ring-offset\": [e]\n }],\n // Effects\n /**\n * Box Shadow\n * @see https://tailwindcss.com/docs/box-shadow\n */\n shadow: [{\n shadow: [\"\", \"inner\", \"none\", Ne, Ca]\n }],\n /**\n * Box Shadow Color\n * @see https://tailwindcss.com/docs/box-shadow-color\n */\n \"shadow-color\": [{\n shadow: [Gt]\n }],\n /**\n * Opacity\n * @see https://tailwindcss.com/docs/opacity\n */\n opacity: [{\n opacity: [M]\n }],\n /**\n * Mix Blend Mode\n * @see https://tailwindcss.com/docs/mix-blend-mode\n */\n \"mix-blend\": [{\n \"mix-blend\": [...Te(), \"plus-lighter\", \"plus-darker\"]\n }],\n /**\n * Background Blend Mode\n * @see https://tailwindcss.com/docs/background-blend-mode\n */\n \"bg-blend\": [{\n \"bg-blend\": Te()\n }],\n // Filters\n /**\n * Filter\n * @deprecated since Tailwind CSS v3.0.0\n * @see https://tailwindcss.com/docs/filter\n */\n filter: [{\n filter: [\"\", \"none\"]\n }],\n /**\n * Blur\n * @see https://tailwindcss.com/docs/blur\n */\n blur: [{\n blur: [o]\n }],\n /**\n * Brightness\n * @see https://tailwindcss.com/docs/brightness\n */\n brightness: [{\n brightness: [s]\n }],\n /**\n * Contrast\n * @see https://tailwindcss.com/docs/contrast\n */\n contrast: [{\n contrast: [y]\n }],\n /**\n * Drop Shadow\n * @see https://tailwindcss.com/docs/drop-shadow\n */\n \"drop-shadow\": [{\n \"drop-shadow\": [\"\", \"none\", Ne, E]\n }],\n /**\n * Grayscale\n * @see https://tailwindcss.com/docs/grayscale\n */\n grayscale: [{\n grayscale: [b]\n }],\n /**\n * Hue Rotate\n * @see https://tailwindcss.com/docs/hue-rotate\n */\n \"hue-rotate\": [{\n \"hue-rotate\": [x]\n }],\n /**\n * Invert\n * @see https://tailwindcss.com/docs/invert\n */\n invert: [{\n invert: [k]\n }],\n /**\n * Saturate\n * @see https://tailwindcss.com/docs/saturate\n */\n saturate: [{\n saturate: [J]\n }],\n /**\n * Sepia\n * @see https://tailwindcss.com/docs/sepia\n */\n sepia: [{\n sepia: [N]\n }],\n /**\n * Backdrop Filter\n * @deprecated since Tailwind CSS v3.0.0\n * @see https://tailwindcss.com/docs/backdrop-filter\n */\n \"backdrop-filter\": [{\n \"backdrop-filter\": [\"\", \"none\"]\n }],\n /**\n * Backdrop Blur\n * @see https://tailwindcss.com/docs/backdrop-blur\n */\n \"backdrop-blur\": [{\n \"backdrop-blur\": [o]\n }],\n /**\n * Backdrop Brightness\n * @see https://tailwindcss.com/docs/backdrop-brightness\n */\n \"backdrop-brightness\": [{\n \"backdrop-brightness\": [s]\n }],\n /**\n * Backdrop Contrast\n * @see https://tailwindcss.com/docs/backdrop-contrast\n */\n \"backdrop-contrast\": [{\n \"backdrop-contrast\": [y]\n }],\n /**\n * Backdrop Grayscale\n * @see https://tailwindcss.com/docs/backdrop-grayscale\n */\n \"backdrop-grayscale\": [{\n \"backdrop-grayscale\": [b]\n }],\n /**\n * Backdrop Hue Rotate\n * @see https://tailwindcss.com/docs/backdrop-hue-rotate\n */\n \"backdrop-hue-rotate\": [{\n \"backdrop-hue-rotate\": [x]\n }],\n /**\n * Backdrop Invert\n * @see https://tailwindcss.com/docs/backdrop-invert\n */\n \"backdrop-invert\": [{\n \"backdrop-invert\": [k]\n }],\n /**\n * Backdrop Opacity\n * @see https://tailwindcss.com/docs/backdrop-opacity\n */\n \"backdrop-opacity\": [{\n \"backdrop-opacity\": [M]\n }],\n /**\n * Backdrop Saturate\n * @see https://tailwindcss.com/docs/backdrop-saturate\n */\n \"backdrop-saturate\": [{\n \"backdrop-saturate\": [J]\n }],\n /**\n * Backdrop Sepia\n * @see https://tailwindcss.com/docs/backdrop-sepia\n */\n \"backdrop-sepia\": [{\n \"backdrop-sepia\": [N]\n }],\n // Tables\n /**\n * Border Collapse\n * @see https://tailwindcss.com/docs/border-collapse\n */\n \"border-collapse\": [{\n border: [\"collapse\", \"separate\"]\n }],\n /**\n * Border Spacing\n * @see https://tailwindcss.com/docs/border-spacing\n */\n \"border-spacing\": [{\n \"border-spacing\": [i]\n }],\n /**\n * Border Spacing X\n * @see https://tailwindcss.com/docs/border-spacing\n */\n \"border-spacing-x\": [{\n \"border-spacing-x\": [i]\n }],\n /**\n * Border Spacing Y\n * @see https://tailwindcss.com/docs/border-spacing\n */\n \"border-spacing-y\": [{\n \"border-spacing-y\": [i]\n }],\n /**\n * Table Layout\n * @see https://tailwindcss.com/docs/table-layout\n */\n \"table-layout\": [{\n table: [\"auto\", \"fixed\"]\n }],\n /**\n * Caption Side\n * @see https://tailwindcss.com/docs/caption-side\n */\n caption: [{\n caption: [\"top\", \"bottom\"]\n }],\n // Transitions and Animation\n /**\n * Tranisition Property\n * @see https://tailwindcss.com/docs/transition-property\n */\n transition: [{\n transition: [\"none\", \"all\", \"\", \"colors\", \"opacity\", \"shadow\", \"transform\", E]\n }],\n /**\n * Transition Duration\n * @see https://tailwindcss.com/docs/transition-duration\n */\n duration: [{\n duration: f()\n }],\n /**\n * Transition Timing Function\n * @see https://tailwindcss.com/docs/transition-timing-function\n */\n ease: [{\n ease: [\"linear\", \"in\", \"out\", \"in-out\", E]\n }],\n /**\n * Transition Delay\n * @see https://tailwindcss.com/docs/transition-delay\n */\n delay: [{\n delay: f()\n }],\n /**\n * Animation\n * @see https://tailwindcss.com/docs/animation\n */\n animate: [{\n animate: [\"none\", \"spin\", \"ping\", \"pulse\", \"bounce\", E]\n }],\n // Transforms\n /**\n * Transform\n * @see https://tailwindcss.com/docs/transform\n */\n transform: [{\n transform: [\"\", \"gpu\", \"none\"]\n }],\n /**\n * Scale\n * @see https://tailwindcss.com/docs/scale\n */\n scale: [{\n scale: [ie]\n }],\n /**\n * Scale X\n * @see https://tailwindcss.com/docs/scale\n */\n \"scale-x\": [{\n \"scale-x\": [ie]\n }],\n /**\n * Scale Y\n * @see https://tailwindcss.com/docs/scale\n */\n \"scale-y\": [{\n \"scale-y\": [ie]\n }],\n /**\n * Rotate\n * @see https://tailwindcss.com/docs/rotate\n */\n rotate: [{\n rotate: [Ht, E]\n }],\n /**\n * Translate X\n * @see https://tailwindcss.com/docs/translate\n */\n \"translate-x\": [{\n \"translate-x\": [ve]\n }],\n /**\n * Translate Y\n * @see https://tailwindcss.com/docs/translate\n */\n \"translate-y\": [{\n \"translate-y\": [ve]\n }],\n /**\n * Skew X\n * @see https://tailwindcss.com/docs/skew\n */\n \"skew-x\": [{\n \"skew-x\": [Le]\n }],\n /**\n * Skew Y\n * @see https://tailwindcss.com/docs/skew\n */\n \"skew-y\": [{\n \"skew-y\": [Le]\n }],\n /**\n * Transform Origin\n * @see https://tailwindcss.com/docs/transform-origin\n */\n \"transform-origin\": [{\n origin: [\"center\", \"top\", \"top-right\", \"right\", \"bottom-right\", \"bottom\", \"bottom-left\", \"left\", \"top-left\", E]\n }],\n // Interactivity\n /**\n * Accent Color\n * @see https://tailwindcss.com/docs/accent-color\n */\n accent: [{\n accent: [\"auto\", e]\n }],\n /**\n * Appearance\n * @see https://tailwindcss.com/docs/appearance\n */\n appearance: [{\n appearance: [\"none\", \"auto\"]\n }],\n /**\n * Cursor\n * @see https://tailwindcss.com/docs/cursor\n */\n cursor: [{\n cursor: [\"auto\", \"default\", \"pointer\", \"wait\", \"text\", \"move\", \"help\", \"not-allowed\", \"none\", \"context-menu\", \"progress\", \"cell\", \"crosshair\", \"vertical-text\", \"alias\", \"copy\", \"no-drop\", \"grab\", \"grabbing\", \"all-scroll\", \"col-resize\", \"row-resize\", \"n-resize\", \"e-resize\", \"s-resize\", \"w-resize\", \"ne-resize\", \"nw-resize\", \"se-resize\", \"sw-resize\", \"ew-resize\", \"ns-resize\", \"nesw-resize\", \"nwse-resize\", \"zoom-in\", \"zoom-out\", E]\n }],\n /**\n * Caret Color\n * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities\n */\n \"caret-color\": [{\n caret: [e]\n }],\n /**\n * Pointer Events\n * @see https://tailwindcss.com/docs/pointer-events\n */\n \"pointer-events\": [{\n \"pointer-events\": [\"none\", \"auto\"]\n }],\n /**\n * Resize\n * @see https://tailwindcss.com/docs/resize\n */\n resize: [{\n resize: [\"none\", \"y\", \"x\", \"\"]\n }],\n /**\n * Scroll Behavior\n * @see https://tailwindcss.com/docs/scroll-behavior\n */\n \"scroll-behavior\": [{\n scroll: [\"auto\", \"smooth\"]\n }],\n /**\n * Scroll Margin\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-m\": [{\n \"scroll-m\": q()\n }],\n /**\n * Scroll Margin X\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-mx\": [{\n \"scroll-mx\": q()\n }],\n /**\n * Scroll Margin Y\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-my\": [{\n \"scroll-my\": q()\n }],\n /**\n * Scroll Margin Start\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-ms\": [{\n \"scroll-ms\": q()\n }],\n /**\n * Scroll Margin End\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-me\": [{\n \"scroll-me\": q()\n }],\n /**\n * Scroll Margin Top\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-mt\": [{\n \"scroll-mt\": q()\n }],\n /**\n * Scroll Margin Right\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-mr\": [{\n \"scroll-mr\": q()\n }],\n /**\n * Scroll Margin Bottom\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-mb\": [{\n \"scroll-mb\": q()\n }],\n /**\n * Scroll Margin Left\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n \"scroll-ml\": [{\n \"scroll-ml\": q()\n }],\n /**\n * Scroll Padding\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-p\": [{\n \"scroll-p\": q()\n }],\n /**\n * Scroll Padding X\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-px\": [{\n \"scroll-px\": q()\n }],\n /**\n * Scroll Padding Y\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-py\": [{\n \"scroll-py\": q()\n }],\n /**\n * Scroll Padding Start\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-ps\": [{\n \"scroll-ps\": q()\n }],\n /**\n * Scroll Padding End\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-pe\": [{\n \"scroll-pe\": q()\n }],\n /**\n * Scroll Padding Top\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-pt\": [{\n \"scroll-pt\": q()\n }],\n /**\n * Scroll Padding Right\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-pr\": [{\n \"scroll-pr\": q()\n }],\n /**\n * Scroll Padding Bottom\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-pb\": [{\n \"scroll-pb\": q()\n }],\n /**\n * Scroll Padding Left\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n \"scroll-pl\": [{\n \"scroll-pl\": q()\n }],\n /**\n * Scroll Snap Align\n * @see https://tailwindcss.com/docs/scroll-snap-align\n */\n \"snap-align\": [{\n snap: [\"start\", \"end\", \"center\", \"align-none\"]\n }],\n /**\n * Scroll Snap Stop\n * @see https://tailwindcss.com/docs/scroll-snap-stop\n */\n \"snap-stop\": [{\n snap: [\"normal\", \"always\"]\n }],\n /**\n * Scroll Snap Type\n * @see https://tailwindcss.com/docs/scroll-snap-type\n */\n \"snap-type\": [{\n snap: [\"none\", \"x\", \"y\", \"both\"]\n }],\n /**\n * Scroll Snap Type Strictness\n * @see https://tailwindcss.com/docs/scroll-snap-type\n */\n \"snap-strictness\": [{\n snap: [\"mandatory\", \"proximity\"]\n }],\n /**\n * Touch Action\n * @see https://tailwindcss.com/docs/touch-action\n */\n touch: [{\n touch: [\"auto\", \"none\", \"manipulation\"]\n }],\n /**\n * Touch Action X\n * @see https://tailwindcss.com/docs/touch-action\n */\n \"touch-x\": [{\n \"touch-pan\": [\"x\", \"left\", \"right\"]\n }],\n /**\n * Touch Action Y\n * @see https://tailwindcss.com/docs/touch-action\n */\n \"touch-y\": [{\n \"touch-pan\": [\"y\", \"up\", \"down\"]\n }],\n /**\n * Touch Action Pinch Zoom\n * @see https://tailwindcss.com/docs/touch-action\n */\n \"touch-pz\": [\"touch-pinch-zoom\"],\n /**\n * User Select\n * @see https://tailwindcss.com/docs/user-select\n */\n select: [{\n select: [\"none\", \"text\", \"all\", \"auto\"]\n }],\n /**\n * Will Change\n * @see https://tailwindcss.com/docs/will-change\n */\n \"will-change\": [{\n \"will-change\": [\"auto\", \"scroll\", \"contents\", \"transform\", E]\n }],\n // SVG\n /**\n * Fill\n * @see https://tailwindcss.com/docs/fill\n */\n fill: [{\n fill: [e, \"none\"]\n }],\n /**\n * Stroke Width\n * @see https://tailwindcss.com/docs/stroke-width\n */\n \"stroke-w\": [{\n stroke: [Oe, Me, Zr]\n }],\n /**\n * Stroke\n * @see https://tailwindcss.com/docs/stroke\n */\n stroke: [{\n stroke: [e, \"none\"]\n }],\n // Accessibility\n /**\n * Screen Readers\n * @see https://tailwindcss.com/docs/screen-readers\n */\n sr: [\"sr-only\", \"not-sr-only\"],\n /**\n * Forced Color Adjust\n * @see https://tailwindcss.com/docs/forced-color-adjust\n */\n \"forced-color-adjust\": [{\n \"forced-color-adjust\": [\"auto\", \"none\"]\n }]\n },\n conflictingClassGroups: {\n overflow: [\"overflow-x\", \"overflow-y\"],\n overscroll: [\"overscroll-x\", \"overscroll-y\"],\n inset: [\"inset-x\", \"inset-y\", \"start\", \"end\", \"top\", \"right\", \"bottom\", \"left\"],\n \"inset-x\": [\"right\", \"left\"],\n \"inset-y\": [\"top\", \"bottom\"],\n flex: [\"basis\", \"grow\", \"shrink\"],\n gap: [\"gap-x\", \"gap-y\"],\n p: [\"px\", \"py\", \"ps\", \"pe\", \"pt\", \"pr\", \"pb\", \"pl\"],\n px: [\"pr\", \"pl\"],\n py: [\"pt\", \"pb\"],\n m: [\"mx\", \"my\", \"ms\", \"me\", \"mt\", \"mr\", \"mb\", \"ml\"],\n mx: [\"mr\", \"ml\"],\n my: [\"mt\", \"mb\"],\n size: [\"w\", \"h\"],\n \"font-size\": [\"leading\"],\n \"fvn-normal\": [\"fvn-ordinal\", \"fvn-slashed-zero\", \"fvn-figure\", \"fvn-spacing\", \"fvn-fraction\"],\n \"fvn-ordinal\": [\"fvn-normal\"],\n \"fvn-slashed-zero\": [\"fvn-normal\"],\n \"fvn-figure\": [\"fvn-normal\"],\n \"fvn-spacing\": [\"fvn-normal\"],\n \"fvn-fraction\": [\"fvn-normal\"],\n \"line-clamp\": [\"display\", \"overflow\"],\n rounded: [\"rounded-s\", \"rounded-e\", \"rounded-t\", \"rounded-r\", \"rounded-b\", \"rounded-l\", \"rounded-ss\", \"rounded-se\", \"rounded-ee\", \"rounded-es\", \"rounded-tl\", \"rounded-tr\", \"rounded-br\", \"rounded-bl\"],\n \"rounded-s\": [\"rounded-ss\", \"rounded-es\"],\n \"rounded-e\": [\"rounded-se\", \"rounded-ee\"],\n \"rounded-t\": [\"rounded-tl\", \"rounded-tr\"],\n \"rounded-r\": [\"rounded-tr\", \"rounded-br\"],\n \"rounded-b\": [\"rounded-br\", \"rounded-bl\"],\n \"rounded-l\": [\"rounded-tl\", \"rounded-bl\"],\n \"border-spacing\": [\"border-spacing-x\", \"border-spacing-y\"],\n \"border-w\": [\"border-w-s\", \"border-w-e\", \"border-w-t\", \"border-w-r\", \"border-w-b\", \"border-w-l\"],\n \"border-w-x\": [\"border-w-r\", \"border-w-l\"],\n \"border-w-y\": [\"border-w-t\", \"border-w-b\"],\n \"border-color\": [\"border-color-s\", \"border-color-e\", \"border-color-t\", \"border-color-r\", \"border-color-b\", \"border-color-l\"],\n \"border-color-x\": [\"border-color-r\", \"border-color-l\"],\n \"border-color-y\": [\"border-color-t\", \"border-color-b\"],\n \"scroll-m\": [\"scroll-mx\", \"scroll-my\", \"scroll-ms\", \"scroll-me\", \"scroll-mt\", \"scroll-mr\", \"scroll-mb\", \"scroll-ml\"],\n \"scroll-mx\": [\"scroll-mr\", \"scroll-ml\"],\n \"scroll-my\": [\"scroll-mt\", \"scroll-mb\"],\n \"scroll-p\": [\"scroll-px\", \"scroll-py\", \"scroll-ps\", \"scroll-pe\", \"scroll-pt\", \"scroll-pr\", \"scroll-pb\", \"scroll-pl\"],\n \"scroll-px\": [\"scroll-pr\", \"scroll-pl\"],\n \"scroll-py\": [\"scroll-pt\", \"scroll-pb\"],\n touch: [\"touch-x\", \"touch-y\", \"touch-pz\"],\n \"touch-x\": [\"touch\"],\n \"touch-y\": [\"touch\"],\n \"touch-pz\": [\"touch\"]\n },\n conflictingClassGroupModifiers: {\n \"font-size\": [\"leading\"]\n }\n };\n}, Pa = /* @__PURE__ */ ca(Oa);\nfunction g(...e) {\n return Pa(Ln(e));\n}\nvar Da = Object.defineProperty, Un = (e, t, o, s) => {\n for (var r = void 0, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(t, o, r) || r);\n return r && Da(t, o, r), r;\n};\nclass h extends W {\n constructor() {\n super(), this.customClass = \"\", this.customStyle = \"\";\n }\n getAttributesToExclude() {\n return [];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\"];\n }\n disconnectedCallback() {\n var t;\n super.disconnectedCallback(), (t = this.mutationObserver) == null || t.disconnect();\n }\n // Modified to capture class before removal\n removeParentAttributes() {\n this.getAttributesToRemoveFromParent().forEach((o) => {\n o === \"class\" && this.hasAttribute(\"class\") && (this.customClass = this.getAttribute(\"class\") || \"\"), o === \"style\" && this.hasAttribute(\"style\") && (this.customStyle = this.getAttribute(\"style\") || \"\"), this.hasAttribute(o) && this.removeAttribute(o);\n });\n }\n // Helper method to filter attributes based on exclusion rules\n getFilteredAttributes() {\n const t = {};\n return Array.from(this.attributes).forEach((o) => {\n this.getAttributesToExclude().includes(o.name) || (t[o.name] = o.value ?? \"\");\n }), t;\n }\n isCustomPropertySet(t) {\n const o = getComputedStyle(this).getPropertyValue(t).trim();\n return o !== \"inherit\" && o.length > 0;\n }\n applyCustomClass(t, o, s = \"\") {\n var n, i;\n let r = \"\";\n t.some((v) => this.isCustomPropertySet(v)) && (r = s), r && ((i = (n = this.shadowRoot) == null ? void 0 : n.querySelector(o)) == null || i.classList.add(r));\n }\n removeDuplicateContent() {\n var n;\n const t = document.createTreeWalker(\n this,\n NodeFilter.SHOW_TEXT | NodeFilter.SHOW_ELEMENT,\n {\n acceptNode: (i) => {\n var v;\n return i.nodeType === Node.COMMENT_NODE || i.nodeType === Node.TEXT_NODE && !((v = i.textContent) != null && v.trim()) ? NodeFilter.FILTER_REJECT : NodeFilter.FILTER_ACCEPT;\n }\n }\n ), o = /* @__PURE__ */ new Map(), s = [];\n let r;\n for (; r = t.nextNode(); ) {\n let i;\n if (r.nodeType === Node.TEXT_NODE) {\n const v = (n = r.textContent) == null ? void 0 : n.trim();\n if (!v) continue;\n i = `text:${v}`;\n } else if (r instanceof HTMLElement) {\n const v = Array.from(r.attributes).map((y) => `${y.name}=${y.value}`).sort().join(\":\");\n i = `element:${r.tagName}:${v}`;\n } else\n continue;\n if (o.has(i)) {\n const v = o.get(i);\n v && v.parentNode && s.push(v), o.set(i, r);\n } else\n o.set(i, r);\n }\n s.forEach((i) => {\n i.parentNode && (console.log(\"Removing duplicate:\", i), i.parentNode.removeChild(i));\n });\n }\n moveLightDomChildrenInto(t, o) {\n let s;\n if (o && o.length > 0) {\n s = o.filter(\n (r) => this.contains(r) && r !== t && !r.contains(t)\n );\n for (const r of s) {\n const n = Array.from(t.childNodes).find(\n (i) => {\n var v;\n return (v = i.isEqualNode) == null ? void 0 : v.call(i, r);\n }\n );\n n && t.removeChild(n);\n }\n } else\n s = Array.from(this.childNodes).filter(\n (r) => r !== t && !t.contains(r) && !r.contains(t)\n );\n for (const r of s)\n t.appendChild(r);\n }\n observeStyleAndClassSync(t) {\n this.mutationObserver = new MutationObserver((o) => {\n for (const s of o)\n if (s.type === \"attributes\") {\n if (s.attributeName === \"style\") {\n const r = this.getAttribute(\"style\") || \"\";\n r && (this.customStyle = r, this.removeAttribute(\"style\"));\n }\n if (s.attributeName === \"class\") {\n const r = this.getAttribute(\"class\") || \"\";\n r && (t.className = r, this.removeAttribute(\"class\"));\n }\n }\n }), this.mutationObserver.observe(this, {\n attributes: !0,\n attributeFilter: [\"style\", \"class\"]\n });\n }\n}\nUn([\n l({ type: String, reflect: !0 })\n], h.prototype, \"customClass\");\nUn([\n l({ type: String, reflect: !0 })\n], h.prototype, \"customStyle\");\nfunction qs() {\n const e = (/* @__PURE__ */ new Date()).getTime();\n return \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(\n /[xy]/g,\n function(o) {\n const s = (e + Math.random() * 16) % 16 | 0;\n return (o == \"x\" ? s : s & 3 | 8).toString(16);\n }\n );\n}\nconst ko = ct` \n@font-face {\n font-family: 'GeistSans';\n\n src: url('assets/fonts/Geist/GeistVariableVF.woff2') format('woff2');\n}\n\n/*\n! tailwindcss v3.4.10 | MIT License | https://tailwindcss.com\n*/\n\n/*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box;\n /* 1 */\n border-width: 0;\n /* 2 */\n border-style: solid;\n /* 2 */\n border-color: #e5e7eb;\n /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured sans font-family by default.\n5. Use the user's configured sans font-feature-settings by default.\n6. Use the user's configured sans font-variation-settings by default.\n7. Disable tap highlights on iOS\n*/\n\nhtml,\n:host {\n line-height: 1.5;\n /* 1 */\n -webkit-text-size-adjust: 100%;\n /* 2 */\n -moz-tab-size: 4;\n /* 3 */\n -o-tab-size: 4;\n tab-size: 4;\n /* 3 */\n font-family: var(--font-sans), ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n /* 4 */\n font-feature-settings: normal;\n /* 5 */\n font-variation-settings: normal;\n /* 6 */\n -webkit-tap-highlight-color: transparent;\n /* 7 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from html so users can set them as a class directly on the html element.\n*/\n\nbody {\n margin: 0;\n /* 1 */\n line-height: inherit;\n /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0;\n /* 1 */\n color: inherit;\n /* 2 */\n border-top-width: 1px;\n /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured mono font-family by default.\n2. Use the user's configured mono font-feature-settings by default.\n3. Use the user's configured mono font-variation-settings by default.\n4. Correct the odd em font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n /* 1 */\n font-feature-settings: normal;\n /* 2 */\n font-variation-settings: normal;\n /* 3 */\n font-size: 1em;\n /* 4 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent sub and sup elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0;\n /* 1 */\n border-color: inherit;\n /* 2 */\n border-collapse: collapse;\n /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n /* 1 */\n font-feature-settings: inherit;\n /* 1 */\n font-variation-settings: inherit;\n /* 1 */\n font-size: 100%;\n /* 1 */\n font-weight: inherit;\n /* 1 */\n line-height: inherit;\n /* 1 */\n letter-spacing: inherit;\n /* 1 */\n color: inherit;\n /* 1 */\n margin: 0;\n /* 2 */\n padding: 0;\n /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\ninput:where([type='button']),\ninput:where([type='reset']),\ninput:where([type='submit']) {\n -webkit-appearance: button;\n /* 1 */\n background-color: transparent;\n /* 2 */\n background-image: none;\n /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional :invalid styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield;\n /* 1 */\n outline-offset: -2px;\n /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to inherit in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n /* 1 */\n font: inherit;\n /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nReset default styling for dialogs.\n*/\n\ndialog {\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1;\n /* 1 */\n color: #9ca3af;\n /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n /* 1 */\n color: #9ca3af;\n /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements display: block by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add vertical-align: middle to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n /* 1 */\n vertical-align: middle;\n /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n\n[hidden] {\n display: none;\n}\n\n:root {\n --background: 0 0% 100%;\n --foreground: 240 10% 3.9%;\n --card: 0 0% 100%;\n --card-foreground: 240 10% 3.9%;\n --popover: 0 0% 100%;\n --popover-foreground: 240 10% 3.9%;\n --primary: 240 5.9% 10%;\n --primary-foreground: 0 0% 98%;\n --secondary: 240 4.8% 95.9%;\n --secondary-foreground: 240 5.9% 10%;\n --muted: 240 4.8% 95.9%;\n --muted-foreground: 240 4% 46%;\n --accent: 240 5% 96%;\n --accent-foreground: 240 6% 10%;\n --destructive: 0 84.2% 60.2%;\n --destructive-foreground: 0 0% 98%;\n --border: 240 5.9% 90%;\n --input: 240 5.9% 90%;\n --ring: 240 5.9% 10%;\n --radius: 0.5rem;\n --green-100: #d4f8e8;\n --green-200: #bbf7d0;\n --green-800: #166534;\n --red-100: #fddddd;\n --red-200: #fecaca;\n --red-800: #991b1b;\n --yellow-100: #fef4d9;\n --yellow-200: #fef08a;\n --yellow-800: #854d0e;\n --blue-100: #dbeafe;\n --blue-200: #bfdbfe;\n --blue-800: #1e40af;\n}\n\n.dark {\n --background: 240 10% 4%;\n --foreground: 0 0% 98%;\n --card: 240 10% 3.9%;\n --card-foreground: 0 0% 98%;\n --popover: 240 10% 3.9%;\n --popover-foreground: 0 0% 98%;\n --primary: 0 0% 98%;\n --primary-foreground: 240 5.9% 10%;\n --secondary: 240 3.7% 15.9%;\n --secondary-foreground: 0 0% 98%;\n --muted: 240 3.7% 15.9%;\n --muted-foreground: 240 5% 65%;\n --accent: 240 4% 16%;\n --accent-foreground: 0 0% 98%;\n --destructive: 0 62.8% 30.6%;\n --destructive-foreground: 0 0% 98%;\n --border: 240 3.7% 15.9%;\n --input: 240 3.7% 15.9%;\n --ring: 240 4.9% 83.9%;\n --green-100: #d4f8e8;\n --green-200: #bbf7d0;\n --green-800: #166534;\n --red-100: #fddddd;\n --red-200: #fecaca;\n --red-800: #991b1b;\n --yellow-100: #fef4d9;\n --yellow-200: #fef08a;\n --yellow-800: #854d0e;\n --blue-100: #dbeafe;\n --blue-200: #bfdbfe;\n --blue-800: #1e40af;\n}\n\n* {\n border-color: hsl(var(--border));\n font-family: GeistSans, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n}\n\nbody {\n background-color: hsl(var(--background));\n color: hsl(var(--foreground));\n font-synthesis-weight: none;\n text-rendering: optimizeLegibility;\n}\n\n/* p {\n margin-top: 6px;\n margin-block-start: 6px;\n } */\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n.container {\n width: 100%;\n margin-right: auto;\n margin-left: auto;\n padding-right: 2rem;\n padding-left: 2rem;\n}\n\n@media (min-width: 1400px) {\n .container {\n max-width: 1400px;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.pointer-events-none {\n pointer-events: none;\n}\n\n.pointer-events-auto {\n pointer-events: auto;\n}\n\n.visible {\n visibility: visible;\n}\n\n.invisible {\n visibility: hidden;\n}\n\n.collapse {\n visibility: collapse;\n}\n\n.static {\n position: static;\n}\n\n.fixed {\n position: fixed;\n}\n\n.absolute {\n position: absolute;\n}\n\n.relative {\n position: relative;\n}\n\n.inset-0 {\n inset: 0px;\n}\n\n.bottom-0 {\n bottom: 0px;\n}\n\n.end-3 {\n inset-inline-end: 0.75rem;\n}\n\n.left-2 {\n left: 0.5rem;\n}\n\n.left-\\\\[50\\\\%\\\\] {\n left: 50%;\n}\n\n.right-0 {\n right: 0px;\n}\n\n.right-1 {\n right: 0.25rem;\n}\n\n.right-4 {\n right: 1rem;\n}\n\n.top-0 {\n top: 0px;\n}\n\n.top-1 {\n top: 0.25rem;\n}\n\n.top-4 {\n top: 1rem;\n}\n\n.top-\\\\[50\\\\%\\\\] {\n top: 50%;\n}\n\n.top-auto {\n top: auto;\n}\n\n.z-10 {\n z-index: 10;\n}\n\n.z-50 {\n z-index: 50;\n}\n\n.z-\\\\[100\\\\] {\n z-index: 100;\n}\n\n.col-span-2 {\n grid-column: span 2 / span 2;\n}\n\n.col-span-3 {\n grid-column: span 3 / span 3;\n}\n\n.m-5 {\n margin: 1.25rem;\n}\n\n.m-auto {\n margin: auto;\n}\n\n.-mx-1 {\n margin-left: -0.25rem;\n margin-right: -0.25rem;\n}\n\n.mx-1 {\n margin-left: 0.25rem;\n margin-right: 0.25rem;\n}\n\n.mx-2 {\n margin-left: 0.5rem;\n margin-right: 0.5rem;\n}\n\n.mx-3 {\n margin-left: 0.75rem;\n margin-right: 0.75rem;\n}\n\n.mx-5 {\n margin-left: 1.25rem;\n margin-right: 1.25rem;\n}\n\n.mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n.my-10 {\n margin-top: 2.5rem;\n margin-bottom: 2.5rem;\n}\n\n.my-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n}\n\n.my-4 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n}\n\n.my-6 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n}\n\n.mb-1 {\n margin-bottom: 0.25rem;\n}\n\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n\n.mb-6 {\n margin-bottom: 1.5rem;\n}\n\n.ml-auto {\n margin-left: auto;\n}\n\n.mr-10 {\n margin-right: 2.5rem;\n}\n\n.mr-2 {\n margin-right: 0.5rem;\n}\n\n.mt-1 {\n margin-top: 0.25rem;\n}\n\n.mt-2 {\n margin-top: 0.5rem;\n}\n\n.mt-4 {\n margin-top: 1rem;\n}\n\n.mt-5 {\n margin-top: 1.25rem;\n}\n\n.mt-6 {\n margin-top: 1.5rem;\n}\n\n.mt-7 {\n margin-top: 1.75rem;\n}\n\n.line-clamp-1 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n}\n\n.block {\n display: block;\n}\n\n.inline {\n display: inline;\n}\n\n.flex {\n display: flex;\n}\n\n\n\n.inline-flex {\n display: inline-flex;\n}\n\n.table {\n display: table;\n}\n\n.grid {\n display: grid;\n}\n\n.contents {\n display: contents;\n}\n\n.hidden {\n display: none;\n}\n\n.aspect-square {\n aspect-ratio: 1 / 1;\n}\n\n.size-24 {\n width: 6rem;\n height: 6rem;\n}\n\n.size-3 {\n width: 0.75rem;\n height: 0.75rem;\n}\n\n.size-3\\\\.5 {\n width: 0.875rem;\n height: 0.875rem;\n}\n\n.size-4 {\n width: 1rem;\n height: 1rem;\n}\n\n.size-max {\n width: -moz-max-content;\n width: max-content;\n height: -moz-max-content;\n height: max-content;\n}\n\n.h-0{\n height: 0px\n}\n.h-1 {\n height: 0.25rem;\n}\n\n.h-10 {\n height: 2.5rem;\n}\n\n.h-11 {\n height: 2.75rem;\n}\n\n.h-2 {\n height: 0.5rem;\n}\n\n.h-3 {\n height: 0.75rem;\n}\n\n.h-3\\\\.5 {\n height: 0.875rem;\n}\n\n.h-4 {\n height: 1rem;\n}\n\n.h-5 {\n height: 1.25rem;\n}\n\n.h-7 {\n height: 1.75rem;\n}\n\n.h-8 {\n height: 2rem;\n}\n\n.h-9 {\n height: 2.25rem;\n}\n\n.h-\\\\[1px\\\\] {\n height: 1px;\n}\n\n.h-\\\\[400px\\\\] {\n height: 400px;\n}\n\n.h-\\\\[40px\\\\] {\n height: 40px;\n}\n\n.h-full {\n height: 100%;\n}\n\n.h-px {\n height: 1px;\n}\n\n.max-h-72 {\n max-height: 18rem;\n}\n\n.max-h-\\\\[300px\\\\] {\n max-height: 300px;\n}\n\n.max-h-screen {\n max-height: 100vh;\n}\n\n.min-h-\\\\[80px\\\\] {\n min-height: 80px;\n}\n\n.w-0{\n width: 0px\n}\n\n.w-1 {\n width: 0.25rem;\n}\n\n.w-10 {\n width: 2.5rem;\n}\n\n.w-2 {\n width: 0.5rem;\n}\n\n.w-3 {\n width: 0.75rem;\n}\n\n.w-3\\\\.5 {\n width: 0.875rem;\n}\n\n.w-32 {\n width: 8rem;\n}\n\n.w-4 {\n width: 1rem;\n}\n\n.w-5 {\n width: 1.25rem;\n}\n\n.w-64 {\n width: 16rem;\n}\n\n.w-72 {\n width: 18rem;\n}\n\n.w-8 {\n width: 2rem;\n}\n\n.w-80 {\n width: 20rem;\n}\n\n.w-9 {\n width: 2.25rem;\n}\n\n.w-96 {\n width: 24rem;\n}\n\n.w-\\\\[180px\\\\] {\n width: 180px;\n}\n\n.w-\\\\[1px\\\\] {\n width: 1px;\n}\n\n.w-\\\\[350px\\\\] {\n width: 350px;\n}\n\n.w-\\\\[400px\\\\] {\n width: 400px;\n}\n\n.w-\\\\[40px\\\\] {\n width: 40px;\n}\n\n.w-auto {\n width: auto;\n}\n\n.w-full {\n width: 100%;\n}\n\n.w-max {\n width: -moz-max-content;\n width: max-content;\n}\n\n.w-min {\n width: -moz-min-content;\n width: min-content;\n}\n\n.min-w-60 {\n min-width: 15rem;\n}\n\n.min-w-80 {\n min-width: 20rem;\n}\n\n.min-w-\\\\[8rem\\\\] {\n min-width: 8rem;\n}\n\n.max-w-\\\\[260px\\\\] {\n max-width: 260px;\n}\n\n.max-w-lg {\n max-width: 32rem;\n}\n\n.max-w-md {\n max-width: 28rem;\n}\n\n.max-w-sm {\n max-width: 24rem;\n}\n\n.flex-1 {\n flex: 1 1 0%;\n}\n\n.flex-auto {\n flex: 1 1 auto;\n}\n\n.flex-shrink {\n flex-shrink: 1;\n}\n\n.shrink-0 {\n flex-shrink: 0;\n}\n\n.flex-grow {\n flex-grow: 1;\n}\n\n.border-collapse {\n border-collapse: collapse;\n}\n\n.border-spacing-2 {\n --tw-border-spacing-x: 0.5rem;\n --tw-border-spacing-y: 0.5rem;\n border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);\n}\n\n.border-spacing-6 {\n --tw-border-spacing-x: 1.5rem;\n --tw-border-spacing-y: 1.5rem;\n border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);\n}\n\n.-translate-y-1 {\n --tw-translate-y: -0.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-x-0 {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-x-\\\\[-50\\\\%\\\\] {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-y-0 {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.translate-y-\\\\[-50\\\\%\\\\] {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rotate-180 {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.scale-100 {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.scale-95 {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.animate-spin {\n animation: spin 1s linear infinite;\n}\n\n.cursor-default {\n cursor: default;\n}\n\n.cursor-not-allowed {\n cursor: not-allowed;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n.resize {\n resize: both;\n}\n\n.grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n.grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n\n.flex-row {\n flex-direction: row;\n}\n\n.flex-row-reverse{\n flex-direction: row-reverse;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.flex-col-reverse {\n flex-direction: column-reverse;\n}\n\n.flex-wrap {\n flex-wrap: wrap;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap;\n}\n\n.items-start {\n align-items: flex-start;\n}\n\n.items-center {\n align-items: center;\n}\n\n.items-stretch {\n align-items: stretch;\n}\n\n.justify-start {\n justify-content: flex-start;\n}\n\n.justify-end {\n justify-content: flex-end;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.justify-between {\n justify-content: space-between;\n}\n\n.justify-stretch {\n justify-content: stretch;\n}\n\n.gap-1 {\n gap: 0.25rem;\n}\n\n.gap-1\\\\.5 {\n gap: 0.375rem;\n}\n\n.gap-10 {\n gap: 2.5rem;\n}\n\n.gap-2 {\n gap: 0.5rem;\n}\n\n.gap-20 {\n gap: 5rem;\n}\n\n.gap-3 {\n gap: 0.75rem;\n}\n\n.gap-4 {\n gap: 1rem;\n}\n\n.gap-5 {\n gap: 1.25rem;\n}\n\n.space-x-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.25rem * var(--tw-space-x-reverse));\n margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));\n}\n\n.space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n}\n\n.space-x-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(1rem * var(--tw-space-x-reverse));\n margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));\n}\n\n.space-y-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));\n}\n\n.space-y-1\\\\.5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));\n}\n\n.space-y-10 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(2.5rem * var(--tw-space-y-reverse));\n}\n\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n\n.space-y-5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));\n}\n\n.overflow-hidden {\n overflow: hidden;\n}\n\n.overflow-y-auto {\n overflow-y: auto;\n}\n\n.overflow-x-hidden {\n overflow-x: hidden;\n}\n\n.whitespace-nowrap {\n white-space: nowrap;\n}\n\n.text-wrap {\n text-wrap: wrap;\n}\n\n.break-words {\n overflow-wrap: break-word;\n}\n\n.rounded {\n border-radius: 0.25rem;\n}\n\n.rounded-full {\n border-radius: 9999px;\n}\n\n.rounded-2xl {\n border-radius: calc(var(--radius) + 8px);\n}\n\n.rounded-xl {\n border-radius: calc(var(--radius) + 4px);\n}\n\n.rounded-lg {\n border-radius: var(--radius);\n}\n\n.rounded-md {\n border-radius: calc(var(--radius) - 2px);\n}\n\n.rounded-sm {\n border-radius: calc(var(--radius) - 4px);\n}\n\n.rounded-r-md {\n border-top-right-radius: calc(var(--radius) - 2px);\n border-bottom-right-radius: calc(var(--radius) - 2px);\n}\n\n.border {\n border-width: 1px;\n}\n\n.border-0 {\n border-width: 0px;\n}\n\n.border-2 {\n border-width: 2px;\n}\n\n.border-4 {\n border-width: 4px;\n}\n\n.border-y {\n border-top-width: 1px;\n border-bottom-width: 1px;\n}\n\n.border-b {\n border-bottom-width: 1px;\n}\n\n.border-b-2 {\n border-bottom-width: 2px;\n}\n\n.border-l {\n border-left-width: 1px;\n}\n\n.border-r {\n border-right-width: 1px;\n}\n\n.border-t-2 {\n border-top-width: 2px;\n}\n\n.border-blue-200 {\n border-color: var(--blue-200);\n}\n\n.border-destructive {\n border-color: hsl(var(--destructive));\n}\n\n.border-gray-200 {\n --tw-border-opacity: 1;\n border-color: rgb(229 231 235 / var(--tw-border-opacity));\n}\n\n.border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgb(209 213 219 / var(--tw-border-opacity));\n}\n\n.border-green-200 {\n border-color: var(--green-200);\n}\n\n.border-input {\n border-color: hsl(var(--input));\n}\n\n.border-muted {\n border-color: hsl(var(--muted));\n}\n\n.border-primary {\n border-color: hsl(var(--primary));\n}\n\n.border-red-200 {\n border-color: var(--red-200);\n}\n\n.border-slate-50 {\n --tw-border-opacity: 1;\n border-color: rgb(248 250 252 / var(--tw-border-opacity));\n}\n\n.border-slate-500 {\n --tw-border-opacity: 1;\n border-color: rgb(100 116 139 / var(--tw-border-opacity));\n}\n\n.border-transparent {\n border-color: transparent;\n}\n\n.border-white {\n --tw-border-opacity: 1;\n border-color: rgb(255 255 255 / var(--tw-border-opacity));\n}\n\n.border-yellow-200 {\n border-color: var(--yellow-200);\n}\n\n.bg-accent {\n background-color: hsl(var(--accent));\n}\n\n.bg-background {\n background-color: hsl(var(--background));\n}\n\n.bg-black {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n\n.bg-black\\\\/80 {\n background-color: rgb(0 0 0 / 0.8);\n}\n\n.bg-blue-100 {\n background-color: var(--blue-100);\n}\n\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n\n.bg-border {\n background-color: hsl(var(--border));\n}\n\n.bg-card {\n background-color: hsl(var(--card));\n}\n\n.bg-destructive {\n background-color: hsl(var(--destructive));\n}\n\n.bg-gray-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity));\n}\n\n.bg-green-100 {\n background-color: var(--green-100);\n}\n\n.bg-muted {\n background-color: hsl(var(--muted));\n}\n\n.bg-popover {\n background-color: hsl(var(--popover));\n}\n\n.bg-primary {\n background-color: hsl(var(--primary));\n}\n\n.bg-red-100 {\n background-color: var(--red-100);\n}\n\n.bg-red-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(248 113 113 / var(--tw-bg-opacity));\n}\n\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity));\n}\n\n.bg-red-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 38 38 / var(--tw-bg-opacity));\n}\n\n.bg-secondary {\n background-color: hsl(var(--secondary));\n}\n\n.bg-transparent {\n background-color: transparent;\n}\n\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.bg-yellow-100 {\n background-color: var(--yellow-100);\n}\n\n.fill-current {\n fill: currentColor;\n}\n\n.fill-primary {\n fill: hsl(var(--primary));\n}\n\n.object-cover {\n -o-object-fit: cover;\n object-fit: cover;\n}\n\n.p-0 {\n padding: 0;\n}\n\n.p-1 {\n padding: 0.25rem;\n}\n\n.p-3 {\n padding: 0.75rem;\n}\n\n.p-4 {\n padding: 1rem;\n}\n\n.p-5 {\n padding: 1.25rem;\n}\n\n.p-6 {\n padding: 1.5rem;\n}\n\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n.px-2\\\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n.px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n\n.px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n\n.px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n\n.py-0 {\n padding-top: 0;\n padding-bottom: 0;\n}\n\n.py-0\\\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n.py-1\\\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n.py-6 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n\n.pb-1 {\n padding-bottom: 0.25rem;\n}\n\n.pb-4 {\n padding-bottom: 1rem;\n}\n\n.pe-9 {\n padding-inline-end: 2.25rem;\n}\n\n.pr-6 {\n padding-right: 1.5rem;\n}\n\n.ps-4 {\n padding-inline-start: 1rem;\n}\n\n.pt-0 {\n padding-top: 0;\n}\n\n.pt-1 {\n padding-top: 0.25rem;\n}\n\n.pt-2 {\n padding-top: 0.5rem;\n}\n\n.pt-3 {\n padding-top: 0.75rem;\n}\n\n.pt-4 {\n padding-top: 1rem;\n}\n\n.pt-6 {\n padding-top: 1.5rem;\n}\n\n.text-left {\n text-align: left;\n}\n\n.text-center {\n text-align: center;\n}\n\n.text-right {\n text-align: right;\n}\n\n.align-baseline {\n vertical-align: baseline;\n}\n\n.align-top {\n vertical-align: top;\n}\n\n.align-middle {\n vertical-align: middle;\n}\n\n.align-bottom {\n vertical-align: bottom;\n}\n\n.font-geist {\n font-family: GeistSans, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n}\n\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n.text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n\n.text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n.text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n\n.font-bold {\n font-weight: 700;\n}\n\n.font-medium {\n font-weight: 500;\n}\n\n.font-normal {\n font-weight: 400;\n}\n.font-thin {\n font-weight: 300;\n}\n\n.font-semibold {\n font-weight: 600;\n}\n\n.uppercase {\n text-transform: uppercase;\n}\n\n.capitalize {\n text-transform: capitalize;\n}\n\n.leading-none {\n line-height: 1;\n}\n\n.tracking-tight {\n letter-spacing: -0.025em;\n}\n\n.tracking-widest {\n letter-spacing: 0.1em;\n}\n\n.text-accent-foreground {\n color: hsl(var(--accent-foreground));\n}\n\n.text-black {\n --tw-text-opacity: 1;\n color: rgb(0 0 0 / var(--tw-text-opacity));\n}\n\n.text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity));\n}\n\n.text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity));\n}\n\n.text-blue-800 {\n color: var(--blue-800);\n}\n\n.text-card-foreground {\n color: hsl(var(--card-foreground));\n}\n\n.text-current {\n color: currentColor;\n}\n\n.text-destructive-foreground {\n color: hsl(var(--destructive-foreground));\n}\n\n.text-foreground {\n color: hsl(var(--foreground));\n}\n\n.text-foreground\\\\/50 {\n color: hsl(var(--foreground) / 0.5);\n}\n\n.text-gray-400 {\n --tw-text-opacity: 1;\n color: rgb(156 163 175 / var(--tw-text-opacity));\n}\n\n.text-gray-500 {\n --tw-text-opacity: 1;\n color: rgb(107 114 128 / var(--tw-text-opacity));\n}\n\n.text-gray-800 {\n --tw-text-opacity: 1;\n color: rgb(31 41 55 / var(--tw-text-opacity));\n}\n\n.text-green-800 {\n color: var(--green-800);\n}\n\n.text-muted {\n color: hsl(var(--muted));\n}\n\n.text-muted-foreground {\n color: hsl(var(--muted-foreground));\n}\n\n.text-popover-foreground {\n color: hsl(var(--popover-foreground));\n}\n\n.text-primary {\n color: hsl(var(--primary));\n}\n\n.text-primary-foreground {\n color: hsl(var(--primary-foreground));\n}\n\n.text-red-300 {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity));\n}\n\n.text-red-800 {\n color: var(--red-800);\n}\n\n.text-secondary {\n color: hsl(var(--secondary));\n}\n\n.text-secondary-foreground {\n color: hsl(var(--secondary-foreground));\n}\n\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n.text-yellow-800 {\n color: var(--yellow-800);\n}\n\n.underline {\n text-decoration-line: underline;\n}\n\n.underline-offset-4 {\n text-underline-offset: 4px;\n}\n\n.opacity-0 {\n opacity: 0;\n}\n\n.opacity-100 {\n opacity: 1;\n}\n\n.opacity-40 {\n opacity: 0.4;\n}\n\n.opacity-50 {\n opacity: 0.5;\n}\n\n.opacity-70 {\n opacity: 0.7;\n}\n\n.opacity-90 {\n opacity: 0.9;\n}\n\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-none {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.outline {\n outline-style: solid;\n}\n\n.ring-0 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.ring-2 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.ring-ring {\n --tw-ring-color: hsl(var(--ring));\n}\n\n.ring-offset-background {\n --tw-ring-offset-color: hsl(var(--background));\n}\n\n.blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.duration-200 {\n transition-duration: 200ms;\n}\n\n.duration-500 {\n transition-duration: 500ms;\n}\n\n@keyframes enter {\n from {\n opacity: var(--tw-enter-opacity, 1);\n transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));\n }\n}\n\n@keyframes exit {\n to {\n opacity: var(--tw-exit-opacity, 1);\n transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));\n }\n}\n\n.slide-in-from-left-1 {\n --tw-enter-translate-x: -0.25rem;\n}\n\n.slide-out-to-left-1 {\n --tw-exit-translate-x: -0.25rem;\n}\n\n.duration-200 {\n animation-duration: 200ms;\n}\n\n.duration-500 {\n animation-duration: 500ms;\n}\n\n@media (max-width: 640px) {\n .container {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n}\n\n.file\\\\:border-0::file-selector-button {\n border-width: 0px;\n}\n\n.file\\\\:bg-transparent::file-selector-button {\n background-color: transparent;\n}\n\n.file\\\\:text-sm::file-selector-button {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n\n.file\\\\:font-medium::file-selector-button {\n font-weight: 500;\n}\n\n.file\\\\:text-foreground::file-selector-button {\n color: hsl(var(--foreground));\n}\n\n.placeholder\\\\:text-muted-foreground::-moz-placeholder {\n color: hsl(var(--muted-foreground));\n}\n\n.placeholder\\\\:text-muted-foreground::placeholder {\n color: hsl(var(--muted-foreground));\n}\n\n.first\\\\:rounded-l-md:first-child {\n border-top-left-radius: calc(var(--radius) - 2px);\n border-bottom-left-radius: calc(var(--radius) - 2px);\n}\n\n.first\\\\:border-l:first-child {\n border-left-width: 1px;\n}\n\n.last\\\\:rounded-r-md:last-child {\n border-top-right-radius: calc(var(--radius) - 2px);\n border-bottom-right-radius: calc(var(--radius) - 2px);\n}\n\n.hover\\\\:bg-accent:hover {\n background-color: hsl(var(--accent));\n}\n\n.hover\\\\:bg-destructive\\\\/90:hover {\n background-color: hsl(var(--destructive) / 0.9);\n}\n\n.hover\\\\:bg-gray-100:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity));\n}\n\n.hover\\\\:bg-muted:hover {\n background-color: hsl(var(--muted));\n}\n\n.hover\\\\:bg-primary\\\\/90:hover {\n background-color: hsl(var(--primary) / 0.9);\n}\n\n.hover\\\\:bg-secondary:hover {\n background-color: hsl(var(--secondary));\n}\n\n.hover\\\\:bg-secondary\\\\/80:hover {\n background-color: hsl(var(--secondary) / 0.8);\n}\n\n.hover\\\\:text-accent-foreground:hover {\n color: hsl(var(--accent-foreground));\n}\n\n.hover\\\\:text-foreground:hover {\n color: hsl(var(--foreground));\n}\n\n.hover\\\\:text-muted-foreground:hover {\n color: hsl(var(--muted-foreground));\n}\n\n.hover\\\\:underline:hover {\n text-decoration-line: underline;\n}\n\n.hover\\\\:opacity-100:hover {\n opacity: 1;\n}\n\n.focus\\\\:border:focus {\n border-width: 1px;\n}\n\n.focus\\\\:border-\\\\[3px\\\\]:focus {\n border-width: 3px;\n}\n\n.focus\\\\:border-\\\\[\\\\#c1c1c1\\\\]:focus {\n --tw-border-opacity: 1;\n border-color: rgb(193 193 193 / var(--tw-border-opacity));\n}\n\n.focus\\\\:bg-accent:focus {\n background-color: hsl(var(--accent));\n}\n\n.focus\\\\:bg-gray-100:focus {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity));\n}\n\n.focus\\\\:text-accent-foreground:focus {\n color: hsl(var(--accent-foreground));\n}\n\n.focus\\\\:opacity-100:focus {\n opacity: 1;\n}\n\n.focus\\\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.focus\\\\:ring-1:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.focus\\\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.focus\\\\:ring-ring:focus {\n --tw-ring-color: hsl(var(--ring));\n}\n\n.focus\\\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n\n.focus-visible\\\\:outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.focus-visible\\\\:ring-0:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.focus-visible\\\\:ring-1:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.focus-visible\\\\:ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.focus-visible\\\\:ring-ring:focus-visible {\n --tw-ring-color: hsl(var(--ring));\n}\n\n.focus-visible\\\\:ring-offset-2:focus-visible {\n --tw-ring-offset-width: 2px;\n}\n\n.focus-visible\\\\:ring-offset-background:focus-visible {\n --tw-ring-offset-color: hsl(var(--background));\n}\n\n.disabled\\\\:pointer-events-none:disabled {\n pointer-events: none;\n}\n\n.disabled\\\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n\n.disabled\\\\:opacity-50:disabled {\n opacity: 0.5;\n}\n\n.group:hover .group-hover\\\\:opacity-100 {\n opacity: 1;\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:border-muted\\\\/40 {\n border-color: hsl(var(--muted) / 0.4);\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:text-red-300 {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity));\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:hover\\\\:border-destructive\\\\/30:hover {\n border-color: hsl(var(--destructive) / 0.3);\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:hover\\\\:bg-destructive:hover {\n background-color: hsl(var(--destructive));\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:hover\\\\:text-destructive-foreground:hover {\n color: hsl(var(--destructive-foreground));\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:hover\\\\:text-red-50:hover {\n --tw-text-opacity: 1;\n color: rgb(254 242 242 / var(--tw-text-opacity));\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:focus\\\\:ring-destructive:focus {\n --tw-ring-color: hsl(var(--destructive));\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:focus\\\\:ring-red-400:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity));\n}\n\n.group.destructive .group-\\\\[\\\\.destructive\\\\]\\\\:focus\\\\:ring-offset-red-600:focus {\n --tw-ring-offset-color: #dc2626;\n}\n\n.peer:disabled ~ .peer-disabled\\\\:cursor-not-allowed {\n cursor: not-allowed;\n}\n\n.peer:disabled ~ .peer-disabled\\\\:opacity-70 {\n opacity: 0.7;\n}\n\n.aria-selected\\\\:bg-accent[aria-selected=\"true\"] {\n background-color: hsl(var(--accent));\n}\n\n.aria-selected\\\\:text-accent-foreground[aria-selected=\"true\"] {\n color: hsl(var(--accent-foreground));\n}\n\n.data-\\\\[disabled\\\\]\\\\:pointer-events-none[data-disabled] {\n pointer-events: none;\n}\n\n.data-\\\\[swipe\\\\=cancel\\\\]\\\\:translate-x-0[data-swipe=\"cancel\"] {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.data-\\\\[swipe\\\\=end\\\\]\\\\:translate-x-\\\\[var\\\\(--radix-toast-swipe-end-x\\\\)\\\\][data-swipe=\"end\"] {\n --tw-translate-x: var(--radix-toast-swipe-end-x);\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.data-\\\\[swipe\\\\=move\\\\]\\\\:translate-x-\\\\[var\\\\(--radix-toast-swipe-move-x\\\\)\\\\][data-swipe=\"move\"] {\n --tw-translate-x: var(--radix-toast-swipe-move-x);\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n@keyframes accordion-up {\n from {\n height: var(--radix-accordion-content-height);\n }\n\n to {\n height: 0;\n }\n}\n\n.data-\\\\[state\\\\=closed\\\\]\\\\:animate-accordion-up[data-state=\"closed\"] {\n animation: accordion-up 0.2s ease-out;\n}\n\n@keyframes accordion-down {\n from {\n height: 0;\n }\n\n to {\n height: var(--radix-accordion-content-height);\n }\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:animate-accordion-down[data-state=\"open\"] {\n animation: accordion-down 0.2s ease-out;\n}\n\n.data-\\\\[state\\\\=active\\\\]\\\\:bg-background[data-state=\"active\"] {\n background-color: hsl(var(--background));\n}\n\n.data-\\\\[state\\\\=checked\\\\]\\\\:bg-primary[data-state=\"checked\"] {\n background-color: hsl(var(--primary));\n}\n\n.data-\\\\[state\\\\=on\\\\]\\\\:bg-accent[data-state=\"on\"] {\n background-color: hsl(var(--accent));\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:bg-accent[data-state=\"open\"] {\n background-color: hsl(var(--accent));\n}\n\n.data-\\\\[state\\\\=active\\\\]\\\\:text-foreground[data-state=\"active\"] {\n color: hsl(var(--foreground));\n}\n\n.data-\\\\[state\\\\=checked\\\\]\\\\:text-primary-foreground[data-state=\"checked\"] {\n color: hsl(var(--primary-foreground));\n}\n\n.data-\\\\[state\\\\=on\\\\]\\\\:text-accent-foreground[data-state=\"on\"] {\n color: hsl(var(--accent-foreground));\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:text-muted-foreground[data-state=\"open\"] {\n color: hsl(var(--muted-foreground));\n}\n\n.data-\\\\[disabled\\\\]\\\\:opacity-50[data-disabled] {\n opacity: 0.5;\n}\n\n.data-\\\\[state\\\\=active\\\\]\\\\:shadow-sm[data-state=\"active\"] {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.data-\\\\[swipe\\\\=move\\\\]\\\\:transition-none[data-swipe=\"move\"] {\n transition-property: none;\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:animate-in[data-state=\"open\"] {\n animation-name: enter;\n animation-duration: 150ms;\n --tw-enter-opacity: initial;\n --tw-enter-scale: initial;\n --tw-enter-rotate: initial;\n --tw-enter-translate-x: initial;\n --tw-enter-translate-y: initial;\n}\n\n.data-\\\\[state\\\\=closed\\\\]\\\\:animate-out[data-state=\"closed\"] {\n animation-name: exit;\n animation-duration: 150ms;\n --tw-exit-opacity: initial;\n --tw-exit-scale: initial;\n --tw-exit-rotate: initial;\n --tw-exit-translate-x: initial;\n --tw-exit-translate-y: initial;\n}\n\n.data-\\\\[swipe\\\\=end\\\\]\\\\:animate-out[data-swipe=\"end\"] {\n animation-name: exit;\n animation-duration: 150ms;\n --tw-exit-opacity: initial;\n --tw-exit-scale: initial;\n --tw-exit-rotate: initial;\n --tw-exit-translate-x: initial;\n --tw-exit-translate-y: initial;\n}\n\n.data-\\\\[state\\\\=closed\\\\]\\\\:fade-out-0[data-state=\"closed\"] {\n --tw-exit-opacity: 0;\n}\n\n.data-\\\\[state\\\\=closed\\\\]\\\\:fade-out-80[data-state=\"closed\"] {\n --tw-exit-opacity: 0.8;\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:fade-in-0[data-state=\"open\"] {\n --tw-enter-opacity: 0;\n}\n\n.data-\\\\[state\\\\=closed\\\\]\\\\:zoom-out-95[data-state=\"closed\"] {\n --tw-exit-scale: .95;\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:zoom-in-95[data-state=\"open\"] {\n --tw-enter-scale: .95;\n}\n\n.data-\\\\[side\\\\=bottom\\\\]\\\\:slide-in-from-top-2[data-side=\"bottom\"] {\n --tw-enter-translate-y: -0.5rem;\n}\n\n.data-\\\\[side\\\\=left\\\\]\\\\:slide-in-from-right-2[data-side=\"left\"] {\n --tw-enter-translate-x: 0.5rem;\n}\n\n.data-\\\\[side\\\\=right\\\\]\\\\:slide-in-from-left-2[data-side=\"right\"] {\n --tw-enter-translate-x: -0.5rem;\n}\n\n.data-\\\\[side\\\\=top\\\\]\\\\:slide-in-from-bottom-2[data-side=\"top\"] {\n --tw-enter-translate-y: 0.5rem;\n}\n\n.data-\\\\[state\\\\=closed\\\\]\\\\:slide-out-to-left-1\\\\/2[data-state=\"closed\"] {\n --tw-exit-translate-x: -50%;\n}\n\n.data-\\\\[state\\\\=closed\\\\]\\\\:slide-out-to-right-full[data-state=\"closed\"] {\n --tw-exit-translate-x: 100%;\n}\n\n.data-\\\\[state\\\\=closed\\\\]\\\\:slide-out-to-top-\\\\[48\\\\%\\\\][data-state=\"closed\"] {\n --tw-exit-translate-y: -48%;\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:slide-in-from-left-1\\\\/2[data-state=\"open\"] {\n --tw-enter-translate-x: -50%;\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:slide-in-from-top-\\\\[48\\\\%\\\\][data-state=\"open\"] {\n --tw-enter-translate-y: -48%;\n}\n\n.data-\\\\[state\\\\=open\\\\]\\\\:slide-in-from-top-full[data-state=\"open\"] {\n --tw-enter-translate-y: -100%;\n}\n\n.dark\\\\:border-neutral-700:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(64 64 64 / var(--tw-border-opacity));\n}\n\n.dark\\\\:bg-neutral-900:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(23 23 23 / var(--tw-bg-opacity));\n}\n\n.dark\\\\:text-blue-500:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n\n.dark\\\\:text-neutral-200:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(229 229 229 / var(--tw-text-opacity));\n}\n\n.dark\\\\:text-neutral-500:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(115 115 115 / var(--tw-text-opacity));\n}\n\n.dark\\\\:hover\\\\:bg-neutral-800:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(38 38 38 / var(--tw-bg-opacity));\n}\n\n.dark\\\\:focus\\\\:bg-neutral-800:focus:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(38 38 38 / var(--tw-bg-opacity));\n}\n\n@media (min-width: 640px) {\n .sm\\\\:bottom-0 {\n bottom: 0px;\n }\n\n .sm\\\\:right-0 {\n right: 0px;\n }\n\n .sm\\\\:top-auto {\n top: auto;\n }\n\n .sm\\\\:max-w-\\\\[425px\\\\] {\n max-width: 425px;\n }\n\n .sm\\\\:flex-row {\n flex-direction: row;\n }\n\n .sm\\\\:flex-col {\n flex-direction: column;\n }\n\n .sm\\\\:justify-end {\n justify-content: flex-end;\n }\n\n .sm\\\\:gap-2\\\\.5 {\n gap: 0.625rem;\n }\n\n .sm\\\\:space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n }\n\n .sm\\\\:rounded-lg {\n border-radius: var(--radius);\n }\n\n .sm\\\\:text-left {\n text-align: left;\n }\n\n .data-\\\\[state\\\\=open\\\\]\\\\:sm\\\\:slide-in-from-bottom-full[data-state=\"open\"] {\n --tw-enter-translate-y: 100%;\n }\n}\n\n@media (min-width: 768px) {\n .md\\\\:max-w-\\\\[420px\\\\] {\n max-width: 420px;\n }\n}\n\n.\\\\[\\\\&\\\\+div\\\\]\\\\:text-xs+div {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n\n.\\\\[\\\\&\\\\:\\\\:-webkit-scrollbar-thumb\\\\]\\\\:rounded-full::-webkit-scrollbar-thumb {\n border-radius: 9999px;\n}\n\n.\\\\[\\\\&\\\\:\\\\:-webkit-scrollbar-thumb\\\\]\\\\:bg-gray-300::-webkit-scrollbar-thumb {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity));\n}\n\n.dark\\\\:\\\\[\\\\&\\\\:\\\\:-webkit-scrollbar-thumb\\\\]\\\\:bg-neutral-500:is(.dark *)::-webkit-scrollbar-thumb {\n --tw-bg-opacity: 1;\n background-color: rgb(115 115 115 / var(--tw-bg-opacity));\n}\n\n.\\\\[\\\\&\\\\:\\\\:-webkit-scrollbar-track\\\\]\\\\:bg-gray-100::-webkit-scrollbar-track {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity));\n}\n\n.dark\\\\:\\\\[\\\\&\\\\:\\\\:-webkit-scrollbar-track\\\\]\\\\:bg-neutral-700:is(.dark *)::-webkit-scrollbar-track {\n --tw-bg-opacity: 1;\n background-color: rgb(64 64 64 / var(--tw-bg-opacity));\n}\n\n.\\\\[\\\\&\\\\:\\\\:-webkit-scrollbar\\\\]\\\\:w-2::-webkit-scrollbar {\n width: 0.5rem;\n}\n\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:size-3\\\\.5>svg {\n width: 0.875rem;\n height: 0.875rem;\n}\n\n.\\\\[\\\\&\\\\[data-state\\\\=open\\\\]\\\\>svg\\\\]\\\\:rotate-180[data-state=open]>svg {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.\\\\[\\\\&_\\\\[rtgcmd-group-heading\\\\]\\\\]\\\\:px-2 [rtgcmd-group-heading] {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n.\\\\[\\\\&_\\\\[rtgcmd-group-heading\\\\]\\\\]\\\\:py-1\\\\.5 [rtgcmd-group-heading] {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n\n.\\\\[\\\\&_\\\\[rtgcmd-group-heading\\\\]\\\\]\\\\:text-xs [rtgcmd-group-heading] {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n\n.\\\\[\\\\&_\\\\[rtgcmd-group-heading\\\\]\\\\]\\\\:font-medium [rtgcmd-group-heading] {\n font-weight: 500;\n}\n\n.\\\\[\\\\&_\\\\[rtgcmd-group-heading\\\\]\\\\]\\\\:text-muted-foreground [rtgcmd-group-heading] {\n color: hsl(var(--muted-foreground));\n}\n\n.\\\\[\\\\&_svg\\\\]\\\\:pointer-events-none svg {\n pointer-events: none;\n}\n\n.\\\\[\\\\&_svg\\\\]\\\\:size-4 svg {\n width: 1rem;\n height: 1rem;\n}\n\n.\\\\[\\\\&_svg\\\\]\\\\:shrink-0 svg {\n flex-shrink: 0;\n}\n `, zn = new CSSStyleSheet();\nzn.replaceSync(ko.cssText || ko.toString());\nconst ho = class ho extends W {\n constructor() {\n super();\n }\n connectedCallback() {\n super.connectedCallback(), this.shadowRoot ? this.shadowRoot.adoptedStyleSheets = [\n ...this.shadowRoot.adoptedStyleSheets,\n zn\n ] : console.error(\"Shadow root not available in ShadowWrapper\");\n }\n render() {\n return d`<div><slot></slot></div>`;\n }\n};\nho.styles = ct`\n :host {\n display: block;\n border: 2px solid black;\n padding: 10px;\n }\n .wrapper {\n display: block;\n }\n `;\nlet rs = ho;\ncustomElements.define(\"shadow-wrapper\", rs);\nclass qn extends Ki {\n constructor() {\n super(...arguments), this.prevData = {};\n }\n render(t) {\n return Yi;\n }\n update(t, [o]) {\n var s;\n this.element !== t.element && (this.element = t.element), this.host = ((s = t.options) === null || s === void 0 ? void 0 : s.host) || this.element, this.apply(o), this.groom(o), this.prevData = { ...o };\n }\n apply(t) {\n if (!t)\n return;\n const { prevData: o, element: s } = this;\n for (const r in t) {\n const n = t[r];\n n !== o[r] && (s[r] = n);\n }\n }\n groom(t) {\n const { prevData: o, element: s } = this;\n if (o)\n for (const r in o)\n (!t || !(r in t) && s[r] === o[r]) && (s[r] = void 0);\n }\n}\nNs(qn);\nclass Bn extends qn {\n constructor() {\n super(...arguments), this.eventData = {};\n }\n apply(t) {\n if (t)\n for (const o in t) {\n const s = t[o];\n s !== this.eventData[o] && this.applyEvent(o, s);\n }\n }\n applyEvent(t, o) {\n const { prevData: s, element: r } = this;\n this.eventData[t] = o, s[t] && r.removeEventListener(t, this, o), r.addEventListener(t, this, o);\n }\n groom(t) {\n const { prevData: o, element: s } = this;\n if (o)\n for (const r in o)\n (!t || !(r in t) && s[r] === o[r]) && this.groomEvent(r, o[r]);\n }\n groomEvent(t, o) {\n const { element: s } = this;\n delete this.eventData[t], s.removeEventListener(t, this, o);\n }\n handleEvent(t) {\n const o = this.eventData[t.type];\n typeof o == \"function\" ? o.call(this.host, t) : o.handleEvent(t);\n }\n disconnected() {\n const { eventData: t, element: o } = this;\n for (const s in t) {\n const r = s.slice(1), n = t[s];\n o.removeEventListener(r, this, n);\n }\n }\n reconnected() {\n const { eventData: t, element: o } = this;\n for (const s in t) {\n const r = s.slice(1), n = t[s];\n o.addEventListener(r, this, n);\n }\n }\n}\nNs(Bn);\nclass Ra extends Bn {\n apply(t) {\n if (!t)\n return;\n const { prevData: o, element: s } = this;\n for (const r in t) {\n const n = t[r];\n if (n === o[r])\n continue;\n const i = r.slice(1);\n switch (r[0]) {\n case \"@\":\n this.eventData[i] = n, this.applyEvent(i, n);\n break;\n case \".\":\n s[i] = n;\n break;\n case \"?\":\n n ? s.setAttribute(i, \"\") : s.removeAttribute(i);\n break;\n default:\n n != null ? s.setAttribute(r, String(n)) : s.removeAttribute(r);\n break;\n }\n }\n }\n groom(t) {\n const { prevData: o, element: s } = this;\n if (o)\n for (const r in o) {\n const n = r.slice(1);\n if (!t || !(r in t) && s[n] === o[r])\n switch (r[0]) {\n case \"@\":\n this.groomEvent(n, o[r]);\n break;\n case \".\":\n s[n] = void 0;\n break;\n case \"?\":\n s.removeAttribute(n);\n break;\n default:\n s.removeAttribute(r);\n break;\n }\n }\n }\n}\nconst z = Ns(Ra), Ao = [\n { label: \"AF\", value: \"AF\", code: \"+93\" },\n // Afghanistan\n { label: \"AL\", value: \"AL\", code: \"+355\" },\n // Albania\n { label: \"DZ\", value: \"DZ\", code: \"+213\" },\n // Algeria\n { label: \"AS\", value: \"AS\", code: \"+1684\" },\n // American Samoa\n { label: \"AD\", value: \"AD\", code: \"+376\" },\n // Andorra\n { label: \"AO\", value: \"AO\", code: \"+244\" },\n // Angola\n { label: \"AI\", value: \"AI\", code: \"+1264\" },\n // Anguilla\n { label: \"AG\", value: \"AG\", code: \"+1268\" },\n // Antigua and Barbuda\n { label: \"AR\", value: \"AR\", code: \"+54\" },\n // Argentina\n { label: \"AM\", value: \"AM\", code: \"+374\" },\n // Armenia\n { label: \"AW\", value: \"AW\", code: \"+297\" },\n // Aruba\n { label: \"AU\", value: \"AU\", code: \"+61\" },\n // Australia\n { label: \"AT\", value: \"AT\", code: \"+43\" },\n // Austria\n { label: \"AZ\", value: \"AZ\", code: \"+994\" },\n // Azerbaijan\n { label: \"BS\", value: \"BS\", code: \"+1242\" },\n // Bahamas\n { label: \"BH\", value: \"BH\", code: \"+973\" },\n // Bahrain\n { label: \"BD\", value: \"BD\", code: \"+880\" },\n // Bangladesh\n { label: \"BB\", value: \"BB\", code: \"+1246\" },\n // Barbados\n { label: \"BY\", value: \"BY\", code: \"+375\" },\n // Belarus\n { label: \"BE\", value: \"BE\", code: \"+32\" },\n // Belgium\n { label: \"BZ\", value: \"BZ\", code: \"+501\" },\n // Belize\n { label: \"BJ\", value: \"BJ\", code: \"+229\" },\n // Benin\n { label: \"BM\", value: \"BM\", code: \"+1441\" },\n // Bermuda\n { label: \"BT\", value: \"BT\", code: \"+975\" },\n // Bhutan\n { label: \"BO\", value: \"BO\", code: \"+591\" },\n // Bolivia\n { label: \"BA\", value: \"BA\", code: \"+387\" },\n // Bosnia and Herzegovina\n { label: \"BW\", value: \"BW\", code: \"+267\" },\n // Botswana\n { label: \"BR\", value: \"BR\", code: \"+55\" },\n // Brazil\n { label: \"IO\", value: \"IO\", code: \"+246\" },\n // British Indian Ocean Territory\n { label: \"VG\", value: \"VG\", code: \"+1284\" },\n // British Virgin Islands\n { label: \"BN\", value: \"BN\", code: \"+673\" },\n // Brunei\n { label: \"BG\", value: \"BG\", code: \"+359\" },\n // Bulgaria\n { label: \"BF\", value: \"BF\", code: \"+226\" },\n // Burkina Faso\n { label: \"BI\", value: \"BI\", code: \"+257\" },\n // Burundi\n { label: \"KH\", value: \"KH\", code: \"+855\" },\n // Cambodia\n { label: \"CM\", value: \"CM\", code: \"+237\" },\n // Cameroon\n { label: \"CA\", value: \"CA\", code: \"+1\" },\n // Canada\n { label: \"CV\", value: \"CV\", code: \"+238\" },\n // Cape Verde\n { label: \"KY\", value: \"KY\", code: \"+1345\" },\n // Cayman Islands\n { label: \"CF\", value: \"CF\", code: \"+236\" },\n // Central African Republic\n { label: \"TD\", value: \"TD\", code: \"+235\" },\n // Chad\n { label: \"CL\", value: \"CL\", code: \"+56\" },\n // Chile\n { label: \"CN\", value: \"CN\", code: \"+86\" },\n // China\n { label: \"CX\", value: \"CX\", code: \"+61\" },\n // Christmas Island\n { label: \"CC\", value: \"CC\", code: \"+61\" },\n // Cocos Islands\n { label: \"CO\", value: \"CO\", code: \"+57\" },\n // Colombia\n { label: \"KM\", value: \"KM\", code: \"+269\" },\n // Comoros\n { label: \"CK\", value: \"CK\", code: \"+682\" },\n // Cook Islands\n { label: \"CR\", value: \"CR\", code: \"+506\" },\n // Costa Rica\n { label: \"HR\", value: \"HR\", code: \"+385\" },\n // Croatia\n { label: \"CU\", value: \"CU\", code: \"+53\" },\n // Cuba\n { label: \"CW\", value: \"CW\", code: \"+599\" },\n // Curacao\n { label: \"CY\", value: \"CY\", code: \"+357\" },\n // Cyprus\n { label: \"CZ\", value: \"CZ\", code: \"+420\" },\n // Czech Republic\n { label: \"CD\", value: \"CD\", code: \"+243\" },\n // Democratic Republic of the Congo\n { label: \"DK\", value: \"DK\", code: \"+45\" },\n // Denmark\n { label: \"DJ\", value: \"DJ\", code: \"+253\" },\n // Djibouti\n { label: \"DM\", value: \"DM\", code: \"+1767\" },\n // Dominica\n { label: \"DO\", value: \"DO\", code: \"+1809\" },\n // Dominican Republic\n { label: \"DO\", value: \"DO\", code: \"+1829\" },\n // Dominican Republic\n { label: \"DO\", value: \"DO\", code: \"+1849\" },\n // Dominican Republic\n { label: \"TL\", value: \"TL\", code: \"+670\" },\n // East Timor\n { label: \"EC\", value: \"EC\", code: \"+593\" },\n // Ecuador\n { label: \"EG\", value: \"EG\", code: \"+20\" },\n // Egypt\n { label: \"SV\", value: \"SV\", code: \"+503\" },\n // El Salvador\n { label: \"GQ\", value: \"GQ\", code: \"+240\" },\n // Equatorial Guinea\n { label: \"ER\", value: \"ER\", code: \"+291\" },\n // Eritrea\n { label: \"EE\", value: \"EE\", code: \"+372\" },\n // Estonia\n { label: \"ET\", value: \"ET\", code: \"+251\" },\n // Ethiopia\n { label: \"FK\", value: \"FK\", code: \"+500\" },\n // Falkland Islands\n { label: \"FO\", value: \"FO\", code: \"+298\" },\n // Faroe Islands\n { label: \"FJ\", value: \"FJ\", code: \"+679\" },\n // Fiji\n { label: \"FI\", value: \"FI\", code: \"+358\" },\n // Finland\n { label: \"FR\", value: \"FR\", code: \"+33\" },\n // France\n { label: \"PF\", value: \"PF\", code: \"+689\" },\n // French Polynesia\n { label: \"GA\", value: \"GA\", code: \"+241\" },\n // Gabon\n { label: \"GM\", value: \"GM\", code: \"+220\" },\n // Gambia\n { label: \"GE\", value: \"GE\", code: \"+995\" },\n // Georgia\n { label: \"DE\", value: \"DE\", code: \"+49\" },\n // Germany\n { label: \"GH\", value: \"GH\", code: \"+233\" },\n // Ghana\n { label: \"GI\", value: \"GI\", code: \"+350\" },\n // Gibraltar\n { label: \"GR\", value: \"GR\", code: \"+30\" },\n // Greece\n { label: \"GL\", value: \"GL\", code: \"+299\" },\n // Greenland\n { label: \"GD\", value: \"GD\", code: \"+1473\" },\n // Grenada\n { label: \"GU\", value: \"GU\", code: \"+1671\" },\n // Guam\n { label: \"GT\", value: \"GT\", code: \"+502\" },\n // Guatemala\n { label: \"GG\", value: \"GG\", code: \"+441481\" },\n // Guernsey\n { label: \"GN\", value: \"GN\", code: \"+224\" },\n // Guinea\n { label: \"GW\", value: \"GW\", code: \"+245\" },\n // Guinea-Bissau\n { label: \"GY\", value: \"GY\", code: \"+592\" },\n // Guyana\n { label: \"HT\", value: \"HT\", code: \"+509\" },\n // Haiti\n { label: \"HN\", value: \"HN\", code: \"+504\" },\n // Honduras\n { label: \"HK\", value: \"HK\", code: \"+852\" },\n // Hong Kong\n { label: \"HU\", value: \"HU\", code: \"+36\" },\n // Hungary\n { label: \"IS\", value: \"IS\", code: \"+354\" },\n // Iceland\n { label: \"IN\", value: \"IN\", code: \"+91\" },\n // India\n { label: \"ID\", value: \"ID\", code: \"+62\" },\n // Indonesia\n { label: \"IR\", value: \"IR\", code: \"+98\" },\n // Iran\n { label: \"IQ\", value: \"IQ\", code: \"+964\" },\n // Iraq\n { label: \"IE\", value: \"IE\", code: \"+353\" },\n // Ireland\n { label: \"IM\", value: \"IM\", code: \"+441624\" },\n // Isle of Man\n { label: \"IL\", value: \"IL\", code: \"+972\" },\n // Israel\n { label: \"IT\", value: \"IT\", code: \"+39\" },\n // Italy\n { label: \"CI\", value: \"CI\", code: \"+225\" },\n // Ivory Coast\n { label: \"JM\", value: \"JM\", code: \"+1876\" },\n // Jamaica\n { label: \"JP\", value: \"JP\", code: \"+81\" },\n // Japan\n { label: \"JE\", value: \"JE\", code: \"+441534\" },\n // Jersey\n { label: \"JO\", value: \"JO\", code: \"+962\" },\n // Jordan\n { label: \"KZ\", value: \"KZ\", code: \"+7\" },\n // Kazakhstan\n { label: \"KE\", value: \"KE\", code: \"+254\" },\n // Kenya\n { label: \"KI\", value: \"KI\", code: \"+686\" },\n // Kiribati\n { label: \"XK\", value: \"XK\", code: \"+383\" },\n // Kosovo\n { label: \"KW\", value: \"KW\", code: \"+965\" },\n // Kuwait\n { label: \"KG\", value: \"KG\", code: \"+996\" },\n // Kyrgyzstan\n { label: \"LA\", value: \"LA\", code: \"+856\" },\n // Laos\n { label: \"LV\", value: \"LV\", code: \"+371\" },\n // Latvia\n { label: \"LB\", value: \"LB\", code: \"+961\" },\n // Lebanon\n { label: \"LS\", value: \"LS\", code: \"+266\" },\n // Lesotho\n { label: \"LR\", value: \"LR\", code: \"+231\" },\n // Liberia\n { label: \"LY\", value: \"LY\", code: \"+218\" },\n // Libya\n { label: \"LI\", value: \"LI\", code: \"+423\" },\n // Liechtenstein\n { label: \"LT\", value: \"LT\", code: \"+370\" },\n // Lithuania\n { label: \"LU\", value: \"LU\", code: \"+352\" },\n // Luxembourg\n { label: \"MO\", value: \"MO\", code: \"+853\" },\n // Macau\n { label: \"MK\", value: \"MK\", code: \"+389\" },\n // Macedonia\n { label: \"MG\", value: \"MG\", code: \"+261\" },\n // Madagascar\n { label: \"MW\", value: \"MW\", code: \"+265\" },\n // Malawi\n { label: \"MY\", value: \"MY\", code: \"+60\" },\n // Malaysia\n { label: \"MV\", value: \"MV\", code: \"+960\" },\n // Maldives\n { label: \"ML\", value: \"ML\", code: \"+223\" },\n // Mali\n { label: \"MT\", value: \"MT\", code: \"+356\" },\n // Malta\n { label: \"MH\", value: \"MH\", code: \"+692\" },\n // Marshall Islands\n { label: \"MR\", value: \"MR\", code: \"+222\" },\n // Mauritania\n { label: \"MU\", value: \"MU\", code: \"+230\" },\n // Mauritius\n { label: \"YT\", value: \"YT\", code: \"+262\" },\n // Mayotte\n { label: \"MX\", value: \"MX\", code: \"+52\" },\n // Mexico\n { label: \"FM\", value: \"FM\", code: \"+691\" },\n // Micronesia\n { label: \"MD\", value: \"MD\", code: \"+373\" },\n // Moldova\n { label: \"MC\", value: \"MC\", code: \"+377\" },\n // Monaco\n { label: \"MN\", value: \"MN\", code: \"+976\" },\n // Mongolia\n { label: \"ME\", value: \"ME\", code: \"+382\" },\n // Montenegro\n { label: \"MS\", value: \"MS\", code: \"+1664\" },\n // Montserrat\n { label: \"MA\", value: \"MA\", code: \"+212\" },\n // Morocco\n { label: \"MZ\", value: \"MZ\", code: \"+258\" },\n // Mozambique\n { label: \"MM\", value: \"MM\", code: \"+95\" },\n // Myanmar\n { label: \"NA\", value: \"NA\", code: \"+264\" },\n // Namibia\n { label: \"NR\", value: \"NR\", code: \"+674\" },\n // Nauru\n { label: \"NP\", value: \"NP\", code: \"+977\" },\n // Nepal\n { label: \"NL\", value: \"NL\", code: \"+31\" },\n // Netherlands\n { label: \"AN\", value: \"AN\", code: \"+599\" },\n // Netherlands Antilles\n { label: \"NC\", value: \"NC\", code: \"+687\" },\n // New Caledonia\n { label: \"NZ\", value: \"NZ\", code: \"+64\" },\n // New Zealand\n { label: \"NI\", value: \"NI\", code: \"+505\" },\n // Nicaragua\n { label: \"NE\", value: \"NE\", code: \"+227\" },\n // Niger\n { label: \"NG\", value: \"NG\", code: \"+234\" },\n // Nigeria\n { label: \"NU\", value: \"NU\", code: \"+683\" },\n // Niue\n { label: \"KP\", value: \"KP\", code: \"+850\" },\n // North Korea\n { label: \"MP\", value: \"MP\", code: \"+1670\" },\n // Northern Mariana Islands\n { label: \"NO\", value: \"NO\", code: \"+47\" },\n // Norway\n { label: \"OM\", value: \"OM\", code: \"+968\" },\n // Oman\n { label: \"PK\", value: \"PK\", code: \"+92\" },\n // Pakistan\n { label: \"PW\", value: \"PW\", code: \"+680\" },\n // Palau\n { label: \"PS\", value: \"PS\", code: \"+970\" },\n // Palestine\n { label: \"PA\", value: \"PA\", code: \"+507\" },\n // Panama\n { label: \"PG\", value: \"PG\", code: \"+675\" },\n // Papua New Guinea\n { label: \"PY\", value: \"PY\", code: \"+595\" },\n // Paraguay\n { label: \"PE\", value: \"PE\", code: \"+51\" },\n // Peru\n { label: \"PH\", value: \"PH\", code: \"+63\" },\n // Philippines\n { label: \"PN\", value: \"PN\", code: \"+64\" },\n // Pitcairn\n { label: \"PL\", value: \"PL\", code: \"+48\" },\n // Poland\n { label: \"PT\", value: \"PT\", code: \"+351\" },\n // Portugal\n { label: \"PR\", value: \"PR\", code: \"+1787\" },\n // Puerto Rico\n { label: \"PR\", value: \"PR\", code: \"+1939\" },\n // Puerto Rico\n { label: \"QA\", value: \"QA\", code: \"+974\" },\n // Qatar\n { label: \"CG\", value: \"CG\", code: \"+242\" },\n // Republic of the Congo\n { label: \"RE\", value: \"RE\", code: \"+262\" },\n // Reunion\n { label: \"RO\", value: \"RO\", code: \"+40\" },\n // Romania\n { label: \"RU\", value: \"RU\", code: \"+7\" },\n // Russia\n { label: \"RW\", value: \"RW\", code: \"+250\" },\n // Rwanda\n { label: \"BL\", value: \"BL\", code: \"+590\" },\n // Saint Barthelemy\n { label: \"SH\", value: \"SH\", code: \"+290\" },\n // Saint Helena\n { label: \"KN\", value: \"KN\", code: \"+1869\" },\n // Saint Kitts and Nevis\n { label: \"LC\", value: \"LC\", code: \"+1758\" },\n // Saint Lucia\n { label: \"MF\", value: \"MF\", code: \"+590\" },\n // Saint Martin\n { label: \"PM\", value: \"PM\", code: \"+508\" },\n // Saint Pierre and Miquelon\n { label: \"VC\", value: \"VC\", code: \"+1784\" },\n // Saint Vincent and the Grenadines\n { label: \"WS\", value: \"WS\", code: \"+685\" },\n // Samoa\n { label: \"SM\", value: \"SM\", code: \"+378\" },\n // San Marino\n { label: \"ST\", value: \"ST\", code: \"+239\" },\n // Sao Tome and Principe\n { label: \"SA\", value: \"SA\", code: \"+966\" },\n // Saudi Arabia\n { label: \"SN\", value: \"SN\", code: \"+221\" },\n // Senegal\n { label: \"RS\", value: \"RS\", code: \"+381\" },\n // Serbia\n { label: \"SC\", value: \"SC\", code: \"+248\" },\n // Seychelles\n { label: \"SL\", value: \"SL\", code: \"+232\" },\n // Sierra Leone\n { label: \"SG\", value: \"SG\", code: \"+65\" },\n // Singapore\n { label: \"SX\", value: \"SX\", code: \"+1721\" },\n // Sint Maarten\n { label: \"SK\", value: \"SK\", code: \"+421\" },\n // Slovakia\n { label: \"SI\", value: \"SI\", code: \"+386\" },\n // Slovenia\n { label: \"SB\", value: \"SB\", code: \"+677\" },\n // Solomon Islands\n { label: \"SO\", value: \"SO\", code: \"+252\" },\n // Somalia\n { label: \"ZA\", value: \"ZA\", code: \"+27\" },\n // South Africa\n { label: \"KR\", value: \"KR\", code: \"+82\" },\n // South Korea\n { label: \"SS\", value: \"SS\", code: \"+211\" },\n // South Sudan\n { label: \"ES\", value: \"ES\", code: \"+34\" },\n // Spain\n { label: \"LK\", value: \"LK\", code: \"+94\" },\n // Sri Lanka\n { label: \"SD\", value: \"SD\", code: \"+249\" },\n // Sudan\n { label: \"SR\", value: \"SR\", code: \"+597\" },\n // Suriname\n { label: \"SJ\", value: \"SJ\", code: \"+47\" },\n // Svalbard and Jan Mayen\n { label: \"SZ\", value: \"SZ\", code: \"+268\" },\n // Swaziland\n { label: \"SE\", value: \"SE\", code: \"+46\" },\n // Sweden\n { label: \"CH\", value: \"CH\", code: \"+41\" },\n // Switzerland\n { label: \"SY\", value: \"SY\", code: \"+963\" },\n // Syria\n { label: \"TW\", value: \"TW\", code: \"+886\" },\n // Taiwan\n { label: \"TJ\", value: \"TJ\", code: \"+992\" },\n // Tajikistan\n { label: \"TZ\", value: \"TZ\", code: \"+255\" },\n // Tanzania\n { label: \"TH\", value: \"TH\", code: \"+66\" },\n // Thailand\n { label: \"TG\", value: \"TG\", code: \"+228\" },\n // Togo\n { label: \"TK\", value: \"TK\", code: \"+690\" },\n // Tokelau\n { label: \"TO\", value: \"TO\", code: \"+676\" },\n // Tonga\n { label: \"TT\", value: \"TT\", code: \"+1868\" },\n // Trinidad and Tobago\n { label: \"TN\", value: \"TN\", code: \"+216\" },\n // Tunisia\n { label: \"TR\", value: \"TR\", code: \"+90\" },\n // Turkey\n { label: \"TM\", value: \"TM\", code: \"+993\" },\n // Turkmenistan\n { label: \"TC\", value: \"TC\", code: \"+1649\" },\n // Turks and Caicos Islands\n { label: \"TV\", value: \"TV\", code: \"+688\" },\n // Tuvalu\n { label: \"VI\", value: \"VI\", code: \"+1340\" },\n // U.S. Virgin Islands\n { label: \"UG\", value: \"UG\", code: \"+256\" },\n // Uganda\n { label: \"UA\", value: \"UA\", code: \"+380\" },\n // Ukraine\n { label: \"AE\", value: \"AE\", code: \"+971\" },\n // United Arab Emirates\n { label: \"GB\", value: \"GB\", code: \"+44\" },\n // United Kingdom\n { label: \"US\", value: \"US\", code: \"+1\" },\n // United States\n { label: \"UY\", value: \"UY\", code: \"+598\" },\n // Uruguay\n { label: \"UZ\", value: \"UZ\", code: \"+998\" },\n // Uzbekistan\n { label: \"VU\", value: \"VU\", code: \"+678\" },\n // Vanuatu\n { label: \"VA\", value: \"VA\", code: \"+379\" },\n // Vatican\n { label: \"VE\", value: \"VE\", code: \"+58\" },\n // Venezuela\n { label: \"VN\", value: \"VN\", code: \"+84\" },\n // Vietnam\n { label: \"WF\", value: \"WF\", code: \"+681\" },\n // Wallis and Futuna\n { label: \"EH\", value: \"EH\", code: \"+212\" },\n // Western Sahara\n { label: \"YE\", value: \"YE\", code: \"+967\" },\n // Yemen\n { label: \"ZM\", value: \"ZM\", code: \"+260\" },\n // Zambia\n { label: \"ZW\", value: \"ZW\", code: \"+263\" }\n // Zimbabwe\n];\nfunction ka() {\n return pe` <svg\n class=\"shrink-0 size-3.5 text-gray-500 dark:text-neutral-500\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n>\n <path d=\"m7 15 5 5 5-5\"></path>\n <path d=\"m7 9 5-5 5 5\"></path>\n</svg>\n `;\n}\nfunction Fn() {\n return pe`\n <svg\n class=\"rtg-shrink-0 rtg-size-3.5 rtg-text-primary\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <path d=\"M20 6 9 17l-5-5\"></path>\n </svg>\n `;\n}\nfunction Aa() {\n return pe` <svg \n xmlns=\"http://www.w3.org/2000/svg\" \n width = \"24\" \n height = \"24\" \n viewBox = \"0 0 24 24\" \n fill = \"none\" \n stroke = \"currentColor\" \n stroke-width=\"2\" \n stroke-linecap=\"round\" \n stroke-linejoin=\"round\" \n class=\"lucide lucide-search rtg-h-4 rtg-w-4 rtg-shrink-0 rtg-opacity-50\" > \n <circle cx=\"11\" cy = \"11\" r = \"8\" > </circle>\n <path d=\"m21 21-4.3-4.3\"></path > \n </svg>\n `;\n}\nfunction Bs() {\n return pe` <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"#000000\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-circle rtg-h-2 rtg-w-2 rtg-fill-current\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n `;\n}\nfunction Vn() {\n return pe` <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-chevron-down rtg-h-4 rtg-w-4 rtg-shrink-0 rtg-transition-transform rtg-duration-200\"><path d=\"m6 9 6 6 6-6\"></path></svg>\n `;\n}\nfunction La() {\n return pe` <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"#000000\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-circle rtg-h-3.5 rtg-w-3.5 rtg-fill-primary\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle></svg\n >\n `;\n}\nfunction Ia() {\n return pe` <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"#000000\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-x h-4 w-4\"\n >\n <path d=\"M18 6 6 18\"></path>\n <path d=\"m6 6 12 12\"></path>\n </svg>\n `;\n}\nfunction Ta() {\n return pe` \n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-arrow-left h-4 w-4\"\n > \n <path d=\"m12 19-7-7 7-7\"></path>\n <path d=\"M19 12H5\"></path>\n </svg>\n `;\n}\nfunction ja() {\n return pe` \n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-arrow-right h-4 w-4\"\n >\n <path d=\"M5 12h14\"></path>\n <path d=\"m12 5 7 7-7 7\"></path>\n </svg>\n `;\n}\nfunction Ma() {\n return pe`<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-minus\"><path d=\"M5 12h14\"></path></svg>`;\n}\nfunction Na() {\n return pe`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"rtg-h-4 rtg-w-4\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n >\n <!-- Eye outline -->\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M1.5 12s4-7.5 10.5-7.5S22.5 12 22.5 12s-4 7.5-10.5 7.5S1.5 12 1.5 12z\"\n />\n <!-- Pupil -->\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n <!-- Diagonal slash -->\n <line\n x1=\"4\"\n y1=\"20\"\n x2=\"20\"\n y2=\"4\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n `;\n}\nfunction Ua() {\n return pe`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"rtg-h-4 rtg-w-4\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M1.5 12s4-7.5 10.5-7.5S22.5 12 22.5 12s-4 7.5-10.5 7.5S1.5 12 1.5 12z\"\n />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n `;\n}\nvar za = Object.defineProperty, qa = Object.getOwnPropertyDescriptor, ne = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? qa(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && za(t, o, r), r;\n};\nlet re = class extends h {\n constructor() {\n super(), this.disabled = !1, this.type = \"text\", this.placeholder = \"\", this.defaultValue = \"\", this.value = \"\", this.dataKey = \"\", this.country = \"US\", this.countryCode = \"+1\", this.selectedLabel = \"US\", this.rawTelValue = \"\", this.showPassword = !1, this.value = this.defaultValue, this.rawTelValue = this.defaultValue;\n }\n togglePasswordVisibility() {\n this.showPassword = !this.showPassword;\n }\n handleCountryChange(e) {\n const t = e.target, o = Ao.find((s) => s.value === t.value);\n o && (this.country = o.value, this.countryCode = o.code, this.selectedLabel = o.value, this.emitValueChange(), this.requestUpdate()), e.stopPropagation();\n }\n firstUpdated(e) {\n this.removeParentAttributes();\n const t = [\"--input-border-radius\", \"--input-padding\"];\n this.applyCustomClass(t, \"input\", \"input-base\"), this.type === \"tel\" ? this.rawTelValue = this.defaultValue : this.defaultValue && (this.value = this.defaultValue), this.observeStyleAndClassSync(this.inputElement);\n }\n handleInputChange(e) {\n const t = e.target;\n if (this.type === \"file\") {\n this.value = t.files ? t.files[0].name : \"\", this.dispatchEvent(\n new CustomEvent(\"input\", {\n bubbles: !0,\n composed: !0,\n detail: { value: this.value }\n })\n );\n return;\n }\n this.type === \"tel\" ? (this.rawTelValue = t.value, this.emitValueChange()) : (this.value = t.value, this.dispatchEvent(\n new CustomEvent(\"input\", {\n bubbles: !0,\n composed: !0,\n detail: { value: this.value }\n })\n ));\n }\n emitValueChange() {\n this.value = `${this.countryCode}-${this.rawTelValue}`, this.dispatchEvent(\n new CustomEvent(\"input\", {\n bubbles: !0,\n composed: !0,\n detail: { value: this.value, code: this.countryCode }\n })\n );\n }\n handleFocus() {\n this.dispatchEvent(\n new CustomEvent(\"focus\", {\n bubbles: !0,\n composed: !0,\n detail: { dataKey: this.dataKey }\n })\n );\n }\n getAttributesToExclude() {\n return [\n \"disabled\",\n \"type\",\n \"placeholder\",\n \"value\",\n \"data-testid\",\n \"custom-class\",\n \"data-key\"\n ];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return this.type === \"tel\" ? d`\n <div\n class=\"${g(\n \"rtg-flex rtg-items-center rtg-border rtg-border-input rtg-rounded-md rtg-px-3 rtg-py-1 disabled:rtg-opacity-50\",\n \"focus-within:rtg-outline-none focus-within:rtg-ring-[3px] focus-within:rtg-ring-custom-outline focus-within:rtg-border-ring\",\n Xr,\n this.customClass\n )}\"\n ${z(e)}\n >\n <select\n class=\"rtg-w-[40px] rtg-bg-background rtg-text-sm rtg-text-foreground rtg-outline-none\"\n @change=${this.handleCountryChange}\n .value=${this.country}\n >\n ${Ao.map(\n (t) => d`\n <option value=${t.value} ?selected=${this.country === t.value}>\n ${t.label} ${t.code}\n </option>\n `\n )}\n </select>\n <span class=\"rtg-ml-2 rtg-text-sm\">${this.countryCode}</span>\n <input\n part=\"input\"\n type=\"tel\"\n class=\"input-base rtg-no-autofill-bg rtg-flex-1 rtg-bg-transparent rtg-px-3 rtg-py-[3px] rtg-text-sm rtg-text-primary focus-visible:rtg-outline-none\"\n placeholder=${this.placeholder}\n .value=${this.rawTelValue}\n @input=${this.handleInputChange}\n @focus=${this.handleFocus}\n ?disabled=${this.disabled}\n />\n </div>\n ` : this.type === \"password\" ? d`\n <div\n class=\"${g(\n \"rtg-flex rtg-items-center rtg-border rtg-border-input rtg-rounded-md rtg-px-3 rtg-py-[2px] disabled:rtg-opacity-50\",\n \"focus-within:rtg-outline-none focus-within:rtg-ring-[3px] focus-within:rtg-ring-custom-outline focus-within:rtg-border-ring\",\n Xr,\n this.customClass\n )}\"\n >\n <input\n part=\"input\"\n type=${this.showPassword ? \"text\" : \"password\"}\n placeholder=${this.placeholder}\n ?disabled=${this.disabled}\n .value=${this.value}\n @input=${this.handleInputChange}\n @focus=${this.handleFocus}\n ${z(e)}\n class=\"input-base rtg-no-autofill-bg rtg-flex-1 rtg-bg-transparent rtg-py-[3px] rtg-text-sm rtg-text-primary focus-visible:rtg-outline-none\"\n />\n <button\n type=\"button\"\n class=\"rtg-ml-2 rtg-cursor-pointer rtg-text-muted-foreground rtg-outline-none hover:rtg-text-foreground focus:rtg-ring-0\"\n @click=${this.togglePasswordVisibility}\n aria-label=${this.showPassword ? \"Hide password\" : \"Show password\"}\n >\n ${this.showPassword ? Na() : Ua()}\n </button>\n </div>\n ` : d`\n <input\n part=\"input\"\n type=\"${this.type}\"\n placeholder=\"${this.placeholder}\"\n ?disabled=${this.disabled}\n .value=${this.type !== \"file\" ? this.value : \"\"}\n @input=${this.handleInputChange}\n @focus=${this.handleFocus}\n ${z(e)}\n class=\"${g(Xr, this.customClass)}\"\n />\n `;\n }\n};\nne([\n ee(\"input\")\n], re.prototype, \"inputElement\", 2);\nne([\n l({ type: Boolean })\n], re.prototype, \"disabled\", 2);\nne([\n l({ type: String })\n], re.prototype, \"type\", 2);\nne([\n l({ type: String })\n], re.prototype, \"placeholder\", 2);\nne([\n l({ type: String })\n], re.prototype, \"defaultValue\", 2);\nne([\n l({ type: String })\n], re.prototype, \"value\", 2);\nne([\n l({ type: String, attribute: \"data-key\" })\n], re.prototype, \"dataKey\", 2);\nne([\n l({ type: String })\n], re.prototype, \"country\", 2);\nne([\n l({ type: String })\n], re.prototype, \"countryCode\", 2);\nne([\n l({ type: String })\n], re.prototype, \"selectedLabel\", 2);\nne([\n D()\n], re.prototype, \"rawTelValue\", 2);\nne([\n D()\n], re.prototype, \"showPassword\", 2);\nre = ne([\n p(\"rtg-input\")\n], re);\nconst Lo = (e) => typeof e == \"boolean\" ? `${e}` : e === 0 ? \"0\" : e, Io = Ln, he = (e, t) => (o) => {\n var s;\n if ((t == null ? void 0 : t.variants) == null) return Io(e, o == null ? void 0 : o.class, o == null ? void 0 : o.className);\n const { variants: r, defaultVariants: n } = t, i = Object.keys(r).map((b) => {\n const x = o == null ? void 0 : o[b], k = n == null ? void 0 : n[b];\n if (x === null) return null;\n const F = Lo(x) || Lo(k);\n return r[b][F];\n }), v = o && Object.entries(o).reduce((b, x) => {\n let [k, F] = x;\n return F === void 0 || (b[k] = F), b;\n }, {}), y = t == null || (s = t.compoundVariants) === null || s === void 0 ? void 0 : s.reduce((b, x) => {\n let { class: k, className: F, ...H } = x;\n return Object.entries(H).every((j) => {\n let [U, O] = j;\n return Array.isArray(O) ? O.includes({\n ...n,\n ...v\n }[U]) : {\n ...n,\n ...v\n }[U] === O;\n }) ? [\n ...b,\n k,\n F\n ] : b;\n }, []);\n return Io(e, i, y, o == null ? void 0 : o.class, o == null ? void 0 : o.className);\n}, Ba = he(\n \"rtg-text-sm rtg-font-medium rtg-leading-none peer-disabled:rtg-cursor-not-allowed peer-disabled:rtg-opacity-70\"\n);\nvar Fa = Object.defineProperty, Va = Object.getOwnPropertyDescriptor, Hn = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Va(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Fa(t, o, r), r;\n};\nlet _t = class extends h {\n constructor() {\n super(...arguments), this.for = \"\";\n }\n firstUpdated(e) {\n const t = [\"--label-text-color\", \"--label-padding\"];\n this.applyCustomClass(t, \"label\", \"label-base\");\n }\n getAttributesToExclude() {\n return [\"for\", \"data-testid\", \"class\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <label\n ${z(e)}\n part=\"label\"\n for=\"${this.for}\"\n class=\"${g(\n _t.labelVariants({\n className: this.className\n }),\n \"label-base\"\n )}\"\n >\n <slot></slot>\n <!-- Render children without comments -->\n </label>\n `;\n }\n};\n_t.labelVariants = Ba;\n_t.styles = [\n ct`\n :root {\n --label-text-color: inherit;\n --label-padding: inherit;\n }\n .label-base {\n color: var(--label-text-color) !important;\n padding: var(--label-padding) !important;\n }\n `\n];\nHn([\n l({ type: String })\n], _t.prototype, \"for\", 2);\n_t = Hn([\n p(\"rtg-label\")\n], _t);\nconst Ha = \"rtg-peer rtg-shadow-sm rtg-h-4 rtg-w-4 rtg-align-middle rtg-shrink-0 rtg-rounded-sm rtg-border rtg-border-input focus:rtg-border-ring rtg-ring-offset-background focus-visible:rtg-outline-none focus:rtg-ring-[3px] focus:rtg-ring-custom-outline disabled:rtg-opacity-50 data-[state=checked]:rtg-bg-primary data-[state=checked]:rtg-text-primary-foreground\", Ga = \"rtg-flex rtg-items-center rtg-justify-center rtg-text-current rtg-pointer-events-none\";\nvar Ya = Object.defineProperty, Ka = Object.getOwnPropertyDescriptor, Lt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ka(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Ya(t, o, r), r;\n};\nlet Ue = class extends W {\n constructor() {\n super(...arguments), this.disabled = !1, this.checked = !1, this.type = \"text\", this.value = \"\", this.required = !1;\n }\n _onClick(e) {\n e.defaultPrevented || (this.checked = !this.checked, this.required = !this.required, this.dispatchEvent(new Event(\"change\", { bubbles: !0, composed: !0 })));\n }\n click() {\n this.checked = !this.checked, this.required = !this.required;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <button\n part=\"checkbox\"\n data-testid=\"checkbox-atom\"\n type=\"button\"\n role=\"checkbox\"\n aria-checked=\"${this.checked || this.value === \"on\"}\"\n data-state=\"${this.checked || this.value === \"on\" ? \"checked\" : \"unchecked\"}\"\n value=\"${this.value}\"\n ?required=${this.required}\n ?disabled=${this.disabled}\n @click=\"${this._onClick}\"\n class=\"${g(Ha, this.className)}\"\n >\n ${this.checked || this.value === \"on\" ? d`<span data-state=\"checked\" class=\"${Ga}\"\n ><svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <polyline points=\"20 6 9 17 4 12\"></polyline></svg\n ></span>` : Z}\n </button>\n `;\n }\n};\nLt([\n l({ type: Boolean })\n], Ue.prototype, \"disabled\", 2);\nLt([\n l({ type: Boolean })\n], Ue.prototype, \"checked\", 2);\nLt([\n l({ type: String })\n], Ue.prototype, \"type\", 2);\nLt([\n l({ type: String })\n], Ue.prototype, \"value\", 2);\nLt([\n l({ type: Boolean })\n], Ue.prototype, \"required\", 2);\nUe = Lt([\n p(\"rtg-checkbox\")\n], Ue);\nconst Wa = \"rtg-relative rtg-flex rtg-size-8 rtg-shrink-0 rtg-overflow-hidden rtg-rounded-full\", Xa = \"rtg-aspect-square rtg-size-full\", Za = \"rtg-bg-muted rtg-flex rtg-size-full rtg-items-center rtg-justify-center rtg-rounded-full\";\nvar Qa = Object.defineProperty, Ja = Object.getOwnPropertyDescriptor, Gn = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ja(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Qa(t, o, r), r;\n};\nlet ss = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.observeStyleAndClassSync(this.spanElement), this.style.setProperty(\"width\", \"100%\"), this.style.setProperty(\"height\", \"100%\");\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\", o = this.getFilteredAttributes();\n return d`\n <span\n ${z(o)}\n class=\"${g(Za, t)}\"\n style=\"${e}\"\n part=\"avatar-fallback\"\n >\n <slot></slot>\n </span>\n `;\n }\n};\nGn([\n ee(\"span\")\n], ss.prototype, \"spanElement\", 2);\nss = Gn([\n p(\"rtg-avatar-fallback\")\n], ss);\nvar el = Object.defineProperty, tl = Object.getOwnPropertyDescriptor, zr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? tl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && el(t, o, r), r;\n};\nlet Kt = class extends h {\n constructor() {\n super(...arguments), this.alt = \"@shadcn\", this.src = \"https://github.com/shadcn.png\";\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.observeStyleAndClassSync(this.imgElement);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\", o = this.getFilteredAttributes();\n return d`\n <img\n ${z(o)}\n part=\"avatar-image\"\n class=\"${g(Xa, t)}\"\n alt=\"${this.alt}\"\n src=\"${this.src}\"\n style=\"${e}\"\n />\n `;\n }\n};\nzr([\n l({ type: String })\n], Kt.prototype, \"alt\", 2);\nzr([\n l({ type: String })\n], Kt.prototype, \"src\", 2);\nzr([\n ee(\"img\")\n], Kt.prototype, \"imgElement\", 2);\nKt = zr([\n p(\"rtg-avatar-image\")\n], Kt);\nvar rl = Object.defineProperty, sl = Object.getOwnPropertyDescriptor, Yn = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? sl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && rl(t, o, r), r;\n};\nlet os = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.spanElement), this.removeParentAttributes(), this.observeStyleAndClassSync(this.spanElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\", o = this.getFilteredAttributes();\n return d`\n <span\n ${z(o)}\n part=\"avatar\"\n class=\"${g(Wa, t)}\"\n style=\"${e}\"\n >\n </span>\n `;\n }\n};\nYn([\n ee(\"span\")\n], os.prototype, \"spanElement\", 2);\nos = Yn([\n p(\"rtg-avatar\")\n], os);\nconst ol = \"rtg-relative rtg-w-full rtg-overflow-hidden rtg-bg-muted\";\nvar nl = Object.defineProperty, il = Object.getOwnPropertyDescriptor, Kn = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? il(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && nl(t, o, r), r;\n};\nlet ns = class extends W {\n constructor() {\n super(...arguments), this.ratio = 16 / 9, this._children = [];\n }\n // Disable Shadow DOM\n createRenderRoot() {\n return this;\n }\n connectedCallback() {\n super.connectedCallback(), this._children = Array.from(this.childNodes);\n }\n render() {\n const e = 1 / this.ratio * 100;\n return d`\n <div\n class=\"${g(ol, this.className)}\"\n style=\"padding-top: ${e}%;\"\n part=\"aspect-ratio\"\n >\n <div class=\"rtg-absolute rtg-left-0 rtg-top-0 rtg-h-full rtg-w-full\">\n ${this._children}\n </div>\n </div>\n `;\n }\n};\nKn([\n l({ type: Number })\n], ns.prototype, \"ratio\", 2);\nns = Kn([\n p(\"rtg-aspect-ratio\")\n], ns);\nconst al = he(\n \"rtg-inline-flex rtg-items-center rtg-border rtg-px-2.5 rtg-py-0.5 rtg-text-xs rtg-font-semibold rtg-transition-colors focus:rtg-outline-none focus:rtg-ring-2 focus:rtg-ring-ring focus:rtg-ring-offset-2 rtg-border-transparent rtg-rounded-full\",\n {\n variants: {\n variant: {\n default: \"rtg-bg-primary rtg-text-primary-foreground rtg-shadow hover:rtg-bg-primary/90\",\n destructive: \"rtg-bg-destructive rtg-text-destructive-foreground rtg-shadow-sm hover:rtg-bg-destructive/90\",\n outline: \"rtg-border rtg-border-input rtg-bg-background rtg-shadow-sm hover:rtg-bg-accent hover:rtg-text-accent-foreground\",\n secondary: \"rtg-bg-secondary rtg-text-secondary-foreground rtg-shadow-sm hover:rtg-bg-secondary/80\",\n ghost: \"hover:rtg-bg-accent hover:rtg-text-accent-foreground\",\n link: \"rtg-text-primary rtg-underline-offset-4 hover:rtg-underline\"\n }\n },\n defaultVariants: {\n variant: \"default\"\n }\n }\n);\nvar ll = Object.defineProperty, cl = Object.getOwnPropertyDescriptor, Fs = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? cl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ll(t, o, r), r;\n};\nlet Ct = class extends h {\n constructor() {\n super(...arguments), this.variant = \"default\", this.id = \"rtg-badge-id\", this._children = [];\n }\n getAttributesToExclude() {\n return [\"variant\", \"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n connectedCallback() {\n super.connectedCallback(), this._children = Array.from(this.childNodes);\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <div\n ${z(e)}\n id=\"${this.id}\"\n part=\"badge\"\n data-testid=\"badge-content\"\n class=\"${g(\n Ct.badgeVariants({\n variant: this.variant,\n className: this.className\n })\n )}\"\n >\n ${this._children}\n </div>\n `;\n }\n};\nCt.badgeVariants = al;\nFs([\n l({ type: String })\n], Ct.prototype, \"variant\", 2);\nFs([\n l({ type: String })\n], Ct.prototype, \"id\", 2);\nCt = Fs([\n p(\"rtg-badge\")\n], Ct);\nconst Wn = he(\n \"rtg-p-4 rtg-text-sm rtg-font-medium rtg-rounded-md rtg-border rtg-border-transparent\",\n {\n variants: {\n variant: {\n success: \"rtg-bg-green-100 rtg-text-green-800 rtg-border-green-200\",\n error: \"rtg-bg-red-100 rtg-text-red-800 rtg-border-red-200\",\n warning: \"rtg-bg-yellow-100 rtg-text-yellow-800 rtg-border-yellow-200\",\n info: \"rtg-bg-blue-100 rtg-text-blue-800 rtg-border-blue-200\"\n },\n size: {\n small: \"rtg-text-sm\",\n default: \"rtg-text-base\",\n large: \"rtg-text-xl\"\n }\n },\n defaultVariants: {\n variant: \"info\",\n size: \"default\"\n }\n }\n);\nvar dl = Object.defineProperty, ul = Object.getOwnPropertyDescriptor, sr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ul(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && dl(t, o, r), r;\n};\nlet Ze = class extends h {\n constructor() {\n super(...arguments), this.title = \"\", this.message = \"\", this.variant = \"info\", this.size = \"default\";\n }\n // Disable Shadow DOM\n createRenderRoot() {\n return this;\n }\n get _containerElement() {\n return this.querySelector(\"div[role=alert]\");\n }\n get alertClasses() {\n return Wn({ variant: this.variant, size: this.size });\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.removeParentAttributes(), this.observeStyleAndClassSync(this._containerElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\";\n return d`\n <div\n class=\"${g(this.alertClasses, this.className, t)}\"\n style=\"${e}\"\n role=\"alert\"\n >\n ${this.title ? d`<div class=\"rtg-mb-2 rtg-font-bold\" part=\"alert-title\">\n ${this.title}\n </div>` : \"\"}\n ${this.message ? d`<div part=\"alert-description\">${this.message}</div>` : \"\"}\n </div>\n `;\n }\n};\nZe.alertVariants = Wn;\nsr([\n l({ type: String })\n], Ze.prototype, \"title\", 2);\nsr([\n l({ type: String })\n], Ze.prototype, \"message\", 2);\nsr([\n l({ type: String })\n], Ze.prototype, \"variant\", 2);\nsr([\n l({ type: String })\n], Ze.prototype, \"size\", 2);\nZe = sr([\n p(\"rtg-alert\")\n], Ze);\nconst gl = he(\n \"rtg-inline-flex rtg-items-center rtg-justify-center rtg-whitespace-nowrap rtg-rounded-sm rtg-text-sm rtg-font-medium rtg-transition-colors focus-visible:rtg-outline-none focus-visible:rtg-ring-1 focus-visible:rtg-ring-ring disabled:rtg-pointer-events-none disabled:rtg-opacity-50\",\n {\n variants: {\n variant: {\n outline: \"rtg-border rtg-border-input rtg-bg-transparent rtg-shadow-sm hover:rtg-bg-accent hover:rtg-text-accent-foreground\"\n },\n size: {\n default: \"rtg-h-7 rtg-w-7 rtg-p-0\"\n }\n },\n defaultVariants: {\n variant: \"outline\",\n size: \"default\"\n }\n }\n), pl = he(\n \"rtg-inline-flex rtg-items-center rtg-justify-center rtg-whitespace-nowrap rtg-rounded-md rtg-text-sm rtg-font-medium rtg-transition-colors focus-visible:rtg-outline-none focus-visible:rtg-ring-1 focus-visible:rtg-ring-ring disabled:rtg-pointer-events-none disabled:rtg-opacity-50\",\n {\n variants: {\n variant: {\n default: \"rtg-bg-primary rtg-text-primary-foreground rtg-shadow hover:rtg-bg-primary/90 focus:rtg-ring-[3px] focus:rtg-ring-custom-outline\",\n destructive: \"rtg-bg-destructive rtg-text-destructive-foreground rtg-shadow-sm hover:rtg-bg-destructive/90 focus:rtg-ring-[3px] focus:rtg-ring-custom-outline\",\n outline: \"rtg-border rtg-text-primary rtg-border-input rtg-bg-background rtg-shadow-sm hover:rtg-bg-accent hover:rtg-text-accent-foreground focus:rtg-ring-[3px] focus:rtg-ring-custom-outline\",\n secondary: \"rtg-bg-secondary rtg-text-secondary-foreground rtg-shadow-sm hover:rtg-bg-secondary/80 focus:rtg-ring-[3px] focus:rtg-ring-custom-outline\",\n ghost: \"hover:rtg-bg-accent hover:rtg-text-accent-foreground\",\n link: \"rtg-text-primary rtg-underline-offset-4 hover:rtg-underline\"\n },\n size: {\n default: \"rtg-h-9 rtg-rounded-md rtg-px-4 rtg-py-2 rtg-has-[>svg]:px-3\",\n sm: \"rtg-h-8 rtg-rounded-md rtg-px-3 rtg-text-xs rtg-has-[>svg]:px-2.5\",\n lg: \"rtg-h-10 rtg-rounded-md rtg-px-6 rtg-has-[>svg]:px-4\",\n icon: \"rtg-h-9 rtg-w-9\"\n }\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\"\n }\n }\n);\nvar hl = Object.defineProperty, vl = Object.getOwnPropertyDescriptor, ut = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? vl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && hl(t, o, r), r;\n};\nlet fe = class extends h {\n constructor() {\n super(...arguments), this.click = () => {\n }, this.disabled = !1, this.type = \"button\", this.variant = \"default\", this.size = \"default\";\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [\n \"click\",\n \"disabled\",\n \"type\",\n \"variant\",\n \"size\",\n \"data-testid\",\n \"custom-class\"\n ];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated() {\n this.moveLightDomChildrenInto(this.buttonElement), this.removeParentAttributes(), this.observeStyleAndClassSync(this.buttonElement);\n }\n updated(e) {\n this.removeParentAttributes();\n }\n render() {\n const e = this.getFilteredAttributes(), t = this.customStyle || \"\", o = this.customClass || \"\";\n return d`\n <button\n part=\"button\"\n type=\"${this.type}\"\n ${z(e)}\n ?disabled=\"${this.disabled}\"\n class=\"${g(\n fe.buttonVariants({\n variant: this.variant,\n size: this.size,\n className: o\n })\n )}\"\n style=\"${t}\"\n @click=\"${this.click}\"\n ></button>\n `;\n }\n};\nfe.buttonVariants = pl;\nut([\n l({ type: Function })\n], fe.prototype, \"click\", 2);\nut([\n l({ type: Boolean })\n], fe.prototype, \"disabled\", 2);\nut([\n l({ type: String })\n], fe.prototype, \"type\", 2);\nut([\n l({ type: String })\n], fe.prototype, \"variant\", 2);\nut([\n l({ type: String })\n], fe.prototype, \"size\", 2);\nut([\n ee(\"button\")\n], fe.prototype, \"buttonElement\", 2);\nfe = ut([\n p(\"rtg-button\")\n], fe);\nvar fl = Object.defineProperty, ml = Object.getOwnPropertyDescriptor, Ke = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ml(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && fl(t, o, r), r;\n};\nlet me = class extends W {\n constructor() {\n super(...arguments), this.currentDate = /* @__PURE__ */ new Date(), this.selectedStartDate = null, this.selectedEndDate = null, this.variant = \"outline\", this.size = \"default\", this.styleCalendar = !1, this.mode = \"single\";\n }\n getDaysInMonth(e, t) {\n return new Date(e, t + 1, 0).getDate();\n }\n previousMonth() {\n this.currentDate = new Date(\n this.currentDate.getFullYear(),\n this.currentDate.getMonth() - 1\n );\n }\n nextMonth() {\n this.currentDate = new Date(\n this.currentDate.getFullYear(),\n this.currentDate.getMonth() + 1\n );\n }\n selectDate(e, t) {\n if (!t) {\n const o = new Date(\n this.currentDate.getFullYear(),\n this.currentDate.getMonth(),\n e\n );\n o.getMonth() === this.currentDate.getMonth() && (this.mode === \"single\" ? (this.selectedStartDate = o, this.selectedEndDate = null) : this.mode === \"range\" && (!this.selectedStartDate || this.selectedEndDate ? (this.selectedStartDate = o, this.selectedEndDate = null) : o >= this.selectedStartDate ? this.selectedEndDate = o : (this.selectedEndDate = this.selectedStartDate, this.selectedStartDate = o)), this.dispatchEvent(\n new CustomEvent(\"date-selected\", {\n detail: {\n startDate: this.selectedStartDate,\n endDate: this.selectedEndDate\n },\n bubbles: !0,\n composed: !0\n })\n ));\n }\n }\n isDayInRange(e) {\n return !this.selectedStartDate || !this.selectedEndDate || e.getMonth() !== this.currentDate.getMonth() ? !1 : e >= this.selectedStartDate && e <= this.selectedEndDate;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.currentDate.getFullYear(), t = this.currentDate.getMonth(), o = this.getDaysInMonth(e, t), s = new Date(e, t, 1).getDay(), r = new Date(e, t, 0).getDate();\n let n = Array.from({ length: s }, (i, v) => ({ day: (r - (s - 1) + v).toString(), isInactive: !0, isCurrentMonth: !1 }));\n return n = n.concat(\n Array.from({ length: o }, (i, v) => ({\n day: (v + 1).toString(),\n isInactive: !1,\n isCurrentMonth: !0\n }))\n ), d`\n <div\n part=\"calendar\"\n style=\"\n width: fit-content;\n ${this.styleCalendar ? \"margin-left: -16px; margin-top: -16px;\" : \"\"}\"\n class=\"${g(\n \"rtg-p-3 rtg-rounded-md rtg-border rtg-shadow rtg-bg-popover\",\n this.className\n )}\"\n >\n <div\n class=\"rtg-flex rtg-flex-col rtg-space-y-4 sm:rtg-flex-row sm:rtg-space-x-4 sm:rtg-space-y-0\"\n >\n <div class=\"rtg-space-y-4\">\n <div\n class=\"rtg-relative rtg-flex rtg-items-center rtg-justify-center rtg-pt-1\"\n >\n <div class=\"rtg-flex rtg-items-center rtg-space-x-1\">\n <button\n style=\"width:1.75rem\"\n class=\"rtg-nav-button rtg-absolute rtg-left-2 rtg-inline-flex rtg-h-7 rtg-w-7 rtg-items-center rtg-justify-center rtg-whitespace-nowrap rtg-rounded-sm rtg-border rtg-border-input rtg-bg-transparent rtg-p-0 rtg-text-sm rtg-font-medium rtg-text-muted-foreground rtg-shadow-sm rtg-transition-colors hover:rtg-bg-accent hover:rtg-text-accent-foreground focus-visible:rtg-outline-none focus-visible:rtg-ring-1 focus-visible:rtg-ring-ring disabled:rtg-pointer-events-none disabled:rtg-opacity-50\"\n @click=\"${this.previousMonth}\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n style=\"width:1rem;height:1rem;\"\n class=\"lucide lucide-chevron-left rdp-nav_icon hover:rtg-text-muted-foreground\"\n >\n <path d=\"m15 18-6-6 6-6\"></path>\n </svg>\n </button>\n <div\n style=\"font-weight:600\"\n class=\"rtg-text-sm rtg-text-accent-foreground\"\n >\n ${this.currentDate.toLocaleString(\"default\", {\n month: \"long\",\n year: \"numeric\"\n })}\n </div>\n <button\n style=\"width:1.75rem\"\n class=\"rtg-nav-button rtg-absolute rtg-right-1 rtg-inline-flex rtg-h-7 rtg-w-7 rtg-items-center rtg-justify-center rtg-whitespace-nowrap rtg-rounded-sm rtg-border rtg-border-input rtg-bg-transparent rtg-p-0 rtg-text-sm rtg-font-medium rtg-text-muted-foreground rtg-shadow-sm rtg-transition-colors hover:rtg-bg-accent hover:rtg-text-accent-foreground focus-visible:rtg-outline-none focus-visible:rtg-ring-1 focus-visible:rtg-ring-ring disabled:rtg-pointer-events-none disabled:rtg-opacity-50\"\n @click=\"${this.nextMonth}\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"48\"\n height=\"48\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n style=\"width:1rem;height:1rem;\"\n class=\"lucide lucide-chevron-right rdp-nav_icon hover:rtg-text-muted-foreground\"\n >\n <path d=\"m9 18 6-6-6-6\"></path>\n </svg>\n </button>\n </div>\n </div>\n <table\n class=\"rtg-w-full rtg-border-collapse rtg-space-y-1\"\n role=\"grid\"\n >\n <thead class=\"rdp-head\">\n <tr class=\"rtg-flex\">\n ${[\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"].map(\n (i) => d`\n <th\n style=\"font-size:0.8rem\"\n scope=\"col\"\n class=\"rtg-w-8 rtg-rounded-md rtg-font-medium rtg-text-muted-foreground\"\n aria-label=\"${i}\"\n >\n ${i}\n </th>\n `\n )}\n </tr>\n </thead>\n <tbody class=\"rdp-tbody\">\n ${Array.from(\n { length: Math.ceil(n.length / 7) },\n (i, v) => d`\n <tr class=\"rtg-mt-2 rtg-flex rtg-w-full\">\n ${n.slice(v * 7, (v + 1) * 7).map((y) => {\n const b = new Date(\n this.currentDate.getFullYear(),\n this.currentDate.getMonth(),\n Number(y.day)\n ), x = this.selectedStartDate && b.toDateString() === this.selectedStartDate.toDateString(), k = this.selectedEndDate && b.toDateString() === this.selectedEndDate.toDateString(), F = this.isDayInRange(b);\n return d`\n <td\n class=\"${g(\n \"rtg-relative rtg-p-0 rtg-text-center rtg-text-sm focus-within:rtg-relative focus-within:rtg-z-20\",\n x && y.isCurrentMonth && \"day-range-start\",\n k && y.isCurrentMonth && \"day-range-end\",\n F && y.isCurrentMonth && \"day-in-range bg-muted\"\n )}\"\n role=\"presentation\"\n >\n <button\n name=\"day\"\n class=\"${g(\n \"rtg-flex rtg-justify-center rtg-items-center rtg-rounded rtg-cursor-pointer rtg-transition-colors rtg-duration-300 rtg-ease-in-out rtg-h-8 rtg-w-8 rtg-font-normal rtg-text-sm rtg-text-accent-foreground hover:rtg-bg-accent hover:rtg-text-muted-foreground\",\n y.isInactive && \"hover:rtg-bg-primary rtg-text-muted-foreground\",\n (x || k) && y.isCurrentMonth && \"rtg-bg-primary rtg-text-primary-foreground rtg-opacity-100 hover:rtg-bg-primary hover:rtg-text-primary-foreground focus:rtg-bg-primary focus:rtg-text-primary-foreground\"\n )}\"\n role=\"gridcell\"\n tabindex=\"-1\"\n type=\"button\"\n aria-selected=\"${Wi(\n (x || k) && y.isCurrentMonth ? \"true\" : void 0\n )}\"\n @click=\"${() => this.selectDate(\n Number(y.day),\n y.isInactive\n )}\"\n >\n ${y.day}\n </button>\n </td>\n `;\n })}\n </tr>\n `\n )}\n </tbody>\n </table>\n </div>\n </div>\n </div>\n `;\n }\n};\nme.styles = [\n ct`\n :host {\n display: inline-block;\n\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n padding: 8px;\n }\n .styled-calendar {\n margin-left: -16px;\n margin-top: -16px;\n }\n .nav-button {\n background: transparent;\n border: 1px solid #ccc;\n cursor: pointer;\n font-size: 16px;\n border-radius: 6px;\n padding: 4px 8px;\n transition: background-color 0.3s ease;\n }\n .nav-button svg {\n pointer-events: none;\n width: 1rem;\n height: 1rem;\n flex-shrink: 0;\n padding-top: 4px;\n }\n table {\n width: 100%;\n border-collapse: collapse;\n }\n td {\n text-align: center;\n padding: 0;\n }\n td.day-range-start {\n border-top-left-radius: 8px;\n border-bottom-left-radius: 8px;\n }\n td.day-range-end {\n border-top-right-radius: 8px;\n border-bottom-right-radius: 8px;\n }\n .text-day {\n font-size: 0.8rem;\n }\n `\n];\nme.buttonVariants = gl;\nKe([\n l({ type: Object })\n], me.prototype, \"currentDate\", 2);\nKe([\n l({ type: Object })\n], me.prototype, \"selectedStartDate\", 2);\nKe([\n l({ type: Object })\n], me.prototype, \"selectedEndDate\", 2);\nKe([\n l({ type: String })\n], me.prototype, \"variant\", 2);\nKe([\n l({ type: String })\n], me.prototype, \"size\", 2);\nKe([\n l({ type: Boolean })\n], me.prototype, \"styleCalendar\", 2);\nKe([\n l({ type: String })\n], me.prototype, \"mode\", 2);\nme = Ke([\n p(\"rtg-calendar\")\n], me);\nconst bl = he(\n \"rtg-absolute rtg-z-50 rtg-rounded-md rtg-p-4 rtg-text-popover-foreground rtg-outline-none rtg-transition-transform rtg-transition-opacity\",\n {\n variants: {\n state: {\n open: \"rtg-opacity-100 rtg-scale-100 rtg-duration-500\",\n // 0.5 seconds for the transition\n closed: \"rtg-opacity-0 rtg-scale-95 rtg-duration-500\"\n // 0.5 seconds for the transition\n },\n side: {\n bottom: \"rtg-translate-y-0\",\n left: \"rtg-translate-x-0\",\n right: \"rtg-translate-x-0\",\n top: \"rtg-translate-y-0\"\n },\n styleContent: {\n true: \"rtg-w-72 rtg-border rtg-bg-popover rtg-shadow-md\",\n false: \"\"\n }\n },\n defaultVariants: {\n state: \"closed\",\n side: \"bottom\"\n }\n }\n), wl = he(\"absolute\", {\n variants: {\n state: {\n open: \"rtg-opacity-100 rtg-scale-100 rtg-duration-500\",\n // 0.5 seconds for the transition\n closed: \"rtg-opacity-0 rtg-scale-95 rtg-duration-500\"\n // 0.5 seconds for the transition\n },\n side: {\n bottom: \"rtg-translate-y-0\",\n left: \"rtg-translate-x-0\",\n right: \"rtg-translate-x-0\",\n top: \"rtg-translate-y-0\"\n }\n },\n defaultVariants: {\n state: \"closed\",\n side: \"bottom\"\n }\n});\nvar yl = Object.defineProperty, xl = Object.getOwnPropertyDescriptor, or = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? xl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && yl(t, o, r), r;\n};\nlet $t = class extends h {\n constructor() {\n super(...arguments), this.enableDefaultStyle = !0, this.styleContent = !0, this.side = \"bottom\", this.isOpen = !1;\n }\n get _popover() {\n let e = this.parentElement;\n for (; e && !(e instanceof Wt); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=popover-content]\");\n }\n handleClickOutside(e) {\n const t = this._popover;\n t && !t.contains(e.target) && (t.isOpen = !1);\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement), window.addEventListener(\"click\", this.handleClickOutside.bind(this));\n }\n updated(e) {\n var t;\n (t = this._popover) != null && t.isOpen || window.removeEventListener(\"click\", this.handleClickOutside.bind(this));\n }\n preventClickPropagation(e) {\n e.stopPropagation();\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n var t;\n (t = this._popover) != null && t.isOpen ? this.removeAttribute(\"hidden\") : this.setAttribute(\"hidden\", \"true\");\n const e = this.enableDefaultStyle ? bl({\n state: \"open\",\n side: this.side,\n styleContent: this.styleContent\n }) : wl({\n state: \"open\",\n side: this.side\n });\n return d`\n <div\n @click=\"${this.preventClickPropagation}\"\n part=\"popover-content\"\n class=\"${g(e)}\"\n style=\"top:36px\"\n ></div>\n `;\n }\n};\nor([\n l({ type: Boolean })\n], $t.prototype, \"enableDefaultStyle\", 2);\nor([\n l({ type: Boolean })\n], $t.prototype, \"styleContent\", 2);\nor([\n l({ type: String })\n], $t.prototype, \"side\", 2);\nor([\n D()\n], $t.prototype, \"isOpen\", 2);\n$t = or([\n p(\"rtg-popover-content\")\n], $t);\nvar _l = Object.getOwnPropertyDescriptor, Cl = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? _l(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet To = class extends h {\n constructor() {\n super(...arguments), this.handleClick = () => {\n const e = this._popover;\n e && (e.isOpen = !e.isOpen);\n };\n }\n get _popover() {\n let e = this.parentElement;\n for (; e && !(e instanceof Wt); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=popover-trigger]\");\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.moveLightDomChildrenInto(this._containerElement), this.addEventListener(\"click\", (t) => {\n this.handleClick(), t.stopPropagation();\n });\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n render() {\n return d`\n <div\n class=\"${g(\"\", this.className)}\"\n part=\"popover-trigger\"\n style=\"width: fit-content;\"\n ></div>\n `;\n }\n};\nTo = Cl([\n p(\"rtg-popover-trigger\")\n], To);\nvar $l = Object.defineProperty, El = Object.getOwnPropertyDescriptor, Xn = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? El(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && $l(t, o, r), r;\n};\nlet Wt = class extends h {\n constructor() {\n super(...arguments), this.isOpen = !1;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=popover]\");\n }\n get _contentElement() {\n return this.querySelector(\"rtg-popover-content\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n updated(e) {\n this._contentElement.isOpen = this.isOpen, this._contentElement.requestUpdate();\n }\n render() {\n return d`\n <div\n class=\"${g(\"\", this.className)}\"\n part=\"popover\"\n style=\"position:relative\"\n ></div>\n `;\n }\n};\nXn([\n D()\n], Wt.prototype, \"isOpen\", 2);\nWt = Xn([\n p(\"rtg-popover\")\n], Wt);\nvar Sl = Object.defineProperty, Ol = Object.getOwnPropertyDescriptor, Zn = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ol(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Sl(t, o, r), r;\n};\nlet is = class extends W {\n constructor() {\n super(...arguments), this.selectedDate = null;\n }\n handleDateSelected(e) {\n this.selectedDate = e.detail.startDate, this.requestUpdate();\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"date-picker\"\n class=\"${g(\"\", this.className)}\"\n @date-selected=${this.handleDateSelected}\n >\n <rtg-popover>\n <!-- Trigger to open/close the popover -->\n <rtg-popover-trigger slot=\"trigger\">\n <rtg-button\n class=\"rtg-w-64 rtg-justify-start rtg-bg-background rtg-text-left rtg-text-sm rtg-font-normal rtg-text-muted-foreground hover:rtg-bg-accent hover:rtg-text-muted-foreground\"\n variant=\"outline\"\n slot=\"trigger-button\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-calendar\"\n >\n <path d=\"M8 2v4\"></path>\n <path d=\"M16 2v4\"></path>\n <rect width=\"18\" height=\"18\" x=\"3\" y=\"4\" rx=\"2\"></rect>\n <path d=\"M3 10h18\"></path>\n </svg>\n <span style=\"margin-left:8px\">\n ${this.selectedDate ? this.selectedDate.toLocaleDateString(\"en-US\", {\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\"\n }).replace(/(\\d+)/, (e, t) => {\n const o = parseInt(t, 10);\n return o + (o > 3 ? \"th\" : [\"st\", \"nd\", \"rd\"][o - 1] || \"th\");\n }) : \"Pick a date\"}\n </span>\n </rtg-button>\n </rtg-popover-trigger>\n\n <!-- Popover content that will be shown or hidden -->\n <rtg-popover-content\n data-side=\"bottom\"\n data-testid=\"popover-content\"\n slot=\"content\"\n .styleContent=${!1}\n >\n <rtg-calendar\n class=\"rtg-w-64\"\n .styleCalendar=${!0}\n ></rtg-calendar>\n </rtg-popover-content>\n </rtg-popover>\n </div>\n `;\n }\n};\nZn([\n l({ type: Object })\n], is.prototype, \"selectedDate\", 2);\nis = Zn([\n p(\"rtg-date-picker\")\n], is);\nvar Xe = /* @__PURE__ */ ((e) => (e.MULTIPLE = \"multiple\", e.SINGLE = \"single\", e))(Xe || {}), Pl = Object.defineProperty, Dl = Object.getOwnPropertyDescriptor, Vs = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Dl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Pl(t, o, r), r;\n};\nlet Ce = class extends h {\n constructor() {\n super(...arguments), this.value = \"\", this.tabindex = 0, this._initialChildren = [], this._onClick = (e) => {\n const t = e.target.closest(\n \"rtg-accordion-trigger\"\n );\n !t || !this._accordion || (e.preventDefault(), e.stopPropagation(), this._accordion.raiseEvent(this.value), t.requestUpdate(), setTimeout(() => this.requestUpdate(), 0));\n }, this._onAccordionClick = () => {\n this.requestUpdate();\n };\n }\n get _accordion() {\n let e = this.parentElement;\n for (; e && !(e instanceof Et); )\n e = e.parentElement;\n return e;\n }\n getAttributesToExclude() {\n return [\"aria-orientation\", \"role\", \"data-orientation\", \"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n connectedCallback() {\n var e;\n super.connectedCallback(), this._initialChildren = this.filterChildren(), this.addEventListener(\"click\", this._onClick), (e = this._accordion) == null || e.addEventListener(\n \"clicked-accordion\",\n this._onAccordionClick\n );\n }\n disconnectedCallback() {\n var e;\n super.disconnectedCallback(), this.removeEventListener(\"click\", this._onClick), (e = this._accordion) == null || e.removeEventListener(\n \"clicked-accordion\",\n this._onAccordionClick\n );\n }\n filterChildren() {\n return Array.from(this.children).filter(\n (e) => e instanceof as || e instanceof ls\n );\n }\n render() {\n var o;\n const e = (o = this._accordion) == null ? void 0 : o.selectedItems.includes(this.value), t = this._initialChildren.length ? this._initialChildren : this.filterChildren();\n return d`\n <div\n data-state=${e ? \"open\" : \"closed\"}\n class=\"${g(\"rtg-w-full rtg-border-b\", this.className)}\"\n value=${this.value}\n role=\"tablist\"\n data-orientation=\"vertical\"\n part=\"accordion-item\"\n >\n ${t}\n </div>\n `;\n }\n};\nVs([\n l({ type: String })\n], Ce.prototype, \"value\", 2);\nVs([\n l({ type: Number })\n], Ce.prototype, \"tabindex\", 2);\nCe = Vs([\n p(\"rtg-accordion-item\")\n], Ce);\nvar Rl = Object.getOwnPropertyDescriptor, kl = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Rl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet as = class extends h {\n get _item() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ce); )\n e = e.parentElement;\n return e;\n }\n get _accordion() {\n let e = this.parentElement;\n for (; e && !(e instanceof Et); )\n e = e.parentElement;\n return e;\n }\n getAttributesToExclude() {\n return [\"value\", \"defaultValue\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.removeDuplicateContent();\n }\n hasActiveState() {\n var e, t;\n return !!((e = this._item) != null && e.value) && !!((t = this._accordion) != null && t.selectedItems.includes(this._item.value));\n }\n render() {\n var t;\n const e = this.hasActiveState();\n return d`\n <button\n type=\"button\"\n part=\"accordion-trigger\"\n role=\"tab\"\n value=${((t = this._item) == null ? void 0 : t.value) || \"\"}\n aria-selected=${e}\n aria-expanded=${e}\n data-state=${e ? \"open\" : \"closed\"}\n class=\"${g(\n \"rtg-flex rtg-w-full rtg-flex-1 rtg-items-center rtg-justify-between rtg-py-4 rtg-text-sm rtg-font-medium rtg-transition-all hover:rtg-underline [&[data-state=open]>svg]:rtg-rotate-180\",\n this.className\n )}\"\n tabindex=\"-1\"\n data-orientation=\"horizontal\"\n data-radix-collection-item\n >\n ${kn(this.textContent || \"\")}${Vn()}\n </button>\n `;\n }\n};\nas = kl([\n p(\"rtg-accordion-trigger\")\n], as);\nvar Al = Object.getOwnPropertyDescriptor, Ll = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Al(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet ls = class extends h {\n constructor() {\n super(...arguments), this._onAccordionClick = () => {\n this.requestUpdate();\n };\n }\n get _accordion() {\n let e = this.parentElement;\n for (; e && !(e instanceof Et); )\n e = e.parentElement;\n return e;\n }\n get _item() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ce); )\n e = e.parentElement;\n return e;\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n connectedCallback() {\n var e;\n super.connectedCallback(), (e = this._accordion) == null || e.addEventListener(\n \"clicked-accordion\",\n this._onAccordionClick\n );\n }\n disconnectedCallback() {\n var e;\n super.disconnectedCallback(), (e = this._accordion) == null || e.removeEventListener(\n \"clicked-accordion\",\n this._onAccordionClick\n );\n }\n firstUpdated(e) {\n this.removeDuplicateContent();\n }\n hasActiveState() {\n var e, t;\n return !!((e = this._item) != null && e.value) && !!((t = this._accordion) != null && t.selectedItems.includes(this._item.value));\n }\n render() {\n var t;\n const e = this.hasActiveState();\n return d`\n <div\n part=\"accordion-content\"\n role=\"region\"\n data-state=${e ? \"open\" : \"closed\"}\n data-orientation=\"vertical\"\n class=\"${g(\n e ? \"rtg-opacity-100 rtg-max-h-[var(--radix-accordion-content-height)]\" : \"rtg-opacity-0 rtg-max-h-0 closed-rtg-hidden\",\n \"rtg-overflow-hidden rtg-text-sm rtg-transition-all\",\n this.className\n )}\"\n style=${`\n --radix-accordion-content-height: 36px;\n --radix-collapsible-content-height: 36px;\n --radix-accordion-content-width: 385px;\n --radix-collapsible-content-width: 385px;\n `}\n @click=${(o) => o.stopPropagation()}\n >\n <div class=\"rtg-pb-4 rtg-pt-0\">\n ${kn(((t = this.textContent) == null ? void 0 : t.trim()) || \"\")}\n </div>\n </div>\n `;\n }\n};\nls = Ll([\n p(\"rtg-accordion-content\")\n], ls);\nvar Il = Object.defineProperty, Tl = Object.getOwnPropertyDescriptor, Qn = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Tl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Il(t, o, r), r;\n};\nlet Et = class extends h {\n constructor() {\n super(...arguments), this.type = Xe.MULTIPLE, this.selectedItems = [], this._initialChildren = [];\n }\n getAttributesToExclude() {\n return [\"variant\", \"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n connectedCallback() {\n super.connectedCallback(), this._initialChildren = Array.from(this.children).filter(\n (e) => e instanceof Ce\n );\n }\n willUpdate(e) {\n e.has(\"type\") && (this.type === Xe.SINGLE && this.selectedItems.length > 1 && (this.selectedItems = this.selectedItems.slice(0, 1)), this._initialChildren.forEach((t) => {\n t instanceof Ce && t.requestUpdate();\n }));\n }\n updated(e) {\n e.has(\"type\") && this._initialChildren.forEach((t) => {\n t instanceof Ce && t.requestUpdate();\n });\n }\n setSelectedItems(e) {\n const t = this.selectedItems.indexOf(e);\n if (t > -1)\n if (this.type === Xe.SINGLE)\n this.selectedItems = [];\n else if (this.type === Xe.MULTIPLE)\n this.selectedItems.splice(t, 1);\n else\n throw new Error(\"Invalid accordion type\");\n else if (this.type === Xe.SINGLE)\n this.selectedItems = [e];\n else if (this.type === Xe.MULTIPLE)\n this.selectedItems.push(e);\n else\n throw new Error(\"Invalid accordion type\");\n }\n raiseEvent(e) {\n this.setSelectedItems(e), this.dispatchEvent(\n new CustomEvent(\"clicked-accordion\", {\n bubbles: !0,\n composed: !0,\n detail: { selectedItems: this.selectedItems }\n })\n );\n }\n render() {\n const e = this._initialChildren.length ? this._initialChildren : Array.from(this.children).filter(\n (t) => t instanceof Ce\n );\n return d`\n <div\n data-orientation=\"vertical\"\n ${z(this.getFilteredAttributes())}\n part=\"accordion\"\n class=\"${g(\"rtg-w-full\", this.className)}\"\n >\n ${e}\n </div>\n `;\n }\n};\nQn([\n l({ type: String })\n], Et.prototype, \"type\", 2);\nEt = Qn([\n p(\"rtg-accordion\")\n], Et);\nconst jl = \"rtg-relative rtg-h-2 rtg-overflow-hidden rtg-rounded-full rtg-w-[100%]\";\nvar Ml = Object.defineProperty, Nl = Object.getOwnPropertyDescriptor, Jn = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Nl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Ml(t, o, r), r;\n};\nlet yr = class extends W {\n constructor() {\n super(...arguments), this.value = 15;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"progress\"\n aria-valuenow=\"${this.value}\"\n aria-valuemax=\"100\"\n aria-valuemin=\"0\"\n role=\"progressbar\"\n data-state=\"indeterminate\"\n data-max=\"100\"\n class=\"${g(jl, this.className)}\"\n style=\"background-color:#ccc;\"\n >\n <div\n data-state=\"indeterminate\"\n data-max=\"100\"\n class=\"${g(\n \"progress-bar__fill rtg-h-full rtg-w-full rtg-flex-1 rtg-bg-primary\",\n this.className\n )}\"\n style=\"width: ${this.value}%;\"\n ></div>\n </div>\n `;\n }\n};\nyr.styles = [\n ct`\n .progress-bar__fill {\n height: 100%;\n transition: width 0.5s ease-in-out;\n }\n `\n];\nJn([\n l({ type: Number })\n], yr.prototype, \"value\", 2);\nyr = Jn([\n p(\"rtg-progress\")\n], yr);\nvar Ul = Object.defineProperty, zl = Object.getOwnPropertyDescriptor, ei = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? zl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Ul(t, o, r), r;\n};\nlet cs = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.wrapperDivElement), this.observeStyleAndClassSync(this.wrapperDivElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\";\n return d`\n <div\n class=${t}\n style=${e}\n part=\"card-title\"\n ></div>\n `;\n }\n};\nei([\n ee(\"div\")\n], cs.prototype, \"wrapperDivElement\", 2);\ncs = ei([\n p(\"rtg-card-title\")\n], cs);\nvar ql = Object.defineProperty, Bl = Object.getOwnPropertyDescriptor, ti = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Bl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ql(t, o, r), r;\n};\nlet ds = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.wrapperDivElement), this.observeStyleAndClassSync(this.wrapperDivElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\";\n return d`\n <div\n class=${t}\n style=${e}\n part=\"card-header\"\n ></div>\n `;\n }\n};\nti([\n ee(\"div\")\n], ds.prototype, \"wrapperDivElement\", 2);\nds = ti([\n p(\"rtg-card-header\")\n], ds);\nvar Fl = Object.defineProperty, Vl = Object.getOwnPropertyDescriptor, ri = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Vl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Fl(t, o, r), r;\n};\nlet us = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.wrapperDivElement), this.observeStyleAndClassSync(this.wrapperDivElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\";\n return d`\n <div\n class=${t}\n style=${e}\n part=\"card-footer\"\n ></div>\n `;\n }\n};\nri([\n ee(\"div\")\n], us.prototype, \"wrapperDivElement\", 2);\nus = ri([\n p(\"rtg-card-footer\")\n], us);\nvar Hl = Object.defineProperty, Gl = Object.getOwnPropertyDescriptor, si = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Gl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Hl(t, o, r), r;\n};\nlet gs = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.wrapperDivElement), this.observeStyleAndClassSync(this.wrapperDivElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\";\n return d`\n <div\n class=${t}\n style=${e}\n part=\"card-description\"\n ></div>\n `;\n }\n};\nsi([\n ee(\"div\")\n], gs.prototype, \"wrapperDivElement\", 2);\ngs = si([\n p(\"rtg-card-description\")\n], gs);\nvar Yl = Object.defineProperty, Kl = Object.getOwnPropertyDescriptor, oi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Kl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Yl(t, o, r), r;\n};\nlet ps = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.wrapperDivElement), this.observeStyleAndClassSync(this.wrapperDivElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\";\n return d`\n <div\n class=${t}\n style=${e}\n part=\"card-content\"\n ></div>\n `;\n }\n};\noi([\n ee(\"div\")\n], ps.prototype, \"wrapperDivElement\", 2);\nps = oi([\n p(\"rtg-card-content\")\n], ps);\nconst Wl = \"rtg-rounded-lg rtg-border rtg-bg-card rtg-p-6 rtg-text-card-foreground rtg-shadow-sm\";\nvar Xl = Object.defineProperty, Zl = Object.getOwnPropertyDescriptor, ni = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Zl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Xl(t, o, r), r;\n};\nlet hs = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\", \"data-testid\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.wrapperDivElement), this.observeStyleAndClassSync(this.wrapperDivElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\", o = this.getFilteredAttributes();\n return d`<div\n ${z(o)}\n part=\"card\"\n class=${g(Wl, t)}\n style=\"${e}\"\n id=\"rtg-card-id\"\n ></div>`;\n }\n};\nni([\n ee(\"#rtg-card-id\")\n], hs.prototype, \"wrapperDivElement\", 2);\nhs = ni([\n p(\"rtg-card\")\n], hs);\nvar Ql = Object.defineProperty, Jl = Object.getOwnPropertyDescriptor, It = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Jl(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Ql(t, o, r), r;\n};\nlet Qe = class extends W {\n constructor() {\n super(...arguments), this.currentIndex = 0, this.items = [], this.orientation = \"horizontal\", this.size = !1, this.handleResize = () => {\n this.updateSlides(), this.currentIndex = 0, this.querySelectorAll(\".slide\").forEach((t) => {\n t.className = this.getSlideClasses();\n });\n };\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated() {\n this.restructureSlides();\n }\n restructureSlides() {\n const e = this.querySelector(\".slides\");\n if (e)\n for (let t = 0; t < this.items.length; t++) {\n const o = `slide-${t}`, s = this.querySelector(`[slot=\"${o}\"]`);\n if (s && s.parentElement !== e) {\n const r = document.createElement(\"div\");\n r.className = this.getSlideClasses(), e.appendChild(r), r.appendChild(s);\n }\n }\n }\n getSlideClasses() {\n let e = \"rtg-min-w-0 rtg-flex-shrink-0 rtg-flex-grow-0 rtg-transition-transform rtg-duration-500 rtg-p-1\";\n return this.size ? `${e} lg:rtg-basis-1/3 lg:rtg-h-1/2 md:rtg-basis-1/2 md:rtg-h-1/2 rtg-basis-full rtg-h-full` : `${e} rtg-basis-full rtg-h-full`;\n }\n nextSlide() {\n this.currentIndex < this.items.length - 1 && (this.currentIndex += 1, this.updateSlides());\n }\n prevSlide() {\n this.currentIndex > 0 && (this.currentIndex -= 1, this.updateSlides());\n }\n updateSlides() {\n let e;\n this.size ? window.innerWidth >= 1024 ? e = 33.3333 : window.innerWidth >= 768 ? e = 50 : e = 100 : e = 100;\n const t = this.orientation === \"vertical\" ? 100 / this.items.length : 100;\n this.slides && (this.slides.style.transform = this.orientation === \"horizontal\" ? `translateX(-${this.currentIndex * e}%)` : `translateY(-${this.currentIndex * t}%)`);\n }\n connectedCallback() {\n super.connectedCallback(), window.addEventListener(\"resize\", this.handleResize);\n }\n disconnectedCallback() {\n super.disconnectedCallback(), window.removeEventListener(\"resize\", this.handleResize);\n }\n render() {\n const e = this.currentIndex === 0, t = this.size ? window.innerWidth >= 1024 ? 3 : window.innerWidth >= 768 ? 2 : 1 : 1, o = this.currentIndex >= this.items.length - t, s = g(\n \"rtg-flex rtg-transition-transform rtg-duration-500 rtg-ease-in-out\",\n this.orientation === \"horizontal\" ? \"rtg-flex-row\" : \"rtg-flex-col\"\n ), r = g(\n \"rtg-absolute rtg-z-10 rtg-flex\",\n this.orientation === \"horizontal\" ? \"rtg-top-1/2 rtg-left-[-60px] rtg-right-[-60px] rtg-justify-between rtg-transform-translate-y-1/2\" : \"rtg-w-full rtg-h-full rtg-top-0 rtg-flex-col rtg-justify-between rtg-items-center\"\n ), n = `rtg-bg-black/80 rtg-text-white rtg-border-none rtg-p-2 rtg-cursor-pointer rtg-z-10 rtg-rounded-full rtg-w-10 rtg-h-10 rtg-flex rtg-items-center rtg-justify-center hover:rtg-bg-black/80 disabled:rtg-bg-black/20 ${this.orientation === \"vertical\" && \"rtg-relative rtg-top-[-50px] rtg-rotate-90\"}`, i = `rtg-bg-black/80 rtg-text-white rtg-border-none rtg-p-2 rtg-cursor-pointer rtg-z-10 rtg-rounded-full rtg-w-10 rtg-h-10 rtg-flex rtg-items-center rtg-justify-center hover:rtg-bg-black/80 disabled:rtg-bg-black/20 ${this.orientation === \"vertical\" && \"rtg-relative rtg-top-[50px] rtg-rotate-90\"}`;\n return d`\n <div\n part=\"rtg-carousel\"\n class=\"${g(\n \"rtg-relative rtg-mx-auto rtg-h-full rtg-w-full\",\n this.className\n )}\"\n size=\"${this.size}\"\n orientation=\"${this.orientation}\"\n >\n <div\n class=\"${g(\n \"rtg-w-full rtg-h-full rtg-overflow-hidden\",\n this.className\n )}\"\n >\n <div class=\"slides ${s}\"></div>\n\n <div class=\"${r}\">\n <button\n @click=\"${this.prevSlide}\"\n ?disabled=\"${e}\"\n class=\"${n}\"\n >\n ${Ta()}\n </button>\n <button\n @click=\"${this.nextSlide}\"\n ?disabled=\"${o}\"\n class=\"${i}\"\n >\n ${ja()}\n </button>\n </div>\n </div>\n </div>\n `;\n }\n};\nIt([\n l({ type: Number })\n], Qe.prototype, \"currentIndex\", 2);\nIt([\n l({ type: Array })\n], Qe.prototype, \"items\", 2);\nIt([\n l({ type: String })\n], Qe.prototype, \"orientation\", 2);\nIt([\n l({ type: Boolean })\n], Qe.prototype, \"size\", 2);\nIt([\n ee(\".slides\")\n], Qe.prototype, \"slides\", 2);\nQe = It([\n p(\"rtg-carousel\")\n], Qe);\nconst ec = \"rtg-py-6 rtg-text-center rtg-text-sm\", tc = \"rtg-pointer-events-none rtg-invisible rtg-absolute rtg-z-50 rtg-mt-1 rtg-max-h-72 rtg-w-full rtg-origin-top rtg-scale-y-0 rtg-transform rtg-overflow-hidden rtg-overflow-y-auto rtg-rounded-md rtg-border rtg-border-border rtg-bg-background rtg-px-1 rtg-py-1 rtg-opacity-0 rtg-shadow-md rtg-transition-opacity rtg-duration-300 rtg-ease-out [&::-webkit-scrollbar-thumb]:rtg-rounded-full [&::-webkit-scrollbar-thumb]rtg-:bg-foreground [&::-webkit-scrollbar-track]:rtg-bg-background [&::-webkit-scrollbar]:rtg-w-2\", rc = \"rtg-flex rtg-h-8 rtg-w-full rtg-rounded rtg-border-0 rtg-bg-transparent rtg-px-2 rtg-py-2 rtg-text-sm rtg-shadow-none placeholder:rtg-text-muted-foreground focus:rtg-outline-none focus-visible:rtg-ring-0\", sc = \"rtg-z-20 rtg-flex rtg-h-10 rtg-flex-row-reverse rtg-items-center rtg-justify-between rtg-rounded-md rtg-border rtg-border-input rtg-bg-background rtg-px-3 rtg-py-2 rtg-text-sm rtg-ring-offset-background placeholder:rtg-text-muted-foreground focus:rtg-outline-none focus:rtg-ring-2 focus:rtg-ring-ring focus:rtg-ring-offset-2 disabled:rtg-cursor-not-allowed disabled:rtg-opacity-50\", oc = \"rtg-line-clamp-1 rtg-flex rtg-w-[180px]\";\nvar nc = Object.defineProperty, ic = Object.getOwnPropertyDescriptor, ii = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ic(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && nc(t, o, r), r;\n};\nlet vs = class extends h {\n constructor() {\n super(...arguments), this.handleClick = () => {\n this._comboBox && ([...document.getElementsByTagName(\"rtg-combo-box\")].forEach((t) => {\n var o;\n t.uuid !== ((o = this._comboBox) == null ? void 0 : o.uuid) && (t.isOpen = !1);\n }), this._comboBox.isOpen = !this._comboBox.isOpen);\n };\n }\n get _comboBox() {\n let e = this.parentElement;\n for (; e && !(e instanceof se); )\n e = e.parentElement;\n return e;\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.moveLightDomChildrenInto(this.buttonElement), this.addEventListener(\"click\", (t) => {\n t.stopPropagation();\n });\n }\n render() {\n return d`\n <button\n type=\"button\"\n part=\"combo-box-trigger-button\"\n role=\"tab\"\n class=\"${g(sc, this.className)}\"\n tabindex=\"-1\"\n data-orientation=\"horizontal\"\n data-radix-collection-item=\"\"\n @click=${this.handleClick}\n >\n ${ka()}\n </button>\n `;\n }\n};\nii([\n ee(\"button\")\n], vs.prototype, \"buttonElement\", 2);\nvs = ii([\n p(\"rtg-combo-box-trigger\")\n], vs);\nvar ac = Object.defineProperty, lc = Object.getOwnPropertyDescriptor, ai = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? lc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ac(t, o, r), r;\n};\nlet fs = class extends W {\n constructor() {\n super(...arguments), this.placeholder = \"select a value\", this.handleClick = () => {\n this._comboBox && ([...document.getElementsByTagName(\"rtg-combo-box\")].forEach((t) => {\n var o;\n t.uuid !== ((o = this._comboBox) == null ? void 0 : o.uuid) && (t.isOpen = !1);\n }), this._comboBox.isOpen = !this._comboBox.isOpen);\n }, this.renderLabel = () => this._comboBox && this._comboBox.selectedValue.length > 0 ? this._comboBox.selectedValue : this.placeholder;\n }\n get _comboBox() {\n let e = this.parentElement;\n for (; e && !(e instanceof se); )\n e = e.parentElement;\n return e;\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\"clicked-combo-box-item\", () => {\n this.requestUpdate();\n });\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.addEventListener(\"click\", (t) => {\n t.stopPropagation();\n });\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <span\n part=\"combo-box-value\"\n class=\"${g(oc, this.className)}\"\n @click=${this.handleClick}\n >${this.renderLabel()}</span\n >\n `;\n }\n};\nai([\n l({ type: String })\n], fs.prototype, \"placeholder\", 2);\nfs = ai([\n p(\"rtg-combo-box-value\")\n], fs);\nvar cc = Object.defineProperty, dc = Object.getOwnPropertyDescriptor, nr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? dc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && cc(t, o, r), r;\n};\nlet Je = class extends h {\n constructor() {\n super(...arguments), this.searchKey = \"\", this.focusedIndex = 0, this.selectedValue = \"\", this.isOpen = !1, this.handleItemClicked = () => {\n this.requestUpdate();\n }, this.handleTriggerComboBox = (e) => {\n var t, o;\n e.detail.isOpen !== ((t = this._comboBox) == null ? void 0 : t.isOpen) && this.requestUpdate(), e.detail.isOpen && ((o = this._comboBox) != null && o.selectedValue) && (this.focusedIndex = this.comboBoxItems.findIndex(\n (s) => {\n var r;\n return s.getAttribute(\"value\") === ((r = this._comboBox) == null ? void 0 : r.selectedValue);\n }\n ), this.requestUpdate());\n }, this.handleKeyDown = (e) => {\n var o;\n if (!((o = this._comboBox) != null && o.isOpen)) return;\n e.preventDefault();\n const t = this.filteredItems;\n switch (e.key) {\n case \"ArrowDown\":\n if (t.length === 0) return;\n this.focusedIndex = (this.focusedIndex + 1) % t.length;\n break;\n case \"ArrowUp\":\n if (t.length === 0) return;\n this.focusedIndex = (this.focusedIndex - 1 + t.length) % t.length;\n break;\n case \"Enter\":\n if (this.focusedIndex >= 0 && this.focusedIndex < t.length) {\n const s = t[this.focusedIndex].getAttribute(\"value\");\n this.dispatchEvent(\n new CustomEvent(\"clicked-combo-box-item\", {\n bubbles: !0,\n composed: !0,\n detail: { selectedItem: s }\n })\n );\n }\n break;\n }\n }, this.handleMouseOver = (e, t) => {\n e.preventDefault(), this.focusedIndex = t;\n }, this.onSelectedValue = (e, t) => {\n this.focusedIndex = t, this.selectedValue = e;\n }, this.boundHandleComboBoxStateChanged = this.handleComboBoxStateChanged.bind(this), this.boundHandleKeyDown = this.handleKeyDown.bind(this);\n }\n get comboBoxItems() {\n return Array.from(\n this.querySelectorAll(\n '[data-managed=\"true\"][tag=\"rtg-combo-box-item\"], rtg-combo-box-item'\n )\n ).filter((e) => e.hasAttribute(\"value\"));\n }\n get comboBoxInput() {\n return this.querySelector(\"rtg-combo-box-input\");\n }\n get comboBoxEmpty() {\n return this.querySelector(\"rtg-combo-box-empty\");\n }\n get hasResults() {\n return !this.filteredItems.length;\n }\n get filteredItems() {\n var t;\n const e = (t = this.searchKey) == null ? void 0 : t.toLowerCase();\n return this.comboBoxItems.filter(\n (o) => {\n var s;\n return (s = o.getAttribute(\"value\")) == null ? void 0 : s.toLowerCase().includes(e);\n }\n );\n }\n get _comboBox() {\n let e = this.parentElement;\n for (; e && !(e instanceof se); )\n e = e.parentElement;\n return e;\n }\n handleComboBoxStateChanged(e) {\n var r;\n const { isOpen: t, targetComboBoxId: o } = e.detail;\n if (this.isOpen = t, o !== ((r = this._comboBox) == null ? void 0 : r.uuid)) return;\n const s = this.renderRoot.querySelector('[part=\"select-group\"]');\n s && (t ? (clearTimeout(s._hideTimeout), s.classList.remove(\"rtg-scale-y-0\", \"rtg-opacity-0\"), s.classList.add(\"rtg-scale-y-100\", \"rtg-opacity-100\"), s.classList.remove(\n \"rtg-invisible\",\n \"rtg-pointer-events-none\"\n ), s.classList.add(\"rtg-visible\", \"rtg-pointer-events-auto\")) : (s.classList.remove(\"rtg-opacity-100\"), s.classList.add(\"rtg-opacity-0\"), s._hideTimeout = setTimeout(() => {\n s.classList.remove(\n \"rtg-visible\",\n \"rtg-pointer-events-auto\",\n \"rtg-scale-y-100\"\n ), s.classList.add(\n \"rtg-invisible\",\n \"rtg-pointer-events-none\",\n \"rtg-scale-y-0\"\n );\n }, 300)));\n }\n moveChildren() {\n const e = this.renderRoot.querySelector('[part=\"select-group\"]');\n if (!e) return;\n const t = {\n top: e.querySelector(\"#topSlot\"),\n empty: e.querySelector(\"#emptySlot\"),\n list: e.querySelector(\"#listSlot\")\n }, o = {\n \"rtg-combo-box-input\": \"top\",\n \"rtg-combo-box-empty\": \"empty\",\n \"rtg-combo-box-item\": \"list\"\n };\n Array.from(this.children).forEach((s) => {\n var i;\n const r = s.tagName.toLowerCase(), n = o[r];\n n && (s.setAttribute(\"data-managed\", \"true\"), (i = t[n]) == null || i.appendChild(s));\n });\n }\n renderFilteredItems() {\n return this.comboBoxItems.forEach((e) => e.setAttribute(\"hidden\", \"true\")), this.filteredItems.map((e, t) => {\n var n;\n const o = e.getAttribute(\"value\") ?? \"\", s = t === this.focusedIndex, r = o.toLowerCase() === ((n = this._comboBox) == null ? void 0 : n.selectedValue.toLowerCase());\n return d`\n <rtg-combo-box-item\n @mouseover=\"${(i) => this.handleMouseOver(i, t)}\"\n .value=${o}\n .selectItemIndex=${t}\n .isFocus=${s}\n .onSelect=${this.onSelectedValue}\n .isSelected=${r}\n >\n ${e.textContent}\n </rtg-combo-box-item>\n `;\n });\n }\n getAttributesToExclude() {\n return [];\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\n \"rtg-combo-box-state-changed\",\n this.boundHandleComboBoxStateChanged\n ), document.addEventListener(\"clicked-combo-box-item\", this.handleItemClicked), document.addEventListener(\"trigger-combo-box\", this.handleTriggerComboBox);\n }\n disconnectedCallback() {\n super.disconnectedCallback(), document.removeEventListener(\n \"clicked-combo-box-item\",\n this.handleItemClicked\n ), document.removeEventListener(\n \"trigger-combo-box\",\n this.handleTriggerComboBox\n ), document.removeEventListener(\n \"rtg-combo-box-state-changed\",\n this.boundHandleComboBoxStateChanged\n ), document.removeEventListener(\"keydown\", this.boundHandleKeyDown);\n }\n firstUpdated(e) {\n this.moveChildren(), document.addEventListener(\"keydown\", this.boundHandleKeyDown);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"select-group\"\n class=\"${g(tc, this.className)}\"\n data-hs-combo-box-output=\"\"\n data-testId=\"select-group\"\n >\n <div\n id=\"topSlot\"\n class=\"rtg-mb-1 rtg-border-b rtg-border-gray-300 rtg-pb-1\"\n ></div>\n <div id=\"emptySlot\" ?hidden=${!this.hasResults}></div>\n <div id=\"listSlot\" ?hidden=${this.hasResults}>\n ${this.renderFilteredItems()}\n </div>\n </div>\n `;\n }\n};\nnr([\n D()\n], Je.prototype, \"searchKey\", 2);\nnr([\n D()\n], Je.prototype, \"focusedIndex\", 2);\nnr([\n D()\n], Je.prototype, \"selectedValue\", 2);\nnr([\n D()\n], Je.prototype, \"isOpen\", 2);\nJe = nr([\n p(\"rtg-combo-box-group\")\n], Je);\nvar uc = Object.defineProperty, gc = Object.getOwnPropertyDescriptor, be = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? gc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && uc(t, o, r), r;\n};\nlet de = class extends h {\n constructor() {\n super(...arguments), this.value = \"\", this.key = \"\", this.tabindex = 0, this.isSelected = !1, this.isFocus = !1, this.class = \"\", this.selectItemIndex = -1, this.onSelect = (e, t) => {\n }, this.onMouseOver = (e, t) => {\n }, this.handleClick = (e) => {\n this.onSelect(this.value, this.selectItemIndex), e.stopPropagation();\n const t = new CustomEvent(\"clicked-combo-box-item\", {\n bubbles: !0,\n composed: !0,\n detail: {\n selectedItem: this.value\n }\n });\n this.dispatchEvent(t);\n };\n }\n getAttributesToExclude() {\n return [\"aria-orientation\", \"role\", \"data-orientation\", \"data-testid\"];\n }\n connectedCallback() {\n super.connectedCallback();\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.itemDivContainer);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <div\n ${z(e)}\n @click=${this.handleClick}\n class=\"${g(\n this.isFocus ? \"rtg-bg-secondary\" : \"\",\n this.className,\n \"rtg-flex rtg-w-full rtg-cursor-pointer rtg-flex-row-reverse rtg-items-center rtg-justify-between rtg-rounded-lg rtg-px-4 rtg-py-2 hover:rtg-bg-accent focus:rtg-bg-secondary focus:rtg-outline-none\"\n )}\"\n data-hs-combo-box-value=${this.value}\n aria-selected=\"${this.isSelected}\"\n data-selected=\"${this.isSelected}\"\n id=\"rtg-combo-box-item\"\n >\n <span\n class=\"${this.isSelected ? \"rtg-visible\" : \"rtg-invisible\"} data-hs-combo-box-value rtg-mr-2\"\n >\n ${Fn()}\n </span>\n </div>\n `;\n }\n};\nbe([\n l({ type: String })\n], de.prototype, \"value\", 2);\nbe([\n l({ type: String })\n], de.prototype, \"key\", 2);\nbe([\n l({ type: Number })\n], de.prototype, \"tabindex\", 2);\nbe([\n l({ type: Boolean })\n], de.prototype, \"isSelected\", 2);\nbe([\n l({ type: Boolean })\n], de.prototype, \"isFocus\", 2);\nbe([\n l({ type: String })\n], de.prototype, \"class\", 2);\nbe([\n l({ type: Number })\n], de.prototype, \"selectItemIndex\", 2);\nbe([\n l({ type: Function })\n], de.prototype, \"onSelect\", 2);\nbe([\n l({ type: Function })\n], de.prototype, \"onMouseOver\", 2);\nbe([\n ee(\"#rtg-combo-box-item\")\n], de.prototype, \"itemDivContainer\", 2);\nde = be([\n p(\"rtg-combo-box-item\")\n], de);\nvar pc = Object.defineProperty, hc = Object.getOwnPropertyDescriptor, Hs = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? hc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && pc(t, o, r), r;\n};\nlet xr = class extends W {\n constructor() {\n super(...arguments), this.placeholder = \"Search Item ...\", this.searchValue = \"\";\n }\n get _comboBoxGroup() {\n let e = this.parentElement;\n for (; e && !(e instanceof Je); )\n e = e.parentElement;\n return e;\n }\n handleSearch(e) {\n e.stopPropagation();\n const t = e.target;\n this.searchValue = t.value, this._comboBoxGroup && (this._comboBoxGroup.searchKey = this.searchValue);\n }\n handleKeyDown(e) {\n e.stopPropagation();\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div class=\"rtg-flex rtg-items-center rtg-px-2\">\n ${Aa()}\n <input\n part=\"combo-box-input\"\n type=\"text\"\n class=\"${g(rc, this.className)}\"\n placeholder=${this.placeholder}\n autocomplete=\"off\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n aria-autocomplete=\"list\"\n role=\"combobox\"\n value=${this.searchValue}\n @input=\"${this.handleSearch}\"\n @keydown=\"${this.handleKeyDown}\"\n />\n </div>\n `;\n }\n};\nHs([\n l({ type: String })\n], xr.prototype, \"placeholder\", 2);\nHs([\n D()\n], xr.prototype, \"searchValue\", 2);\nxr = Hs([\n p(\"rtg-combo-box-input\")\n], xr);\nvar vc = Object.getOwnPropertyDescriptor, fc = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? vc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet jo = class extends h {\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n firstUpdated(e) {\n this.removeDuplicateContent();\n }\n render() {\n return d`\n <div\n class=\"${g(ec, this.className)}\"\n role=\"presentation\"\n >\n ${Array.from(this.childNodes)[0].textContent}\n </div>\n `;\n }\n};\njo = fc([\n p(\"rtg-combo-box-empty\")\n], jo);\nvar mc = Object.defineProperty, bc = Object.getOwnPropertyDescriptor, Se = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? bc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && mc(t, o, r), r;\n};\nlet se = class extends h {\n constructor() {\n super(), this.isOpen = !1, this.selectedValue = \"\", this.searchTerm = \"\", this.focusedIndex = -1, this.filteredItems = [], this.uuid = qs(), this.label = \"Select an item\", this.items = [], this.handleClickOutside = (e) => {\n var s;\n const t = (s = this.renderRoot) == null ? void 0 : s.querySelector(\n \"[data-combo-box-uuid]\"\n ), o = e.target;\n if (!o.tagName.includes(\"RTG-COMBO\") && !(o.shadowRoot && o.shadowRoot.innerHTML.includes(t == null ? void 0 : t.innerHTML))) {\n if (this.isOpen && !t || !(t != null && t.contains(o)))\n this.isOpen = !1;\n else if (!(o == null ? void 0 : o.firstElementChild))\n return;\n }\n };\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\"clicked-combo-box-item\", (e) => {\n this.isOpen && (this.selectedValue = e.detail.selectedItem, this.isOpen = !1, this.requestUpdate());\n });\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.parentDiveElement), this.items && this.items.length > 0 && (this.filteredItems = this.items.filter(\n (t) => t.toLowerCase().includes(this.searchTerm)\n ));\n }\n updated(e) {\n super.updated(e), e.has(\"isOpen\") && (this.dispatchEvent(\n new CustomEvent(\"rtg-combo-box-state-changed\", {\n detail: { isOpen: this.isOpen, targetComboBoxId: this.uuid },\n bubbles: !0,\n composed: !0\n })\n ), this.isOpen ? document.addEventListener(\"mousedown\", this.handleClickOutside) : document.removeEventListener(\"mousedown\", this.handleClickOutside));\n }\n disconnectedCallback() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside), super.disconnectedCallback();\n }\n selectItem(e) {\n const t = e.target;\n if (t instanceof HTMLElement) {\n const o = t.closest(\n \"rtg-combo-box-item\"\n );\n o ? (this.selectedValue = o.getAttribute(\"data-hs-combo-box-value\") || \"\", this.isOpen = !1) : console.log(\"No valid rtg-combo-box-item found\");\n } else\n console.log(\"Event target is not an HTMLElement\");\n }\n render() {\n return d`\n <div\n class=\"${g(\"rtg-relative\", this.className)}\"\n data-hs-combo-box=\"\"\n data-combo-box-uuid=${this.uuid}\n part=\"combo-box\"\n ></div>\n `;\n }\n};\nSe([\n l({ type: Boolean })\n], se.prototype, \"isOpen\", 2);\nSe([\n D()\n], se.prototype, \"selectedValue\", 2);\nSe([\n D()\n], se.prototype, \"searchTerm\", 2);\nSe([\n D()\n], se.prototype, \"focusedIndex\", 2);\nSe([\n D()\n], se.prototype, \"filteredItems\", 2);\nSe([\n D()\n], se.prototype, \"uuid\", 2);\nSe([\n l({ type: String })\n], se.prototype, \"label\", 2);\nSe([\n l({ type: Array })\n], se.prototype, \"items\", 2);\nSe([\n ee('[part=\"combo-box\"]')\n], se.prototype, \"parentDiveElement\", 2);\nse = Se([\n p(\"rtg-combo-box\")\n], se);\nvar wr = /* @__PURE__ */ ((e) => (e.VERTICAL = \"vertical\", e.HORIZONTAL = \"horizontal\", e))(wr || {}), wc = Object.defineProperty, yc = Object.getOwnPropertyDescriptor, li = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? yc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && wc(t, o, r), r;\n};\nlet ms = class extends h {\n constructor() {\n super(...arguments), this.orientation = wr.HORIZONTAL;\n }\n getAttributesToExclude() {\n return [\"variant\", \"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return d` <div\n part=\"separator\"\n ${z(e)}\n class=${g(\n this.orientation === wr.HORIZONTAL ? \"rtg-shrink-0 rtg-bg-border rtg-w-full rtg-h-[1px] rtg-my-4\" : \"rtg-shrink-0 rtg-bg-border rtg-h-full rtg-w-[1px]\",\n this.className\n )}\n role=\"none\"\n >\n ${this.orientation !== wr.HORIZONTAL ? d`&nbsp` : Z}\n </div>`;\n }\n};\nli([\n l({ type: String })\n], ms.prototype, \"orientation\", 2);\nms = li([\n p(\"rtg-separator\")\n], ms);\nconst xc = \"rtg-absolute rtg-z-50 rtg-w-64 rtg-rounded-md rtg-border rtg-bg-popover rtg-p-4 rtg-text-popover-foreground rtg-shadow-md rtg-outline-none data-[state=open]:rtg-animate-in data-[state=closed]:rtg-animate-out data-[state=closed]:rtg-fade-out-0 data-[state=open]:rtg-fade-in-0 data-[state=closed]:rtg-zoom-out-95 data-[state=open]:rtg-zoom-in-95 data-[side=bottom]:rtg-slide-in-from-top-2 data-[side=left]:rtg-slide-in-from-right-2 data-[side=right]:rtg-slide-in-from-left-2 data-[side=top]:rtg-slide-in-from-bottom-2\";\nvar _c = Object.defineProperty, Cc = Object.getOwnPropertyDescriptor, Gs = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Cc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && _c(t, o, r), r;\n};\nlet _r = class extends h {\n constructor() {\n super(...arguments), this.state = \"close\", this.isOpen = !1, this.onStateChange = (e) => {\n const t = e.detail.isOpen;\n this.state = t ? \"open\" : \"close\";\n }, this.handlePointerLeaveCheck = (e) => {\n this.contains(e.relatedTarget) || (this.isOpen = !1);\n };\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\n \"hover-card-state-change\",\n this.onStateChange\n ), this.addEventListener(\"mouseenter\", this.handlePointerLeaveCheck), this.addEventListener(\"mouseleave\", this.handlePointerLeaveCheck);\n }\n disconnectedCallback() {\n document.removeEventListener(\n \"hover-card-state-change\",\n this.onStateChange\n ), this.removeEventListener(\"mouseenter\", this.handlePointerLeaveCheck), this.removeEventListener(\"mouseleave\", this.handlePointerLeaveCheck), super.disconnectedCallback();\n }\n updated(e) {\n super.updated(e), this.isOpen = this.state === \"open\";\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(\n this.renderRoot.querySelector(\"#rtg-hover-card-content\")\n );\n }\n render() {\n return d`\n <div\n id=\"rtg-hover-card-content\"\n part=\"hover-card-content\"\n class=\"${g(xc, this.className)}\"\n style=\"display: ${this.isOpen ? \"block\" : \"none\"}; width: 360px\"\n ></div>\n `;\n }\n};\nGs([\n l({ attribute: \"data-state\", type: String })\n], _r.prototype, \"state\", 2);\nGs([\n D()\n], _r.prototype, \"isOpen\", 2);\n_r = Gs([\n p(\"rtg-hover-card-content\")\n], _r);\nvar $c = Object.getOwnPropertyDescriptor, Ec = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? $c(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Mo = class extends h {\n getAttributesToExclude() {\n return [\"value\", \"defaultValue\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.removeDuplicateContent();\n }\n render() {\n return d`\n <div id=\"rtg-hover-card-trigger\" class=\"${g(\"\", this.className)}\">\n ${Array.from(this.children)}\n </div>\n `;\n }\n};\nMo = Ec([\n p(\"rtg-hover-card-trigger\")\n], Mo);\nvar Sc = Object.defineProperty, Oc = Object.getOwnPropertyDescriptor, ci = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Oc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Sc(t, o, r), r;\n};\nlet bs = class extends h {\n constructor() {\n super(...arguments), this.isOpen = !1, this.hoverTimeout = null, this.openCard = () => {\n var e;\n this.hoverTimeout && (clearTimeout(this.hoverTimeout), this.hoverTimeout = null), this.isOpen || (this.isOpen = !0, (e = this._content) == null || e.dispatchEvent(\n new CustomEvent(\"hover-card-state-change\", {\n detail: { isOpen: !0 }\n })\n ));\n }, this.closeCard = () => {\n this.hoverTimeout = setTimeout(() => {\n var e;\n this.isOpen = !1, (e = this._content) == null || e.dispatchEvent(\n new CustomEvent(\"hover-card-state-change\", {\n detail: { isOpen: !1 }\n })\n );\n }, 150);\n };\n }\n get _containerElement() {\n return this.renderRoot.querySelector(\"#rtg-hover-card-container\");\n }\n get _content() {\n return this.renderRoot.querySelector(\"rtg-hover-card-content\");\n }\n get _trigger() {\n return this.renderRoot.querySelector(\"rtg-hover-card-trigger\");\n }\n getAttributesToExclude() {\n return [];\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.isOpen ? \"open\" : \"close\");\n }\n connectedCallback() {\n super.connectedCallback();\n }\n disconnectedCallback() {\n const e = this._trigger, t = this._content;\n e == null || e.removeEventListener(\"mouseenter\", this.openCard), e == null || e.removeEventListener(\"mouseleave\", this.closeCard), t == null || t.removeEventListener(\"mouseenter\", this.openCard), t == null || t.removeEventListener(\"mouseleave\", this.closeCard), this.hoverTimeout && clearTimeout(this.hoverTimeout), super.disconnectedCallback();\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n const t = this._containerElement;\n this.moveLightDomChildrenInto(t);\n const o = this._trigger, s = this._content;\n o == null || o.addEventListener(\"mouseenter\", this.openCard), o == null || o.addEventListener(\"mouseleave\", this.closeCard), s == null || s.addEventListener(\"mouseenter\", this.openCard), s == null || s.addEventListener(\"mouseleave\", this.closeCard);\n }\n render() {\n return d`\n <div\n id=\"rtg-hover-card-container\"\n part=\"hover-card\"\n class=\"${g(\"\", this.className)}\"\n ></div>\n `;\n }\n};\nci([\n D()\n], bs.prototype, \"isOpen\", 2);\nbs = ci([\n p(\"rtg-hover-card\")\n], bs);\nconst Pc = \"rtg-flex rtg-h-full rtg-w-full rtg-flex-col rtg-overflow-hidden rtg-rounded-md rtg-bg-popover rtg-text-popover-foreground rtg-border rtg-shadow-md\", Dc = \"py-6 text-center text-sm\", Rc = \"rtg-overflow-hidden rtg-p-1 rtg-text-foreground [&_[rtgcmd-group-heading]]:rtg-px-2 [&_[rtgcmd-group-heading]]:rtg-py-1.5 [&_[rtgcmd-group-heading]]:rtg-text-xs [&_[rtgcmd-group-heading]]:rtg-font-medium [&_[rtgcmd-group-heading]]:rtg-text-muted-foreground\", kc = \"rtg-flex rtg-items-center rtg-border-b rtg-px-3\", Ac = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground data-[disabled]:rtg-pointer-events-none data-[disabled]:rtg-opacity-50 hover:rtg-bg-accent focus:rtg-outline-none\", Lc = \"rtg-max-h-[300px] rtg-overflow-y-auto rtg-overflow-x-hidden\", Ic = \"rtg-mx-1 rtg-h-px rtg-bg-border\";\nvar Tc = Object.defineProperty, jc = Object.getOwnPropertyDescriptor, Ys = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? jc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Tc(t, o, r), r;\n};\nlet Cr = class extends W {\n constructor() {\n super(...arguments), this.placeholder = \"Type a command or search...\", this._value = \"\";\n }\n get identifier() {\n const e = this.parentElement;\n return e ? `${e.getAttribute(\"id\")}i` : \"rtgcmdrxi\";\n }\n filterItems() {\n const e = this.parentElement;\n if (e) {\n let t = !0;\n const o = e.querySelectorAll(\"rtg-command-group\");\n o && o.forEach((r) => {\n var y, b;\n let n = !0;\n const i = r.querySelectorAll(\"rtg-command-item\");\n i && i.forEach((x) => {\n (x.value || \"\").toLowerCase().includes(this._value.toLowerCase()) ? (n = !1, t = !1, x._hidden = \"false\") : x._hidden = \"true\";\n }), r._hidden = n ? \"true\" : \"false\";\n let v = r.previousElementSibling;\n v && (v._hidden = n || ((y = v.previousElementSibling) == null ? void 0 : y.getAttribute(\"aria-hidden\")) === \"true\" ? \"true\" : \"false\"), v = r.nextElementSibling, v && (v._hidden = n || ((b = v.nextElementSibling) == null ? void 0 : b.getAttribute(\"aria-hidden\")) === \"true\" ? \"true\" : \"false\");\n });\n const s = e.querySelector(\"rtg-command-empty\");\n s && s.setAttribute(\"aria-hidden\", t ? \"false\" : \"true\");\n }\n }\n handleChange(e) {\n const t = e.target;\n t && (this._value = t.value, this.filterItems());\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"command-input\"\n class=\"${g(kc, this.className)}\"\n name=\"rtgcmd-input-container\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"rtg-mr-2 rtg-h-4 rtg-w-4 rtg-shrink-0 rtg-opacity-50\"\n >\n <circle cx=\"11\" cy=\"11\" r=\"8\"></circle>\n <path d=\"m21 21-4.3-4.3\"></path>\n </svg>\n <input\n class=\"rtg-flex rtg-h-11 rtg-w-full rtg-rounded-md rtg-bg-transparent rtg-py-3 rtg-text-sm rtg-outline-none placeholder:rtg-text-muted-foreground disabled:rtg-cursor-not-allowed disabled:rtg-opacity-50\"\n placeholder=\"${this.placeholder}\"\n rtgcmd-input\n @input=\"${this.handleChange}\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n aria-autocomplete=\"list\"\n role=\"combobox\"\n aria-expanded=\"true\"\n aria-controls=\":r1oe:\"\n aria-labelledby=\":r1of:\"\n id=\"${this.identifier}\"\n type=\"text\"\n data-value=\"${this._value}\"\n />\n </div>\n `;\n }\n};\nYs([\n l({ type: String })\n], Cr.prototype, \"placeholder\", 2);\nYs([\n l({ attribute: \"value\", type: String })\n], Cr.prototype, \"_value\", 2);\nCr = Ys([\n p(\"rtg-command-input\")\n], Cr);\nvar Mc = Object.defineProperty, Nc = Object.getOwnPropertyDescriptor, Ks = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Nc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Mc(t, o, r), r;\n};\nlet et = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"true\";\n }\n get containerElement() {\n return this.querySelector(`#${this.identifier}`);\n }\n get identifier() {\n if (this._id !== \"\")\n return this._id;\n const e = this.parentElement;\n return e ? this._id = `${e.getAttribute(\"id\")}e${et._counter++}` : this._id = `rtgcmdrxlxe${et._counter++}`, this._id;\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.containerElement);\n }\n render() {\n return d`\n <div\n style=\"${this._hidden === \"true\" ? \"display: none;\" : \"\"}\"\n part=\"command-empty\"\n class=\"${g(Dc, this.className)}\"\n rtgcmd-empty\n role=\"presentation\"\n id=\"${this.identifier}\"\n ></div>\n `;\n }\n};\net._counter = 0;\nKs([\n l({ type: String })\n], et.prototype, \"_id\", 2);\nKs([\n l({ attribute: \"aria-hidden\", type: String })\n], et.prototype, \"_hidden\", 2);\net = Ks([\n p(\"rtg-command-empty\")\n], et);\nvar Uc = Object.defineProperty, zc = Object.getOwnPropertyDescriptor, qr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? zc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Uc(t, o, r), r;\n};\nlet ze = class extends h {\n constructor() {\n super(...arguments), this.heading = \"\", this._id = \"\", this._hidden = \"\";\n }\n get itemsContainerElement() {\n return this.querySelector(`#${this.identifier}g`);\n }\n get identifier() {\n if (this._id !== \"\")\n return this._id;\n const e = this.parentElement;\n return e ? this._id = `${e.getAttribute(\"id\")}g${ze._counter++}` : this._id = `rtgcmdrxlxg${ze._counter++}`, this._id;\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n firstUpdated(e) {\n const t = this.itemsContainerElement;\n if (t) {\n for (; t.firstChild; )\n t.removeChild(t.firstChild);\n this.moveLightDomChildrenInto(t);\n }\n }\n render() {\n return d`\n <div\n part=\"command-group\"\n class=\"${g(Rc, this.className)}\"\n rtgcmd-group\n role=\"presentation\"\n id=\"${this.identifier}\"\n style=\"${this._hidden === \"true\" ? \"display: none;\" : \"\"}\"\n >\n <div rtgcmd-group-heading aria-hidden=\"true\" id=\"${this.identifier}h\">\n ${this.heading}\n </div>\n <div\n rtgcmd-group-items\n role=\"group\"\n aria-labelledby=\"${this.identifier}h\"\n id=\"${this.identifier}g\"\n ></div>\n </div>\n `;\n }\n};\nze._counter = 0;\nqr([\n l({ type: String })\n], ze.prototype, \"heading\", 2);\nqr([\n l({ attribute: \"id\", type: String })\n], ze.prototype, \"_id\", 2);\nqr([\n l({ attribute: \"aria-hidden\", type: String })\n], ze.prototype, \"_hidden\", 2);\nze = qr([\n p(\"rtg-command-group\")\n], ze);\nvar qc = Object.getOwnPropertyDescriptor, Bc = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? qc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet No = class extends h {\n get identifier() {\n const e = this.parentElement;\n return e ? `${e.getAttribute(\"id\")}l` : \"rtgcmdrxl\";\n }\n get containerElement() {\n return this.querySelector(\"div[rtgcmd-list]\");\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.containerElement);\n }\n render() {\n return d`\n <div\n part=\"command-list\"\n class=\"${g(Lc, this.className)}\"\n role=\"listbox\"\n id=\"${this.identifier}\"\n style=\"--rtgcmd-list-height: 265.0px;\"\n rtgcmd-list\n >\n <div></div>\n </div>\n `;\n }\n};\nNo = Bc([\n p(\"rtg-command-list\")\n], No);\nvar Fc = Object.defineProperty, Vc = Object.getOwnPropertyDescriptor, ir = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Vc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Fc(t, o, r), r;\n};\nlet Pe = class extends h {\n constructor() {\n super(...arguments), this.selected = !1, this._id = \"\", this._hidden = \"\", this.onSelect = () => {\n };\n }\n get containerElement() {\n return this.querySelector(`#${this.identifier}`);\n }\n get identifier() {\n if (this._id !== \"\")\n return this._id;\n const e = this.parentElement;\n return e ? this._id = `${e.getAttribute(\"id\")}li${Pe._counter++}` : this._id = `rtgcmdrxgxli${Pe._counter++}`, this._id;\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n handleMouseEvent(e) {\n (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.containerElement);\n }\n updated(e) {\n }\n render() {\n return d`\n <div\n part=\"command-item\"\n class=\"${g(\n Ac,\n this.className,\n this.hidden ? \"rtg-hidden\" : \"rtg-flex\"\n )}\"\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n @click=\"${this.onSelect}\"\n rtgcmd-item\n role=\"option\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n data-value=\"${this.value}\"\n id=\"${this.identifier}\"\n aria-hidden=\"${this.hidden}\"\n style=\"${this._hidden === \"true\" ? \"display: none;\" : \"\"}\"\n ></div>\n `;\n }\n};\nPe._counter = 0;\nir([\n l({ type: String })\n], Pe.prototype, \"_id\", 2);\nir([\n l({ attribute: \"aria-hidden\", type: String })\n], Pe.prototype, \"_hidden\", 2);\nir([\n l({ type: Function })\n], Pe.prototype, \"onSelect\", 2);\nir([\n l({ attribute: \"data-value\", type: String }),\n l({ type: Boolean })\n], Pe.prototype, \"containerElement\", 1);\nPe = ir([\n p(\"rtg-command-item\")\n], Pe);\nvar Hc = Object.defineProperty, Gc = Object.getOwnPropertyDescriptor, Ws = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Gc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Hc(t, o, r), r;\n};\nlet tt = class extends W {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"\";\n }\n get identifier() {\n if (this._id !== \"\")\n return this._id;\n const e = this.parentElement;\n return e ? this._id = `${e.getAttribute(\"id\")}s${tt._counter++}` : this._id = `rtgcmdrxlxs${tt._counter++}`, this._id;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`${this._hidden === \"true\" ? Z : d`\n <div\n part=\"command-separator\"\n class=\"${g(Ic, this.className)}\"\n rtgcmd-separator\n role=\"separator\"\n id=\"${this.identifier}\"\n ></div>\n `}`;\n }\n};\ntt._counter = 0;\nWs([\n l({ type: String })\n], tt.prototype, \"_id\", 2);\nWs([\n l({ attribute: \"aria-hidden\", type: String })\n], tt.prototype, \"_hidden\", 2);\ntt = Ws([\n p(\"rtg-command-separator\")\n], tt);\nvar Yc = Object.getOwnPropertyDescriptor, Kc = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Yc(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Uo = class extends h {\n get containerElement() {\n return this.querySelector(\"div[rtgcmd-root]\");\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this.containerElement);\n }\n render() {\n return d`\n <div\n part=\"command\"\n class=\"${g(Pc, this.className)}\"\n id=\"rtgcmdr1\"\n rtgcmd-root\n ></div>\n `;\n }\n};\nUo = Kc([\n p(\"rtg-command\")\n], Uo);\nconst Wc = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground\", Xc = \"rtg-z-50 rtg-min-w-[8rem] rtg-overflow-hidden rtg-rounded-md rtg-border rtg-bg-popover rtg-p-1 rtg-text-popover-foreground rtg-shadow-md data-[state=open]:rtg-animate-in data-[state=closed]:rtg-animate-out data-[state=closed]:rtg-fade-out-0 data-[state=open]:rtg-fade-in-0 data-[state=closed]:rtg-zoom-out-95 data-[state=open]:rtg-zoom-in-95 data-[side=bottom]:rtg-slide-in-from-top-2 data-[side=left]:rtg-slide-in-from-right-2 data-[side=right]:rtg-slide-in-from-left-2 data-[side=top]:rtg-slide-in-from-bottom-2\", Zc = \"rtg-overflow-hidden rtg-p-1 rtg-text-foreground [&_[rtgcmd-group-heading]]:rtg-px-2 [&_[rtgcmd-group-heading]]:rtg-py-1.5 [&_[rtgcmd-group-heading]]:rtg-text-xs [&_[rtgcmd-group-heading]]:rtg-font-medium [&_[rtgcmd-group-heading]]:rtg-text-muted-foreground\", Qc = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none focus:bg-accent focus:rtg-text-accent-foreground data-[disabled]:rtg-pointer-events-none data-[disabled]:rtg-opacity-50 hover:rtg-bg-accent hover:rtg-text-accent-foreground\", Jc = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground\", ed = \"rtg-mx-1 rtg-h-px rtg-bg-border\", td = \"rtg-ml-auto rtg-text-xs rtg-font-semibold\";\nvar rd = Object.defineProperty, sd = Object.getOwnPropertyDescriptor, di = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? sd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && rd(t, o, r), r;\n};\nlet ws = class extends h {\n constructor() {\n super(), this.isOpen = !1, this.handleClickOutside = this.handleClickOutside.bind(this);\n }\n get _containerElement() {\n return this.querySelector(\"div[part=context-menu-content\");\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\"click\", this.handleClickOutside);\n }\n disconnectedCallback() {\n document.removeEventListener(\"click\", this.handleClickOutside), super.disconnectedCallback();\n }\n handleClickOutside(e) {\n const t = this == null ? void 0 : this.querySelector(\"button\");\n !this.contains(e.target) && !(t != null && t.contains(e.target)) && requestAnimationFrame(() => {\n this._containerElement.style.display = \"none\", this._containerElement.style.position = \"absolute\", this._containerElement.dataset.state = \"closed\", this.isOpen = !1;\n });\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"context-menu-content\"\n class=\"${g(Xc, this.className)}\"\n style=\"display:none; width: 260px\"\n ></div>\n `;\n }\n};\ndi([\n D()\n], ws.prototype, \"isOpen\", 2);\nws = di([\n p(\"rtg-context-menu-content\")\n], ws);\nvar od = Object.defineProperty, nd = Object.getOwnPropertyDescriptor, Tt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? nd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && od(t, o, r), r;\n};\nlet rt = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this.selected = !1, this.checked = !1, this.disabled = !1;\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[part=context-menu-checkbox-item-container]\");\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n handleMouseEvent(e) {\n (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n toggleChecked() {\n this.checked = !this.checked;\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"context-menu-checkbox\"\n class=\"${g(\n Wc,\n this.disabled ? \"rtg-pointer-events-none rtg-opacity-50\" : \"\",\n this.className\n )}\"\n @click=${this.toggleChecked}\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n rtgcmd-item\n role=\"option\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n data-value=\"${this.value}\"\n >\n <span\n class=\"rtg-absolute rtg-left-2 rtg-inline-block rtg-h-4 rtg-w-4 rtg-items-center rtg-justify-center\"\n >\n ${this.checked ? d`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"16px\"\n height=\"16px\"\n >\n <path\n d=\"M 19.28125 5.28125 L 9 15.5625 L 4.71875 11.28125 L 3.28125 12.71875 L 8.28125 17.71875 L 9 18.40625 L 9.71875 17.71875 L 20.71875 6.71875 Z\"\n />\n </svg>\n ` : Z}\n </span>\n <div part=\"context-menu-checkbox-item-container\"></div>\n </div>\n `;\n }\n};\nTt([\n l({ type: String })\n], rt.prototype, \"_id\", 2);\nTt([\n l({ attribute: \"data-value\", type: String })\n], rt.prototype, \"value\", 1);\nTt([\n l({ type: Boolean })\n], rt.prototype, \"selected\", 2);\nTt([\n l({ type: Boolean })\n], rt.prototype, \"checked\", 2);\nTt([\n l({ type: Boolean })\n], rt.prototype, \"disabled\", 2);\nrt = Tt([\n p(\"rtg-context-menu-checkbox-item\")\n], rt);\nvar id = Object.defineProperty, ad = Object.getOwnPropertyDescriptor, ui = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ad(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && id(t, o, r), r;\n};\nlet ys = class extends h {\n constructor() {\n super(...arguments), this.heading = \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[ rtgcontext-group-items]\");\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"context-menu-group\"\n class=\"${g(Zc, this.className)}\"\n rtgcmd-group\n role=\"presentation\"\n >\n <div rtgcmd-group-heading aria-hidden=\"true\">${this.heading}</div>\n <div rtgcontext-group-items role=\"group\"></div>\n </div>\n `;\n }\n};\nui([\n l({ type: String })\n], ys.prototype, \"heading\", 2);\nys = ui([\n p(\"rtg-context-menu-group\")\n], ys);\nvar ld = Object.defineProperty, cd = Object.getOwnPropertyDescriptor, gi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? cd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ld(t, o, r), r;\n};\nlet xs = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=context-menu-item]\");\n }\n getAttributesToExclude() {\n return [];\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n firstUpdated(e) {\n var t;\n this.moveLightDomChildrenInto(this._containerElement), (t = this._containerElement) == null || t.addEventListener(\"click\", () => {\n this.dispatchEvent(\n new MouseEvent(\"click\", {\n bubbles: !0,\n composed: !0,\n // ensures it bubbles past shadow root\n cancelable: !0\n })\n ), this.dispatchEvent(\n new CustomEvent(\"close-context-menu\", {\n bubbles: !0,\n composed: !0\n })\n );\n });\n }\n connectedCallback() {\n super.connectedCallback();\n }\n disconnectedCallback() {\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"context-menu-item\"\n class=\"${g(Qc, this.className)}\"\n role=\"option\"\n data-value=\"${this.value}\"\n ></div>\n `;\n }\n};\ngi([\n l({ attribute: \"data-value\", type: String })\n], xs.prototype, \"value\", 1);\nxs = gi([\n p(\"rtg-context-menu-item\")\n], xs);\nvar dd = Object.defineProperty, ud = Object.getOwnPropertyDescriptor, jt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ud(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && dd(t, o, r), r;\n};\nlet st = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this.selected = !1, this.checked = !1, this.disabled = !1;\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[part=context-menu-radio-item-container]\");\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n handleMouseEvent(e) {\n (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n toggleChecked() {\n this.checked || (this.checked = !0, this.dispatchEvent(\n new CustomEvent(\"radio-selected\", { bubbles: !0, composed: !0 })\n ));\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"context-menu-radio\"\n class=\"${g(\n Jc,\n this.disabled ? \"pointer-events-none opacity-50\" : \"\",\n this.className\n )}\"\n @click=${this.toggleChecked}\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n rtgcmd-item\n role=\"option\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n data-value=\"${this.value}\"\n >\n <span\n class=\"rtg-absolute rtg-left-2 rtg-inline-block rtg-h-4 rtg-w-4 rtg-items-center rtg-justify-center\"\n >\n ${this.checked ? d` ${Bs()} ` : Z}\n </span>\n <div part=\"context-menu-radio-item-container\"></div>\n </div>\n `;\n }\n};\njt([\n l({ type: String })\n], st.prototype, \"_id\", 2);\njt([\n l({ attribute: \"data-value\", type: String })\n], st.prototype, \"value\", 1);\njt([\n l({ type: Boolean })\n], st.prototype, \"selected\", 2);\njt([\n l({ type: Boolean })\n], st.prototype, \"checked\", 2);\njt([\n l({ type: Boolean })\n], st.prototype, \"disabled\", 2);\nst = jt([\n p(\"rtg-context-menu-radio-item\")\n], st);\nvar gd = Object.defineProperty, pd = Object.getOwnPropertyDescriptor, pi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? pd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && gd(t, o, r), r;\n};\nlet _s = class extends W {\n constructor() {\n super(...arguments), this._id = \"\";\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"context-menu-separator\"\n class=\"${g(ed, this.className)}\"\n rtgcmd-separator\n role=\"separator\"\n ></div>\n `;\n }\n};\npi([\n l({ type: String })\n], _s.prototype, \"_id\", 2);\n_s = pi([\n p(\"rtg-context-menu-separator\")\n], _s);\nvar hd = Object.getOwnPropertyDescriptor, vd = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? hd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet zo = class extends h {\n get _containerElement() {\n return this.querySelector(\"span[part=context-menu-shortcut]\");\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <span\n part=\"context-menu-shortcut\"\n class=\"${g(td, this.className)}\"\n >\n </span>\n `;\n }\n};\nzo = vd([\n p(\"rtg-context-menu-shortcut\")\n], zo);\nvar fd = Object.getOwnPropertyDescriptor, md = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? fd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet qo = class extends W {\n createRenderRoot() {\n return this;\n }\n render() {\n return d``;\n }\n};\nqo = md([\n p(\"rtg-context-menu-trigger\")\n], qo);\nvar bd = Object.defineProperty, wd = Object.getOwnPropertyDescriptor, hi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? wd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && bd(t, o, r), r;\n};\nlet Cs = class extends h {\n constructor() {\n super(...arguments), this.isOpen = !1, this.handleClickOutside = (e) => {\n const t = e.target;\n this != null && this.contains(t) || (this.isOpen = !1);\n };\n }\n get _containerElement() {\n return this.querySelector(\"div[part=context-menu]\");\n }\n get _triggerElement() {\n return this.querySelector(\"rtg-context-menu-trigger\");\n }\n get _content() {\n return this == null ? void 0 : this.querySelector(\n \"div[part=context-menu-content]\"\n );\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\"click\", this.handleClickOutside), this.addEventListener(\"radio-selected\", this._handleRadioSelected), this.addEventListener(\"close-context-menu\", () => {\n this.isOpen = !1, requestAnimationFrame(() => {\n const e = this._content;\n e && (e.style.display = \"none\");\n });\n });\n }\n disconnectedCallback() {\n document.removeEventListener(\"click\", this.handleClickOutside), super.disconnectedCallback();\n }\n toggleDropdown(e) {\n e.preventDefault(), e.stopPropagation();\n const { clientX: t, clientY: o } = e, s = e.target.getBoundingClientRect();\n requestAnimationFrame(() => {\n const r = this._content;\n r && (r.style.display = \"\", r.style.position = \"absolute\", r.style.left = `${t - s.left}px`, r.style.top = `${o - s.top}px`, r.dataset.state = \"open\", this.isOpen = !0);\n });\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.isOpen ? \"open\" : \"close\");\n }\n _handleRadioSelected(e) {\n this.querySelectorAll(\"rtg-context-menu-radio-item\").forEach((t) => {\n t !== e.target && (t.checked = !1);\n });\n }\n getAttributesToExclude() {\n return [];\n }\n firstUpdated(e) {\n var t;\n this.moveLightDomChildrenInto(this._containerElement), (t = this._triggerElement) == null || t.addEventListener(\"contextmenu\", (o) => {\n this.toggleDropdown(o);\n }), this.style.position = \"relative\";\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div class=\"${g(\"rtg-flex\", this.className)}\" part=\"context-menu\"></div>\n `;\n }\n};\nhi([\n D()\n], Cs.prototype, \"isOpen\", 2);\nCs = hi([\n p(\"rtg-context-menu\")\n], Cs);\nvar yd = Object.getOwnPropertyDescriptor, xd = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? yd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Bo = class extends h {\n getAttributesToExclude() {\n return [\"\"];\n }\n get _containerElement() {\n return this.querySelector(\"div[part=collapsible-trigger]\");\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n createRenderRoot() {\n return this;\n }\n get _collapsible() {\n let e = this.parentElement;\n for (; e && !(e instanceof $r); )\n e = e.parentElement;\n return e;\n }\n onTrigger() {\n const e = this._collapsible;\n e && (e.open = !e.open, this.dispatchEvent(\n new CustomEvent(\"click-collapsible-event\", {\n bubbles: !0,\n composed: !0\n })\n ));\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <div\n @click=${this.onTrigger}\n ${z(e)}\n part=\"collapsible-trigger\"\n ></div>\n `;\n }\n};\nBo = xd([\n p(\"rtg-collapsible-trigger\")\n], Bo);\nvar _d = Object.getOwnPropertyDescriptor, Cd = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? _d(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Fo = class extends h {\n constructor() {\n super(...arguments), this._toggleHandler = (e) => {\n const t = e;\n requestAnimationFrame(() => {\n const o = this._containerElement;\n o && (o.style.display = t.detail.open ? \"block\" : \"none\");\n });\n };\n }\n get _containerElement() {\n return this.querySelector(\"div[part=collapsible-content]\");\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [\"\"];\n }\n connectedCallback() {\n super.connectedCallback(), this.addEventListener(\"toggle-collapsible-content\", this._toggleHandler);\n }\n disconnectedCallback() {\n this.removeEventListener(\"toggle-collapsible-content\", this._toggleHandler), super.disconnectedCallback();\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <div\n ${z(e)}\n class=\"${g(\"\", this.className)}\"\n style=\"display: none;--radix-collapsible-content-height: 100px; --radix-collapsible-content-width: 350px;\"\n part=\"collapsible-content\"\n ></div>\n `;\n }\n};\nFo = Cd([\n p(\"rtg-collapsible-content\")\n], Fo);\nvar $d = Object.defineProperty, Ed = Object.getOwnPropertyDescriptor, vi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ed(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && $d(t, o, r), r;\n};\nlet $r = class extends h {\n constructor() {\n super(...arguments), this.open = !1, this._clickHandler = () => {\n var e;\n (e = this.querySelector(\"rtg-collapsible-content\")) == null || e.dispatchEvent(\n new CustomEvent(\"toggle-collapsible-content\", {\n detail: { open: this.open }\n })\n );\n };\n }\n getAttributesToExclude() {\n return [\"\"];\n }\n createRenderRoot() {\n return this;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=collapsible]\");\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n connectedCallback() {\n super.connectedCallback(), this.addEventListener(\"click-collapsible-event\", this._clickHandler);\n }\n disconnectedCallback() {\n this.removeEventListener(\"click-collapsible-event\", this._clickHandler), super.disconnectedCallback();\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <div\n ${z(e)}\n class=\"${g(\"\", this.className)}\"\n part=\"collapsible\"\n ></div>\n `;\n }\n};\nvi([\n l({ type: Boolean })\n], $r.prototype, \"open\", 2);\n$r = vi([\n p(\"rtg-collapsible\")\n], $r);\nconst Sd = \"rtg-fixed rtg-hidden rtg-left-[50%] rtg-top-[50%] rtg-z-50 rtg-w-full rtg-max-w-lg rtg-translate-x-[-50%] rtg-translate-y-[-50%] rtg-gap-4 rtg-border rtg-bg-background rtg-p-6 rtg-shadow-lg rtg-duration-200 data-[state=open]:rtg-animate-in data-[state=closed]:rtg-animate-out data-[state=closed]:rtg-fade-out-0 data-[state=open]:rtg-fade-in-0 data-[state=closed]:rtg-zoom-out-95 data-[state=open]:rtg-zoom-in-95 data-[state=closed]:rtg-slide-out-to-left-1/2 data-[state=closed]:rtg-slide-out-to-top-[48%] data-[state=open]:rtg-slide-in-from-left-1/2 data-[state=open]:rtg-slide-in-from-top-[48%] sm:rtg-rounded-lg\", Od = \"rtg-flex rtg-flex-col-reverse sm:rtg-flex-row sm:rtg-justify-end sm:rtg-space-x-2\", Pd = \"rtg-flex rtg-flex-col rtg-space-y-1.5 rtg-text-center sm:rtg-text-left\", Dd = \"rtg-fixed rtg-inset-0 rtg-z-50 rtg-bg-black/80 data-[state=open]:rtg-animate-in data-[state=closed]:rtg-animate-out data-[state=closed]:rtg-fade-out-0 data-[state=open]:rtg-fade-in-0\";\nvar Rd = Object.defineProperty, kd = Object.getOwnPropertyDescriptor, fi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? kd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Rd(t, o, r), r;\n};\nconst Qr = \"closed\";\nlet $s = class extends h {\n constructor() {\n super(...arguments), this.state = Qr, this.handleCloseButtonClick = () => {\n const e = this._dialog;\n e && (e.dataset.state = Qr);\n };\n }\n get _containerElement() {\n return this.querySelector(\"div[part=dialog-content-slot]\");\n }\n get ـcomponentElement() {\n return this.querySelector(\"div[part=dialog-content]\");\n }\n get _dialog() {\n let e = this.parentElement;\n for (; e; ) {\n if (e instanceof St)\n return e;\n e = e.parentElement;\n }\n return e;\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n updated(e) {\n requestAnimationFrame(() => {\n e.get(\"state\") === Qr ? this.ـcomponentElement.style.display = \"grid\" : this.ـcomponentElement.style.display = \"none\";\n });\n }\n render() {\n return d`\n <div\n part=\"dialog-content\"\n class=\"${g(Sd, this.className)}\"\n rtgdlg-content\n >\n <button\n type=\"button\"\n @click=\"${this.handleCloseButtonClick}\"\n class=\"rtg-absolute rtg-right-4 rtg-top-4 rtg-rounded-sm rtg-opacity-70 rtg-ring-offset-background rtg-transition-opacity hover:rtg-opacity-100 focus:rtg-outline-none focus:rtg-ring-2 focus:rtg-ring-ring focus:rtg-ring-offset-2 disabled:rtg-pointer-events-none data-[state=open]:rtg-bg-accent data-[state=open]:rtg-text-muted-foreground\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"h-4 w-4\"\n >\n <path d=\"M18 6 6 18\"></path>\n <path d=\"m6 6 12 12\"></path>\n </svg>\n <span class=\"rtg-sr-only\">Close</span>\n </button>\n <div part=\"dialog-content-slot\"></div>\n </div>\n `;\n }\n};\nfi([\n l({ attribute: \"data-state\", type: String })\n], $s.prototype, \"state\", 2);\n$s = fi([\n p(\"rtg-dialog-content\")\n], $s);\nvar Ad = Object.getOwnPropertyDescriptor, Ld = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ad(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nconst Id = \"closed\";\nlet Vo = class extends h {\n get _dialog() {\n let e = this.parentElement;\n for (; e; ) {\n if (e instanceof St)\n return e;\n e = e.parentElement;\n }\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=dialog-close]\");\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.moveLightDomChildrenInto(this._containerElement), this.addEventListener(\"click\", () => {\n const t = this._dialog;\n t && (t.dataset.state = Id);\n });\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div class=\"${g(\"\", this.className)}\" part=\"dialog-close\"></div>\n `;\n }\n};\nVo = Ld([\n p(\"rtg-dialog-close\")\n], Vo);\nvar Td = Object.getOwnPropertyDescriptor, jd = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Td(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Ho = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=dialog-footer]\");\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"dialog-footer\"\n class=\"${g(Od, this.className)}\"\n ></div>\n `;\n }\n};\nHo = jd([\n p(\"rtg-dialog-footer\")\n], Ho);\nvar Md = Object.defineProperty, Nd = Object.getOwnPropertyDescriptor, Xs = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Nd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Md(t, o, r), r;\n};\nlet Er = class extends W {\n constructor() {\n super(...arguments), this._title = \"\", this.description = \"\";\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"dialog-header\"\n class=\"${g(Pd, this.className)}\"\n >\n <h2\n class=\"${g(\n \"rtg-text-lg rtg-font-semibold rtg-leading-none rtg-tracking-tight\",\n this.className\n )}\"\n >\n ${this._title}\n </h2>\n <p\n class=\"${g(\"rtg-text-sm rtg-text-muted-foreground\", this.className)}\"\n >\n ${this.description}\n </p>\n </div>\n `;\n }\n};\nXs([\n l({ attribute: \"title\", type: String })\n], Er.prototype, \"_title\", 2);\nXs([\n l({ type: String })\n], Er.prototype, \"description\", 2);\nEr = Xs([\n p(\"rtg-dialog-header\")\n], Er);\nvar Ud = Object.getOwnPropertyDescriptor, zd = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ud(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Go = class extends W {\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"dialog-overly\"\n class=\"${g(Dd, this.className)}\"\n ></div>\n `;\n }\n};\nGo = zd([\n p(\"rtg-dialog-overlay\")\n], Go);\nvar qd = Object.getOwnPropertyDescriptor, Bd = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? qd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nconst Fd = \"open\";\nlet Yo = class extends h {\n constructor() {\n super(...arguments), this.handleClick = () => {\n const e = this._dialog;\n e && (e.dataset.state = Fd);\n };\n }\n get _dialog() {\n let e = this.parentElement;\n for (; e; ) {\n if (e instanceof St)\n return e;\n e = e.parentElement;\n }\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=dialog-trigger]\");\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.moveLightDomChildrenInto(this._containerElement), this.addEventListener(\"click\", (t) => {\n t.stopPropagation(), this.handleClick();\n });\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div class=\"${g(\"\", this.className)}\" part=\"dialog-trigger\"></div>\n `;\n }\n};\nYo = Bd([\n p(\"rtg-dialog-trigger\")\n], Yo);\nvar Vd = Object.defineProperty, Hd = Object.getOwnPropertyDescriptor, mi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Hd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Vd(t, o, r), r;\n};\nconst Gd = \"open\", Yd = \"closed\";\nlet St = class extends h {\n constructor() {\n super(...arguments), this.state = Yd;\n }\n get _containerElement() {\n return this.querySelector(\"div[rtgdlg-root]\");\n }\n get _content() {\n const e = this.querySelector(\"rtg-dialog-content\");\n return e || null;\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.state);\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n render() {\n return d`\n <div rtgdlg-root class=\"${g(\"\", this.className)}\" part=\"dialog\">\n ${this.state === Gd ? d` <rtg-dialog-overlay></rtg-dialog-overlay>` : Z}\n </div>\n `;\n }\n};\nmi([\n l({ attribute: \"data-state\", type: String })\n], St.prototype, \"state\", 2);\nSt = mi([\n p(\"rtg-dialog\")\n], St);\nvar Kd = Object.defineProperty, Wd = Object.getOwnPropertyDescriptor, Zs = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Wd(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Kd(t, o, r), r;\n};\nlet Sr = class extends W {\n constructor() {\n super(...arguments), this.checked = !1, this.disabled = !1;\n }\n _toggleChecked() {\n this.disabled || (this.checked = !this.checked, this.dispatchEvent(new CustomEvent(\"change\", { detail: this.checked })));\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = \"rtg-peer rtg-inline-flex rtg-h-5 rtg-w-9 rtg-shrink-0 rtg-items-center rtg-rounded-full rtg-border-2 rtg-border-transparent rtg-shadow-sm rtg-transition-colors focus-visible:rtg-outline-none focus-visible:rtg-ring-2 focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 focus-visible:rtg-ring-offset-background\", t = this.checked ? \"rtg-bg-accent-foreground\" : \"rtg-bg-input\", o = this.disabled ? \"rtg-cursor-default\" : \"rtg-cursor-pointer\", s = this.checked ? \"rtg-translate-x-4\" : \"rtg-translate-x-0\";\n return d`\n <div\n part=\"switch\"\n @click=\"${this._toggleChecked}\"\n data-testid=\"switch-atom\"\n role=\"switch\"\n aria-checked=\"${this.checked}\"\n aria-disabled=\"${this.disabled}\"\n class=\"${g(e, t, o)}\"\n >\n <div\n part=\"switch-pointer\"\n class=\"${g(\n \"rtg-pointer-events-none rtg-block rtg-h-4 rtg-w-4 rtg-rounded-full rtg-bg-background rtg-shadow-lg rtg-ring-0 rtg-transition-transform\",\n s\n )}\"\n ></div>\n </div>\n `;\n }\n};\nZs([\n l({ type: Boolean, reflect: !0 })\n], Sr.prototype, \"checked\", 2);\nZs([\n l({ type: Boolean })\n], Sr.prototype, \"disabled\", 2);\nSr = Zs([\n p(\"rtg-switch\")\n], Sr);\nconst Qs = \"closed\", Xd = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground\", Zd = \"rtg-absolute rtg-flex rtg-h-full rtg-max-h-[300px] rtg-flex-col rtg-overflow-y-auto rtg-overflow-x-hidden rtg-rounded-md rtg-border rtg-bg-popover rtg-text-popover-foreground shadow-md\", Qd = \"rtg-overflow-hidden rtg-p-1 rtg-text-foreground [&_[rtgcmd-group-heading]]:rtg-px-2 [&_[rtgcmd-group-heading]]:rtg-py-1.5 [&_[rtgcmd-group-heading]]:rtg-text-xs [&_[rtgcmd-group-heading]]:rtg-font-medium [&_[rtgcmd-group-heading]]:rtg-text-muted-foreground\", Jd = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground data-[disabled]:rtg-pointer-events-none data-[disabled]:rtg-opacity-50\", eu = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground\", tu = \"rtg-mx-1 rtg-h-px rtg-bg-border\";\nvar ru = Object.defineProperty, su = Object.getOwnPropertyDescriptor, Js = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? su(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ru(t, o, r), r;\n};\nlet Or = class extends h {\n constructor() {\n super(...arguments), this.state = Qs, this.isOpen = !1;\n }\n get _dropdownMenu() {\n let e = this.parentElement;\n for (; e && !(e instanceof Q); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=dropdown-menu-content]\");\n }\n updated(e) {\n super.updated(e), this.state === \"open\" ? this.isOpen = !0 : this.isOpen = !1;\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"dropdown-menu-content\"\n class=\"${g(Zd, this.className)}\"\n style=\"display: ${this.isOpen ? \"block\" : \"none\"};height:auto;z-index: 50\"\n ></div>\n `;\n }\n};\nJs([\n l({ attribute: \"data-state\", type: String })\n], Or.prototype, \"state\", 2);\nJs([\n D()\n], Or.prototype, \"isOpen\", 2);\nOr = Js([\n p(\"rtg-dropdown-menu-content\")\n], Or);\nvar ou = Object.defineProperty, nu = Object.getOwnPropertyDescriptor, ar = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? nu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ou(t, o, r), r;\n};\nlet Ot = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"\", this.selected = !1;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=dropdown-menu-item]\");\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n get _dropdownMenu() {\n let e = this.parentElement;\n for (; e && !(e instanceof Q); )\n e = e.parentElement;\n return e;\n }\n handleMouseEvent(e) {\n console.log(e, this.value), (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n handleClickDefault() {\n this._dropdownMenu.isOpen = !1;\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d` ${this._hidden === \"true\" ? Z : d`\n <div\n part=\"dropdown-menu-item\"\n class=\"${g(Jd, this.className)}\"\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n @click=\"${this.handleClickDefault}\"\n rtgcmd-item\n role=\"option\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n data-value=\"${this.value}\"\n aria-hidden=\"${this.hidden}\"\n ></div>\n `}`;\n }\n};\nar([\n l({ type: String })\n], Ot.prototype, \"_id\", 2);\nar([\n l({ attribute: \"aria-hidden\", type: String })\n], Ot.prototype, \"_hidden\", 2);\nar([\n l({ attribute: \"data-value\", type: String })\n], Ot.prototype, \"value\", 1);\nar([\n l({ type: Boolean })\n], Ot.prototype, \"selected\", 2);\nOt = ar([\n p(\"rtg-dropdown-menu-item\")\n], Ot);\nvar iu = Object.defineProperty, au = Object.getOwnPropertyDescriptor, gt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? au(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && iu(t, o, r), r;\n};\nlet qe = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"\", this.selected = !1, this.checked = !1, this.disabled = !1;\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[part=dropdown-menu-radio-item-container]\");\n }\n handleMouseEvent(e) {\n (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n toggleChecked() {\n this.checked || (this.checked = !0, this.dispatchEvent(\n new CustomEvent(\"radio-selected\", { bubbles: !0, composed: !0 })\n ));\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"dropdown-menu-radio\"\n class=\"${g(\n eu,\n this.disabled ? \"rtg-pointer-events-none rtg-opacity-50\" : \"\",\n this.className\n )}\"\n @click=${this.toggleChecked}\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n rtgcmd-item\n role=\"option\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n aria-checked=\"${this.checked}\"\n data-value=\"${this.value}\"\n aria-hidden=\"${this.hidden}\"\n >\n <span\n class=\"rtg-absolute rtg-left-2 rtg-flex rtg-items-center rtg-justify-center\"\n >\n ${this.checked ? d` ${Bs()} ` : Z}\n </span>\n <div part=\"dropdown-menu-radio-item-container\"></div>\n </div>\n `;\n }\n};\ngt([\n l({ type: String })\n], qe.prototype, \"_id\", 2);\ngt([\n l({ attribute: \"aria-hidden\", type: String })\n], qe.prototype, \"_hidden\", 2);\ngt([\n l({ attribute: \"data-value\", type: String })\n], qe.prototype, \"value\", 1);\ngt([\n l({ type: Boolean })\n], qe.prototype, \"selected\", 2);\ngt([\n l({ type: Boolean })\n], qe.prototype, \"checked\", 2);\ngt([\n l({ type: Boolean })\n], qe.prototype, \"disabled\", 2);\nqe = gt([\n p(\"rtg-dropdown-menu-radio-item\")\n], qe);\nvar lu = Object.getOwnPropertyDescriptor, cu = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? lu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Ko = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=dropdown-menu-seperator]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`<div\n part=\"dropdown-menu-seperator\"\n class=\"${g(tu, this.className)}\"\n rtgcmd-separator\n role=\"separator\"\n ></div>`;\n }\n};\nKo = cu([\n p(\"rtg-dropdown-menu-separator\")\n], Ko);\nvar du = Object.defineProperty, uu = Object.getOwnPropertyDescriptor, Mt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? uu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && du(t, o, r), r;\n};\nlet ot = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this.selected = !1, this.checked = !1, this.disabled = !1;\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n get _containerElement() {\n return this.querySelector(\n \"div[part=dropdown-menu-checkbox-item-container]\"\n );\n }\n get _dropdownMenu() {\n let e = this.parentElement;\n for (; e && !(e instanceof Q); )\n e = e.parentElement;\n return e;\n }\n handleMouseEvent(e) {\n (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n toggleChecked() {\n this._dropdownMenu.isOpen = !1, this.checked = !this.checked;\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"dropdown-menu-item\"\n class=\"${g(\n Xd,\n this.disabled ? \"rtg-pointer-events-none rtg-opacity-50\" : \"\",\n this.className\n )}\"\n @click=${this.toggleChecked}\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n rtgcmd-item\n role=\"option\"\n aria-checked=\"${this.checked}\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n data-value=\"${this.value}\"\n aria-hidden=\"${this.hidden}\"\n >\n <span\n class=\"rtg-absolute rtg-left-2 rtg-flex rtg-items-center rtg-justify-center\"\n >\n ${this.checked ? d`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"16px\"\n height=\"16px\"\n >\n <path\n d=\"M 19.28125 5.28125 L 9 15.5625 L 4.71875 11.28125 L 3.28125 12.71875 L 8.28125 17.71875 L 9 18.40625 L 9.71875 17.71875 L 20.71875 6.71875 Z\"\n />\n </svg>\n ` : Z}\n </span>\n <div part=\"dropdown-menu-checkbox-item-container\"></div>\n </div>\n `;\n }\n};\nMt([\n l({ type: String })\n], ot.prototype, \"_id\", 2);\nMt([\n l({ attribute: \"data-value\", type: String })\n], ot.prototype, \"value\", 1);\nMt([\n l({ type: Boolean })\n], ot.prototype, \"selected\", 2);\nMt([\n l({ type: Boolean })\n], ot.prototype, \"checked\", 2);\nMt([\n l({ type: Boolean })\n], ot.prototype, \"disabled\", 2);\not = Mt([\n p(\"rtg-dropdown-menu-checkbox-item\")\n], ot);\nvar gu = Object.defineProperty, pu = Object.getOwnPropertyDescriptor, Br = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? pu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && gu(t, o, r), r;\n};\nlet Xt = class extends h {\n constructor() {\n super(...arguments), this.heading = \"\", this._id = \"\", this._hidden = \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[rtgcmd-group-items]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`${this._hidden === \"true\" ? Z : d`\n <div\n part=\"dropdown-menu-group\"\n class=\"${g(Qd, this.className)}\"\n rtgcmd-group\n role=\"presentation\"\n >\n <div rtgcmd-group-heading>${this.heading}</div>\n <div rtgcmd-group-items role=\"group\"></div>\n </div>\n `}`;\n }\n};\nBr([\n l({ type: String })\n], Xt.prototype, \"heading\", 2);\nBr([\n l({ attribute: \"id\", type: String })\n], Xt.prototype, \"_id\", 2);\nBr([\n l({ attribute: \"aria-hidden\", type: String })\n], Xt.prototype, \"_hidden\", 2);\nXt = Br([\n p(\"rtg-dropdown-menu-group\")\n], Xt);\nvar hu = Object.getOwnPropertyDescriptor, vu = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? hu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Wo = class extends W {\n createRenderRoot() {\n return this;\n }\n render() {\n return d``;\n }\n};\nWo = vu([\n p(\"rtg-dropdown-menu-trigger\")\n], Wo);\nvar fu = Object.defineProperty, mu = Object.getOwnPropertyDescriptor, bi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? mu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && fu(t, o, r), r;\n};\nlet Q = class extends h {\n constructor() {\n super(...arguments), this.isOpen = !1, this.handleClickOutside = (e) => {\n var o, s;\n const t = e.target;\n !((o = this._containerElement) != null && o.contains(t)) && !((s = this._triggerElement) != null && s.contains(t)) && (this.isOpen = !1, Q._openInstance === this && (Q._openInstance = null));\n };\n }\n get _triggerElement() {\n return this.querySelector(\"rtg-dropdown-menu-trigger\");\n }\n get _containerElement() {\n return this.querySelector(\"div[part=dropdown-menu]\");\n }\n get _content() {\n return this.querySelector(\"rtg-dropdown-menu-content\");\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\"click\", this.handleClickOutside), this.addEventListener(\"radio-selected\", this._handleRadioSelected);\n }\n toggleDropdown(e) {\n e.stopPropagation();\n const t = this.isOpen;\n this.isOpen = !this.isOpen, this.isOpen ? (Q._openInstance && Q._openInstance !== this && (Q._openInstance.isOpen = !1), Q._openInstance = this) : t && Q._openInstance === this && (Q._openInstance = null);\n }\n disconnectedCallback() {\n Q._openInstance === this && (Q._openInstance = null), document.removeEventListener(\"click\", this.handleClickOutside), super.disconnectedCallback();\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.isOpen ? \"open\" : \"close\");\n }\n firstUpdated(e) {\n var t;\n this.moveLightDomChildrenInto(this._containerElement), (t = this._triggerElement) == null || t.addEventListener(\n \"click\",\n (o) => this.toggleDropdown(o)\n );\n }\n _handleRadioSelected(e) {\n this.isOpen = !1, this.querySelectorAll(\"rtg-dropdown-menu-radio-item\").forEach((t) => {\n t !== e.target && (t.checked = !1);\n });\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n class=\"${g(\"rtg-w-fit\", this.className)}\"\n part=\"dropdown-menu\"\n ></div>\n `;\n }\n};\nQ._openInstance = null;\nbi([\n D()\n], Q.prototype, \"isOpen\", 2);\nQ = bi([\n p(\"rtg-dropdown-menu\")\n], Q);\nconst bu = \"rtg-flex rtg-min-h-[80px] rtg-w-full rtg-rounded-md rtg-border rtg-border-input rtg-bg-background rtg-px-3 rtg-py-2 rtg-text-sm rtg-ring-offset-background placeholder:rtg-text-muted-foreground focus-visible:rtg-outline-none focus-visible:rtg-ring-2 focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 disabled:rtg-cursor-not-allowed disabled:rtg-opacity-50\";\nvar wu = Object.defineProperty, yu = Object.getOwnPropertyDescriptor, pt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? yu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && wu(t, o, r), r;\n};\nlet Be = class extends h {\n constructor() {\n super(), this.disabled = !1, this.placeholder = \"\", this.defaultValue = \"\", this.rows = 4, this.cols = 50, this.value = \"\", this.value = this.value || this.defaultValue;\n }\n firstUpdated(e) {\n this.value = this.defaultValue;\n }\n handleInputChange(e) {\n const t = e.target;\n this.value = t.value;\n }\n getAttributesToExclude() {\n return [\"disabled\", \"type\", \"placeholder\", \"value\", \"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <textarea\n part=\"textarea\"\n ${z(e)}\n class=\"${g(bu, this.className)}\"\n placeholder=\"${this.placeholder}\"\n .value=${this.value}\n .rows=${this.rows}\n .cols=${this.cols}\n ?disabled=${this.disabled}\n @change=\"${this.handleInputChange}\"\n />\n `;\n }\n};\npt([\n l({ type: Boolean })\n], Be.prototype, \"disabled\", 2);\npt([\n l({ type: String })\n], Be.prototype, \"placeholder\", 2);\npt([\n l({ type: String })\n], Be.prototype, \"defaultValue\", 2);\npt([\n l({ type: Number })\n], Be.prototype, \"rows\", 2);\npt([\n l({ type: Number })\n], Be.prototype, \"cols\", 2);\npt([\n l({ type: String })\n], Be.prototype, \"value\", 2);\nBe = pt([\n p(\"rtg-textarea\")\n], Be);\nconst xu = \"unChecked\", _u = \"rtg-flex rtg-items-center rtg-space-x-2\", Cu = \"rtg-grid rtg-gap-2\";\nvar $u = Object.defineProperty, Eu = Object.getOwnPropertyDescriptor, Nt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Eu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && $u(t, o, r), r;\n};\nlet nt = class extends h {\n constructor() {\n super(...arguments), this.checked = !1, this.tabindex = 0, this.value = \"\", this.id = \"radio-group-item\", this.state = xu;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=radio-group-item]\");\n }\n _onClick(e) {\n e.defaultPrevented || this.checked || (this.checked = !0, this.dispatchEvent(\n new CustomEvent(\"radio-selected\", { bubbles: !0, composed: !0 })\n ));\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n class=\"${g(_u, this.className)}\"\n part=\"radio-group-item\"\n >\n <button\n type=\"button\"\n role=\"radio\"\n aria-checked=\"${this.checked}\"\n data-state=\"${this.state}\"\n value=\"${this.value}\"\n @click=\"${this._onClick}\"\n class=\"rtg-aspect-square rtg-h-4 rtg-w-4 rtg-rounded-full rtg-border rtg-border-primary rtg-text-primary rtg-shadow focus:rtg-outline-none focus-visible:rtg-ring-1 focus-visible:rtg-ring-ring disabled:rtg-cursor-not-allowed disabled:rtg-opacity-50\"\n id=\"${this.id}\"\n tabindex=\"${this.tabindex}\"\n data-radix-collection-item=\"\"\n >\n ${this.checked ? d`<span\n data-state=\"checked\"\n class=\"rtg-flex rtg-items-center rtg-justify-center\"\n >\n ${La()}\n </span>` : Z}\n </button>\n <label\n part=\"radio-group-item-label\"\n class=\"rtg-text-sm rtg-font-medium rtg-leading-none peer-disabled:rtg-cursor-not-allowed peer-disabled:rtg-opacity-70\"\n for=\"${this.id}\"\n >${this.value}</label\n >\n </div>\n `;\n }\n};\nNt([\n l({ type: Boolean, reflect: !0 })\n], nt.prototype, \"checked\", 2);\nNt([\n l({ type: Number })\n], nt.prototype, \"tabindex\", 2);\nNt([\n l({ type: String })\n], nt.prototype, \"value\", 2);\nNt([\n l({ type: String })\n], nt.prototype, \"id\", 2);\nNt([\n l({ attribute: \"data-state\", type: String })\n], nt.prototype, \"state\", 2);\nnt = Nt([\n p(\"rtg-radio-group-item\")\n], nt);\nvar Su = Object.getOwnPropertyDescriptor, Ou = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Su(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Xo = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=radio-group]\");\n }\n connectedCallback() {\n super.connectedCallback(), this.addEventListener(\"radio-selected\", this._handleRadioSelected);\n }\n _handleRadioSelected(e) {\n this.querySelectorAll(\"rtg-radio-group-item\").forEach((t) => {\n t !== e.target && (t.checked = !1);\n });\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"radio-group\"\n class=\"${g(Cu, this.className)}\"\n style=\"outline: none;\"\n ></div>\n `;\n }\n};\nXo = Ou([\n p(\"rtg-radio-group\")\n], Xo);\nconst Pu = he(\n \"rtg-inline-flex rtg-items-center rtg-justify-center rtg-whitespace-nowrap rtg-rounded-sm rtg-text-sm rtg-font-medium rtg-transition-colors focus-visible:rtg-outline-none focus-visible:rtg-ring-1 focus-visible:rtg-ring-ring disabled:rtg-pointer-events-none disabled:rtg-opacity-50\",\n {\n variants: {\n variant: {\n outline: \"rtg-border rtg-border-input rtg-bg-background rtg-shadow-sm hover:rtg-bg-accent hover:rtg-text-accent-foreground\",\n ghost: \"hover:rtg-bg-accent hover:rtg-text-accent-foreground\"\n },\n size: {\n default: \"rtg-h-8 rtg-px-4 rtg-py-2\",\n sm: \"rtg-h-7 rtg-rounded-sm px-3 rtg-text-xs\",\n lg: \"rtg-h-9 rtg-rounded-sm px-8\",\n icon: \"rtg-h-8 rtg-w-8\"\n }\n },\n defaultVariants: {\n variant: \"ghost\",\n size: \"default\"\n }\n }\n), Du = \"rtg-flex rtg-flex-row rtg-items-center rtg-gap-1\", Ru = \"rtg-flex rtg-h-9 rtg-w-9 rtg-items-center rtg-justify-center\", ku = \"rtg-gap-1 rtg-pl-2.5\", Au = \"rtg-gap-1 rtg-pl-2.5\", Lu = \"rtg-mx-auto rtg-flex rtg-w-full rtg-justify-center\";\nvar Iu = Object.getOwnPropertyDescriptor, Tu = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Iu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Zo = class extends h {\n get _containerElement() {\n return this.querySelector(\"ul[part=pagination-content]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <ul\n part=\"pagination-content\"\n class=\"${g(Du, this.className)}\"\n ></ul>\n `;\n }\n};\nZo = Tu([\n p(\"rtg-pagination-content\")\n], Zo);\nvar ju = Object.defineProperty, Mu = Object.getOwnPropertyDescriptor, Ut = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Mu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ju(t, o, r), r;\n};\nlet $e = class extends h {\n constructor() {\n super(...arguments), this.state = \"close\", this.isActive = !1, this.size = \"icon\", this.variant = \"ghost\", this.href = \"javascript:void(0)\";\n }\n get _containerElement() {\n return this.querySelector(\"a[part=pagination-link]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n updated(e) {\n super.updated(e), this.state === \"open\" ? this.isActive = !0 : this.isActive = !1;\n }\n render() {\n return d`\n <a\n part=\"pagination-link\"\n data-state=\"${this.isActive}\"\n id=\"${this.id}\"\n href=\"${this.href}\"\n aria-current=\"${this.isActive ? \"page\" : \"false\"}\"\n class=\"${g(\n $e.paginationVariants({\n variant: this.isActive ? \"outline\" : \"ghost\",\n size: this.size,\n className: this.className\n }),\n this.className\n )}\"\n >\n </a>\n `;\n }\n};\n$e.paginationVariants = Pu;\nUt([\n l({ attribute: \"data-state\", type: String })\n], $e.prototype, \"state\", 2);\nUt([\n l({ type: Boolean })\n], $e.prototype, \"isActive\", 2);\nUt([\n l({ type: String })\n], $e.prototype, \"size\", 2);\nUt([\n l({ type: String })\n], $e.prototype, \"variant\", 2);\nUt([\n l({ type: String })\n], $e.prototype, \"href\", 2);\n$e = Ut([\n p(\"rtg-pagination-link\")\n], $e);\nvar Nu = Object.defineProperty, Uu = Object.getOwnPropertyDescriptor, eo = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Uu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Nu(t, o, r), r;\n};\nlet Pr = class extends h {\n constructor() {\n super(...arguments), this.uniqueIds = [], this.isActive = !1;\n }\n get _containerElement() {\n return this.querySelector(\"li[part=pagination-item]\");\n }\n get _content() {\n var t;\n const e = (t = this._containerElement) == null ? void 0 : t.children;\n if (e) {\n for (let o = 0; o < e.length; o++)\n if (e[o] instanceof $e)\n return e[o];\n }\n return null;\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.isActive ? \"open\" : \"close\");\n }\n handleClick(e) {\n e.stopPropagation(), document.querySelectorAll(\"rtg-pagination-item\").forEach((o) => {\n o !== this && (o.isActive = !1);\n }), this.isActive = !this.isActive;\n }\n firstUpdated() {\n var o;\n this.moveLightDomChildrenInto(this._containerElement);\n const e = (o = this._containerElement) == null ? void 0 : o.children, t = [];\n for (let s = 0; s < e.length - 1; s += 1) {\n const r = e[s], n = crypto.randomUUID();\n t.push(n), r.dataset.pairId = n;\n }\n this.uniqueIds = t, this._content && this._content.removeEventListener(\"unique-ids-generated\", () => {\n this.requestUpdate();\n });\n }\n raiseEvent() {\n const e = new CustomEvent(\"unique-ids-generated\", {\n detail: { ids: this.uniqueIds },\n bubbles: !0,\n composed: !0\n });\n this.dispatchEvent(e);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <li\n @click=\"${this.handleClick}\"\n part=\"pagination-item\"\n class=\"${g(\"\", this.className)}\"\n ></li>\n `;\n }\n};\neo([\n D()\n], Pr.prototype, \"uniqueIds\", 2);\neo([\n l({ type: Boolean })\n], Pr.prototype, \"isActive\", 2);\nPr = eo([\n p(\"rtg-pagination-item\")\n], Pr);\nvar zu = Object.getOwnPropertyDescriptor, qu = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? zu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Qo = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=pagination-ellipsis]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <span\n part=\"pagination-ellipsis\"\n class=\"${g(Ru, this.className)}\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-ellipsis rtg-h-4 rtg-w-4\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n <span class=\"rtg-sr-only\">More pages</span>\n </span>\n <div part=\"pagination-ellipsis\"></div>\n </span>\n `;\n }\n};\nQo = qu([\n p(\"rtg-pagination-ellipsis\")\n], Qo);\nvar Bu = Object.getOwnPropertyDescriptor, Fu = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Bu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Jo = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=pagination-next]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <rtg-pagination-link\n class=\"${g(ku, this.className)}\"\n aria-label=\"Go to next page\"\n size=\"default\"\n >\n <span>Next</span>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-chevron-right rtg-h-4 rtg-w-4\"\n >\n <path d=\"m9 18 6-6-6-6\"></path>\n </svg>\n <div part=\"pagination-next\"></div>\n </rtg-pagination-link>\n `;\n }\n};\nJo = Fu([\n p(\"rtg-pagination-next\")\n], Jo);\nvar Vu = Object.getOwnPropertyDescriptor, Hu = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Vu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet en = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=pagination-previous]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <rtg-pagination-link\n class=\"${g(Au, this.className)}\"\n aria-label=\"Go to previous page\"\n size=\"default\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-chevron-left rtg-h-4 rtg-w-4\"\n >\n <path d=\"m15 18-6-6 6-6\"></path>\n </svg>\n <span>Previous</span>\n <div part=\"pagination-previous\"></div>\n </rtg-pagination-link>\n `;\n }\n};\nen = Hu([\n p(\"rtg-pagination-previous\")\n], en);\nvar Gu = Object.getOwnPropertyDescriptor, Yu = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Gu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet tn = class extends h {\n get _containerElement() {\n return this.querySelector(\"nav[part=pagination]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <nav\n part=\"pagination\"\n role=\"navigation\"\n aria-label=\"pagination\"\n class=\"${g(Lu, this.className)}\"\n ></nav>\n `;\n }\n};\ntn = Yu([\n p(\"rtg-pagination\")\n], tn);\nvar Ku = Object.defineProperty, Wu = Object.getOwnPropertyDescriptor, wi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Wu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Ku(t, o, r), r;\n};\nconst Xu = \"open\", rn = \"closed\";\nlet Es = class extends h {\n constructor() {\n super(...arguments), this.state = rn;\n }\n connectedCallback() {\n super.connectedCallback();\n const e = document.createElement(\"style\");\n e.textContent = `\n @keyframes slideInUp {\n from { transform: translateY(100%); }\n to { transform: translateY(0); }\n }\n @keyframes slideOutDown {\n from { transform: translateY(0); }\n to { transform: translateY(100%); }\n }\n .drawer-animation {\n touch-action: none;\n will-change: transform;\n transition: transform 0.5s cubic-bezier(0.32, 0.72, 0, 1);\n }\n .drawer-open {\n animation: slideInUp 0.5s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n }\n .drawer-closed {\n animation: slideOutDown 0.5s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n }\n `, this.querySelector(\"style[data-injected]\") || (e.setAttribute(\"data-injected\", \"true\"), this.prepend(e));\n }\n get _containerElement() {\n return this.querySelector(\"div[part=drawer-content-slot]\");\n }\n get ـcomponentElement() {\n return this.querySelector(\"div[part=drawer-content]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n updated(e) {\n requestAnimationFrame(() => {\n e.get(\"state\") === rn ? this.ـcomponentElement.style.display = \"grid\" : this.ـcomponentElement.style.display = \"none\";\n });\n }\n render() {\n return d`\n <div\n part=\"drawer-content\"\n style=\"border-top-left-radius: 10px;\n border-top-right-radius: 10px;\n position: fixed;\n width: 100%;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 50;\n margin-top: 6rem;\n display: flex;\n height: auto;\n flex-direction: column;\"\n class=\"${g(\n \"rtg-border rtg-bg-background\",\n this.state === Xu ? \"drawer-open\" : \"drawer-closed\",\n this.className\n )}\"\n rtgdlg-content\n >\n <div part=\"drawer-content-slot\"></div>\n </div>\n `;\n }\n};\nwi([\n l({ attribute: \"data-state\", type: String })\n], Es.prototype, \"state\", 2);\nEs = wi([\n p(\"rtg-drawer-content\")\n], Es);\nvar Zu = Object.getOwnPropertyDescriptor, Qu = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Zu(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nconst Ju = \"closed\";\nlet sn = class extends h {\n get _drawer() {\n let e = this.parentElement;\n for (; e; ) {\n if (e instanceof Zt)\n return e;\n e = e.parentElement;\n }\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=drawer-close]\");\n }\n async firstUpdated(e) {\n super.firstUpdated(e), await this.updateComplete;\n const t = this._containerElement;\n if (t) {\n this.moveLightDomChildrenInto(t);\n const o = t.querySelector(\n \"button, [data-close], [role=button]\"\n );\n o && o.addEventListener(\"click\", (s) => {\n s.stopPropagation();\n const r = this._drawer;\n r && (r.dataset.state = Ju);\n });\n }\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div class=\"${g(\"\", this.className)}\" part=\"drawer-close\"></div>\n `;\n }\n};\nsn = Qu([\n p(\"rtg-drawer-close\")\n], sn);\nconst eg = \"rtg-text-sm rtg-text-muted-foreground\", tg = \"rtg-mt-auto rtg-flex rtg-flex-col rtg-gap-2 rtg-p-4\", rg = \"rtg-grid rtg-gap-1.5 rtg-p-4 rtg-text-center sm:rtg-text-left\", sg = \"rtg-fixed rtg-inset-0 rtg-z-50 rtg-bg-black/80\", og = \"rtg-text-lg rtg-font-semibold rtg-leading-none rtg-tracking-tight\";\nvar ng = Object.getOwnPropertyDescriptor, ig = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ng(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet on = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=drawer-footer]\");\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"drawer-footer\"\n class=\"${g(tg, this.className)}\"\n ></div>\n `;\n }\n};\non = ig([\n p(\"rtg-drawer-footer\")\n], on);\nvar ag = Object.defineProperty, lg = Object.getOwnPropertyDescriptor, to = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? lg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ag(t, o, r), r;\n};\nlet Dr = class extends W {\n constructor() {\n super(...arguments), this._title = \"\", this.description = \"\";\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"drawer-header\"\n class=\"${g(rg, this.className)}\"\n ></div>\n `;\n }\n};\nto([\n l({ attribute: \"title\", type: String })\n], Dr.prototype, \"_title\", 2);\nto([\n l({ type: String })\n], Dr.prototype, \"description\", 2);\nDr = to([\n p(\"rtg-drawer-header\")\n], Dr);\nvar cg = Object.defineProperty, dg = Object.getOwnPropertyDescriptor, yi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? dg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && cg(t, o, r), r;\n};\nlet Ss = class extends h {\n constructor() {\n super(...arguments), this.title = \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[part=drawer-title\");\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <h2\n part=\"drawer-title\"\n style=\"margin-left:16px\"\n class=\"${g(og, this.className)}\"\n >\n ${this.title}\n </h2>\n `;\n }\n};\nyi([\n l({ type: String })\n], Ss.prototype, \"title\", 2);\nSs = yi([\n p(\"rtg-drawer-title\")\n], Ss);\nvar ug = Object.getOwnPropertyDescriptor, gg = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ug(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet nn = class extends W {\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"drawer-overly\"\n class=\"${g(sg, this.className)}\"\n ></div>\n `;\n }\n};\nnn = gg([\n p(\"rtg-drawer-overlay\")\n], nn);\nvar pg = Object.getOwnPropertyDescriptor, hg = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? pg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nconst vg = \"open\";\nlet an = class extends h {\n constructor() {\n super(...arguments), this.handleClick = () => {\n const e = this._drawer;\n e && (e.dataset.state = vg);\n };\n }\n get _drawer() {\n let e = this.parentElement;\n for (; e; ) {\n if (e instanceof Zt)\n return e;\n e = e.parentElement;\n }\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=drawer-trigger]\");\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.moveLightDomChildrenInto(this._containerElement), this.addEventListener(\"click\", (t) => {\n t.stopPropagation(), this.handleClick();\n });\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div class=\"${g(\"\", this.className)}\" part=\"drawer-trigger\"></div>\n `;\n }\n};\nan = hg([\n p(\"rtg-drawer-trigger\")\n], an);\nvar fg = Object.defineProperty, mg = Object.getOwnPropertyDescriptor, xi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? mg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && fg(t, o, r), r;\n};\nlet Os = class extends h {\n constructor() {\n super(...arguments), this.description = \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[part=drawer-description\");\n }\n getAttributesToExclude() {\n return [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <p\n part=\"drawer-description\"\n style=\"margin-left:16px\"\n class=\"${g(eg, this.className)}\"\n >\n ${this.description}\n </p>\n `;\n }\n};\nxi([\n l({ type: String })\n], Os.prototype, \"description\", 2);\nOs = xi([\n p(\"rtg-drawer-description\")\n], Os);\nvar bg = Object.defineProperty, wg = Object.getOwnPropertyDescriptor, _i = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? wg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && bg(t, o, r), r;\n};\nconst Jr = \"open\", ln = \"closed\";\nlet Zt = class extends h {\n constructor() {\n super(...arguments), this.state = ln, this.handleOutsideClick = (e) => {\n const t = this._content;\n this.state === Jr && t && (t.contains(e.target) || (this.state = ln, this.dispatchEvent(new CustomEvent(\"drawer-close\"))));\n };\n }\n get _containerElement() {\n return this.querySelector(\"div[rtgdlg-root]\");\n }\n get _content() {\n const e = this.querySelector(\"rtg-drawer-content\");\n return e || null;\n }\n connectedCallback() {\n super.connectedCallback(), this.setupOutsideClickHandler();\n }\n disconnectedCallback() {\n super.disconnectedCallback(), this.removeOutsideClickHandler();\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.state), e.has(\"state\") && this.setupOutsideClickHandler();\n }\n setupOutsideClickHandler() {\n this.state === Jr ? document.addEventListener(\"click\", this.handleOutsideClick) : this.removeOutsideClickHandler();\n }\n removeOutsideClickHandler() {\n document.removeEventListener(\"click\", this.handleOutsideClick);\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [];\n }\n render() {\n return d`\n <div class=\"${g(\"\", this.className)}\" rtgdlg-root part=\"drawer\">\n ${this.state === Jr ? d` <rtg-drawer-overlay></rtg-drawer-overlay>` : Z}\n </div>\n `;\n }\n};\n_i([\n l({ attribute: \"data-state\", type: String })\n], Zt.prototype, \"state\", 2);\nZt = _i([\n p(\"rtg-drawer\")\n], Zt);\nconst yg = \"rtg-absolute rtg-z-50 rtg-mt-1 rtg-max-h-72 rtg-w-full rtg-overflow-hidden rtg-overflow-y-auto rtg-rounded-md rtg-border rtg-border-border rtg-bg-background rtg-px-1 rtg-py-2 rtg-shadow-md\", xg = \"rtg-flex rtg-w-full rtg-cursor-pointer rtg-items-center rtg-justify-between rtg-rounded-lg rtg-px-4 rtg-py-2 hover:rtg-bg-accent focus:rtg-bg-accent focus:rtg-outline-none\", _g = \"rtg-px-4 rtg-w-full rtg-text-base rtg-font-bold\", Cg = \"rtg-absolute rtg-z-50 rtg-max-h-72 rtg-w-full rtg-overflow-hidden rtg-overflow-y-auto rtg-rounded-lg rtg-border rtg-border-input rtg-bg-background p-1 [&::-webkit-scrollbar-thumb]:rtg-rounded-full [&::-webkit-scrollbar-thumb]:rtg-bg-accent [&::-webkit-scrollbar-track]:rtg-bg-gray-100 [&::-webkit-scrollbar]:rtg-w-2\", $g = \"rtg-mx-1 rtg-h-px rtg-bg-border\", Eg = \"rtg-flex rtg-h-10 rtg-items-center rtg-justify-between rtg-rounded-md rtg-border rtg-border-input rtg-bg-background rtg-px-3 rtg-py-2 rtg-text-sm rtg-ring-offset-background placeholder:rtg-text-muted-foreground focus:rtg-outline-none focus:ring-2 focus:rtg-ring-ring focus:rtg-ring-offset-2 disabled:rtg-cursor-not-allowed disabled:rtg-opacity-50\", Sg = \"rtg-line-clamp-1 rtg-flex rtg-w-[180px]\";\nvar Og = Object.defineProperty, Pg = Object.getOwnPropertyDescriptor, ht = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Pg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Og(t, o, r), r;\n};\nlet Fe = class extends h {\n constructor() {\n super(...arguments), this.value = \"\", this.isSelected = !1, this.isFocus = !1, this.selectItemIndex = -1, this.onSelect = (e, t) => {\n }, this.class = \"\", this._onStoreChange = () => {\n var e, t;\n this.isSelected = this.value.toLowerCase() === ((t = (e = this._select.selectStore.selectedValue) == null ? void 0 : e.toLowerCase) == null ? void 0 : t.call(e)), this.requestUpdate();\n }, this.handleClick = (e) => {\n e.stopPropagation(), this._select.selectStore.select(this.value), this.onSelect(this.value, this.selectItemIndex), this.dispatchEvent(\n new CustomEvent(\"change\", {\n detail: { value: this.value },\n bubbles: !0,\n composed: !0\n })\n );\n };\n }\n get _select() {\n let e = this.parentElement;\n for (; e && !(e instanceof Pt); )\n e = e.parentElement;\n return e;\n }\n connectedCallback() {\n super.connectedCallback(), this._select.selectStore.subscribe(this._onStoreChange);\n }\n disconnectedCallback() {\n this._select.selectStore.unsubscribe(this._onStoreChange), super.disconnectedCallback();\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n get _containerElement() {\n return this.querySelector(\"div[part=select-item-container]\");\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <div\n ${z(e)}\n @click=${this.handleClick}\n class=\"${g(\n this.isFocus ? \"rtg-bg-accent\" : \"\",\n xg,\n this.className\n )}\"\n data-hs-select-value=${this.value}\n aria-selected=\"${this.isSelected}\"\n data-selected=\"${this.isSelected}\"\n >\n <div part=\"select-item-container\"></div>\n <span\n class=\"${this.isSelected ? \"rtg-visible\" : \"rtg-invisible\"} hs-select-selected:rtg-block rtg-mr-2\"\n >\n ${Fn()}\n </span>\n </div>\n `;\n }\n};\nht([\n l()\n], Fe.prototype, \"value\", 2);\nht([\n l()\n], Fe.prototype, \"isSelected\", 2);\nht([\n l()\n], Fe.prototype, \"isFocus\", 2);\nht([\n l()\n], Fe.prototype, \"selectItemIndex\", 2);\nht([\n l({ type: Function })\n], Fe.prototype, \"onSelect\", 2);\nht([\n l()\n], Fe.prototype, \"class\", 2);\nFe = ht([\n p(\"rtg-select-item\")\n], Fe);\nvar Dg = Object.defineProperty, Rg = Object.getOwnPropertyDescriptor, ro = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Rg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Dg(t, o, r), r;\n};\nlet Rr = class extends h {\n constructor() {\n super(...arguments), this.state = Qs, this.isOpen = !1;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=select-list]\");\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"select-list\"\n class=\"${g(Cg, this.className)}\"\n data-hs-combo-box-output=\"\"\n data-state=\"${this.state}\"\n style=\"display: ${this.isOpen ? \"block\" : \"none\"}; top:115%\"\n ></div>\n `;\n }\n};\nro([\n l({ attribute: \"data-state\", type: String })\n], Rr.prototype, \"state\", 2);\nro([\n D()\n], Rr.prototype, \"isOpen\", 2);\nRr = ro([\n p(\"rtg-select-list\")\n], Rr);\nvar kg = Object.getOwnPropertyDescriptor, Ag = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? kg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet cn = class extends h {\n get _containerElement() {\n return this.querySelector(\"span[part=select-label]\");\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <span\n part=\"select-label\"\n class=\"${g(_g, this.className)}\"\n >\n </span>\n `;\n }\n};\ncn = Ag([\n p(\"rtg-select-label\")\n], cn);\nvar Lg = Object.defineProperty, Ig = Object.getOwnPropertyDescriptor, so = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ig(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Lg(t, o, r), r;\n};\nlet kr = class extends W {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"\";\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n class=\"${g($g, this.className)}\"\n part=\"select-separator\"\n rtgcmd-separator\n role=\"separator\"\n ></div>\n `;\n }\n};\nso([\n l({ type: String })\n], kr.prototype, \"_id\", 2);\nso([\n l({ attribute: \"aria-hidden\", type: String })\n], kr.prototype, \"_hidden\", 2);\nkr = so([\n p(\"rtg-select-separator\")\n], kr);\nvar Tg = Object.getOwnPropertyDescriptor, jg = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Tg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet dn = class extends h {\n constructor() {\n super(...arguments), this.onStoreChange = () => {\n this.requestUpdate();\n }, this.handleClick = (e) => {\n e.stopPropagation(), this._select && this._select.selectStore.toggle();\n };\n }\n get _select() {\n let e = this.parentElement;\n for (; e && !(e instanceof Pt); )\n e = e.parentElement;\n return e;\n }\n connectedCallback() {\n super.connectedCallback(), this._select.selectStore.subscribe(this.onStoreChange);\n }\n disconnectedCallback() {\n this._select.selectStore.unsubscribe(this.onStoreChange);\n }\n get _containerElement() {\n return this.querySelector(\"div[part=select-trigger-container]\");\n }\n firstUpdated(e) {\n var t;\n super.firstUpdated(e), this.moveLightDomChildrenInto(this._containerElement), (t = this._containerElement) == null || t.addEventListener(\"click\", this.handleClick);\n }\n createRenderRoot() {\n return this;\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n render() {\n return d`\n <button\n type=\"button\"\n part=\"select-trigger\"\n role=\"tab\"\n class=\"${g(Eg, this.className)}\"\n tabindex=\"-1\"\n data-orientation=\"horizontal\"\n data-radix-collection-item=\"\"\n @click=\"${this.handleClick}\"\n >\n <div part=\"select-trigger-container\"></div>\n ${Vn()}\n </button>\n `;\n }\n};\ndn = jg([\n p(\"rtg-select-trigger\")\n], dn);\nvar Mg = Object.defineProperty, Ng = Object.getOwnPropertyDescriptor, Ci = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ng(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Mg(t, o, r), r;\n};\nlet Ps = class extends h {\n constructor() {\n super(...arguments), this.focusedIndex = 0, this.childrenArray = [], this.onStoreChange = () => {\n const e = this._containerElement;\n e && (e.style.display = this._select.selectStore.isOpen ? \"block\" : \"none\"), this._select.selectStore.isOpen && this._select.selectStore.selectedValue && (this.focusedIndex = this.childrenArray.findIndex(\n (t) => t.value === this._select.selectStore.selectedValue\n )), this.updateFocusedItem(), this.requestUpdate();\n }, this.handleKeyDown = (e) => {\n if (this._select.selectStore.isOpen)\n switch (e.preventDefault(), e.key) {\n case \"ArrowDown\":\n this.focusedIndex = (this.focusedIndex + 1) % this.childrenArray.length, this.updateFocusedItem();\n break;\n case \"ArrowUp\":\n this.focusedIndex = (this.focusedIndex - 1 + this.childrenArray.length) % this.childrenArray.length, this.updateFocusedItem();\n break;\n case \"Enter\":\n const o = this.childrenArray[this.focusedIndex].value;\n this._select.selectStore.select(o);\n break;\n }\n };\n }\n get _select() {\n let e = this.parentElement;\n for (; e && !(e instanceof Pt); )\n e = e.parentElement;\n return e;\n }\n connectedCallback() {\n super.connectedCallback(), this._select.selectStore.subscribe(this.onStoreChange), document.addEventListener(\"keydown\", this.handleKeyDown);\n }\n disconnectedCallback() {\n this._select.selectStore.unsubscribe(this.onStoreChange), document.removeEventListener(\"keydown\", this.handleKeyDown), super.disconnectedCallback();\n }\n get _containerElement() {\n return this.querySelector(\"div[part=select-group]\");\n }\n firstUpdated() {\n const e = Array.from(this.children).filter(\n (t) => t.tagName.toLowerCase() === \"rtg-select-item\"\n );\n this.childrenArray = e, e.forEach((t, o) => {\n t.tabIndex = o, t.selectItemIndex = o, t.isFocus = o === this.focusedIndex || t.value === this._select.selectStore.selectedValue, t.addEventListener(\n \"mouseover\",\n (s) => this.handleMouseOver(s, o)\n );\n }), this.moveLightDomChildrenInto(this._containerElement);\n }\n updateFocusedItem() {\n this.childrenArray.forEach((e, t) => {\n var o;\n e.isFocus = t === this.focusedIndex, (o = e.requestUpdate) == null || o.call(e);\n });\n }\n handleMouseOver(e, t) {\n e.preventDefault(), this.focusedIndex = t;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"select-group\"\n class=\"${g(yg, this.className)}\"\n style=\"display: none\"\n ></div>\n `;\n }\n};\nCi([\n D()\n], Ps.prototype, \"focusedIndex\", 2);\nPs = Ci([\n p(\"rtg-select-group\")\n], Ps);\nvar Ug = Object.defineProperty, zg = Object.getOwnPropertyDescriptor, $i = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? zg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Ug(t, o, r), r;\n};\nlet Ds = class extends h {\n constructor() {\n super(...arguments), this.placeholder = \"select a value\", this.onStoreChange = () => {\n this.requestUpdate();\n }, this.renderLabel = () => this._select && this._select.selectStore.selectedValue.length > 0 ? this._select.selectStore.selectedValue : this.placeholder;\n }\n get _select() {\n let e = this.parentElement;\n for (; e && !(e instanceof Pt); )\n e = e.parentElement;\n return e;\n }\n connectedCallback() {\n super.connectedCallback(), this._select.selectStore.subscribe(this.onStoreChange), document.addEventListener(\"clicked-select-item\", () => {\n this.requestUpdate();\n });\n }\n disconnectedCallback() {\n this._select.selectStore.unsubscribe(this.onStoreChange);\n }\n firstUpdated(e) {\n super.firstUpdated(e);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <span part=\"select-value\" class=\"${g(Sg, this.className)}\"\n >${this.renderLabel()}</span\n >\n `;\n }\n};\n$i([\n l({ type: String })\n], Ds.prototype, \"placeholder\", 2);\nDs = $i([\n p(\"rtg-select-value\")\n], Ds);\nclass qg {\n constructor() {\n this.state = {\n isOpen: !1,\n selectedValue: \"\"\n }, this.listeners = /* @__PURE__ */ new Set();\n }\n subscribe(t) {\n this.listeners.add(t);\n }\n unsubscribe(t) {\n this.listeners.delete(t);\n }\n notify() {\n this.listeners.forEach((t) => t());\n }\n get isOpen() {\n return this.state.isOpen;\n }\n get selectedValue() {\n return this.state.selectedValue;\n }\n open() {\n this.state.isOpen || (this.state.isOpen = !0, this.notify());\n }\n close() {\n this.state.isOpen && (this.state.isOpen = !1, this.notify());\n }\n toggle() {\n this.state.isOpen = !this.state.isOpen, this.notify();\n }\n select(t, o) {\n this.state.selectedValue = t, this.state.isOpen = !1, this.notify();\n }\n}\nvar Bg = Object.getOwnPropertyDescriptor, Fg = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Bg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Pt = class extends h {\n constructor() {\n super(...arguments), this.uuid = qs(), this.selectStore = new qg(), this.handleClickOutside = (e) => {\n const t = this.querySelector(\"[data-select-uuid]\"), o = e.target;\n t != null && t.contains(o) || this.selectStore.close();\n };\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n disconnectedCallback() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside), super.disconnectedCallback();\n }\n firstUpdated() {\n const e = this.querySelector(\"div[part=select]\");\n this.moveLightDomChildrenInto(e);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`<div\n part=\"select\"\n class=\"${g(\"rtg-relative\", this.className)}\"\n data-select-uuid=${this.uuid}\n ></div>`;\n }\n};\nPt = Fg([\n p(\"rtg-select\")\n], Pt);\nconst Vg = he(\n \"group rtg-pointer-events-auto rtg-relative rtg-flex rtg-w-full rtg-items-center rtg-justify-between rtg-space-x-2 rtg-overflow-hidden rtg-rounded-md rtg-border rtg-p-4 rtg-pr-6 rtg-shadow-lg rtg-transition-all data-[swipe=cancel]:rtg-translate-x-0 data-[swipe=end]:rtg-translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:rtg-translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:rtg-transition-none data-[state=open]:rtg-animate-in data-[state=closed]:rtg-animate-out data-[swipe=end]:rtg-animate-out data-[state=closed]:rtg-fade-out-80 data-[state=closed]:rtg-slide-out-to-right-full data-[state=open]:rtg-slide-in-from-top-full data-[state=open]:sm:rtg-slide-in-from-bottom-full\",\n {\n variants: {\n variant: {\n default: \"rtg-border rtg-bg-background rtg-text-foreground\",\n destructive: \"rtg-destructive group rtg-border-destructive rtg-bg-destructive rtg-text-destructive-foreground\"\n }\n },\n defaultVariants: {\n variant: \"default\"\n }\n }\n), Hg = he(\n \"rtg-inline-flex rtg-h-8 rtg-shrink-0 rtg-items-center rtg-justify-center rtg-rounded-md rtg-px-3 rtg-text-sm rtg-font-medium rtg-transition-colors focus:rtg-outline-none focus:rtg-ring-1 focus:rtg-ring-ring disabled:rtg-pointer-events-none disabled:rtg-opacity-50\",\n {\n variants: {\n variant: {\n default: \"rtg-border rtg-bg-transparent hover:rtg-bg-secondary\",\n destructive: \"rtg-border group-[.destructive]:rtg-border-muted/40 group-[.destructive]:rtg-hover:border-destructive/30 group-[.destructive]:rtg-hover:bg-destructive group-[.destructive]:hover:rtg-text-destructive-foreground group-[.destructive]:focus:rtg-ring-destructive\"\n }\n },\n defaultVariants: {\n variant: \"default\"\n }\n }\n), Gg = \"rtg-fixed rtg-top-0 rtg-z-[100] rtg-flex rtg-max-h-screen rtg-w-full rtg-flex-col-reverse rtg-p-4 sm:rtg-bottom-0 sm:rtg-right-0 sm:rtg-top-auto sm:rtg-flex-col md:rtg-max-w-[420px]\", Yg = \"rtg-absolute rtg-right-1 rtg-top-1 rtg-rounded-md rtg-p-1 rtg-text-foreground/50 rtg-opacity-0 rtg-transition-opacity hover:rtg-text-foreground focus:rtg-opacity-100 focus:rtg-outline-none focus:rtg-ring-1 group-hover:rtg-opacity-100 group-[.destructive]:rtg-text-red-300 group-[.destructive]:hover:rtg-text-red-50 group-[.destructive]:focus:rtg-ring-red-400 group-[.destructive]:focus:rtg-ring-offset-red-600\", Kg = \"rtg-text-sm rtg-opacity-90\", Wg = \"rtg-text-sm rtg-font-semibold [&+div]:rtg-text-xs\";\nvar Xg = Object.defineProperty, Zg = Object.getOwnPropertyDescriptor, oo = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Zg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Xg(t, o, r), r;\n};\nconst es = \"closed\";\nlet Dt = class extends h {\n constructor() {\n super(...arguments), this.variant = \"default\", this.state = es, this.handleCloseButtonClick = (e) => {\n e.stopPropagation(), this.state = es, this.dispatchEvent(new CustomEvent(\"close-toast\", { bubbles: !0 }));\n };\n }\n get _containerElement() {\n return this.querySelector(\"li[part=toast-view-port-li]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d` <ol\n part=\"toast-view-port\"\n tabindex=\"-1\"\n @click=\"${(e) => e.stopPropagation()}\"\n class=\"${g(\n Gg,\n this.className,\n `${this.state === es ? \"hidden\" : \"block\"} `\n )}\"\n >\n <li\n part=\"toast-view-port-li\"\n role=\"status\"\n aria-live=\"off\"\n aria-atomic=\"true\"\n tabindex=\"0\"\n data-state=\"${this.state}\"\n data-swipe-direction=\"right\"\n class=\"${g(\n Dt.toastVariants({\n variant: this.variant,\n className: this.className\n }),\n this.className\n )}\"\n data-radix-collection-item=\"\"\n style=\"user-select: none; touch-action: none;\"\n >\n <button\n type=\"button\"\n class=\"${Yg}\"\n toast-close=\"\"\n data-radix-toast-announce-exclude=\"\"\n @click=\"${(e) => this.handleCloseButtonClick(e)}\"\n >\n ${Ia()}\n </button>\n </li>\n </ol>`;\n }\n};\nDt.toastVariants = Vg;\noo([\n l({ type: String })\n], Dt.prototype, \"variant\", 2);\noo([\n l({ attribute: \"data-state\", type: String })\n], Dt.prototype, \"state\", 2);\nDt = oo([\n p(\"rtg-toast-view-port\")\n], Dt);\nvar Qg = Object.defineProperty, Jg = Object.getOwnPropertyDescriptor, Ei = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Jg(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Qg(t, o, r), r;\n};\nlet Qt = class extends h {\n constructor() {\n super(...arguments), this.variant = \"default\";\n }\n get _containerElement() {\n return this.querySelector(\"button[part=toast-action]\");\n }\n getAttributesToExclude() {\n return [\"click\", \"type\", \"variant\"];\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n getFilteredAttributes() {\n const e = this.getAttributesToExclude(), t = {};\n for (const o of this.attributes)\n e.includes(o.name) || (t[o.name] = o.value);\n return t;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <button\n ${z(e)}\n part=\"toast-action\"\n type=\"button\"\n class=\"${g(\n Qt.toastVariants({\n variant: this.variant,\n className: this.className\n }),\n this.className,\n \"rtg-w-max\"\n )}\"\n ></button>\n `;\n }\n};\nQt.toastVariants = Hg;\nEi([\n l({ type: String })\n], Qt.prototype, \"variant\", 2);\nQt = Ei([\n p(\"rtg-toast-action\")\n], Qt);\nvar ep = Object.getOwnPropertyDescriptor, tp = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ep(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet un = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=toast-description]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n class=\"${g(Kg, this.className)}\"\n part=\"toast-description\"\n >\n <slot></slot>\n </div>\n `;\n }\n};\nun = tp([\n p(\"rtg-toast-description\")\n], un);\nvar rp = Object.getOwnPropertyDescriptor, sp = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? rp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet gn = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=toast-title]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"toast-title\"\n class=\"${g(Wg, this.className)}\"\n ></div>\n `;\n }\n};\ngn = sp([\n p(\"rtg-toast-title\")\n], gn);\nvar op = Object.getOwnPropertyDescriptor, np = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? op(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet pn = class extends h {\n constructor() {\n super(), this.handleClick = this.handleClick.bind(this);\n }\n get _containerElement() {\n return this.querySelector(\"div[part=toast-trigger]\");\n }\n get _toast() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ar); )\n e = e.parentElement;\n return e;\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n handleClick(e) {\n e.stopPropagation(), this.dispatchEvent(new CustomEvent(\"open-toast\", { bubbles: !0 })), this._toast.isOpen = !0;\n }\n render() {\n return d`\n <div\n @click=${this.handleClick}\n part=\"toast-trigger\"\n class=\"${g(this.className)}\"\n ></div>\n `;\n }\n};\npn = np([\n p(\"rtg-toast-trigger\")\n], pn);\nvar ip = Object.defineProperty, ap = Object.getOwnPropertyDescriptor, Si = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ap(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ip(t, o, r), r;\n};\nlet Ar = class extends h {\n constructor() {\n super(...arguments), this.isOpen = !1;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=toast]\");\n }\n onClick() {\n this.isOpen = !this.isOpen;\n }\n connectedCallback() {\n super.connectedCallback(), this.addEventListener(\"close-toast\", () => {\n this.isOpen = !1;\n }), this.addEventListener(\"open-toast\", () => {\n this.isOpen = !0;\n });\n }\n get _content() {\n return this.querySelector(\"rtg-toast-view-port\");\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.isOpen ? \"open\" : \"closed\");\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d` <div class=\"${g(\"\", this.className)}\" part=\"toast\"></div> `;\n }\n};\nSi([\n D()\n], Ar.prototype, \"isOpen\", 2);\nAr = Si([\n p(\"rtg-toast\")\n], Ar);\nconst lp = \"rtg-items-center rtg-justify-center rtg-rounded-md rtg-bg-muted rtg-p-1 rtg-text-muted-foreground\", cp = \"rtg-grid rtg-w-full rtg-h-10 rtg-grid-cols-2\", dp = \"rtg-w-60 rtg-h-full\";\nvar up = Object.defineProperty, gp = Object.getOwnPropertyDescriptor, no = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? gp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && up(t, o, r), r;\n};\nlet Jt = class extends h {\n constructor() {\n super(...arguments), this.tabindex = 0, this.orientation = \"horizontal\";\n }\n get _tab() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ve); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=tab-list]\");\n }\n getAttributesToExclude() {\n return [\"aria-orientation\", \"role\", \"data-orientation\", \"data-testid\"];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\", \"data-testid\"];\n }\n connectedCallback() {\n var e;\n super.connectedCallback(), (e = this._tab) == null || e.addEventListener(\"tab-change\", (t) => {\n this.changeTabs(t.detail.selectedValue);\n });\n }\n disconnectedCallback() {\n super.disconnectedCallback(), this._tab && this._tab.removeEventListener(\"tab-change\", () => {\n });\n }\n changeTabs(e) {\n const t = this.getChildren();\n t.length > 0 && t.forEach((o) => {\n if (o instanceof HTMLElement) {\n const s = o.querySelector(\"button\");\n s && (s != null && s.value) && (s.value.trim().toLowerCase() === e.trim().toLowerCase() ? (s.setAttribute(\"aria-selected\", \"true\"), s.setAttribute(\"data-state\", \"active\")) : (s.setAttribute(\"aria-selected\", \"false\"), s.setAttribute(\"data-state\", \"inactive\")));\n }\n });\n }\n getChildren() {\n return this.querySelectorAll(\"rtg-tab-trigger > div[part=tab-trigger]\") || [];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.observeStyleAndClassSync(this._containerElement), this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n const e = this.getFilteredAttributes(), t = this.customStyle || \"\", o = this.customClass || \"\", s = g(\n this.customClass,\n this.orientation === \"vertical\" ? dp : cp,\n lp,\n o\n );\n return dt`\n <div\n ${z(e)}\n part=\"tab-list\"\n role=\"tablist\"\n data-orientation=${this.orientation}\n data-radix-collection-item=\"\"\n data-state=\"active\"\n tabindex=${this.tabindex}\n class=${s}\n style=\"${t}\"\n ></div>\n `;\n }\n};\nno([\n l({ type: Number })\n], Jt.prototype, \"tabindex\", 2);\nno([\n l({ type: String })\n], Jt.prototype, \"orientation\", 2);\nJt = no([\n p(\"rtg-tab-list\")\n], Jt);\nvar pp = Object.defineProperty, hp = Object.getOwnPropertyDescriptor, Fr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? hp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && pp(t, o, r), r;\n};\nlet er = class extends h {\n constructor() {\n super(...arguments), this.defaultValue = \"\", this.value = \"\", this.handleClick = (e) => {\n var s;\n e.preventDefault(), this.dispatchEvent(\n new CustomEvent(\"tab-trigger-click\", {\n bubbles: !0,\n composed: !0,\n detail: { value: this.value }\n })\n );\n const t = e.target, o = (s = this.shadowRoot) == null ? void 0 : s.querySelector(\"button\");\n if (o && o.click(), t instanceof HTMLButtonElement) {\n const r = t.getAttribute(\"value\") ?? \"\";\n this.defaultValue = r, this._tab && (this._tab.defaultValue = r, this._tab.raiseEvent()), this.onClickCallback && this.onClickCallback(r);\n }\n };\n }\n get _tab() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ve); )\n e = e.parentElement;\n return e;\n }\n get _tabList() {\n let e = this.parentElement;\n for (; e && !(e instanceof Jt); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"button[part=tab-trigger-button]\");\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.observeStyleAndClassSync(this._containerElement), this.moveLightDomChildrenInto(this._containerElement), this._tab && (this.defaultValue = this._tab.defaultValue);\n }\n getAttributesToExclude() {\n return [\"value\", \"defaultValue\", \"data-testid\"];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\", \"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n get orientation() {\n var e;\n return ((e = this._tab) == null ? void 0 : e.orientation) ?? \"horizontal\";\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\", o = this.getFilteredAttributes();\n return dt`\n <div\n part=\"tab-trigger\"\n role=\"tablist\"\n aria-orientation=${this.orientation}\n data-orientation=${this.orientation}\n tabindex=\"0\"\n class=${t}\n style=\"${e}\"\n >\n <button\n ${z(o)}\n type=\"button\"\n role=\"tab\"\n part=\"tab-trigger-button\"\n value=${this.value}\n aria-selected=${this.defaultValue === this.value ? \"true\" : \"false\"}\n aria-controls=${this.value}\n data-state=${this.defaultValue === this.value ? \"active\" : \"inactive\"}\n class=${g(\n \"rtg-w-full rtg-items-center rtg-justify-center rtg-whitespace-nowrap rtg-rounded-sm rtg-px-3 rtg-py-1.5 rtg-text-sm rtg-font-medium rtg-ring-offset-background rtg-transition-all focus-visible:rtg-outline-none focus-visible:rtg-ring-2 focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 disabled:rtg-pointer-events-none disabled:rtg-opacity-50 data-[state=active]:rtg-bg-background data-[state=active]:rtg-text-foreground data-[state=active]:rtg-shadow-sm\",\n t\n )}\n style=\"${e}\"\n tabindex=\"-1\"\n data-orientation=${this.orientation}\n data-radix-collection-item=\"\"\n @click=${this.handleClick}\n ></button>\n </div>\n `;\n }\n};\nFr([\n l({ type: String })\n], er.prototype, \"defaultValue\", 2);\nFr([\n l({ type: String })\n], er.prototype, \"value\", 2);\nFr([\n l({ type: Function })\n], er.prototype, \"onClickCallback\", 2);\ner = Fr([\n p(\"rtg-tab-trigger\")\n], er);\nvar vp = Object.defineProperty, fp = Object.getOwnPropertyDescriptor, io = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? fp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && vp(t, o, r), r;\n};\nlet Lr = class extends h {\n constructor() {\n super(...arguments), this.value = \"\", this.selectedValue = \"\";\n }\n get _tab() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ve); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=tab-content]\");\n }\n updated(e) {\n super.updated(e);\n }\n connectedCallback() {\n var e;\n super.connectedCallback(), (e = this._tab) == null || e.addEventListener(\"tab-change\", (t) => {\n this.selectedValue = t.detail.selectedValue, this.requestUpdate();\n });\n }\n disconnectedCallback() {\n super.disconnectedCallback(), this._tab && this._tab.removeEventListener(\"tab-change\", () => {\n });\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.observeStyleAndClassSync(this._containerElement), this.moveLightDomChildrenInto(this._containerElement);\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\", \"data-testid\"];\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\", o = this._tab && this._tab.defaultValue.toLocaleLowerCase() === this.value.toLocaleLowerCase(), s = g(\n o ? \"rtg-block\" : \"rtg-hidden\",\n this.customClass,\n t\n );\n return dt`\n <div\n class=${s}\n style=\"${e}\"\n part=\"tab-content\"\n ></div>\n `;\n }\n};\nio([\n l({ type: String })\n], Lr.prototype, \"value\", 2);\nio([\n D()\n], Lr.prototype, \"selectedValue\", 2);\nLr = io([\n p(\"rtg-tab-content\")\n], Lr);\nvar mp = Object.defineProperty, bp = Object.getOwnPropertyDescriptor, Vr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? bp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && mp(t, o, r), r;\n};\nlet Ve = class extends h {\n constructor() {\n super(...arguments), this.defaultValue = \"\", this.tabindex = 0, this.orientation = \"horizontal\";\n }\n get _containerElement() {\n return this.querySelector(\"div[part=tab]\");\n }\n connectedCallback() {\n super.connectedCallback();\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n }\n updated(e) {\n super.updated(e), this.raiseEvent();\n }\n getAttributesToExclude() {\n return [\"aria-orientation\", \"role\", \"data-orientation\", \"data-testid\"];\n }\n getAttributesToRemoveFromParent() {\n return [\"class\", \"style\", \"data-testid\"];\n }\n raiseEvent() {\n const e = new CustomEvent(\"tab-change\", {\n bubbles: !0,\n composed: !0,\n detail: {\n selectedValue: this.defaultValue\n }\n });\n this.dispatchEvent(e);\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.observeStyleAndClassSync(this._containerElement), this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n const e = this.customStyle || \"\", t = this.customClass || \"\", o = this.getFilteredAttributes(), s = g(\n this.orientation === \"vertical\" ? \"rtg-flex rtg-flex-row\" : \"rtg-flex rtg-flex-col\",\n t\n );\n return dt`\n <div\n ${z(o)}\n part=\"tab\"\n role=\"tab\"\n aria-orientation=${this.orientation}\n data-orientation=${this.orientation}\n class=\"${s}\"\n style=\"${e}\"\n tabindex=${this.tabindex}\n ></div>\n `;\n }\n};\nVr([\n l({ type: String })\n], Ve.prototype, \"defaultValue\", 2);\nVr([\n l({ type: Number })\n], Ve.prototype, \"tabindex\", 2);\nVr([\n l({ type: String })\n], Ve.prototype, \"orientation\", 2);\nVe = Vr([\n p(\"rtg-tab\")\n], Ve);\nvar Oi = /* @__PURE__ */ ((e) => (e.SMALL = \"sm\", e.MEDIUM = \"md\", e.LARGE = \"lg\", e))(Oi || {}), Pi = /* @__PURE__ */ ((e) => (e.DEFAULT = \"default\", e.OUTLINE = \"outline\", e))(Pi || {});\nconst wp = he(\n \"rtg-inline-flex rtg-items-center rtg-justify-center rtg-rounded-md rtg-text-sm rtg-font-medium rtg-ring-offset-background rtg-transition-colors focus-visible:rtg-outline-none focus-visible:rtg-ring-2 focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 disabled:rtg-pointer-events-none disabled:rtg-opacity-50 data-[state=on]:rtg-bg-accent data-[state=on]:rtg-text-accent-foreground rtg-bg-transparent rtg-h-10 rtg-px-3\",\n {\n variants: {\n variant: {\n default: \"hover:rtg-bg-muted hover:rtg-text-muted-foreground\",\n outline: \"rtg-border rtg-border-input hover:rtg-bg-accent hover:rtg-text-accent-foreground\"\n },\n size: {\n sm: \"rtg-h-9 rtg-px-2.5\",\n md: \"rtg-h-10 rtg-px-3\",\n lg: \"rtg-h-11 rtg-px-5\"\n }\n },\n defaultVariants: {\n variant: \"default\",\n size: \"sm\"\n }\n }\n);\nvar yp = Object.defineProperty, xp = Object.getOwnPropertyDescriptor, zt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? xp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && yp(t, o, r), r;\n};\nlet De = class extends h {\n constructor() {\n super(...arguments), this.disabled = !1, this.checked = !1, this.required = !1, this.variant = Pi.DEFAULT, this.size = Oi.SMALL;\n }\n get _containerElement() {\n return this.querySelector(\"button[part=toggle]\");\n }\n getAttributesToExclude() {\n return [\n \"disabled\",\n \"checked\",\n \"variant\",\n \"size\",\n \"required\",\n \"data-testid\"\n ];\n }\n toggle() {\n this.disabled || (this.checked = !this.checked);\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n const e = this.getFilteredAttributes();\n return dt`\n <button\n type=\"button\"\n part=\"toggle\"\n class=\"${g(\n De.toggleVariants({\n variant: this.variant,\n size: this.size,\n className: this.className\n })\n )}\"\n aria-pressed=${this.checked}\n data-state=\"${this.checked ? \"on\" : \"off\"}\"\n aria-label=\"Toggle bold\"\n @click=${this.toggle}\n ?required=${this.required}\n ?disabled=${this.disabled}\n ${z(e)}\n >\n <slot></slot>\n </button>\n `;\n }\n};\nDe.toggleVariants = wp;\nzt([\n l({ type: Boolean })\n], De.prototype, \"disabled\", 2);\nzt([\n l({ attribute: !0, type: Boolean, reflect: !0 })\n], De.prototype, \"checked\", 2);\nzt([\n l({ attribute: !0, type: Boolean, reflect: !0 })\n], De.prototype, \"required\", 2);\nzt([\n l({ attribute: !0, type: String })\n], De.prototype, \"variant\", 2);\nzt([\n l({ attribute: !0, type: String })\n], De.prototype, \"size\", 2);\nDe = zt([\n p(\"rtg-toggle\")\n], De);\nvar Ir = /* @__PURE__ */ ((e) => (e.MULTIPLE = \"multiple\", e.SINGLE = \"single\", e))(Ir || {}), ao = /* @__PURE__ */ ((e) => (e.DEFAULT = \"default\", e.OUTLINE = \"outline\", e))(ao || {}), lo = /* @__PURE__ */ ((e) => (e.SMALL = \"sm\", e.MEDIUM = \"md\", e.LARGE = \"lg\", e))(lo || {});\nconst _p = he(\n \"rtg-inline-flex rtg-items-center rtg-justify-center rtg-rounded-md rtg-text-sm rtg-font-medium rtg-ring-offset-background rtg-transition-colors focus-visible:rtg-outline-none focus-visible:rtg-ring-2 focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 disabled:rtg-pointer-events-none disabled:rtg-opacity-50 data-[state=on]:rtg-bg-accent data-[state=on]:rtg-text-accent-foreground rtg-bg-transparent rtg-h-10 rtg-px-3\",\n {\n variants: {\n variant: {\n default: \" hover:rtg-bg-muted hover:rtg-text-muted-foreground\",\n outline: \" rtg-border rtg-border-input hover:rtg-bg-accent hover:rtg-text-accent-foreground\"\n },\n size: {\n sm: \"rtg-h-9 rtg-px-2.5\",\n md: \"rtg-h-10 rtg-px-3\",\n lg: \"rtg-h-11 rtg-px-5\"\n }\n },\n defaultVariants: {\n variant: \"default\",\n size: \"sm\"\n }\n }\n), Cp = \"rtg-flex rtg-items-center rtg-justify-center rtg-gap-1\";\nvar $p = Object.defineProperty, Ep = Object.getOwnPropertyDescriptor, vt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ep(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && $p(t, o, r), r;\n};\nlet Ee = class extends h {\n constructor() {\n super(...arguments), this.checked = !1, this.id = qs(), this.variant = ao.DEFAULT, this.size = lo.SMALL, this.disabled = !1, this.type = Ir.SINGLE;\n }\n get _parent() {\n let e = this.parentElement;\n for (; e && !(e instanceof Re); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"button[part=toggle-group-item]\");\n }\n get _siblings() {\n var t;\n return Array.from(((t = this.parentElement) == null ? void 0 : t.children) || []).filter(\n (o) => o !== this\n );\n }\n getAttributesToExclude() {\n return [\"disabled\", \"type\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.variant = this._parent.variant, this.size = this._parent.size, this.checked = this._parent.selectedItems.includes(this.id), this.type = this._parent.type, this.moveLightDomChildrenInto(this._containerElement);\n }\n updated(e) {\n this.variant = this._parent.variant, this.size = this._parent.size, this.checked = this._parent.selectedItems.includes(this.id), this.type = this._parent.type;\n }\n toggleSelection(e) {\n try {\n if (this.disabled === !1) {\n const t = this._parent.selectedItems.indexOf(e);\n this.type === Ir.SINGLE ? (t !== -1 ? this._parent.selectedItems.splice(t, 1) : this._parent.selectedItems[0] = e, this._siblings.forEach(\n (o) => o.requestUpdate()\n )) : t !== -1 ? this._parent.selectedItems.splice(t, 1) : this._parent.selectedItems.push(e), this.requestUpdate();\n }\n } catch (t) {\n console.log(\"error\", t);\n }\n }\n render() {\n return dt`\n <button\n part=\"toggle-group-item\"\n id=${this.id}\n type=\"button\"\n class=\"${g(\n Ee.toggleGroupVariants({\n variant: this.variant,\n size: this.size,\n className: this.className\n })\n )}\"\n aria-label=\"Toggle bold\"\n aria-pressed=${this.checked}\n data-state=\"${this.checked ? \"on\" : \"off\"}\"\n ?disabled=${this.disabled}\n @click=${() => {\n this.toggleSelection(this.id);\n }}\n ></button>\n `;\n }\n};\nEe.toggleGroupVariants = _p;\nvt([\n l({ attribute: !0, type: Boolean, reflect: !0 })\n], Ee.prototype, \"checked\", 2);\nvt([\n l({ attribute: !0, type: String, reflect: !0 })\n], Ee.prototype, \"id\", 2);\nvt([\n l({ attribute: !0, type: String })\n], Ee.prototype, \"variant\", 2);\nvt([\n l({ attribute: !0, type: String })\n], Ee.prototype, \"size\", 2);\nvt([\n l({ type: Boolean })\n], Ee.prototype, \"disabled\", 2);\nvt([\n l({ type: String })\n], Ee.prototype, \"type\", 2);\nEe = vt([\n p(\"rtg-toggle-group-item\")\n], Ee);\nvar Sp = Object.defineProperty, Op = Object.getOwnPropertyDescriptor, ft = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Op(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Sp(t, o, r), r;\n};\nlet Re = class extends h {\n constructor() {\n super(...arguments), this.disabled = !1, this.type = Ir.SINGLE, this.required = !1, this.variant = ao.DEFAULT, this.size = lo.SMALL, this.selectedItems = [];\n }\n get _containerElement() {\n return this.querySelector(\"div[part=toggle-group]\");\n }\n getAttributesToExclude() {\n return [\"disabled\", \"type\", \"data-testid\"];\n }\n connectedCallback() {\n super.connectedCallback();\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.moveLightDomChildrenInto(this._containerElement);\n }\n updated(e) {\n (e.has(\"variant\") || e.has(\"size\") || e.has(\"disabled\") || e.has(\"type\")) && this.querySelectorAll(\"rtg-toggle-group-item\").forEach((t) => {\n t.variant = this.variant, t.size = this.size, t.disabled = this.disabled, t.type = this.type;\n });\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return dt`\n <div\n part=\"toggle-group\"\n role=\"group\"\n ${z(e)}\n class=\"${g(Cp, this.className)}\"\n ?disable=\"${this.disabled}\"\n ></div>\n `;\n }\n};\nft([\n l({ type: Boolean })\n], Re.prototype, \"disabled\", 2);\nft([\n l({ type: String })\n], Re.prototype, \"type\", 2);\nft([\n l({ attribute: !0, type: Boolean, reflect: !0 })\n], Re.prototype, \"required\", 2);\nft([\n l({ attribute: !0, type: String, reflect: !0 })\n], Re.prototype, \"variant\", 2);\nft([\n l({ attribute: !0, type: String })\n], Re.prototype, \"size\", 2);\nft([\n l({ type: Array })\n], Re.prototype, \"selectedItems\", 2);\nRe = ft([\n p(\"rtg-toggle-group\")\n], Re);\nvar Pp = Object.defineProperty, Dp = Object.getOwnPropertyDescriptor, qt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Dp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Pp(t, o, r), r;\n};\nlet it = class extends h {\n constructor() {\n super(...arguments), this.click = () => {\n }, this.index = 0, this.isFirst = !1, this.isLast = !1, this.value = \"\";\n }\n get _inputOtp() {\n let e = this.parentElement;\n for (; e && !(e instanceof at); )\n e = e.parentElement;\n return e;\n }\n firstUpdated(e) {\n const t = this._inputOtp;\n if (!t) return;\n const o = t.variant, s = this.index, r = t.maxLength;\n let n = !1;\n o === \"with_separator\" ? n = s % 2 === 1 || s === r - 1 : o === \"simple\" ? n = s % 3 === 2 || s === r - 1 : n = s === r - 1, this.isLast = n, t.inputes.push({\n index: t.inputes.length,\n value: \"\",\n isSelected: !1,\n userIndex: s\n }), t.addEventListener(\"focus\", (i) => {\n const v = this.querySelector(\n `input[name=\"input-${i.detail.selectedItems}\"]`\n );\n v && (v.focus(), i.detail.eventType === \"changes\" && (v.value = \"\"));\n });\n }\n disconnectedCallback() {\n super.disconnectedCallback(), this._inputOtp && this._inputOtp.removeEventListener(\"focus\", () => {\n });\n }\n getAttributesToExclude() {\n return [];\n }\n handleFocus(e) {\n const t = this._inputOtp;\n if (!t) return;\n const o = t.inputes.findIndex(\n (r) => r.value === \"\"\n ), s = this.index;\n if (o !== -1 && s > o) {\n e.preventDefault(), e.stopImmediatePropagation();\n const r = o;\n t.raiseEvent(r, \"focus\");\n } else\n t.raiseEvent(s, \"focus\");\n }\n handleInputChange(e) {\n var s;\n const t = e.target;\n if (new RegExp(/^\\d+$/).test(t.value)) {\n const r = this._inputOtp;\n if (r) {\n let n = r.inputes.findIndex(\n (i) => i.index === this.index\n );\n r.inputes[n] = {\n ...r.inputes[n],\n value: t.value,\n isSelected: !1\n }, (s = r.checkIfCompleteAndSubmit) == null || s.call(r), n + 1 < r.inputes.length && r.raiseEvent(n + 1, \"changes\");\n }\n } else\n t.value = \"\";\n }\n handleKeyDown(e) {\n const t = e.target, o = this._inputOtp;\n if (!o) return;\n const s = o.inputes.findIndex(\n (r) => r.index === this.index\n );\n switch (e.key) {\n case \"Backspace\": {\n e.preventDefault();\n const r = t.value === \"\", n = o.inputes.find((b) => b.value === \"\"), i = n !== void 0 ? o.inputes.indexOf(n) : o.inputes.length;\n if (r && s >= i) {\n s > 0 && o.raiseEvent(s - 1, \"focus\");\n return;\n }\n o.inputes[s].value = \"\", t.value = \"\";\n for (let b = s; b < o.inputes.length - 1; b++) {\n o.inputes[b].value = o.inputes[b + 1].value;\n const x = o.querySelector(\n `input[name=\"input-${o.inputes[b].index}\"]`\n );\n x && (x.value = o.inputes[b].value);\n }\n const v = o.inputes[o.inputes.length - 1];\n v.value = \"\";\n const y = o.querySelector(\n `input[name=\"input-${v.index}\"]`\n );\n y && (y.value = \"\"), o.raiseEvent(s, \"focus\");\n break;\n }\n case \"ArrowLeft\":\n e.preventDefault(), s > 0 && o.raiseEvent(s - 1, \"focus\");\n break;\n case \"ArrowRight\":\n e.preventDefault(), s < o.maxLength - 1 && o.raiseEvent(s + 1, \"focus\");\n break;\n }\n }\n handlePaste(e) {\n var v, y;\n e.preventDefault();\n const t = this._inputOtp;\n if (!t) return;\n const s = (((v = e.clipboardData) == null ? void 0 : v.getData(\"text\")) ?? \"\").replace(/\\D/g, \"\").split(\"\").slice(0);\n if (s.length === 0) return;\n const r = t.inputes.findIndex(\n (b) => b.index === this.index\n ), n = t.maxLength - r;\n s.splice(n);\n for (let b = 0; b < s.length; b++) {\n const x = r + b;\n if (x >= t.maxLength) break;\n t.inputes[x].value = s[b];\n const k = t.querySelector(\n `input[name=\"input-${x}\"]`\n );\n k && (k.value = s[b]);\n }\n (y = t.checkIfCompleteAndSubmit) == null || y.call(t);\n const i = r + s.length;\n i < t.maxLength && t.raiseEvent(i, \"focus\");\n }\n createRenderRoot() {\n return this;\n }\n render() {\n var i;\n const e = ((i = this._inputOtp) == null ? void 0 : i.variant) ?? \"digits_only\", t = this.isFirst, o = this.isLast, s = e === \"with_spacing\", r = e === \"with_separator\", n = {\n \"rtg-bg-transparent\": !0,\n \"rtg-h-[36px]\": !0,\n \"rtg-w-[36px]\": !0,\n \"rtg-text-center rtg-relative rtg-flex rtg-h-10 rtg-w-10 rtg-items-center rtg-justify-center rtg-border-y rtg-border-r rtg-border-input rtg-text-sm rtg-transition-all\": !0,\n \"first:rtg-rounded-l-md first:rtg-border-l\": this.isFirst,\n \"rtg-overflow-hidden\": !0,\n \"focus:rtg-border focus:rtg-border-input focus:rtg-border-[3px]\": !0,\n \"rtg-border\": s || r,\n \"rtg-border-t\": !s || r,\n \"rtg-border-b\": !s || r,\n \"rtg-border-r\": !s || r,\n \"rtg-border-l\": this.isFirst || s || r,\n \"first:rtg-rounded-l-md\": e === \"with_spacing\" ? !0 : t,\n \"last:rtg-rounded-r-md\": e === \"with_spacing\" ? !0 : o,\n \"rtg-rounded-none\": !t && !o && (e === \"digits_only\" || e === \"simple\" || e === \"with_separator\")\n };\n return d`\n <input\n part=\"input-otp-slot\"\n auto-complete=\"one-time-code\"\n pattern=\"[0-9]+\"\n data-input-otp=\"true\"\n name=\"input-${this.index}\"\n inputmode=\"numeric\"\n maxlength=\"1\"\n .value=${this.value}\n @focus=${this.handleFocus}\n @input=${this.handleInputChange}\n @keydown=${this.handleKeyDown}\n @paste=${this.handlePaste}\n style=\"outline: none\"\n class=${Object.entries(n).map(([v, y]) => y ? v : void 0).join(\" \")}\n />\n `;\n }\n};\nqt([\n l({ type: Function })\n], it.prototype, \"click\", 2);\nqt([\n l({ type: Number })\n], it.prototype, \"index\", 2);\nqt([\n l({ type: Boolean })\n], it.prototype, \"isFirst\", 2);\nqt([\n l({ type: Boolean })\n], it.prototype, \"isLast\", 2);\nqt([\n l({ type: String })\n], it.prototype, \"value\", 2);\nit = qt([\n p(\"rtg-input-otp-slot\")\n], it);\nvar Rp = Object.defineProperty, kp = Object.getOwnPropertyDescriptor, Di = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? kp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Rp(t, o, r), r;\n};\nlet Rs = class extends h {\n constructor() {\n super(...arguments), this.click = () => {\n }, this.childrenArray = [];\n }\n get _containerElement() {\n return this.querySelector(\"div[part=input-otp-group\");\n }\n getAttributesToExclude() {\n return [];\n }\n firstUpdated(e) {\n super.firstUpdated(e), this.childrenArray = Array.from(this.children), this.childrenArray.forEach((t, o) => {\n t.isFirst = o === 0, t.isLast = o === this.childrenArray.length - 1;\n }), this.moveLightDomChildrenInto(this._containerElement), this.requestUpdate();\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n part=\"input-otp-group\"\n class=\"${g(\"rtg-flex\", this.className)}\"\n ></div>\n `;\n }\n};\nDi([\n l({ type: Function })\n], Rs.prototype, \"click\", 2);\nRs = Di([\n p(\"rtg-input-otp-group\")\n], Rs);\nvar Ap = Object.defineProperty, Lp = Object.getOwnPropertyDescriptor, Ri = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Lp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Ap(t, o, r), r;\n};\nlet ks = class extends W {\n constructor() {\n super(...arguments), this.index = 0;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div\n role=\"separator\"\n class=\"${g(\"rtg-flex rtg-items-center rtg-px-2\", this.className)}\"\n >\n ${Ma()}\n </div>\n `;\n }\n};\nRi([\n l({ type: Number })\n], ks.prototype, \"index\", 2);\nks = Ri([\n p(\"rtg-input-otp-separator\")\n], ks);\nvar Ip = Object.defineProperty, Tp = Object.getOwnPropertyDescriptor, lr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Tp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Ip(t, o, r), r;\n};\nlet at = class extends h {\n constructor() {\n super(), this.maxLength = 6, this.onChange = () => {\n }, this.pin = new Array(this.maxLength), this.variant = \"digits_only\", this.inputes = [];\n }\n connectedCallback() {\n super.connectedCallback();\n }\n getAttributesToExclude() {\n return [];\n }\n get _containerElement() {\n return this.querySelector(\"div[part=input-otp]\");\n }\n raiseEvent(e, t = \"changes\", o = 1 / 0) {\n const s = new CustomEvent(\"focus\", {\n bubbles: !0,\n composed: !0,\n detail: {\n selectedItems: e,\n eventType: t,\n customIndex: o\n }\n });\n this.dispatchEvent(s);\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement), this.applyVariantStyles();\n }\n updated(e) {\n e.has(\"variant\") && this.applyVariantStyles();\n }\n checkIfCompleteAndSubmit() {\n if (this.inputes.every((t) => t.value !== \"\")) {\n const t = this.inputes.map((s) => s.value).join(\"\"), o = new CustomEvent(\"otp-complete\", {\n detail: { value: t },\n bubbles: !0,\n composed: !0\n });\n this.dispatchEvent(o);\n }\n }\n applyVariantStyles() {\n const e = this.querySelectorAll(\"rtg-input-otp-group\");\n switch (e.forEach((t) => {\n t.className = \"\", t.classList.add(\"rtg-flex\", \"rtg-items-center\");\n }), this.variant) {\n case \"with_spacing\":\n e.forEach((t) => t.classList.add(\"rtg-gap-2\"));\n break;\n }\n }\n render() {\n return d`\n <div\n part=\"input-otp\"\n class=\"${g(\"rtg-flex rtg-items-center\", this.className)}\"\n ></div>\n `;\n }\n};\nlr([\n l()\n], at.prototype, \"maxLength\", 2);\nlr([\n l()\n], at.prototype, \"onChange\", 2);\nlr([\n l()\n], at.prototype, \"pin\", 2);\nlr([\n l()\n], at.prototype, \"variant\", 2);\nat = lr([\n p(\"rtg-input-otp\")\n], at);\nconst jp = \"rtg-inline-flex rtg-items-center rtg-gap-1.5\", Mp = \"rtg-transition-colors hover:rtg-text-foreground\", Np = \"rtg-font-normal rtg-text-foreground\", Up = \"[&>svg]:rtg-size-3.5\", zp = \"rtg-flex rtg-h-9 rtg-w-9 rtg-items-center rtg-justify-center\", qp = \"rtg-flex rtg-flex-wrap rtg-items-center rtg-gap-1.5 rtg-break-words rtg-text-sm rtg-text-muted-foreground sm:rtg-gap-2.5\";\nvar Bp = Object.getOwnPropertyDescriptor, Fp = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Bp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet hn = class extends h {\n getAttributesToExclude() {\n return [\"\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <span\n ${z(e)}\n id=\"rtg-bread-crumb-ellipsis\"\n role=\"presentation\"\n aria-hidden=\"true\"\n class=\"${g(zp, this.className)}\"\n part=\"breadcrumb-ellipsis\"\n >\n <svg\n fill=\"#000000\"\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 256 256\"\n id=\"Flat\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M156,128a28,28,0,1,1-28-28A28.02769,28.02769,0,0,1,156,128ZM48,100a28,28,0,1,0,28,28A28.02769,28.02769,0,0,0,48,100Zm160,0a28,28,0,1,0,28,28A28.02769,28.02769,0,0,0,208,100Z\"\n />\n </svg>\n </span>\n `;\n }\n};\nhn = Fp([\n p(\"rtg-bread-crumb-ellipsis\")\n], hn);\nvar Vp = Object.getOwnPropertyDescriptor, Hp = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Vp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet vn = class extends h {\n get _containerElement() {\n return this.querySelector(\"li[part=breadcrumb-item]\");\n }\n getAttributesToExclude() {\n return [\"variant\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <li\n ${z(e)}\n id=\"rtg-bread-crumb-item\"\n class=\"${g(jp, this.className)}\"\n part=\"breadcrumb-item\"\n ></li>\n `;\n }\n};\nvn = Hp([\n p(\"rtg-bread-crumb-item\")\n], vn);\nvar Gp = Object.defineProperty, Yp = Object.getOwnPropertyDescriptor, ki = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Yp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Gp(t, o, r), r;\n};\nlet As = class extends h {\n constructor() {\n super(...arguments), this.href = \"/\";\n }\n get _containerElement() {\n return this.querySelector(\"a[part=breadcrumb-link]\");\n }\n getAttributesToExclude() {\n return [\"\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <a\n ${z(e)}\n id=\"rtg-bread-crumb-link\"\n class=\"${g(Mp, this.className)}\"\n href=\"${this.href}\"\n part=\"breadcrumb-link\"\n >\n </a>\n `;\n }\n};\nki([\n l({ type: String })\n], As.prototype, \"href\", 2);\nAs = ki([\n p(\"rtg-bread-crumb-link\")\n], As);\nvar Kp = Object.getOwnPropertyDescriptor, Wp = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Kp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet fn = class extends h {\n get _containerElement() {\n return this.querySelector(\"ol[part=breadcrumb-list]\");\n }\n getAttributesToExclude() {\n return [\"variant\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <ol\n ${z(e)}\n id=\"rtg-bread-crumb-list\"\n class=\"${g(qp, this.className)}\"\n part=\"breadcrumb-list\"\n ></ol>\n `;\n }\n};\nfn = Wp([\n p(\"rtg-bread-crumb-list\")\n], fn);\nvar Xp = Object.getOwnPropertyDescriptor, Zp = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Xp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet mn = class extends h {\n getAttributesToExclude() {\n return [\"\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <li\n ${z(e)}\n id=\"rtg-bread-crumb-separator\"\n role=\"presentation\"\n aria-hidden=\"true\"\n class=\"${g(Up, this.className)}\"\n part=\"breadcrumb-separator\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-slash\"\n >\n <path d=\"M22 2 2 22\"></path>\n </svg>\n </li>\n `;\n }\n};\nmn = Zp([\n p(\"rtg-bread-crumb-separator\")\n], mn);\nvar Qp = Object.getOwnPropertyDescriptor, Jp = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Qp(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet bn = class extends h {\n get _containerElement() {\n return this.querySelector(\"span[part=breadcrumb-text]\");\n }\n getAttributesToExclude() {\n return [\"\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <span\n ${z(e)}\n id=\"rtg-bread-crumb-text\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n class=\"${g(Np, this.className)}\"\n part=\"breadcrumb-text\"\n >\n </span>\n `;\n }\n};\nbn = Jp([\n p(\"rtg-bread-crumb-text\")\n], bn);\nvar eh = Object.getOwnPropertyDescriptor, th = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? eh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet wn = class extends h {\n get _containerElement() {\n return this.querySelector(\"nav[part=breadcrumb]\");\n }\n getAttributesToExclude() {\n return [\"\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n const e = this.getFilteredAttributes();\n return d`\n <nav\n ${z(e)}\n part=\"breadcrumb\"\n class=\"${g(this.className)}\"\n aria-label=\"breadcrumb\"\n ></nav>\n `;\n }\n};\nwn = th([\n p(\"rtg-bread-crumb\")\n], wn);\nvar rh = Object.getOwnPropertyDescriptor, sh = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? rh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet yn = class extends h {\n get _containerElement() {\n return this.querySelector(\"ul[part=navigation-menu-list]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div class=\"${g(\"relative\", this.className)}\">\n <ul\n part=\"navigation-menu-list\"\n data-orientation=\"horizontal\"\n class=\"rtg-flex rtg-flex-1 rtg-list-none rtg-items-center rtg-justify-center rtg-space-x-1 group\"\n dir=\"ltr\"\n ></ul>\n <div></div>\n </div>\n `;\n }\n};\nyn = sh([\n p(\"rtg-navigation-menu-list\")\n], yn);\nvar oh = Object.defineProperty, nh = Object.getOwnPropertyDescriptor, Bt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? nh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && oh(t, o, r), r;\n};\nlet He = class extends h {\n constructor() {\n super(...arguments), this.value = \"\", this.navigationLink = !0, this.isOpen = !1, this.uniqueIds = [], this.isHovering = !1, this.handleClickOutside = (e) => {\n const t = e.target;\n this.contains(t) || (this.isOpen = !1);\n };\n }\n raiseEvent() {\n const e = new CustomEvent(\"unique-ids-generated\", {\n detail: { ids: this.uniqueIds },\n bubbles: !0,\n composed: !0\n });\n this.dispatchEvent(e);\n }\n firstUpdated() {\n this.moveLightDomChildrenInto(\n this.querySelector(\"div[part=content-slot]\"),\n [this._content]\n ), this.moveLightDomChildrenInto(\n this.querySelector(\"div[part=button-slot]\"),\n [this._button]\n );\n }\n closeAllMenus() {\n document.querySelectorAll(\n \"rtg-navigation-menu-item\"\n ).forEach((t) => {\n t.isOpen = !1, t.isHovering = !1;\n });\n }\n toggleMenubar(e) {\n e.stopPropagation(), document.querySelectorAll(\n \"rtg-navigation-menu-item\"\n ).forEach((o) => {\n o !== this && (o.isOpen = !1);\n }), this.isOpen = !this.isOpen;\n }\n get _content() {\n return this.querySelector(\"rtg-navigation-menu-content\");\n }\n get _button() {\n return this.querySelector(\"rtg-navigation-menu-trigger\");\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.isOpen ? \"open\" : \"close\");\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\"click\", this.handleClickOutside);\n }\n disconnectedCallback() {\n document.removeEventListener(\"click\", this.handleClickOutside), super.disconnectedCallback();\n }\n handleHover() {\n this.closeAllMenus(), this.isHovering || (this.isHovering = !0, this.isOpen = !0);\n }\n handleMouseLeave() {\n this.isHovering = !1, this.isOpen = !1;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <li\n @mouseenter=\"${this.handleHover}\"\n @mouseleave=\"${this.handleMouseLeave}\"\n part=\"navigation-menu-item\"\n class=\"${g(\"rtg-relative\", this.className)}\"\n >\n <div\n class=\"rtg-flex rtg-cursor-pointer rtg-items-center rtg-rounded-md rtg-bg-background rtg-px-4 hover:!rtg-bg-accent focus:rtg-shadow-md\"\n @click=\"${this.toggleMenubar}\"\n >\n <div part=\"button-slot\"></div>\n ${this.navigationLink ? d`<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"lucide lucide-chevron-down ${this.isOpen ? \"rtg-rotate-180\" : \"\"} rtg-relative rtg-ml-1 rtg-h-3 rtg-w-3 rtg-transition-transform rtg-duration-300\"\n aria-hidden=\"true\"\n >\n <path d=\"m6 9 6 6 6-6\"></path>\n </svg>` : Z}\n </div>\n <div part=\"content-slot\" style=\"position:absolute\"></div>\n </li>\n `;\n }\n};\nBt([\n l({ type: String })\n], He.prototype, \"value\", 2);\nBt([\n l({ type: Boolean })\n], He.prototype, \"navigationLink\", 2);\nBt([\n D()\n], He.prototype, \"isOpen\", 2);\nBt([\n D()\n], He.prototype, \"uniqueIds\", 2);\nBt([\n D()\n], He.prototype, \"isHovering\", 2);\nHe = Bt([\n p(\"rtg-navigation-menu-item\")\n], He);\nconst ih = \"rtg-absolute rtg-top-full rtg-flex rtg-justify-center\", ah = \"rtg-flex rtg-h-full hover:rtg-bg-accent rtg-rounded-md rtg-p-6 rtg-w-full rtg-select-none rtg-flex-col rtg-justify-end rtg-no-underline rtg-outline-none\", lh = \"rtg-relative rtg-z-10 rtg-flex rtg-max-w-max rtg-flex-1 rtg-items-center rtg-justify-center\";\nvar ch = Object.defineProperty, dh = Object.getOwnPropertyDescriptor, cr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? dh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ch(t, o, r), r;\n};\nlet Rt = class extends h {\n constructor() {\n super(...arguments), this.state = \"close\", this.id = \"\", this.side = \"bottom\", this.isOpen = !0;\n }\n get _menubarMenu() {\n let e = this.parentElement;\n for (; e && !(e instanceof He); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=navigation-menu-content-container]\");\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n connectedCallback() {\n super.connectedCallback(), this.isOpen && document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n disconnectedCallback() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside), super.disconnectedCallback();\n }\n updated(e) {\n super.updated(e), this.state === \"open\" ? this.isOpen = !0 : this.isOpen = !1, e.has(\"isOpen\") && (this.isOpen ? document.addEventListener(\"mousedown\", this.handleClickOutside) : document.removeEventListener(\"mousedown\", this.handleClickOutside));\n }\n handleClickOutside(e) {\n const t = this.querySelector(\"button\");\n this && !this.contains(e.target) && !(t != null && t.contains(e.target)) && (this.isOpen = !1);\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n requestAnimationFrame(() => {\n this.moveLightDomChildrenInto(this._containerElement);\n });\n }\n render() {\n return d`\n <div\n class=\"${g(ih, this.className)}\"\n style=\"display: ${this.isOpen ? \"block\" : \"none\"};top:0px;left:0px;\"\n part=\"navigation-menu-content\"\n >\n <div\n data-state=\"${this.isOpen}\"\n data-orientation=\"horizontal\"\n class=\"${g(\n \"origin-top-center rtg-relative rtg-mt-1.5 rtg-w-full rtg-overflow-hidden rtg-rounded-md rtg-border rtg-bg-popover rtg-text-popover-foreground rtg-shadow data-[state=open]:rtg-animate-in data-[state=closed]:rtg-animate-out data-[state=closed]:rtg-zoom-out-95 data-[state=open]:rtg-zoom-in-90\",\n this.className\n )}\"\n >\n <div\n id=\"${this.id}\"\n aria-labelledby=\"${this.id}\"\n data-orientation=\"horizontal\"\n class=\"${g(\n \"rtg-left-0 rtg-top-0 rtg-w-full data-[motion^=from-]:rtg-animate-in data-[motion^=to-]:rtg-animate-out data-[motion^=from-]:rtg-fade-in data-[motion^=to-]:rtg-fade-out data-[motion=from-end]:rtg-slide-in-from-right-52 data-[motion=from-start]:rtg-slide-in-from-left-52 data-[motion=to-end]:rtg-slide-out-to-right-52 data-[motion=to-start]:rtg-slide-out-to-left-52 md:rtg-w-auto\",\n this.className\n )}\"\n dir=\"ltr\"\n part=\"navigation-menu-content-container\"\n ></div>\n </div>\n </div>\n `;\n }\n};\ncr([\n l({ attribute: \"data-state\", type: String })\n], Rt.prototype, \"state\", 2);\ncr([\n l({ type: String })\n], Rt.prototype, \"id\", 2);\ncr([\n l({ type: String })\n], Rt.prototype, \"side\", 2);\ncr([\n D()\n], Rt.prototype, \"isOpen\", 2);\nRt = cr([\n p(\"rtg-navigation-menu-content\")\n], Rt);\nvar uh = Object.defineProperty, gh = Object.getOwnPropertyDescriptor, Ai = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? gh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && uh(t, o, r), r;\n};\nlet Ls = class extends h {\n constructor() {\n super(...arguments), this.href = \"/\";\n }\n get _containerElement() {\n return this.querySelector(\"a[part=navigation-menu-link]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <a\n part=\"navigation-menu-link\"\n class=\"${g(ah, this.className)}\"\n href=\"${this.href}\"\n data-radix-collection-item=\"\"\n data-tabindex=\"\"\n tabindex=\"-1\"\n >\n </a>\n `;\n }\n};\nAi([\n l({ type: String })\n], Ls.prototype, \"href\", 2);\nLs = Ai([\n p(\"rtg-navigation-menu-link\")\n], Ls);\nvar ph = Object.getOwnPropertyDescriptor, hh = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? ph(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet xn = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=navigation-menu-trigger]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n render() {\n return d`\n <div part=\"navigation-menu-trigger\" class=\"${g(this.className)}\"></div>\n `;\n }\n};\nxn = hh([\n p(\"rtg-navigation-menu-trigger\")\n], xn);\nvar vh = Object.getOwnPropertyDescriptor, fh = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? vh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet _n = class extends h {\n get _containerElement() {\n return this.querySelector(\"nav[part=navigation-menu]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n }\n render() {\n return d`\n <nav\n part=\"navigation-menu\"\n aria-label=\"Main\"\n data-orientation=\"horizontal\"\n dir=\"ltr\"\n class=\"${g(lh, this.className)}\"\n ></nav>\n `;\n }\n};\n_n = fh([\n p(\"rtg-navigation-menu\")\n], _n);\nvar mh = Object.defineProperty, bh = Object.getOwnPropertyDescriptor, Ft = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? bh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && mh(t, o, r), r;\n};\nlet Ge = class extends h {\n constructor() {\n super(...arguments), this.isOpen = !1, this.uniqueIds = [], this.selectedMenu = \"\", this.isHovering = !1, this.id = \"\", this.toggleMenubar = (e) => {\n e.stopPropagation(), document.querySelectorAll(\"rtg-menubar-menu\").forEach((o) => {\n o !== this && (o.isOpen = !1);\n }), this.isOpen = !this.isOpen;\n }, this.handleClickOutside = (e) => {\n const t = e.target;\n this.contains(t) || (this.isOpen = !1);\n }, this.handleMenuMouseEnter = () => {\n this.closeAllMenus(), this.isOpen = !0, this.isHovering = !0;\n }, this.handleMenuMouseLeave = (e) => {\n const t = e.relatedTarget;\n this.isDescendant(t, \"rtg-menubar-content\") || (this.isOpen = !1, this.isHovering = !1);\n };\n }\n get _content() {\n return this.querySelector(\"rtg-menubar-content\");\n }\n get _button() {\n return this.querySelector(\"rtg-menubar-trigger\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n connectedCallback() {\n super.connectedCallback(), document.addEventListener(\"click\", this.handleClickOutside), this.addEventListener(\"radio-selected\", this._handleRadioSelected);\n }\n disconnectedCallback() {\n document.removeEventListener(\"click\", this.handleClickOutside), super.disconnectedCallback();\n }\n updated(e) {\n super.updated(e);\n const t = this._content;\n t && (t.dataset.state = this.isOpen ? \"open\" : \"close\");\n }\n _handleRadioSelected(e) {\n this.querySelectorAll(\"rtg-menubar-radio-item\").forEach((t) => {\n const o = t;\n t !== e.target && (o.checked = !1);\n });\n }\n firstUpdated() {\n this.setupContentListeners();\n const e = this.querySelector(\"div[part=menubar-menu-slot]\"), t = this.querySelector(\"div[part=button-slot]\");\n e && this._content && e.appendChild(this._content), t && this._button && t.appendChild(this._button);\n }\n raiseEvent() {\n const e = new CustomEvent(\"unique-ids-generated\", {\n detail: { ids: this.uniqueIds },\n bubbles: !0,\n composed: !0\n });\n this.dispatchEvent(e);\n }\n closeAllMenus() {\n document.querySelectorAll(\"rtg-menubar-menu\").forEach((t) => {\n t.isOpen = !1, t.isHovering = !1;\n });\n }\n isDescendant(e, t) {\n let o = e.parentElement;\n for (; o; ) {\n if (o.tagName.toLowerCase() === t.toLowerCase())\n return !0;\n o = o.parentElement;\n }\n return !1;\n }\n setupContentListeners() {\n const e = this._content;\n e && (e.addEventListener(\"mouseenter\", () => this.isOpen = !0), e.addEventListener(\"mouseleave\", () => this.isOpen = !1));\n }\n render() {\n return d`\n <div class=\"${g(\"\", this.className)}\">\n <div\n part=\"menuitem\"\n role=\"menuitem\"\n id=\"${this.id}\"\n aria-haspopup=\"menu\"\n =\"menu\"\n aria-expanded=\"${!!this.isOpen}\"\n data-state=\"${this.isOpen}\"\n data-orientation=\"horizontal\"\n @mouseenter=\"${this.handleMenuMouseEnter}\"\n @mouseleave=\"${this.handleMenuMouseLeave}\"\n @click=\"${this.toggleMenubar}\"\n >\n <div part=\"button-slot\"></div>\n </div>\n <div part=\"menubar-menu-slot\"></div>\n </div>\n `;\n }\n};\nFt([\n D()\n], Ge.prototype, \"isOpen\", 2);\nFt([\n D()\n], Ge.prototype, \"uniqueIds\", 2);\nFt([\n D()\n], Ge.prototype, \"selectedMenu\", 2);\nFt([\n D()\n], Ge.prototype, \"isHovering\", 2);\nFt([\n l({ type: String })\n], Ge.prototype, \"id\", 2);\nGe = Ft([\n p(\"rtg-menubar-menu\")\n], Ge);\nconst wh = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground\", yh = \"rtg-z-50 rtg-min-w-[12rem] rtg-overflow-hidden rtg-rounded-md rtg-border rtg-bg-popover rtg-p-1 rtg-text-popover-foreground rtg-shadow-md data-[state=open]:rtg-animate-in data-[state=closed]:rtg-fade-out-0 data-[state=open]:rtg-fade-in-0 data-[state=closed]:rtg-zoom-out-95 data-[state=open]:rtg-zoom-in-95 data-[side=bottom]:rtg-slide-in-from-top-2 data-[side=left]:rtg-slide-in-from-right-2 data-[side=right]:rtg-slide-in-from-left-2 data-[side=top]:rtg-slide-in-from-bottom-2\", xh = \"rtg-overflow-hidden rtg-p-1 rtg-text-foreground [&_[rtgcmd-group-heading]]:rtg-px-2 [&_[rtgcmd-group-heading]]:rtg-py-1.5 [&_[rtgcmd-group-heading]]:rtg-text-xs [&_[rtgcmd-group-heading]]:rtg-font-medium [&_[rtgcmd-group-heading]]:rtg-text-muted-foreground\", _h = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground data-[disabled]:rtg-pointer-events-none data-[disabled]:rtg-opacity-50\", Ch = \"rtg-relative rtg-flex rtg-cursor-default rtg-select-none rtg-items-center rtg-rounded-sm rtg-px-2 rtg-py-1.5 rtg-text-sm rtg-outline-none aria-selected:rtg-bg-accent aria-selected:rtg-text-accent-foreground\", $h = \"rtg-mx-1 rtg-h-px rtg-bg-border\", Eh = \"rtg-ml-auto rtg-text-xs rtg-font-semibold\", Sh = \"rtg-flex rtg-h-9 rtg-items-center rtg-space-x-1 rtg-rounded-md rtg-border rtg-bg-background rtg-p-1 rtg-shadow-sm\";\nvar Oh = Object.defineProperty, Ph = Object.getOwnPropertyDescriptor, dr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ph(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Oh(t, o, r), r;\n};\nlet kt = class extends h {\n constructor() {\n super(...arguments), this.state = Qs, this.id = \"\", this.side = \"bottom\", this.isOpen = !1;\n }\n get _menubarMenu() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ge); )\n e = e.parentElement;\n return e;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=menubar-content]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n requestAnimationFrame(() => {\n this.moveLightDomChildrenInto(this._containerElement);\n });\n }\n connectedCallback() {\n super.connectedCallback(), this.isOpen && document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n disconnectedCallback() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside), super.disconnectedCallback();\n }\n updated(e) {\n super.updated(e), this.state === \"open\" ? this.isOpen = !0 : this.isOpen = !1, e.has(\"isOpen\") && (this.isOpen ? document.addEventListener(\"mousedown\", this.handleClickOutside) : document.removeEventListener(\"mousedown\", this.handleClickOutside));\n }\n handleClickOutside(e) {\n const t = this.querySelector(\"button\");\n this && !this.contains(e.target) && !(t != null && t.contains(e.target)) && (this.isOpen = !1);\n }\n render() {\n return d`\n <div\n part=\"menubar-content\"\n id=\"${this.id}\"\n data-side=\"${this.side}\"\n data-align=\"start\"\n role=\"menu\"\n aria-orientation=\"vertical\"\n data-state=\"${this.isOpen}\"\n data-radix-menu-content=\"\"\n dir=\"ltr\"\n aria-labelledby=\"${this.id}\"\n data-radix-menubar-content=\"\"\n class=\"${g(yh, this.className)}\"\n style=\"display: ${this.isOpen ? \"block\" : \"none\"};width:260px;position:absolute;\"\n ></div>\n `;\n }\n};\ndr([\n l({ attribute: \"data-state\", type: String })\n], kt.prototype, \"state\", 2);\ndr([\n l({ type: String })\n], kt.prototype, \"id\", 2);\ndr([\n l({ type: String })\n], kt.prototype, \"side\", 2);\ndr([\n D()\n], kt.prototype, \"isOpen\", 2);\nkt = dr([\n p(\"rtg-menubar-content\")\n], kt);\nvar Dh = Object.defineProperty, Rh = Object.getOwnPropertyDescriptor, Hr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Rh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Dh(t, o, r), r;\n};\nlet Ye = class extends h {\n constructor() {\n super(...arguments), this.heading = \"\", this._id = \"\", this._hidden = \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[part=menubar-group-slot]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n get identifier() {\n var t, o;\n if (this._id !== \"\")\n return this._id;\n const e = (o = (t = this.parentElement) == null ? void 0 : t.shadowRoot) == null ? void 0 : o.querySelector(\"div[rtgcmd-list]\");\n return e ? this._id = `${e.getAttribute(\"id\")}g${Ye._counter++}` : this._id = `rtgcmdrxlxg${Ye._counter++}`, this._id;\n }\n render() {\n return d`${this._hidden === \"true\" ? Z : d`\n <div\n part=\"menubar-group\"\n class=\"${g(xh, this.className)}\"\n role=\"presentation\"\n id=\"${this.identifier}\"\n >\n <div aria-hidden=\"true\" id=\"${this.identifier}h\">\n ${this.heading}\n </div>\n <div\n role=\"group\"\n aria-labelledby=\"${this.identifier}h\"\n part=\"menubar-group-slot\"\n ></div>\n </div>\n `}`;\n }\n};\nYe._counter = 0;\nHr([\n l({ type: String })\n], Ye.prototype, \"heading\", 2);\nHr([\n l({ attribute: \"id\", type: String })\n], Ye.prototype, \"_id\", 2);\nHr([\n l({ attribute: \"aria-hidden\", type: String })\n], Ye.prototype, \"_hidden\", 2);\nYe = Hr([\n p(\"rtg-menubar-group\")\n], Ye);\nvar kh = Object.defineProperty, Ah = Object.getOwnPropertyDescriptor, ur = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ah(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && kh(t, o, r), r;\n};\nlet ke = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"\", this.selected = !1;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=menubar-item]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n get identifier() {\n var t, o;\n if (this._id !== \"\")\n return this._id;\n const e = (o = (t = this.parentElement) == null ? void 0 : t.shadowRoot) == null ? void 0 : o.querySelector(\"div[rtgcmd-group]\");\n return e ? this._id = `${e.getAttribute(\"id\")}li${ke._counter++}` : this._id = `rtgcmdrxgxli${ke._counter++}`, this._id;\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n handleMouseEvent(e) {\n (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n render() {\n return d` ${this._hidden === \"true\" ? Z : d`\n <div\n part=\"menubar-item\"\n class=\"${g(_h, this.className)}\"\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n role=\"option\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n data-value=\"${this.value}\"\n id=\"${this.identifier}\"\n aria-hidden=\"${this.hidden}\"\n ></div>\n `}`;\n }\n};\nke._counter = 0;\nur([\n l({ type: String })\n], ke.prototype, \"_id\", 2);\nur([\n l({ attribute: \"aria-hidden\", type: String })\n], ke.prototype, \"_hidden\", 2);\nur([\n l({ attribute: \"data-value\", type: String })\n], ke.prototype, \"value\", 1);\nur([\n l({ type: Boolean })\n], ke.prototype, \"selected\", 2);\nke = ur([\n p(\"rtg-menubar-item\")\n], ke);\nvar Lh = Object.defineProperty, Ih = Object.getOwnPropertyDescriptor, mt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Ih(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Lh(t, o, r), r;\n};\nlet ue = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"\", this.selected = !1, this.checked = !1, this.disabled = !1;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=menubar-radio-item]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n get identifier() {\n var t, o;\n if (this._id !== \"\")\n return this._id;\n const e = (o = (t = this.parentElement) == null ? void 0 : t.shadowRoot) == null ? void 0 : o.querySelector(\"div[rtgcmd-group]\");\n return e ? this._id = `${e.getAttribute(\"id\")}li${ue._counter++}` : this._id = `rtgcmdrxgxli${ue._counter++}`, this._id;\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n handleMouseEvent(e) {\n (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n toggleChecked() {\n this.checked || (this.checked = !0, this.dispatchEvent(\n new CustomEvent(\"radio-selected\", { bubbles: !0, composed: !0 })\n ));\n }\n render() {\n return d`\n <div\n part=\"menubar-radio-item\"\n class=\"${g(\n Ch,\n this.disabled ? \"rtg-pointer-events-none rtg-opacity-50\" : \"\",\n this.className\n )}\"\n @click=${this.toggleChecked}\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n rtgcmd-item\n role=\"option\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n data-value=\"${this.value}\"\n id=\"${this.identifier}\"\n aria-hidden=\"${this.hidden}\"\n >\n <span\n class=\"icon-space absolute left-2 flex items-center justify-center\"\n >\n ${this.checked ? d` ${Bs()} ` : Z}\n </span>\n </div>\n `;\n }\n};\nue._counter = 0;\nue.styles = [\n ct`\n .icon-space {\n width: 16px; /* Fixed width to reserve space for the check icon */\n height: 16px;\n display: inline-block;\n }\n `\n];\nmt([\n l({ type: String })\n], ue.prototype, \"_id\", 2);\nmt([\n l({ attribute: \"aria-hidden\", type: String })\n], ue.prototype, \"_hidden\", 2);\nmt([\n l({ attribute: \"data-value\", type: String })\n], ue.prototype, \"value\", 1);\nmt([\n l({ type: Boolean })\n], ue.prototype, \"selected\", 2);\nmt([\n l({ type: Boolean })\n], ue.prototype, \"checked\", 2);\nmt([\n l({ type: Boolean })\n], ue.prototype, \"disabled\", 2);\nue = mt([\n p(\"rtg-menubar-radio-item\")\n], ue);\nvar Th = Object.defineProperty, jh = Object.getOwnPropertyDescriptor, bt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? jh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Th(t, o, r), r;\n};\nlet ge = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"\", this.selected = !1, this.checked = !1, this.disabled = !1;\n }\n get _containerElement() {\n return this.querySelector(\"div[part=menubar-checkbox-item]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n get identifier() {\n var t, o;\n if (this._id !== \"\")\n return this._id;\n const e = (o = (t = this.parentElement) == null ? void 0 : t.shadowRoot) == null ? void 0 : o.querySelector(\"div[rtgcmd-group]\");\n return e ? this._id = `${e.getAttribute(\n \"id\"\n )}li${ge._counter++}` : this._id = `rtgcmdrxgxli${ge._counter++}`, this._id;\n }\n get value() {\n var e;\n return ((e = this.textContent) == null ? void 0 : e.trim()) || \"\";\n }\n handleMouseEvent(e) {\n (e.type === \"mouseover\" || e.type === \"focus\") && (this.selected = !0), e.type === \"mouseleave\" && (this.selected = !1);\n }\n toggleChecked() {\n this.checked = !this.checked;\n }\n render() {\n return d`\n <div\n part=\"menubar-checkbox-item\"\n class=\"${g(\n wh,\n this.disabled ? \"rtg-pointer-events-none rtg-opacity-50\" : \"\",\n this.className\n )}\"\n @click=${this.toggleChecked}\n @mouseover=\"${this.handleMouseEvent}\"\n @mouseleave=\"${this.handleMouseEvent}\"\n @focus=\"${this.handleMouseEvent}\"\n rtgcmd-item\n role=\"option\"\n aria-selected=\"${this.selected}\"\n data-selected=\"${this.selected}\"\n data-value=\"${this.value}\"\n id=\"${this.identifier}\"\n aria-hidden=\"${this.hidden}\"\n >\n <span\n class=\"icon-space rtg-absolute rtg-left-2 rtg-flex rtg-items-center rtg-justify-center\"\n >\n ${this.checked ? d`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"16px\"\n height=\"16px\"\n >\n <path\n d=\"M 19.28125 5.28125 L 9 15.5625 L 4.71875 11.28125 L 3.28125 12.71875 L 8.28125 17.71875 L 9 18.40625 L 9.71875 17.71875 L 20.71875 6.71875 Z\"\n />\n </svg>\n ` : Z}\n </span>\n </div>\n `;\n }\n};\nge._counter = 0;\nge.styles = [\n ct`\n .icon-space {\n width: 16px; /* Fixed width to reserve space for the check icon */\n height: 16px;\n display: inline-block;\n }\n `\n];\nbt([\n l({ type: String })\n], ge.prototype, \"_id\", 2);\nbt([\n l({ attribute: \"aria-hidden\", type: String })\n], ge.prototype, \"_hidden\", 2);\nbt([\n l({ attribute: \"data-value\", type: String })\n], ge.prototype, \"value\", 1);\nbt([\n l({ type: Boolean })\n], ge.prototype, \"selected\", 2);\nbt([\n l({ type: Boolean })\n], ge.prototype, \"checked\", 2);\nbt([\n l({ type: Boolean })\n], ge.prototype, \"disabled\", 2);\nge = bt([\n p(\"rtg-menubar-checkbox-item\")\n], ge);\nvar Mh = Object.defineProperty, Nh = Object.getOwnPropertyDescriptor, co = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Nh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Mh(t, o, r), r;\n};\nlet lt = class extends h {\n constructor() {\n super(...arguments), this._id = \"\", this._hidden = \"\";\n }\n get _containerElement() {\n return this.querySelector(\"div[part=menubar-separator]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n get identifier() {\n var t;\n if (this._id !== \"\")\n return this._id;\n const e = (t = this.parentElement) == null ? void 0 : t.querySelector(\"div[rtgcmd-list]\");\n return e ? this._id = `${e.getAttribute(\"id\")}s${lt._counter++}` : this._id = `rtgcmdrxlxs${lt._counter++}`, this._id;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`${this._hidden === \"true\" ? Z : d`\n <div\n part=\"menubar-separator\"\n class=\"${g($h, this.className)}\"\n rtgcmd-separator\n role=\"separator\"\n id=\"${this.identifier}\"\n ></div>\n `}`;\n }\n};\nlt._counter = 0;\nco([\n l({ type: String })\n], lt.prototype, \"_id\", 2);\nco([\n l({ attribute: \"aria-hidden\", type: String })\n], lt.prototype, \"_hidden\", 2);\nlt = co([\n p(\"rtg-menubar-separator\")\n], lt);\nvar Uh = Object.getOwnPropertyDescriptor, zh = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Uh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Cn = class extends h {\n get _containerElement() {\n return this.querySelector(\"span[part=menubar-shortcut]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <span\n part=\"menubar-shortcut\"\n class=\"${g(Eh, this.className)}\"\n >\n </span>\n `;\n }\n};\nCn = zh([\n p(\"rtg-menubar-shortcut\")\n], Cn);\nvar qh = Object.getOwnPropertyDescriptor, Bh = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? qh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet $n = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=menubar-trigger]\");\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n render() {\n return d`\n <div part=\"menubar-trigger\" class=\"${g(this.className)}\"></div>\n `;\n }\n};\n$n = Bh([\n p(\"rtg-menubar-trigger\")\n], $n);\nvar Fh = Object.getOwnPropertyDescriptor, Vh = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Fh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet En = class extends h {\n get _containerElement() {\n return this.querySelector(\"div[part=menubar]\");\n }\n getAttributesToExclude() {\n return [\"date-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n render() {\n return d`\n <div\n part=\"menubar\"\n role=\"menubar\"\n class=\"${g(Sh, this.className)}\"\n tabindex=\"0\"\n data-orientation=\"horizontal\"\n style=\"outline: none;width:fit-content\"\n ></div>\n `;\n }\n};\nEn = Vh([\n p(\"rtg-menubar\")\n], En);\nvar Hh = Object.defineProperty, Gh = Object.getOwnPropertyDescriptor, Gr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Gh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Hh(t, o, r), r;\n};\nlet tr = class extends h {\n constructor() {\n super(...arguments), this.dataTable = [], this.footerData = [], this.captionText = \"\";\n }\n get _containerElement() {\n return this.querySelector(\"table[part=table]\");\n }\n getAttributesToExclude() {\n return [\"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n firstUpdated(e) {\n this.moveLightDomChildrenInto(this._containerElement);\n }\n get columnKeys() {\n var t;\n const e = (t = this.dataTable) == null ? void 0 : t[0];\n return e ? Object.keys(e).filter((o) => o !== \"id\") : [];\n }\n capitalizeLabel(e) {\n return e.charAt(0).toUpperCase() + e.slice(1);\n }\n render() {\n var t;\n const e = this.columnKeys;\n return d`\n <div\n class=\"preview rtg-flex rtg-min-h-[350px] rtg-w-full rtg-items-center rtg-justify-center rtg-p-10\"\n >\n <div class=\"rtg-relative rtg-w-full rtg-overflow-auto\">\n <table part=\"table\" class=\"rtg-w-full rtg-caption-bottom rtg-text-sm\">\n ${this.captionText ? d`\n <caption\n class=\"rtg-mt-4 rtg-text-sm rtg-text-muted-foreground\"\n >\n ${this.captionText}\n </caption>\n ` : null}\n <thead class=\"[&amp;_tr]:rtg-border-b\">\n <tr\n class=\"rtg-border-b rtg-transition-colors hover:rtg-bg-muted/50 data-[state=selected]:rtg-bg-muted\"\n >\n ${e.map((o, s, r) => {\n const n = s === 0, x = `rtg-h-10 rtg-px-2 rtg-align-middle rtg-font-medium rtg-text-muted-foreground [&:has([role=checkbox])]:rtg-pr-0 [&>[role=checkbox]]:rtg-translate-y-[2px] ${s === r.length - 1 ? \"rtg-text-right\" : \"rtg-text-left\"} ${n ? \"rtg-w-[100px]\" : \"\"}`.trim();\n return d`<th class=${x}>\n ${this.capitalizeLabel(o)}\n </th>`;\n })}\n </tr>\n </thead>\n <tbody class=\"[&amp;_tr:last-child]:rtg-border-0\">\n ${this.dataTable.map(\n (o) => d`\n <tr\n data-id=${o.id ?? \"\"}\n class=\"rtg-border-b rtg-transition-colors hover:rtg-bg-muted/50 data-[state=selected]:rtg-bg-muted\"\n >\n ${e.map((s, r, n) => {\n const i = r === 0, v = r === n.length - 1, k = `rtg-p-2 rtg-align-middle [&:has([role=checkbox])]:rtg-pr-0 [&>[role=checkbox]]:rtg-translate-y-[2px] ${i ? \"rtg-font-medium\" : \"\"} ${v ? \"rtg-text-right\" : \"\"}`.trim();\n return d`<td class=${k}>${o[s] ?? \"\"}</td>`;\n })}\n </tr>\n `\n )}\n </tbody>\n ${(t = this.footerData) != null && t.length ? d`\n <tfoot\n class=\"rtg-border-t rtg-bg-muted/50 rtg-font-medium [&>tr]:rtg-last:border-b-0\"\n >\n <tr\n class=\"rtg-border-b rtg-transition-colors hover:rtg-bg-muted/50 data-[state=selected]:rtg-bg-muted\"\n >\n ${e.map((o, s, r) => {\n const y = `rtg-p-2 rtg-align-middle [&:has([role=checkbox])]:rtg-pr-0 [&>[role=checkbox]]:rtg-translate-y-[2px] ${s === r.length - 1 ? \"rtg-text-right\" : \"\"}`.trim(), b = this.footerData.find(\n (x) => x.key === o\n );\n return d`<td class=${y}>\n ${(b == null ? void 0 : b.value) ?? \"\"}\n </td>`;\n })}\n </tr>\n </tfoot>\n ` : null}\n </table>\n </div>\n </div>\n `;\n }\n};\nGr([\n l({ type: Array })\n], tr.prototype, \"dataTable\", 2);\nGr([\n l({ type: Array })\n], tr.prototype, \"footerData\", 2);\nGr([\n l({ type: String })\n], tr.prototype, \"captionText\", 2);\ntr = Gr([\n p(\"rtg-table\")\n], tr);\nclass Li {\n constructor() {\n this.values = {}, this.errors = {}, this.validators = {}, this.subscribers = /* @__PURE__ */ new Set();\n }\n registerField({ name: t, defaultValue: o = \"\", validator: s }) {\n t in this.values || (this.values[t] = o), s && (this.validators[t] = s);\n }\n unregisterField(t) {\n delete this.values[t], delete this.errors[t], delete this.validators[t];\n }\n setValue(t, o) {\n t in this.validators || console.warn(\n `[FormController] setValue called before validator was registered for \"${t}\"`\n ), this.values[t] = o, this.validateField(t), this.notify();\n }\n getValue(t) {\n return this.values[t];\n }\n getError(t) {\n return this.errors[t] ?? null;\n }\n validateField(t) {\n const o = this.validators[t], s = this.values[t], r = o ? o(s) : null;\n return this.errors[t] = r, this.notify(), !r;\n }\n validateAll() {\n let t = !0;\n return Object.keys(this.validators).forEach((o) => {\n this.validateField(o) || (t = !1);\n }), t;\n }\n subscribe(t) {\n return this.subscribers.add(t), () => this.subscribers.delete(t);\n }\n notify() {\n this.subscribers.forEach((t) => t());\n }\n getValues() {\n return { ...this.values };\n }\n getErrors() {\n return { ...this.errors };\n }\n}\nconst gr = Us(\"rtg-form-context\");\nvar Yh = Object.defineProperty, Kh = Object.getOwnPropertyDescriptor, Ii = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? Kh(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && Yh(t, o, r), r;\n};\nlet Is = class extends h {\n constructor() {\n super(...arguments), this.form = new Li(), this.handleSubmit = (e) => {\n if (e.preventDefault(), this.form.validateAll()) {\n const o = this.form.getValues();\n alert(JSON.stringify(o, null, 2));\n }\n };\n }\n createRenderRoot() {\n return this;\n }\n async firstUpdated(e) {\n await this.updateComplete, Array.from(this.childNodes).forEach((t) => {\n t !== this.formElement && this.formElement.appendChild(t);\n }), this.querySelectorAll(\"rtg-form-field\").forEach((t) => {\n const o = t.getAttribute(\"name\"), s = t.validators, r = s == null ? void 0 : s[0];\n this.form.registerField({ name: o, validator: r });\n });\n }\n render() {\n return d`\n <form\n part=\"form-controller\"\n class=\"${g(\"\", this.className)}\"\n @submit=${this.handleSubmit}\n ${Xi((e) => this.formElement = e)}\n ></form>\n `;\n }\n};\nIi([\n D(),\n Nr({ context: gr })\n], Is.prototype, \"form\", 2);\nIs = Ii([\n p(\"rtg-form-controller\")\n], Is);\nconst Ti = Us(\n \"rtg-form-item-context\"\n), Wh = \"rtg-space-y-4\", Xh = \"rtg-text-sm rtg-text-muted-foreground rtg-mt-1\", Zh = \"rtg-space-y-2\", Qh = \"rtg-space-y-1\", Jh = \"rtg-text-sm rtg-mb-1 rtg-font-medium rtg-leading-none rtg-peer-disabled:rtg-cursor-not-allowed peer-disabled:rtg-opacity-70\", ev = \"rtg-text-sm rtg-text-destructive\";\nvar tv = Object.defineProperty, rv = Object.getOwnPropertyDescriptor, ji = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? rv(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && tv(t, o, r), r;\n};\nlet Ts = class extends h {\n createRenderRoot() {\n return this;\n }\n get _desc() {\n return this.querySelector(\"p[part=form-description]\");\n }\n firstUpdated() {\n this.moveLightDomChildrenInto(this._desc);\n }\n render() {\n return d`\n <p\n id=\"${this.itemContext.id}-description\"\n part=\"form-description\"\n class=\"${g(Xh, this.className)}\"\n ></p>\n `;\n }\n};\nji([\n Ur({ context: Ti })\n], Ts.prototype, \"itemContext\", 2);\nTs = ji([\n p(\"rtg-form-description\")\n], Ts);\nconst sv = Us(\"rtg-form-field-context\");\nvar ov = Object.defineProperty, nv = Object.getOwnPropertyDescriptor, Vt = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? nv(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && ov(t, o, r), r;\n};\nlet Ae = class extends h {\n constructor() {\n super(...arguments), this.name = \"\", this.validators = [], this.defaultValue = \"\", this.fieldName = \"\", this.registered = !1;\n }\n createRenderRoot() {\n return this;\n }\n get _container() {\n return this.querySelector(\"div[part=form-field]\");\n }\n updated() {\n var o;\n if (this.registered || !this.form || !this.name || !Array.isArray(this.validators) || this.validators.length === 0) return;\n const e = (s) => {\n for (const r of this.validators) {\n const n = r(s);\n if (n) return n;\n }\n return null;\n };\n this.form.registerField({\n name: this.name,\n validator: e,\n defaultValue: this.defaultValue\n }), this.registered = !0, this.moveLightDomChildrenInto(this._container);\n const t = (o = this._container) == null ? void 0 : o.querySelector(\"input, textarea, select\");\n t && (this.defaultValue !== void 0 && (t.value = this.defaultValue), t.addEventListener(\"input\", () => {\n this.form.setValue(this.name, t.value);\n }));\n }\n disconnectedCallback() {\n var e;\n super.disconnectedCallback(), this.isConnected || (e = this.form) == null || e.unregisterField(this.name);\n }\n render() {\n return d`<div\n part=\"form-field\"\n class=\"${g(Zh, this.className)}\"\n ></div>`;\n }\n};\nVt([\n Ur({ context: gr })\n], Ae.prototype, \"form\", 2);\nVt([\n l({ type: String })\n], Ae.prototype, \"name\", 2);\nVt([\n l({ type: Array })\n], Ae.prototype, \"validators\", 2);\nVt([\n l({ type: String })\n], Ae.prototype, \"defaultValue\", 2);\nVt([\n Nr({ context: sv })\n], Ae.prototype, \"fieldName\", 2);\nAe = Vt([\n p(\"rtg-form-field\")\n], Ae);\nvar iv = Object.defineProperty, av = Object.getOwnPropertyDescriptor, Mi = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? av(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && iv(t, o, r), r;\n};\nlet js = class extends h {\n constructor() {\n super(...arguments), this._generatedId = crypto.randomUUID(), this.itemContext = { id: this._generatedId };\n }\n createRenderRoot() {\n return this;\n }\n get _container() {\n return this.querySelector(\"div[part=form-item]\");\n }\n firstUpdated() {\n this.moveLightDomChildrenInto(this._container);\n }\n render() {\n return d`<div\n part=\"form-item\"\n class=\"${g(Qh, this.className)}\"\n ></div>`;\n }\n};\nMi([\n Nr({ context: Ti })\n], js.prototype, \"itemContext\", 2);\njs = Mi([\n p(\"rtg-form-item\")\n], js);\nvar lv = Object.defineProperty, cv = Object.getOwnPropertyDescriptor, uo = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? cv(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && lv(t, o, r), r;\n};\nlet Tr = class extends h {\n constructor() {\n super(...arguments), this.hasError = !1, this.unsubscribe = null;\n }\n get _field() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ae); )\n e = e.parentElement;\n return e;\n }\n createRenderRoot() {\n return this;\n }\n get _label() {\n return this.querySelector(\"label[part=form-label]\");\n }\n firstUpdated() {\n this.moveLightDomChildrenInto(this._label);\n }\n connectedCallback() {\n super.connectedCallback();\n const e = this._field.name;\n this.hasError = !!this.form.getError(e), this.unsubscribe = this.form.subscribe(() => {\n const t = this.form.getError(e);\n this.hasError = !!t, this.requestUpdate();\n });\n }\n disconnectedCallback() {\n super.disconnectedCallback(), this.unsubscribe && this.unsubscribe();\n }\n render() {\n return d`\n <label\n part=\"form-label\"\n for=\"${this._field.name}\"\n class=\"${g(\n Jh,\n this.hasError && \"rtg-text-destructive\",\n this.className\n )}\"\n ></label>\n `;\n }\n};\nuo([\n Ur({ context: gr })\n], Tr.prototype, \"form\", 2);\nuo([\n D()\n], Tr.prototype, \"hasError\", 2);\nTr = uo([\n p(\"rtg-form-label\")\n], Tr);\nvar dv = Object.defineProperty, uv = Object.getOwnPropertyDescriptor, go = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? uv(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && dv(t, o, r), r;\n};\nlet jr = class extends W {\n constructor() {\n super(...arguments), this.error = null, this.unsubscribe = null;\n }\n get _field() {\n let e = this.parentElement;\n for (; e && !(e instanceof Ae); )\n e = e.parentElement;\n return e;\n }\n createRenderRoot() {\n return this;\n }\n connectedCallback() {\n super.connectedCallback(), this.error = this.form.getError(this._field.name), this.unsubscribe = this.form.subscribe(() => {\n this.error = this.form.getErrors()[this._field.name], this.requestUpdate();\n });\n }\n disconnectedCallback() {\n super.disconnectedCallback(), this.unsubscribe && this.unsubscribe();\n }\n render() {\n return this.error ? d`<p\n id=\"${this._field.name}-message\"\n class=\"${g(ev, this.className)}\"\n >\n ${this.error}\n </p>` : null;\n }\n};\ngo([\n Ur({ context: gr })\n], jr.prototype, \"form\", 2);\ngo([\n D()\n], jr.prototype, \"error\", 2);\njr = go([\n p(\"rtg-form-message\")\n], jr);\nvar gv = Object.defineProperty, pv = Object.getOwnPropertyDescriptor, po = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? pv(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && gv(t, o, r), r;\n};\nlet Mr = class extends h {\n constructor() {\n super(...arguments), this.form = new Li(), this.onSubmit = () => {\n }, this.handleSubmit = (e) => {\n e.preventDefault(), this.form.validateAll() && (alert(\"form submitted successfully\"), this.onSubmit(this.form.getValues()));\n };\n }\n createRenderRoot() {\n return this;\n }\n get _formElement() {\n return this.querySelector(\"form[part=form-root]\");\n }\n firstUpdated() {\n this.moveLightDomChildrenInto(this._formElement);\n }\n render() {\n return d`\n <form\n part=\"form-root\"\n id=\"rtg-form\"\n @submit=${this.handleSubmit}\n class=\"${g(Wh, this.className)}\"\n ></form>\n `;\n }\n};\npo([\n Nr({ context: gr })\n], Mr.prototype, \"form\", 2);\npo([\n l({ type: Function })\n], Mr.prototype, \"onSubmit\", 2);\nMr = po([\n p(\"rtg-form\")\n], Mr);\nconst hv = \"rtg-animate-pulse rtg-rounded-md rtg-bg-gray-200 rtg-h-4 rtg-w-full\";\nvar vv = Object.getOwnPropertyDescriptor, fv = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? vv(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = i(r) || r);\n return r;\n};\nlet Sn = class extends h {\n createRenderRoot() {\n return this;\n }\n render() {\n return d` <div class=${g(hv, this.className)}></div> `;\n }\n};\nSn = fv([\n p(\"rtg-skeleton\")\n], Sn);\nconst mv = \"rtg-relative rtg-h-72 rtg-w-48 rtg-rounded-md rtg-border\";\nvar bv = Object.defineProperty, wv = Object.getOwnPropertyDescriptor, Ni = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? wv(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && bv(t, o, r), r;\n};\nlet Ms = class extends h {\n createRenderRoot() {\n return this;\n }\n firstUpdated() {\n this.moveLightDomChildrenInto(this.viewportEl);\n }\n render() {\n return d`\n <div\n dir=\"ltr\"\n data-slot=\"scroll-area\"\n class=${g(mv, this.className)}\n style=\"position: relative; --radix-scroll-area-corner-width: 0px; --radix-scroll-area-corner-height: 0px;\"\n >\n <style>\n [data-radix-scroll-area-viewport] {\n -webkit-overflow-scrolling: touch;\n }\n\n /* Webkit scrollbar (Chrome/Safari) */\n [data-radix-scroll-area-viewport]::-webkit-scrollbar {\n width: 0px;\n height: 0px;\n }\n\n [data-radix-scroll-area-viewport]:hover::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n }\n\n [data-radix-scroll-area-viewport]::-webkit-scrollbar-thumb {\n background-color: rgba(100, 100, 100, 0.5);\n border-radius: 4px;\n }\n\n [data-radix-scroll-area-viewport]::-webkit-scrollbar-track {\n background: transparent;\n }\n </style>\n <div\n data-radix-scroll-area-viewport\n data-slot=\"scroll-area-viewport\"\n class=\"rtg-size-full rtg-rounded-[inherit] rtg-outline-none rtg-transition-[color,box-shadow] focus-visible:rtg-outline-1 focus-visible:rtg-ring-[3px] focus-visible:rtg-ring-ring/50\"\n style=\"overflow: hidden scroll;\"\n ></div>\n </div>\n `;\n }\n};\nNi([\n ee(\"[data-radix-scroll-area-viewport]\")\n], Ms.prototype, \"viewportEl\", 2);\nMs = Ni([\n p(\"rtg-scroll-area\")\n], Ms);\nvar yv = Object.defineProperty, xv = Object.getOwnPropertyDescriptor, Yr = (e, t, o, s) => {\n for (var r = s > 1 ? void 0 : s ? xv(t, o) : t, n = e.length - 1, i; n >= 0; n--)\n (i = e[n]) && (r = (s ? i(t, o, r) : i(r)) || r);\n return s && r && yv(t, o, r), r;\n};\nlet rr = class extends h {\n constructor() {\n super(), this.btnClass = \"border: 1px solid #DC2626;\", this.inputValue = \"\", this.defaultValue = \"account\";\n }\n getAttributesToExclude() {\n return [\"disabled\", \"type\", \"placeholder\", \"value\", \"data-testid\"];\n }\n createRenderRoot() {\n return this;\n }\n render() {\n return d`\n <div class=\"sb-flex sb-flex-col sb-gap-4\">\n <rtg-tab .defaultValue=${this.defaultValue} class=\"rtg-w-[400px]\">\n <rtg-tab-list customClass=\"rtg-h-10 rtg-rounded-2xl\" slot=\"tab-list\">\n <rtg-tab-trigger\n id=\"account\"\n value=\"account\"\n @click=${() => console.log(\"clicked account\")}\n >\n account\n </rtg-tab-trigger>\n <rtg-tab-trigger\n data-testid=\"Password\"\n id=\"password\"\n value=\"password\"\n @click=${() => console.log(\"clicked Password\")}\n >\n Password\n </rtg-tab-trigger>\n </rtg-tab-list>\n <div slot=\"tab-content\" class=\"rtg-pt-2\">\n <rtg-tab-content value=\"password\">\n <rtg-card>\n <rtg-card-header class=\"rtg-space-y-1.5 rtg-p-6\">\n <rtg-card-title>\n <h3\n class=\"rtg-text-2xl rtg-font-semibold rtg-leading-none rtg-tracking-tight\"\n >\n Password\n </h3>\n </rtg-card-title>\n <rtg-card-description>\n <div class=\"rtg-pt-2 rtg-text-sm rtg-text-muted-foreground\">\n Change your password here. After saving, you'll be logged\n out.\n </div>\n </rtg-card-description>\n </rtg-card-header>\n <rtg-card-content>\n <div>\n <rtg-label htmlFor=\"name\">Current password</rtg-label>\n </div>\n <div class=\"rtg-py-2\">\n <rtg-label htmlFor=\"username\">New password</rtg-label>\n </div>\n </rtg-card-content>\n\n <div class=\"py-2\">\n <rtg-button> Save password </rtg-button>\n </div>\n </rtg-card>\n </rtg-tab-content>\n <rtg-tab-content value=\"account\">\n <rtg-card>\n <rtg-card-header class=\"rtg-space-y-1.5 rtg-p-6\">\n <rtg-card-title>\n <h3\n class=\"rtg-text-2xl rtg-font-semibold rtg-leading-none rtg-tracking-tight\"\n >\n Account\n </h3>\n </rtg-card-title>\n <rtg-card-description>\n <div class=\"rtg-pt-2 rtg-text-sm rtg-text-muted-foreground\">\n Make changes to your account here. Click save when you're\n done.\n </div>\n </rtg-card-description>\n </rtg-card-header>\n <rtg-card-content>\n <div>\n <rtg-label htmlFor=\"name\">Name</rtg-label>\n </div>\n <div class=\"rtg-py-2\">\n <rtg-label htmlFor=\"username\">Username</rtg-label>\n </div>\n </rtg-card-content>\n\n <div class=\"rtg-py-2\">\n <rtg-button> Save changes </rtg-button>\n </div>\n </rtg-card>\n </rtg-tab-content>\n </div>\n </rtg-tab>\n\n <rtg-avatar customClass=\"rtg-h-20 rtg-w-20\">\n <rtg-avatar-image\n src=\"https://github.com/shadcn.png\"\n ></rtg-avatar-image>\n </rtg-avatar>\n\n <rtg-card class=\"rtg-rounded-2xl\">\n <rtg-card-header data-testid=\"card-header-id\">\n <rtg-card-title data-testid=\"card-title-id\">\n <h3>Create project</h3>\n </rtg-card-title>\n <rtg-card-description data-testid=\"card-description-id\">\n <p class=\"rtg-text-sm rtg-text-muted-foreground\">\n Deploy your new project in one-click.\n </p>\n </rtg-card-description>\n </rtg-card-header>\n <rtg-card-content data-testid=\"card-content-id\">\n <form class=\"rtg-pt-4\">\n <div class=\"gap-4 rtg-grid rtg-w-full rtg-items-center\">\n <div class=\"rtg-flex rtg-flex-col rtg-space-y-1.5\">\n <label\n class=\"rtg-text-sm rtg-font-medium rtg-leading-none peer-disabled:rtg-cursor-not-allowed peer-disabled:rtg-opacity-70\"\n for=\"name\"\n >Name</label\n >\n <input\n id=\"name\"\n class=\"disabled:opacity-50 rtg-flex rtg-h-10 rtg-w-full rtg-rounded-md rtg-border rtg-border-input rtg-bg-background rtg-px-3 rtg-py-2 rtg-text-sm rtg-ring-offset-background placeholder:rtg-text-muted-foreground focus-visible:rtg-outline-none focus-visible:rtg-ring-2 focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 disabled:rtg-cursor-not-allowed\"\n placeholder=\"Name of your project\"\n />\n </div>\n <div class=\"rtg-flex rtg-flex-col rtg-space-y-1.5\">\n <label\n class=\"rtg-text-sm rtg-font-medium rtg-leading-none peer-disabled:rtg-cursor-not-allowed peer-disabled:rtg-opacity-70\"\n for=\"framework\"\n >Framework</label\n >\n <input\n id=\"framework\"\n class=\"focus-visible:ring-2 rtg-flex rtg-h-10 rtg-w-full rtg-rounded-md rtg-border rtg-border-input rtg-bg-background rtg-px-3 rtg-py-2 rtg-text-sm rtg-ring-offset-background placeholder:rtg-text-muted-foreground focus-visible:rtg-outline-none focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 disabled:rtg-cursor-not-allowed disabled:rtg-opacity-50\"\n placeholder=\"What framework you be going to use?\"\n />\n </div>\n </div>\n </form>\n </rtg-card-content>\n <rtg-card-footer data-testid=\"card-footer-id\">\n <div class=\"rtg-flex rtg-items-center rtg-justify-between rtg-pt-4\">\n <button\n class=\"rtg-inline-flex rtg-h-10 rtg-items-center rtg-justify-center rtg-whitespace-nowrap rtg-rounded-md rtg-border rtg-border-input rtg-bg-background rtg-px-4 rtg-py-2 rtg-text-sm rtg-font-medium rtg-ring-offset-background rtg-transition-colors hover:rtg-bg-accent hover:rtg-text-accent-foreground focus-visible:rtg-outline-none focus-visible:rtg-ring-2 focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 disabled:rtg-pointer-events-none disabled:rtg-opacity-50\"\n >\n Cancel\n </button>\n <button\n class=\"rtg-inline-flex rtg-h-10 rtg-items-center rtg-justify-center rtg-whitespace-nowrap rtg-rounded-md rtg-bg-primary rtg-px-4 rtg-py-2 rtg-text-sm rtg-font-medium rtg-text-primary-foreground rtg-ring-offset-background rtg-transition-colors hover:rtg-bg-primary/90 focus-visible:rtg-outline-none focus-visible:rtg-ring-2 focus-visible:rtg-ring-ring focus-visible:rtg-ring-offset-2 disabled:rtg-pointer-events-none disabled:rtg-opacity-50\"\n >\n Deploy\n </button>\n </div>\n </rtg-card-footer>\n </rtg-card>\n\n <rtg-tab orientation=\"vertical\" defaultValue=\"account\">\n <rtg-tab-list customClass=\"!rtg-rounded-2xl\" orientation=\"vertical\">\n <rtg-tab-trigger value=\"account\">Account</rtg-tab-trigger>\n <rtg-tab-trigger value=\"password\">Password</rtg-tab-trigger>\n </rtg-tab-list>\n\n <rtg-tab-content customClass=\"rtg-rounded-2xl\" value=\"account\">\n <rtg-card>\n <rtg-card-header class=\"rtg-space-y-1.5 rtg-p-6\">\n <rtg-card-title>\n <h3\n class=\"rtg-text-2xl rtg-font-semibold rtg-leading-none rtg-tracking-tight\"\n >\n Account\n </h3>\n </rtg-card-title>\n <rtg-card-description>\n <div class=\"rtg-pt-2 rtg-text-sm rtg-text-muted-foreground\">\n Make changes to your account here. Click save when you're\n done.\n </div>\n </rtg-card-description>\n </rtg-card-header>\n <rtg-card-content>\n <div>\n <rtg-label htmlFor=\"name\">Name</rtg-label>\n </div>\n <div class=\"rtg-py-2\">\n <rtg-label htmlFor=\"username\">Username</rtg-label>\n </div>\n </rtg-card-content>\n\n <div class=\"rtg-py-2\">\n <rtg-button> Save changes </rtg-button>\n </div>\n </rtg-card>\n </rtg-tab-content>\n\n <rtg-tab-content customClass=\"rtg-rounded-2xl\" value=\"password\">\n <rtg-card customClass=\"rtg-rounded-2xl\">\n <rtg-card-header class=\"rtg-space-y-1.5 rtg-p-6\">\n <rtg-card-title>\n <h3\n class=\"rtg-text-2xl rtg-font-semibold rtg-leading-none rtg-tracking-tight\"\n >\n Password\n </h3>\n </rtg-card-title>\n <rtg-card-description>\n <div class=\"rtg-pt-2 rtg-text-sm rtg-text-muted-foreground\">\n Change your password here. After saving, you'll be logged\n out.\n </div>\n </rtg-card-description>\n </rtg-card-header>\n <rtg-card-content>\n <div>\n <rtg-label htmlFor=\"name\">Current password</rtg-label>\n </div>\n <div class=\"rtg-py-2\">\n <rtg-label htmlFor=\"username\">New password</rtg-label>\n </div>\n </rtg-card-content>\n\n <div class=\"py-2\">\n <rtg-button> Save password </rtg-button>\n </div>\n </rtg-card>\n </rtg-tab-content>\n </rtg-tab>\n </div>\n `;\n }\n};\nYr([\n D()\n], rr.prototype, \"btnClass\", 2);\nYr([\n D()\n], rr.prototype, \"inputValue\", 2);\nYr([\n l({ type: String })\n], rr.prototype, \"defaultValue\", 2);\nrr = Yr([\n p(\"light-sample-demo\")\n], rr);\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst _v = /* @__PURE__ */ new Set([\"children\", \"localName\", \"ref\", \"style\", \"className\"]), On = /* @__PURE__ */ new WeakMap(), Cv = (e, t, o, s, r) => {\n const n = r == null ? void 0 : r[t];\n n === void 0 || o === s ? o == null && t in HTMLElement.prototype ? e.removeAttribute(t) : e[t] = o : ((i, v, y) => {\n let b = On.get(i);\n b === void 0 && On.set(i, b = /* @__PURE__ */ new Map());\n let x = b.get(v);\n y !== void 0 ? x === void 0 ? (b.set(v, x = { handleEvent: y }), i.addEventListener(v, x)) : x.handleEvent = y : x !== void 0 && (b.delete(v), i.removeEventListener(v, x));\n })(e, n, o);\n}, $v = (e, t) => {\n typeof e == \"function\" ? e(t) : e.current = t;\n};\nfunction Ui(e = window.React, t, o, s, r) {\n let n, i, v;\n {\n const H = e;\n ({ tagName: i, elementClass: v, events: s, displayName: r } = H), n = H.react;\n }\n const y = n.Component, b = n.createElement, x = new Set(Object.keys(s ?? {}));\n class k extends y {\n constructor() {\n super(...arguments), this.o = null;\n }\n t(j) {\n if (this.o !== null) for (const U in this.i) Cv(this.o, U, this.props[U], j ? j[U] : void 0, s);\n }\n componentDidMount() {\n var j;\n this.t(), (j = this.o) === null || j === void 0 || j.removeAttribute(\"defer-hydration\");\n }\n componentDidUpdate(j) {\n this.t(j);\n }\n render() {\n const { _$Gl: j, ...U } = this.props;\n this.h !== j && (this.u = (M) => {\n j !== null && $v(j, M), this.o = M, this.h = j;\n }), this.i = {};\n const O = { ref: this.u };\n for (const [M, X] of Object.entries(U)) _v.has(M) ? O[M === \"className\" ? \"class\" : M] = X : x.has(M) || M in v.prototype ? this.i[M] = X : O[M] = X;\n return O.suppressHydrationWarning = !0, b(i, O);\n }\n }\n k.displayName = r ?? v.name;\n const F = n.forwardRef((H, j) => b(k, { ...H, _$Gl: j }, H == null ? void 0 : H.children));\n return F.displayName = k.displayName, F;\n}\nfunction Ev(e) {\n return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, \"default\") ? e.default : e;\n}\nvar br = { exports: {} }, S = {};\n/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nvar Pn;\nfunction Sv() {\n if (Pn) return S;\n Pn = 1;\n var e = Symbol.for(\"react.transitional.element\"), t = Symbol.for(\"react.portal\"), o = Symbol.for(\"react.fragment\"), s = Symbol.for(\"react.strict_mode\"), r = Symbol.for(\"react.profiler\"), n = Symbol.for(\"react.consumer\"), i = Symbol.for(\"react.context\"), v = Symbol.for(\"react.forward_ref\"), y = Symbol.for(\"react.suspense\"), b = Symbol.for(\"react.memo\"), x = Symbol.for(\"react.lazy\"), k = Symbol.iterator;\n function F(c) {\n return c === null || typeof c != \"object\" ? null : (c = k && c[k] || c[\"@@iterator\"], typeof c == \"function\" ? c : null);\n }\n var H = {\n isMounted: function() {\n return !1;\n },\n enqueueForceUpdate: function() {\n },\n enqueueReplaceState: function() {\n },\n enqueueSetState: function() {\n }\n }, j = Object.assign, U = {};\n function O(c, f, $) {\n this.props = c, this.context = f, this.refs = U, this.updater = $ || H;\n }\n O.prototype.isReactComponent = {}, O.prototype.setState = function(c, f) {\n if (typeof c != \"object\" && typeof c != \"function\" && c != null)\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, c, f, \"setState\");\n }, O.prototype.forceUpdate = function(c) {\n this.updater.enqueueForceUpdate(this, c, \"forceUpdate\");\n };\n function M() {\n }\n M.prototype = O.prototype;\n function X(c, f, $) {\n this.props = c, this.context = f, this.refs = U, this.updater = $ || H;\n }\n var J = X.prototype = new M();\n J.constructor = X, j(J, O.prototype), J.isPureReactComponent = !0;\n var ie = Array.isArray, N = { H: null, A: null, T: null, S: null, V: null }, Le = Object.prototype.hasOwnProperty;\n function Ie(c, f, $, C, T, Y) {\n return $ = Y.ref, {\n $$typeof: e,\n type: c,\n key: f,\n ref: $ !== void 0 ? $ : null,\n props: Y\n };\n }\n function ve(c, f) {\n return Ie(\n c.type,\n f,\n void 0,\n void 0,\n void 0,\n c.props\n );\n }\n function ae(c) {\n return typeof c == \"object\" && c !== null && c.$$typeof === e;\n }\n function We(c) {\n var f = { \"=\": \"=0\", \":\": \"=2\" };\n return \"$\" + c.replace(/[=:]/g, function($) {\n return f[$];\n });\n }\n var V = /\\/+/g;\n function q(c, f) {\n return typeof c == \"object\" && c !== null && c.key != null ? We(\"\" + c.key) : f.toString(36);\n }\n function we() {\n }\n function le(c) {\n switch (c.status) {\n case \"fulfilled\":\n return c.value;\n case \"rejected\":\n throw c.reason;\n default:\n switch (typeof c.status == \"string\" ? c.then(we, we) : (c.status = \"pending\", c.then(\n function(f) {\n c.status === \"pending\" && (c.status = \"fulfilled\", c.value = f);\n },\n function(f) {\n c.status === \"pending\" && (c.status = \"rejected\", c.reason = f);\n }\n )), c.status) {\n case \"fulfilled\":\n return c.value;\n case \"rejected\":\n throw c.reason;\n }\n }\n throw c;\n }\n function te(c, f, $, C, T) {\n var Y = typeof c;\n (Y === \"undefined\" || Y === \"boolean\") && (c = null);\n var R = !1;\n if (c === null) R = !0;\n else\n switch (Y) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n R = !0;\n break;\n case \"object\":\n switch (c.$$typeof) {\n case e:\n case t:\n R = !0;\n break;\n case x:\n return R = c._init, te(\n R(c._payload),\n f,\n $,\n C,\n T\n );\n }\n }\n if (R)\n return T = T(c), R = C === \"\" ? \".\" + q(c, 0) : C, ie(T) ? ($ = \"\", R != null && ($ = R.replace(V, \"$&/\") + \"/\"), te(T, f, $, \"\", function(wt) {\n return wt;\n })) : T != null && (ae(T) && (T = ve(\n T,\n $ + (T.key == null || c && c.key === T.key ? \"\" : (\"\" + T.key).replace(\n V,\n \"$&/\"\n ) + \"/\") + R\n )), f.push(T)), 1;\n R = 0;\n var _e = C === \"\" ? \".\" : C + \":\";\n if (ie(c))\n for (var K = 0; K < c.length; K++)\n C = c[K], Y = _e + q(C, K), R += te(\n C,\n f,\n $,\n Y,\n T\n );\n else if (K = F(c), typeof K == \"function\")\n for (c = K.call(c), K = 0; !(C = c.next()).done; )\n C = C.value, Y = _e + q(C, K++), R += te(\n C,\n f,\n $,\n Y,\n T\n );\n else if (Y === \"object\") {\n if (typeof c.then == \"function\")\n return te(\n le(c),\n f,\n $,\n C,\n T\n );\n throw f = String(c), Error(\n \"Objects are not valid as a React child (found: \" + (f === \"[object Object]\" ? \"object with keys {\" + Object.keys(c).join(\", \") + \"}\" : f) + \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return R;\n }\n function oe(c, f, $) {\n if (c == null) return c;\n var C = [], T = 0;\n return te(c, C, \"\", \"\", function(Y) {\n return f.call($, Y, T++);\n }), C;\n }\n function Te(c) {\n if (c._status === -1) {\n var f = c._result;\n f = f(), f.then(\n function($) {\n (c._status === 0 || c._status === -1) && (c._status = 1, c._result = $);\n },\n function($) {\n (c._status === 0 || c._status === -1) && (c._status = 2, c._result = $);\n }\n ), c._status === -1 && (c._status = 0, c._result = f);\n }\n if (c._status === 1) return c._result.default;\n throw c._result;\n }\n var ye = typeof reportError == \"function\" ? reportError : function(c) {\n if (typeof window == \"object\" && typeof window.ErrorEvent == \"function\") {\n var f = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message: typeof c == \"object\" && c !== null && typeof c.message == \"string\" ? String(c.message) : String(c),\n error: c\n });\n if (!window.dispatchEvent(f)) return;\n } else if (typeof process == \"object\" && typeof process.emit == \"function\") {\n process.emit(\"uncaughtException\", c);\n return;\n }\n console.error(c);\n };\n function xe() {\n }\n return S.Children = {\n map: oe,\n forEach: function(c, f, $) {\n oe(\n c,\n function() {\n f.apply(this, arguments);\n },\n $\n );\n },\n count: function(c) {\n var f = 0;\n return oe(c, function() {\n f++;\n }), f;\n },\n toArray: function(c) {\n return oe(c, function(f) {\n return f;\n }) || [];\n },\n only: function(c) {\n if (!ae(c))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return c;\n }\n }, S.Component = O, S.Fragment = o, S.Profiler = r, S.PureComponent = X, S.StrictMode = s, S.Suspense = y, S.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = N, S.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function(c) {\n return N.H.useMemoCache(c);\n }\n }, S.cache = function(c) {\n return function() {\n return c.apply(null, arguments);\n };\n }, S.cloneElement = function(c, f, $) {\n if (c == null)\n throw Error(\n \"The argument must be a React element, but you passed \" + c + \".\"\n );\n var C = j({}, c.props), T = c.key, Y = void 0;\n if (f != null)\n for (R in f.ref !== void 0 && (Y = void 0), f.key !== void 0 && (T = \"\" + f.key), f)\n !Le.call(f, R) || R === \"key\" || R === \"__self\" || R === \"__source\" || R === \"ref\" && f.ref === void 0 || (C[R] = f[R]);\n var R = arguments.length - 2;\n if (R === 1) C.children = $;\n else if (1 < R) {\n for (var _e = Array(R), K = 0; K < R; K++)\n _e[K] = arguments[K + 2];\n C.children = _e;\n }\n return Ie(c.type, T, void 0, void 0, Y, C);\n }, S.createContext = function(c) {\n return c = {\n $$typeof: i,\n _currentValue: c,\n _currentValue2: c,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n }, c.Provider = c, c.Consumer = {\n $$typeof: n,\n _context: c\n }, c;\n }, S.createElement = function(c, f, $) {\n var C, T = {}, Y = null;\n if (f != null)\n for (C in f.key !== void 0 && (Y = \"\" + f.key), f)\n Le.call(f, C) && C !== \"key\" && C !== \"__self\" && C !== \"__source\" && (T[C] = f[C]);\n var R = arguments.length - 2;\n if (R === 1) T.children = $;\n else if (1 < R) {\n for (var _e = Array(R), K = 0; K < R; K++)\n _e[K] = arguments[K + 2];\n T.children = _e;\n }\n if (c && c.defaultProps)\n for (C in R = c.defaultProps, R)\n T[C] === void 0 && (T[C] = R[C]);\n return Ie(c, Y, void 0, void 0, null, T);\n }, S.createRef = function() {\n return { current: null };\n }, S.forwardRef = function(c) {\n return { $$typeof: v, render: c };\n }, S.isValidElement = ae, S.lazy = function(c) {\n return {\n $$typeof: x,\n _payload: { _status: -1, _result: c },\n _init: Te\n };\n }, S.memo = function(c, f) {\n return {\n $$typeof: b,\n type: c,\n compare: f === void 0 ? null : f\n };\n }, S.startTransition = function(c) {\n var f = N.T, $ = {};\n N.T = $;\n try {\n var C = c(), T = N.S;\n T !== null && T($, C), typeof C == \"object\" && C !== null && typeof C.then == \"function\" && C.then(xe, ye);\n } catch (Y) {\n ye(Y);\n } finally {\n N.T = f;\n }\n }, S.unstable_useCacheRefresh = function() {\n return N.H.useCacheRefresh();\n }, S.use = function(c) {\n return N.H.use(c);\n }, S.useActionState = function(c, f, $) {\n return N.H.useActionState(c, f, $);\n }, S.useCallback = function(c, f) {\n return N.H.useCallback(c, f);\n }, S.useContext = function(c) {\n return N.H.useContext(c);\n }, S.useDebugValue = function() {\n }, S.useDeferredValue = function(c, f) {\n return N.H.useDeferredValue(c, f);\n }, S.useEffect = function(c, f, $) {\n var C = N.H;\n if (typeof $ == \"function\")\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return C.useEffect(c, f);\n }, S.useId = function() {\n return N.H.useId();\n }, S.useImperativeHandle = function(c, f, $) {\n return N.H.useImperativeHandle(c, f, $);\n }, S.useInsertionEffect = function(c, f) {\n return N.H.useInsertionEffect(c, f);\n }, S.useLayoutEffect = function(c, f) {\n return N.H.useLayoutEffect(c, f);\n }, S.useMemo = function(c, f) {\n return N.H.useMemo(c, f);\n }, S.useOptimistic = function(c, f) {\n return N.H.useOptimistic(c, f);\n }, S.useReducer = function(c, f, $) {\n return N.H.useReducer(c, f, $);\n }, S.useRef = function(c) {\n return N.H.useRef(c);\n }, S.useState = function(c) {\n return N.H.useState(c);\n }, S.useSyncExternalStore = function(c, f, $) {\n return N.H.useSyncExternalStore(\n c,\n f,\n $\n );\n }, S.useTransition = function() {\n return N.H.useTransition();\n }, S.version = \"19.1.1\", S;\n}\nvar Yt = { exports: {} };\n/**\n * @license React\n * react.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nYt.exports;\nvar Dn;\nfunction Ov() {\n return Dn || (Dn = 1, function(e, t) {\n process.env.NODE_ENV !== \"production\" && function() {\n function o(a, u) {\n Object.defineProperty(n.prototype, a, {\n get: function() {\n console.warn(\n \"%s(...) is deprecated in plain JavaScript React classes. %s\",\n u[0],\n u[1]\n );\n }\n });\n }\n function s(a) {\n return a === null || typeof a != \"object\" ? null : (a = vo && a[vo] || a[\"@@iterator\"], typeof a == \"function\" ? a : null);\n }\n function r(a, u) {\n a = (a = a.constructor) && (a.displayName || a.name) || \"ReactClass\";\n var m = a + \".\" + u;\n fo[m] || (console.error(\n \"Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.\",\n u,\n a\n ), fo[m] = !0);\n }\n function n(a, u, m) {\n this.props = a, this.context = u, this.refs = Kr, this.updater = m || mo;\n }\n function i() {\n }\n function v(a, u, m) {\n this.props = a, this.context = u, this.refs = Kr, this.updater = m || mo;\n }\n function y(a) {\n return \"\" + a;\n }\n function b(a) {\n try {\n y(a);\n var u = !1;\n } catch {\n u = !0;\n }\n if (u) {\n u = console;\n var m = u.error, w = typeof Symbol == \"function\" && Symbol.toStringTag && a[Symbol.toStringTag] || a.constructor.name || \"Object\";\n return m.call(\n u,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n w\n ), y(a);\n }\n }\n function x(a) {\n if (a == null) return null;\n if (typeof a == \"function\")\n return a.$$typeof === Bi ? null : a.displayName || a.name || null;\n if (typeof a == \"string\") return a;\n switch (a) {\n case c:\n return \"Fragment\";\n case $:\n return \"Profiler\";\n case f:\n return \"StrictMode\";\n case R:\n return \"Suspense\";\n case _e:\n return \"SuspenseList\";\n case qi:\n return \"Activity\";\n }\n if (typeof a == \"object\")\n switch (typeof a.tag == \"number\" && console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ), a.$$typeof) {\n case xe:\n return \"Portal\";\n case T:\n return (a.displayName || \"Context\") + \".Provider\";\n case C:\n return (a._context.displayName || \"Context\") + \".Consumer\";\n case Y:\n var u = a.render;\n return a = a.displayName, a || (a = u.displayName || u.name || \"\", a = a !== \"\" ? \"ForwardRef(\" + a + \")\" : \"ForwardRef\"), a;\n case K:\n return u = a.displayName || null, u !== null ? u : x(a.type) || \"Memo\";\n case wt:\n u = a._payload, a = a._init;\n try {\n return x(a(u));\n } catch {\n }\n }\n return null;\n }\n function k(a) {\n if (a === c) return \"<>\";\n if (typeof a == \"object\" && a !== null && a.$$typeof === wt)\n return \"<...>\";\n try {\n var u = x(a);\n return u ? \"<\" + u + \">\" : \"<...>\";\n } catch {\n return \"<...>\";\n }\n }\n function F() {\n var a = L.A;\n return a === null ? null : a.getOwner();\n }\n function H() {\n return Error(\"react-stack-top-frame\");\n }\n function j(a) {\n if (hr.call(a, \"key\")) {\n var u = Object.getOwnPropertyDescriptor(a, \"key\").get;\n if (u && u.isReactWarning) return !1;\n }\n return a.key !== void 0;\n }\n function U(a, u) {\n function m() {\n xo || (xo = !0, console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n u\n ));\n }\n m.isReactWarning = !0, Object.defineProperty(a, \"key\", {\n get: m,\n configurable: !0\n });\n }\n function O() {\n var a = x(this.type);\n return Co[a] || (Co[a] = !0, console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n )), a = this.props.ref, a !== void 0 ? a : null;\n }\n function M(a, u, m, w, _, I, P, B) {\n return m = I.ref, a = {\n $$typeof: ye,\n type: a,\n key: u,\n props: I,\n _owner: _\n }, (m !== void 0 ? m : null) !== null ? Object.defineProperty(a, \"ref\", {\n enumerable: !1,\n get: O\n }) : Object.defineProperty(a, \"ref\", { enumerable: !1, value: null }), a._store = {}, Object.defineProperty(a._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n }), Object.defineProperty(a, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n }), Object.defineProperty(a, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: P\n }), Object.defineProperty(a, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: B\n }), Object.freeze && (Object.freeze(a.props), Object.freeze(a)), a;\n }\n function X(a, u) {\n return u = M(\n a.type,\n u,\n void 0,\n void 0,\n a._owner,\n a.props,\n a._debugStack,\n a._debugTask\n ), a._store && (u._store.validated = a._store.validated), u;\n }\n function J(a) {\n return typeof a == \"object\" && a !== null && a.$$typeof === ye;\n }\n function ie(a) {\n var u = { \"=\": \"=0\", \":\": \"=2\" };\n return \"$\" + a.replace(/[=:]/g, function(m) {\n return u[m];\n });\n }\n function N(a, u) {\n return typeof a == \"object\" && a !== null && a.key != null ? (b(a.key), ie(\"\" + a.key)) : u.toString(36);\n }\n function Le() {\n }\n function Ie(a) {\n switch (a.status) {\n case \"fulfilled\":\n return a.value;\n case \"rejected\":\n throw a.reason;\n default:\n switch (typeof a.status == \"string\" ? a.then(Le, Le) : (a.status = \"pending\", a.then(\n function(u) {\n a.status === \"pending\" && (a.status = \"fulfilled\", a.value = u);\n },\n function(u) {\n a.status === \"pending\" && (a.status = \"rejected\", a.reason = u);\n }\n )), a.status) {\n case \"fulfilled\":\n return a.value;\n case \"rejected\":\n throw a.reason;\n }\n }\n throw a;\n }\n function ve(a, u, m, w, _) {\n var I = typeof a;\n (I === \"undefined\" || I === \"boolean\") && (a = null);\n var P = !1;\n if (a === null) P = !0;\n else\n switch (I) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n P = !0;\n break;\n case \"object\":\n switch (a.$$typeof) {\n case ye:\n case xe:\n P = !0;\n break;\n case wt:\n return P = a._init, ve(\n P(a._payload),\n u,\n m,\n w,\n _\n );\n }\n }\n if (P) {\n P = a, _ = _(P);\n var B = w === \"\" ? \".\" + N(P, 0) : w;\n return wo(_) ? (m = \"\", B != null && (m = B.replace(Eo, \"$&/\") + \"/\"), ve(_, u, m, \"\", function(je) {\n return je;\n })) : _ != null && (J(_) && (_.key != null && (P && P.key === _.key || b(_.key)), m = X(\n _,\n m + (_.key == null || P && P.key === _.key ? \"\" : (\"\" + _.key).replace(\n Eo,\n \"$&/\"\n ) + \"/\") + B\n ), w !== \"\" && P != null && J(P) && P.key == null && P._store && !P._store.validated && (m._store.validated = 2), _ = m), u.push(_)), 1;\n }\n if (P = 0, B = w === \"\" ? \".\" : w + \":\", wo(a))\n for (var A = 0; A < a.length; A++)\n w = a[A], I = B + N(w, A), P += ve(\n w,\n u,\n m,\n I,\n _\n );\n else if (A = s(a), typeof A == \"function\")\n for (A === a.entries && ($o || console.warn(\n \"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"\n ), $o = !0), a = A.call(a), A = 0; !(w = a.next()).done; )\n w = w.value, I = B + N(w, A++), P += ve(\n w,\n u,\n m,\n I,\n _\n );\n else if (I === \"object\") {\n if (typeof a.then == \"function\")\n return ve(\n Ie(a),\n u,\n m,\n w,\n _\n );\n throw u = String(a), Error(\n \"Objects are not valid as a React child (found: \" + (u === \"[object Object]\" ? \"object with keys {\" + Object.keys(a).join(\", \") + \"}\" : u) + \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return P;\n }\n function ae(a, u, m) {\n if (a == null) return a;\n var w = [], _ = 0;\n return ve(a, w, \"\", \"\", function(I) {\n return u.call(m, I, _++);\n }), w;\n }\n function We(a) {\n if (a._status === -1) {\n var u = a._result;\n u = u(), u.then(\n function(m) {\n (a._status === 0 || a._status === -1) && (a._status = 1, a._result = m);\n },\n function(m) {\n (a._status === 0 || a._status === -1) && (a._status = 2, a._result = m);\n }\n ), a._status === -1 && (a._status = 0, a._result = u);\n }\n if (a._status === 1)\n return u = a._result, u === void 0 && console.error(\n `lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n const MyComponent = lazy(() => import('./MyComponent'))\n\nDid you accidentally put curly braces around the import?`,\n u\n ), \"default\" in u || console.error(\n `lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n const MyComponent = lazy(() => import('./MyComponent'))`,\n u\n ), u.default;\n throw a._result;\n }\n function V() {\n var a = L.H;\n return a === null && console.error(\n `Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`\n ), a;\n }\n function q() {\n }\n function we(a) {\n if (vr === null)\n try {\n var u = (\"require\" + Math.random()).slice(0, 7);\n vr = (e && e[u]).call(\n e,\n \"timers\"\n ).setImmediate;\n } catch {\n vr = function(w) {\n Oo === !1 && (Oo = !0, typeof MessageChannel > \"u\" && console.error(\n \"This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning.\"\n ));\n var _ = new MessageChannel();\n _.port1.onmessage = w, _.port2.postMessage(void 0);\n };\n }\n return vr(a);\n }\n function le(a) {\n return 1 < a.length && typeof AggregateError == \"function\" ? new AggregateError(a) : a[0];\n }\n function te(a, u) {\n u !== fr - 1 && console.error(\n \"You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. \"\n ), fr = u;\n }\n function oe(a, u, m) {\n var w = L.actQueue;\n if (w !== null)\n if (w.length !== 0)\n try {\n Te(w), we(function() {\n return oe(a, u, m);\n });\n return;\n } catch (_) {\n L.thrownErrors.push(_);\n }\n else L.actQueue = null;\n 0 < L.thrownErrors.length ? (w = le(L.thrownErrors), L.thrownErrors.length = 0, m(w)) : u(a);\n }\n function Te(a) {\n if (!Wr) {\n Wr = !0;\n var u = 0;\n try {\n for (; u < a.length; u++) {\n var m = a[u];\n do {\n L.didUsePromise = !1;\n var w = m(!1);\n if (w !== null) {\n if (L.didUsePromise) {\n a[u] = m, a.splice(0, u);\n return;\n }\n m = w;\n } else break;\n } while (!0);\n }\n a.length = 0;\n } catch (_) {\n a.splice(0, u + 1), L.thrownErrors.push(_);\n } finally {\n Wr = !1;\n }\n }\n }\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < \"u\" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == \"function\" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n var ye = Symbol.for(\"react.transitional.element\"), xe = Symbol.for(\"react.portal\"), c = Symbol.for(\"react.fragment\"), f = Symbol.for(\"react.strict_mode\"), $ = Symbol.for(\"react.profiler\"), C = Symbol.for(\"react.consumer\"), T = Symbol.for(\"react.context\"), Y = Symbol.for(\"react.forward_ref\"), R = Symbol.for(\"react.suspense\"), _e = Symbol.for(\"react.suspense_list\"), K = Symbol.for(\"react.memo\"), wt = Symbol.for(\"react.lazy\"), qi = Symbol.for(\"react.activity\"), vo = Symbol.iterator, fo = {}, mo = {\n isMounted: function() {\n return !1;\n },\n enqueueForceUpdate: function(a) {\n r(a, \"forceUpdate\");\n },\n enqueueReplaceState: function(a) {\n r(a, \"replaceState\");\n },\n enqueueSetState: function(a) {\n r(a, \"setState\");\n }\n }, bo = Object.assign, Kr = {};\n Object.freeze(Kr), n.prototype.isReactComponent = {}, n.prototype.setState = function(a, u) {\n if (typeof a != \"object\" && typeof a != \"function\" && a != null)\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, a, u, \"setState\");\n }, n.prototype.forceUpdate = function(a) {\n this.updater.enqueueForceUpdate(this, a, \"forceUpdate\");\n };\n var ce = {\n isMounted: [\n \"isMounted\",\n \"Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.\"\n ],\n replaceState: [\n \"replaceState\",\n \"Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236).\"\n ]\n }, pr;\n for (pr in ce)\n ce.hasOwnProperty(pr) && o(pr, ce[pr]);\n i.prototype = n.prototype, ce = v.prototype = new i(), ce.constructor = v, bo(ce, n.prototype), ce.isPureReactComponent = !0;\n var wo = Array.isArray, Bi = Symbol.for(\"react.client.reference\"), L = {\n H: null,\n A: null,\n T: null,\n S: null,\n V: null,\n actQueue: null,\n isBatchingLegacy: !1,\n didScheduleLegacyUpdate: !1,\n didUsePromise: !1,\n thrownErrors: [],\n getCurrentStack: null,\n recentlyCreatedOwnerStacks: 0\n }, hr = Object.prototype.hasOwnProperty, yo = console.createTask ? console.createTask : function() {\n return null;\n };\n ce = {\n react_stack_bottom_frame: function(a) {\n return a();\n }\n };\n var xo, _o, Co = {}, Fi = ce.react_stack_bottom_frame.bind(\n ce,\n H\n )(), Vi = yo(k(H)), $o = !1, Eo = /\\/+/g, So = typeof reportError == \"function\" ? reportError : function(a) {\n if (typeof window == \"object\" && typeof window.ErrorEvent == \"function\") {\n var u = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message: typeof a == \"object\" && a !== null && typeof a.message == \"string\" ? String(a.message) : String(a),\n error: a\n });\n if (!window.dispatchEvent(u)) return;\n } else if (typeof process == \"object\" && typeof process.emit == \"function\") {\n process.emit(\"uncaughtException\", a);\n return;\n }\n console.error(a);\n }, Oo = !1, vr = null, fr = 0, mr = !1, Wr = !1, Po = typeof queueMicrotask == \"function\" ? function(a) {\n queueMicrotask(function() {\n return queueMicrotask(a);\n });\n } : we;\n ce = Object.freeze({\n __proto__: null,\n c: function(a) {\n return V().useMemoCache(a);\n }\n }), t.Children = {\n map: ae,\n forEach: function(a, u, m) {\n ae(\n a,\n function() {\n u.apply(this, arguments);\n },\n m\n );\n },\n count: function(a) {\n var u = 0;\n return ae(a, function() {\n u++;\n }), u;\n },\n toArray: function(a) {\n return ae(a, function(u) {\n return u;\n }) || [];\n },\n only: function(a) {\n if (!J(a))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return a;\n }\n }, t.Component = n, t.Fragment = c, t.Profiler = $, t.PureComponent = v, t.StrictMode = f, t.Suspense = R, t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = L, t.__COMPILER_RUNTIME = ce, t.act = function(a) {\n var u = L.actQueue, m = fr;\n fr++;\n var w = L.actQueue = u !== null ? u : [], _ = !1;\n try {\n var I = a();\n } catch (A) {\n L.thrownErrors.push(A);\n }\n if (0 < L.thrownErrors.length)\n throw te(u, m), a = le(L.thrownErrors), L.thrownErrors.length = 0, a;\n if (I !== null && typeof I == \"object\" && typeof I.then == \"function\") {\n var P = I;\n return Po(function() {\n _ || mr || (mr = !0, console.error(\n \"You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);\"\n ));\n }), {\n then: function(A, je) {\n _ = !0, P.then(\n function(yt) {\n if (te(u, m), m === 0) {\n try {\n Te(w), we(function() {\n return oe(\n yt,\n A,\n je\n );\n });\n } catch (Gi) {\n L.thrownErrors.push(Gi);\n }\n if (0 < L.thrownErrors.length) {\n var Hi = le(\n L.thrownErrors\n );\n L.thrownErrors.length = 0, je(Hi);\n }\n } else A(yt);\n },\n function(yt) {\n te(u, m), 0 < L.thrownErrors.length && (yt = le(\n L.thrownErrors\n ), L.thrownErrors.length = 0), je(yt);\n }\n );\n }\n };\n }\n var B = I;\n if (te(u, m), m === 0 && (Te(w), w.length !== 0 && Po(function() {\n _ || mr || (mr = !0, console.error(\n \"A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\\n\\nawait act(() => ...)\"\n ));\n }), L.actQueue = null), 0 < L.thrownErrors.length)\n throw a = le(L.thrownErrors), L.thrownErrors.length = 0, a;\n return {\n then: function(A, je) {\n _ = !0, m === 0 ? (L.actQueue = w, we(function() {\n return oe(\n B,\n A,\n je\n );\n })) : A(B);\n }\n };\n }, t.cache = function(a) {\n return function() {\n return a.apply(null, arguments);\n };\n }, t.captureOwnerStack = function() {\n var a = L.getCurrentStack;\n return a === null ? null : a();\n }, t.cloneElement = function(a, u, m) {\n if (a == null)\n throw Error(\n \"The argument must be a React element, but you passed \" + a + \".\"\n );\n var w = bo({}, a.props), _ = a.key, I = a._owner;\n if (u != null) {\n var P;\n e: {\n if (hr.call(u, \"ref\") && (P = Object.getOwnPropertyDescriptor(\n u,\n \"ref\"\n ).get) && P.isReactWarning) {\n P = !1;\n break e;\n }\n P = u.ref !== void 0;\n }\n P && (I = F()), j(u) && (b(u.key), _ = \"\" + u.key);\n for (B in u)\n !hr.call(u, B) || B === \"key\" || B === \"__self\" || B === \"__source\" || B === \"ref\" && u.ref === void 0 || (w[B] = u[B]);\n }\n var B = arguments.length - 2;\n if (B === 1) w.children = m;\n else if (1 < B) {\n P = Array(B);\n for (var A = 0; A < B; A++)\n P[A] = arguments[A + 2];\n w.children = P;\n }\n for (w = M(\n a.type,\n _,\n void 0,\n void 0,\n I,\n w,\n a._debugStack,\n a._debugTask\n ), _ = 2; _ < arguments.length; _++)\n I = arguments[_], J(I) && I._store && (I._store.validated = 1);\n return w;\n }, t.createContext = function(a) {\n return a = {\n $$typeof: T,\n _currentValue: a,\n _currentValue2: a,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n }, a.Provider = a, a.Consumer = {\n $$typeof: C,\n _context: a\n }, a._currentRenderer = null, a._currentRenderer2 = null, a;\n }, t.createElement = function(a, u, m) {\n for (var w = 2; w < arguments.length; w++) {\n var _ = arguments[w];\n J(_) && _._store && (_._store.validated = 1);\n }\n if (w = {}, _ = null, u != null)\n for (A in _o || !(\"__self\" in u) || \"key\" in u || (_o = !0, console.warn(\n \"Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform\"\n )), j(u) && (b(u.key), _ = \"\" + u.key), u)\n hr.call(u, A) && A !== \"key\" && A !== \"__self\" && A !== \"__source\" && (w[A] = u[A]);\n var I = arguments.length - 2;\n if (I === 1) w.children = m;\n else if (1 < I) {\n for (var P = Array(I), B = 0; B < I; B++)\n P[B] = arguments[B + 2];\n Object.freeze && Object.freeze(P), w.children = P;\n }\n if (a && a.defaultProps)\n for (A in I = a.defaultProps, I)\n w[A] === void 0 && (w[A] = I[A]);\n _ && U(\n w,\n typeof a == \"function\" ? a.displayName || a.name || \"Unknown\" : a\n );\n var A = 1e4 > L.recentlyCreatedOwnerStacks++;\n return M(\n a,\n _,\n void 0,\n void 0,\n F(),\n w,\n A ? Error(\"react-stack-top-frame\") : Fi,\n A ? yo(k(a)) : Vi\n );\n }, t.createRef = function() {\n var a = { current: null };\n return Object.seal(a), a;\n }, t.forwardRef = function(a) {\n a != null && a.$$typeof === K ? console.error(\n \"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).\"\n ) : typeof a != \"function\" ? console.error(\n \"forwardRef requires a render function but was given %s.\",\n a === null ? \"null\" : typeof a\n ) : a.length !== 0 && a.length !== 2 && console.error(\n \"forwardRef render functions accept exactly two parameters: props and ref. %s\",\n a.length === 1 ? \"Did you forget to use the ref parameter?\" : \"Any additional parameter will be undefined.\"\n ), a != null && a.defaultProps != null && console.error(\n \"forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?\"\n );\n var u = { $$typeof: Y, render: a }, m;\n return Object.defineProperty(u, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function() {\n return m;\n },\n set: function(w) {\n m = w, a.name || a.displayName || (Object.defineProperty(a, \"name\", { value: w }), a.displayName = w);\n }\n }), u;\n }, t.isValidElement = J, t.lazy = function(a) {\n return {\n $$typeof: wt,\n _payload: { _status: -1, _result: a },\n _init: We\n };\n }, t.memo = function(a, u) {\n a == null && console.error(\n \"memo: The first argument must be a component. Instead received: %s\",\n a === null ? \"null\" : typeof a\n ), u = {\n $$typeof: K,\n type: a,\n compare: u === void 0 ? null : u\n };\n var m;\n return Object.defineProperty(u, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function() {\n return m;\n },\n set: function(w) {\n m = w, a.name || a.displayName || (Object.defineProperty(a, \"name\", { value: w }), a.displayName = w);\n }\n }), u;\n }, t.startTransition = function(a) {\n var u = L.T, m = {};\n L.T = m, m._updatedFibers = /* @__PURE__ */ new Set();\n try {\n var w = a(), _ = L.S;\n _ !== null && _(m, w), typeof w == \"object\" && w !== null && typeof w.then == \"function\" && w.then(q, So);\n } catch (I) {\n So(I);\n } finally {\n u === null && m._updatedFibers && (a = m._updatedFibers.size, m._updatedFibers.clear(), 10 < a && console.warn(\n \"Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.\"\n )), L.T = u;\n }\n }, t.unstable_useCacheRefresh = function() {\n return V().useCacheRefresh();\n }, t.use = function(a) {\n return V().use(a);\n }, t.useActionState = function(a, u, m) {\n return V().useActionState(\n a,\n u,\n m\n );\n }, t.useCallback = function(a, u) {\n return V().useCallback(a, u);\n }, t.useContext = function(a) {\n var u = V();\n return a.$$typeof === C && console.error(\n \"Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?\"\n ), u.useContext(a);\n }, t.useDebugValue = function(a, u) {\n return V().useDebugValue(a, u);\n }, t.useDeferredValue = function(a, u) {\n return V().useDeferredValue(a, u);\n }, t.useEffect = function(a, u, m) {\n a == null && console.warn(\n \"React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n var w = V();\n if (typeof m == \"function\")\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return w.useEffect(a, u);\n }, t.useId = function() {\n return V().useId();\n }, t.useImperativeHandle = function(a, u, m) {\n return V().useImperativeHandle(a, u, m);\n }, t.useInsertionEffect = function(a, u) {\n return a == null && console.warn(\n \"React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n ), V().useInsertionEffect(a, u);\n }, t.useLayoutEffect = function(a, u) {\n return a == null && console.warn(\n \"React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n ), V().useLayoutEffect(a, u);\n }, t.useMemo = function(a, u) {\n return V().useMemo(a, u);\n }, t.useOptimistic = function(a, u) {\n return V().useOptimistic(a, u);\n }, t.useReducer = function(a, u, m) {\n return V().useReducer(a, u, m);\n }, t.useRef = function(a) {\n return V().useRef(a);\n }, t.useState = function(a) {\n return V().useState(a);\n }, t.useSyncExternalStore = function(a, u, m) {\n return V().useSyncExternalStore(\n a,\n u,\n m\n );\n }, t.useTransition = function() {\n return V().useTransition();\n }, t.version = \"19.1.1\", typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < \"u\" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == \"function\" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n }();\n }(Yt, Yt.exports)), Yt.exports;\n}\nvar Rn;\nfunction Pv() {\n return Rn || (Rn = 1, process.env.NODE_ENV === \"production\" ? br.exports = Sv() : br.exports = Ov()), br.exports;\n}\nvar Dv = Pv();\nconst zi = /* @__PURE__ */ Ev(Dv), zv = Ui({\n tagName: \"rtg-button\",\n elementClass: fe,\n react: zi\n}), qv = Ui({\n tagName: \"rtg-checkbox\",\n elementClass: Ue,\n react: zi\n});\nexport {\n Et as Accordion,\n ls as AccordionContent,\n Ce as AccordionItem,\n as as AccordionTrigger,\n Ze as Alert,\n ns as AspectRatio,\n os as Avatar,\n ss as AvatarFallback,\n Kt as AvatarImage,\n Ct as Badge,\n wn as BreadCrumb,\n hn as BreadCrumbEllipsis,\n vn as BreadCrumbItem,\n As as BreadCrumbLink,\n fn as BreadCrumbList,\n mn as BreadCrumbSeparator,\n bn as BreadCrumbText,\n fe as Button,\n zv as ButtonReact,\n me as Calendar,\n hs as Card,\n ps as CardContent,\n gs as CardDescription,\n us as CardFooter,\n ds as CardHeader,\n cs as CardTitle,\n Qe as Carousel,\n Ue as Checkbox,\n qv as CheckboxReact,\n $r as Collapsible,\n Fo as CollapsibleContent,\n Bo as CollapsibleTrigger,\n se as ComboBox,\n jo as ComboBoxEmpty,\n Je as ComboBoxGroup,\n xr as ComboBoxInput,\n de as ComboBoxItem,\n vs as ComboBoxTrigger,\n fs as ComboBoxValue,\n Uo as Command,\n et as CommandEmpty,\n ze as CommandGroup,\n Cr as CommandInput,\n Pe as CommandItem,\n No as CommandList,\n tt as CommandSeparator,\n Cs as ContextMenu,\n rt as ContextMenuCheckboxItem,\n ws as ContextMenuContent,\n ys as ContextMenuGroup,\n xs as ContextMenuItem,\n st as ContextMenuRadioItem,\n _s as ContextMenuSeparator,\n zo as ContextMenuShortcut,\n qo as ContextTrigger,\n is as DatePicker,\n St as Dialog,\n Vo as DialogClose,\n $s as DialogContent,\n Ho as DialogFooter,\n Er as DialogHeader,\n Go as DialogOverlay,\n Yo as DialogTrigger,\n Zt as Drawer,\n sn as DrawerClose,\n Es as DrawerContent,\n Os as DrawerDescription,\n on as DrawerFooter,\n Dr as DrawerHeader,\n nn as DrawerOverlay,\n Ss as DrawerTitle,\n an as DrawerTrigger,\n Q as DropdownMenu,\n ot as DropdownMenuCheckboxItem,\n Or as DropdownMenuContent,\n Xt as DropdownMenuGroup,\n Ot as DropdownMenuItem,\n qe as DropdownMenuRadioItem,\n Ko as DropdownMenuSeparator,\n Wo as DropdownMenuTrigger,\n bs as HoverCard,\n Mo as HoverCardTrigger,\n _r as HoverContent,\n at as InputOtp,\n Rs as InputOtpGroup,\n ks as InputOtpSeparator,\n it as InputOtpSlot,\n _t as Label,\n rr as LightSampleDemo,\n En as Menubar,\n ge as MenubarCheckboxItem,\n kt as MenubarContent,\n Ye as MenubarGroup,\n ke as MenubarItem,\n Ge as MenubarMenu,\n ue as MenubarRadioItem,\n lt as MenubarSeparator,\n Cn as MenubarShortcut,\n $n as MenubarTrigger,\n _n as NavigationMenu,\n Rt as NavigationMenuContent,\n He as NavigationMenuItem,\n Ls as NavigationMenuLink,\n yn as NavigationMenuList,\n xn as NavigationMenuTrigger,\n tn as Pagination,\n Zo as PaginationContent,\n Qo as PaginationEllipsis,\n Pr as PaginationItem,\n $e as PaginationLink,\n Jo as PaginationNext,\n en as PaginationPrevious,\n Wt as Popover,\n $t as PopoverContent,\n To as PopoverTrigger,\n yr as Progress,\n Xo as RadioGroup,\n nt as RadioGroupItem,\n Mr as RtgForm,\n Is as RtgFormController,\n Ts as RtgFormDescription,\n Ae as RtgFormField,\n js as RtgFormItem,\n Tr as RtgFormLabel,\n jr as RtgFormMessage,\n re as RtgInput,\n Ms as RtgScrollArea,\n Sn as RtgSkeleton,\n Pt as Select,\n Ps as SelectGroup,\n Fe as SelectItem,\n cn as SelectLabel,\n Rr as SelectList,\n kr as SelectSeperator,\n dn as SelectTrigger,\n Ds as SelectValue,\n ms as Separator,\n Sr as Switch,\n lo as TOGGLE_GROUP_SIZE,\n Ir as TOGGLE_GROUP_TYPE,\n ao as TOGGLE_GROUP_VARIANT,\n Oi as TOGGLE_SIZE,\n Pi as TOGGLE_VARIANT,\n Ve as Tab,\n Lr as TabContent,\n Jt as TabList,\n tr as Table,\n er as TabsTrigger,\n Be as TextArea,\n Ar as Toast,\n Qt as ToastAction,\n un as ToastDescription,\n gn as ToastTitle,\n pn as ToastTrigger,\n Dt as ToastViewPort,\n De as Toggle,\n Re as ToggleGroup\n};\n","//Input\r\nexport const inputContainerDefaultClass = \"sb-mb-4\";\r\nexport const checkboxRowDefaultClass = \"sb-flex sb-items-center\";\r\nexport const errorDefaultClass =\r\n \"sb-text-destructive sb-text-sm sb-mt-1 sb-error-anim\";\r\nexport const labelInputClass = \"sb-font-medium sb-text-sm\";\r\nexport const labelCheckBoxClass = \"sb-font-medium sb-text-sm sb-ml-2 sb-flex\";\r\n\r\nexport const hintDefaultClass = \"sb-text-sm sb-text-gray-500 sb-mt-1\";\r\n//Divider\r\nexport const dividerDefaultClass = \"sb-my-6\";\r\nexport const dividerLineDefaultClass = \"sb-flex-grow sb-border-t\";\r\nexport const dividerTextDefaultClass = \"sb-mx-4\";\r\n\r\n// watermark\r\nexport const watermarkDefaultClass = \"\";\r\n\r\n//loaders\r\nexport const linearLoaderClass =\r\n \"sb-relative sb-overflow-hidden sb-w-1/3 sb-h-2 sb-linear-bar\";\r\n\r\nexport const dashboardWidthClass =\r\n \"sb-min-w-[375px] sb-max-w-[609px] sb-w-[calc(100%-30px)] sm:sb-max-w-[735px] md:sb-w-[calc(100%-32px)] md:sb-max-w-[800px] lg:sb-min-w-[800px]\";\r\nexport const modalWidthClass =\r\n \"sb-h-[100%] sb-min-w-[375px] sb-max-w-[609px] sb-w-[calc(100vw-30px)] sm:sb-max-w-[735px] md:sb-w-[calc(100vw-32px)] md:sb-max-w-[800px] lg:sb-min-w-[800px]\";\r\n\r\nexport const modalContainerClass =\r\n \"sb-fixed sb-inset-0 sb-z-[9999] sb-flex sb-items-center sb-justify-center sb-p-4 sb-overflow-auto\";\r\n\r\nexport const modalLayoutClass =\r\n \"sb-w-fit sb-flex sb-max-h-[calc(100vh-60px)] sb-bg-background sb-shadow-2xl sb-ring-1 sb-ring-border sb-rounded-xl sb-overflow-hidden\";\r\n//dashboard\r\nexport const dashboardClass = \"sb-justify-self-center sb-rotate-0\";\r\n\r\nexport const pageClasses = \"sb-border-0 sb-bg-background !sb-m-0\";\r\n\r\nexport const modalClasses = \"sb-border sb-rounded-2xl sb-relative sb-py-6\";\r\n\r\nexport const tabTriggerClass =\r\n \"!sb-text-left sb-text-foreground sb-font-normal hover:!sb-bg-muted !sb-text-sm sb-rounded-md !sb-shadow-none data-[state=active]:!sb-bg-muted\";\r\n\r\nexport const horizontalTabClass =\r\n \"!sb-flex !sb-justify-start !sb-flex-nowrap !sb-w-full !rtg-grid-cols-2 !sb-gap-2 sb-mx-6\";\r\n\r\nexport const verticalTabClass = \"!sb-w-[160px] sb-gap-4 \";\r\n\r\nexport const tailwindSafeClasses =\r\n \"sb-w-screen sm:sb-w-[375px] sb-p-[40px_24px] sm:sb-shadow-[0_4px_4px_rgba(0,0,0,0.25)] sb-bg-background sm:sb-border sm:sb-border-border sm:sb-rounded-[8px] font-geist\";\r\n","export enum ELEMENT_IDS {\r\n USER_PROFILE_CARD_HEADER_CONTAINER = \"sb-user-profile-card-header-container\",\r\n USER_PROFILE_CONTAINER = \"sb-user-profile\",\r\n USER_PROFILE_SIDEBAR = \"sb-user-profile-sidebar-tabs\",\r\n USER_PROFILE_SIDEBAR_TABS = \"sb-user-profile-sidebar-tabs\",\r\n USER_PROFILE_SIDEBAR_BURGER_MENU = \"sb-user-profile-sidebar-burger-menu\",\r\n USER_PROFILE_INPUT_LABEL = \"sb-user-profile-input-label\",\r\n USER_PROFILE_INPUT_FIELD = \"sb-user-profile-input-field\",\r\n USER_PROFILE_EDIT_FORM = \"sb-user-profile-edit-form\",\r\n USER_PROFILE_CARD_CONTAINER = \"sb-user-profile-card-container\",\r\n USER_PROFILE_EDITABLE_INPUT_FIELD = \"sb-user-profile-editable-input-field\",\r\n USER_PROFILE_DEFAULT_BUTTON = \"sb-user-profile-default-button\",\r\n USER_PROFILE_OUTLINE_BUTTON = \"sb-user-profile-outline-button\",\r\n USER_PROFILE_OTP = \"sb-user-profile-otp\",\r\n USER_PROFILE_EDIT_BUTTON = \"sb-user-profile-edit-button\",\r\n}\r\n","import { Breakpoints } from \"@/types\";\r\n\r\nexport const BREAKPOINTS: Record<Breakpoints, string> = {\r\n xs: \"475px\", // Tailwind's unofficial 'xs' breakpoint\r\n sm: \"640px\",\r\n md: \"768px\",\r\n lg: \"1024px\",\r\n xl: \"1280px\",\r\n \"2xl\": \"1536px\",\r\n \"3xl\": \"1920px\", // optional high-res screens\r\n \"4xl\": \"2560px\", // ultra-wide / large monitors\r\n};\r\n","// Phone number: matches international formats, optional +, country code, spaces, dashes, parentheses\r\nexport const PHONE_REGEX = /^\\+?(\\d[\\d-.() ]+)?(\\([\\d-.() ]+\\))?[\\d-.() ]+\\d$/;\r\n\r\n// Email: standard RFC 5322-ish pattern\r\nexport const EMAIL_REGEX = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\r\n\r\n// Date/DateTime: ISO 8601-like YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS, optional timezone\r\nexport const DATE_REGEX = /^\\d{4}-\\d{2}-\\d{2}$/;\r\nexport const DATETIME_REGEX =\r\n /^\\d{4}-\\d{2}-\\d{2}[T ]\\d{2}:\\d{2}(:\\d{2})?(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})?$/;\r\n","import { UIElement, Container, Input, Checkbox, OTP } from \"@/types\";\r\nimport { SaasBaseLayout } from \"./layout\";\r\nimport { DATETIME_REGEX, EMAIL_REGEX, PHONE_REGEX } from \"@/constants\";\r\n\r\nexport function collectDataKeys(element: UIElement): Record<string, unknown> {\r\n const dataKeys: Record<string, unknown> = {};\r\n\r\n if (\r\n [\"input\", \"checkbox\", \"otp\"].includes(element.element_type) &&\r\n \"data_key\" in element\r\n ) {\r\n const props = element.properties as Input | Checkbox | OTP;\r\n dataKeys[element.data_key as string] =\r\n \"initial_value\" in props ? props.initial_value ?? (element.element_type === \"checkbox\" ? false : \"\") : \"\";\r\n }\r\n\r\n if (element.element_type === \"container\") {\r\n for (const child of (element.properties as Container).children) {\r\n Object.assign(dataKeys, collectDataKeys(child));\r\n }\r\n }\r\n\r\n return dataKeys;\r\n}\r\n\r\nexport function validateField(\r\n component: SaasBaseLayout,\r\n key: string,\r\n eventType: \"change\" | \"blur\" | \"submit\"\r\n) {\r\n const value = component.formData[key];\r\n const errors: string[] = [];\r\n\r\n const findElement = (element: UIElement): UIElement | null => {\r\n if (\r\n [\"input\", \"checkbox\", \"otp\"].includes(element.element_type) &&\r\n \"data_key\" in element &&\r\n element.data_key === key\r\n ) {\r\n return element;\r\n }\r\n if (element.element_type === \"container\") {\r\n for (const child of (element.properties as Container).children) {\r\n const found = findElement(child);\r\n if (found) return found;\r\n }\r\n }\r\n return null;\r\n };\r\n\r\n const element = component.renderSpec\r\n ? findElement(component.renderSpec.root_container)\r\n : null;\r\n\r\n if (!element || !(\"validation\" in element.properties)) return;\r\n\r\n const { validation } = element.properties as Input | Checkbox;\r\n\r\n // Skip if validation is not for this event\r\n if (\r\n !validation ||\r\n (eventType !== \"submit\" && validation.on_event !== eventType)\r\n )\r\n return;\r\n\r\n if (element.hidden) {\r\n // Remove key from errors entirely\r\n delete component.errors[key];\r\n return;\r\n }\r\n\r\n for (const rule of validation.rules) {\r\n if (element.hidden) continue;\r\n let isValid = true;\r\n\r\n switch (rule.type) {\r\n case \"required\":\r\n isValid = validateRequired(value, element);\r\n break;\r\n case \"min_length\":\r\n isValid = validateMinLength(value, rule.length);\r\n break;\r\n case \"max_length\":\r\n isValid = validateMaxLength(value, rule.length);\r\n break;\r\n case \"min_value\":\r\n isValid = validateMinValue(value, rule.value);\r\n break;\r\n case \"max_value\":\r\n isValid = validateMaxValue(value, rule.value);\r\n break;\r\n case \"regex\":\r\n isValid = validateRegex(value, rule.regex);\r\n break;\r\n case \"field_match\":\r\n isValid = validateFieldMatch(\r\n value,\r\n rule.field_match ? component.formData[rule.field_match] : undefined\r\n );\r\n break;\r\n case \"email\":\r\n isValid = validateEmail(value);\r\n break;\r\n case \"phone\":\r\n isValid = validatePhone(value);\r\n break;\r\n case \"date\":\r\n isValid = validateDate(value);\r\n break;\r\n default:\r\n isValid = true;\r\n }\r\n if (!isValid && rule.error_message) {\r\n errors.push(rule.error_message);\r\n }\r\n }\r\n\r\n component.errors = { ...component.errors, [key]: errors };\r\n}\r\n\r\nexport function validateAll(\r\n component: SaasBaseLayout,\r\n eventType: \"change\" | \"blur\" | \"submit\" = \"change\"\r\n) {\r\n const root = component.renderSpec?.root_container;\r\n if (!root) return;\r\n\r\n const keys = Object.keys(collectDataKeys(root));\r\n keys.forEach((key) => validateField(component, key, eventType));\r\n}\r\n\r\nexport function validateRequired(value: unknown, element?: UIElement): boolean {\r\n if (value === undefined || value === \"\" || value === false) return false;\r\n\r\n if (\r\n element &&\r\n element.element_type === \"input\" &&\r\n (element.properties as Input).type === \"tel\" &&\r\n typeof value === \"string\" &&\r\n value.split(\"-\")[1] === \"\"\r\n )\r\n return false;\r\n\r\n return true;\r\n}\r\n\r\nexport function validateMinLength(value: unknown, length?: number): boolean {\r\n return typeof value === \"string\" ? value.length >= (length ?? 0) : true;\r\n}\r\n\r\nexport function validateMaxLength(value: unknown, length?: number): boolean {\r\n return typeof value === \"string\"\r\n ? value.length <= (length ?? Infinity)\r\n : true;\r\n}\r\n\r\nexport function validateMinValue(value: unknown, min?: number | string): boolean {\r\n const minNum = typeof min === \"string\" ? parseFloat(min) : min;\r\n const valueNum = typeof value === \"string\" ? parseFloat(value) : value;\r\n\r\n if (typeof valueNum === \"number\" && typeof minNum === \"number\" && !isNaN(valueNum) && !isNaN(minNum)) {\r\n return valueNum >= minNum;\r\n }\r\n return true;\r\n}\r\n\r\nexport function validateMaxValue(value: unknown, max?: number | string): boolean {\r\n const maxNum = typeof max === \"string\" ? parseFloat(max) : max;\r\n const valueNum = typeof value === \"string\" ? parseFloat(value) : value;\r\n\r\n if (typeof valueNum === \"number\" && typeof maxNum === \"number\" && !isNaN(valueNum) && !isNaN(maxNum)) {\r\n return valueNum <= maxNum;\r\n }\r\n return true;\r\n}\r\n\r\nexport function validateRegex(value: unknown, regex?: string): boolean {\r\n return typeof value === \"string\"\r\n ? regex\r\n ? new RegExp(regex).test(value)\r\n : true\r\n : true;\r\n}\r\n\r\nexport function validateFieldMatch(value: unknown, fieldValue?: unknown): boolean {\r\n return fieldValue !== undefined ? value === fieldValue : true;\r\n}\r\n\r\nexport function validateEmail(value: unknown): boolean {\r\n return typeof value === \"string\" ? EMAIL_REGEX.test(value) : true;\r\n}\r\n\r\nexport function validatePhone(value: unknown): boolean {\r\n return typeof value === \"string\" ? PHONE_REGEX.test(value) : true;\r\n}\r\n\r\nexport function validateDate(value: unknown): boolean {\r\n return typeof value === \"string\" ? DATETIME_REGEX.test(value) : true;\r\n}\r\n","import { EnvConfig } from \"@/types\";\r\nimport { createContext } from \"@lit/context\";\r\n\r\nexport const envContext = createContext<EnvConfig | null>(\"sb:env\");\r\n","// controller/auth-context.ts\r\nimport { createContext } from \"@lit/context\";\r\n\r\nexport interface AuthState {\r\n isAuthenticated: boolean;\r\n}\r\n\r\nexport const authContext = createContext<AuthState>(\"sb:auth\");\r\n","// src/context/customizations.ts\r\nimport { createContext } from \"@lit/context\";\r\nimport type { ICustomizations } from \"@/types\";\r\n\r\nexport const customizationsContext = createContext<ICustomizations | null>(\r\n \"customizations\"\r\n);\r\n","// src/context.ts\r\nimport { createContext } from \"@lit/context\";\r\nimport type { RenderSpec } from \"@/types\";\r\n\r\nexport const renderSpecContext = createContext<RenderSpec | null>(\r\n Symbol(\"renderSpecContext\")\r\n);\r\n","import { TemplateResult } from \"lit-html\";\r\n\r\nexport enum USER_PROFILE_TAB_VALUES {\r\n PROFILE = \"Profile\",\r\n SECURITY = \"Security\",\r\n APPEARANCE = \"Appearance\",\r\n NOTIFICATION = \"Notification\",\r\n}\r\n\r\nexport enum USER_PROFILE_TAB_LIST {\r\n PROFILE = \"Profile\",\r\n SECURITY = \"Security\",\r\n APPEARANCE = \"Appearance\",\r\n NOTIFICATION = \"Notification\",\r\n}\r\n\r\nexport enum USER_PROFILE_MODE {\r\n MODAL = \"MODAL\",\r\n PAGE = \"PAGE\",\r\n}\r\n\r\nexport enum USER_PROFILE_SIDEBAR_DISPLAY_TYPE {\r\n BURGER = \"BURGER\",\r\n REGULAR = \"REGULAR\",\r\n}\r\n\r\nexport enum USER_PROFILE_ORIENTATION {\r\n VERTICAL = \"VERTICAL\",\r\n HORIZONTAL = \"HORIZONTAL\",\r\n}\r\n\r\nexport enum USER_PROFILE_WIDGETS_LAYOUT {\r\n COLUMN = \"COLUMN\",\r\n ROW = \"ROW\",\r\n}\r\n\r\nexport interface IProfileContentCustomizations {\r\n account?: IProfileWidgetCustomization;\r\n personalInfo?: IProfileWidgetCustomization;\r\n locations?: IProfileWidgetCustomization;\r\n urls?: IProfileWidgetCustomization;\r\n}\r\n\r\nexport interface IProfileWidgetCustomization {\r\n icon?: HTMLElement | TemplateResult | Element;\r\n title?: string;\r\n}\r\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;","const CLASS_PART_SEPARATOR = '-';\nconst createClassGroupUtils = config => {\n const classMap = createClassMap(config);\n const {\n conflictingClassGroups,\n conflictingClassGroupModifiers\n } = config;\n const getClassGroupId = className => {\n const classParts = className.split(CLASS_PART_SEPARATOR);\n // Classes like `-inset-1` produce an empty string as first classPart. We assume that classes for negative values are used correctly and remove it from classParts.\n if (classParts[0] === '' && classParts.length !== 1) {\n classParts.shift();\n }\n return getGroupRecursive(classParts, classMap) || getGroupIdForArbitraryProperty(className);\n };\n const getConflictingClassGroupIds = (classGroupId, hasPostfixModifier) => {\n const conflicts = conflictingClassGroups[classGroupId] || [];\n if (hasPostfixModifier && conflictingClassGroupModifiers[classGroupId]) {\n return [...conflicts, ...conflictingClassGroupModifiers[classGroupId]];\n }\n return conflicts;\n };\n return {\n getClassGroupId,\n getConflictingClassGroupIds\n };\n};\nconst getGroupRecursive = (classParts, classPartObject) => {\n if (classParts.length === 0) {\n return classPartObject.classGroupId;\n }\n const currentClassPart = classParts[0];\n const nextClassPartObject = classPartObject.nextPart.get(currentClassPart);\n const classGroupFromNextClassPart = nextClassPartObject ? getGroupRecursive(classParts.slice(1), nextClassPartObject) : undefined;\n if (classGroupFromNextClassPart) {\n return classGroupFromNextClassPart;\n }\n if (classPartObject.validators.length === 0) {\n return undefined;\n }\n const classRest = classParts.join(CLASS_PART_SEPARATOR);\n return classPartObject.validators.find(({\n validator\n }) => validator(classRest))?.classGroupId;\n};\nconst arbitraryPropertyRegex = /^\\[(.+)\\]$/;\nconst getGroupIdForArbitraryProperty = className => {\n if (arbitraryPropertyRegex.test(className)) {\n const arbitraryPropertyClassName = arbitraryPropertyRegex.exec(className)[1];\n const property = arbitraryPropertyClassName?.substring(0, arbitraryPropertyClassName.indexOf(':'));\n if (property) {\n // I use two dots here because one dot is used as prefix for class groups in plugins\n return 'arbitrary..' + property;\n }\n }\n};\n/**\n * Exported for testing only\n */\nconst createClassMap = config => {\n const {\n theme,\n prefix\n } = config;\n const classMap = {\n nextPart: new Map(),\n validators: []\n };\n const prefixedClassGroupEntries = getPrefixedClassGroupEntries(Object.entries(config.classGroups), prefix);\n prefixedClassGroupEntries.forEach(([classGroupId, classGroup]) => {\n processClassesRecursively(classGroup, classMap, classGroupId, theme);\n });\n return classMap;\n};\nconst processClassesRecursively = (classGroup, classPartObject, classGroupId, theme) => {\n classGroup.forEach(classDefinition => {\n if (typeof classDefinition === 'string') {\n const classPartObjectToEdit = classDefinition === '' ? classPartObject : getPart(classPartObject, classDefinition);\n classPartObjectToEdit.classGroupId = classGroupId;\n return;\n }\n if (typeof classDefinition === 'function') {\n if (isThemeGetter(classDefinition)) {\n processClassesRecursively(classDefinition(theme), classPartObject, classGroupId, theme);\n return;\n }\n classPartObject.validators.push({\n validator: classDefinition,\n classGroupId\n });\n return;\n }\n Object.entries(classDefinition).forEach(([key, classGroup]) => {\n processClassesRecursively(classGroup, getPart(classPartObject, key), classGroupId, theme);\n });\n });\n};\nconst getPart = (classPartObject, path) => {\n let currentClassPartObject = classPartObject;\n path.split(CLASS_PART_SEPARATOR).forEach(pathPart => {\n if (!currentClassPartObject.nextPart.has(pathPart)) {\n currentClassPartObject.nextPart.set(pathPart, {\n nextPart: new Map(),\n validators: []\n });\n }\n currentClassPartObject = currentClassPartObject.nextPart.get(pathPart);\n });\n return currentClassPartObject;\n};\nconst isThemeGetter = func => func.isThemeGetter;\nconst getPrefixedClassGroupEntries = (classGroupEntries, prefix) => {\n if (!prefix) {\n return classGroupEntries;\n }\n return classGroupEntries.map(([classGroupId, classGroup]) => {\n const prefixedClassGroup = classGroup.map(classDefinition => {\n if (typeof classDefinition === 'string') {\n return prefix + classDefinition;\n }\n if (typeof classDefinition === 'object') {\n return Object.fromEntries(Object.entries(classDefinition).map(([key, value]) => [prefix + key, value]));\n }\n return classDefinition;\n });\n return [classGroupId, prefixedClassGroup];\n });\n};\n\n// LRU cache inspired from hashlru (https://github.com/dominictarr/hashlru/blob/v1.0.4/index.js) but object replaced with Map to improve performance\nconst createLruCache = maxCacheSize => {\n if (maxCacheSize < 1) {\n return {\n get: () => undefined,\n set: () => {}\n };\n }\n let cacheSize = 0;\n let cache = new Map();\n let previousCache = new Map();\n const update = (key, value) => {\n cache.set(key, value);\n cacheSize++;\n if (cacheSize > maxCacheSize) {\n cacheSize = 0;\n previousCache = cache;\n cache = new Map();\n }\n };\n return {\n get(key) {\n let value = cache.get(key);\n if (value !== undefined) {\n return value;\n }\n if ((value = previousCache.get(key)) !== undefined) {\n update(key, value);\n return value;\n }\n },\n set(key, value) {\n if (cache.has(key)) {\n cache.set(key, value);\n } else {\n update(key, value);\n }\n }\n };\n};\nconst IMPORTANT_MODIFIER = '!';\nconst createParseClassName = config => {\n const {\n separator,\n experimentalParseClassName\n } = config;\n const isSeparatorSingleCharacter = separator.length === 1;\n const firstSeparatorCharacter = separator[0];\n const separatorLength = separator.length;\n // parseClassName inspired by https://github.com/tailwindlabs/tailwindcss/blob/v3.2.2/src/util/splitAtTopLevelOnly.js\n const parseClassName = className => {\n const modifiers = [];\n let bracketDepth = 0;\n let modifierStart = 0;\n let postfixModifierPosition;\n for (let index = 0; index < className.length; index++) {\n let currentCharacter = className[index];\n if (bracketDepth === 0) {\n if (currentCharacter === firstSeparatorCharacter && (isSeparatorSingleCharacter || className.slice(index, index + separatorLength) === separator)) {\n modifiers.push(className.slice(modifierStart, index));\n modifierStart = index + separatorLength;\n continue;\n }\n if (currentCharacter === '/') {\n postfixModifierPosition = index;\n continue;\n }\n }\n if (currentCharacter === '[') {\n bracketDepth++;\n } else if (currentCharacter === ']') {\n bracketDepth--;\n }\n }\n const baseClassNameWithImportantModifier = modifiers.length === 0 ? className : className.substring(modifierStart);\n const hasImportantModifier = baseClassNameWithImportantModifier.startsWith(IMPORTANT_MODIFIER);\n const baseClassName = hasImportantModifier ? baseClassNameWithImportantModifier.substring(1) : baseClassNameWithImportantModifier;\n const maybePostfixModifierPosition = postfixModifierPosition && postfixModifierPosition > modifierStart ? postfixModifierPosition - modifierStart : undefined;\n return {\n modifiers,\n hasImportantModifier,\n baseClassName,\n maybePostfixModifierPosition\n };\n };\n if (experimentalParseClassName) {\n return className => experimentalParseClassName({\n className,\n parseClassName\n });\n }\n return parseClassName;\n};\n/**\n * Sorts modifiers according to following schema:\n * - Predefined modifiers are sorted alphabetically\n * - When an arbitrary variant appears, it must be preserved which modifiers are before and after it\n */\nconst sortModifiers = modifiers => {\n if (modifiers.length <= 1) {\n return modifiers;\n }\n const sortedModifiers = [];\n let unsortedModifiers = [];\n modifiers.forEach(modifier => {\n const isArbitraryVariant = modifier[0] === '[';\n if (isArbitraryVariant) {\n sortedModifiers.push(...unsortedModifiers.sort(), modifier);\n unsortedModifiers = [];\n } else {\n unsortedModifiers.push(modifier);\n }\n });\n sortedModifiers.push(...unsortedModifiers.sort());\n return sortedModifiers;\n};\nconst createConfigUtils = config => ({\n cache: createLruCache(config.cacheSize),\n parseClassName: createParseClassName(config),\n ...createClassGroupUtils(config)\n});\nconst SPLIT_CLASSES_REGEX = /\\s+/;\nconst mergeClassList = (classList, configUtils) => {\n const {\n parseClassName,\n getClassGroupId,\n getConflictingClassGroupIds\n } = configUtils;\n /**\n * Set of classGroupIds in following format:\n * `{importantModifier}{variantModifiers}{classGroupId}`\n * @example 'float'\n * @example 'hover:focus:bg-color'\n * @example 'md:!pr'\n */\n const classGroupsInConflict = [];\n const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);\n let result = '';\n for (let index = classNames.length - 1; index >= 0; index -= 1) {\n const originalClassName = classNames[index];\n const {\n modifiers,\n hasImportantModifier,\n baseClassName,\n maybePostfixModifierPosition\n } = parseClassName(originalClassName);\n let hasPostfixModifier = Boolean(maybePostfixModifierPosition);\n let classGroupId = getClassGroupId(hasPostfixModifier ? baseClassName.substring(0, maybePostfixModifierPosition) : baseClassName);\n if (!classGroupId) {\n if (!hasPostfixModifier) {\n // Not a Tailwind class\n result = originalClassName + (result.length > 0 ? ' ' + result : result);\n continue;\n }\n classGroupId = getClassGroupId(baseClassName);\n if (!classGroupId) {\n // Not a Tailwind class\n result = originalClassName + (result.length > 0 ? ' ' + result : result);\n continue;\n }\n hasPostfixModifier = false;\n }\n const variantModifier = sortModifiers(modifiers).join(':');\n const modifierId = hasImportantModifier ? variantModifier + IMPORTANT_MODIFIER : variantModifier;\n const classId = modifierId + classGroupId;\n if (classGroupsInConflict.includes(classId)) {\n // Tailwind class omitted due to conflict\n continue;\n }\n classGroupsInConflict.push(classId);\n const conflictGroups = getConflictingClassGroupIds(classGroupId, hasPostfixModifier);\n for (let i = 0; i < conflictGroups.length; ++i) {\n const group = conflictGroups[i];\n classGroupsInConflict.push(modifierId + group);\n }\n // Tailwind class not in conflict\n result = originalClassName + (result.length > 0 ? ' ' + result : result);\n }\n return result;\n};\n\n/**\n * The code in this file is copied from https://github.com/lukeed/clsx and modified to suit the needs of tailwind-merge better.\n *\n * Specifically:\n * - Runtime code from https://github.com/lukeed/clsx/blob/v1.2.1/src/index.js\n * - TypeScript types from https://github.com/lukeed/clsx/blob/v1.2.1/clsx.d.ts\n *\n * Original code has MIT license: Copyright (c) Luke Edwards <luke.edwards05@gmail.com> (lukeed.com)\n */\nfunction twJoin() {\n let index = 0;\n let argument;\n let resolvedValue;\n let string = '';\n while (index < arguments.length) {\n if (argument = arguments[index++]) {\n if (resolvedValue = toValue(argument)) {\n string && (string += ' ');\n string += resolvedValue;\n }\n }\n }\n return string;\n}\nconst toValue = mix => {\n if (typeof mix === 'string') {\n return mix;\n }\n let resolvedValue;\n let string = '';\n for (let k = 0; k < mix.length; k++) {\n if (mix[k]) {\n if (resolvedValue = toValue(mix[k])) {\n string && (string += ' ');\n string += resolvedValue;\n }\n }\n }\n return string;\n};\nfunction createTailwindMerge(createConfigFirst, ...createConfigRest) {\n let configUtils;\n let cacheGet;\n let cacheSet;\n let functionToCall = initTailwindMerge;\n function initTailwindMerge(classList) {\n const config = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());\n configUtils = createConfigUtils(config);\n cacheGet = configUtils.cache.get;\n cacheSet = configUtils.cache.set;\n functionToCall = tailwindMerge;\n return tailwindMerge(classList);\n }\n function tailwindMerge(classList) {\n const cachedResult = cacheGet(classList);\n if (cachedResult) {\n return cachedResult;\n }\n const result = mergeClassList(classList, configUtils);\n cacheSet(classList, result);\n return result;\n }\n return function callTailwindMerge() {\n return functionToCall(twJoin.apply(null, arguments));\n };\n}\nconst fromTheme = key => {\n const themeGetter = theme => theme[key] || [];\n themeGetter.isThemeGetter = true;\n return themeGetter;\n};\nconst arbitraryValueRegex = /^\\[(?:([a-z-]+):)?(.+)\\]$/i;\nconst fractionRegex = /^\\d+\\/\\d+$/;\nconst stringLengths = /*#__PURE__*/new Set(['px', 'full', 'screen']);\nconst tshirtUnitRegex = /^(\\d+(\\.\\d+)?)?(xs|sm|md|lg|xl)$/;\nconst lengthUnitRegex = /\\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\\b(calc|min|max|clamp)\\(.+\\)|^0$/;\nconst colorFunctionRegex = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\\(.+\\)$/;\n// Shadow always begins with x and y offset separated by underscore optionally prepended by inset\nconst shadowRegex = /^(inset_)?-?((\\d+)?\\.?(\\d+)[a-z]+|0)_-?((\\d+)?\\.?(\\d+)[a-z]+|0)/;\nconst imageRegex = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\\(.+\\)$/;\nconst isLength = value => isNumber(value) || stringLengths.has(value) || fractionRegex.test(value);\nconst isArbitraryLength = value => getIsArbitraryValue(value, 'length', isLengthOnly);\nconst isNumber = value => Boolean(value) && !Number.isNaN(Number(value));\nconst isArbitraryNumber = value => getIsArbitraryValue(value, 'number', isNumber);\nconst isInteger = value => Boolean(value) && Number.isInteger(Number(value));\nconst isPercent = value => value.endsWith('%') && isNumber(value.slice(0, -1));\nconst isArbitraryValue = value => arbitraryValueRegex.test(value);\nconst isTshirtSize = value => tshirtUnitRegex.test(value);\nconst sizeLabels = /*#__PURE__*/new Set(['length', 'size', 'percentage']);\nconst isArbitrarySize = value => getIsArbitraryValue(value, sizeLabels, isNever);\nconst isArbitraryPosition = value => getIsArbitraryValue(value, 'position', isNever);\nconst imageLabels = /*#__PURE__*/new Set(['image', 'url']);\nconst isArbitraryImage = value => getIsArbitraryValue(value, imageLabels, isImage);\nconst isArbitraryShadow = value => getIsArbitraryValue(value, '', isShadow);\nconst isAny = () => true;\nconst getIsArbitraryValue = (value, label, testValue) => {\n const result = arbitraryValueRegex.exec(value);\n if (result) {\n if (result[1]) {\n return typeof label === 'string' ? result[1] === label : label.has(result[1]);\n }\n return testValue(result[2]);\n }\n return false;\n};\nconst isLengthOnly = value =>\n// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.\n// For example, `hsl(0 0% 0%)` would be classified as a length without this check.\n// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.\nlengthUnitRegex.test(value) && !colorFunctionRegex.test(value);\nconst isNever = () => false;\nconst isShadow = value => shadowRegex.test(value);\nconst isImage = value => imageRegex.test(value);\nconst validators = /*#__PURE__*/Object.defineProperty({\n __proto__: null,\n isAny,\n isArbitraryImage,\n isArbitraryLength,\n isArbitraryNumber,\n isArbitraryPosition,\n isArbitraryShadow,\n isArbitrarySize,\n isArbitraryValue,\n isInteger,\n isLength,\n isNumber,\n isPercent,\n isTshirtSize\n}, Symbol.toStringTag, {\n value: 'Module'\n});\nconst getDefaultConfig = () => {\n const colors = fromTheme('colors');\n const spacing = fromTheme('spacing');\n const blur = fromTheme('blur');\n const brightness = fromTheme('brightness');\n const borderColor = fromTheme('borderColor');\n const borderRadius = fromTheme('borderRadius');\n const borderSpacing = fromTheme('borderSpacing');\n const borderWidth = fromTheme('borderWidth');\n const contrast = fromTheme('contrast');\n const grayscale = fromTheme('grayscale');\n const hueRotate = fromTheme('hueRotate');\n const invert = fromTheme('invert');\n const gap = fromTheme('gap');\n const gradientColorStops = fromTheme('gradientColorStops');\n const gradientColorStopPositions = fromTheme('gradientColorStopPositions');\n const inset = fromTheme('inset');\n const margin = fromTheme('margin');\n const opacity = fromTheme('opacity');\n const padding = fromTheme('padding');\n const saturate = fromTheme('saturate');\n const scale = fromTheme('scale');\n const sepia = fromTheme('sepia');\n const skew = fromTheme('skew');\n const space = fromTheme('space');\n const translate = fromTheme('translate');\n const getOverscroll = () => ['auto', 'contain', 'none'];\n const getOverflow = () => ['auto', 'hidden', 'clip', 'visible', 'scroll'];\n const getSpacingWithAutoAndArbitrary = () => ['auto', isArbitraryValue, spacing];\n const getSpacingWithArbitrary = () => [isArbitraryValue, spacing];\n const getLengthWithEmptyAndArbitrary = () => ['', isLength, isArbitraryLength];\n const getNumberWithAutoAndArbitrary = () => ['auto', isNumber, isArbitraryValue];\n const getPositions = () => ['bottom', 'center', 'left', 'left-bottom', 'left-top', 'right', 'right-bottom', 'right-top', 'top'];\n const getLineStyles = () => ['solid', 'dashed', 'dotted', 'double', 'none'];\n const getBlendModes = () => ['normal', 'multiply', 'screen', 'overlay', 'darken', 'lighten', 'color-dodge', 'color-burn', 'hard-light', 'soft-light', 'difference', 'exclusion', 'hue', 'saturation', 'color', 'luminosity'];\n const getAlign = () => ['start', 'end', 'center', 'between', 'around', 'evenly', 'stretch'];\n const getZeroAndEmpty = () => ['', '0', isArbitraryValue];\n const getBreaks = () => ['auto', 'avoid', 'all', 'avoid-page', 'page', 'left', 'right', 'column'];\n const getNumberAndArbitrary = () => [isNumber, isArbitraryValue];\n return {\n cacheSize: 500,\n separator: ':',\n theme: {\n colors: [isAny],\n spacing: [isLength, isArbitraryLength],\n blur: ['none', '', isTshirtSize, isArbitraryValue],\n brightness: getNumberAndArbitrary(),\n borderColor: [colors],\n borderRadius: ['none', '', 'full', isTshirtSize, isArbitraryValue],\n borderSpacing: getSpacingWithArbitrary(),\n borderWidth: getLengthWithEmptyAndArbitrary(),\n contrast: getNumberAndArbitrary(),\n grayscale: getZeroAndEmpty(),\n hueRotate: getNumberAndArbitrary(),\n invert: getZeroAndEmpty(),\n gap: getSpacingWithArbitrary(),\n gradientColorStops: [colors],\n gradientColorStopPositions: [isPercent, isArbitraryLength],\n inset: getSpacingWithAutoAndArbitrary(),\n margin: getSpacingWithAutoAndArbitrary(),\n opacity: getNumberAndArbitrary(),\n padding: getSpacingWithArbitrary(),\n saturate: getNumberAndArbitrary(),\n scale: getNumberAndArbitrary(),\n sepia: getZeroAndEmpty(),\n skew: getNumberAndArbitrary(),\n space: getSpacingWithArbitrary(),\n translate: getSpacingWithArbitrary()\n },\n classGroups: {\n // Layout\n /**\n * Aspect Ratio\n * @see https://tailwindcss.com/docs/aspect-ratio\n */\n aspect: [{\n aspect: ['auto', 'square', 'video', isArbitraryValue]\n }],\n /**\n * Container\n * @see https://tailwindcss.com/docs/container\n */\n container: ['container'],\n /**\n * Columns\n * @see https://tailwindcss.com/docs/columns\n */\n columns: [{\n columns: [isTshirtSize]\n }],\n /**\n * Break After\n * @see https://tailwindcss.com/docs/break-after\n */\n 'break-after': [{\n 'break-after': getBreaks()\n }],\n /**\n * Break Before\n * @see https://tailwindcss.com/docs/break-before\n */\n 'break-before': [{\n 'break-before': getBreaks()\n }],\n /**\n * Break Inside\n * @see https://tailwindcss.com/docs/break-inside\n */\n 'break-inside': [{\n 'break-inside': ['auto', 'avoid', 'avoid-page', 'avoid-column']\n }],\n /**\n * Box Decoration Break\n * @see https://tailwindcss.com/docs/box-decoration-break\n */\n 'box-decoration': [{\n 'box-decoration': ['slice', 'clone']\n }],\n /**\n * Box Sizing\n * @see https://tailwindcss.com/docs/box-sizing\n */\n box: [{\n box: ['border', 'content']\n }],\n /**\n * Display\n * @see https://tailwindcss.com/docs/display\n */\n display: ['block', 'inline-block', 'inline', 'flex', 'inline-flex', 'table', 'inline-table', 'table-caption', 'table-cell', 'table-column', 'table-column-group', 'table-footer-group', 'table-header-group', 'table-row-group', 'table-row', 'flow-root', 'grid', 'inline-grid', 'contents', 'list-item', 'hidden'],\n /**\n * Floats\n * @see https://tailwindcss.com/docs/float\n */\n float: [{\n float: ['right', 'left', 'none', 'start', 'end']\n }],\n /**\n * Clear\n * @see https://tailwindcss.com/docs/clear\n */\n clear: [{\n clear: ['left', 'right', 'both', 'none', 'start', 'end']\n }],\n /**\n * Isolation\n * @see https://tailwindcss.com/docs/isolation\n */\n isolation: ['isolate', 'isolation-auto'],\n /**\n * Object Fit\n * @see https://tailwindcss.com/docs/object-fit\n */\n 'object-fit': [{\n object: ['contain', 'cover', 'fill', 'none', 'scale-down']\n }],\n /**\n * Object Position\n * @see https://tailwindcss.com/docs/object-position\n */\n 'object-position': [{\n object: [...getPositions(), isArbitraryValue]\n }],\n /**\n * Overflow\n * @see https://tailwindcss.com/docs/overflow\n */\n overflow: [{\n overflow: getOverflow()\n }],\n /**\n * Overflow X\n * @see https://tailwindcss.com/docs/overflow\n */\n 'overflow-x': [{\n 'overflow-x': getOverflow()\n }],\n /**\n * Overflow Y\n * @see https://tailwindcss.com/docs/overflow\n */\n 'overflow-y': [{\n 'overflow-y': getOverflow()\n }],\n /**\n * Overscroll Behavior\n * @see https://tailwindcss.com/docs/overscroll-behavior\n */\n overscroll: [{\n overscroll: getOverscroll()\n }],\n /**\n * Overscroll Behavior X\n * @see https://tailwindcss.com/docs/overscroll-behavior\n */\n 'overscroll-x': [{\n 'overscroll-x': getOverscroll()\n }],\n /**\n * Overscroll Behavior Y\n * @see https://tailwindcss.com/docs/overscroll-behavior\n */\n 'overscroll-y': [{\n 'overscroll-y': getOverscroll()\n }],\n /**\n * Position\n * @see https://tailwindcss.com/docs/position\n */\n position: ['static', 'fixed', 'absolute', 'relative', 'sticky'],\n /**\n * Top / Right / Bottom / Left\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n inset: [{\n inset: [inset]\n }],\n /**\n * Right / Left\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n 'inset-x': [{\n 'inset-x': [inset]\n }],\n /**\n * Top / Bottom\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n 'inset-y': [{\n 'inset-y': [inset]\n }],\n /**\n * Start\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n start: [{\n start: [inset]\n }],\n /**\n * End\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n end: [{\n end: [inset]\n }],\n /**\n * Top\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n top: [{\n top: [inset]\n }],\n /**\n * Right\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n right: [{\n right: [inset]\n }],\n /**\n * Bottom\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n bottom: [{\n bottom: [inset]\n }],\n /**\n * Left\n * @see https://tailwindcss.com/docs/top-right-bottom-left\n */\n left: [{\n left: [inset]\n }],\n /**\n * Visibility\n * @see https://tailwindcss.com/docs/visibility\n */\n visibility: ['visible', 'invisible', 'collapse'],\n /**\n * Z-Index\n * @see https://tailwindcss.com/docs/z-index\n */\n z: [{\n z: ['auto', isInteger, isArbitraryValue]\n }],\n // Flexbox and Grid\n /**\n * Flex Basis\n * @see https://tailwindcss.com/docs/flex-basis\n */\n basis: [{\n basis: getSpacingWithAutoAndArbitrary()\n }],\n /**\n * Flex Direction\n * @see https://tailwindcss.com/docs/flex-direction\n */\n 'flex-direction': [{\n flex: ['row', 'row-reverse', 'col', 'col-reverse']\n }],\n /**\n * Flex Wrap\n * @see https://tailwindcss.com/docs/flex-wrap\n */\n 'flex-wrap': [{\n flex: ['wrap', 'wrap-reverse', 'nowrap']\n }],\n /**\n * Flex\n * @see https://tailwindcss.com/docs/flex\n */\n flex: [{\n flex: ['1', 'auto', 'initial', 'none', isArbitraryValue]\n }],\n /**\n * Flex Grow\n * @see https://tailwindcss.com/docs/flex-grow\n */\n grow: [{\n grow: getZeroAndEmpty()\n }],\n /**\n * Flex Shrink\n * @see https://tailwindcss.com/docs/flex-shrink\n */\n shrink: [{\n shrink: getZeroAndEmpty()\n }],\n /**\n * Order\n * @see https://tailwindcss.com/docs/order\n */\n order: [{\n order: ['first', 'last', 'none', isInteger, isArbitraryValue]\n }],\n /**\n * Grid Template Columns\n * @see https://tailwindcss.com/docs/grid-template-columns\n */\n 'grid-cols': [{\n 'grid-cols': [isAny]\n }],\n /**\n * Grid Column Start / End\n * @see https://tailwindcss.com/docs/grid-column\n */\n 'col-start-end': [{\n col: ['auto', {\n span: ['full', isInteger, isArbitraryValue]\n }, isArbitraryValue]\n }],\n /**\n * Grid Column Start\n * @see https://tailwindcss.com/docs/grid-column\n */\n 'col-start': [{\n 'col-start': getNumberWithAutoAndArbitrary()\n }],\n /**\n * Grid Column End\n * @see https://tailwindcss.com/docs/grid-column\n */\n 'col-end': [{\n 'col-end': getNumberWithAutoAndArbitrary()\n }],\n /**\n * Grid Template Rows\n * @see https://tailwindcss.com/docs/grid-template-rows\n */\n 'grid-rows': [{\n 'grid-rows': [isAny]\n }],\n /**\n * Grid Row Start / End\n * @see https://tailwindcss.com/docs/grid-row\n */\n 'row-start-end': [{\n row: ['auto', {\n span: [isInteger, isArbitraryValue]\n }, isArbitraryValue]\n }],\n /**\n * Grid Row Start\n * @see https://tailwindcss.com/docs/grid-row\n */\n 'row-start': [{\n 'row-start': getNumberWithAutoAndArbitrary()\n }],\n /**\n * Grid Row End\n * @see https://tailwindcss.com/docs/grid-row\n */\n 'row-end': [{\n 'row-end': getNumberWithAutoAndArbitrary()\n }],\n /**\n * Grid Auto Flow\n * @see https://tailwindcss.com/docs/grid-auto-flow\n */\n 'grid-flow': [{\n 'grid-flow': ['row', 'col', 'dense', 'row-dense', 'col-dense']\n }],\n /**\n * Grid Auto Columns\n * @see https://tailwindcss.com/docs/grid-auto-columns\n */\n 'auto-cols': [{\n 'auto-cols': ['auto', 'min', 'max', 'fr', isArbitraryValue]\n }],\n /**\n * Grid Auto Rows\n * @see https://tailwindcss.com/docs/grid-auto-rows\n */\n 'auto-rows': [{\n 'auto-rows': ['auto', 'min', 'max', 'fr', isArbitraryValue]\n }],\n /**\n * Gap\n * @see https://tailwindcss.com/docs/gap\n */\n gap: [{\n gap: [gap]\n }],\n /**\n * Gap X\n * @see https://tailwindcss.com/docs/gap\n */\n 'gap-x': [{\n 'gap-x': [gap]\n }],\n /**\n * Gap Y\n * @see https://tailwindcss.com/docs/gap\n */\n 'gap-y': [{\n 'gap-y': [gap]\n }],\n /**\n * Justify Content\n * @see https://tailwindcss.com/docs/justify-content\n */\n 'justify-content': [{\n justify: ['normal', ...getAlign()]\n }],\n /**\n * Justify Items\n * @see https://tailwindcss.com/docs/justify-items\n */\n 'justify-items': [{\n 'justify-items': ['start', 'end', 'center', 'stretch']\n }],\n /**\n * Justify Self\n * @see https://tailwindcss.com/docs/justify-self\n */\n 'justify-self': [{\n 'justify-self': ['auto', 'start', 'end', 'center', 'stretch']\n }],\n /**\n * Align Content\n * @see https://tailwindcss.com/docs/align-content\n */\n 'align-content': [{\n content: ['normal', ...getAlign(), 'baseline']\n }],\n /**\n * Align Items\n * @see https://tailwindcss.com/docs/align-items\n */\n 'align-items': [{\n items: ['start', 'end', 'center', 'baseline', 'stretch']\n }],\n /**\n * Align Self\n * @see https://tailwindcss.com/docs/align-self\n */\n 'align-self': [{\n self: ['auto', 'start', 'end', 'center', 'stretch', 'baseline']\n }],\n /**\n * Place Content\n * @see https://tailwindcss.com/docs/place-content\n */\n 'place-content': [{\n 'place-content': [...getAlign(), 'baseline']\n }],\n /**\n * Place Items\n * @see https://tailwindcss.com/docs/place-items\n */\n 'place-items': [{\n 'place-items': ['start', 'end', 'center', 'baseline', 'stretch']\n }],\n /**\n * Place Self\n * @see https://tailwindcss.com/docs/place-self\n */\n 'place-self': [{\n 'place-self': ['auto', 'start', 'end', 'center', 'stretch']\n }],\n // Spacing\n /**\n * Padding\n * @see https://tailwindcss.com/docs/padding\n */\n p: [{\n p: [padding]\n }],\n /**\n * Padding X\n * @see https://tailwindcss.com/docs/padding\n */\n px: [{\n px: [padding]\n }],\n /**\n * Padding Y\n * @see https://tailwindcss.com/docs/padding\n */\n py: [{\n py: [padding]\n }],\n /**\n * Padding Start\n * @see https://tailwindcss.com/docs/padding\n */\n ps: [{\n ps: [padding]\n }],\n /**\n * Padding End\n * @see https://tailwindcss.com/docs/padding\n */\n pe: [{\n pe: [padding]\n }],\n /**\n * Padding Top\n * @see https://tailwindcss.com/docs/padding\n */\n pt: [{\n pt: [padding]\n }],\n /**\n * Padding Right\n * @see https://tailwindcss.com/docs/padding\n */\n pr: [{\n pr: [padding]\n }],\n /**\n * Padding Bottom\n * @see https://tailwindcss.com/docs/padding\n */\n pb: [{\n pb: [padding]\n }],\n /**\n * Padding Left\n * @see https://tailwindcss.com/docs/padding\n */\n pl: [{\n pl: [padding]\n }],\n /**\n * Margin\n * @see https://tailwindcss.com/docs/margin\n */\n m: [{\n m: [margin]\n }],\n /**\n * Margin X\n * @see https://tailwindcss.com/docs/margin\n */\n mx: [{\n mx: [margin]\n }],\n /**\n * Margin Y\n * @see https://tailwindcss.com/docs/margin\n */\n my: [{\n my: [margin]\n }],\n /**\n * Margin Start\n * @see https://tailwindcss.com/docs/margin\n */\n ms: [{\n ms: [margin]\n }],\n /**\n * Margin End\n * @see https://tailwindcss.com/docs/margin\n */\n me: [{\n me: [margin]\n }],\n /**\n * Margin Top\n * @see https://tailwindcss.com/docs/margin\n */\n mt: [{\n mt: [margin]\n }],\n /**\n * Margin Right\n * @see https://tailwindcss.com/docs/margin\n */\n mr: [{\n mr: [margin]\n }],\n /**\n * Margin Bottom\n * @see https://tailwindcss.com/docs/margin\n */\n mb: [{\n mb: [margin]\n }],\n /**\n * Margin Left\n * @see https://tailwindcss.com/docs/margin\n */\n ml: [{\n ml: [margin]\n }],\n /**\n * Space Between X\n * @see https://tailwindcss.com/docs/space\n */\n 'space-x': [{\n 'space-x': [space]\n }],\n /**\n * Space Between X Reverse\n * @see https://tailwindcss.com/docs/space\n */\n 'space-x-reverse': ['space-x-reverse'],\n /**\n * Space Between Y\n * @see https://tailwindcss.com/docs/space\n */\n 'space-y': [{\n 'space-y': [space]\n }],\n /**\n * Space Between Y Reverse\n * @see https://tailwindcss.com/docs/space\n */\n 'space-y-reverse': ['space-y-reverse'],\n // Sizing\n /**\n * Width\n * @see https://tailwindcss.com/docs/width\n */\n w: [{\n w: ['auto', 'min', 'max', 'fit', 'svw', 'lvw', 'dvw', isArbitraryValue, spacing]\n }],\n /**\n * Min-Width\n * @see https://tailwindcss.com/docs/min-width\n */\n 'min-w': [{\n 'min-w': [isArbitraryValue, spacing, 'min', 'max', 'fit']\n }],\n /**\n * Max-Width\n * @see https://tailwindcss.com/docs/max-width\n */\n 'max-w': [{\n 'max-w': [isArbitraryValue, spacing, 'none', 'full', 'min', 'max', 'fit', 'prose', {\n screen: [isTshirtSize]\n }, isTshirtSize]\n }],\n /**\n * Height\n * @see https://tailwindcss.com/docs/height\n */\n h: [{\n h: [isArbitraryValue, spacing, 'auto', 'min', 'max', 'fit', 'svh', 'lvh', 'dvh']\n }],\n /**\n * Min-Height\n * @see https://tailwindcss.com/docs/min-height\n */\n 'min-h': [{\n 'min-h': [isArbitraryValue, spacing, 'min', 'max', 'fit', 'svh', 'lvh', 'dvh']\n }],\n /**\n * Max-Height\n * @see https://tailwindcss.com/docs/max-height\n */\n 'max-h': [{\n 'max-h': [isArbitraryValue, spacing, 'min', 'max', 'fit', 'svh', 'lvh', 'dvh']\n }],\n /**\n * Size\n * @see https://tailwindcss.com/docs/size\n */\n size: [{\n size: [isArbitraryValue, spacing, 'auto', 'min', 'max', 'fit']\n }],\n // Typography\n /**\n * Font Size\n * @see https://tailwindcss.com/docs/font-size\n */\n 'font-size': [{\n text: ['base', isTshirtSize, isArbitraryLength]\n }],\n /**\n * Font Smoothing\n * @see https://tailwindcss.com/docs/font-smoothing\n */\n 'font-smoothing': ['antialiased', 'subpixel-antialiased'],\n /**\n * Font Style\n * @see https://tailwindcss.com/docs/font-style\n */\n 'font-style': ['italic', 'not-italic'],\n /**\n * Font Weight\n * @see https://tailwindcss.com/docs/font-weight\n */\n 'font-weight': [{\n font: ['thin', 'extralight', 'light', 'normal', 'medium', 'semibold', 'bold', 'extrabold', 'black', isArbitraryNumber]\n }],\n /**\n * Font Family\n * @see https://tailwindcss.com/docs/font-family\n */\n 'font-family': [{\n font: [isAny]\n }],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n 'fvn-normal': ['normal-nums'],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n 'fvn-ordinal': ['ordinal'],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n 'fvn-slashed-zero': ['slashed-zero'],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n 'fvn-figure': ['lining-nums', 'oldstyle-nums'],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n 'fvn-spacing': ['proportional-nums', 'tabular-nums'],\n /**\n * Font Variant Numeric\n * @see https://tailwindcss.com/docs/font-variant-numeric\n */\n 'fvn-fraction': ['diagonal-fractions', 'stacked-fractions'],\n /**\n * Letter Spacing\n * @see https://tailwindcss.com/docs/letter-spacing\n */\n tracking: [{\n tracking: ['tighter', 'tight', 'normal', 'wide', 'wider', 'widest', isArbitraryValue]\n }],\n /**\n * Line Clamp\n * @see https://tailwindcss.com/docs/line-clamp\n */\n 'line-clamp': [{\n 'line-clamp': ['none', isNumber, isArbitraryNumber]\n }],\n /**\n * Line Height\n * @see https://tailwindcss.com/docs/line-height\n */\n leading: [{\n leading: ['none', 'tight', 'snug', 'normal', 'relaxed', 'loose', isLength, isArbitraryValue]\n }],\n /**\n * List Style Image\n * @see https://tailwindcss.com/docs/list-style-image\n */\n 'list-image': [{\n 'list-image': ['none', isArbitraryValue]\n }],\n /**\n * List Style Type\n * @see https://tailwindcss.com/docs/list-style-type\n */\n 'list-style-type': [{\n list: ['none', 'disc', 'decimal', isArbitraryValue]\n }],\n /**\n * List Style Position\n * @see https://tailwindcss.com/docs/list-style-position\n */\n 'list-style-position': [{\n list: ['inside', 'outside']\n }],\n /**\n * Placeholder Color\n * @deprecated since Tailwind CSS v3.0.0\n * @see https://tailwindcss.com/docs/placeholder-color\n */\n 'placeholder-color': [{\n placeholder: [colors]\n }],\n /**\n * Placeholder Opacity\n * @see https://tailwindcss.com/docs/placeholder-opacity\n */\n 'placeholder-opacity': [{\n 'placeholder-opacity': [opacity]\n }],\n /**\n * Text Alignment\n * @see https://tailwindcss.com/docs/text-align\n */\n 'text-alignment': [{\n text: ['left', 'center', 'right', 'justify', 'start', 'end']\n }],\n /**\n * Text Color\n * @see https://tailwindcss.com/docs/text-color\n */\n 'text-color': [{\n text: [colors]\n }],\n /**\n * Text Opacity\n * @see https://tailwindcss.com/docs/text-opacity\n */\n 'text-opacity': [{\n 'text-opacity': [opacity]\n }],\n /**\n * Text Decoration\n * @see https://tailwindcss.com/docs/text-decoration\n */\n 'text-decoration': ['underline', 'overline', 'line-through', 'no-underline'],\n /**\n * Text Decoration Style\n * @see https://tailwindcss.com/docs/text-decoration-style\n */\n 'text-decoration-style': [{\n decoration: [...getLineStyles(), 'wavy']\n }],\n /**\n * Text Decoration Thickness\n * @see https://tailwindcss.com/docs/text-decoration-thickness\n */\n 'text-decoration-thickness': [{\n decoration: ['auto', 'from-font', isLength, isArbitraryLength]\n }],\n /**\n * Text Underline Offset\n * @see https://tailwindcss.com/docs/text-underline-offset\n */\n 'underline-offset': [{\n 'underline-offset': ['auto', isLength, isArbitraryValue]\n }],\n /**\n * Text Decoration Color\n * @see https://tailwindcss.com/docs/text-decoration-color\n */\n 'text-decoration-color': [{\n decoration: [colors]\n }],\n /**\n * Text Transform\n * @see https://tailwindcss.com/docs/text-transform\n */\n 'text-transform': ['uppercase', 'lowercase', 'capitalize', 'normal-case'],\n /**\n * Text Overflow\n * @see https://tailwindcss.com/docs/text-overflow\n */\n 'text-overflow': ['truncate', 'text-ellipsis', 'text-clip'],\n /**\n * Text Wrap\n * @see https://tailwindcss.com/docs/text-wrap\n */\n 'text-wrap': [{\n text: ['wrap', 'nowrap', 'balance', 'pretty']\n }],\n /**\n * Text Indent\n * @see https://tailwindcss.com/docs/text-indent\n */\n indent: [{\n indent: getSpacingWithArbitrary()\n }],\n /**\n * Vertical Alignment\n * @see https://tailwindcss.com/docs/vertical-align\n */\n 'vertical-align': [{\n align: ['baseline', 'top', 'middle', 'bottom', 'text-top', 'text-bottom', 'sub', 'super', isArbitraryValue]\n }],\n /**\n * Whitespace\n * @see https://tailwindcss.com/docs/whitespace\n */\n whitespace: [{\n whitespace: ['normal', 'nowrap', 'pre', 'pre-line', 'pre-wrap', 'break-spaces']\n }],\n /**\n * Word Break\n * @see https://tailwindcss.com/docs/word-break\n */\n break: [{\n break: ['normal', 'words', 'all', 'keep']\n }],\n /**\n * Hyphens\n * @see https://tailwindcss.com/docs/hyphens\n */\n hyphens: [{\n hyphens: ['none', 'manual', 'auto']\n }],\n /**\n * Content\n * @see https://tailwindcss.com/docs/content\n */\n content: [{\n content: ['none', isArbitraryValue]\n }],\n // Backgrounds\n /**\n * Background Attachment\n * @see https://tailwindcss.com/docs/background-attachment\n */\n 'bg-attachment': [{\n bg: ['fixed', 'local', 'scroll']\n }],\n /**\n * Background Clip\n * @see https://tailwindcss.com/docs/background-clip\n */\n 'bg-clip': [{\n 'bg-clip': ['border', 'padding', 'content', 'text']\n }],\n /**\n * Background Opacity\n * @deprecated since Tailwind CSS v3.0.0\n * @see https://tailwindcss.com/docs/background-opacity\n */\n 'bg-opacity': [{\n 'bg-opacity': [opacity]\n }],\n /**\n * Background Origin\n * @see https://tailwindcss.com/docs/background-origin\n */\n 'bg-origin': [{\n 'bg-origin': ['border', 'padding', 'content']\n }],\n /**\n * Background Position\n * @see https://tailwindcss.com/docs/background-position\n */\n 'bg-position': [{\n bg: [...getPositions(), isArbitraryPosition]\n }],\n /**\n * Background Repeat\n * @see https://tailwindcss.com/docs/background-repeat\n */\n 'bg-repeat': [{\n bg: ['no-repeat', {\n repeat: ['', 'x', 'y', 'round', 'space']\n }]\n }],\n /**\n * Background Size\n * @see https://tailwindcss.com/docs/background-size\n */\n 'bg-size': [{\n bg: ['auto', 'cover', 'contain', isArbitrarySize]\n }],\n /**\n * Background Image\n * @see https://tailwindcss.com/docs/background-image\n */\n 'bg-image': [{\n bg: ['none', {\n 'gradient-to': ['t', 'tr', 'r', 'br', 'b', 'bl', 'l', 'tl']\n }, isArbitraryImage]\n }],\n /**\n * Background Color\n * @see https://tailwindcss.com/docs/background-color\n */\n 'bg-color': [{\n bg: [colors]\n }],\n /**\n * Gradient Color Stops From Position\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n 'gradient-from-pos': [{\n from: [gradientColorStopPositions]\n }],\n /**\n * Gradient Color Stops Via Position\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n 'gradient-via-pos': [{\n via: [gradientColorStopPositions]\n }],\n /**\n * Gradient Color Stops To Position\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n 'gradient-to-pos': [{\n to: [gradientColorStopPositions]\n }],\n /**\n * Gradient Color Stops From\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n 'gradient-from': [{\n from: [gradientColorStops]\n }],\n /**\n * Gradient Color Stops Via\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n 'gradient-via': [{\n via: [gradientColorStops]\n }],\n /**\n * Gradient Color Stops To\n * @see https://tailwindcss.com/docs/gradient-color-stops\n */\n 'gradient-to': [{\n to: [gradientColorStops]\n }],\n // Borders\n /**\n * Border Radius\n * @see https://tailwindcss.com/docs/border-radius\n */\n rounded: [{\n rounded: [borderRadius]\n }],\n /**\n * Border Radius Start\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-s': [{\n 'rounded-s': [borderRadius]\n }],\n /**\n * Border Radius End\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-e': [{\n 'rounded-e': [borderRadius]\n }],\n /**\n * Border Radius Top\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-t': [{\n 'rounded-t': [borderRadius]\n }],\n /**\n * Border Radius Right\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-r': [{\n 'rounded-r': [borderRadius]\n }],\n /**\n * Border Radius Bottom\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-b': [{\n 'rounded-b': [borderRadius]\n }],\n /**\n * Border Radius Left\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-l': [{\n 'rounded-l': [borderRadius]\n }],\n /**\n * Border Radius Start Start\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-ss': [{\n 'rounded-ss': [borderRadius]\n }],\n /**\n * Border Radius Start End\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-se': [{\n 'rounded-se': [borderRadius]\n }],\n /**\n * Border Radius End End\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-ee': [{\n 'rounded-ee': [borderRadius]\n }],\n /**\n * Border Radius End Start\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-es': [{\n 'rounded-es': [borderRadius]\n }],\n /**\n * Border Radius Top Left\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-tl': [{\n 'rounded-tl': [borderRadius]\n }],\n /**\n * Border Radius Top Right\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-tr': [{\n 'rounded-tr': [borderRadius]\n }],\n /**\n * Border Radius Bottom Right\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-br': [{\n 'rounded-br': [borderRadius]\n }],\n /**\n * Border Radius Bottom Left\n * @see https://tailwindcss.com/docs/border-radius\n */\n 'rounded-bl': [{\n 'rounded-bl': [borderRadius]\n }],\n /**\n * Border Width\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w': [{\n border: [borderWidth]\n }],\n /**\n * Border Width X\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w-x': [{\n 'border-x': [borderWidth]\n }],\n /**\n * Border Width Y\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w-y': [{\n 'border-y': [borderWidth]\n }],\n /**\n * Border Width Start\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w-s': [{\n 'border-s': [borderWidth]\n }],\n /**\n * Border Width End\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w-e': [{\n 'border-e': [borderWidth]\n }],\n /**\n * Border Width Top\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w-t': [{\n 'border-t': [borderWidth]\n }],\n /**\n * Border Width Right\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w-r': [{\n 'border-r': [borderWidth]\n }],\n /**\n * Border Width Bottom\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w-b': [{\n 'border-b': [borderWidth]\n }],\n /**\n * Border Width Left\n * @see https://tailwindcss.com/docs/border-width\n */\n 'border-w-l': [{\n 'border-l': [borderWidth]\n }],\n /**\n * Border Opacity\n * @see https://tailwindcss.com/docs/border-opacity\n */\n 'border-opacity': [{\n 'border-opacity': [opacity]\n }],\n /**\n * Border Style\n * @see https://tailwindcss.com/docs/border-style\n */\n 'border-style': [{\n border: [...getLineStyles(), 'hidden']\n }],\n /**\n * Divide Width X\n * @see https://tailwindcss.com/docs/divide-width\n */\n 'divide-x': [{\n 'divide-x': [borderWidth]\n }],\n /**\n * Divide Width X Reverse\n * @see https://tailwindcss.com/docs/divide-width\n */\n 'divide-x-reverse': ['divide-x-reverse'],\n /**\n * Divide Width Y\n * @see https://tailwindcss.com/docs/divide-width\n */\n 'divide-y': [{\n 'divide-y': [borderWidth]\n }],\n /**\n * Divide Width Y Reverse\n * @see https://tailwindcss.com/docs/divide-width\n */\n 'divide-y-reverse': ['divide-y-reverse'],\n /**\n * Divide Opacity\n * @see https://tailwindcss.com/docs/divide-opacity\n */\n 'divide-opacity': [{\n 'divide-opacity': [opacity]\n }],\n /**\n * Divide Style\n * @see https://tailwindcss.com/docs/divide-style\n */\n 'divide-style': [{\n divide: getLineStyles()\n }],\n /**\n * Border Color\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color': [{\n border: [borderColor]\n }],\n /**\n * Border Color X\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color-x': [{\n 'border-x': [borderColor]\n }],\n /**\n * Border Color Y\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color-y': [{\n 'border-y': [borderColor]\n }],\n /**\n * Border Color S\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color-s': [{\n 'border-s': [borderColor]\n }],\n /**\n * Border Color E\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color-e': [{\n 'border-e': [borderColor]\n }],\n /**\n * Border Color Top\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color-t': [{\n 'border-t': [borderColor]\n }],\n /**\n * Border Color Right\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color-r': [{\n 'border-r': [borderColor]\n }],\n /**\n * Border Color Bottom\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color-b': [{\n 'border-b': [borderColor]\n }],\n /**\n * Border Color Left\n * @see https://tailwindcss.com/docs/border-color\n */\n 'border-color-l': [{\n 'border-l': [borderColor]\n }],\n /**\n * Divide Color\n * @see https://tailwindcss.com/docs/divide-color\n */\n 'divide-color': [{\n divide: [borderColor]\n }],\n /**\n * Outline Style\n * @see https://tailwindcss.com/docs/outline-style\n */\n 'outline-style': [{\n outline: ['', ...getLineStyles()]\n }],\n /**\n * Outline Offset\n * @see https://tailwindcss.com/docs/outline-offset\n */\n 'outline-offset': [{\n 'outline-offset': [isLength, isArbitraryValue]\n }],\n /**\n * Outline Width\n * @see https://tailwindcss.com/docs/outline-width\n */\n 'outline-w': [{\n outline: [isLength, isArbitraryLength]\n }],\n /**\n * Outline Color\n * @see https://tailwindcss.com/docs/outline-color\n */\n 'outline-color': [{\n outline: [colors]\n }],\n /**\n * Ring Width\n * @see https://tailwindcss.com/docs/ring-width\n */\n 'ring-w': [{\n ring: getLengthWithEmptyAndArbitrary()\n }],\n /**\n * Ring Width Inset\n * @see https://tailwindcss.com/docs/ring-width\n */\n 'ring-w-inset': ['ring-inset'],\n /**\n * Ring Color\n * @see https://tailwindcss.com/docs/ring-color\n */\n 'ring-color': [{\n ring: [colors]\n }],\n /**\n * Ring Opacity\n * @see https://tailwindcss.com/docs/ring-opacity\n */\n 'ring-opacity': [{\n 'ring-opacity': [opacity]\n }],\n /**\n * Ring Offset Width\n * @see https://tailwindcss.com/docs/ring-offset-width\n */\n 'ring-offset-w': [{\n 'ring-offset': [isLength, isArbitraryLength]\n }],\n /**\n * Ring Offset Color\n * @see https://tailwindcss.com/docs/ring-offset-color\n */\n 'ring-offset-color': [{\n 'ring-offset': [colors]\n }],\n // Effects\n /**\n * Box Shadow\n * @see https://tailwindcss.com/docs/box-shadow\n */\n shadow: [{\n shadow: ['', 'inner', 'none', isTshirtSize, isArbitraryShadow]\n }],\n /**\n * Box Shadow Color\n * @see https://tailwindcss.com/docs/box-shadow-color\n */\n 'shadow-color': [{\n shadow: [isAny]\n }],\n /**\n * Opacity\n * @see https://tailwindcss.com/docs/opacity\n */\n opacity: [{\n opacity: [opacity]\n }],\n /**\n * Mix Blend Mode\n * @see https://tailwindcss.com/docs/mix-blend-mode\n */\n 'mix-blend': [{\n 'mix-blend': [...getBlendModes(), 'plus-lighter', 'plus-darker']\n }],\n /**\n * Background Blend Mode\n * @see https://tailwindcss.com/docs/background-blend-mode\n */\n 'bg-blend': [{\n 'bg-blend': getBlendModes()\n }],\n // Filters\n /**\n * Filter\n * @deprecated since Tailwind CSS v3.0.0\n * @see https://tailwindcss.com/docs/filter\n */\n filter: [{\n filter: ['', 'none']\n }],\n /**\n * Blur\n * @see https://tailwindcss.com/docs/blur\n */\n blur: [{\n blur: [blur]\n }],\n /**\n * Brightness\n * @see https://tailwindcss.com/docs/brightness\n */\n brightness: [{\n brightness: [brightness]\n }],\n /**\n * Contrast\n * @see https://tailwindcss.com/docs/contrast\n */\n contrast: [{\n contrast: [contrast]\n }],\n /**\n * Drop Shadow\n * @see https://tailwindcss.com/docs/drop-shadow\n */\n 'drop-shadow': [{\n 'drop-shadow': ['', 'none', isTshirtSize, isArbitraryValue]\n }],\n /**\n * Grayscale\n * @see https://tailwindcss.com/docs/grayscale\n */\n grayscale: [{\n grayscale: [grayscale]\n }],\n /**\n * Hue Rotate\n * @see https://tailwindcss.com/docs/hue-rotate\n */\n 'hue-rotate': [{\n 'hue-rotate': [hueRotate]\n }],\n /**\n * Invert\n * @see https://tailwindcss.com/docs/invert\n */\n invert: [{\n invert: [invert]\n }],\n /**\n * Saturate\n * @see https://tailwindcss.com/docs/saturate\n */\n saturate: [{\n saturate: [saturate]\n }],\n /**\n * Sepia\n * @see https://tailwindcss.com/docs/sepia\n */\n sepia: [{\n sepia: [sepia]\n }],\n /**\n * Backdrop Filter\n * @deprecated since Tailwind CSS v3.0.0\n * @see https://tailwindcss.com/docs/backdrop-filter\n */\n 'backdrop-filter': [{\n 'backdrop-filter': ['', 'none']\n }],\n /**\n * Backdrop Blur\n * @see https://tailwindcss.com/docs/backdrop-blur\n */\n 'backdrop-blur': [{\n 'backdrop-blur': [blur]\n }],\n /**\n * Backdrop Brightness\n * @see https://tailwindcss.com/docs/backdrop-brightness\n */\n 'backdrop-brightness': [{\n 'backdrop-brightness': [brightness]\n }],\n /**\n * Backdrop Contrast\n * @see https://tailwindcss.com/docs/backdrop-contrast\n */\n 'backdrop-contrast': [{\n 'backdrop-contrast': [contrast]\n }],\n /**\n * Backdrop Grayscale\n * @see https://tailwindcss.com/docs/backdrop-grayscale\n */\n 'backdrop-grayscale': [{\n 'backdrop-grayscale': [grayscale]\n }],\n /**\n * Backdrop Hue Rotate\n * @see https://tailwindcss.com/docs/backdrop-hue-rotate\n */\n 'backdrop-hue-rotate': [{\n 'backdrop-hue-rotate': [hueRotate]\n }],\n /**\n * Backdrop Invert\n * @see https://tailwindcss.com/docs/backdrop-invert\n */\n 'backdrop-invert': [{\n 'backdrop-invert': [invert]\n }],\n /**\n * Backdrop Opacity\n * @see https://tailwindcss.com/docs/backdrop-opacity\n */\n 'backdrop-opacity': [{\n 'backdrop-opacity': [opacity]\n }],\n /**\n * Backdrop Saturate\n * @see https://tailwindcss.com/docs/backdrop-saturate\n */\n 'backdrop-saturate': [{\n 'backdrop-saturate': [saturate]\n }],\n /**\n * Backdrop Sepia\n * @see https://tailwindcss.com/docs/backdrop-sepia\n */\n 'backdrop-sepia': [{\n 'backdrop-sepia': [sepia]\n }],\n // Tables\n /**\n * Border Collapse\n * @see https://tailwindcss.com/docs/border-collapse\n */\n 'border-collapse': [{\n border: ['collapse', 'separate']\n }],\n /**\n * Border Spacing\n * @see https://tailwindcss.com/docs/border-spacing\n */\n 'border-spacing': [{\n 'border-spacing': [borderSpacing]\n }],\n /**\n * Border Spacing X\n * @see https://tailwindcss.com/docs/border-spacing\n */\n 'border-spacing-x': [{\n 'border-spacing-x': [borderSpacing]\n }],\n /**\n * Border Spacing Y\n * @see https://tailwindcss.com/docs/border-spacing\n */\n 'border-spacing-y': [{\n 'border-spacing-y': [borderSpacing]\n }],\n /**\n * Table Layout\n * @see https://tailwindcss.com/docs/table-layout\n */\n 'table-layout': [{\n table: ['auto', 'fixed']\n }],\n /**\n * Caption Side\n * @see https://tailwindcss.com/docs/caption-side\n */\n caption: [{\n caption: ['top', 'bottom']\n }],\n // Transitions and Animation\n /**\n * Tranisition Property\n * @see https://tailwindcss.com/docs/transition-property\n */\n transition: [{\n transition: ['none', 'all', '', 'colors', 'opacity', 'shadow', 'transform', isArbitraryValue]\n }],\n /**\n * Transition Duration\n * @see https://tailwindcss.com/docs/transition-duration\n */\n duration: [{\n duration: getNumberAndArbitrary()\n }],\n /**\n * Transition Timing Function\n * @see https://tailwindcss.com/docs/transition-timing-function\n */\n ease: [{\n ease: ['linear', 'in', 'out', 'in-out', isArbitraryValue]\n }],\n /**\n * Transition Delay\n * @see https://tailwindcss.com/docs/transition-delay\n */\n delay: [{\n delay: getNumberAndArbitrary()\n }],\n /**\n * Animation\n * @see https://tailwindcss.com/docs/animation\n */\n animate: [{\n animate: ['none', 'spin', 'ping', 'pulse', 'bounce', isArbitraryValue]\n }],\n // Transforms\n /**\n * Transform\n * @see https://tailwindcss.com/docs/transform\n */\n transform: [{\n transform: ['', 'gpu', 'none']\n }],\n /**\n * Scale\n * @see https://tailwindcss.com/docs/scale\n */\n scale: [{\n scale: [scale]\n }],\n /**\n * Scale X\n * @see https://tailwindcss.com/docs/scale\n */\n 'scale-x': [{\n 'scale-x': [scale]\n }],\n /**\n * Scale Y\n * @see https://tailwindcss.com/docs/scale\n */\n 'scale-y': [{\n 'scale-y': [scale]\n }],\n /**\n * Rotate\n * @see https://tailwindcss.com/docs/rotate\n */\n rotate: [{\n rotate: [isInteger, isArbitraryValue]\n }],\n /**\n * Translate X\n * @see https://tailwindcss.com/docs/translate\n */\n 'translate-x': [{\n 'translate-x': [translate]\n }],\n /**\n * Translate Y\n * @see https://tailwindcss.com/docs/translate\n */\n 'translate-y': [{\n 'translate-y': [translate]\n }],\n /**\n * Skew X\n * @see https://tailwindcss.com/docs/skew\n */\n 'skew-x': [{\n 'skew-x': [skew]\n }],\n /**\n * Skew Y\n * @see https://tailwindcss.com/docs/skew\n */\n 'skew-y': [{\n 'skew-y': [skew]\n }],\n /**\n * Transform Origin\n * @see https://tailwindcss.com/docs/transform-origin\n */\n 'transform-origin': [{\n origin: ['center', 'top', 'top-right', 'right', 'bottom-right', 'bottom', 'bottom-left', 'left', 'top-left', isArbitraryValue]\n }],\n // Interactivity\n /**\n * Accent Color\n * @see https://tailwindcss.com/docs/accent-color\n */\n accent: [{\n accent: ['auto', colors]\n }],\n /**\n * Appearance\n * @see https://tailwindcss.com/docs/appearance\n */\n appearance: [{\n appearance: ['none', 'auto']\n }],\n /**\n * Cursor\n * @see https://tailwindcss.com/docs/cursor\n */\n cursor: [{\n cursor: ['auto', 'default', 'pointer', 'wait', 'text', 'move', 'help', 'not-allowed', 'none', 'context-menu', 'progress', 'cell', 'crosshair', 'vertical-text', 'alias', 'copy', 'no-drop', 'grab', 'grabbing', 'all-scroll', 'col-resize', 'row-resize', 'n-resize', 'e-resize', 's-resize', 'w-resize', 'ne-resize', 'nw-resize', 'se-resize', 'sw-resize', 'ew-resize', 'ns-resize', 'nesw-resize', 'nwse-resize', 'zoom-in', 'zoom-out', isArbitraryValue]\n }],\n /**\n * Caret Color\n * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities\n */\n 'caret-color': [{\n caret: [colors]\n }],\n /**\n * Pointer Events\n * @see https://tailwindcss.com/docs/pointer-events\n */\n 'pointer-events': [{\n 'pointer-events': ['none', 'auto']\n }],\n /**\n * Resize\n * @see https://tailwindcss.com/docs/resize\n */\n resize: [{\n resize: ['none', 'y', 'x', '']\n }],\n /**\n * Scroll Behavior\n * @see https://tailwindcss.com/docs/scroll-behavior\n */\n 'scroll-behavior': [{\n scroll: ['auto', 'smooth']\n }],\n /**\n * Scroll Margin\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-m': [{\n 'scroll-m': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Margin X\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-mx': [{\n 'scroll-mx': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Margin Y\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-my': [{\n 'scroll-my': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Margin Start\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-ms': [{\n 'scroll-ms': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Margin End\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-me': [{\n 'scroll-me': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Margin Top\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-mt': [{\n 'scroll-mt': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Margin Right\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-mr': [{\n 'scroll-mr': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Margin Bottom\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-mb': [{\n 'scroll-mb': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Margin Left\n * @see https://tailwindcss.com/docs/scroll-margin\n */\n 'scroll-ml': [{\n 'scroll-ml': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-p': [{\n 'scroll-p': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding X\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-px': [{\n 'scroll-px': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding Y\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-py': [{\n 'scroll-py': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding Start\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-ps': [{\n 'scroll-ps': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding End\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-pe': [{\n 'scroll-pe': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding Top\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-pt': [{\n 'scroll-pt': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding Right\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-pr': [{\n 'scroll-pr': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding Bottom\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-pb': [{\n 'scroll-pb': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Padding Left\n * @see https://tailwindcss.com/docs/scroll-padding\n */\n 'scroll-pl': [{\n 'scroll-pl': getSpacingWithArbitrary()\n }],\n /**\n * Scroll Snap Align\n * @see https://tailwindcss.com/docs/scroll-snap-align\n */\n 'snap-align': [{\n snap: ['start', 'end', 'center', 'align-none']\n }],\n /**\n * Scroll Snap Stop\n * @see https://tailwindcss.com/docs/scroll-snap-stop\n */\n 'snap-stop': [{\n snap: ['normal', 'always']\n }],\n /**\n * Scroll Snap Type\n * @see https://tailwindcss.com/docs/scroll-snap-type\n */\n 'snap-type': [{\n snap: ['none', 'x', 'y', 'both']\n }],\n /**\n * Scroll Snap Type Strictness\n * @see https://tailwindcss.com/docs/scroll-snap-type\n */\n 'snap-strictness': [{\n snap: ['mandatory', 'proximity']\n }],\n /**\n * Touch Action\n * @see https://tailwindcss.com/docs/touch-action\n */\n touch: [{\n touch: ['auto', 'none', 'manipulation']\n }],\n /**\n * Touch Action X\n * @see https://tailwindcss.com/docs/touch-action\n */\n 'touch-x': [{\n 'touch-pan': ['x', 'left', 'right']\n }],\n /**\n * Touch Action Y\n * @see https://tailwindcss.com/docs/touch-action\n */\n 'touch-y': [{\n 'touch-pan': ['y', 'up', 'down']\n }],\n /**\n * Touch Action Pinch Zoom\n * @see https://tailwindcss.com/docs/touch-action\n */\n 'touch-pz': ['touch-pinch-zoom'],\n /**\n * User Select\n * @see https://tailwindcss.com/docs/user-select\n */\n select: [{\n select: ['none', 'text', 'all', 'auto']\n }],\n /**\n * Will Change\n * @see https://tailwindcss.com/docs/will-change\n */\n 'will-change': [{\n 'will-change': ['auto', 'scroll', 'contents', 'transform', isArbitraryValue]\n }],\n // SVG\n /**\n * Fill\n * @see https://tailwindcss.com/docs/fill\n */\n fill: [{\n fill: [colors, 'none']\n }],\n /**\n * Stroke Width\n * @see https://tailwindcss.com/docs/stroke-width\n */\n 'stroke-w': [{\n stroke: [isLength, isArbitraryLength, isArbitraryNumber]\n }],\n /**\n * Stroke\n * @see https://tailwindcss.com/docs/stroke\n */\n stroke: [{\n stroke: [colors, 'none']\n }],\n // Accessibility\n /**\n * Screen Readers\n * @see https://tailwindcss.com/docs/screen-readers\n */\n sr: ['sr-only', 'not-sr-only'],\n /**\n * Forced Color Adjust\n * @see https://tailwindcss.com/docs/forced-color-adjust\n */\n 'forced-color-adjust': [{\n 'forced-color-adjust': ['auto', 'none']\n }]\n },\n conflictingClassGroups: {\n overflow: ['overflow-x', 'overflow-y'],\n overscroll: ['overscroll-x', 'overscroll-y'],\n inset: ['inset-x', 'inset-y', 'start', 'end', 'top', 'right', 'bottom', 'left'],\n 'inset-x': ['right', 'left'],\n 'inset-y': ['top', 'bottom'],\n flex: ['basis', 'grow', 'shrink'],\n gap: ['gap-x', 'gap-y'],\n p: ['px', 'py', 'ps', 'pe', 'pt', 'pr', 'pb', 'pl'],\n px: ['pr', 'pl'],\n py: ['pt', 'pb'],\n m: ['mx', 'my', 'ms', 'me', 'mt', 'mr', 'mb', 'ml'],\n mx: ['mr', 'ml'],\n my: ['mt', 'mb'],\n size: ['w', 'h'],\n 'font-size': ['leading'],\n 'fvn-normal': ['fvn-ordinal', 'fvn-slashed-zero', 'fvn-figure', 'fvn-spacing', 'fvn-fraction'],\n 'fvn-ordinal': ['fvn-normal'],\n 'fvn-slashed-zero': ['fvn-normal'],\n 'fvn-figure': ['fvn-normal'],\n 'fvn-spacing': ['fvn-normal'],\n 'fvn-fraction': ['fvn-normal'],\n 'line-clamp': ['display', 'overflow'],\n rounded: ['rounded-s', 'rounded-e', 'rounded-t', 'rounded-r', 'rounded-b', 'rounded-l', 'rounded-ss', 'rounded-se', 'rounded-ee', 'rounded-es', 'rounded-tl', 'rounded-tr', 'rounded-br', 'rounded-bl'],\n 'rounded-s': ['rounded-ss', 'rounded-es'],\n 'rounded-e': ['rounded-se', 'rounded-ee'],\n 'rounded-t': ['rounded-tl', 'rounded-tr'],\n 'rounded-r': ['rounded-tr', 'rounded-br'],\n 'rounded-b': ['rounded-br', 'rounded-bl'],\n 'rounded-l': ['rounded-tl', 'rounded-bl'],\n 'border-spacing': ['border-spacing-x', 'border-spacing-y'],\n 'border-w': ['border-w-s', 'border-w-e', 'border-w-t', 'border-w-r', 'border-w-b', 'border-w-l'],\n 'border-w-x': ['border-w-r', 'border-w-l'],\n 'border-w-y': ['border-w-t', 'border-w-b'],\n 'border-color': ['border-color-s', 'border-color-e', 'border-color-t', 'border-color-r', 'border-color-b', 'border-color-l'],\n 'border-color-x': ['border-color-r', 'border-color-l'],\n 'border-color-y': ['border-color-t', 'border-color-b'],\n 'scroll-m': ['scroll-mx', 'scroll-my', 'scroll-ms', 'scroll-me', 'scroll-mt', 'scroll-mr', 'scroll-mb', 'scroll-ml'],\n 'scroll-mx': ['scroll-mr', 'scroll-ml'],\n 'scroll-my': ['scroll-mt', 'scroll-mb'],\n 'scroll-p': ['scroll-px', 'scroll-py', 'scroll-ps', 'scroll-pe', 'scroll-pt', 'scroll-pr', 'scroll-pb', 'scroll-pl'],\n 'scroll-px': ['scroll-pr', 'scroll-pl'],\n 'scroll-py': ['scroll-pt', 'scroll-pb'],\n touch: ['touch-x', 'touch-y', 'touch-pz'],\n 'touch-x': ['touch'],\n 'touch-y': ['touch'],\n 'touch-pz': ['touch']\n },\n conflictingClassGroupModifiers: {\n 'font-size': ['leading']\n }\n };\n};\n\n/**\n * @param baseConfig Config where other config will be merged into. This object will be mutated.\n * @param configExtension Partial config to merge into the `baseConfig`.\n */\nconst mergeConfigs = (baseConfig, {\n cacheSize,\n prefix,\n separator,\n experimentalParseClassName,\n extend = {},\n override = {}\n}) => {\n overrideProperty(baseConfig, 'cacheSize', cacheSize);\n overrideProperty(baseConfig, 'prefix', prefix);\n overrideProperty(baseConfig, 'separator', separator);\n overrideProperty(baseConfig, 'experimentalParseClassName', experimentalParseClassName);\n for (const configKey in override) {\n overrideConfigProperties(baseConfig[configKey], override[configKey]);\n }\n for (const key in extend) {\n mergeConfigProperties(baseConfig[key], extend[key]);\n }\n return baseConfig;\n};\nconst overrideProperty = (baseObject, overrideKey, overrideValue) => {\n if (overrideValue !== undefined) {\n baseObject[overrideKey] = overrideValue;\n }\n};\nconst overrideConfigProperties = (baseObject, overrideObject) => {\n if (overrideObject) {\n for (const key in overrideObject) {\n overrideProperty(baseObject, key, overrideObject[key]);\n }\n }\n};\nconst mergeConfigProperties = (baseObject, mergeObject) => {\n if (mergeObject) {\n for (const key in mergeObject) {\n const mergeValue = mergeObject[key];\n if (mergeValue !== undefined) {\n baseObject[key] = (baseObject[key] || []).concat(mergeValue);\n }\n }\n }\n};\nconst extendTailwindMerge = (configExtension, ...createConfig) => typeof configExtension === 'function' ? createTailwindMerge(getDefaultConfig, configExtension, ...createConfig) : createTailwindMerge(() => mergeConfigs(getDefaultConfig(), configExtension), ...createConfig);\nconst twMerge = /*#__PURE__*/createTailwindMerge(getDefaultConfig);\nexport { createTailwindMerge, extendTailwindMerge, fromTheme, getDefaultConfig, mergeConfigs, twJoin, twMerge, validators };\n//# sourceMappingURL=bundle-mjs.mjs.map\n","import { BREAKPOINTS } from \"@/constants\";\r\nimport { Breakpoints, Style } from \"@/types\";\r\nimport { clsx, type ClassValue } from \"clsx\";\r\nimport { twMerge } from \"tailwind-merge\";\r\n\r\n// Merge class names safely with Tailwind merge\r\nexport function cn(...inputs: ClassValue[]) {\r\n return twMerge(clsx(inputs));\r\n}\r\n\r\n// Convert style object to inline style string\r\nexport function mapStyles(style: Style): string {\r\n /* eslint-disable @typescript-eslint/no-unused-vars */\r\n return Object.entries(style)\r\n .filter(([_, v]) => typeof v !== \"object\" && v != null)\r\n .map(([k, v]) => `${k}: ${v};`)\r\n .join(\" \");\r\n}\r\n// Change the current theme on the document\r\nexport function changeTheme(theme: \"light\" | \"dark\") {\r\n document.documentElement.setAttribute(\"data-theme\", theme);\r\n}\r\n\r\n// Initialize theme to light if not set\r\nexport function initTheme() {\r\n const currentTheme = document.documentElement.getAttribute(\"data-theme\");\r\n if (!currentTheme || (currentTheme !== \"light\" && currentTheme !== \"dark\")) {\r\n changeTheme(\"light\");\r\n }\r\n}\r\n\r\n// Get current theme\r\nexport function getTheme(): \"light\" | \"dark\" {\r\n return document.documentElement.getAttribute(\"data-theme\")! as\r\n | \"light\"\r\n | \"dark\";\r\n}\r\n\r\n// Resolve image URL based on theme\r\nexport function resolveImageUrl(url: string, theme: \"light\" | \"dark\"): string {\r\n return url.includes(\"{{theme}}\") ? url.replace(\"{{theme}}\", theme) : url;\r\n}\r\n\r\n// Splits a Style object into base and responsive\r\nexport function splitStyle(style: Style) {\r\n const base: Style = {};\r\n const responsive: Record<Breakpoints, Style> = {} as any; // eslint-disable-line @typescript-eslint/no-explicit-any\r\n\r\n for (const key in style) {\r\n const value = style[key];\r\n if (value == null) continue;\r\n\r\n if (key in BREAKPOINTS && typeof value === \"object\") {\r\n responsive[key as Breakpoints] = value as Style;\r\n } else {\r\n base[key] = value as string | number;\r\n }\r\n }\r\n\r\n return { base, responsive };\r\n}\r\n\r\n// helper: merges custom breakpoints with defaults\r\nexport function mergeBreakpoints(\r\n custom?: Partial<Record<Breakpoints, string>>\r\n): Record<Breakpoints, string> {\r\n return { ...BREAKPOINTS, ...(custom ?? {}) };\r\n}\r\n\r\nexport function injectResponsiveStyles(\r\n id: string,\r\n responsive: Record<Breakpoints, Style>,\r\n customBreakpoints?: Partial<Record<Breakpoints, string>>\r\n) {\r\n const breakpoints = mergeBreakpoints(customBreakpoints);\r\n let css = \"\";\r\n\r\n for (const bp in responsive) {\r\n const width = breakpoints[bp as Breakpoints];\r\n const mediaQuery = `(min-width: ${width})`;\r\n\r\n const rules = Object.entries(responsive[bp as Breakpoints])\r\n .map(([k, v]) => `${k}: ${v} !important;`)\r\n .join(\" \");\r\n\r\n css += `@media ${mediaQuery} { #${id} { ${rules} } }\\n`;\r\n }\r\n\r\n let styleTag = document.getElementById(\r\n `responsive-style-${id}`\r\n ) as HTMLStyleElement;\r\n\r\n if (!styleTag) {\r\n styleTag = document.createElement(\"style\");\r\n styleTag.id = `responsive-style-${id}`;\r\n document.head.appendChild(styleTag);\r\n }\r\n\r\n styleTag.textContent = css;\r\n}\r\n\r\n// utils/layoutUtils.ts\r\nexport function nextPaint(): Promise<void> {\r\n return new Promise((resolve) => {\r\n requestAnimationFrame(() => requestAnimationFrame(() => resolve()));\r\n });\r\n}\r\n\r\n/**\r\n * Updates flex widths of buttons:\r\n * - Last row normally fixed width\r\n * - Other rows flex-grow: 1\r\n * - If last row === first row, last row grows instead\r\n */\r\n// export async function updateSocialLoginBtnWidths(buttons: HTMLElement[]) {\r\n// if (!buttons.length) return;\r\n\r\n// await nextPaint(); // wait for layout to settle\r\n\r\n// // Detect first row\r\n// let firstTop: number | null = null;\r\n// const firstRow: HTMLElement[] = [];\r\n// for (const btn of buttons) {\r\n// const { top } = btn.getBoundingClientRect();\r\n// if (firstTop === null) firstTop = top;\r\n// if (top !== firstTop) break;\r\n// firstRow.push(btn);\r\n// }\r\n\r\n// if (!firstRow.length) return;\r\n\r\n// const rectWidth = firstRow[0].getBoundingClientRect().width;\r\n// const width = `${rectWidth}px`;\r\n\r\n// const isSingleRow = firstRow.length === buttons.length; // all buttons are in the first row\r\n\r\n// // Apply width to all rows\r\n// buttons.forEach((b, i) => {\r\n// if (isSingleRow) {\r\n// b.style.flexBasis = \"0\";\r\n// b.style.flexGrow = \"1\"; // all buttons grow if single row\r\n// } else {\r\n// b.style.flexGrow = \"0\";\r\n// b.style.flexBasis = width;\r\n// }\r\n// });\r\n\r\n// await nextPaint(); // ensure the browser repaints with updated flex-basis\r\n// }\r\n\r\n// export async function updateSocialLoginBtnWidths(\r\n// container: HTMLElement,\r\n// buttons: HTMLElement[]\r\n// ) {\r\n// if (!buttons.length) return;\r\n\r\n// await nextPaint();\r\n\r\n// const containerWidth = container.offsetWidth;\r\n// const buttonCount = buttons.length;\r\n// const minButtonWidth = 50; // px\r\n// const gap = 8; // px, must match --sso-gap (0.5rem)\r\n\r\n// // Compute max number of buttons that can fit in one row (considering gaps)\r\n// let cols = Math.floor((containerWidth + gap) / (minButtonWidth + gap));\r\n// cols = Math.max(1, Math.min(cols, buttonCount)); // at least 1, at most total buttons\r\n\r\n// // Set CSS vars\r\n// container.style.setProperty(\"--sso-cols\", String(cols));\r\n// container.style.setProperty(\"--sso-gap\", `${gap}px`);\r\n// container.style.setProperty(\r\n// \"--sso-item-width\",\r\n// `calc(100% / var(--sso-cols) - var(--sso-gap) / var(--sso-cols) * (var(--sso-cols) - 1))`\r\n// );\r\n\r\n// console.log(\r\n// `[updateSocialLoginBtnWidths] container=${containerWidth}px, cols=${cols}, totalButtons=${buttonCount}`\r\n// );\r\n// }\r\n\r\nexport async function updateSocialLoginBtnWidths(\r\n container: HTMLElement,\r\n buttons: HTMLElement[]\r\n) {\r\n if (!buttons.length) return;\r\n\r\n await nextPaint();\r\n\r\n const containerWidth = container.offsetWidth;\r\n const buttonCount = buttons.length;\r\n const minButtonWidth = 60; // px\r\n const gap = 8; // px\r\n\r\n let bestCols = 1;\r\n let bestItemWidth = 0;\r\n let bestPriority = -1; // higher is better\r\n\r\n for (let cols = 1; cols <= buttonCount; cols++) {\r\n const totalGap = gap * (cols - 1);\r\n const itemWidth = (containerWidth - totalGap) / cols;\r\n const lastRow = buttonCount % cols;\r\n\r\n if (itemWidth < minButtonWidth) continue; // too small, skip\r\n\r\n // Determine priority\r\n let priority = 0;\r\n if (lastRow === 0 && cols > bestCols)\r\n priority = bestPriority + 1; // full rows → best\r\n else if (lastRow >= 2) priority = 2; // last row ≥ 2 → good\r\n else continue; // lastRow = 1 → invalid\r\n\r\n // Choose if higher priority OR same priority but larger item width\r\n if (\r\n priority > bestPriority ||\r\n (priority === bestPriority && itemWidth > bestItemWidth)\r\n ) {\r\n bestCols = cols;\r\n bestItemWidth = itemWidth;\r\n bestPriority = priority;\r\n }\r\n }\r\n\r\n // Set CSS vars\r\n container.style.setProperty(\"--sso-cols\", String(bestCols));\r\n container.style.setProperty(\"--sso-gap\", `${gap}px`);\r\n container.style.setProperty(\r\n \"--sso-item-width\",\r\n `calc(100% / var(--sso-cols) - var(--sso-gap) / var(--sso-cols) * (var(--sso-cols) - 1))`\r\n );\r\n}\r\n\r\nexport function deepMerge<\r\n T extends Record<string, any>,\r\n U extends Record<string, any>\r\n>(target: T, source: U): T & U {\r\n const result: any = { ...target };\r\n\r\n for (const key in source) {\r\n const sourceVal = source[key];\r\n const targetVal = result[key];\r\n\r\n if (\r\n sourceVal &&\r\n typeof sourceVal === \"object\" &&\r\n !Array.isArray(sourceVal)\r\n ) {\r\n result[key] = deepMerge(\r\n (targetVal ?? {}) as Record<string, any>,\r\n sourceVal as Record<string, any>\r\n );\r\n } else {\r\n result[key] = sourceVal;\r\n }\r\n }\r\n\r\n return result as T & U;\r\n}\r\n","import { ICustomizationOptions, ICustomizations, Style } from \"@/types\";\r\nimport { cn } from \"./styles\";\r\n\r\n// Maps alignment string to CSS flex alignment\r\nexport function mapAlignment(alignment: string) {\r\n return (\r\n { start: \"flex-start\", center: \"center\", end: \"flex-end\" }[alignment] ||\r\n \"flex-start\"\r\n );\r\n}\r\n\r\n// Maps a button variant to its customization object\r\nexport function mapBtnToCustomizedStyle(\r\n variant:\r\n | \"secondary\"\r\n | \"link\"\r\n | \"default\"\r\n | \"destructive\"\r\n | \"outline\"\r\n | \"ghost\",\r\n customizations: ICustomizations\r\n): ICustomizationOptions | undefined {\r\n return {\r\n default: customizations.byType?.buttons?.defaultButton,\r\n secondary: customizations.byType?.buttons?.secondaryButton,\r\n link: customizations.byType?.buttons?.linkButton,\r\n destructive: customizations.byType?.buttons?.destructiveButton,\r\n ghost: customizations.byType?.buttons?.ghostButton,\r\n outline: customizations.byType?.buttons?.outlineButton,\r\n }[variant];\r\n}\r\n\r\n// Applies customizations to class and style, respecting root container, type, and ID\r\nexport function applyCustomizations(\r\n defaultClass: string,\r\n defaultStyle?: Style,\r\n typeCustomization?: ICustomizationOptions,\r\n elementId?: string,\r\n customizations?: ICustomizations,\r\n isRootContainer: boolean = false\r\n): { class: string; style: Style } {\r\n let finalClass = defaultClass || \"\";\r\n let finalStyle = { ...defaultStyle };\r\n\r\n // Apply global font from root container\r\n if (isRootContainer && customizations?.config?.font) {\r\n finalClass = cn(finalClass, customizations.config.font);\r\n }\r\n\r\n const mergeCustomization = (cust?: ICustomizationOptions) => {\r\n if (!cust) return;\r\n const { class: cClass, style: cStyle, font: cFont, rule = \"merge\" } = cust;\r\n if (rule === \"override\") {\r\n finalClass = cFont || cClass || \"\";\r\n finalStyle = cStyle || {};\r\n } else {\r\n finalClass = cn(finalClass, cClass, cFont);\r\n finalStyle = { ...finalStyle, ...cStyle };\r\n }\r\n };\r\n\r\n mergeCustomization(typeCustomization);\r\n\r\n if (elementId && customizations?.byId?.[elementId]) {\r\n mergeCustomization(customizations.byId[elementId]);\r\n }\r\n\r\n return { class: finalClass, style: finalStyle };\r\n}\r\n","export function decodeBase64Svg(icon: string): string | null {\r\n if (!icon?.startsWith(\"data:image/svg+xml;base64,\")) {\r\n return null;\r\n }\r\n\r\n try {\r\n const base64 = icon.replace(\"data:image/svg+xml;base64,\", \"\");\r\n return atob(base64);\r\n } catch (e) {\r\n console.error(\"Invalid base64 SVG:\", e);\r\n return null;\r\n }\r\n}\r\n\r\nexport function resolveIconSource(icon: string): string {\r\n if (/^https?:\\/\\//.test(icon)) {\r\n return icon;\r\n }\r\n\r\n if (icon?.startsWith(\"data:image/svg+xml;base64,\")) {\r\n return icon;\r\n }\r\n\r\n return `data:image/svg+xml;base64,${icon}`;\r\n}\r\n","export function base64ToHtml(base64: string): string {\r\n try {\r\n const content = base64.replace(/^data:text\\/html;base64,/, \"\");\r\n return decodeURIComponent(escape(atob(content)));\r\n } catch (e) {\r\n console.error(\"Failed to decode base64 html:\", e);\r\n return \"\";\r\n }\r\n}\r\n","import { svg } from \"lit\";\r\n\r\nexport function editIcon() {\r\n return svg`<svg\r\n width=\"16\"\r\n height=\"16\"\r\n viewBox=\"0 0 16 16\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <path\r\n d=\"M10.0007 3.33333L12.6673 6M14.1166 4.54126C14.4691 4.18888 14.6671 3.71091 14.6672 3.2125C14.6673 2.71409 14.4693 2.23607 14.1169 1.8836C13.7646 1.53112 13.2866 1.33307 12.7882 1.33301C12.2898 1.33295 11.8117 1.53088 11.4593 1.88326L2.56194 10.7826C2.40715 10.9369 2.29268 11.127 2.22861 11.3359L1.34794 14.2373C1.33071 14.2949 1.32941 14.3562 1.34417 14.4145C1.35894 14.4728 1.38922 14.5261 1.4318 14.5686C1.47439 14.6111 1.52769 14.6413 1.58605 14.656C1.6444 14.6707 1.70565 14.6693 1.76327 14.6519L4.66527 13.7719C4.87405 13.7084 5.06406 13.5947 5.21861 13.4406L14.1166 4.54126Z\"\r\n stroke=\"#0A0A0A\"\r\n stroke-width=\"1.33\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>`;\r\n}\r\n","import { svg } from \"lit\";\r\n\r\nexport function accountIcon() {\r\n return svg`<svg\r\n width=\"20\"\r\n height=\"20\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <path\r\n d=\"M10.001 2.16699C11.8485 2.16699 13.3621 3.62252 13.4551 5.44727L13.46 5.625C13.4518 7.49878 11.988 9.0097 10.125 9.0752H10.085C10.0257 9.07061 9.96647 9.07024 9.91016 9.07422C7.99672 9.00424 6.54297 7.49098 6.54297 5.625C6.54315 3.71807 8.09404 2.16717 10.001 2.16699Z\"\r\n fill=\"#737373\"\r\n stroke=\"#737373\"\r\n />\r\n <path\r\n d=\"M14.2328 11.7914C11.9078 10.2414 8.11615 10.2414 5.77448 11.7914C4.71615 12.4997 4.13281 13.4581 4.13281 14.4831C4.13281 15.5081 4.71615 16.4581 5.76615 17.1581C6.93281 17.9414 8.46615 18.3331 9.99948 18.3331C11.5328 18.3331 13.0661 17.9414 14.2328 17.1581C15.2828 16.4497 15.8661 15.4997 15.8661 14.4664C15.8578 13.4414 15.2828 12.4914 14.2328 11.7914Z\"\r\n fill=\"#737373\"\r\n />\r\n </svg>`;\r\n}\r\n","import { svg } from \"lit\";\r\n\r\nexport function personalInfoIcon() {\r\n return svg`<svg\r\n width=\"24\"\r\n height=\"24\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <path\r\n d=\"M22 12C22 6.49 17.51 2 12 2C6.49 2 2 6.49 2 12C2 14.9 3.25 17.51 5.23 19.34C5.23 19.35 5.23 19.35 5.22 19.36C5.32 19.46 5.44 19.54 5.54 19.63C5.6 19.68 5.65 19.73 5.71 19.77C5.89 19.92 6.09 20.06 6.28 20.2C6.35 20.25 6.41 20.29 6.48 20.34C6.67 20.47 6.87 20.59 7.08 20.7C7.15 20.74 7.23 20.79 7.3 20.83C7.5 20.94 7.71 21.04 7.93 21.13C8.01 21.17 8.09 21.21 8.17 21.24C8.39 21.33 8.61 21.41 8.83 21.48C8.91 21.51 8.99 21.54 9.07 21.56C9.31 21.63 9.55 21.69 9.79 21.75C9.86 21.77 9.93 21.79 10.01 21.8C10.29 21.86 10.57 21.9 10.86 21.93C10.9 21.93 10.94 21.94 10.98 21.95C11.32 21.98 11.66 22 12 22C12.34 22 12.68 21.98 13.01 21.95C13.05 21.95 13.09 21.94 13.13 21.93C13.42 21.9 13.7 21.86 13.98 21.8C14.05 21.79 14.12 21.76 14.2 21.75C14.44 21.69 14.69 21.64 14.92 21.56C15 21.53 15.08 21.5 15.16 21.48C15.38 21.4 15.61 21.33 15.82 21.24C15.9 21.21 15.98 21.17 16.06 21.13C16.27 21.04 16.48 20.94 16.69 20.83C16.77 20.79 16.84 20.74 16.91 20.7C17.11 20.58 17.31 20.47 17.51 20.34C17.58 20.3 17.64 20.25 17.71 20.2C17.91 20.06 18.1 19.92 18.28 19.77C18.34 19.72 18.39 19.67 18.45 19.63C18.56 19.54 18.67 19.45 18.77 19.36C18.77 19.35 18.77 19.35 18.76 19.34C20.75 17.51 22 14.9 22 12ZM16.94 16.97C14.23 15.15 9.79 15.15 7.06 16.97C6.62 17.26 6.26 17.6 5.96 17.97C4.44 16.43 3.5 14.32 3.5 12C3.5 7.31 7.31 3.5 12 3.5C16.69 3.5 20.5 7.31 20.5 12C20.5 14.32 19.56 16.43 18.04 17.97C17.75 17.6 17.38 17.26 16.94 16.97Z\"\r\n fill=\"#737373\"\r\n />\r\n <path\r\n d=\"M12 6.92969C9.93 6.92969 8.25 8.60969 8.25 10.6797C8.25 12.7097 9.84 14.3597 11.95 14.4197C11.98 14.4197 12.02 14.4197 12.04 14.4197C12.06 14.4197 12.09 14.4197 12.11 14.4197C12.12 14.4197 12.13 14.4197 12.13 14.4197C14.15 14.3497 15.74 12.7097 15.75 10.6797C15.75 8.60969 14.07 6.92969 12 6.92969Z\"\r\n fill=\"#737373\"\r\n />\r\n </svg>`;\r\n}\r\n","import { svg } from \"lit\";\r\n\r\nexport function locationIcon() {\r\n return svg`<svg\r\n width=\"24\"\r\n height=\"24\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <path\r\n d=\"M20.6191 8.45C19.5691 3.83 15.5391 1.75 11.9991 1.75C11.9991 1.75 11.9991 1.75 11.9891 1.75C8.45912 1.75 4.41912 3.82 3.36912 8.44C2.19912 13.6 5.35912 17.97 8.21912 20.72C9.27912 21.74 10.6391 22.25 11.9991 22.25C13.3591 22.25 14.7191 21.74 15.7691 20.72C18.6291 17.97 21.7891 13.61 20.6191 8.45ZM11.9991 13.46C10.2591 13.46 8.84912 12.05 8.84912 10.31C8.84912 8.57 10.2591 7.16 11.9991 7.16C13.7391 7.16 15.1491 8.57 15.1491 10.31C15.1491 12.05 13.7391 13.46 11.9991 13.46Z\"\r\n fill=\"#737373\"\r\n />\r\n </svg>`;\r\n}\r\n","import { svg } from \"lit\";\r\n\r\nexport function urlIcon() {\r\n return svg`<svg\r\n width=\"24\"\r\n height=\"24\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n >\r\n <path\r\n d=\"M15 3H21M21 3V9M21 3L10 14M18 13V19C18 19.5304 17.7893 20.0391 17.4142 20.4142C17.0391 20.7893 16.5304 21 16 21H5C4.46957 21 3.96086 20.7893 3.58579 20.4142C3.21071 20.0391 3 19.5304 3 19V8C3 7.46957 3.21071 6.96086 3.58579 6.58579C3.96086 6.21071 4.46957 6 5 6H11\"\r\n stroke=\"#737373\"\r\n stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>`;\r\n}\r\n","import { svg } from \"lit\";\r\n\r\nexport function closeIcon() {\r\n return svg`\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\">\r\n <path d=\"M9 1L1 9M1 1L9 9\" stroke=\"#0A0A0A\" stroke-width=\"1.33\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n`;\r\n}\r\n","import { svg } from \"lit\";\r\n\r\nexport function burgerMenuIcon() {\r\n return svg` \r\n <svg width=\"18\" height=\"14\" viewBox=\"0 0 18 14\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M1 7H17M1 1H17M1 13H17\" stroke=\"#0A0A0A\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n`;\r\n}\r\n","export const CARD_HEADER_CONTAINER_CLASS =\r\n \"sb-w-full sb-flex sb-justify-between sb-border-b sb-px-4 sb-py-2\";\r\nexport const CARD_HEADER_TITLE_CLASS =\r\n \"sb-flex sb-items-center sb-text-[18px] sb-font-medium sb-gap-2 sb-text-muted-foreground !sb-min-w-9 !sb-min-h-9\";\r\nexport const CARD_INPUT_LABEL_CLASS =\r\n \"sb-w-full sb-basis-36 sb-shrink-0 sb-text-sm sb-text-foreground sb-font-medium sb-truncate sb-overflow-hidden sb-text-ellipsis\";\r\nexport const CARD_INPUT_FIELD_CLASS =\r\n \"sb-w-full sb-border-none !sb-shadow-none !sb-px-0 disabled:!sb-opacity-100\";\r\nexport const CARD_EDIT_FORM_CONTAINER_CLASS =\r\n \"!sb-rounded-2xl !sb-p-0 !sb-bg-base-background\";\r\nexport const CARD_CONTAINER_CLASS = \"!sb-rounded-2xl !sb-p-0 sb-mb-4\";\r\nexport const CARD_EDITABLE_INPUT_CLASS = \"!sb-bg-background\";\r\nexport const CARD_DEFAULT_BUTTON = \"sb-w-full md:sb-w-[120px]\";\r\nexport const CARD_OUTLINE_BUTTON = \"sb-w-full md:sb-w-[120px]\";\r\nexport const CARD_EDIT_BUTTON =\r\n \"sb-text-muted-foreground sb-text-sm sb-mr-2 sb-flex sb-items-center sb-gap-1\";\r\n","import { LitElement, html, TemplateResult } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { accountIcon, editIcon } from \"@/assets/icons\";\r\nimport {\r\n ICustomizations,\r\n IProfileWidgetCustomization,\r\n USER_PROFILE_WIDGETS_LAYOUT,\r\n} from \"@/types\";\r\nimport {\r\n applyCustomizations,\r\n cn,\r\n mapBtnToCustomizedStyle,\r\n mapStyles,\r\n} from \"@/utils\";\r\nimport {\r\n CARD_CONTAINER_CLASS,\r\n CARD_DEFAULT_BUTTON,\r\n CARD_EDIT_FORM_CONTAINER_CLASS,\r\n CARD_EDITABLE_INPUT_CLASS,\r\n CARD_HEADER_CONTAINER_CLASS,\r\n CARD_HEADER_TITLE_CLASS,\r\n CARD_INPUT_FIELD_CLASS,\r\n CARD_INPUT_LABEL_CLASS,\r\n CARD_OUTLINE_BUTTON,\r\n} from \"./classes\";\r\nimport { ELEMENT_IDS } from \"@/constants\";\r\n\r\nexport interface Account {\r\n email: string;\r\n phone: string;\r\n avatar: string;\r\n}\r\n\r\nconst renderOtpContent = (variant: string, length: number) => {\r\n const baseSlots = Array.from({ length }).map(\r\n (_, index) =>\r\n html`<rtg-input-otp-slot\r\n class=\"sb-bg-background\"\r\n index=${index}\r\n ></rtg-input-otp-slot>`\r\n );\r\n\r\n const group = (items: any) =>\r\n html`<rtg-input-otp-group>${items}</rtg-input-otp-group>`;\r\n const sep = () => html`<rtg-input-otp-separator></rtg-input-otp-separator>`;\r\n\r\n switch (variant) {\r\n case \"with_spacing\":\r\n return html`<rtg-input-otp-group class=\"gap-2\"\r\n >${baseSlots}</rtg-input-otp-group\r\n >`;\r\n case \"simple\":\r\n return html`${group(baseSlots.slice(0, 3))}${sep()}${group(\r\n baseSlots.slice(3)\r\n )}`;\r\n case \"with_separator\":\r\n return html`\r\n ${group(baseSlots.slice(0, 2))}${sep()}\r\n ${group(baseSlots.slice(2, 4))}${sep()} ${group(baseSlots.slice(4))}\r\n `;\r\n default:\r\n return group(baseSlots);\r\n }\r\n};\r\n\r\n@customElement(\"sb-account-info\")\r\nexport class SbAccountInfo extends LitElement {\r\n @property({ type: Object }) account!: Account;\r\n @property({ type: Boolean }) showAvatarMenu = false;\r\n @property({ type: Object }) customizations: ICustomizations | null = null;\r\n @property({ type: Function }) toggleAvatarMenu!: (e: Event) => void;\r\n @property({ type: Function }) onAvatarChange!: () => void;\r\n @property({ type: Function }) onAvatarRemove!: () => void;\r\n @property({ type: Boolean }) showIcons = true;\r\n @property({ type: Object }) content: IProfileWidgetCustomization | null =\r\n null;\r\n @property({ type: String }) otpVariant:\r\n | \"simple\"\r\n | \"with_spacing\"\r\n | \"with_separator\"\r\n | \"digits_only\" = \"simple\";\r\n @property({ type: Number }) otpLength = 6;\r\n @property({ type: String }) layout: USER_PROFILE_WIDGETS_LAYOUT =\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW;\r\n\r\n @state() private isEditingEmail = false;\r\n @state() private isVerifyingEmail = false;\r\n @state() private isEditingPhone = false;\r\n @state() private isVerifyingPhone = false;\r\n\r\n // Helpers to centralize customization mappings\r\n private getButtonStyles() {\r\n const defaultBtn = mapBtnToCustomizedStyle(\"default\", this.customizations!);\r\n const outlineBtn = mapBtnToCustomizedStyle(\"outline\", this.customizations!);\r\n const defaultMapped = applyCustomizations(\r\n CARD_DEFAULT_BUTTON,\r\n {},\r\n defaultBtn,\r\n ELEMENT_IDS.USER_PROFILE_DEFAULT_BUTTON,\r\n this.customizations!\r\n );\r\n const outlineMapped = applyCustomizations(\r\n CARD_OUTLINE_BUTTON,\r\n {},\r\n outlineBtn,\r\n ELEMENT_IDS.USER_PROFILE_DEFAULT_BUTTON,\r\n this.customizations!\r\n );\r\n return { defaultMapped, outlineMapped };\r\n }\r\n\r\n private getInputStyles(isEditable = false) {\r\n const baseClass = isEditable\r\n ? CARD_EDITABLE_INPUT_CLASS\r\n : cn(CARD_INPUT_FIELD_CLASS);\r\n return applyCustomizations(\r\n baseClass,\r\n {},\r\n this.customizations?.byType?.inputs?.inputField,\r\n isEditable\r\n ? ELEMENT_IDS.USER_PROFILE_EDITABLE_INPUT_FIELD\r\n : ELEMENT_IDS.USER_PROFILE_INPUT_FIELD,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private getLabelStyles() {\r\n return applyCustomizations(\r\n cn(CARD_INPUT_LABEL_CLASS, \"sb-hidden md:sb-inline\"),\r\n {},\r\n this.customizations?.byType?.labels?.inputLabel,\r\n ELEMENT_IDS.USER_PROFILE_INPUT_LABEL,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private getContainerStyles(isEditContainer: boolean) {\r\n return applyCustomizations(\r\n isEditContainer ? CARD_EDIT_FORM_CONTAINER_CLASS : CARD_CONTAINER_CLASS,\r\n {},\r\n isEditContainer\r\n ? this.customizations?.byType?.userProfile?.userProfileCard?.editForm\r\n : this.customizations?.byType?.userProfile?.userProfileCard?.container,\r\n isEditContainer\r\n ? ELEMENT_IDS.USER_PROFILE_EDIT_FORM\r\n : ELEMENT_IDS.USER_PROFILE_CARD_CONTAINER,\r\n this.customizations!\r\n );\r\n }\r\n\r\n // Generic field display row\r\n private renderDisplayRow(label: string, value: string, onEdit: () => void) {\r\n const { class: labelClass, style: labelStyle } = this.getLabelStyles();\r\n const { class: inputClass, style: inputStyle } = this.getInputStyles();\r\n const isColumn = this.layout === USER_PROFILE_WIDGETS_LAYOUT.COLUMN;\r\n\r\n return html`\r\n <div\r\n class=${cn(\r\n \"sb-w-full\",\r\n isColumn\r\n ? \"sb-flex sb-flex-row-reverse md:sb-flex-col sb-gap-2\"\r\n : \"sb-flex sb-items-center sb-justify-between sb-gap-2\"\r\n )}\r\n >\r\n ${isColumn\r\n ? html`\r\n <div class=\"sb-flex sb-items-center sb-justify-between sb-gap-2\">\r\n <div class=${labelClass} style=${mapStyles(labelStyle)}>\r\n ${label}\r\n </div>\r\n <rtg-button variant=\"outline\" size=\"sm\" @click=${onEdit}>\r\n ${editIcon()}\r\n </rtg-button>\r\n </div>\r\n <div class=\"sb-flex-1 sb-min-w-0\">\r\n <rtg-input\r\n customClass=${inputClass}\r\n customStyle=${mapStyles(inputStyle)}\r\n .value=${value}\r\n disabled\r\n ></rtg-input>\r\n </div>\r\n `\r\n : html`\r\n <div class=${labelClass} style=${mapStyles(labelStyle)}>\r\n ${label}\r\n </div>\r\n <div class=\"sb-flex-1 sb-min-w-0\">\r\n <rtg-input\r\n customClass=${inputClass}\r\n customStyle=${mapStyles(inputStyle)}\r\n .value=${value}\r\n disabled\r\n ></rtg-input>\r\n </div>\r\n <rtg-button variant=\"outline\" size=\"sm\" @click=${onEdit}>\r\n ${editIcon()}\r\n </rtg-button>\r\n `}\r\n </div>\r\n `;\r\n }\r\n\r\n // Generic edit form\r\n private renderEditForm(\r\n type: \"email\" | \"phone\",\r\n placeholder: string,\r\n onSend: () => void,\r\n onCancel: () => void\r\n ) {\r\n const { class: containerClass, style: containerStyle } =\r\n this.getContainerStyles(true);\r\n const { class: inputClass, style: inputStyle } = this.getInputStyles(true);\r\n const { defaultMapped, outlineMapped } = this.getButtonStyles();\r\n\r\n const title = type === \"email\" ? \"Edit email address\" : \"Edit phone number\";\r\n const desc =\r\n type === \"email\"\r\n ? \"Type your new email address to replace the old one.\"\r\n : \"Type your new phone number to replace the old one.\";\r\n\r\n return html`\r\n <rtg-card\r\n customClass=${cn(\"!sb-pt-4\", containerClass)}\r\n customStyle=${mapStyles(containerStyle)}\r\n >\r\n <rtg-card-title class=\"sb-flex sb-items-center sb-justify-between\">\r\n <span class=\"sb-text-[18px] sb-font-medium sb-mx-4 sb-mt-4 sb-mb-2\"\r\n >${title}</span\r\n >\r\n </rtg-card-title>\r\n <rtg-card-description>\r\n <div class=\"sb-text-sm sb-text-muted-foreground sb-mx-4\">${desc}</div>\r\n </rtg-card-description>\r\n <rtg-card-content>\r\n <div class=\"sb-flex sb-flex-col sb-gap-3 sb-mx-4 sb-mb-8 sb-mt-4\">\r\n <rtg-input\r\n customClass=${inputClass}\r\n customStyle=${mapStyles(inputStyle)}\r\n placeholder=${placeholder}\r\n type=${type === \"phone\" ? \"tel\" : \"text\"}\r\n ></rtg-input>\r\n </div>\r\n </rtg-card-content>\r\n <rtg-separator></rtg-separator>\r\n <rtg-card-footer\r\n customClass=\"sb-flex sb-flex-col md:sb-flex-row-reverse sb-gap-2 sb-m-4\"\r\n >\r\n <rtg-button\r\n class=${defaultMapped.class}\r\n style=${mapStyles(defaultMapped.style)}\r\n @click=${onSend}\r\n >Send Code</rtg-button\r\n >\r\n <rtg-button\r\n class=${outlineMapped.class}\r\n style=${mapStyles(outlineMapped.style)}\r\n variant=\"outline\"\r\n @click=${onCancel}\r\n >Cancel</rtg-button\r\n >\r\n </rtg-card-footer>\r\n </rtg-card>\r\n `;\r\n }\r\n\r\n // Generic verification form\r\n private renderVerificationForm(\r\n type: \"email\" | \"phone\",\r\n onCancel: () => void\r\n ) {\r\n const { class: containerClass, style: containerStyle } =\r\n this.getContainerStyles(true);\r\n const { defaultMapped, outlineMapped } = this.getButtonStyles();\r\n const { class: otpClass, style: otpStyle } = this.getInputStyles();\r\n\r\n const title =\r\n type === \"email\"\r\n ? \"Email verification required\"\r\n : \"Phone number verification required\";\r\n const desc =\r\n type === \"email\"\r\n ? \"Please enter the code to verify this email.\"\r\n : \"Please enter the code to verify this phone number.\";\r\n\r\n return html`\r\n <rtg-card\r\n customClass=${cn(\"!sb-pt-4\", containerClass)}\r\n customStyle=${mapStyles(containerStyle)}\r\n >\r\n <rtg-card-title class=\"sb-flex sb-items-center sb-justify-between\">\r\n <span class=\"sb-text-[18px] sb-font-medium sb-mx-4 sb-mt-4 sb-mb-2\"\r\n >${title}</span\r\n >\r\n </rtg-card-title>\r\n <rtg-card-description>\r\n <div class=\"sb-text-sm sb-text-muted-foreground sb-mx-4\">${desc}</div>\r\n </rtg-card-description>\r\n <rtg-card-content>\r\n <div\r\n class=\"sb-flex sb-items-center sb-flex-col sb-gap-3 sb-mx-4 sb-mb-8 sb-mt-4\"\r\n >\r\n <rtg-input-otp\r\n customClass=${otpClass}\r\n customStyle=${mapStyles(otpStyle)}\r\n variant=${this.otpVariant}\r\n >\r\n ${renderOtpContent(this.otpVariant, this.otpLength)}\r\n </rtg-input-otp>\r\n <p class=\"sb-text-[12px] sb-font-medium\">\r\n Resend Verification Code\r\n </p>\r\n </div>\r\n </rtg-card-content>\r\n <rtg-separator></rtg-separator>\r\n <rtg-card-footer\r\n class=\"sb-flex sb-flex-row sb-flex-row-reverse sb-gap-2 sb-m-4\"\r\n >\r\n <rtg-button\r\n variant=\"outline\"\r\n class=${outlineMapped.class}\r\n style=${mapStyles(outlineMapped.style)}\r\n @click=${onCancel}\r\n >Cancel</rtg-button\r\n >\r\n <rtg-button\r\n class=${defaultMapped.class}\r\n style=${mapStyles(defaultMapped.style)}\r\n >Confirm</rtg-button\r\n >\r\n </rtg-card-footer>\r\n </rtg-card>\r\n `;\r\n }\r\n\r\n // EMAIL\r\n private renderEmailSection() {\r\n if (this.isVerifyingEmail)\r\n return this.renderVerificationForm(\r\n \"email\",\r\n () => ((this.isVerifyingEmail = false), (this.isEditingEmail = true))\r\n );\r\n if (this.isEditingEmail)\r\n return this.renderEditForm(\r\n \"email\",\r\n \"Email\",\r\n () => ((this.isVerifyingEmail = true), (this.isEditingEmail = false)),\r\n () => (this.isEditingEmail = false)\r\n );\r\n return this.renderDisplayRow(\r\n \"Email\",\r\n this.account.email,\r\n () => (this.isEditingEmail = true)\r\n );\r\n }\r\n\r\n // PHONE\r\n private renderPhoneSection() {\r\n if (this.isVerifyingPhone)\r\n return this.renderVerificationForm(\r\n \"phone\",\r\n () => ((this.isVerifyingPhone = false), (this.isEditingPhone = true))\r\n );\r\n if (this.isEditingPhone)\r\n return this.renderEditForm(\r\n \"phone\",\r\n \"Phone Number\",\r\n () => ((this.isVerifyingPhone = true), (this.isEditingPhone = false)),\r\n () => (this.isEditingPhone = false)\r\n );\r\n return this.renderDisplayRow(\r\n \"Phone number\",\r\n this.account.phone,\r\n () => (this.isEditingPhone = true)\r\n );\r\n }\r\n\r\n private renderHeader() {\r\n const { class: containerClass, style: containerStyle } =\r\n applyCustomizations(\r\n CARD_HEADER_CONTAINER_CLASS,\r\n {},\r\n this.customizations?.byType?.userProfile?.userProfileCard?.header\r\n ?.container,\r\n ELEMENT_IDS.USER_PROFILE_CARD_HEADER_CONTAINER,\r\n this.customizations!\r\n );\r\n const { class: titleClass, style: titleStyle } = applyCustomizations(\r\n CARD_HEADER_TITLE_CLASS,\r\n {},\r\n this.customizations?.byType?.userProfile?.userProfileCard?.header?.title,\r\n ELEMENT_IDS.USER_PROFILE_CARD_HEADER_CONTAINER,\r\n this.customizations!\r\n );\r\n\r\n return html`\r\n <rtg-card-header\r\n customClass=${containerClass}\r\n customStyle=${mapStyles(containerStyle)}\r\n >\r\n <rtg-card-title\r\n customClass=${titleClass}\r\n customStyle=${mapStyles(titleStyle)}\r\n >\r\n ${this.content?.icon || accountIcon()}\r\n <span>${this.content?.title || \"Account\"}</span>\r\n </rtg-card-title>\r\n </rtg-card-header>\r\n `;\r\n }\r\n\r\n private renderAvatar() {\r\n return html`\r\n <div\r\n class=${cn(\r\n \"sb-relative sb-flex sb-mx-auto md:sb-px-4 md:sb-pb-4\",\r\n \"sb-my-4\"\r\n )}\r\n @click=${this.toggleAvatarMenu}\r\n >\r\n <rtg-avatar customClass=\"sb-cursor-pointer !sb-w-[80px] !sb-h-[80px]\">\r\n ${this.account.avatar\r\n ? html`<rtg-avatar-image\r\n src=${this.account.avatar}\r\n ></rtg-avatar-image>`\r\n : html`<rtg-avatar-fallback></rtg-avatar-fallback>`}\r\n </rtg-avatar>\r\n ${this.showAvatarMenu && !(this.isEditingEmail || this.isEditingPhone)\r\n ? html`\r\n <rtg-card\r\n customClass=\"sb-absolute !sb-p-2 sb-top-full sb-left-1/2 -sb-translate-y-1/2 sb-z-[999] sb-w-[200px] sb-shadow-md sb-bg-background sb-rounded-2xl\"\r\n >\r\n <div\r\n class=\"sb-py-[6px] sb-px-2 sb-mb-2 sb-text-sm sb-cursor-pointer\"\r\n @click=${(e: Event) => (\r\n e.stopPropagation(), this.onAvatarChange?.()\r\n )}\r\n >\r\n Change profile picture\r\n </div>\r\n <div\r\n class=\"sb-py-[6px] sb-px-2 sb-text-sm sb-cursor-pointer\"\r\n @click=${(e: Event) => (\r\n e.stopPropagation(), this.onAvatarRemove?.()\r\n )}\r\n >\r\n Remove\r\n </div>\r\n </rtg-card>\r\n `\r\n : null}\r\n </div>\r\n `;\r\n }\r\n\r\n private renderAccountDetails() {\r\n return html`<div\r\n class=\"sb-flex sb-flex-col sb-mx-4 sb-my-2 md:sb-my-4 sb-gap-1 sb-flex-1\"\r\n >\r\n ${this.renderEmailSection()} ${this.renderPhoneSection()}\r\n </div>`;\r\n }\r\n\r\n render() {\r\n const { class: containerClass, style: containerStyle } =\r\n this.getContainerStyles(false);\r\n return html`\r\n <rtg-card\r\n customStyle=${mapStyles(containerStyle)}\r\n customClass=${containerClass}\r\n >\r\n ${this.renderHeader()}\r\n <rtg-card-content>\r\n <div class=\"sb-flex sb-flex-col md:sb-flex-row\">\r\n ${this.renderAvatar()} ${this.renderAccountDetails()}\r\n </div>\r\n </rtg-card-content>\r\n </rtg-card>\r\n `;\r\n }\r\n\r\n createRenderRoot() {\r\n return this;\r\n }\r\n}\r\n","import { LitElement, html, TemplateResult, PropertyValues } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { personalInfoIcon, editIcon } from \"@/assets/icons\";\r\nimport {\r\n ICustomizations,\r\n IProfileWidgetCustomization,\r\n USER_PROFILE_WIDGETS_LAYOUT,\r\n} from \"@/types\";\r\nimport {\r\n applyCustomizations,\r\n cn,\r\n mapBtnToCustomizedStyle,\r\n mapStyles,\r\n} from \"@/utils\";\r\nimport {\r\n CARD_CONTAINER_CLASS,\r\n CARD_DEFAULT_BUTTON,\r\n CARD_EDIT_BUTTON,\r\n CARD_EDIT_FORM_CONTAINER_CLASS,\r\n CARD_EDITABLE_INPUT_CLASS,\r\n CARD_HEADER_CONTAINER_CLASS,\r\n CARD_HEADER_TITLE_CLASS,\r\n CARD_INPUT_FIELD_CLASS,\r\n CARD_INPUT_LABEL_CLASS,\r\n CARD_OUTLINE_BUTTON,\r\n} from \"./classes\";\r\nimport { ELEMENT_IDS } from \"@/constants\";\r\n\r\nexport interface PersonalInfo {\r\n username: string;\r\n first: string;\r\n middle: string;\r\n last: string;\r\n nickname: string;\r\n gender: string;\r\n bio: string;\r\n}\r\n\r\n@customElement(\"sb-personal-info\")\r\nexport class SbPersonalInfo extends LitElement {\r\n @property({ type: Object }) personal!: PersonalInfo;\r\n @property({ type: Object }) customizations: ICustomizations | null = null;\r\n\r\n @property({ type: Boolean }) showIcons: boolean = true;\r\n\r\n @property({ type: String }) layout: USER_PROFILE_WIDGETS_LAYOUT =\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW;\r\n\r\n @property({ type: Object })\r\n content: IProfileWidgetCustomization | null = null;\r\n\r\n @state() private isEditing: boolean = false;\r\n\r\n private handleEdit() {\r\n this.isEditing = true;\r\n }\r\n\r\n private handleCancel() {\r\n this.isEditing = false;\r\n }\r\n\r\n private handleSave() {\r\n this.isEditing = false;\r\n }\r\n\r\n createRenderRoot() {\r\n return this; // Light DOM\r\n }\r\n\r\n private getButtonStyles() {\r\n const defaultBtn = mapBtnToCustomizedStyle(\"default\", this.customizations!);\r\n const outlineBtn = mapBtnToCustomizedStyle(\"outline\", this.customizations!);\r\n const ghostBtn = mapBtnToCustomizedStyle(\"ghost\", this.customizations!);\r\n\r\n const defaultMapped = applyCustomizations(\r\n CARD_DEFAULT_BUTTON,\r\n {},\r\n defaultBtn,\r\n ELEMENT_IDS.USER_PROFILE_DEFAULT_BUTTON,\r\n this.customizations!\r\n );\r\n const outlineMapped = applyCustomizations(\r\n CARD_OUTLINE_BUTTON,\r\n {},\r\n outlineBtn,\r\n ELEMENT_IDS.USER_PROFILE_DEFAULT_BUTTON,\r\n this.customizations!\r\n );\r\n const ghostMapped = applyCustomizations(\r\n CARD_EDIT_BUTTON,\r\n {},\r\n ghostBtn,\r\n ELEMENT_IDS.USER_PROFILE_EDIT_BUTTON,\r\n this.customizations!\r\n );\r\n return { defaultMapped, outlineMapped, ghostMapped };\r\n }\r\n\r\n private getInputStyles(isEditable = false) {\r\n const baseClass = isEditable\r\n ? CARD_EDITABLE_INPUT_CLASS\r\n : cn(CARD_INPUT_FIELD_CLASS);\r\n return applyCustomizations(\r\n baseClass,\r\n {},\r\n this.customizations?.byType?.inputs?.inputField,\r\n isEditable\r\n ? ELEMENT_IDS.USER_PROFILE_EDITABLE_INPUT_FIELD\r\n : ELEMENT_IDS.USER_PROFILE_INPUT_FIELD,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private getLabelStyles() {\r\n return applyCustomizations(\r\n cn(\r\n CARD_INPUT_LABEL_CLASS,\r\n this.layout !== USER_PROFILE_WIDGETS_LAYOUT.ROW ? \"sb-basis-auto\" : \"\"\r\n ),\r\n {},\r\n this.customizations?.byType?.labels?.inputLabel,\r\n ELEMENT_IDS.USER_PROFILE_INPUT_LABEL,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private getContainerStyles(isEditContainer: boolean) {\r\n return applyCustomizations(\r\n cn(\r\n isEditContainer\r\n ? CARD_EDIT_FORM_CONTAINER_CLASS + \" sb-mb-4\"\r\n : CARD_CONTAINER_CLASS\r\n ),\r\n {},\r\n isEditContainer\r\n ? this.customizations?.byType?.userProfile?.userProfileCard?.editForm\r\n : this.customizations?.byType?.userProfile?.userProfileCard?.container,\r\n isEditContainer\r\n ? ELEMENT_IDS.USER_PROFILE_EDIT_FORM\r\n : ELEMENT_IDS.USER_PROFILE_CARD_CONTAINER,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private renderInput(value: string): TemplateResult {\r\n const input = this.getInputStyles(this.isEditing);\r\n return html`\r\n <rtg-input\r\n customClass=\"${input.class}\"\r\n customStyle=\"${mapStyles(input.style)}\"\r\n ?disabled=${!this.isEditing}\r\n .value=${value}\r\n ></rtg-input>\r\n `;\r\n }\r\n\r\n private renderFooter(\r\n defaultMapped: ReturnType<typeof this.getButtonStyles>[\"defaultMapped\"],\r\n outlineMapped: ReturnType<typeof this.getButtonStyles>[\"outlineMapped\"]\r\n ): TemplateResult {\r\n return html`\r\n <rtg-card-footer\r\n customClass=\"sb-flex sb-flex-col md:sb-flex-row-reverse sb-gap-2 sb-m-4\"\r\n >\r\n <rtg-button\r\n variant=\"default\"\r\n customClass=${defaultMapped.class}\r\n customStyle=${mapStyles(defaultMapped.style)}\r\n @click=${this.handleSave}\r\n >\r\n Save\r\n </rtg-button>\r\n\r\n <rtg-button\r\n variant=\"outline\"\r\n customClass=${outlineMapped.class}\r\n customStyle=${mapStyles(outlineMapped.style)}\r\n @click=${this.handleCancel}\r\n >\r\n Cancel\r\n </rtg-button>\r\n </rtg-card-footer>\r\n `;\r\n }\r\n\r\n render() {\r\n const fields = [\r\n { label: \"Username\", value: this.personal.username },\r\n { label: \"First name\", value: this.personal.first },\r\n { label: \"Middle name\", value: this.personal.middle },\r\n { label: \"Last name\", value: this.personal.last },\r\n { label: \"Nickname\", value: this.personal.nickname },\r\n { label: \"Gender\", value: this.personal.gender },\r\n { label: \"Bio\", value: this.personal.bio },\r\n ];\r\n\r\n const container = this.getContainerStyles(false);\r\n const editContainer = this.getContainerStyles(true);\r\n\r\n // Buttons\r\n const { defaultMapped, outlineMapped, ghostMapped } =\r\n this.getButtonStyles();\r\n\r\n // Header\r\n const headerContainer = applyCustomizations(\r\n CARD_HEADER_CONTAINER_CLASS,\r\n {},\r\n this.customizations?.byType?.userProfile?.userProfileCard?.header\r\n ?.container,\r\n ELEMENT_IDS.USER_PROFILE_CARD_HEADER_CONTAINER,\r\n this.customizations!\r\n );\r\n const headerTitle = applyCustomizations(\r\n CARD_HEADER_TITLE_CLASS,\r\n {},\r\n this.customizations?.byType?.userProfile?.userProfileCard?.header?.title,\r\n ELEMENT_IDS.USER_PROFILE_CARD_HEADER_CONTAINER,\r\n this.customizations!\r\n );\r\n\r\n // Labels\r\n const label = this.getLabelStyles();\r\n const activeContainer = this.isEditing ? editContainer : container;\r\n\r\n return html`\r\n <rtg-card\r\n customClass=${activeContainer.class}\r\n customStyle=${mapStyles(activeContainer.style)}\r\n >\r\n <!-- Header -->\r\n <rtg-card-header\r\n customClass=${headerContainer.class}\r\n customStyle=${mapStyles(headerContainer.style)}\r\n >\r\n <rtg-card-title\r\n customClass=${headerTitle.class}\r\n customStyle=${mapStyles(headerTitle.style)}\r\n >\r\n ${this.content?.icon ? this.content?.icon : personalInfoIcon()}\r\n\r\n <span>\r\n ${this.content?.title ? this.content?.title : \"Personal Info\"}\r\n </span>\r\n </rtg-card-title>\r\n ${!this.isEditing\r\n ? html`\r\n <rtg-button\r\n variant=\"ghost\"\r\n size=\"icon\"\r\n aria-label=\"Edit\"\r\n @click=${this.handleEdit}\r\n customClass=${ghostMapped.class}\r\n customStyle=${mapStyles(ghostMapped.style)}\r\n >\r\n ${editIcon()}\r\n </rtg-button>\r\n `\r\n : null}\r\n </rtg-card-header>\r\n\r\n <!-- Content -->\r\n <rtg-card-content>\r\n <div class=\"sb-flex sb-flex-col sb-gap-3 sb-p-4\">\r\n ${fields.map(\r\n (item) => html`\r\n <div\r\n class=\"sb-flex ${this.layout ===\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW\r\n ? \"sb-flex-row sb-items-center sb-gap-2\"\r\n : \"sb-flex-col sb-gap-1\"}\"\r\n >\r\n <div class=${label.class} style=${mapStyles(label.style)}>\r\n ${item.label}\r\n </div>\r\n <div class=\"sb-flex-1 sb-min-w-0 sb-mr-4\">\r\n ${this.renderInput(item.value)}\r\n </div>\r\n </div>\r\n `\r\n )}\r\n </div>\r\n </rtg-card-content>\r\n\r\n ${this.isEditing ? html`<rtg-separator></rtg-separator>` : null}\r\n <!-- Footer -->\r\n ${this.isEditing\r\n ? this.renderFooter(defaultMapped, outlineMapped)\r\n : null}\r\n </rtg-card>\r\n `;\r\n }\r\n}\r\n","import { LitElement, TemplateResult, html } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { locationIcon, editIcon } from \"@/assets/icons\";\r\nimport {\r\n ICustomizations,\r\n IProfileWidgetCustomization,\r\n USER_PROFILE_WIDGETS_LAYOUT,\r\n} from \"@/types\";\r\nimport {\r\n applyCustomizations,\r\n cn,\r\n mapBtnToCustomizedStyle,\r\n mapStyles,\r\n} from \"@/utils\";\r\nimport {\r\n CARD_CONTAINER_CLASS,\r\n CARD_DEFAULT_BUTTON,\r\n CARD_EDIT_BUTTON,\r\n CARD_EDIT_FORM_CONTAINER_CLASS,\r\n CARD_EDITABLE_INPUT_CLASS,\r\n CARD_HEADER_CONTAINER_CLASS,\r\n CARD_HEADER_TITLE_CLASS,\r\n CARD_INPUT_FIELD_CLASS,\r\n CARD_INPUT_LABEL_CLASS,\r\n CARD_OUTLINE_BUTTON,\r\n} from \"./classes\";\r\nimport { ELEMENT_IDS } from \"@/constants\";\r\n\r\nexport interface LocationInfo {\r\n location: string;\r\n zoneInfo: string;\r\n}\r\n\r\n@customElement(\"sb-location-info\")\r\nexport class SbLocationInfo extends LitElement {\r\n @property({ type: Object }) locationInfo!: LocationInfo;\r\n @property({ type: Object }) customizations: ICustomizations | null = null;\r\n\r\n @property({ type: Boolean }) showIcons: boolean = true;\r\n\r\n @property({ type: String }) layout: USER_PROFILE_WIDGETS_LAYOUT =\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW;\r\n\r\n @property({ type: Object })\r\n content: IProfileWidgetCustomization | null = null;\r\n\r\n @state() private isEditing: boolean = false;\r\n\r\n private handleEdit() {\r\n this.isEditing = true;\r\n }\r\n\r\n private handleCancel() {\r\n this.isEditing = false;\r\n }\r\n\r\n private handleSave() {\r\n this.isEditing = false;\r\n }\r\n\r\n createRenderRoot() {\r\n return this; // Light DOM\r\n }\r\n\r\n private getButtonStyles() {\r\n const defaultBtn = mapBtnToCustomizedStyle(\"default\", this.customizations!);\r\n const outlineBtn = mapBtnToCustomizedStyle(\"outline\", this.customizations!);\r\n const ghostBtn = mapBtnToCustomizedStyle(\"ghost\", this.customizations!);\r\n\r\n const defaultMapped = applyCustomizations(\r\n CARD_DEFAULT_BUTTON,\r\n {},\r\n defaultBtn,\r\n ELEMENT_IDS.USER_PROFILE_DEFAULT_BUTTON,\r\n this.customizations!\r\n );\r\n const outlineMapped = applyCustomizations(\r\n CARD_OUTLINE_BUTTON,\r\n {},\r\n outlineBtn,\r\n ELEMENT_IDS.USER_PROFILE_DEFAULT_BUTTON,\r\n this.customizations!\r\n );\r\n const ghostMapped = applyCustomizations(\r\n CARD_EDIT_BUTTON,\r\n {},\r\n ghostBtn,\r\n ELEMENT_IDS.USER_PROFILE_EDIT_BUTTON,\r\n this.customizations!\r\n );\r\n return { defaultMapped, outlineMapped, ghostMapped };\r\n }\r\n\r\n private getInputStyles(isEditable = false) {\r\n const baseClass = isEditable\r\n ? CARD_EDITABLE_INPUT_CLASS\r\n : cn(CARD_INPUT_FIELD_CLASS);\r\n return applyCustomizations(\r\n baseClass,\r\n {},\r\n this.customizations?.byType?.inputs?.inputField,\r\n isEditable\r\n ? ELEMENT_IDS.USER_PROFILE_EDITABLE_INPUT_FIELD\r\n : ELEMENT_IDS.USER_PROFILE_INPUT_FIELD,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private getLabelStyles() {\r\n return applyCustomizations(\r\n cn(\r\n CARD_INPUT_LABEL_CLASS,\r\n this.layout !== USER_PROFILE_WIDGETS_LAYOUT.ROW ? \"sb-basis-auto\" : \"\"\r\n ),\r\n {},\r\n this.customizations?.byType?.labels?.inputLabel,\r\n ELEMENT_IDS.USER_PROFILE_INPUT_LABEL,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private getContainerStyles(isEditContainer: boolean) {\r\n return applyCustomizations(\r\n cn(\r\n isEditContainer\r\n ? CARD_EDIT_FORM_CONTAINER_CLASS + \" sb-mb-4\"\r\n : CARD_CONTAINER_CLASS\r\n ),\r\n {},\r\n isEditContainer\r\n ? this.customizations?.byType?.userProfile?.userProfileCard?.editForm\r\n : this.customizations?.byType?.userProfile?.userProfileCard?.container,\r\n isEditContainer\r\n ? ELEMENT_IDS.USER_PROFILE_EDIT_FORM\r\n : ELEMENT_IDS.USER_PROFILE_CARD_CONTAINER,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private renderInput(value: string): TemplateResult {\r\n const input = this.getInputStyles(this.isEditing);\r\n return html`\r\n <rtg-input\r\n customClass=\"${input.class}\"\r\n customStyle=\"${mapStyles(input.style)}\"\r\n ?disabled=${!this.isEditing}\r\n .value=${value}\r\n ></rtg-input>\r\n `;\r\n }\r\n\r\n private renderFooter(\r\n defaultMapped: ReturnType<typeof this.getButtonStyles>[\"defaultMapped\"],\r\n outlineMapped: ReturnType<typeof this.getButtonStyles>[\"outlineMapped\"]\r\n ): TemplateResult {\r\n return html`\r\n <rtg-card-footer\r\n customClass=\"sb-flex sb-flex-col md:sb-flex-row-reverse sb-gap-2 sb-m-4\"\r\n >\r\n <rtg-button\r\n variant=\"default\"\r\n customClass=${defaultMapped.class}\r\n customStyle=${mapStyles(defaultMapped.style)}\r\n @click=${this.handleSave}\r\n >\r\n Save\r\n </rtg-button>\r\n\r\n <rtg-button\r\n variant=\"outline\"\r\n customClass=${outlineMapped.class}\r\n customStyle=${mapStyles(outlineMapped.style)}\r\n @click=${this.handleCancel}\r\n >\r\n Cancel\r\n </rtg-button>\r\n </rtg-card-footer>\r\n `;\r\n }\r\n\r\n render() {\r\n const fields = [\r\n { label: \"Location\", value: this.locationInfo.location },\r\n { label: \"Zone Info\", value: this.locationInfo.zoneInfo },\r\n ];\r\n\r\n const container = this.getContainerStyles(false);\r\n const editContainer = this.getContainerStyles(true);\r\n\r\n // Buttons\r\n const { defaultMapped, outlineMapped, ghostMapped } =\r\n this.getButtonStyles();\r\n\r\n // Header\r\n const headerContainer = applyCustomizations(\r\n CARD_HEADER_CONTAINER_CLASS,\r\n {},\r\n this.customizations?.byType?.userProfile?.userProfileCard?.header\r\n ?.container,\r\n ELEMENT_IDS.USER_PROFILE_CARD_HEADER_CONTAINER,\r\n this.customizations!\r\n );\r\n const headerTitle = applyCustomizations(\r\n CARD_HEADER_TITLE_CLASS,\r\n {},\r\n this.customizations?.byType?.userProfile?.userProfileCard?.header?.title,\r\n ELEMENT_IDS.USER_PROFILE_CARD_HEADER_CONTAINER,\r\n this.customizations!\r\n );\r\n\r\n // Labels\r\n const label = this.getLabelStyles();\r\n const activeContainer = this.isEditing ? editContainer : container;\r\n\r\n return html`\r\n <rtg-card\r\n customClass=${activeContainer.class}\r\n customStyle=${mapStyles(activeContainer.style)}\r\n >\r\n <!-- Header -->\r\n <rtg-card-header\r\n customClass=${headerContainer.class}\r\n customStyle=${mapStyles(headerContainer.style)}\r\n >\r\n <rtg-card-title\r\n customClass=${headerTitle.class}\r\n customStyle=${mapStyles(headerTitle.style)}\r\n >\r\n ${this.content?.icon ? this.content.icon : locationIcon()}\r\n <span>\r\n ${this.content?.title ? this.content.title : \"Location\"}\r\n </span>\r\n </rtg-card-title>\r\n ${!this.isEditing\r\n ? html`\r\n <rtg-button\r\n variant=\"ghost\"\r\n size=\"icon\"\r\n aria-label=\"Edit\"\r\n @click=${this.handleEdit}\r\n customClass=${ghostMapped.class}\r\n customStyle=${mapStyles(ghostMapped.style)}\r\n >\r\n ${editIcon()}\r\n </rtg-button>\r\n `\r\n : null}\r\n </rtg-card-header>\r\n\r\n <!-- Content -->\r\n <rtg-card-content>\r\n <div class=\"sb-flex sb-flex-col sb-gap-3 sb-m-4\">\r\n ${fields.map(\r\n (item) => html`\r\n <div\r\n class=\"sb-flex ${this.layout ===\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW\r\n ? \"sb-flex-row sb-items-center sb-gap-2\"\r\n : \"sb-flex-col sb-gap-1\"}\"\r\n >\r\n <div class=${label.class} style=${mapStyles(label.style)}>\r\n ${item.label}\r\n </div>\r\n <div class=\"sb-flex-1 sb-min-w-0 sb-mr-4\">\r\n ${this.renderInput(item.value)}\r\n </div>\r\n </div>\r\n `\r\n )}\r\n </div>\r\n </rtg-card-content>\r\n\r\n ${this.isEditing ? html`<rtg-separator></rtg-separator>` : null}\r\n\r\n <!-- Footer -->\r\n ${this.isEditing\r\n ? this.renderFooter(defaultMapped, outlineMapped)\r\n : null}\r\n </rtg-card>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html, TemplateResult } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { urlIcon, editIcon } from \"@/assets/icons\";\r\nimport {\r\n ICustomizations,\r\n IProfileWidgetCustomization,\r\n USER_PROFILE_WIDGETS_LAYOUT,\r\n} from \"@/types\";\r\nimport {\r\n applyCustomizations,\r\n cn,\r\n mapBtnToCustomizedStyle,\r\n mapStyles,\r\n} from \"@/utils\";\r\nimport {\r\n CARD_CONTAINER_CLASS,\r\n CARD_DEFAULT_BUTTON,\r\n CARD_EDIT_BUTTON,\r\n CARD_EDIT_FORM_CONTAINER_CLASS,\r\n CARD_EDITABLE_INPUT_CLASS,\r\n CARD_HEADER_CONTAINER_CLASS,\r\n CARD_HEADER_TITLE_CLASS,\r\n CARD_INPUT_FIELD_CLASS,\r\n CARD_INPUT_LABEL_CLASS,\r\n CARD_OUTLINE_BUTTON,\r\n} from \"./classes\";\r\nimport { ELEMENT_IDS } from \"@/constants\";\r\n\r\nexport interface URLsInfo {\r\n website: string;\r\n}\r\n\r\n@customElement(\"sb-urls-info\")\r\nexport class SbUrlsInfo extends LitElement {\r\n @property({ type: Object }) URLsInfo!: URLsInfo;\r\n @property({ type: Boolean }) showIcons: boolean = true;\r\n @property({ type: Object }) customizations: ICustomizations | null = null;\r\n\r\n @property({ type: String }) layout: USER_PROFILE_WIDGETS_LAYOUT =\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW;\r\n\r\n @property({ type: Object })\r\n content: IProfileWidgetCustomization | null = null;\r\n\r\n @state() private isEditing: boolean = false;\r\n\r\n private handleEdit() {\r\n this.isEditing = true;\r\n }\r\n\r\n private handleCancel() {\r\n this.isEditing = false;\r\n }\r\n\r\n private handleSave() {\r\n this.isEditing = false;\r\n }\r\n\r\n createRenderRoot() {\r\n return this; // Light DOM\r\n }\r\n\r\n private getButtonStyles() {\r\n const defaultBtn = mapBtnToCustomizedStyle(\"default\", this.customizations!);\r\n const outlineBtn = mapBtnToCustomizedStyle(\"outline\", this.customizations!);\r\n const ghostBtn = mapBtnToCustomizedStyle(\"ghost\", this.customizations!);\r\n\r\n const defaultMapped = applyCustomizations(\r\n CARD_DEFAULT_BUTTON,\r\n {},\r\n defaultBtn,\r\n ELEMENT_IDS.USER_PROFILE_DEFAULT_BUTTON,\r\n this.customizations!\r\n );\r\n const outlineMapped = applyCustomizations(\r\n CARD_OUTLINE_BUTTON,\r\n {},\r\n outlineBtn,\r\n ELEMENT_IDS.USER_PROFILE_DEFAULT_BUTTON,\r\n this.customizations!\r\n );\r\n const ghostMapped = applyCustomizations(\r\n CARD_EDIT_BUTTON,\r\n {},\r\n ghostBtn,\r\n ELEMENT_IDS.USER_PROFILE_EDIT_BUTTON,\r\n this.customizations!\r\n );\r\n return { defaultMapped, outlineMapped, ghostMapped };\r\n }\r\n\r\n private getInputStyles(isEditable = false) {\r\n const baseClass = isEditable\r\n ? CARD_EDITABLE_INPUT_CLASS\r\n : cn(CARD_INPUT_FIELD_CLASS);\r\n return applyCustomizations(\r\n baseClass,\r\n {},\r\n this.customizations?.byType?.inputs?.inputField,\r\n isEditable\r\n ? ELEMENT_IDS.USER_PROFILE_EDITABLE_INPUT_FIELD\r\n : ELEMENT_IDS.USER_PROFILE_INPUT_FIELD,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private getLabelStyles() {\r\n return applyCustomizations(\r\n cn(\r\n CARD_INPUT_LABEL_CLASS,\r\n this.layout !== USER_PROFILE_WIDGETS_LAYOUT.ROW ? \"sb-basis-auto\" : \"\"\r\n ),\r\n {},\r\n this.customizations?.byType?.labels?.inputLabel,\r\n ELEMENT_IDS.USER_PROFILE_INPUT_LABEL,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private getContainerStyles(isEditContainer: boolean) {\r\n return applyCustomizations(\r\n cn(\r\n isEditContainer ? CARD_EDIT_FORM_CONTAINER_CLASS : CARD_CONTAINER_CLASS,\r\n \"!sb-mb-0\"\r\n ),\r\n {},\r\n isEditContainer\r\n ? this.customizations?.byType?.userProfile?.userProfileCard?.editForm\r\n : this.customizations?.byType?.userProfile?.userProfileCard?.container,\r\n isEditContainer\r\n ? ELEMENT_IDS.USER_PROFILE_EDIT_FORM\r\n : ELEMENT_IDS.USER_PROFILE_CARD_CONTAINER,\r\n this.customizations!\r\n );\r\n }\r\n\r\n private renderInput(value: string): TemplateResult {\r\n const input = this.getInputStyles(this.isEditing);\r\n return html`\r\n <rtg-input\r\n customClass=\"${input.class}\"\r\n customStyle=\"${mapStyles(input.style)}\"\r\n ?disabled=${!this.isEditing}\r\n .value=${value}\r\n ></rtg-input>\r\n `;\r\n }\r\n\r\n private renderFooter(\r\n defaultMapped: ReturnType<typeof this.getButtonStyles>[\"defaultMapped\"],\r\n outlineMapped: ReturnType<typeof this.getButtonStyles>[\"outlineMapped\"]\r\n ): TemplateResult {\r\n return html`\r\n <rtg-card-footer\r\n customClass=\"sb-flex sb-flex-col md:sb-flex-row-reverse sb-gap-2 sb-m-4\"\r\n >\r\n <rtg-button\r\n variant=\"default\"\r\n customClass=${defaultMapped.class}\r\n customStyle=${mapStyles(defaultMapped.style)}\r\n @click=${this.handleSave}\r\n >\r\n Save\r\n </rtg-button>\r\n\r\n <rtg-button\r\n variant=\"outline\"\r\n customClass=${outlineMapped.class}\r\n customStyle=${mapStyles(outlineMapped.style)}\r\n @click=${this.handleCancel}\r\n >\r\n Cancel\r\n </rtg-button>\r\n </rtg-card-footer>\r\n `;\r\n }\r\n\r\n render() {\r\n const fields = [{ label: \"Website\", value: this.URLsInfo.website }];\r\n\r\n // ===== Customizations =====\r\n // Containers\r\n const container = this.getContainerStyles(false);\r\n const editContainer = this.getContainerStyles(true);\r\n\r\n // Buttons\r\n const { defaultMapped, outlineMapped, ghostMapped } =\r\n this.getButtonStyles();\r\n\r\n // Header\r\n const headerContainer = applyCustomizations(\r\n CARD_HEADER_CONTAINER_CLASS,\r\n {},\r\n this.customizations?.byType?.userProfile?.userProfileCard?.header\r\n ?.container,\r\n ELEMENT_IDS.USER_PROFILE_CARD_HEADER_CONTAINER,\r\n this.customizations!\r\n );\r\n const headerTitle = applyCustomizations(\r\n CARD_HEADER_TITLE_CLASS,\r\n {},\r\n this.customizations?.byType?.userProfile?.userProfileCard?.header?.title,\r\n ELEMENT_IDS.USER_PROFILE_CARD_HEADER_CONTAINER,\r\n this.customizations!\r\n );\r\n\r\n // Labels\r\n const label = this.getLabelStyles();\r\n\r\n // ===== Render =====\r\n const activeContainer = this.isEditing ? editContainer : container;\r\n\r\n return html`\r\n <rtg-card\r\n customClass=${activeContainer.class}\r\n customStyle=${mapStyles(activeContainer.style)}\r\n >\r\n <!-- Header -->\r\n <rtg-card-header\r\n customClass=${headerContainer.class}\r\n customStyle=${mapStyles(headerContainer.style)}\r\n >\r\n <rtg-card-title\r\n customClass=${headerTitle.class}\r\n customStyle=${mapStyles(headerTitle.style)}\r\n >\r\n ${this.content?.icon ? this.content.icon : urlIcon()}\r\n <span>${this.content?.title ?? \"URLs\"}</span>\r\n </rtg-card-title>\r\n\r\n ${!this.isEditing\r\n ? html`\r\n <rtg-button\r\n variant=\"ghost\"\r\n size=\"icon\"\r\n aria-label=\"Edit\"\r\n @click=${this.handleEdit}\r\n customClass=${ghostMapped.class}\r\n customStyle=${mapStyles(ghostMapped.style)}\r\n >\r\n ${editIcon()}\r\n </rtg-button>\r\n `\r\n : null}\r\n </rtg-card-header>\r\n\r\n <!-- Content -->\r\n <rtg-card-content>\r\n <div class=\"sb-flex sb-flex-col sb-gap-3 sb-p-4\">\r\n ${fields.map(\r\n (item) => html`\r\n <div\r\n class=\"sb-flex ${this.layout ===\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW\r\n ? \"sb-flex-row sb-items-center\"\r\n : \"sb-flex-col sb-gap-1\"}\"\r\n >\r\n <div class=${label.class} style=${mapStyles(label.style)}>\r\n ${item.label}\r\n </div>\r\n <div class=\"sb-flex-1 sb-min-w-0 sb-mr-4\">\r\n ${this.renderInput(item.value)}\r\n </div>\r\n </div>\r\n `\r\n )}\r\n </div>\r\n </rtg-card-content>\r\n\r\n ${this.isEditing ? html`<rtg-separator></rtg-separator>` : null}\r\n\r\n <!-- Footer -->\r\n ${this.isEditing\r\n ? this.renderFooter(defaultMapped, outlineMapped)\r\n : null}\r\n </rtg-card>\r\n `;\r\n }\r\n}\r\n","// user-profile-tab-content.ts\r\nimport { LitElement, html, TemplateResult } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { Account } from \"./account-info\";\r\nimport { PersonalInfo } from \"./personal-info\";\r\nimport { LocationInfo } from \"./location-info\";\r\nimport { URLsInfo } from \"./urls-info\";\r\nimport \"./personal-info\";\r\nimport \"./location-info\";\r\nimport \"./urls-info\";\r\nimport \"./account-info\";\r\nimport {\r\n USER_PROFILE_WIDGETS_LAYOUT,\r\n USER_PROFILE_MODE,\r\n USER_PROFILE_ORIENTATION,\r\n USER_PROFILE_SIDEBAR_DISPLAY_TYPE,\r\n IProfileContentCustomizations,\r\n ICustomizations,\r\n} from \"@/types\";\r\n\r\n@customElement(\"sb-profile\")\r\nexport class Profile extends LitElement {\r\n @property({ type: Object }) account!: Account;\r\n @property({ type: Object }) personal!: PersonalInfo;\r\n @property({ type: Object }) location!: LocationInfo;\r\n @property({ type: Object }) urls!: URLsInfo;\r\n @property({ type: Boolean }) showAvatarMenu: boolean = false;\r\n @property({ type: Object })\r\n customizations: ICustomizations | null = null;\r\n @property({ type: Boolean }) showIcons: boolean = true;\r\n\r\n @property({ attribute: false }) modalIcon?: TemplateResult;\r\n\r\n @property({ type: String }) orientation: USER_PROFILE_ORIENTATION =\r\n USER_PROFILE_ORIENTATION.HORIZONTAL;\r\n @property({ type: String })\r\n sidebarDisplayType: USER_PROFILE_SIDEBAR_DISPLAY_TYPE =\r\n USER_PROFILE_SIDEBAR_DISPLAY_TYPE.REGULAR;\r\n @property({ type: String }) mode: USER_PROFILE_MODE = USER_PROFILE_MODE?.PAGE;\r\n\r\n @property({ type: String }) widgetsLayout: USER_PROFILE_WIDGETS_LAYOUT =\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW;\r\n\r\n @property({ type: Function }) toggleAvatarMenu!: (e: Event) => void;\r\n @property({ type: Function }) onAvatarChange!: () => void;\r\n @property({ type: Function }) onAvatarRemove!: () => void;\r\n @property({ type: Object }) content: IProfileContentCustomizations | null =\r\n null;\r\n createRenderRoot() {\r\n return this;\r\n }\r\n\r\n render() {\r\n const containerClasses =\r\n \"sb-flex sb-items-center sb-justify-between sb-mb-4\";\r\n const titleClasses = \"sb-font-medium sb-text-[18px] sb-text-foreground\";\r\n\r\n return html`\r\n ${this.orientation === USER_PROFILE_ORIENTATION.VERTICAL ||\r\n this.sidebarDisplayType === USER_PROFILE_SIDEBAR_DISPLAY_TYPE.BURGER\r\n ? null\r\n : html`\r\n <div class=${containerClasses}>\r\n <div class=${titleClasses}>Profile</div>\r\n </div>\r\n `}\r\n\r\n <sb-account-info\r\n .customizations=${this.customizations}\r\n .content=${this.content?.account!}\r\n .account=${this.account}\r\n .layout=${this.widgetsLayout}\r\n .showAvatarMenu=${this.showAvatarMenu}\r\n .toggleAvatarMenu=${this.toggleAvatarMenu}\r\n ></sb-account-info>\r\n\r\n <sb-personal-info\r\n .customizations=${this.customizations}\r\n .content=${this.content?.personalInfo!}\r\n .personal=${this.personal}\r\n .layout=${this.widgetsLayout}\r\n ></sb-personal-info>\r\n <sb-location-info\r\n .customizations=${this.customizations}\r\n .content=${this.content?.locations!}\r\n .locationInfo=${this.location}\r\n .layout=${this.widgetsLayout}\r\n ></sb-location-info>\r\n <sb-urls-info\r\n .customizations=${this.customizations}\r\n .content=${this.content?.urls!}\r\n .URLsInfo=${this.urls}\r\n .layout=${this.widgetsLayout}\r\n ></sb-urls-info>\r\n `;\r\n }\r\n}\r\n","export const BASE_CLASSES = \"!sb-bg-background\";\r\nexport const SIDEBAR_CONTAINER_CLASSES = {\r\n vertical: \"sb-justify-between sb-w-full\",\r\n horizontal: \"sb-flex-col !sb-items-start sb-mx-4 md:sb-ml-6\",\r\n};\r\nexport const BURGER_BUTTON_CLASSES =\r\n \"sb-p-2 sb-mb-4 sb-rounded-lg sb-border-muted sb-bg-background\";\r\nexport const BURGER_LABEL_CLASSES =\r\n \"sb-font-medium sb-ml-2 -sb-mt-4 sb-text-[18px] sb-text-foreground\";\r\nexport const MOBILE_DRAWER_CLASSES =\r\n \"mobile-sidebar-drawer sb-fixed sb-top-0 sb-left-0 sb-h-full sb-max-w-xs sb-bg-background sb-shadow-lg sb-z-[9999] sb-transform sb-transition-all sb-duration-300 sb-ease-in-out\";\r\nexport const MOBILE_OVERLAY_CLASSES =\r\n \"mobile-sidebar-overlay sb-fixed sb-inset-0 sb-bg-black/50 sb-z-[9998] sb-transition-opacity sb-duration-300 sb-ease-in-out\";\r\n","import { LitElement, html, TemplateResult } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { burgerMenuIcon } from \"@/assets/icons\";\r\nimport {\r\n horizontalTabClass,\r\n verticalTabClass,\r\n tabTriggerClass,\r\n watermarkDefaultClass,\r\n ELEMENT_IDS,\r\n} from \"@/constants\";\r\nimport {\r\n ICustomizations,\r\n USER_PROFILE_MODE,\r\n USER_PROFILE_ORIENTATION,\r\n USER_PROFILE_SIDEBAR_DISPLAY_TYPE,\r\n USER_PROFILE_TAB_LIST,\r\n} from \"@/types\";\r\n\r\nimport {\r\n BASE_CLASSES,\r\n BURGER_BUTTON_CLASSES,\r\n BURGER_LABEL_CLASSES,\r\n MOBILE_DRAWER_CLASSES,\r\n MOBILE_OVERLAY_CLASSES,\r\n SIDEBAR_CONTAINER_CLASSES,\r\n} from \"./classes\";\r\nimport { applyCustomizations, cn, mapStyles } from \"@/utils\";\r\n\r\nexport interface SidebarConfig {\r\n showIcons: boolean;\r\n modalIcon?: TemplateResult;\r\n}\r\n\r\nconst DEFAULT_TABS = [\r\n { label: \"Profile\", value: USER_PROFILE_TAB_LIST.PROFILE },\r\n { label: \"Security\", value: USER_PROFILE_TAB_LIST.SECURITY },\r\n];\r\n\r\n@customElement(\"sb-profile-sidebar\")\r\nexport class SbProfileSidebar extends LitElement {\r\n @property({ type: String })\r\n orientation: USER_PROFILE_ORIENTATION = USER_PROFILE_ORIENTATION.HORIZONTAL;\r\n\r\n @property({ type: String })\r\n displayType: USER_PROFILE_SIDEBAR_DISPLAY_TYPE =\r\n USER_PROFILE_SIDEBAR_DISPLAY_TYPE.REGULAR;\r\n\r\n @property({ type: String })\r\n mode: USER_PROFILE_MODE = USER_PROFILE_MODE.PAGE;\r\n\r\n @property({ type: Object })\r\n config: SidebarConfig = { showIcons: true };\r\n\r\n @property({ type: Object })\r\n customizations: ICustomizations | null = null;\r\n\r\n @state()\r\n private isMenuOpen = false;\r\n\r\n createRenderRoot() {\r\n return this;\r\n }\r\n\r\n private toggleMenu() {\r\n const parentTabDiv = this.closest('div[role=\"tab\"]');\r\n if (parentTabDiv) {\r\n parentTabDiv.classList.toggle(\"sb-rotate-0\");\r\n }\r\n this.isMenuOpen = !this.isMenuOpen;\r\n this.requestUpdate();\r\n }\r\n\r\n private handleCloseProfile(e: Event) {\r\n e.stopPropagation();\r\n this.dispatchEvent(\r\n new CustomEvent(\"close-user-profile\", { bubbles: true, composed: true })\r\n );\r\n }\r\n\r\n private renderTabs(\r\n tabs = DEFAULT_TABS,\r\n isVertical = false,\r\n onClick?: () => void\r\n ) {\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n \"\",\r\n {},\r\n this.customizations?.byType?.userProfile?.sidebarTabs,\r\n ELEMENT_IDS.USER_PROFILE_SIDEBAR_TABS,\r\n this.customizations!\r\n );\r\n return html`\r\n <rtg-tab-list\r\n orientation=${isVertical ? \"vertical\" : \"horizontal\"}\r\n class=\"sb-flex sb-w-full ${isVertical ? \"\" : \"sb-mb-4\"}\"\r\n customStyle=\"${mapStyles(finalStyle)}\"\r\n customClass=\"${cn(\r\n BASE_CLASSES,\r\n isVertical ? verticalTabClass : horizontalTabClass,\r\n finalClass\r\n )}\"\r\n >\r\n ${tabs.map(\r\n (tab) => html`\r\n <div class=${isVertical ? \"sb-mb-2\" : \"\"}>\r\n <rtg-tab-trigger\r\n customClass=\"${tabTriggerClass}\"\r\n value=${tab.value}\r\n @tab-trigger-click=${onClick}\r\n >\r\n ${tab.label}\r\n </rtg-tab-trigger>\r\n </div>\r\n `\r\n )}\r\n </rtg-tab-list>\r\n `;\r\n }\r\n\r\n private renderWatermark() {\r\n return html`\r\n <sb-watermark\r\n customId=\"sb-watermark\"\r\n class=${cn(watermarkDefaultClass, \"sb-text-sm\")}\r\n label=\"Powered by \"\r\n fontSize=\"14px\"\r\n image_url=\"https://i.postimg.cc/4NpJDMsz/SB-2.png\"\r\n ></sb-watermark>\r\n `;\r\n }\r\n\r\n private renderBurger() {\r\n return html`\r\n <div class=\"sb-flex sb-items-center\">\r\n <div class=\"${BURGER_BUTTON_CLASSES}\" @click=${this.toggleMenu}>\r\n ${burgerMenuIcon()}\r\n </div>\r\n <div class=\"${BURGER_LABEL_CLASSES}\">Profile</div>\r\n </div>\r\n `;\r\n }\r\n\r\n private renderMobileDrawer() {\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n \"\",\r\n {},\r\n this.customizations?.byType?.userProfile?.sidebarBurgerMenu,\r\n ELEMENT_IDS.USER_PROFILE_SIDEBAR_BURGER_MENU,\r\n this.customizations!\r\n );\r\n return html`\r\n <div\r\n style=\"${mapStyles(finalStyle)}\"\r\n class=\"${cn(\r\n MOBILE_DRAWER_CLASSES,\r\n this.isMenuOpen\r\n ? \"sb-translate-x-0 sb-opacity-100\"\r\n : \"sb-translate-x-[-100%] sb-opacity-0\",\r\n finalClass\r\n )}\"\r\n >\r\n <div\r\n class=\"sb-flex sb-flex-col sb-justify-between sb-h-[100%] sb-p-4 sb-w-min\"\r\n >\r\n <div class=\"sb-flex sb-flex-col sb-gap-2 sb-w-min\">\r\n ${this.renderTabs(DEFAULT_TABS, true, this.toggleMenu.bind(this))}\r\n </div>\r\n ${this.renderWatermark()}\r\n </div>\r\n </div>\r\n <div\r\n class=\"${MOBILE_OVERLAY_CLASSES} ${this.isMenuOpen\r\n ? \"sb-block sb-opacity-100\"\r\n : \"sb-hidden sb-opacity-0\"}\"\r\n @click=${this.toggleMenu}\r\n ></div>\r\n `;\r\n }\r\n\r\n render() {\r\n const isVertical = this.orientation === USER_PROFILE_ORIENTATION.VERTICAL;\r\n const isHorizontal =\r\n this.orientation === USER_PROFILE_ORIENTATION.HORIZONTAL;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n \"\",\r\n {},\r\n this.customizations?.byType?.userProfile?.sidebar,\r\n ELEMENT_IDS.USER_PROFILE_SIDEBAR,\r\n this.customizations!\r\n );\r\n return html`\r\n <div\r\n style=\"${mapStyles(finalStyle)}\"\r\n class=\"${cn(\r\n \"sb-overflow-x-auto sb-flex sb-items-center sb-h-[100%]\",\r\n isVertical\r\n ? SIDEBAR_CONTAINER_CLASSES.vertical\r\n : SIDEBAR_CONTAINER_CLASSES.horizontal,\r\n finalClass\r\n )}\"\r\n >\r\n ${this.displayType === USER_PROFILE_SIDEBAR_DISPLAY_TYPE.BURGER\r\n ? this.renderBurger()\r\n : null}\r\n ${isVertical ? this.renderTabs() : null}\r\n ${isHorizontal &&\r\n this.displayType !== USER_PROFILE_SIDEBAR_DISPLAY_TYPE.BURGER\r\n ? html`\r\n <div class=\"sb-flex sb-flex-col sb-justify-between sb-flex-1\">\r\n ${this.renderTabs(DEFAULT_TABS, true)} ${this.renderWatermark()}\r\n </div>\r\n `\r\n : null}\r\n </div>\r\n ${this.displayType === USER_PROFILE_SIDEBAR_DISPLAY_TYPE.BURGER\r\n ? this.renderMobileDrawer()\r\n : null}\r\n `;\r\n }\r\n}\r\n","import { LitElement, html, css, nothing } from \"lit\";\r\nimport { property, state } from \"lit/decorators.js\";\r\nimport { consume } from \"@lit/context\";\r\nimport { customizationsContext } from \"@/context\";\r\nimport {\r\n USER_PROFILE_MODE,\r\n USER_PROFILE_ORIENTATION,\r\n USER_PROFILE_SIDEBAR_DISPLAY_TYPE,\r\n USER_PROFILE_TAB_VALUES,\r\n USER_PROFILE_WIDGETS_LAYOUT,\r\n ICustomizations,\r\n IProfileContentCustomizations,\r\n} from \"@/types\";\r\nimport {\r\n dashboardClass,\r\n pageClasses,\r\n modalClasses,\r\n modalWidthClass,\r\n dashboardWidthClass,\r\n modalContainerClass,\r\n modalLayoutClass,\r\n watermarkDefaultClass,\r\n ELEMENT_IDS,\r\n} from \"@/constants\";\r\nimport { cn, applyCustomizations, deepMerge, mapStyles } from \"@/utils\";\r\nimport { closeIcon } from \"@/assets/icons\";\r\n\r\nimport \"./profile\";\r\nimport \"./sidebar/sidebar\";\r\nimport \"./profile/profile\";\r\nimport { Account } from \"./profile/account-info\";\r\nimport { PersonalInfo } from \"./profile/personal-info\";\r\nimport { LocationInfo } from \"./profile/location-info\";\r\nimport { URLsInfo } from \"./profile/urls-info\";\r\n\r\nconst BREAKPOINTS = {\r\n xs: 640,\r\n sm: 768,\r\n md: Infinity,\r\n} as const;\r\n\r\nexport class SbUserProfile extends LitElement {\r\n // === Public Properties ===\r\n @property({ type: Boolean }) showAvatarMenu = false;\r\n @property({ type: String }) orientation: USER_PROFILE_ORIENTATION =\r\n USER_PROFILE_ORIENTATION.HORIZONTAL;\r\n @property({ type: String }) mobileDisplay: USER_PROFILE_SIDEBAR_DISPLAY_TYPE =\r\n USER_PROFILE_SIDEBAR_DISPLAY_TYPE.REGULAR;\r\n @property({ type: String }) mode: USER_PROFILE_MODE = USER_PROFILE_MODE.PAGE;\r\n @property({ type: String }) widgetsLayout: USER_PROFILE_WIDGETS_LAYOUT =\r\n USER_PROFILE_WIDGETS_LAYOUT.ROW;\r\n @property({ type: Object }) content: IProfileContentCustomizations | null =\r\n null;\r\n @property({ type: Object }) customizations: ICustomizations | null = null;\r\n\r\n // === Context ===\r\n @consume({ context: customizationsContext, subscribe: true })\r\n providedCustomizations: ICustomizations | null = null;\r\n\r\n // === Internal State ===\r\n @state() private isOpen = true;\r\n @state() private currentBreakpoint: keyof typeof BREAKPOINTS = \"md\";\r\n\r\n // === Default Profile Data ===\r\n private account: Account = {\r\n email: \"J.Doe@gmail.com\",\r\n phone: \"+989390717800\",\r\n avatar: \"https://github.com/shadcn.png\",\r\n };\r\n\r\n private personal: PersonalInfo = {\r\n username: \"@JaneeDoe\",\r\n first: \"Jane\",\r\n middle: \"Michelle\",\r\n last: \"Doe\",\r\n nickname: \"Janee\",\r\n gender: \"Female\",\r\n bio: \"-\",\r\n };\r\n\r\n private location: LocationInfo = {\r\n location: \"Iran, Tehran\",\r\n zoneInfo: \"GMT+3:30\",\r\n };\r\n private urls: URLsInfo = { website: \"www.janeedoe.com\" };\r\n\r\n private defaultTab = \"Profile\";\r\n\r\n // === Lifecycle ===\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this._updateBreakpoint();\r\n window.addEventListener(\"resize\", this._handleResize);\r\n document.addEventListener(\"remove-avatar\", this._handleAvatarRemove);\r\n document.addEventListener(\"click\", this._handleClickOutside);\r\n this.addEventListener(\"close-user-profile\", this._handleClose);\r\n this.addEventListener(\"change-avatar\", this._handleAvatarChange);\r\n }\r\n\r\n disconnectedCallback() {\r\n super.disconnectedCallback();\r\n window.removeEventListener(\"resize\", this._handleResize);\r\n document.removeEventListener(\"remove-avatar\", this._handleAvatarRemove);\r\n document.removeEventListener(\"click\", this._handleClickOutside);\r\n this.removeEventListener(\"close-user-profile\", this._handleClose);\r\n this.removeEventListener(\"change-avatar\", this._handleAvatarChange);\r\n }\r\n\r\n protected firstUpdated() {\r\n this.style.width = \"100%\";\r\n }\r\n\r\n // === Event Handlers ===\r\n private _handleResize = () => {\r\n this._updateBreakpoint();\r\n };\r\n\r\n private _updateBreakpoint() {\r\n const width = window.innerWidth;\r\n this.currentBreakpoint =\r\n width < BREAKPOINTS.xs ? \"xs\" : width < BREAKPOINTS.sm ? \"sm\" : \"md\";\r\n }\r\n\r\n private _handleClose = () => {\r\n if (this.mode === USER_PROFILE_MODE.MODAL) {\r\n this.isOpen = false;\r\n }\r\n };\r\n\r\n private _toggleAvatarMenu = (e: Event) => {\r\n e.stopPropagation();\r\n this.showAvatarMenu = !this.showAvatarMenu;\r\n };\r\n\r\n private _handleAvatarChange = () => {\r\n const input = document.createElement(\"input\");\r\n input.type = \"file\";\r\n input.accept = \"image/*\";\r\n\r\n input.onchange = (e: Event) => {\r\n const file = (e.target as HTMLInputElement).files?.[0];\r\n if (!file) return;\r\n\r\n const reader = new FileReader();\r\n reader.onload = () => {\r\n this.account.avatar = reader.result as string;\r\n this.requestUpdate();\r\n };\r\n reader.readAsDataURL(file);\r\n };\r\n\r\n input.click();\r\n };\r\n\r\n private _handleAvatarRemove = () => {\r\n this.account.avatar = \"https://via.placeholder.com/80\";\r\n this.showAvatarMenu = false;\r\n };\r\n\r\n private _handleClickOutside = (e: MouseEvent) => {\r\n if (!this.showAvatarMenu) return;\r\n\r\n const target = e.target as HTMLElement;\r\n const avatarContainer = this.querySelector(\"sb-account-info\");\r\n const avatarMenu = this.querySelector(\"rtg-card\");\r\n\r\n if (avatarContainer?.contains(target) || avatarMenu?.contains(target))\r\n return;\r\n\r\n this.showAvatarMenu = false;\r\n };\r\n\r\n // === Computed Helpers ===\r\n private get effectiveCustomizations(): ICustomizations {\r\n return deepMerge(\r\n this.providedCustomizations ?? {},\r\n this.customizations ?? {}\r\n );\r\n }\r\n\r\n private get isModal() {\r\n return this.mode === USER_PROFILE_MODE.MODAL;\r\n }\r\n\r\n private get sidebarDisplayType(): USER_PROFILE_SIDEBAR_DISPLAY_TYPE {\r\n if (this.orientation === USER_PROFILE_ORIENTATION.VERTICAL) {\r\n return USER_PROFILE_SIDEBAR_DISPLAY_TYPE.REGULAR;\r\n }\r\n return this.currentBreakpoint === \"md\"\r\n ? USER_PROFILE_SIDEBAR_DISPLAY_TYPE.REGULAR\r\n : USER_PROFILE_SIDEBAR_DISPLAY_TYPE.BURGER;\r\n }\r\n\r\n private get containerClasses() {\r\n return cn(\r\n dashboardClass,\r\n this.isModal ? modalClasses : pageClasses,\r\n this.isModal ? modalWidthClass : dashboardWidthClass,\r\n this.sidebarDisplayType === USER_PROFILE_SIDEBAR_DISPLAY_TYPE.BURGER ||\r\n this.orientation === USER_PROFILE_ORIENTATION.VERTICAL\r\n ? \"!sb-flex-col\"\r\n : \"!sb-flex-row\"\r\n );\r\n }\r\n\r\n private get contentClasses() {\r\n return cn(\r\n \"sb-flex-grow\",\r\n this.isModal\r\n ? \"sb-max-h-[864px] sb-mx-4 sb-px-2 md:sb-mx-0 md:sb-px-6 md:sb-pl-0 sb-overflow-auto\"\r\n : \"md:sb-max-h-[100%]\",\r\n this.orientation === USER_PROFILE_ORIENTATION.VERTICAL\r\n ? \"md:sb-pl-6 sb-mb-16\"\r\n : \"\"\r\n );\r\n }\r\n\r\n // === Render Helpers ===\r\n private renderCloseButton() {\r\n if (!this.isModal) return nothing;\r\n\r\n return html`\r\n <button\r\n class=\"sb-absolute sb-bg-background sb-right-8 sb-top-8 sb-z-10\"\r\n @click=${() =>\r\n this.dispatchEvent(\r\n new CustomEvent(\"close-user-profile\", {\r\n bubbles: true,\r\n composed: true,\r\n })\r\n )}\r\n >\r\n ${closeIcon()}\r\n </button>\r\n `;\r\n }\r\n\r\n private renderWatermark() {\r\n if (this.orientation !== USER_PROFILE_ORIENTATION.VERTICAL) return nothing;\r\n\r\n return html`\r\n <div\r\n class=\"sb-fixed sb-bottom-0 sb-w-[-webkit-fill-available] sb-py-4 sb-bg-background\"\r\n >\r\n <sb-watermark\r\n customId=\"sb-watermark\"\r\n class=${cn(watermarkDefaultClass, \"sb-text-sm\")}\r\n label=\"Powered by \"\r\n fontSize=\"14px\"\r\n image_url=\"https://i.postimg.cc/4NpJDMsz/SB-2.png\"\r\n ></sb-watermark>\r\n </div>\r\n `;\r\n }\r\n\r\n private renderProfileContent() {\r\n const cz = this.effectiveCustomizations;\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.containerClasses,\r\n {},\r\n cz?.byType?.userProfile?.container,\r\n ELEMENT_IDS.USER_PROFILE_CONTAINER,\r\n cz,\r\n true\r\n );\r\n\r\n return html`\r\n <rtg-tab\r\n customStyle=${mapStyles(finalStyle)}\r\n customClass=${finalClass}\r\n defaultValue=${this.defaultTab}\r\n orientation=${this.orientation.toLowerCase() as\r\n | \"horizontal\"\r\n | \"vertical\"}\r\n >\r\n ${this.renderCloseButton()}\r\n\r\n <sb-profile-sidebar\r\n .orientation=${this.orientation}\r\n .mode=${this.mode}\r\n .mobileDisplay=${this.mobileDisplay}\r\n .displayType=${this.sidebarDisplayType}\r\n .customizations=${cz}\r\n ></sb-profile-sidebar>\r\n\r\n <div class=${this.contentClasses}>\r\n <div class=\"sb-relative sb-[transform:translateZ(0)]\">\r\n <rtg-tab-content value=${USER_PROFILE_TAB_VALUES.PROFILE}>\r\n <sb-profile\r\n .customizations=${cz}\r\n .content=${this.content}\r\n .account=${this.account}\r\n .personal=${this.personal}\r\n .location=${this.location}\r\n .urls=${this.urls}\r\n .orientation=${this.orientation}\r\n .sidebarDisplayType=${this.sidebarDisplayType}\r\n .mode=${this.mode}\r\n .widgetsLayout=${this.widgetsLayout}\r\n .showAvatarMenu=${this.showAvatarMenu}\r\n .toggleAvatarMenu=${this._toggleAvatarMenu}\r\n ></sb-profile>\r\n </rtg-tab-content>\r\n </div>\r\n </div>\r\n\r\n ${this.renderWatermark()}\r\n </rtg-tab>\r\n `;\r\n }\r\n\r\n // === Main Render ===\r\n render() {\r\n if (!this.isOpen) return nothing;\r\n\r\n if (this.isModal) {\r\n return html`\r\n <div\r\n class=\"sb-fixed sb-inset-0 sb-z-[9998] sb-bg-black/50 sb-backdrop-blur-sm\"\r\n @click=${() =>\r\n this.dispatchEvent(\r\n new CustomEvent(\"close-user-profile\", {\r\n bubbles: true,\r\n composed: true,\r\n })\r\n )}\r\n ></div>\r\n\r\n <div class=${modalContainerClass}>\r\n <div class=${modalLayoutClass}>${this.renderProfileContent()}</div>\r\n </div>\r\n `;\r\n }\r\n\r\n return this.renderProfileContent();\r\n }\r\n\r\n // Use shadow DOM? No — matches original behavior\r\n createRenderRoot() {\r\n return this;\r\n }\r\n}\r\n\r\ncustomElements.define(\"sb-user-profile\", SbUserProfile);\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { ICustomizations, RenderSpec } from \"@/types\";\r\nimport \"../../index\";\r\n\r\n@customElement(\"sb-preview\")\r\nexport class PreviewComponent extends LitElement {\r\n @property({ type: Boolean }) loading = false;\r\n @property({ type: Object }) renderSpec: RenderSpec | null = null;\r\n @property({ type: Object }) customizations: ICustomizations | null = {\r\n byType: {},\r\n config: { font: \"font-geist\" },\r\n };\r\n\r\n protected createRenderRoot(): HTMLElement | DocumentFragment {\r\n return this; // use light DOM so shadcn/Tailwind styles apply\r\n }\r\n\r\n render() {\r\n return html`\r\n ${this.loading\r\n ? html`<div class=\"sb-p-8 sb-text-center\">Loading...</div>`\r\n : html`\r\n <sb-provider>\r\n <signed-out>\r\n <sb-layout\r\n .renderSpec=${this.renderSpec}\r\n .customizations=${this.customizations}\r\n >\r\n </sb-layout>\r\n </signed-out>\r\n </sb-provider>\r\n `}\r\n `;\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"sb-preview\": PreviewComponent;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { ICustomizations, RenderSpec } from \"@/types\";\r\nimport { applyCustomizations, deepMerge } from \"@/utils\";\r\nimport { Auth } from \"@saasbase-io/loginflow-websdk\";\r\nimport { consume } from \"@lit/context\";\r\nimport { customizationsContext, renderSpecContext } from \"@/context\";\r\n\r\n@customElement(\"sb-signin\")\r\nexport class SbSignIn extends LitElement {\r\n @consume({ context: renderSpecContext, subscribe: true })\r\n renderSpec: RenderSpec | null = null;\r\n // Direct prop override (optional)\r\n @property({ type: Object })\r\n customizations: ICustomizations | null = null;\r\n\r\n // Context fallback\r\n @consume({ context: customizationsContext, subscribe: true })\r\n providedCustomizations: ICustomizations | null = null;\r\n\r\n get effectiveCustomizations(): ICustomizations | null {\r\n const base = this.providedCustomizations ?? {};\r\n const overrides = this.customizations ?? {};\r\n\r\n return deepMerge(base, overrides);\r\n }\r\n createRenderRoot() {\r\n return this; // stay in light DOM\r\n }\r\n\r\n async connectedCallback(): Promise<void> {\r\n super.connectedCallback();\r\n\r\n try {\r\n // Initialize login flow through Auth (sign-in)\r\n const resp = await Auth.startLoginflow(\"signin-flow-passkey\");\r\n\r\n console.log(\r\n resp.isResumed ? \"Resumed login flow\" : \"Started new login flow\"\r\n );\r\n } catch (err) {\r\n console.error(\"Sign-in flow init failed:\", err);\r\n }\r\n }\r\n\r\n render() {\r\n const cz = this.effectiveCustomizations;\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n \"\",\r\n {},\r\n cz?.byType?.loader?.linear,\r\n \"\",\r\n cz!\r\n );\r\n\r\n if (!this.renderSpec) {\r\n return html`\r\n <linear-loader\r\n class=\"sb-fixed sb-w-full sb-top-0 sb-left-0\"\r\n customClass=${finalClass}\r\n .customStyle=${finalStyle}\r\n ></linear-loader>\r\n `;\r\n }\r\n\r\n return html`\r\n <sb-layout\r\n .renderSpec=${this.renderSpec}\r\n .customizations=${cz}\r\n ></sb-layout>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { ICustomizations, RenderSpec } from \"@/types\";\r\nimport { applyCustomizations, deepMerge } from \"@/utils\";\r\nimport { Auth } from \"@saasbase-io/loginflow-websdk\";\r\nimport { customizationsContext, renderSpecContext } from \"@/context\";\r\nimport { consume } from \"@lit/context\";\r\n\r\n@customElement(\"sb-signup\")\r\nexport class SbSignUp extends LitElement {\r\n @consume({ context: renderSpecContext, subscribe: true })\r\n renderSpec: RenderSpec | null = null; // Direct prop override (optional)\r\n\r\n @property({ type: Object })\r\n customizations: ICustomizations | null = null;\r\n\r\n // Context fallback\r\n @consume({ context: customizationsContext, subscribe: true })\r\n providedCustomizations: ICustomizations | null = null;\r\n\r\n get effectiveCustomizations(): ICustomizations | null {\r\n const base = this.providedCustomizations ?? {};\r\n const overrides = this.customizations ?? {};\r\n\r\n return deepMerge(base, overrides);\r\n }\r\n createRenderRoot() {\r\n return this; // stay in light DOM\r\n }\r\n\r\n async connectedCallback(): Promise<void> {\r\n super.connectedCallback();\r\n\r\n try {\r\n // Initialize signup flow through Auth (sign-up)\r\n const resp = await Auth.startLoginflow(\"signup-flow\");\r\n\r\n console.log(\r\n resp.isResumed ? \"Resumed signup flow\" : \"Started new signup flow\"\r\n );\r\n } catch (err) {\r\n console.error(\"Sign-up flow init failed:\", err);\r\n }\r\n }\r\n\r\n render() {\r\n const cz = this.effectiveCustomizations;\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n \"\",\r\n {},\r\n cz?.byType?.loader?.linear,\r\n \"\",\r\n cz!\r\n );\r\n\r\n if (!this.renderSpec) {\r\n return html`\r\n <linear-loader\r\n class=\"sb-fixed sb-w-full sb-top-0 sb-left-0\"\r\n customClass=${finalClass}\r\n .customStyle=${finalStyle}\r\n ></linear-loader>\r\n `;\r\n }\r\n\r\n return html`\r\n <sb-layout\r\n .renderSpec=${this.renderSpec}\r\n .customizations=${cz}\r\n ></sb-layout>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { Text, Style } from \"@/types\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-text-renderer\")\r\nexport class SbTextRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"text\";\r\n id: string;\r\n properties: Text;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM so SaaS kit/global styles apply\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n {\r\n ...this.element.style,\r\n textAlign: this.element.properties.text_alignment,\r\n },\r\n undefined,\r\n this.element.id,\r\n undefined\r\n );\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <p id=${this.element.id} class=${finalClass} style=${mapStyles(base)}>\r\n ${this.element.properties.content}\r\n </p>\r\n `;\r\n }\r\n}\r\n","import{directive as s}from\"../directive.js\";import{UnsafeHTMLDirective as e}from\"./unsafe-html.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class t extends e{}t.directiveName=\"unsafeSVG\",t.resultType=2;const o=s(t);export{o as unsafeSVG};\n//# sourceMappingURL=unsafe-svg.js.map\n","import { LitElement, html, nothing } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n getTheme,\r\n mapBtnToCustomizedStyle,\r\n mapStyles,\r\n resolveImageUrl,\r\n decodeBase64Svg,\r\n splitStyle,\r\n injectResponsiveStyles,\r\n} from \"@/utils\";\r\nimport { Button, Style } from \"@/types\";\r\nimport { unsafeSVG } from \"lit/directives/unsafe-svg.js\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-button-renderer\")\r\nexport class SbButtonRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"button\";\r\n id: string;\r\n properties: Button;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n @state() private theme: \"light\" | \"dark\" = getTheme();\r\n\r\n private observer?: MutationObserver;\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM\r\n }\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.patchComponentUpdate();\r\n this.observeThemeChanges();\r\n }\r\n\r\n disconnectedCallback() {\r\n super.disconnectedCallback();\r\n this.observer?.disconnect();\r\n }\r\n\r\n /**\r\n * Ensures that whenever the parent component updates,\r\n * this button renderer also re-renders.\r\n */\r\n private patchComponentUpdate() {\r\n if (!this.component) return;\r\n\r\n const originalRequestUpdate = this.component.requestUpdate.bind(\r\n this.component\r\n );\r\n this.component.requestUpdate = (\r\n ...args: Parameters<typeof originalRequestUpdate>\r\n ) => {\r\n const result = originalRequestUpdate(...args);\r\n this.requestUpdate();\r\n return result;\r\n };\r\n }\r\n\r\n /**\r\n * Watches the global theme (data-theme attr on <html>)\r\n */\r\n private observeThemeChanges() {\r\n this.observer = new MutationObserver(() => {\r\n this.theme = getTheme();\r\n });\r\n\r\n this.observer.observe(document.documentElement, {\r\n attributes: true,\r\n attributeFilter: [\"data-theme\"],\r\n });\r\n }\r\n\r\n private get isDisabled(): boolean {\r\n if (!this.component || !this.element) return false;\r\n\r\n return (\r\n this.element.properties.requires_valid?.some((key) => {\r\n const field = this.component.findElementByKey(key);\r\n return (\r\n field &&\r\n \"validation\" in field.properties &&\r\n field.properties.validation?.on_event !== \"submit\" &&\r\n !this.component.isFieldValid(key)\r\n );\r\n }) ?? false\r\n );\r\n }\r\n\r\n private get loading(): boolean {\r\n return this.component?.loadingButtons?.[this.element.id] ?? false;\r\n }\r\n\r\n private renderIcon() {\r\n const { icon_url, text } = this.element.properties;\r\n if (!icon_url) return nothing;\r\n\r\n const decodedSvg = decodeBase64Svg(icon_url);\r\n\r\n const marginClass = text ? \"sb-mr-2\" : \"\";\r\n\r\n return html`\r\n <span\r\n class=\"${marginClass} sb-flex sb-items-center sb-h-[-webkit-fill-available]\"\r\n >\r\n ${decodedSvg\r\n ? unsafeSVG(decodedSvg)\r\n : html`\r\n <img\r\n src=${resolveImageUrl(icon_url, this.theme)}\r\n alt=\"button-icon\"\r\n />\r\n `}\r\n </span>\r\n `;\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { id, class: baseClass, style, properties } = this.element;\r\n const { type, text, event } = properties;\r\n\r\n // Compute customization\r\n const buttonCustomization = mapBtnToCustomizedStyle(\r\n type,\r\n this.component.customizations!\r\n );\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n baseClass,\r\n style,\r\n buttonCustomization,\r\n id,\r\n this.component.customizations!\r\n );\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <rtg-button\r\n ?disabled=${this.isDisabled || this.loading}\r\n variant=${type}\r\n @click=${() =>\r\n !this.isDisabled && this.component.handleEvent(event, this.element)}\r\n customStyle=${mapStyles(base)}\r\n customClass=${finalClass}\r\n type=${this.element.properties.submit ? \"submit\" : \"button\"}\r\n >\r\n ${this.renderIcon()} ${text}\r\n </rtg-button>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { Divider, Style } from \"@/types\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport {\r\n BREAKPOINTS,\r\n dividerLineDefaultClass,\r\n dividerTextDefaultClass,\r\n} from \"@/constants\";\r\n\r\n@customElement(\"sb-divider-renderer\")\r\nexport class SbDividerRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"divider\";\r\n id: string;\r\n properties: Divider;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // use light DOM so SaaS kit styles cascade\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: containerClass, style: containerStyle } =\r\n applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n this.component.customizations?.byType?.divider?.dividerContainer,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n const { class: lineClass, style: lineStyle } = applyCustomizations(\r\n dividerLineDefaultClass,\r\n {},\r\n this.component.customizations?.byType?.divider?.dividerLine,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n const { class: textClass, style: textStyle } = applyCustomizations(\r\n dividerTextDefaultClass,\r\n {},\r\n this.component.customizations?.byType?.divider?.dividerText,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n const { base, responsive } = splitStyle(containerStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n if (this.element.properties?.text) {\r\n return html`\r\n <div\r\n id=${this.element.id}\r\n class=${containerClass}\r\n style=${mapStyles(base)}\r\n >\r\n <div class=${lineClass} style=${mapStyles(lineStyle)}></div>\r\n <span class=${textClass} style=${mapStyles(textStyle)}>\r\n ${this.element.properties?.text}\r\n </span>\r\n <div class=${lineClass} style=${mapStyles(lineStyle)}></div>\r\n </div>\r\n `;\r\n }\r\n\r\n return html`\r\n <hr\r\n id=${this.element.id}\r\n class=${containerClass}\r\n style=${mapStyles(base)}\r\n />\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { Checkbox, Style } from \"@/types\";\r\nimport {\r\n BREAKPOINTS,\r\n errorDefaultClass,\r\n labelCheckBoxClass,\r\n} from \"@/constants\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\n\r\n@customElement(\"sb-checkbox-renderer\")\r\nexport class SbCheckboxRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"checkbox\";\r\n id: string;\r\n properties: Checkbox;\r\n style: Style;\r\n class: string;\r\n data_key?: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM for global Tailwind/theme styles\r\n }\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.patchComponentUpdate();\r\n }\r\n\r\n private patchComponentUpdate() {\r\n if (!this.component) return;\r\n\r\n const originalRequestUpdate = this.component.requestUpdate.bind(\r\n this.component\r\n );\r\n this.component.requestUpdate = (\r\n ...args: Parameters<typeof originalRequestUpdate>\r\n ) => {\r\n const result = originalRequestUpdate(...args);\r\n this.requestUpdate(); // re-render when parent updates\r\n return result;\r\n };\r\n }\r\n\r\n private get fieldKey(): string {\r\n return this.element.data_key || this.element.id;\r\n }\r\n\r\n private get isChecked(): boolean {\r\n const { data_key, properties } = this.element;\r\n\r\n if (!data_key) return properties.initial_value || false;\r\n\r\n return (\r\n this.component.formData[data_key] as boolean ?? properties.initial_value ?? false\r\n );\r\n }\r\n\r\n private get errors(): string[] {\r\n return this.element.data_key\r\n ? this.component.errors[this.element.data_key] || []\r\n : [];\r\n }\r\n\r\n private handleChange(e: Event) {\r\n if (!this.element.data_key) return;\r\n\r\n const target = e.target as HTMLInputElement;\r\n this.component.handleInputChange(this.element.data_key, target.checked);\r\n this.component.handleFocus(this.element.data_key);\r\n }\r\n\r\n private handleFocus(e: CustomEvent) {\r\n if (this.element.data_key) {\r\n this.component.handleFocus(e.detail.dataKey);\r\n }\r\n }\r\n\r\n private toggleCheckboxFromLabel() {\r\n const checkbox = this.querySelector(\r\n `#${this.fieldKey}`\r\n ) as HTMLInputElement | null;\r\n if (checkbox) {\r\n checkbox.click(); // trigger native toggle and event handlers\r\n }\r\n }\r\n\r\n private renderLabel(labelClass: string, labelStyle: Style) {\r\n return html`\r\n <rtg-label\r\n class=${labelClass}\r\n style=${mapStyles(labelStyle)}\r\n for=${this.fieldKey}\r\n @click=${() => this.toggleCheckboxFromLabel()}\r\n >\r\n ${this.element.properties.label}\r\n </rtg-label>\r\n `;\r\n }\r\n\r\n private renderError(errorClass: string, errorStyle: Style) {\r\n if (this.errors.length === 0) return null;\r\n\r\n return html`\r\n <sb-error\r\n class=${errorClass}\r\n style=${mapStyles(errorStyle)}\r\n .content=${this.errors[0]}\r\n ></sb-error>\r\n `;\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n // Container styles\r\n const { class: containerClass, style: containerStyle } =\r\n applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n undefined,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n // Label styles\r\n const { class: labelClass, style: labelStyle } = applyCustomizations(\r\n labelCheckBoxClass,\r\n {},\r\n this.component.customizations?.byType?.labels?.checkboxLabel,\r\n \"\",\r\n this.component.customizations!\r\n );\r\n\r\n // Error styles\r\n const { class: errorClass, style: errorStyle } = applyCustomizations(\r\n errorDefaultClass,\r\n {},\r\n this.component.customizations?.byType?.errors?.inputError,\r\n \"\",\r\n this.component.customizations!\r\n );\r\n\r\n const { base, responsive } = splitStyle(containerStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <div style=${mapStyles(base)} class=${containerClass}>\r\n <rtg-checkbox\r\n class=\"sb-inline-block sb-w-fit\"\r\n id=${this.fieldKey}\r\n ?checked=${this.isChecked}\r\n data-key=${this.element.data_key || \"\"}\r\n @change=${this.handleChange}\r\n @focus=${this.handleFocus}\r\n ></rtg-checkbox>\r\n ${this.renderLabel(labelClass, labelStyle)}\r\n </div>\r\n ${this.renderError(errorClass, errorStyle)}\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\n\r\n@customElement(\"sb-error\")\r\nexport class SbError extends LitElement {\r\n // Use light DOM\r\n createRenderRoot() {\r\n return this;\r\n }\r\n\r\n @property({ type: String }) content = \"\";\r\n\r\n render() {\r\n return html`<p>${this.content}</p>`;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\n\r\n@customElement(\"sb-hint\")\r\nexport class SbHint extends LitElement {\r\n // Use light DOM\r\n createRenderRoot() {\r\n return this;\r\n }\r\n\r\n @property({ type: String }) content = \"\";\r\n\r\n render() {\r\n return html`<p class=\"sb-mt-2\">${this.content}</p>`;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { unsafeSVG } from \"lit/directives/unsafe-svg.js\";\r\nimport { decodeBase64Svg, resolveIconSource } from \"@/utils\";\r\n\r\n@customElement(\"sb-watermark\")\r\nexport class SbWatermark extends LitElement {\r\n @property() label: string = \"Powered by\";\r\n @property() image_url: string = \"\";\r\n\r\n @property({ type: String }) content = \"\";\r\n @property({ type: String }) customId = \"\";\r\n @property({ type: String }) fontSize = \"12px\";\r\n\r\n render() {\r\n const decodedSvg = decodeBase64Svg(this.image_url);\r\n\r\n return html`\r\n <style>\r\n #${this.customId} {\r\n display: flex;\r\n gap: 8px;\r\n width: 100%;\r\n justify-content: center;\r\n align-items: center;\r\n font-size: 14px;\r\n }\r\n\r\n #${this.customId} p {\r\n color: hsl(var(--muted-foreground));\r\n margin: 0;\r\n }\r\n\r\n #${this.customId} img {\r\n width: 20px;\r\n }\r\n </style>\r\n <div\r\n id=${this.customId}\r\n part=\"watermark-container\"\r\n class=${this.className}\r\n >\r\n <p style=\"font-size: ${this.fontSize};\">${this.label}</p>\r\n <span style=\"margin-top: 8px\">\r\n ${decodedSvg\r\n ? unsafeSVG(decodedSvg)\r\n : html`<img\r\n src=${resolveIconSource(this.image_url)}\r\n alt=\"watermark\"\r\n />`}\r\n </span>\r\n </div>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\n\r\n@customElement(\"sb-spinner\")\r\nexport class SbSpinner extends LitElement {\r\n createRenderRoot() {\r\n return this; // light DOM\r\n }\r\n\r\n /** Diameter in px */\r\n @property({ type: Number }) size = 16;\r\n\r\n /** Stroke thickness */\r\n @property({ type: Number, attribute: \"stroke-width\" }) strokeWidth = 2;\r\n\r\n /** Color (defaults to currentColor) */\r\n @property() color: string = \"currentColor\";\r\n\r\n /** Accessible label */\r\n @property() label: string = \"Loading…\";\r\n\r\n @property({ type: Number }) duration = 1;\r\n\r\n render() {\r\n const radius = Math.max(0, (this.size - this.strokeWidth) / 2);\r\n const circumference = 2 * Math.PI * radius;\r\n const normalizedRadius = radius - this.strokeWidth / 2;\r\n\r\n return html`\r\n <style>\r\n .chrome-spinner {\r\n width: ${this.size}px;\r\n height: ${this.size}px;\r\n display: inline-block;\r\n animation: chrome-spinner-rotate ${this.duration}s linear infinite;\r\n }\r\n\r\n .chrome-spinner-circle {\r\n stroke: ${this.color};\r\n stroke-width: ${this.strokeWidth};\r\n stroke-linecap: round;\r\n fill: none;\r\n transform-origin: 50% 50%;\r\n stroke-dasharray: ${circumference};\r\n stroke-dashoffset: 0;\r\n animation: chrome-spinner-dash ${this.duration}s linear infinite;\r\n }\r\n\r\n @keyframes chrome-spinner-rotate {\r\n 100% {\r\n transform: rotate(360deg);\r\n }\r\n }\r\n\r\n @keyframes chrome-spinner-dash {\r\n 0% {\r\n stroke-dashoffset: ${circumference};\r\n transform: rotate(0deg);\r\n }\r\n 50% {\r\n stroke-dashoffset: ${circumference * 0.2};\r\n transform: rotate(180deg);\r\n }\r\n 100% {\r\n stroke-dashoffset: ${circumference};\r\n transform: rotate(360deg);\r\n }\r\n }\r\n\r\n .sr-only {\r\n position: absolute;\r\n width: 1px;\r\n height: 1px;\r\n margin: -1px;\r\n padding: 0;\r\n border: 0;\r\n clip: rect(0 0 0 0);\r\n clip-path: inset(50%);\r\n overflow: hidden;\r\n white-space: nowrap;\r\n }\r\n </style>\r\n\r\n <svg\r\n class=\"chrome-spinner\"\r\n viewBox=\"0 0 ${this.size} ${this.size}\"\r\n role=\"status\"\r\n aria-live=\"polite\"\r\n >\r\n <circle\r\n class=\"chrome-spinner-circle\"\r\n cx=\"${this.size / 2}\"\r\n cy=\"${this.size / 2}\"\r\n r=\"${normalizedRadius}\"\r\n ></circle>\r\n </svg>\r\n ${this.label ? html`<span class=\"sr-only\">${this.label}</span>` : null}\r\n `;\r\n }\r\n}\r\n","import { linearLoaderClass } from \"@/constants\";\r\nimport { cn, mapStyles } from \"@/utils\";\r\nimport { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\n\r\n@customElement(\"linear-loader\")\r\nexport class LinearLoader extends LitElement {\r\n @property({ type: String }) customClass: string = \"\";\r\n @property({ type: Object }) customStyle = {};\r\n\r\n createRenderRoot() {\r\n return this;\r\n }\r\n\r\n render() {\r\n return html`\r\n <div\r\n class=${cn(linearLoaderClass, this.customClass)}\r\n style=${mapStyles(this.customStyle)}\r\n ></div>\r\n `;\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"linear-loader\": LinearLoader;\r\n }\r\n}\r\n","import { LitElement, html, TemplateResult } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { OTP, Style } from \"@/types\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport \"@/components/ui\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-otp-renderer\")\r\nexport class SbOtpRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"otp\";\r\n id: string;\r\n properties: OTP;\r\n style: Style;\r\n class: string;\r\n data_key?: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM for global Tailwind styles\r\n }\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.patchComponentRequestUpdate();\r\n }\r\n\r\n private patchComponentRequestUpdate() {\r\n if (!this.component) return;\r\n const original = this.component.requestUpdate.bind(this.component);\r\n this.component.requestUpdate = (...args: Parameters<typeof original>) => {\r\n const result = original(...args);\r\n this.requestUpdate();\r\n return result;\r\n };\r\n }\r\n\r\n private renderOtpGroups(variant: string, length: number): TemplateResult {\r\n const slots = Array.from(\r\n { length },\r\n (_, i) => html`<rtg-input-otp-slot index=${i}></rtg-input-otp-slot>`\r\n );\r\n\r\n switch (variant) {\r\n case \"with_spacing\":\r\n return html`<rtg-input-otp-group class=\"gap-2\"\r\n >${slots}</rtg-input-otp-group\r\n >`;\r\n\r\n case \"simple\": {\r\n const half = Math.ceil(length / 2);\r\n return html`\r\n <rtg-input-otp-group>${slots.slice(0, half)}</rtg-input-otp-group>\r\n <rtg-input-otp-separator></rtg-input-otp-separator>\r\n <rtg-input-otp-group>${slots.slice(half)}</rtg-input-otp-group>\r\n `;\r\n }\r\n\r\n case \"with_separator\": {\r\n const third = Math.ceil(length / 3);\r\n return html`\r\n <rtg-input-otp-group>${slots.slice(0, third)}</rtg-input-otp-group>\r\n <rtg-input-otp-separator></rtg-input-otp-separator>\r\n <rtg-input-otp-group\r\n >${slots.slice(third, third * 2)}</rtg-input-otp-group\r\n >\r\n <rtg-input-otp-separator></rtg-input-otp-separator>\r\n <rtg-input-otp-group>${slots.slice(third * 2)}</rtg-input-otp-group>\r\n `;\r\n }\r\n\r\n default:\r\n return html`<rtg-input-otp-group>${slots}</rtg-input-otp-group>`;\r\n }\r\n }\r\n\r\n render(): TemplateResult | null {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n this.component.customizations?.byType?.inputs?.inputField,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n const variant = this.element.properties.variant || \"digits_only\";\r\n const length = this.element.properties.length || 6;\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <rtg-input-otp\r\n length=${length}\r\n timeout=${this.element.properties.timeout}\r\n variant=${variant}\r\n .value=${this.element.data_key\r\n ? this.component.formData[this.element.data_key] || \"\"\r\n : \"\"}\r\n data-key=${this.element.data_key || \"\"}\r\n style=${mapStyles(base)}\r\n class=${finalClass}\r\n @focus=${(e: CustomEvent) =>\r\n this.element.data_key &&\r\n this.component.handleFocus(e.detail.dataKey, this.element.id)}\r\n @blur=${() =>\r\n this.element.data_key &&\r\n this.component.handleBlur(this.element.data_key)}\r\n @otp-complete=${(e: CustomEvent) => {\r\n if (!this.element.data_key) return;\r\n this.component.handleInputChange(\r\n this.element.data_key,\r\n e.detail.value\r\n );\r\n if (this.element.properties.event) {\r\n this.component.handleEvent(\r\n this.element.properties.event,\r\n this.element\r\n );\r\n }\r\n }}\r\n >\r\n ${this.renderOtpGroups(variant, length)}\r\n </rtg-input-otp>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { Style, Error } from \"@/types\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-error-renderer\")\r\nexport class SbErrorRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"error\";\r\n id: string;\r\n properties: Error;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM for global styling\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: errorClass, style: errorStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n this.component.customizations?.byType?.errors?.serviceError,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n const { base, responsive } = splitStyle(errorStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <rtg-alert\r\n customClass=${errorClass}\r\n style=${mapStyles(base)}\r\n message=${this.element.properties.message}\r\n variant=\"error\"\r\n ></rtg-alert>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { unsafeHTML } from \"lit/directives/unsafe-html.js\";\r\nimport { Html, Style } from \"@/types\";\r\nimport {\r\n applyCustomizations,\r\n mapStyles,\r\n base64ToHtml,\r\n injectResponsiveStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-html-renderer\")\r\nexport class SbHtmlRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"html\";\r\n id: string;\r\n properties: Html;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // use light DOM to inherit global styles\r\n }\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.addEventListener(\"click\", this._onClick);\r\n }\r\n\r\n disconnectedCallback() {\r\n super.disconnectedCallback();\r\n this.removeEventListener(\"click\", this._onClick);\r\n }\r\n\r\n private _onClick = (e: Event) => {\r\n if (!this.component || !this.element) return;\r\n\r\n const target = e\r\n .composedPath()\r\n .find((el) => el instanceof HTMLElement && el.dataset?.event) as\r\n | HTMLElement\r\n | undefined;\r\n\r\n if (target?.dataset.event) {\r\n this.component.handleEvent(target.dataset.event, this.element);\r\n }\r\n };\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n undefined,\r\n this.element.id,\r\n undefined\r\n );\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <div id=${this.element.id} class=${finalClass} style=${mapStyles(base)}>\r\n ${unsafeHTML(base64ToHtml(this.element.properties.content))}\r\n </div>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { Gap, Style } from \"@/types\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-gap-renderer\")\r\nexport class SbGapRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"gap\";\r\n id: string;\r\n properties: Gap;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // use light DOM so SaaS kit styles cascade\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n undefined,\r\n this.element.id,\r\n undefined\r\n );\r\n\r\n const flexGrow = this.element.style ? this.element.style[\"flex-grow\"] : \"0\";\r\n if (flexGrow !== undefined && flexGrow !== null) {\r\n (this.style as CSSStyleDeclaration).setProperty(\r\n \"flex-grow\",\r\n String(flexGrow)\r\n );\r\n }\r\n let size: Record<string, string> = { width: \"0px\", height: \"0px\" };\r\n if (this.element.properties.type === \"vertical\") {\r\n size = { width: \"1px\", height: this.element.properties.size };\r\n } else {\r\n size = { height: \"1px\", width: this.element.properties.size };\r\n }\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n return html`\r\n <div\r\n id=${this.element.id}\r\n class=${finalClass}\r\n style=${mapStyles({ ...base, ...size })}\r\n ></div>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { CountdownProperties, Style } from \"@/types\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-countdown-renderer\")\r\nexport class SbCountdownRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"countdown\";\r\n id: string;\r\n properties: CountdownProperties;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n @state() private seconds = 0;\r\n\r\n private timerId: number | null = null;\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM for Tailwind/global styles\r\n }\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.initializeCountdown();\r\n }\r\n\r\n disconnectedCallback() {\r\n this.clearTimer();\r\n super.disconnectedCallback();\r\n }\r\n\r\n private initializeCountdown() {\r\n const duration = this.element?.properties.duration ?? 5;\r\n this.seconds = Math.max(0, duration); // avoid negative/NaN values\r\n this.startTimer();\r\n }\r\n\r\n private startTimer() {\r\n this.clearTimer(); // ensure no duplicate intervals\r\n\r\n this.timerId = window.setInterval(() => {\r\n if (this.seconds <= 1) {\r\n this.completeCountdown();\r\n } else {\r\n this.seconds--;\r\n }\r\n }, 1000);\r\n }\r\n\r\n private completeCountdown() {\r\n this.clearTimer();\r\n const redirectUrl = this.element.properties.redirect_url ?? \"/\";\r\n window.location.href = redirectUrl;\r\n }\r\n\r\n private clearTimer() {\r\n if (this.timerId !== null) {\r\n clearInterval(this.timerId);\r\n this.timerId = null;\r\n }\r\n }\r\n\r\n private renderContent() {\r\n const content = this.element.properties.content ?? \"\";\r\n return `${content} ${this.seconds}s...`;\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n this.component.customizations?.byType?.timer?.countdowns,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n return html`\r\n <div id=${this.element.id} class=${finalClass} style=${mapStyles(base)}>\r\n <span>${this.renderContent()}</span>\r\n </div>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { Spinner, Style } from \"@/types\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-spinner-renderer\")\r\nexport class SbSpinnerRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"spinner\";\r\n id: string;\r\n properties: Spinner;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // use light DOM for global styles\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n this.component.customizations?.byType?.loader?.spinner,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <sb-spinner\r\n size=\"20\"\r\n stroke-width=\"2\"\r\n duration=\"2.2\"\r\n color=\"hsl(var(--muted-foreground))\"\r\n class=${finalClass}\r\n style=${mapStyles(base)}\r\n ></sb-spinner>\r\n `;\r\n }\r\n}\r\n","// components/renderers/renderElement.ts\r\nimport { html, TemplateResult } from \"lit\";\r\nimport { UIElement } from \"@/types\";\r\n\r\nimport { SaasBaseLayout } from \"@/components\";\r\nimport \"./index\";\r\n\r\nexport function renderElement(\r\n component: SaasBaseLayout,\r\n element: UIElement,\r\n theme: \"light\" | \"dark\" = \"light\" // eslint-disable-line @typescript-eslint/no-unused-vars\r\n): TemplateResult<1> {\r\n if (!element) return html``;\r\n let hidden = element.hidden ?? false;\r\n\r\n switch (element.element_type) {\r\n case \"container\":\r\n return html`<sb-container-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-container-renderer>`;\r\n\r\n case \"logo\":\r\n return html`<sb-logo-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-logo-renderer>`;\r\n\r\n case \"input\":\r\n return html`<sb-input-renderer\r\n .element=${element}\r\n ?hidden=${hidden}\r\n .component=${component}\r\n ></sb-input-renderer>`;\r\n\r\n case \"image\":\r\n return html`<sb-image-renderer\r\n ?hidden=${hidden}\r\n .element=${element}\r\n .component=${component}\r\n ></sb-image-renderer>`;\r\n\r\n case \"gap\":\r\n return html`<sb-gap-renderer\r\n ?hidden=${hidden}\r\n .component=${component}\r\n .element=${element}\r\n ></sb-gap-renderer>`;\r\n\r\n case \"text\":\r\n return html`<sb-text-renderer\r\n ?hidden=${hidden}\r\n .element=${element}\r\n .component=${component}\r\n ></sb-text-renderer>`;\r\n\r\n case \"button\":\r\n return html`<sb-button-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-button-renderer>`;\r\n\r\n case \"divider\":\r\n return html`<sb-divider-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-divider-renderer>`;\r\n\r\n case \"checkbox\":\r\n return html`<sb-checkbox-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-checkbox-renderer>`;\r\n\r\n case \"otp\":\r\n return html`<sb-otp-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-otp-renderer>`;\r\n\r\n case \"error\":\r\n return html`<sb-error-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-error-renderer>`;\r\n\r\n case \"html\":\r\n return html`<sb-html-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-html-renderer>`;\r\n\r\n case \"watermark\":\r\n return html`<sb-watermark-renderer\r\n .element=${element}\r\n ></sb-watermark-renderer>`;\r\n\r\n case \"spinner\":\r\n return html`<sb-spinner-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-spinner-renderer>`;\r\n\r\n case \"label\":\r\n return html`<sb-label-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-label-renderer>`;\r\n\r\n case \"countdown\":\r\n return html`<sb-countdown-renderer\r\n .component=${component}\r\n .element=${element}\r\n ?hidden=${hidden}\r\n ></sb-countdown-renderer>`;\r\n\r\n default:\r\n return html`<p>Unknown element type: ${element[\"element_type\"] as string}</p>`;\r\n }\r\n}\r\n","import { LitElement, PropertyValues, html, nothing } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { Container, Style } from \"@/types\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { SaasBaseLayout } from \"@/components\";\r\nimport { renderElement } from \"./renderElement\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\nimport { nextPaint, updateSocialLoginBtnWidths } from \"@/utils\";\r\n\r\n@customElement(\"sb-container-renderer\")\r\nexport class SbContainerRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"container\";\r\n id: string;\r\n properties: Container;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n private prevChildCount = 0;\r\n private prevContainerWidth = 0;\r\n private widthUpdateScheduled = false;\r\n\r\n protected async firstUpdated(changedProperties: PropertyValues) { // eslint-disable-line @typescript-eslint/no-unused-vars\r\n await this.updateComplete; // Lit has finished patching the DOM\r\n\r\n await nextPaint();\r\n this.updateWidthsIfNeeded();\r\n }\r\n\r\n protected async updated(changedProperties: PropertyValues) { // eslint-disable-line @typescript-eslint/no-unused-vars\r\n await this.updateComplete; // Lit has finished patching the DOM\r\n\r\n await nextPaint();\r\n this.updateWidthsIfNeeded();\r\n }\r\n\r\n private updateWidthsIfNeeded() {\r\n if (!this.element?.class?.includes(\"sb_social_wrap\")) return;\r\n const buttons = Array.from(\r\n this.querySelectorAll(\"sb-button-renderer\")\r\n ) as HTMLElement[];\r\n const childCount = buttons.length;\r\n const containerWidth = this.offsetWidth;\r\n\r\n if (\r\n childCount === this.prevChildCount &&\r\n containerWidth === this.prevContainerWidth\r\n ) {\r\n return;\r\n }\r\n\r\n this.prevChildCount = childCount;\r\n this.prevContainerWidth = containerWidth;\r\n\r\n if (!this.widthUpdateScheduled) {\r\n this.widthUpdateScheduled = true;\r\n updateSocialLoginBtnWidths(\r\n this.querySelector(\"div\") as HTMLElement,\r\n buttons\r\n ).finally(() => {\r\n this.widthUpdateScheduled = false;\r\n });\r\n }\r\n }\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM for Tailwind/global CSS\r\n }\r\n\r\n private get containerStyles() {\r\n const isColumn = this.element.properties.type === \"flex_column\";\r\n return {\r\n ...this.element.style,\r\n display: \"flex\",\r\n \"flex-direction\": isColumn ? \"column\" : \"row\",\r\n };\r\n }\r\n\r\n private renderChildren() {\r\n if (!this.element.properties.children) return nothing;\r\n return this.element.properties.children.map((child) =>\r\n renderElement(this.component, child)\r\n );\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.containerStyles,\r\n this.component.customizations?.byType?.divider?.dividerContainer,\r\n this.element.id,\r\n this.component.customizations!,\r\n true\r\n );\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <div id=${this.element.id} class=${finalClass} style=${mapStyles(base)}>\r\n ${this.renderChildren()}\r\n </div>\r\n `;\r\n }\r\n}\r\n","// components/sb-image.ts\r\nimport { LitElement, html } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { Image, Style } from \"@/types\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n resolveImageUrl,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-image\")\r\nexport class SbImage extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"image\";\r\n id: string;\r\n properties: Image;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n @state() private theme: \"light\" | \"dark\" = this.getTheme();\r\n\r\n private observer?: MutationObserver;\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n // Watch for data-theme changes\r\n this.observer = new MutationObserver(() => {\r\n this.theme = this.getTheme();\r\n });\r\n this.observer.observe(document.documentElement, {\r\n attributes: true,\r\n attributeFilter: [\"data-theme\"],\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n this.observer?.disconnect();\r\n super.disconnectedCallback();\r\n }\r\n\r\n private getTheme(): \"light\" | \"dark\" {\r\n return document.documentElement.getAttribute(\"data-theme\") as\r\n | \"light\"\r\n | \"dark\";\r\n }\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n undefined,\r\n this.element.id,\r\n undefined\r\n );\r\n\r\n const currentImage = resolveImageUrl(\r\n this.element.properties.image_url,\r\n this.theme\r\n );\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n return html`\r\n <img class=${finalClass} src=${currentImage!} style=${mapStyles(base)} />\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { applyCustomizations, cn, resolveImageUrl } from \"@/utils\";\r\nimport { Watermark, Style } from \"@/types\";\r\nimport { watermarkDefaultClass } from \"@/constants\";\r\n\r\n@customElement(\"sb-watermark-renderer\")\r\nexport class SbWatermarkRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"watermark\";\r\n id: string;\r\n properties: Watermark;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @state() private theme: \"light\" | \"dark\" = this.getTheme();\r\n\r\n private observer?: MutationObserver;\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n // Watch for theme changes\r\n this.observer = new MutationObserver(() => {\r\n this.theme = this.getTheme();\r\n });\r\n this.observer.observe(document.documentElement, {\r\n attributes: true,\r\n attributeFilter: [\"data-theme\"],\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n this.observer?.disconnect();\r\n super.disconnectedCallback();\r\n }\r\n\r\n private getTheme(): \"light\" | \"dark\" {\r\n return document.documentElement.getAttribute(\"data-theme\") as\r\n | \"light\"\r\n | \"dark\";\r\n }\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass } = applyCustomizations(\r\n this.element.class,\r\n undefined,\r\n undefined,\r\n this.element.id,\r\n undefined\r\n );\r\n\r\n const currentImage = resolveImageUrl(\r\n this.element.properties.image_url,\r\n this.theme\r\n );\r\n\r\n return html`\r\n <sb-watermark\r\n customId=${this.element.id}\r\n class=${cn(finalClass, watermarkDefaultClass)}\r\n label=${this.element.properties.label}\r\n image_url=${currentImage!}\r\n ></sb-watermark>\r\n `;\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"sb-watermark-renderer\": SbWatermarkRenderer;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { Logo, Style } from \"@/types\";\r\nimport {\r\n applyCustomizations,\r\n mapStyles,\r\n resolveIconSource,\r\n decodeBase64Svg,\r\n resolveImageUrl,\r\n splitStyle,\r\n injectResponsiveStyles,\r\n} from \"@/utils\";\r\nimport { unsafeSVG } from \"lit/directives/unsafe-svg.js\";\r\nimport { SaasBaseLayout } from \"@/components\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-logo-renderer\")\r\nexport class SbLogoRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"logo\";\r\n id: string;\r\n properties: Logo;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n @state() private theme: \"light\" | \"dark\" = this.getTheme();\r\n\r\n private observer?: MutationObserver;\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.style.display = \"grid\";\r\n // Watch for theme changes\r\n this.observer = new MutationObserver(() => {\r\n this.theme = this.getTheme();\r\n });\r\n this.observer.observe(document.documentElement, {\r\n attributes: true,\r\n attributeFilter: [\"data-theme\"],\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n this.observer?.disconnect();\r\n super.disconnectedCallback();\r\n }\r\n\r\n private getTheme(): \"light\" | \"dark\" {\r\n return document.documentElement.getAttribute(\"data-theme\") as\r\n | \"light\"\r\n | \"dark\";\r\n }\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n this.component.customizations?.byType?.logo,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n const currentImage = resolveImageUrl(\r\n this.element.properties.image_url,\r\n this.theme\r\n );\r\n const decodedSvg = currentImage ? decodeBase64Svg(currentImage) : null;\r\n\r\n if (decodedSvg) {\r\n return html`\r\n <div class=${finalClass} style=${mapStyles(base)}>\r\n ${unsafeSVG(decodedSvg)}\r\n </div>\r\n `;\r\n }\r\n\r\n return html`\r\n <img\r\n class=${finalClass}\r\n style=${mapStyles(base)}\r\n src=${resolveIconSource(currentImage!)}\r\n />\r\n `;\r\n }\r\n}\r\n","import { LitElement, html, TemplateResult, PropertyValues } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { Input, Style } from \"@/types\";\r\nimport { BREAKPOINTS, errorDefaultClass, hintDefaultClass } from \"@/constants\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport \"@/components/ui\";\r\n\r\nconst ANIM_MS = 400; // must match CSS animation-duration (ms)\r\n\r\n@customElement(\"sb-input-renderer\")\r\nexport class SbInputRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"input\";\r\n id: string;\r\n properties: Input;\r\n style: Style;\r\n class: string;\r\n autocomplete: string;\r\n data_key?: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM\r\n }\r\n\r\n connectedCallback() {\r\n super.connectedCallback();\r\n this.patchComponentRequestUpdate();\r\n }\r\n\r\n private patchComponentRequestUpdate() {\r\n if (!this.component) return;\r\n const original = this.component.requestUpdate.bind(this.component);\r\n this.component.requestUpdate = (...args: Parameters<typeof original>) => {\r\n const result = original(...args);\r\n this.requestUpdate();\r\n return result;\r\n };\r\n }\r\n\r\n private getCustomization(baseClass: string, baseStyle: Style, path?: string) {\r\n return applyCustomizations(\r\n baseClass,\r\n baseStyle,\r\n path\r\n ? this.component.customizations?.byType?.inputs?.[\r\n path as keyof typeof this.component.customizations.byType.inputs\r\n ]\r\n : undefined,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n }\r\n\r\n private getErrorState() {\r\n const comp = this.component as SaasBaseLayout & {\r\n __rtg_errorState?: {\r\n visible: Record<string, boolean>;\r\n timers: Record<string, number>;\r\n lastText: Record<string, string>;\r\n };\r\n };\r\n comp.__rtg_errorState = comp.__rtg_errorState || {\r\n visible: {},\r\n timers: {},\r\n lastText: {},\r\n };\r\n return comp.__rtg_errorState;\r\n }\r\n\r\n private manageErrorAnimation(errors: string[]): {\r\n shouldRender: boolean;\r\n animClass: string;\r\n errorContent: string;\r\n } {\r\n const state = this.getErrorState();\r\n const key = this.element.data_key || this.element.id;\r\n const hasErrors = errors.length > 0;\r\n const wasVisible = !!state.visible[key];\r\n\r\n let shouldRender = false;\r\n let animClass = \"\";\r\n\r\n if (hasErrors) {\r\n shouldRender = true;\r\n animClass = \"sb-error-in\";\r\n state.lastText[key] = errors[0];\r\n if (state.timers[key]) clearTimeout(state.timers[key]);\r\n delete state.timers[key];\r\n state.visible[key] = true;\r\n } else if (wasVisible && !hasErrors) {\r\n shouldRender = true;\r\n animClass = \"sb-error-out\";\r\n if (!state.timers[key]) {\r\n state.timers[key] = setTimeout(() => {\r\n state.visible[key] = false;\r\n delete state.timers[key];\r\n delete state.lastText[key];\r\n this.requestUpdate();\r\n }, ANIM_MS + 20) as unknown as number;\r\n }\r\n }\r\n\r\n const errorContent = state.lastText[key] || errors[0] || \"\";\r\n return { shouldRender, animClass, errorContent };\r\n }\r\n\r\n setInitialValue() {\r\n if (this.element.data_key && this.element.properties.initial_value) {\r\n this.component.handleInputChange(\r\n this.element.data_key,\r\n this.element.properties.initial_value\r\n );\r\n }\r\n }\r\n\r\n protected updated(_changedProperties: PropertyValues): void {\r\n if (_changedProperties.has(\"element\")) this.setInitialValue();\r\n return;\r\n }\r\n\r\n render(): TemplateResult | null {\r\n if (!this.element) return null;\r\n\r\n const errors = this.element.data_key\r\n ? this.component.errors[this.element.data_key] || []\r\n : [];\r\n\r\n const { class: inputClass, style: inputStyle } = this.getCustomization(\r\n this.element.class,\r\n this.element.style,\r\n \"inputField\"\r\n );\r\n const { class: hintClass, style: hintStyle } = this.getCustomization(\r\n hintDefaultClass,\r\n {},\r\n \"inputHint\"\r\n );\r\n const { class: errorClass, style: errorStyle } = this.getCustomization(\r\n errorDefaultClass,\r\n {},\r\n \"inputError\"\r\n );\r\n\r\n const { shouldRender, animClass, errorContent } =\r\n this.manageErrorAnimation(errors);\r\n\r\n const { base, responsive } = splitStyle(inputStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <rtg-input\r\n id=${this.element.data_key!}\r\n type=${this.element.properties.type}\r\n autocomplete=${this.element.properties.autocomplete || \"\"}\r\n placeholder=${this.element.properties.placeholder || \"\"}\r\n style=${mapStyles(base)}\r\n customClass=${inputClass}\r\n .value=${this.element.data_key\r\n ? (this.component.formData[this.element.data_key] as string)\r\n : \"\"}\r\n data-key=${this.element.data_key || \"\"}\r\n @input=${(e: CustomEvent<{ value: unknown }>) =>\r\n this.element.data_key &&\r\n this.component.handleInputChange(\r\n this.element.data_key,\r\n e.detail?.value\r\n )}\r\n @focus=${(e: CustomEvent) =>\r\n this.element.data_key && this.component.handleFocus(e.detail.dataKey)}\r\n @blur=${() =>\r\n this.element.data_key &&\r\n this.component.handleBlur(this.element.data_key)}\r\n ></rtg-input>\r\n\r\n ${this.element.properties.hint && !errors.length\r\n ? html`<sb-hint\r\n class=${hintClass}\r\n style=${mapStyles(hintStyle)}\r\n .content=${this.element.properties.hint}\r\n ></sb-hint>`\r\n : \"\"}\r\n ${shouldRender\r\n ? html`\r\n <div\r\n class=\"sb-error-wrapper ${errors.length\r\n ? \"sb-error-visible\"\r\n : \"sb-error-hidden\"}\"\r\n >\r\n <sb-error\r\n class=\"${errorClass} ${animClass}\"\r\n style=${mapStyles(errorStyle)}\r\n .content=${errorContent}\r\n ></sb-error>\r\n </div>\r\n `\r\n : \"\"}\r\n `;\r\n }\r\n}\r\n","import { LitElement, html } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport {\r\n applyCustomizations,\r\n injectResponsiveStyles,\r\n mapStyles,\r\n splitStyle,\r\n} from \"@/utils\";\r\nimport { Label, Style } from \"@/types\";\r\nimport { SaasBaseLayout } from \"../wrappers\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-label-renderer\")\r\nexport class SbLabelRenderer extends LitElement {\r\n @property({ type: Object }) element!: {\r\n element_type: \"label\";\r\n id: string;\r\n properties: Label;\r\n style: Style;\r\n class: string;\r\n };\r\n\r\n @property({ attribute: false }) component!: SaasBaseLayout;\r\n\r\n protected createRenderRoot() {\r\n return this; // light DOM to inherit global styles\r\n }\r\n\r\n render() {\r\n if (!this.element) return null;\r\n\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n this.element.class,\r\n this.element.style,\r\n this.component.customizations?.byType?.labels?.inputLabel,\r\n this.element.id,\r\n this.component.customizations!\r\n );\r\n\r\n const { base, responsive } = splitStyle(finalStyle);\r\n injectResponsiveStyles(\r\n this.element.id,\r\n responsive,\r\n this.component.customizations?.config?.breakpoints ?? BREAKPOINTS\r\n );\r\n\r\n return html`\r\n <rtg-label class=${finalClass} style=${mapStyles(base)}>\r\n ${this.element.properties.content}\r\n </rtg-label>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html, nothing } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport \"@revotech-group/revotech-ui-kit\";\r\nimport {\r\n RenderSpec,\r\n UIElement,\r\n Container,\r\n Input,\r\n Checkbox,\r\n DataElement,\r\n ICustomizations,\r\n Button,\r\n Style,\r\n Html,\r\n OTP,\r\n ValidationRule,\r\n} from \"@/types\";\r\nimport {\r\n validateDate,\r\n validateEmail,\r\n validateField,\r\n validateFieldMatch,\r\n validateMaxLength,\r\n validateMaxValue,\r\n validateMinLength,\r\n validateMinValue,\r\n validatePhone,\r\n validateRegex,\r\n validateRequired,\r\n} from \"./validation\";\r\nimport { renderElement } from \"@/components\";\r\nimport { Auth } from \"@saasbase-io/loginflow-websdk\";\r\nimport { applyCustomizations } from \"@/utils\";\r\nimport { BREAKPOINTS } from \"@/constants\";\r\n\r\n@customElement(\"sb-layout\")\r\nexport class SaasBaseLayout extends LitElement {\r\n // Public properties\r\n @property({ type: Object }) renderSpec: RenderSpec | null = null;\r\n @property({ type: Object }) customizations: ICustomizations | null = null;\r\n\r\n // State properties\r\n @state() formData: Record<string, unknown> = {};\r\n @state() errors: Record<string, string[]> = {};\r\n private _prevErrors: Record<string, string[]> = {};\r\n\r\n @state() loadingButtons: Record<string, boolean> = {};\r\n @state() eventEmitting: boolean = false;\r\n @state() theme: \"light\" | \"dark\" = this.getTheme();\r\n\r\n // Private properties\r\n private prevHeight: number = 0;\r\n private resizeRAF: number | null = null;\r\n private isAnimating: boolean = false;\r\n\r\n // Use light DOM\r\n protected createRenderRoot(): HTMLElement | DocumentFragment {\r\n return this;\r\n }\r\n\r\n private getTheme(): \"light\" | \"dark\" {\r\n return document.documentElement.getAttribute(\"data-theme\") as\r\n | \"light\"\r\n | \"dark\";\r\n }\r\n\r\n updated(changedProperties: Map<string, unknown>) {\r\n if (changedProperties.has(\"renderSpec\") && this.renderSpec) {\r\n this.formData = this.collectDataKeys(this.renderSpec.root_container);\r\n }\r\n\r\n const errorsChanged =\r\n JSON.stringify(this._prevErrors) !== JSON.stringify(this.errors);\r\n\r\n if (errorsChanged) {\r\n Promise.resolve().then(() => this.animateHeight());\r\n }\r\n\r\n this._prevErrors = { ...this.errors };\r\n }\r\n\r\n /**\r\n * Identify which button has submit=true\r\n */\r\n private _findSubmitButton(root: UIElement): UIElement | null {\r\n const walk = (el: UIElement): UIElement | null => {\r\n if (el.element_type === \"button\") {\r\n const props = el.properties as Button;\r\n if (props.submit === true) return el;\r\n }\r\n if (el.element_type === \"container\") {\r\n for (const child of (el.properties as Container).children) {\r\n const found = walk(child);\r\n if (found) return found;\r\n }\r\n }\r\n return null;\r\n };\r\n return walk(root);\r\n }\r\n\r\n /**\r\n * Wraps children of container such that the submit button receives type=\"submit\"\r\n */\r\n private _wrapSubmitButtons(template: unknown): unknown {\r\n // renderElement returns a TemplateResult; nothing to modify here.\r\n // We simply rely on renderElement to respect props.type when properties.submit is true.\r\n return template;\r\n }\r\n\r\n render() {\r\n const { class: finalClass, style: finalStyle } = applyCustomizations(\r\n \"\",\r\n {},\r\n this.customizations?.byType?.loader?.linear,\r\n \"\",\r\n this.customizations!\r\n );\r\n\r\n if (!this.renderSpec) {\r\n return html`<linear-loader\r\n class=\"sb-fixed sb-w-full sb-top-0 sb-left-0\"\r\n customClass=${finalClass}\r\n .customStyle=${finalStyle}\r\n ></linear-loader>`;\r\n }\r\n\r\n const submitButton = this._findSubmitButton(this.renderSpec.root_container);\r\n const submitButtonId = submitButton?.id ?? null;\r\n\r\n return html`\r\n <form\r\n id=\"sb-layout-form\"\r\n @submit=${(e: SubmitEvent) => this._onSubmit(e, submitButtonId)}\r\n class=\"sb-w-full sb-h-full\"\r\n novalidate\r\n >\r\n <div class=\"sb-relative sb-flex sb-overflow-x-hidden\">\r\n ${this.eventEmitting\r\n ? html`\r\n <linear-loader\r\n class=\"sb-absolute sb-w-full\"\r\n customClass=${finalClass}\r\n .customStyle=${finalStyle}\r\n ></linear-loader>\r\n `\r\n : nothing}\r\n ${this._wrapSubmitButtons(\r\n renderElement(this, this.renderSpec.root_container, this.theme)\r\n )}\r\n </div>\r\n </form>\r\n `;\r\n }\r\n\r\n private async _onSubmit(e: SubmitEvent, submitButtonId: string | null) {\r\n e.preventDefault();\r\n\r\n // Native HTML gives us the actual clicked button\r\n const submitter = e.submitter as HTMLButtonElement | null;\r\n if (!submitter || !submitButtonId) return;\r\n\r\n if (submitter.id !== submitButtonId) return;\r\n\r\n // We need to find the RenderSpec element corresponding to this button\r\n const element = this._findButtonById(submitButtonId);\r\n if (!element) return;\r\n\r\n await this.handleEvent(element.properties.event, element);\r\n }\r\n\r\n private _findButtonById(id: string) {\r\n const walk = (\r\n el: UIElement\r\n ): {\r\n element_type: \"button\";\r\n id: string;\r\n properties: Button;\r\n style: Style;\r\n class: string;\r\n } | null => {\r\n if (el.element_type === \"button\" && el.id === id) {\r\n return el as any;\r\n }\r\n if (el.element_type === \"container\") {\r\n for (const child of (el.properties as Container).children) {\r\n const found = walk(child);\r\n if (found) return found;\r\n }\r\n }\r\n return null;\r\n };\r\n return this.renderSpec ? walk(this.renderSpec.root_container) : null;\r\n }\r\n\r\n // --- everything else stays the same ---\r\n private animateHeight(): void {\r\n const breakpoints = this.customizations?.config?.breakpoints ?? BREAKPOINTS;\r\n const smValue = breakpoints.sm;\r\n\r\n const smWidth = smValue\r\n ? parseInt(smValue.toString().replace(/\\D/g, \"\"), 10)\r\n : 640;\r\n const screenWidth = window.innerWidth;\r\n\r\n if (screenWidth <= smWidth) {\r\n return;\r\n }\r\n const el = this.renderRoot.querySelector(\"#root-container\") as HTMLElement;\r\n if (!el) return;\r\n\r\n const newHeight = el.scrollHeight;\r\n\r\n if (this.prevHeight === 0) {\r\n this.prevHeight = newHeight;\r\n el.style.height = \"auto\";\r\n return;\r\n }\r\n\r\n if (newHeight === this.prevHeight || this.isAnimating) return;\r\n\r\n const delta = Math.abs(newHeight - this.prevHeight);\r\n this.isAnimating = true;\r\n\r\n if (this.resizeRAF) cancelAnimationFrame(this.resizeRAF);\r\n\r\n this.resizeRAF = requestAnimationFrame(() => {\r\n const duration = Math.min(600, Math.max(200, delta * 1));\r\n\r\n el.style.transition = \"none\";\r\n el.style.height = this.prevHeight + \"px\";\r\n\r\n void el.offsetHeight;\r\n\r\n el.style.transition = `height ${duration}ms ease`;\r\n el.style.height = newHeight + \"px\";\r\n\r\n const finishAnimation = (): void => {\r\n el.style.transition = \"\";\r\n el.style.height = \"auto\";\r\n this.prevHeight = el.scrollHeight;\r\n this.isAnimating = false;\r\n };\r\n\r\n let done = false;\r\n const onEnd = (): void => {\r\n if (done) return;\r\n done = true;\r\n finishAnimation();\r\n };\r\n\r\n el.addEventListener(\"transitionend\", onEnd, { once: true });\r\n setTimeout(onEnd, duration);\r\n });\r\n }\r\n\r\n private collectDataKeys(container: UIElement): Record<string, unknown> {\r\n const dataKeys: Record<string, unknown> = {};\r\n\r\n const traverse = (element: UIElement): void => {\r\n if (!element) return;\r\n\r\n if (\r\n (element.element_type === \"input\" ||\r\n element.element_type === \"checkbox\" ||\r\n element.element_type === \"otp\") &&\r\n element.data_key &&\r\n !element.hidden\r\n ) {\r\n dataKeys[element.data_key] = \"\";\r\n }\r\n\r\n if (element.element_type === \"container\") {\r\n for (const child of (element.properties as Container).children) {\r\n traverse(child);\r\n }\r\n }\r\n };\r\n\r\n traverse(container);\r\n return dataKeys;\r\n }\r\n\r\n handleInputChange(key: string, value: unknown): void {\r\n if (value !== undefined) {\r\n this.formData = { ...this.formData, [key]: value };\r\n validateField(this, key, \"change\");\r\n this.requestUpdate();\r\n }\r\n }\r\n\r\n handleBlur(key: string): void {\r\n validateField(this, key, \"blur\");\r\n this.requestUpdate();\r\n }\r\n\r\n handleFocus(key: string, id?: string): void {\r\n if (this.errors[key]?.length) {\r\n this.errors = { ...this.errors, [key]: [] };\r\n }\r\n const errorElementId = `${id}-error`;\r\n const errorElement = document.getElementById(errorElementId);\r\n if (errorElement && errorElement.parentNode) {\r\n errorElement.parentNode.removeChild(errorElement);\r\n }\r\n }\r\n\r\n async handleEvent(\r\n event: string,\r\n element:\r\n | {\r\n element_type: \"button\";\r\n id: string;\r\n properties: Button;\r\n style: Style;\r\n class: string;\r\n }\r\n | {\r\n element_type: \"html\";\r\n id: string;\r\n properties: Html;\r\n style: Style;\r\n class: string;\r\n }\r\n | {\r\n element_type: \"otp\";\r\n id: string;\r\n properties: OTP;\r\n style: Style;\r\n class: string;\r\n }\r\n ): Promise<void> {\r\n if (element.element_type === \"html\") {\r\n try {\r\n await Auth.processLoginflowEvent({ event, data: {} });\r\n } finally {\r\n this.eventEmitting = false;\r\n }\r\n } else if (element.element_type === \"otp\") {\r\n try {\r\n await Auth.processLoginflowEvent({\r\n event,\r\n data: this.formData,\r\n });\r\n } finally {\r\n this.eventEmitting = false;\r\n }\r\n } else {\r\n element.properties.requires_valid?.forEach((field) => {\r\n validateField(this, field, \"submit\");\r\n this.requestUpdate();\r\n });\r\n\r\n const has_related_errors =\r\n element.properties.requires_valid?.some(\r\n (item) => this.errors?.[item]?.length > 0\r\n ) ?? false;\r\n\r\n if (!has_related_errors) {\r\n this.loadingButtons = { ...this.loadingButtons, [element.id]: true };\r\n this.eventEmitting = true;\r\n try {\r\n await Auth.processLoginflowEvent({\r\n event,\r\n data: this.formData,\r\n });\r\n } finally {\r\n this.loadingButtons = { ...this.loadingButtons, [element.id]: false };\r\n this.eventEmitting = false;\r\n }\r\n }\r\n }\r\n }\r\n\r\n findElementByKey(key: string): UIElement | null {\r\n const find = (element: UIElement): UIElement | null => {\r\n if (\r\n (element.element_type === \"input\" ||\r\n element.element_type === \"checkbox\" ||\r\n element.element_type === \"otp\") &&\r\n element.data_key === key\r\n ) {\r\n return element;\r\n }\r\n if (element.element_type === \"container\") {\r\n for (const child of (element.properties as Container).children) {\r\n const found = find(child);\r\n if (found) return found;\r\n }\r\n }\r\n return null;\r\n };\r\n return this.renderSpec ? find(this.renderSpec.root_container) : null;\r\n }\r\n\r\n isFieldValid(key: string): boolean {\r\n const element = this.findElementByKey(key);\r\n if (!element || !(\"validation\" in element.properties)) return true;\r\n\r\n const { validation } = element.properties as Input | Checkbox;\r\n const { data_key } = element as DataElement;\r\n if (!validation || !data_key) return true;\r\n\r\n const value = this.formData[data_key];\r\n\r\n const rules = validation.rules;\r\n return rules.every((rule) => this.validateRule(rule, value));\r\n }\r\n\r\n private validateRule(rule: ValidationRule, value: unknown): boolean {\r\n switch (rule.type) {\r\n case \"required\":\r\n return validateRequired(value);\r\n case \"min_length\":\r\n return validateMinLength(value, rule.length);\r\n case \"max_length\":\r\n return validateMaxLength(value, rule.length);\r\n case \"min_value\":\r\n return validateMinValue(value, rule.value);\r\n case \"max_value\":\r\n return validateMaxValue(value, rule.value);\r\n case \"regex\":\r\n return validateRegex(value, rule.regex);\r\n case \"field_match\":\r\n return validateFieldMatch(\r\n value,\r\n rule.field_match ? this.formData[rule.field_match] : undefined\r\n );\r\n case \"email\":\r\n return validateEmail(value);\r\n case \"phone\":\r\n return validatePhone(value);\r\n case \"date\":\r\n return validateDate(value);\r\n default:\r\n return true;\r\n }\r\n }\r\n}\r\n","import { LitElement, PropertyValues } from \"lit\";\r\nimport { customElement, property, state } from \"lit/decorators.js\";\r\nimport { provide } from \"@lit/context\";\r\nimport {\r\n envContext,\r\n authContext,\r\n AuthState,\r\n customizationsContext,\r\n renderSpecContext,\r\n} from \"@/context\";\r\nimport { EnvConfig, ICustomizations, RenderSpec } from \"@/types\";\r\nimport { initTheme } from \"@/utils\";\r\nimport { Auth } from \"@saasbase-io/loginflow-websdk\";\r\n\r\n@customElement(\"sb-provider\")\r\nexport class SbProvider extends LitElement {\r\n createRenderRoot() {\r\n return this;\r\n }\r\n\r\n /**\r\n * Customizations\r\n */\r\n @property({ type: Object })\r\n customizations: ICustomizations | null = null;\r\n\r\n @provide({ context: customizationsContext })\r\n providedCustomizations = this.customizations;\r\n\r\n /**\r\n * ENV now comes from a property instead of getEnvConfig()\r\n */\r\n @property({ type: Object })\r\n @provide({ context: envContext })\r\n env: EnvConfig | null = null;\r\n\r\n /**\r\n * Auth state\r\n */\r\n @state()\r\n @provide({ context: authContext })\r\n auth: AuthState = { isAuthenticated: false };\r\n\r\n @state()\r\n @provide({ context: renderSpecContext })\r\n renderSpec: RenderSpec | null = null;\r\n\r\n /**\r\n * Enable/disable automatic redirect for authenticated users on auth pages.\r\n */\r\n @property({ type: Boolean })\r\n autoRedirect: boolean = true;\r\n\r\n connectedCallback(): void {\r\n super.connectedCallback();\r\n initTheme();\r\n\r\n const waitForEnv = async () => {\r\n while (!this.env || !this.env.domain) {\r\n await new Promise((res) => setTimeout(res, 20));\r\n }\r\n\r\n Auth.configure({\r\n domain: this.env.domain,\r\n clientId: this.env.clientId,\r\n clientSecret: this.env.clientSecret ?? \"\",\r\n locale: this.env.locale,\r\n signinUrl: this.env.signinUrl,\r\n signupUrl: this.env.signupUrl,\r\n onFlowStateChange: (event) => {\r\n if (event.render_spec) {\r\n this.renderSpec = event.render_spec;\r\n }\r\n },\r\n });\r\n\r\n this.refreshAuthState();\r\n };\r\n\r\n waitForEnv().catch((err) =>\r\n console.error(\"Error initializing SbProvider:\", err)\r\n );\r\n }\r\n\r\n updated(changedProperties: PropertyValues): void {\r\n super.updated(changedProperties);\r\n\r\n if (changedProperties.has(\"customizations\")) {\r\n this.providedCustomizations = this.customizations;\r\n }\r\n\r\n if (changedProperties.has(\"env\")) {\r\n // Reconfigure SDK if env changes\r\n if (this.env?.domain) {\r\n Auth.configure({\r\n domain: this.env.domain,\r\n clientId: this.env.clientId,\r\n clientSecret: this.env.clientSecret ?? \"\",\r\n locale: this.env.locale,\r\n signinUrl: this.env.signinUrl,\r\n signupUrl: this.env.signupUrl,\r\n onFlowStateChange: (event) => {\r\n if (event.render_spec) {\r\n this.renderSpec = event.render_spec;\r\n }\r\n },\r\n });\r\n }\r\n }\r\n\r\n if (changedProperties.has(\"auth\")) {\r\n this.handleAuthStateChange();\r\n }\r\n }\r\n\r\n private handleAuthStateChange(): void {\r\n if (!this.autoRedirect || !this.auth.isAuthenticated) return;\r\n if (!this.env) return;\r\n\r\n const currentPath = window.location.pathname;\r\n const authPageUrls: string[] = [this.env.signinUrl, this.env.signupUrl];\r\n const isOnAuthPage = authPageUrls.some((authUrl) =>\r\n currentPath.includes(authUrl)\r\n );\r\n\r\n if (isOnAuthPage) {\r\n const qs = new URLSearchParams(window.location.search);\r\n const redirect_url = qs.get(\"redirect_url\");\r\n const signinRedirectUrl: string =\r\n redirect_url || this.env.signinRedirectUrl || \"/\";\r\n window.location.href = signinRedirectUrl;\r\n }\r\n }\r\n\r\n private refreshAuthState() {\r\n this.auth = { isAuthenticated: Auth.isAuthenticated() };\r\n }\r\n}\r\n","import { LitElement, html, nothing } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { consume } from \"@lit/context\";\r\nimport { authContext, AuthState } from \"@/context\";\r\n\r\n@customElement(\"sb-signed-out\")\r\nexport class SignedOut extends LitElement {\r\n private _cachedChildren: Node[] = [];\r\n\r\n createRenderRoot() {\r\n return this; // stay in light DOM\r\n }\r\n\r\n @consume({ context: authContext, subscribe: true })\r\n @property({ attribute: false })\r\n auth?: AuthState;\r\n\r\n connectedCallback(): void {\r\n super.connectedCallback();\r\n if (this._cachedChildren.length === 0) {\r\n // detach and cache children once\r\n this._cachedChildren = Array.from(this.childNodes);\r\n this._cachedChildren.forEach((c) => this.removeChild(c));\r\n }\r\n }\r\n\r\n render() {\r\n if (!this.auth) return nothing;\r\n\r\n return html`\r\n <div ?hidden=${this.auth.isAuthenticated}>${this._cachedChildren}</div>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html, nothing } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { consume } from \"@lit/context\";\r\nimport { authContext, AuthState } from \"@/context\";\r\n\r\n@customElement(\"sb-signed-in\")\r\nexport class SignedIn extends LitElement {\r\n private _cachedChildren: Node[] = [];\r\n\r\n createRenderRoot() {\r\n return this; // stay in light DOM\r\n }\r\n\r\n connectedCallback(): void {\r\n super.connectedCallback();\r\n if (this._cachedChildren.length === 0) {\r\n // detach and cache children once\r\n this._cachedChildren = Array.from(this.childNodes);\r\n this._cachedChildren.forEach((c) => this.removeChild(c));\r\n }\r\n }\r\n\r\n @consume({ context: authContext, subscribe: true })\r\n @property({ attribute: false })\r\n auth?: AuthState;\r\n\r\n render() {\r\n if (!this.auth) return nothing;\r\n\r\n return html`\r\n <div ?hidden=${!this.auth.isAuthenticated}>${this._cachedChildren}</div>\r\n `;\r\n }\r\n}\r\n","import { LitElement, html, nothing } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\nimport { consume } from \"@lit/context\";\r\nimport { authContext, AuthState, envContext } from \"@/context\";\r\nimport { EnvConfig } from \"@/types\";\r\n\r\n@customElement(\"sb-authenticated\")\r\nexport class SbAuthenticated extends LitElement {\r\n private _cachedChildren: Node[] = [];\r\n\r\n createRenderRoot() {\r\n return this; // stay in light DOM\r\n }\r\n\r\n connectedCallback(): void {\r\n super.connectedCallback();\r\n if (this._cachedChildren.length === 0) {\r\n // detach and cache children once\r\n this._cachedChildren = Array.from(this.childNodes);\r\n this._cachedChildren.forEach((c) => this.removeChild(c));\r\n }\r\n }\r\n\r\n /**\r\n * The URL to redirect to if the user is not authenticated.\r\n * Defaults to environment variable, can be overridden via property.\r\n */\r\n\r\n @property({ type: String })\r\n redirectUrl: string = \"\";\r\n\r\n @consume({ context: envContext })\r\n @property({ attribute: false })\r\n env?: EnvConfig;\r\n\r\n @consume({ context: authContext, subscribe: true })\r\n @property({ attribute: false })\r\n auth?: AuthState;\r\n\r\n render() {\r\n if (!this.auth) return nothing;\r\n\r\n if (!this.auth.isAuthenticated) {\r\n // Redirect to the given URL\r\n window.location.href = this.redirectUrl || this.env?.signinUrl!;\r\n return nothing;\r\n }\r\n\r\n return html`${this._cachedChildren}`;\r\n }\r\n}\r\n","import { Auth } from \"@saasbase-io/loginflow-websdk\";\r\n\r\nexport * from \"@/components/wrappers\";\r\nexport * from \"@/components/widgets\";\r\nexport * from \"@/components/ui\";\r\nexport * from \"@/components/renderers\";\r\n\r\nexport function useAuthProvider() {\r\n return Auth;\r\n}\r\n"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","reject","fulfilled","step","e","rejected","result","Store","key","domain","store","LoginflowError","code","message","details","HttpClient","endpoint_1","endpoint","options","config","url","timeout","controller","timeoutId","response","errorData","error","data","SessionService","session","decodedToken","storedSession","token","base64","jsonPayload","c","now","expiresAt","expiresIn","refreshThreshold","timeUntilRefresh","newSession","refreshToken","FlowStateManager","storage","storedFlow","flowState","flowType","flow_id","existingState","historyState","FlowTypeDetector","location","path","FlowEventBus","event","handler","_a","handlers","BrowserNavigationTypeDetector","navEntries","legacyNav","Loginflow","flowId","flowEventBus","flowStateManager","navigationTypeDetector","sdk","flowResponse","request","operation","errorCode","errorMessage","previousState","updatedFlowState","isNewStep","authResult","authData","currentFlowType","existingFlowState","explicitResume","navType","resumeReason","startFlowRequest","rd","Debouncer","delayMs","fn","BrowserHistoryAdapter","state","title","NavigationManager","onFlowRestartNeeded","skipHistoryTracking","historyAdapter","sessionFlowState","urlFlowType","_sessionState","mode","AuthService","flowId_1","flowStateStr","Auth","t","o","s","n$6","r","n","S","i","h","a","l","p","d","u","f","b","y","_b","BaseElement","LitElement","attributes","attr","property","variables","selector","className","variable","walker","node","seen","nodesToRemove","text","firstNode","target","specificNodes","nodesToMove","existing","__decorateClass","i$2","v","_","m","g","$","T","E","A","C","V","x","N","H","I","L","k","M","R","z","j","e$2","s$1","e$1","Xr","An","Ln","zs","Zi","Ji","In","Qi","Do","ta","ts","Ro","ea","ra","Tn","sa","O","F","U","oa","na","ia","aa","X","J","ie","la","jn","ca","G","Mn","da","ua","ga","pa","ha","va","fa","Oe","xt","Me","At","$a","Zr","Ht","ma","Ne","ba","wa","Nn","ya","xa","Sa","Ca","Ea","Gt","Oa","Le","Ie","ve","ae","We","q","we","le","te","oe","Te","ye","xe","Pa","Da","Un","W","qs","ko","ct","zn","ho","rs","qn","Ki","Yi","Bn","Ra","Ns","Ao","ka","pe","Fn","Aa","Bs","Vn","La","Ia","Ta","ja","Ma","Na","Ua","za","qa","ne","re","ee","D","Lo","Io","he","Ba","Fa","Va","Hn","_t","Ha","Ga","Ya","Ka","Lt","Ue","Z","Wa","Xa","Za","Qa","Ja","Gn","ss","el","tl","zr","Kt","rl","sl","Yn","os","ol","nl","il","Kn","ns","al","ll","cl","Fs","Ct","Wn","dl","ul","sr","Ze","gl","pl","hl","vl","ut","fe","fl","ml","Ke","me","Wi","bl","wl","yl","xl","or","$t","Wt","Cl","To","$l","El","Xn","Sl","Ol","Zn","is","Xe","Pl","Dl","Vs","Ce","Et","as","ls","kl","kn","Ll","Il","Tl","Qn","jl","Ml","Nl","Jn","yr","Ul","zl","ei","cs","ql","Bl","ti","ds","Fl","Vl","ri","us","Hl","Gl","si","gs","Yl","Kl","oi","ps","Wl","Xl","Zl","ni","hs","Ql","Jl","It","Qe","ec","tc","rc","sc","oc","nc","ic","ii","vs","se","ac","lc","ai","fs","cc","dc","nr","Je","uc","gc","be","de","pc","hc","Hs","xr","fc","jo","mc","bc","Se","wr","wc","yc","li","ms","xc","_c","Cc","Gs","_r","Ec","Mo","Sc","Oc","ci","bs","Pc","Dc","Rc","kc","Ac","Lc","Ic","Tc","jc","Ys","Cr","Mc","Nc","Ks","et","Uc","zc","qr","ze","Bc","No","Fc","Vc","ir","Pe","Hc","Gc","Ws","tt","Kc","Uo","Wc","Xc","Zc","Qc","Jc","ed","td","sd","di","ws","od","nd","Tt","rt","id","ad","ui","ys","ld","cd","gi","xs","dd","ud","jt","st","gd","pd","pi","_s","vd","zo","md","qo","bd","wd","hi","Cs","xd","Bo","$r","Cd","Fo","$d","Ed","vi","Sd","Od","Pd","Dd","Rd","kd","fi","Qr","$s","St","Ld","Id","Vo","jd","Ho","Md","Nd","Xs","Er","zd","Go","Bd","Fd","Yo","Vd","Hd","mi","Gd","Yd","Kd","Wd","Zs","Sr","Qs","Xd","Zd","Qd","Jd","eu","tu","ru","su","Js","Or","Q","ou","nu","ar","Ot","iu","au","gt","qe","cu","Ko","du","uu","Mt","ot","gu","pu","Br","Xt","vu","Wo","fu","mu","bi","bu","wu","yu","pt","Be","xu","_u","Cu","$u","Eu","Nt","nt","Ou","Xo","Pu","Du","Ru","ku","Au","Lu","Tu","Zo","ju","Mu","Ut","$e","Nu","Uu","eo","Pr","qu","Qo","Fu","Jo","Hu","en","Yu","tn","Ku","Wu","wi","Xu","rn","Es","Qu","Ju","sn","Zt","eg","tg","rg","sg","og","ig","on","ag","lg","to","Dr","cg","dg","yi","Ss","gg","nn","hg","vg","an","fg","mg","xi","Os","bg","wg","_i","Jr","ln","yg","xg","_g","Cg","$g","Eg","Sg","Og","Pg","ht","Fe","Pt","Dg","Rg","ro","Rr","Ag","cn","Lg","Ig","so","kr","jg","dn","Mg","Ng","Ci","Ps","Ug","zg","$i","Ds","qg","Fg","Vg","Hg","Gg","Yg","Kg","Wg","Xg","Zg","oo","es","Dt","Qg","Jg","Ei","Qt","tp","un","sp","gn","np","pn","Ar","ip","ap","Si","lp","cp","dp","up","gp","no","Jt","Ve","dt","pp","hp","Fr","er","vp","fp","io","Lr","mp","bp","Vr","Oi","Pi","wp","yp","xp","zt","De","Ir","ao","lo","_p","Cp","$p","Ep","vt","Ee","Re","Sp","Op","ft","Pp","Dp","qt","it","at","Rp","kp","Di","Rs","Ap","Lp","Ri","ks","Ip","Tp","lr","jp","Mp","Np","Up","zp","qp","Fp","hn","Hp","vn","Gp","Yp","ki","As","Wp","Zp","mn","Jp","bn","th","wn","sh","yn","oh","nh","Bt","He","ih","ah","lh","ch","dh","cr","Rt","uh","gh","Ai","Ls","hh","xn","fh","_n","mh","bh","Ft","Ge","wh","yh","xh","_h","Ch","$h","Eh","Sh","Oh","Ph","dr","kt","Dh","Rh","Hr","Ye","kh","Ah","ur","ke","Lh","Ih","mt","ue","Th","jh","bt","ge","Mh","Nh","co","lt","zh","Cn","Bh","$n","Vh","En","Hh","Gh","Gr","tr","Li","gr","Yh","Kh","Ii","Is","Xi","Nr","Ti","Wh","Xh","Zh","Qh","Jh","ev","tv","rv","ji","Ts","Ur","sv","ov","nv","Vt","Ae","iv","av","Mi","js","lv","cv","uo","Tr","dv","uv","go","jr","gv","pv","po","Mr","hv","fv","Sn","mv","bv","wv","Ni","Ms","yv","xv","Yr","rr","_v","On","Cv","$v","Ui","Ev","br","Pn","Sv","wt","_e","K","Rn","Pv","Dv","zi","errorDefaultClass","labelCheckBoxClass","hintDefaultClass","dividerLineDefaultClass","dividerTextDefaultClass","watermarkDefaultClass","linearLoaderClass","dashboardWidthClass","modalWidthClass","modalContainerClass","modalLayoutClass","dashboardClass","pageClasses","modalClasses","tabTriggerClass","horizontalTabClass","verticalTabClass","ELEMENT_IDS","BREAKPOINTS","PHONE_REGEX","EMAIL_REGEX","DATETIME_REGEX","validateField","component","eventType","errors","findElement","element","child","found","validation","rule","isValid","validateRequired","validateMinLength","validateMaxLength","validateMinValue","validateMaxValue","validateRegex","validateFieldMatch","validateEmail","validatePhone","validateDate","length","min","minNum","valueNum","max","maxNum","regex","fieldValue","envContext","authContext","customizationsContext","renderSpecContext","USER_PROFILE_TAB_VALUES","USER_PROFILE_TAB_LIST","USER_PROFILE_MODE","USER_PROFILE_SIDEBAR_DISPLAY_TYPE","USER_PROFILE_ORIENTATION","USER_PROFILE_WIDGETS_LAYOUT","clsx","CLASS_PART_SEPARATOR","createClassGroupUtils","classMap","createClassMap","conflictingClassGroups","conflictingClassGroupModifiers","classParts","getGroupRecursive","getGroupIdForArbitraryProperty","classGroupId","hasPostfixModifier","conflicts","classPartObject","currentClassPart","nextClassPartObject","classGroupFromNextClassPart","classRest","validator","arbitraryPropertyRegex","arbitraryPropertyClassName","theme","prefix","getPrefixedClassGroupEntries","classGroup","processClassesRecursively","classDefinition","classPartObjectToEdit","getPart","isThemeGetter","currentClassPartObject","pathPart","func","classGroupEntries","prefixedClassGroup","createLruCache","maxCacheSize","cacheSize","cache","previousCache","update","IMPORTANT_MODIFIER","createParseClassName","separator","experimentalParseClassName","isSeparatorSingleCharacter","firstSeparatorCharacter","separatorLength","parseClassName","modifiers","bracketDepth","modifierStart","postfixModifierPosition","index","currentCharacter","baseClassNameWithImportantModifier","hasImportantModifier","baseClassName","maybePostfixModifierPosition","sortModifiers","sortedModifiers","unsortedModifiers","modifier","createConfigUtils","SPLIT_CLASSES_REGEX","mergeClassList","classList","configUtils","getClassGroupId","getConflictingClassGroupIds","classGroupsInConflict","classNames","originalClassName","variantModifier","modifierId","classId","conflictGroups","group","twJoin","argument","resolvedValue","string","toValue","mix","createTailwindMerge","createConfigFirst","createConfigRest","cacheGet","cacheSet","functionToCall","initTailwindMerge","previousConfig","createConfigCurrent","tailwindMerge","cachedResult","fromTheme","themeGetter","arbitraryValueRegex","fractionRegex","stringLengths","tshirtUnitRegex","lengthUnitRegex","colorFunctionRegex","shadowRegex","imageRegex","isLength","isNumber","isArbitraryLength","getIsArbitraryValue","isLengthOnly","isArbitraryNumber","isInteger","isPercent","isArbitraryValue","isTshirtSize","sizeLabels","isArbitrarySize","isNever","isArbitraryPosition","imageLabels","isArbitraryImage","isImage","isArbitraryShadow","isShadow","isAny","label","testValue","getDefaultConfig","colors","spacing","blur","brightness","borderColor","borderRadius","borderSpacing","borderWidth","contrast","grayscale","hueRotate","invert","gap","gradientColorStops","gradientColorStopPositions","inset","margin","opacity","padding","saturate","scale","sepia","skew","space","translate","getOverscroll","getOverflow","getSpacingWithAutoAndArbitrary","getSpacingWithArbitrary","getLengthWithEmptyAndArbitrary","getNumberWithAutoAndArbitrary","getPositions","getLineStyles","getBlendModes","getAlign","getZeroAndEmpty","getBreaks","getNumberAndArbitrary","twMerge","inputs","mapStyles","style","changeTheme","initTheme","currentTheme","getTheme","resolveImageUrl","splitStyle","base","responsive","mergeBreakpoints","custom","injectResponsiveStyles","customBreakpoints","breakpoints","css","mediaQuery","rules","styleTag","nextPaint","updateSocialLoginBtnWidths","container","buttons","containerWidth","buttonCount","minButtonWidth","bestCols","bestItemWidth","bestPriority","cols","totalGap","itemWidth","lastRow","priority","deepMerge","source","sourceVal","targetVal","mapBtnToCustomizedStyle","variant","customizations","_d","_f","_j","_l","_k","applyCustomizations","defaultClass","defaultStyle","typeCustomization","elementId","isRootContainer","finalClass","finalStyle","mergeCustomization","cust","cClass","cStyle","cFont","decodeBase64Svg","icon","resolveIconSource","base64ToHtml","content","editIcon","svg","accountIcon","personalInfoIcon","locationIcon","urlIcon","closeIcon","burgerMenuIcon","CARD_HEADER_CONTAINER_CLASS","CARD_HEADER_TITLE_CLASS","CARD_INPUT_LABEL_CLASS","CARD_INPUT_FIELD_CLASS","CARD_EDIT_FORM_CONTAINER_CLASS","CARD_CONTAINER_CLASS","CARD_EDITABLE_INPUT_CLASS","CARD_DEFAULT_BUTTON","CARD_OUTLINE_BUTTON","CARD_EDIT_BUTTON","renderOtpContent","baseSlots","html","items","sep","SbAccountInfo","defaultBtn","outlineBtn","defaultMapped","outlineMapped","isEditable","baseClass","isEditContainer","onEdit","labelClass","labelStyle","inputClass","inputStyle","isColumn","type","placeholder","onSend","onCancel","containerClass","containerStyle","desc","otpClass","otpStyle","titleClass","titleStyle","customElement","SbPersonalInfo","ghostBtn","ghostMapped","input","fields","editContainer","headerContainer","headerTitle","activeContainer","_m","item","SbLocationInfo","SbUrlsInfo","Profile","BASE_CLASSES","SIDEBAR_CONTAINER_CLASSES","BURGER_BUTTON_CLASSES","BURGER_LABEL_CLASSES","MOBILE_DRAWER_CLASSES","MOBILE_OVERLAY_CLASSES","DEFAULT_TABS","SbProfileSidebar","parentTabDiv","tabs","isVertical","onClick","tab","isHorizontal","SbUserProfile","file","reader","avatarContainer","avatarMenu","width","nothing","cz","consume","PreviewComponent","SbSignIn","overrides","resp","err","SbSignUp","SbTextRenderer","SbButtonRenderer","originalRequestUpdate","args","field","icon_url","decodedSvg","unsafeSVG","properties","buttonCustomization","SbDividerRenderer","lineClass","lineStyle","textClass","textStyle","SbCheckboxRenderer","data_key","checkbox","errorClass","errorStyle","SbError","SbHint","SbWatermark","SbSpinner","radius","circumference","normalizedRadius","LinearLoader","SbOtpRenderer","original","slots","half","third","SbErrorRenderer","SbHtmlRenderer","unsafeHTML","SbGapRenderer","flexGrow","size","SbCountdownRenderer","duration","redirectUrl","SbSpinnerRenderer","renderElement","hidden","SbContainerRenderer","changedProperties","childCount","SbImage","currentImage","SbWatermarkRenderer","SbLogoRenderer","ANIM_MS","SbInputRenderer","baseStyle","comp","hasErrors","wasVisible","shouldRender","animClass","errorContent","_changedProperties","hintClass","hintStyle","SbLabelRenderer","SaasBaseLayout","root","walk","template","submitButton","submitButtonId","submitter","smValue","smWidth","newHeight","delta","finishAnimation","done","onEnd","dataKeys","traverse","errorElementId","errorElement","find","SbProvider","res","currentPath","authUrl","signinRedirectUrl","provide","SignedOut","SignedIn","SbAuthenticated","useAuthProvider"],"mappings":"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AA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAA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OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,KAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,UAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,UAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,UAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,KAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,KAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,QAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,KAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,OAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,MAAM,MAAM,MAAA;AAAA;AAAA,EAElC,EAAE,OAAO,MAAM,OAAO,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","x_google_ignoreList":[0,1,2,3,4,5,6,7,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,34,35,60]}