@23blocks/angular 13.1.2 β 14.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.
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
# 14.0.0 (2026-03-05)
|
|
2
|
+
|
|
3
|
+
### π Features
|
|
4
|
+
|
|
5
|
+
- β οΈ **@23blocks/angular:** rebuild with products block strong params alignment ([aef50bd](https://github.com/23blocks-OS/frontend-sdk/commit/aef50bd))
|
|
6
|
+
|
|
7
|
+
### β οΈ Breaking Changes
|
|
8
|
+
|
|
9
|
+
- **@23blocks/angular:** rebuild with products block strong params alignment ([aef50bd](https://github.com/23blocks-OS/frontend-sdk/commit/aef50bd))
|
|
10
|
+
Bundles updated @23blocks/block-products with breaking type/service changes.
|
|
11
|
+
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
|
12
|
+
|
|
13
|
+
### π§± Updated Dependencies
|
|
14
|
+
|
|
15
|
+
- Updated @23blocks/block-products to 5.0.0
|
|
16
|
+
|
|
17
|
+
### β€οΈ Thank You
|
|
18
|
+
|
|
19
|
+
- Claude Opus 4.6
|
|
20
|
+
- Juan Pelaez
|
|
21
|
+
|
|
1
22
|
## 13.1.2 (2026-03-04)
|
|
2
23
|
|
|
3
24
|
This was a version bump only for @23blocks/angular to align it with other projects, there were no code changes.
|
|
@@ -1066,6 +1066,7 @@ i0.Ι΅Ι΅ngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
1066
1066
|
args: [SEARCH_CONFIG]
|
|
1067
1067
|
}] }] });
|
|
1068
1068
|
|
|
1069
|
+
// Products block aligned with backend strong params
|
|
1069
1070
|
/**
|
|
1070
1071
|
* Angular service wrapping the Products block.
|
|
1071
1072
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"23blocks-angular.mjs","sources":["../../src/lib/tokens.ts","../../src/lib/simple-providers.ts","../../src/lib/providers.ts","../../src/lib/authentication/authentication.service.ts","../../src/lib/search/search.service.ts","../../src/lib/products/products.service.ts","../../src/lib/crm/crm.service.ts","../../src/lib/content/content.service.ts","../../src/lib/geolocation/geolocation.service.ts","../../src/lib/conversations/conversations.service.ts","../../src/lib/files/files.service.ts","../../src/lib/forms/forms.service.ts","../../src/lib/assets/assets.service.ts","../../src/lib/campaigns/campaigns.service.ts","../../src/lib/company/company.service.ts","../../src/lib/rewards/rewards.service.ts","../../src/lib/sales/sales.service.ts","../../src/lib/wallet/wallet.service.ts","../../src/lib/jarvis/jarvis.service.ts","../../src/lib/onboarding/onboarding.service.ts","../../src/lib/university/university.service.ts","../../src/lib/rag/rag.service.ts","../../src/lib/index.ts","../../src/index.ts","../../src/23blocks-angular.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport type { AuthenticationBlockConfig } from '@23blocks/block-authentication';\nimport type { SearchBlockConfig } from '@23blocks/block-search';\nimport type { GeolocationBlockConfig } from '@23blocks/block-geolocation';\nimport type { ContentBlockConfig } from '@23blocks/block-content';\nimport type { CrmBlockConfig } from '@23blocks/block-crm';\nimport type { ProductsBlockConfig } from '@23blocks/block-products';\nimport type { ConversationsBlockConfig } from '@23blocks/block-conversations';\nimport type { FilesBlockConfig } from '@23blocks/block-files';\nimport type { AssetsBlockConfig } from '@23blocks/block-assets';\nimport type { FormsBlockConfig } from '@23blocks/block-forms';\nimport type { SalesBlockConfig } from '@23blocks/block-sales';\nimport type { CampaignsBlockConfig } from '@23blocks/block-campaigns';\nimport type { CompanyBlockConfig } from '@23blocks/block-company';\nimport type { RewardsBlockConfig } from '@23blocks/block-rewards';\nimport type { JarvisBlockConfig } from '@23blocks/block-jarvis';\nimport type { OnboardingBlockConfig } from '@23blocks/block-onboarding';\nimport type { UniversityBlockConfig } from '@23blocks/block-university';\nimport type { WalletBlockConfig } from '@23blocks/block-wallet';\nimport type { RagBlockConfig } from '@23blocks/block-rag';\n\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Transport Tokens (per-service)\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n/**\n * @deprecated Use per-service transport tokens (AUTHENTICATION_TRANSPORT, etc.)\n * Shared transport token - only for backward compatibility with advanced API\n */\nexport const TRANSPORT = new InjectionToken<Transport>('23blocks.transport');\n\n/** Transport for Authentication service */\nexport const AUTHENTICATION_TRANSPORT = new InjectionToken<Transport | null>('23blocks.authentication.transport');\n\n/** Transport for Search service */\nexport const SEARCH_TRANSPORT = new InjectionToken<Transport | null>('23blocks.search.transport');\n\n/** Transport for Products service */\nexport const PRODUCTS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.products.transport');\n\n/** Transport for CRM service */\nexport const CRM_TRANSPORT = new InjectionToken<Transport | null>('23blocks.crm.transport');\n\n/** Transport for Content service */\nexport const CONTENT_TRANSPORT = new InjectionToken<Transport | null>('23blocks.content.transport');\n\n/** Transport for Geolocation service */\nexport const GEOLOCATION_TRANSPORT = new InjectionToken<Transport | null>('23blocks.geolocation.transport');\n\n/** Transport for Conversations service */\nexport const CONVERSATIONS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.conversations.transport');\n\n/** Transport for Files service */\nexport const FILES_TRANSPORT = new InjectionToken<Transport | null>('23blocks.files.transport');\n\n/** Transport for Forms service */\nexport const FORMS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.forms.transport');\n\n/** Transport for Assets service */\nexport const ASSETS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.assets.transport');\n\n/** Transport for Campaigns service */\nexport const CAMPAIGNS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.campaigns.transport');\n\n/** Transport for Company service */\nexport const COMPANY_TRANSPORT = new InjectionToken<Transport | null>('23blocks.company.transport');\n\n/** Transport for Rewards service */\nexport const REWARDS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.rewards.transport');\n\n/** Transport for Sales service */\nexport const SALES_TRANSPORT = new InjectionToken<Transport | null>('23blocks.sales.transport');\n\n/** Transport for Wallet service */\nexport const WALLET_TRANSPORT = new InjectionToken<Transport | null>('23blocks.wallet.transport');\n\n/** Transport for Jarvis service */\nexport const JARVIS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.jarvis.transport');\n\n/** Transport for Onboarding service */\nexport const ONBOARDING_TRANSPORT = new InjectionToken<Transport | null>('23blocks.onboarding.transport');\n\n/** Transport for University service */\nexport const UNIVERSITY_TRANSPORT = new InjectionToken<Transport | null>('23blocks.university.transport');\n\n/** Transport for RAG service */\nexport const RAG_TRANSPORT = new InjectionToken<Transport | null>('23blocks.rag.transport');\n\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Config Tokens (per-service)\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n/**\n * Injection token for Authentication block configuration\n */\nexport const AUTHENTICATION_CONFIG = new InjectionToken<AuthenticationBlockConfig>(\n '23blocks.authentication.config'\n);\n\n/**\n * Injection token for Search block configuration\n */\nexport const SEARCH_CONFIG = new InjectionToken<SearchBlockConfig>(\n '23blocks.search.config'\n);\n\n/**\n * Injection token for Geolocation block configuration\n */\nexport const GEOLOCATION_CONFIG = new InjectionToken<GeolocationBlockConfig>(\n '23blocks.geolocation.config'\n);\n\n/**\n * Injection token for Content block configuration\n */\nexport const CONTENT_CONFIG = new InjectionToken<ContentBlockConfig>(\n '23blocks.content.config'\n);\n\n/**\n * Injection token for CRM block configuration\n */\nexport const CRM_CONFIG = new InjectionToken<CrmBlockConfig>(\n '23blocks.crm.config'\n);\n\n/**\n * Injection token for Products block configuration\n */\nexport const PRODUCTS_CONFIG = new InjectionToken<ProductsBlockConfig>(\n '23blocks.products.config'\n);\n\n/**\n * Injection token for Conversations block configuration\n */\nexport const CONVERSATIONS_CONFIG = new InjectionToken<ConversationsBlockConfig>(\n '23blocks.conversations.config'\n);\n\n/**\n * Injection token for Files block configuration\n */\nexport const FILES_CONFIG = new InjectionToken<FilesBlockConfig>(\n '23blocks.files.config'\n);\n\n/**\n * Injection token for Assets block configuration\n */\nexport const ASSETS_CONFIG = new InjectionToken<AssetsBlockConfig>(\n '23blocks.assets.config'\n);\n\n/**\n * Injection token for Forms block configuration\n */\nexport const FORMS_CONFIG = new InjectionToken<FormsBlockConfig>(\n '23blocks.forms.config'\n);\n\n/**\n * Injection token for Sales block configuration\n */\nexport const SALES_CONFIG = new InjectionToken<SalesBlockConfig>(\n '23blocks.sales.config'\n);\n\n/**\n * Injection token for Campaigns block configuration\n */\nexport const CAMPAIGNS_CONFIG = new InjectionToken<CampaignsBlockConfig>(\n '23blocks.campaigns.config'\n);\n\n/**\n * Injection token for Company block configuration\n */\nexport const COMPANY_CONFIG = new InjectionToken<CompanyBlockConfig>(\n '23blocks.company.config'\n);\n\n/**\n * Injection token for Rewards block configuration\n */\nexport const REWARDS_CONFIG = new InjectionToken<RewardsBlockConfig>(\n '23blocks.rewards.config'\n);\n\n/**\n * Injection token for Jarvis block configuration\n */\nexport const JARVIS_CONFIG = new InjectionToken<JarvisBlockConfig>(\n '23blocks.jarvis.config'\n);\n\n/**\n * Injection token for Onboarding block configuration\n */\nexport const ONBOARDING_CONFIG = new InjectionToken<OnboardingBlockConfig>(\n '23blocks.onboarding.config'\n);\n\n/**\n * Injection token for University block configuration\n */\nexport const UNIVERSITY_CONFIG = new InjectionToken<UniversityBlockConfig>(\n '23blocks.university.config'\n);\n\n/**\n * Injection token for Wallet block configuration\n */\nexport const WALLET_CONFIG = new InjectionToken<WalletBlockConfig>(\n '23blocks.wallet.config'\n);\n\n/**\n * Injection token for RAG block configuration\n */\nexport const RAG_CONFIG = new InjectionToken<RagBlockConfig>(\n '23blocks.rag.config'\n);\n","import type { Provider, EnvironmentProviders } from '@angular/core';\nimport { InjectionToken, makeEnvironmentProviders } from '@angular/core';\nimport { createHttpTransport } from '@23blocks/transport-http';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n TRANSPORT,\n // Per-service transport tokens\n AUTHENTICATION_TRANSPORT,\n SEARCH_TRANSPORT,\n PRODUCTS_TRANSPORT,\n CRM_TRANSPORT,\n CONTENT_TRANSPORT,\n GEOLOCATION_TRANSPORT,\n CONVERSATIONS_TRANSPORT,\n FILES_TRANSPORT,\n FORMS_TRANSPORT,\n ASSETS_TRANSPORT,\n CAMPAIGNS_TRANSPORT,\n COMPANY_TRANSPORT,\n REWARDS_TRANSPORT,\n SALES_TRANSPORT,\n WALLET_TRANSPORT,\n JARVIS_TRANSPORT,\n ONBOARDING_TRANSPORT,\n UNIVERSITY_TRANSPORT,\n RAG_TRANSPORT,\n // Config tokens\n AUTHENTICATION_CONFIG,\n SEARCH_CONFIG,\n PRODUCTS_CONFIG,\n CRM_CONFIG,\n CONTENT_CONFIG,\n GEOLOCATION_CONFIG,\n CONVERSATIONS_CONFIG,\n FILES_CONFIG,\n FORMS_CONFIG,\n ASSETS_CONFIG,\n CAMPAIGNS_CONFIG,\n COMPANY_CONFIG,\n REWARDS_CONFIG,\n SALES_CONFIG,\n WALLET_CONFIG,\n JARVIS_CONFIG,\n ONBOARDING_CONFIG,\n UNIVERSITY_CONFIG,\n RAG_CONFIG,\n} from './tokens';\n\n/**\n * Authentication mode\n */\nexport type AuthMode = 'token' | 'cookie';\n\n/**\n * Storage type for token mode\n */\nexport type StorageType = 'localStorage' | 'sessionStorage' | 'memory';\n\n/**\n * Service URL configuration - each microservice has its own URL.\n * All URLs are optional - only configure the services you need.\n */\nexport interface ServiceUrls {\n /** Authentication service URL */\n authentication?: string;\n /** Search service URL */\n search?: string;\n /** Products service URL */\n products?: string;\n /** CRM service URL */\n crm?: string;\n /** Content service URL */\n content?: string;\n /** Geolocation service URL */\n geolocation?: string;\n /** Conversations service URL */\n conversations?: string;\n /** Files service URL */\n files?: string;\n /** Forms service URL */\n forms?: string;\n /** Assets service URL */\n assets?: string;\n /** Campaigns service URL */\n campaigns?: string;\n /** Company service URL */\n company?: string;\n /** Rewards service URL */\n rewards?: string;\n /** Sales service URL */\n sales?: string;\n /** Wallet service URL */\n wallet?: string;\n /** Jarvis (AI) service URL */\n jarvis?: string;\n /** Onboarding service URL */\n onboarding?: string;\n /** University (LMS) service URL */\n university?: string;\n /** RAG (Retrieval-Augmented Generation) service URL */\n rag?: string;\n}\n\n/**\n * Configuration for providing 23blocks services\n */\nexport interface ProviderConfig {\n /**\n * Service URLs for each microservice.\n * Only configure the services you need - accessing a service without\n * a configured URL will throw an error.\n *\n * @example\n * ```typescript\n * provideBlocks23({\n * apiKey: 'your-api-key',\n * urls: {\n * authentication: 'https://gateway.23blocks.com',\n * crm: 'https://crm.23blocks.com',\n * products: 'https://products.23blocks.com',\n * },\n * })\n * ```\n */\n urls: ServiceUrls;\n\n /**\n * API Key for authenticating with 23blocks services\n */\n apiKey: string;\n\n /**\n * Tenant ID (optional, for multi-tenant setups)\n */\n tenantId?: string;\n\n /**\n * Authentication mode\n * - 'token' (default): SDK stores tokens in localStorage/sessionStorage/memory\n * - 'cookie': Backend manages auth via httpOnly cookies\n */\n authMode?: AuthMode;\n\n /**\n * Storage type for token mode\n * @default 'localStorage'\n */\n storage?: StorageType;\n\n /**\n * Additional headers to include with every request\n */\n headers?: Record<string, string>;\n\n /**\n * Request timeout in milliseconds\n * @default 30000\n */\n timeout?: number;\n}\n\n/**\n * Injection token for the token manager (internal use)\n */\nexport const TOKEN_MANAGER = new InjectionToken<TokenManagerService>('23blocks.token-manager');\n\n/**\n * Injection token for provider config\n */\nexport const PROVIDER_CONFIG = new InjectionToken<ProviderConfig>('23blocks.provider-config');\n\n/** @deprecated Use PROVIDER_CONFIG instead */\nexport const SIMPLE_CONFIG = PROVIDER_CONFIG;\n\n/**\n * Token manager interface\n */\nexport interface TokenManagerService {\n getAccessToken(): string | null;\n getRefreshToken(): string | null;\n setTokens(accessToken: string, refreshToken?: string): void;\n clearTokens(): void;\n /**\n * Subscribe to storage changes from other tabs/windows.\n * Returns an unsubscribe function.\n */\n onStorageChange(callback: () => void): () => void;\n}\n\n/**\n * Generate storage key scoped to API key and tenant\n */\nfunction getStorageKey(type: 'access' | 'refresh', apiKey: string, tenantId?: string): string {\n const scope = tenantId ? `${apiKey}_${tenantId}` : apiKey;\n return `23blocks_${scope}_${type}_token`;\n}\n\n/**\n * In-memory storage for SSR\n */\nclass MemoryStorage {\n private data = new Map<string, string>();\n getItem(key: string): string | null {\n return this.data.get(key) ?? null;\n }\n setItem(key: string, value: string): void {\n this.data.set(key, value);\n }\n removeItem(key: string): void {\n this.data.delete(key);\n }\n}\n\n/**\n * Create a token manager with scoped storage keys and cross-tab sync\n */\nfunction createTokenManager(\n apiKey: string,\n storageType: StorageType,\n tenantId?: string\n): TokenManagerService {\n const isBrowser = typeof window !== 'undefined' && typeof window.localStorage !== 'undefined';\n\n const accessTokenKey = getStorageKey('access', apiKey, tenantId);\n const refreshTokenKey = getStorageKey('refresh', apiKey, tenantId);\n\n let storage: Storage | MemoryStorage;\n if (!isBrowser) {\n storage = new MemoryStorage();\n } else {\n switch (storageType) {\n case 'sessionStorage':\n storage = window.sessionStorage;\n break;\n case 'memory':\n storage = new MemoryStorage();\n break;\n default:\n storage = window.localStorage;\n }\n }\n\n return {\n getAccessToken(): string | null {\n try {\n return storage.getItem(accessTokenKey);\n } catch {\n return null;\n }\n },\n getRefreshToken(): string | null {\n try {\n return storage.getItem(refreshTokenKey);\n } catch {\n return null;\n }\n },\n setTokens(accessToken: string, refreshToken?: string): void {\n try {\n storage.setItem(accessTokenKey, accessToken);\n if (refreshToken) {\n storage.setItem(refreshTokenKey, refreshToken);\n }\n } catch {\n console.warn('[23blocks] Unable to store tokens');\n }\n },\n clearTokens(): void {\n try {\n storage.removeItem(accessTokenKey);\n storage.removeItem(refreshTokenKey);\n } catch {\n // Silently fail\n }\n },\n onStorageChange(callback: () => void): () => void {\n // Only works in browser with localStorage/sessionStorage\n if (!isBrowser || storageType === 'memory') {\n // Return no-op unsubscribe for SSR/memory storage\n return () => {};\n }\n\n const handler = (event: StorageEvent) => {\n // Only trigger if our keys changed\n if (event.key === accessTokenKey || event.key === refreshTokenKey) {\n callback();\n }\n };\n\n window.addEventListener('storage', handler);\n\n // Return unsubscribe function\n return () => {\n window.removeEventListener('storage', handler);\n };\n },\n };\n}\n\n/**\n * Create transport with automatic token handling for a specific URL\n */\nfunction createTransportWithAuth(\n baseUrl: string,\n config: ProviderConfig,\n tokenManager: TokenManagerService\n): Transport {\n return createHttpTransport({\n baseUrl,\n timeout: config.timeout,\n credentials: config.authMode === 'cookie' ? 'include' : undefined,\n headers: () => {\n const headers: Record<string, string> = {\n ...config.headers,\n 'x-api-key': config.apiKey,\n };\n\n if (config.tenantId) {\n headers['tenant-id'] = config.tenantId;\n }\n\n // In token mode, add Authorization header if we have a token\n if (config.authMode !== 'cookie') {\n const token = tokenManager.getAccessToken();\n if (token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n }\n\n return headers;\n },\n });\n}\n\n/**\n * Provide 23blocks services with simplified configuration.\n *\n * This is the recommended way to set up 23blocks in new Angular applications.\n * It automatically handles token storage and authentication headers.\n *\n * Services are only available if their URL is configured. Accessing a service\n * without a configured URL will throw an error.\n *\n * @example Basic usage with multiple services\n * ```typescript\n * // app.config.ts\n * import { ApplicationConfig } from '@angular/core';\n * import { provideBlocks23 } from '@23blocks/angular';\n *\n * export const appConfig: ApplicationConfig = {\n * providers: [\n * provideBlocks23({\n * apiKey: 'your-api-key',\n * urls: {\n * authentication: 'https://gateway.23blocks.com',\n * crm: 'https://crm.23blocks.com',\n * products: 'https://products.23blocks.com',\n * },\n * }),\n * ],\n * };\n * ```\n *\n * @example Cookie mode (recommended for security)\n * ```typescript\n * export const appConfig: ApplicationConfig = {\n * providers: [\n * provideBlocks23({\n * apiKey: 'your-api-key',\n * authMode: 'cookie',\n * urls: {\n * authentication: 'https://gateway.23blocks.com',\n * crm: 'https://crm.23blocks.com',\n * },\n * }),\n * ],\n * };\n * ```\n */\nexport function provideBlocks23(config: ProviderConfig): EnvironmentProviders {\n // Block config for all services\n const blockConfig = { apiKey: config.apiKey, tenantId: config.tenantId };\n\n // Helper to create transport provider for a service URL\n const createTransportProvider = (\n token: InjectionToken<Transport | null>,\n url: string | undefined\n ): Provider => ({\n provide: token,\n useFactory: (tokenManager: TokenManagerService) => {\n if (!url) return null;\n return createTransportWithAuth(url, config, tokenManager);\n },\n deps: [TOKEN_MANAGER],\n });\n\n const providers: Provider[] = [\n // Store config for injection\n { provide: PROVIDER_CONFIG, useValue: config },\n\n // Token manager factory - creates singleton within the injector\n {\n provide: TOKEN_MANAGER,\n useFactory: () => {\n const storage = config.storage ?? 'localStorage';\n return createTokenManager(config.apiKey, storage, config.tenantId);\n },\n },\n\n // Per-service transport factories (null if URL not configured)\n createTransportProvider(AUTHENTICATION_TRANSPORT, config.urls.authentication),\n createTransportProvider(SEARCH_TRANSPORT, config.urls.search),\n createTransportProvider(PRODUCTS_TRANSPORT, config.urls.products),\n createTransportProvider(CRM_TRANSPORT, config.urls.crm),\n createTransportProvider(CONTENT_TRANSPORT, config.urls.content),\n createTransportProvider(GEOLOCATION_TRANSPORT, config.urls.geolocation),\n createTransportProvider(CONVERSATIONS_TRANSPORT, config.urls.conversations),\n createTransportProvider(FILES_TRANSPORT, config.urls.files),\n createTransportProvider(FORMS_TRANSPORT, config.urls.forms),\n createTransportProvider(ASSETS_TRANSPORT, config.urls.assets),\n createTransportProvider(CAMPAIGNS_TRANSPORT, config.urls.campaigns),\n createTransportProvider(COMPANY_TRANSPORT, config.urls.company),\n createTransportProvider(REWARDS_TRANSPORT, config.urls.rewards),\n createTransportProvider(SALES_TRANSPORT, config.urls.sales),\n createTransportProvider(WALLET_TRANSPORT, config.urls.wallet),\n createTransportProvider(JARVIS_TRANSPORT, config.urls.jarvis),\n createTransportProvider(ONBOARDING_TRANSPORT, config.urls.onboarding),\n createTransportProvider(UNIVERSITY_TRANSPORT, config.urls.university),\n createTransportProvider(RAG_TRANSPORT, config.urls.rag),\n\n // Backward compatibility: provide TRANSPORT token using auth URL if available\n // (for advanced API users who still inject TRANSPORT directly)\n {\n provide: TRANSPORT,\n useFactory: (tokenManager: TokenManagerService) => {\n // Use auth URL if available, otherwise create a dummy transport that throws\n const url = config.urls.authentication;\n if (url) {\n return createTransportWithAuth(url, config, tokenManager);\n }\n // Return a transport that throws helpful errors\n return {\n request: () => {\n throw new Error(\n '[23blocks] TRANSPORT is not configured. ' +\n 'Use per-service transport tokens or configure urls.authentication.'\n );\n },\n };\n },\n deps: [TOKEN_MANAGER],\n },\n\n // Block configs\n { provide: AUTHENTICATION_CONFIG, useValue: blockConfig },\n { provide: SEARCH_CONFIG, useValue: blockConfig },\n { provide: PRODUCTS_CONFIG, useValue: blockConfig },\n { provide: CRM_CONFIG, useValue: blockConfig },\n { provide: CONTENT_CONFIG, useValue: blockConfig },\n { provide: GEOLOCATION_CONFIG, useValue: blockConfig },\n { provide: CONVERSATIONS_CONFIG, useValue: blockConfig },\n { provide: FILES_CONFIG, useValue: blockConfig },\n { provide: FORMS_CONFIG, useValue: blockConfig },\n { provide: ASSETS_CONFIG, useValue: blockConfig },\n { provide: CAMPAIGNS_CONFIG, useValue: blockConfig },\n { provide: COMPANY_CONFIG, useValue: blockConfig },\n { provide: REWARDS_CONFIG, useValue: blockConfig },\n { provide: SALES_CONFIG, useValue: blockConfig },\n { provide: WALLET_CONFIG, useValue: blockConfig },\n { provide: JARVIS_CONFIG, useValue: blockConfig },\n { provide: ONBOARDING_CONFIG, useValue: blockConfig },\n { provide: UNIVERSITY_CONFIG, useValue: blockConfig },\n { provide: RAG_CONFIG, useValue: blockConfig },\n ];\n\n return makeEnvironmentProviders(providers);\n}\n\n/**\n * Get providers array for NgModule-based applications with simplified config.\n *\n * Services are only available if their URL is configured. Accessing a service\n * without a configured URL will throw an error.\n *\n * @example\n * ```typescript\n * // app.module.ts\n * import { NgModule } from '@angular/core';\n * import { getBlocks23Providers } from '@23blocks/angular';\n *\n * @NgModule({\n * providers: [\n * ...getBlocks23Providers({\n * apiKey: 'your-api-key',\n * urls: {\n * authentication: 'https://gateway.23blocks.com',\n * crm: 'https://crm.23blocks.com',\n * },\n * }),\n * ],\n * })\n * export class AppModule {}\n * ```\n */\nexport function getBlocks23Providers(config: ProviderConfig): Provider[] {\n // Block config for all services\n const blockConfig = { apiKey: config.apiKey, tenantId: config.tenantId };\n\n // Helper to create transport provider for a service URL\n const createTransportProvider = (\n token: InjectionToken<Transport | null>,\n url: string | undefined\n ): Provider => ({\n provide: token,\n useFactory: (tokenManager: TokenManagerService) => {\n if (!url) return null;\n return createTransportWithAuth(url, config, tokenManager);\n },\n deps: [TOKEN_MANAGER],\n });\n\n return [\n // Store config for injection\n { provide: PROVIDER_CONFIG, useValue: config },\n\n // Token manager factory - creates singleton within the injector\n {\n provide: TOKEN_MANAGER,\n useFactory: () => {\n const storage = config.storage ?? 'localStorage';\n return createTokenManager(config.apiKey, storage, config.tenantId);\n },\n },\n\n // Per-service transport factories (null if URL not configured)\n createTransportProvider(AUTHENTICATION_TRANSPORT, config.urls.authentication),\n createTransportProvider(SEARCH_TRANSPORT, config.urls.search),\n createTransportProvider(PRODUCTS_TRANSPORT, config.urls.products),\n createTransportProvider(CRM_TRANSPORT, config.urls.crm),\n createTransportProvider(CONTENT_TRANSPORT, config.urls.content),\n createTransportProvider(GEOLOCATION_TRANSPORT, config.urls.geolocation),\n createTransportProvider(CONVERSATIONS_TRANSPORT, config.urls.conversations),\n createTransportProvider(FILES_TRANSPORT, config.urls.files),\n createTransportProvider(FORMS_TRANSPORT, config.urls.forms),\n createTransportProvider(ASSETS_TRANSPORT, config.urls.assets),\n createTransportProvider(CAMPAIGNS_TRANSPORT, config.urls.campaigns),\n createTransportProvider(COMPANY_TRANSPORT, config.urls.company),\n createTransportProvider(REWARDS_TRANSPORT, config.urls.rewards),\n createTransportProvider(SALES_TRANSPORT, config.urls.sales),\n createTransportProvider(WALLET_TRANSPORT, config.urls.wallet),\n createTransportProvider(JARVIS_TRANSPORT, config.urls.jarvis),\n createTransportProvider(ONBOARDING_TRANSPORT, config.urls.onboarding),\n createTransportProvider(UNIVERSITY_TRANSPORT, config.urls.university),\n createTransportProvider(RAG_TRANSPORT, config.urls.rag),\n\n // Backward compatibility: provide TRANSPORT token using auth URL if available\n {\n provide: TRANSPORT,\n useFactory: (tokenManager: TokenManagerService) => {\n const url = config.urls.authentication;\n if (url) {\n return createTransportWithAuth(url, config, tokenManager);\n }\n return {\n request: () => {\n throw new Error(\n '[23blocks] TRANSPORT is not configured. ' +\n 'Use per-service transport tokens or configure urls.authentication.'\n );\n },\n };\n },\n deps: [TOKEN_MANAGER],\n },\n\n // Block configs\n { provide: AUTHENTICATION_CONFIG, useValue: blockConfig },\n { provide: SEARCH_CONFIG, useValue: blockConfig },\n { provide: PRODUCTS_CONFIG, useValue: blockConfig },\n { provide: CRM_CONFIG, useValue: blockConfig },\n { provide: CONTENT_CONFIG, useValue: blockConfig },\n { provide: GEOLOCATION_CONFIG, useValue: blockConfig },\n { provide: CONVERSATIONS_CONFIG, useValue: blockConfig },\n { provide: FILES_CONFIG, useValue: blockConfig },\n { provide: FORMS_CONFIG, useValue: blockConfig },\n { provide: ASSETS_CONFIG, useValue: blockConfig },\n { provide: CAMPAIGNS_CONFIG, useValue: blockConfig },\n { provide: COMPANY_CONFIG, useValue: blockConfig },\n { provide: REWARDS_CONFIG, useValue: blockConfig },\n { provide: SALES_CONFIG, useValue: blockConfig },\n { provide: WALLET_CONFIG, useValue: blockConfig },\n { provide: JARVIS_CONFIG, useValue: blockConfig },\n { provide: ONBOARDING_CONFIG, useValue: blockConfig },\n { provide: UNIVERSITY_CONFIG, useValue: blockConfig },\n { provide: RAG_CONFIG, useValue: blockConfig },\n ];\n}\n\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Backward Compatibility Aliases (deprecated)\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n/** @deprecated Use `ProviderConfig` instead */\nexport type Simple23BlocksConfig = ProviderConfig;\n","import type { Provider, EnvironmentProviders } from '@angular/core';\nimport { makeEnvironmentProviders } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport type { AuthenticationBlockConfig } from '@23blocks/block-authentication';\nimport type { SearchBlockConfig } from '@23blocks/block-search';\nimport type { ProductsBlockConfig } from '@23blocks/block-products';\nimport type { CrmBlockConfig } from '@23blocks/block-crm';\nimport type { ContentBlockConfig } from '@23blocks/block-content';\nimport type { GeolocationBlockConfig } from '@23blocks/block-geolocation';\nimport type { ConversationsBlockConfig } from '@23blocks/block-conversations';\nimport type { FilesBlockConfig } from '@23blocks/block-files';\nimport type { FormsBlockConfig } from '@23blocks/block-forms';\nimport type { AssetsBlockConfig } from '@23blocks/block-assets';\nimport type { CampaignsBlockConfig } from '@23blocks/block-campaigns';\nimport type { CompanyBlockConfig } from '@23blocks/block-company';\nimport type { RewardsBlockConfig } from '@23blocks/block-rewards';\nimport type { SalesBlockConfig } from '@23blocks/block-sales';\nimport type { WalletBlockConfig } from '@23blocks/block-wallet';\nimport type { JarvisBlockConfig } from '@23blocks/block-jarvis';\nimport type { OnboardingBlockConfig } from '@23blocks/block-onboarding';\nimport type { UniversityBlockConfig } from '@23blocks/block-university';\nimport type { RagBlockConfig } from '@23blocks/block-rag';\nimport {\n TRANSPORT,\n AUTHENTICATION_CONFIG,\n SEARCH_CONFIG,\n PRODUCTS_CONFIG,\n CRM_CONFIG,\n CONTENT_CONFIG,\n GEOLOCATION_CONFIG,\n CONVERSATIONS_CONFIG,\n FILES_CONFIG,\n FORMS_CONFIG,\n ASSETS_CONFIG,\n CAMPAIGNS_CONFIG,\n COMPANY_CONFIG,\n REWARDS_CONFIG,\n SALES_CONFIG,\n WALLET_CONFIG,\n JARVIS_CONFIG,\n ONBOARDING_CONFIG,\n UNIVERSITY_CONFIG,\n RAG_CONFIG,\n} from './tokens';\n\n/**\n * Configuration for providing 23blocks services\n */\nexport interface Provide23BlocksConfig {\n transport: Transport;\n authentication?: AuthenticationBlockConfig;\n search?: SearchBlockConfig;\n products?: ProductsBlockConfig;\n crm?: CrmBlockConfig;\n content?: ContentBlockConfig;\n geolocation?: GeolocationBlockConfig;\n conversations?: ConversationsBlockConfig;\n files?: FilesBlockConfig;\n forms?: FormsBlockConfig;\n assets?: AssetsBlockConfig;\n campaigns?: CampaignsBlockConfig;\n company?: CompanyBlockConfig;\n rewards?: RewardsBlockConfig;\n sales?: SalesBlockConfig;\n wallet?: WalletBlockConfig;\n jarvis?: JarvisBlockConfig;\n onboarding?: OnboardingBlockConfig;\n university?: UniversityBlockConfig;\n rag?: RagBlockConfig;\n}\n\n/**\n * Provide 23blocks services for standalone Angular applications.\n *\n * @example\n * ```typescript\n * // app.config.ts\n * import { ApplicationConfig } from '@angular/core';\n * import { provide23Blocks } from '@23blocks/angular';\n * import { createHttpTransport } from '@23blocks/transport-http';\n *\n * const transport = createHttpTransport({\n * baseUrl: 'https://api.example.com',\n * headers: () => ({\n * 'Authorization': `Bearer ${localStorage.getItem('token')}`,\n * }),\n * });\n *\n * export const appConfig: ApplicationConfig = {\n * providers: [\n * provide23Blocks({\n * transport,\n * authentication: { apiKey: 'my-api-key' },\n * search: { apiKey: 'my-api-key' },\n * products: { apiKey: 'my-api-key' },\n * crm: { apiKey: 'my-api-key' },\n * }),\n * ],\n * };\n * ```\n */\nexport function provide23Blocks(config: Provide23BlocksConfig): EnvironmentProviders {\n const providers: Provider[] = [\n { provide: TRANSPORT, useValue: config.transport },\n ];\n\n if (config.authentication) {\n providers.push({ provide: AUTHENTICATION_CONFIG, useValue: config.authentication });\n }\n if (config.search) {\n providers.push({ provide: SEARCH_CONFIG, useValue: config.search });\n }\n if (config.products) {\n providers.push({ provide: PRODUCTS_CONFIG, useValue: config.products });\n }\n if (config.crm) {\n providers.push({ provide: CRM_CONFIG, useValue: config.crm });\n }\n if (config.content) {\n providers.push({ provide: CONTENT_CONFIG, useValue: config.content });\n }\n if (config.geolocation) {\n providers.push({ provide: GEOLOCATION_CONFIG, useValue: config.geolocation });\n }\n if (config.conversations) {\n providers.push({ provide: CONVERSATIONS_CONFIG, useValue: config.conversations });\n }\n if (config.files) {\n providers.push({ provide: FILES_CONFIG, useValue: config.files });\n }\n if (config.forms) {\n providers.push({ provide: FORMS_CONFIG, useValue: config.forms });\n }\n if (config.assets) {\n providers.push({ provide: ASSETS_CONFIG, useValue: config.assets });\n }\n if (config.campaigns) {\n providers.push({ provide: CAMPAIGNS_CONFIG, useValue: config.campaigns });\n }\n if (config.company) {\n providers.push({ provide: COMPANY_CONFIG, useValue: config.company });\n }\n if (config.rewards) {\n providers.push({ provide: REWARDS_CONFIG, useValue: config.rewards });\n }\n if (config.sales) {\n providers.push({ provide: SALES_CONFIG, useValue: config.sales });\n }\n if (config.wallet) {\n providers.push({ provide: WALLET_CONFIG, useValue: config.wallet });\n }\n if (config.jarvis) {\n providers.push({ provide: JARVIS_CONFIG, useValue: config.jarvis });\n }\n if (config.onboarding) {\n providers.push({ provide: ONBOARDING_CONFIG, useValue: config.onboarding });\n }\n if (config.university) {\n providers.push({ provide: UNIVERSITY_CONFIG, useValue: config.university });\n }\n if (config.rag) {\n providers.push({ provide: RAG_CONFIG, useValue: config.rag });\n }\n\n return makeEnvironmentProviders(providers);\n}\n\n/**\n * Get providers array for NgModule-based applications.\n *\n * @example\n * ```typescript\n * // app.module.ts\n * import { NgModule } from '@angular/core';\n * import { get23BlocksProviders } from '@23blocks/angular';\n *\n * @NgModule({\n * providers: [\n * ...get23BlocksProviders({\n * transport,\n * authentication: { apiKey: 'my-api-key' },\n * }),\n * ],\n * })\n * export class AppModule {}\n * ```\n */\nexport function get23BlocksProviders(config: Provide23BlocksConfig): Provider[] {\n const providers: Provider[] = [\n { provide: TRANSPORT, useValue: config.transport },\n ];\n\n if (config.authentication) {\n providers.push({ provide: AUTHENTICATION_CONFIG, useValue: config.authentication });\n }\n if (config.search) {\n providers.push({ provide: SEARCH_CONFIG, useValue: config.search });\n }\n if (config.products) {\n providers.push({ provide: PRODUCTS_CONFIG, useValue: config.products });\n }\n if (config.crm) {\n providers.push({ provide: CRM_CONFIG, useValue: config.crm });\n }\n if (config.content) {\n providers.push({ provide: CONTENT_CONFIG, useValue: config.content });\n }\n if (config.geolocation) {\n providers.push({ provide: GEOLOCATION_CONFIG, useValue: config.geolocation });\n }\n if (config.conversations) {\n providers.push({ provide: CONVERSATIONS_CONFIG, useValue: config.conversations });\n }\n if (config.files) {\n providers.push({ provide: FILES_CONFIG, useValue: config.files });\n }\n if (config.forms) {\n providers.push({ provide: FORMS_CONFIG, useValue: config.forms });\n }\n if (config.assets) {\n providers.push({ provide: ASSETS_CONFIG, useValue: config.assets });\n }\n if (config.campaigns) {\n providers.push({ provide: CAMPAIGNS_CONFIG, useValue: config.campaigns });\n }\n if (config.company) {\n providers.push({ provide: COMPANY_CONFIG, useValue: config.company });\n }\n if (config.rewards) {\n providers.push({ provide: REWARDS_CONFIG, useValue: config.rewards });\n }\n if (config.sales) {\n providers.push({ provide: SALES_CONFIG, useValue: config.sales });\n }\n if (config.wallet) {\n providers.push({ provide: WALLET_CONFIG, useValue: config.wallet });\n }\n if (config.jarvis) {\n providers.push({ provide: JARVIS_CONFIG, useValue: config.jarvis });\n }\n if (config.onboarding) {\n providers.push({ provide: ONBOARDING_CONFIG, useValue: config.onboarding });\n }\n if (config.university) {\n providers.push({ provide: UNIVERSITY_CONFIG, useValue: config.university });\n }\n if (config.rag) {\n providers.push({ provide: RAG_CONFIG, useValue: config.rag });\n }\n\n return providers;\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport { Observable, from, tap } from 'rxjs';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createAuthenticationBlock,\n type AuthenticationBlock,\n type AuthenticationBlockConfig,\n type SignInRequest,\n type SignInResponse,\n type SignUpRequest,\n type SignUpResponse,\n type RefreshTokenRequest,\n type RefreshTokenResponse,\n type MagicLinkVerifyRequest,\n type AcceptInvitationRequest,\n type OAuthSocialLoginRequest,\n type TenantLoginRequest,\n} from '@23blocks/block-authentication';\nimport { TRANSPORT, AUTHENTICATION_TRANSPORT, AUTHENTICATION_CONFIG } from '../tokens';\nimport { TOKEN_MANAGER, SIMPLE_CONFIG, type TokenManagerService, type Simple23BlocksConfig } from '../simple-providers';\n\n/**\n * Angular service wrapping the Authentication block.\n *\n * Auth-flow methods (signIn, signUp, signOut, OAuth, etc.) return Observables\n * with automatic token management via `tap()`.\n *\n * All other sub-services are exposed as typed getters returning Promise-based APIs.\n * Use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * // Auth flows (Observable with token management):\n * this.auth.signIn({ email, password }).subscribe(...)\n *\n * // Other services (Promise-based, wrap in from() if needed):\n * const user = await this.auth.users.get(userId);\n * from(this.auth.roles.list()).subscribe(...)\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class AuthenticationService {\n private readonly block: AuthenticationBlock | null;\n private readonly tokenManager: TokenManagerService | null;\n private readonly simpleConfig: Simple23BlocksConfig | null;\n\n constructor(\n @Optional() @Inject(AUTHENTICATION_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(AUTHENTICATION_CONFIG) config: AuthenticationBlockConfig,\n @Optional() @Inject(TOKEN_MANAGER) tokenManager: TokenManagerService | null,\n @Optional() @Inject(SIMPLE_CONFIG) simpleConfig: Simple23BlocksConfig | null\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createAuthenticationBlock(transport, config) : null;\n this.tokenManager = tokenManager;\n this.simpleConfig = simpleConfig;\n }\n\n private ensureConfigured(): AuthenticationBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] AuthenticationService is not configured. ' +\n \"Add 'urls.authentication' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n private get isTokenMode(): boolean {\n return this.tokenManager !== null && this.simpleConfig?.authMode !== 'cookie';\n }\n\n private storeTokens(response: SignInResponse | RefreshTokenResponse): void {\n if (this.isTokenMode && this.tokenManager && response.accessToken) {\n this.tokenManager.setTokens(\n response.accessToken,\n 'refreshToken' in response ? response.refreshToken : undefined\n );\n }\n }\n\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n // Auth-flow methods (Observable with token management)\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n /**\n * Sign in with email and password.\n * Returns an Observable that emits the sign-in response and automatically\n * stores access/refresh tokens in token mode.\n *\n * @param request - Email and password credentials\n * @returns Observable emitting SignInResponse with `user`, `accessToken`,\n * optional `refreshToken`, `tokenType`, and `expiresIn`\n * @example\n * ```typescript\n * this.authService.signIn({ email: 'user@example.com', password: 'secret' })\n * .subscribe(({ user, accessToken }) => console.log('Signed in:', user.email));\n * ```\n */\n signIn(request: SignInRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().auth.signIn(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Sign up a new user.\n * Returns an Observable that emits the sign-up response and automatically\n * stores tokens if email confirmation is not required.\n *\n * @param request - User registration data (email, password, etc.)\n * @returns Observable emitting SignUpResponse with `user`, optional `accessToken`\n * (absent if email confirmation is required), and optional `message`\n * @note If email confirmation is enabled, `accessToken` will be undefined until confirmed.\n */\n signUp(request: SignUpRequest): Observable<SignUpResponse> {\n return from(this.ensureConfigured().auth.signUp(request)).pipe(\n tap((response) => {\n if (this.isTokenMode && this.tokenManager && response.accessToken) {\n this.tokenManager.setTokens(response.accessToken);\n }\n })\n );\n }\n\n /**\n * Sign out the current user.\n * Invalidates the session server-side and clears locally stored tokens in token mode.\n *\n * @returns Observable that completes on successful sign-out\n */\n signOut(): Observable<void> {\n return from(this.ensureConfigured().auth.signOut()).pipe(\n tap(() => {\n if (this.isTokenMode && this.tokenManager) {\n this.tokenManager.clearTokens();\n }\n })\n );\n }\n\n /**\n * Refresh the access token using a refresh token.\n * Automatically stores the new token pair in token mode.\n *\n * @param request - Contains the `refreshToken` to exchange\n * @returns Observable emitting RefreshTokenResponse with new `accessToken`,\n * optional new `refreshToken`, `tokenType`, and `expiresIn`\n */\n refreshToken(request: RefreshTokenRequest): Observable<RefreshTokenResponse> {\n return from(this.ensureConfigured().auth.refreshToken(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Verify a magic link token and sign in.\n * Automatically stores tokens on successful verification.\n *\n * @param request - Contains the magic link `token` from the email link\n * @returns Observable emitting SignInResponse with `user`, `accessToken`, optional `refreshToken`\n */\n verifyMagicLink(request: MagicLinkVerifyRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().auth.verifyMagicLink(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Accept an invitation and create the user's account.\n * Automatically stores tokens on successful acceptance.\n *\n * @param request - Invitation token and user account details (password, etc.)\n * @returns Observable emitting SignInResponse with the new `user`, `accessToken`,\n * optional `refreshToken`\n */\n acceptInvitation(request: AcceptInvitationRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().auth.acceptInvitation(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Sign in via Facebook OAuth.\n * Automatically stores tokens on successful authentication.\n *\n * @param request - Facebook OAuth access token\n * @returns Observable emitting SignInResponse with `user` and tokens\n */\n facebookLogin(request: OAuthSocialLoginRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().oauth.facebookLogin(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Sign in via Google OAuth.\n * Automatically stores tokens on successful authentication.\n *\n * @param request - Google OAuth access token\n * @returns Observable emitting SignInResponse with `user` and tokens\n */\n googleLogin(request: OAuthSocialLoginRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().oauth.googleLogin(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Sign in via tenant-specific login (white-label authentication).\n * Automatically stores tokens on successful authentication.\n *\n * @param request - Tenant login credentials and tenant identifier\n * @returns Observable emitting SignInResponse with `user` and tokens\n */\n tenantLogin(request: TenantLoginRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().oauth.tenantLogin(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n // Token Management (only applicable with provideBlocks23)\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n /**\n * Get the currently stored access token.\n * Only available in token mode (not cookie mode).\n *\n * @returns The access token string, or `null` if not set or in cookie mode\n */\n getAccessToken(): string | null {\n return this.tokenManager?.getAccessToken() ?? null;\n }\n\n /**\n * Get the currently stored refresh token.\n * Only available in token mode (not cookie mode).\n *\n * @returns The refresh token string, or `null` if not set or in cookie mode\n */\n getRefreshToken(): string | null {\n return this.tokenManager?.getRefreshToken() ?? null;\n }\n\n /**\n * Manually set access and refresh tokens.\n * Useful when tokens are obtained outside the normal auth flow\n * (e.g., from a server-side redirect or external OAuth callback).\n *\n * @param accessToken - The access token to store\n * @param refreshToken - Optional refresh token to store\n */\n setTokens(accessToken: string, refreshToken?: string): void {\n this.tokenManager?.setTokens(accessToken, refreshToken);\n }\n\n /**\n * Clear all stored tokens, effectively logging the user out locally.\n * Does NOT invalidate the session server-side β use `signOut()` for that.\n */\n clearTokens(): void {\n this.tokenManager?.clearTokens();\n }\n\n /**\n * Check if the user is currently authenticated based on token presence.\n *\n * @returns `true` if an access token is stored, `false` if not,\n * or `null` if token management is unavailable (cookie mode or no TokenManager)\n */\n isAuthenticated(): boolean | null {\n if (!this.tokenManager || this.simpleConfig?.authMode === 'cookie') {\n return null;\n }\n return !!this.tokenManager.getAccessToken();\n }\n\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n // Delegated sub-services (Promise-based, auto-sync with block API)\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n /** Core auth operations (signIn, signUp, signOut, password reset, magic links, invitations). Promise-based. */\n get auth() { return this.ensureConfigured().auth; }\n /** User CRUD, listing, search, and profile management */\n get users() { return this.ensureConfigured().users; }\n /** Role listing and assignment */\n get roles() { return this.ensureConfigured().roles; }\n /** Permission management */\n get permissions() { return this.ensureConfigured().permissions; }\n /** API key creation and management */\n get apiKeys() { return this.ensureConfigured().apiKeys; }\n /** Service token management for machine-to-machine authentication */\n get serviceTokens() { return this.ensureConfigured().serviceTokens; }\n /** Multi-factor authentication setup and verification */\n get mfa() { return this.ensureConfigured().mfa; }\n /** OAuth provider management (Facebook, Google, tenant login) */\n get oauth() { return this.ensureConfigured().oauth; }\n /** User avatar upload and management */\n get avatars() { return this.ensureConfigured().avatars; }\n /** Tenant CRUD and configuration */\n get tenants() { return this.ensureConfigured().tenants; }\n /** Application registration and management */\n get apps() { return this.ensureConfigured().apps; }\n /** Block configuration management */\n get blocks() { return this.ensureConfigured().blocks; }\n /** Service endpoint management */\n get services() { return this.ensureConfigured().services; }\n /** Subscription model/plan definitions */\n get subscriptionModels() { return this.ensureConfigured().subscriptionModels; }\n /** User-level subscription management */\n get userSubscriptions() { return this.ensureConfigured().userSubscriptions; }\n /** Company-level subscription management */\n get companySubscriptions() { return this.ensureConfigured().companySubscriptions; }\n /** Country listing (read-only reference data) */\n get countries() { return this.ensureConfigured().countries; }\n /** State/province listing (read-only reference data) */\n get states() { return this.ensureConfigured().states; }\n /** County listing (read-only reference data) */\n get counties() { return this.ensureConfigured().counties; }\n /** City listing (read-only reference data) */\n get cities() { return this.ensureConfigured().cities; }\n /** Currency listing (read-only reference data) */\n get currencies() { return this.ensureConfigured().currencies; }\n /** Guest/anonymous user management */\n get guests() { return this.ensureConfigured().guests; }\n /** Magic link token management */\n get magicLinks() { return this.ensureConfigured().magicLinks; }\n /** Refresh token listing and revocation */\n get refreshTokens() { return this.ensureConfigured().refreshTokens; }\n /** User device registration and management */\n get userDevices() { return this.ensureConfigured().userDevices; }\n /** Tenant-user association management */\n get tenantUsers() { return this.ensureConfigured().tenantUsers; }\n /** Email template management (Mandrill/SendGrid) */\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n /** JSON Web Key Set management */\n get jwks() { return this.ensureConfigured().jwks; }\n /** Admin RSA key management */\n get adminRsaKeys() { return this.ensureConfigured().adminRsaKeys; }\n /** OpenID Connect configuration */\n get oidc() { return this.ensureConfigured().oidc; }\n\n /** Direct access to the underlying AuthenticationBlock instance */\n get authenticationBlock(): AuthenticationBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createSearchBlock,\n type SearchBlock,\n type SearchBlockConfig,\n} from '@23blocks/block-search';\nimport { TRANSPORT, SEARCH_TRANSPORT, SEARCH_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Search block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * // Promise-based (recommended for modern Angular):\n * const result = await this.searchService.search.search(request);\n *\n * // Observable-based:\n * from(this.searchService.search.search(request)).subscribe(...)\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class SearchService {\n private readonly block: SearchBlock | null;\n\n constructor(\n @Optional() @Inject(SEARCH_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(SEARCH_CONFIG) config: SearchBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createSearchBlock(transport, config) : null;\n }\n\n private ensureConfigured(): SearchBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] SearchService is not configured. ' +\n \"Add 'urls.search' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get search() { return this.ensureConfigured().search; }\n get history() { return this.ensureConfigured().history; }\n get favorites() { return this.ensureConfigured().favorites; }\n get entities() { return this.ensureConfigured().entities; }\n get identities() { return this.ensureConfigured().identities; }\n get jarvis() { return this.ensureConfigured().jarvis; }\n\n /** Full block access */\n get searchBlock(): SearchBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createProductsBlock,\n type ProductsBlock,\n type ProductsBlockConfig,\n} from '@23blocks/block-products';\nimport { TRANSPORT, PRODUCTS_TRANSPORT, PRODUCTS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Products block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const products = await this.productsService.products.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class ProductsService {\n private readonly block: ProductsBlock | null;\n\n constructor(\n @Optional() @Inject(PRODUCTS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(PRODUCTS_CONFIG) config: ProductsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createProductsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): ProductsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] ProductsService is not configured. ' +\n \"Add 'urls.products' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get products() { return this.ensureConfigured().products; }\n get cart() { return this.ensureConfigured().cart; }\n get cartDetails() { return this.ensureConfigured().cartDetails; }\n get categories() { return this.ensureConfigured().categories; }\n get brands() { return this.ensureConfigured().brands; }\n get vendors() { return this.ensureConfigured().vendors; }\n get warehouses() { return this.ensureConfigured().warehouses; }\n get channels() { return this.ensureConfigured().channels; }\n get collections() { return this.ensureConfigured().collections; }\n get productSets() { return this.ensureConfigured().productSets; }\n get shoppingLists() { return this.ensureConfigured().shoppingLists; }\n get promotions() { return this.ensureConfigured().promotions; }\n get prices() { return this.ensureConfigured().prices; }\n get filters() { return this.ensureConfigured().filters; }\n get images() { return this.ensureConfigured().images; }\n get variations() { return this.ensureConfigured().variations; }\n get reviews() { return this.ensureConfigured().reviews; }\n get variationReviews() { return this.ensureConfigured().variationReviews; }\n get stock() { return this.ensureConfigured().stock; }\n get suggestions() { return this.ensureConfigured().suggestions; }\n get addons() { return this.ensureConfigured().addons; }\n get myCarts() { return this.ensureConfigured().myCarts; }\n get remarketing() { return this.ensureConfigured().remarketing; }\n get visitors() { return this.ensureConfigured().visitors; }\n get productVendors() { return this.ensureConfigured().productVendors; }\n\n /** Full block access */\n get productsBlock(): ProductsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createCrmBlock,\n type CrmBlock,\n type CrmBlockConfig,\n} from '@23blocks/block-crm';\nimport { TRANSPORT, CRM_TRANSPORT, CRM_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the CRM block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const accounts = await this.crmService.accounts.list({ page: 1, perPage: 20 });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class CrmService {\n private readonly block: CrmBlock | null;\n\n constructor(\n @Optional() @Inject(CRM_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(CRM_CONFIG) config: CrmBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createCrmBlock(transport, config) : null;\n }\n\n private ensureConfigured(): CrmBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] CrmService is not configured. ' +\n \"Add 'urls.crm' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get accounts() { return this.ensureConfigured().accounts; }\n get contacts() { return this.ensureConfigured().contacts; }\n get contactEvents() { return this.ensureConfigured().contactEvents; }\n get leads() { return this.ensureConfigured().leads; }\n get leadFollows() { return this.ensureConfigured().leadFollows; }\n get opportunities() { return this.ensureConfigured().opportunities; }\n get meetings() { return this.ensureConfigured().meetings; }\n get meetingParticipants() { return this.ensureConfigured().meetingParticipants; }\n get meetingBillings() { return this.ensureConfigured().meetingBillings; }\n get quotes() { return this.ensureConfigured().quotes; }\n get subscribers() { return this.ensureConfigured().subscribers; }\n get referrals() { return this.ensureConfigured().referrals; }\n get touches() { return this.ensureConfigured().touches; }\n get categories() { return this.ensureConfigured().categories; }\n get calendarAccounts() { return this.ensureConfigured().calendarAccounts; }\n get busyBlocks() { return this.ensureConfigured().busyBlocks; }\n get icsTokens() { return this.ensureConfigured().icsTokens; }\n get zoomMeetings() { return this.ensureConfigured().zoomMeetings; }\n get zoomHosts() { return this.ensureConfigured().zoomHosts; }\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n get communications() { return this.ensureConfigured().communications; }\n get users() { return this.ensureConfigured().users; }\n get billingReports() { return this.ensureConfigured().billingReports; }\n get calendarSync() { return this.ensureConfigured().calendarSync; }\n\n /** Full block access */\n get crmBlock(): CrmBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createContentBlock,\n type ContentBlock,\n type ContentBlockConfig,\n} from '@23blocks/block-content';\nimport { TRANSPORT, CONTENT_TRANSPORT, CONTENT_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Content block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const posts = await this.contentService.posts.list({ page: 1, perPage: 10 });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class ContentService {\n private readonly block: ContentBlock | null;\n\n constructor(\n @Optional() @Inject(CONTENT_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(CONTENT_CONFIG) config: ContentBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createContentBlock(transport, config) : null;\n }\n\n private ensureConfigured(): ContentBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] ContentService is not configured. ' +\n \"Add 'urls.content' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get posts() { return this.ensureConfigured().posts; }\n get postVersions() { return this.ensureConfigured().postVersions; }\n get postTemplates() { return this.ensureConfigured().postTemplates; }\n get comments() { return this.ensureConfigured().comments; }\n get categories() { return this.ensureConfigured().categories; }\n get tags() { return this.ensureConfigured().tags; }\n get users() { return this.ensureConfigured().users; }\n get moderation() { return this.ensureConfigured().moderation; }\n get activity() { return this.ensureConfigured().activity; }\n get series() { return this.ensureConfigured().series; }\n\n /** Full block access */\n get contentBlock(): ContentBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createGeolocationBlock,\n type GeolocationBlock,\n type GeolocationBlockConfig,\n} from '@23blocks/block-geolocation';\nimport { TRANSPORT, GEOLOCATION_TRANSPORT, GEOLOCATION_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Geolocation block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const locations = await this.geolocationService.locations.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class GeolocationService {\n private readonly block: GeolocationBlock | null;\n\n constructor(\n @Optional() @Inject(GEOLOCATION_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(GEOLOCATION_CONFIG) config: GeolocationBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createGeolocationBlock(transport, config) : null;\n }\n\n private ensureConfigured(): GeolocationBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] GeolocationService is not configured. ' +\n \"Add 'urls.geolocation' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get locations() { return this.ensureConfigured().locations; }\n get addresses() { return this.ensureConfigured().addresses; }\n get areas() { return this.ensureConfigured().areas; }\n get regions() { return this.ensureConfigured().regions; }\n get routes() { return this.ensureConfigured().routes; }\n get bookings() { return this.ensureConfigured().bookings; }\n get premises() { return this.ensureConfigured().premises; }\n get premiseEvents() { return this.ensureConfigured().premiseEvents; }\n get routeTracker() { return this.ensureConfigured().routeTracker; }\n get locationHours() { return this.ensureConfigured().locationHours; }\n get locationImages() { return this.ensureConfigured().locationImages; }\n get locationSlots() { return this.ensureConfigured().locationSlots; }\n get locationTaxes() { return this.ensureConfigured().locationTaxes; }\n get locationGroups() { return this.ensureConfigured().locationGroups; }\n get identities() { return this.ensureConfigured().identities; }\n get locationIdentities() { return this.ensureConfigured().locationIdentities; }\n get geoCountries() { return this.ensureConfigured().geoCountries; }\n get geoStates() { return this.ensureConfigured().geoStates; }\n get geoCities() { return this.ensureConfigured().geoCities; }\n\n /** Full block access */\n get geolocationBlock(): GeolocationBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createConversationsBlock,\n type ConversationsBlock,\n type ConversationsBlockConfig,\n} from '@23blocks/block-conversations';\nimport { TRANSPORT, CONVERSATIONS_TRANSPORT, CONVERSATIONS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Conversations block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const message = await this.conversationsService.messages.create({ contextId, content });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class ConversationsService {\n private readonly block: ConversationsBlock | null;\n\n constructor(\n @Optional() @Inject(CONVERSATIONS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(CONVERSATIONS_CONFIG) config: ConversationsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createConversationsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): ConversationsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] ConversationsService is not configured. ' +\n \"Add 'urls.conversations' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get messages() { return this.ensureConfigured().messages; }\n get draftMessages() { return this.ensureConfigured().draftMessages; }\n get groups() { return this.ensureConfigured().groups; }\n get groupInvites() { return this.ensureConfigured().groupInvites; }\n get notifications() { return this.ensureConfigured().notifications; }\n get conversations() { return this.ensureConfigured().conversations; }\n get websocketTokens() { return this.ensureConfigured().websocketTokens; }\n get contexts() { return this.ensureConfigured().contexts; }\n get notificationSettings() { return this.ensureConfigured().notificationSettings; }\n get availabilities() { return this.ensureConfigured().availabilities; }\n get messageFiles() { return this.ensureConfigured().messageFiles; }\n get sources() { return this.ensureConfigured().sources; }\n get users() { return this.ensureConfigured().users; }\n get meetings() { return this.ensureConfigured().meetings; }\n get webNotifications() { return this.ensureConfigured().webNotifications; }\n\n /** Full block access */\n get conversationsBlock(): ConversationsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createFilesBlock,\n type FilesBlock,\n type FilesBlockConfig,\n} from '@23blocks/block-files';\nimport { TRANSPORT, FILES_TRANSPORT, FILES_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Files block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const files = await this.filesService.storageFiles.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class FilesService {\n private readonly block: FilesBlock | null;\n\n constructor(\n @Optional() @Inject(FILES_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(FILES_CONFIG) config: FilesBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createFilesBlock(transport, config) : null;\n }\n\n private ensureConfigured(): FilesBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] FilesService is not configured. ' +\n \"Add 'urls.files' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get storageFiles() { return this.ensureConfigured().storageFiles; }\n get entityFiles() { return this.ensureConfigured().entityFiles; }\n get fileSchemas() { return this.ensureConfigured().fileSchemas; }\n get userFiles() { return this.ensureConfigured().userFiles; }\n get fileCategories() { return this.ensureConfigured().fileCategories; }\n get fileTags() { return this.ensureConfigured().fileTags; }\n get delegations() { return this.ensureConfigured().delegations; }\n get fileAccess() { return this.ensureConfigured().fileAccess; }\n get fileAccessRequests() { return this.ensureConfigured().fileAccessRequests; }\n\n /** Full block access */\n get filesBlock(): FilesBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createFormsBlock,\n type FormsBlock,\n type FormsBlockConfig,\n} from '@23blocks/block-forms';\nimport { TRANSPORT, FORMS_TRANSPORT, FORMS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Forms block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const forms = await this.formsService.forms.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class FormsService {\n private readonly block: FormsBlock | null;\n\n constructor(\n @Optional() @Inject(FORMS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(FORMS_CONFIG) config: FormsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createFormsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): FormsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] FormsService is not configured. ' +\n \"Add 'urls.forms' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get forms() { return this.ensureConfigured().forms; }\n get schemas() { return this.ensureConfigured().schemas; }\n get schemaVersions() { return this.ensureConfigured().schemaVersions; }\n get instances() { return this.ensureConfigured().instances; }\n get sets() { return this.ensureConfigured().sets; }\n get landings() { return this.ensureConfigured().landings; }\n get subscriptions() { return this.ensureConfigured().subscriptions; }\n get appointments() { return this.ensureConfigured().appointments; }\n get surveys() { return this.ensureConfigured().surveys; }\n get referrals() { return this.ensureConfigured().referrals; }\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n get applicationForms() { return this.ensureConfigured().applicationForms; }\n get crmSync() { return this.ensureConfigured().crmSync; }\n\n /** Full block access */\n get formsBlock(): FormsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createAssetsBlock,\n type AssetsBlock,\n type AssetsBlockConfig,\n} from '@23blocks/block-assets';\nimport { TRANSPORT, ASSETS_TRANSPORT, ASSETS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Assets block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const assets = await this.assetsService.assets.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class AssetsService {\n private readonly block: AssetsBlock | null;\n\n constructor(\n @Optional() @Inject(ASSETS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(ASSETS_CONFIG) config: AssetsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createAssetsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): AssetsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] AssetsService is not configured. ' +\n \"Add 'urls.assets' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get assets() { return this.ensureConfigured().assets; }\n get events() { return this.ensureConfigured().events; }\n get audits() { return this.ensureConfigured().audits; }\n get categories() { return this.ensureConfigured().categories; }\n get tags() { return this.ensureConfigured().tags; }\n get vendors() { return this.ensureConfigured().vendors; }\n get warehouses() { return this.ensureConfigured().warehouses; }\n get entities() { return this.ensureConfigured().entities; }\n get operations() { return this.ensureConfigured().operations; }\n get alerts() { return this.ensureConfigured().alerts; }\n get users() { return this.ensureConfigured().users; }\n get images() { return this.ensureConfigured().images; }\n\n /** Full block access */\n get assetsBlock(): AssetsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createCampaignsBlock,\n type CampaignsBlock,\n type CampaignsBlockConfig,\n} from '@23blocks/block-campaigns';\nimport { TRANSPORT, CAMPAIGNS_TRANSPORT, CAMPAIGNS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Campaigns block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const campaigns = await this.campaignsService.campaigns.list({ page: 1, perPage: 10 });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class CampaignsService {\n private readonly block: CampaignsBlock | null;\n\n constructor(\n @Optional() @Inject(CAMPAIGNS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(CAMPAIGNS_CONFIG) config: CampaignsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createCampaignsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): CampaignsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] CampaignsService is not configured. ' +\n \"Add 'urls.campaigns' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get campaigns() { return this.ensureConfigured().campaigns; }\n get campaignMedia() { return this.ensureConfigured().campaignMedia; }\n get landingPages() { return this.ensureConfigured().landingPages; }\n get audiences() { return this.ensureConfigured().audiences; }\n get landingTemplates() { return this.ensureConfigured().landingTemplates; }\n get targets() { return this.ensureConfigured().targets; }\n get results() { return this.ensureConfigured().results; }\n get markets() { return this.ensureConfigured().markets; }\n get locations() { return this.ensureConfigured().locations; }\n get templates() { return this.ensureConfigured().templates; }\n get mediaResults() { return this.ensureConfigured().mediaResults; }\n get media() { return this.ensureConfigured().media; }\n\n /** Full block access */\n get campaignsBlock(): CampaignsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createCompanyBlock,\n type CompanyBlock,\n type CompanyBlockConfig,\n} from '@23blocks/block-company';\nimport { TRANSPORT, COMPANY_TRANSPORT, COMPANY_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Company block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const companies = await this.companyService.companies.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class CompanyService {\n private readonly block: CompanyBlock | null;\n\n constructor(\n @Optional() @Inject(COMPANY_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(COMPANY_CONFIG) config: CompanyBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createCompanyBlock(transport, config) : null;\n }\n\n private ensureConfigured(): CompanyBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] CompanyService is not configured. ' +\n \"Add 'urls.company' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get companies() { return this.ensureConfigured().companies; }\n get departments() { return this.ensureConfigured().departments; }\n get teams() { return this.ensureConfigured().teams; }\n get teamMembers() { return this.ensureConfigured().teamMembers; }\n get quarters() { return this.ensureConfigured().quarters; }\n get positions() { return this.ensureConfigured().positions; }\n get employeeAssignments() { return this.ensureConfigured().employeeAssignments; }\n\n /** Full block access */\n get companyBlock(): CompanyBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createRewardsBlock,\n type RewardsBlock,\n type RewardsBlockConfig,\n} from '@23blocks/block-rewards';\nimport { TRANSPORT, REWARDS_TRANSPORT, REWARDS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Rewards block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const rewards = await this.rewardsService.rewards.list({ status: 'active' });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class RewardsService {\n private readonly block: RewardsBlock | null;\n\n constructor(\n @Optional() @Inject(REWARDS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(REWARDS_CONFIG) config: RewardsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createRewardsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): RewardsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] RewardsService is not configured. ' +\n \"Add 'urls.rewards' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get rewards() { return this.ensureConfigured().rewards; }\n get coupons() { return this.ensureConfigured().coupons; }\n get loyalty() { return this.ensureConfigured().loyalty; }\n get badges() { return this.ensureConfigured().badges; }\n get couponConfigurations() { return this.ensureConfigured().couponConfigurations; }\n get offerCodes() { return this.ensureConfigured().offerCodes; }\n get expirationRules() { return this.ensureConfigured().expirationRules; }\n get customers() { return this.ensureConfigured().customers; }\n get badgeCategories() { return this.ensureConfigured().badgeCategories; }\n get moneyRules() { return this.ensureConfigured().moneyRules; }\n get productRules() { return this.ensureConfigured().productRules; }\n get eventRules() { return this.ensureConfigured().eventRules; }\n\n /** Full block access */\n get rewardsBlock(): RewardsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createSalesBlock,\n type SalesBlock,\n type SalesBlockConfig,\n} from '@23blocks/block-sales';\nimport { TRANSPORT, SALES_TRANSPORT, SALES_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Sales block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const order = await this.salesService.orders.get('uuid');\n * const purchase = await this.salesService.purchases.create({ ... });\n * const subs = await this.salesService.users.listSubscriptions('user-uuid');\n * const session = await this.salesService.stripe.createCheckoutSession({ ... });\n * const payment = await this.salesService.vendorPayments.get('payment-uuid');\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class SalesService {\n private readonly block: SalesBlock | null;\n\n constructor(\n @Optional() @Inject(SALES_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(SALES_CONFIG) config: SalesBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createSalesBlock(transport, config) : null;\n }\n\n private ensureConfigured(): SalesBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] SalesService is not configured. ' +\n \"Add 'urls.sales' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get orders() { return this.ensureConfigured().orders; }\n get orderDetails() { return this.ensureConfigured().orderDetails; }\n get orderTaxes() { return this.ensureConfigured().orderTaxes; }\n get payments() { return this.ensureConfigured().payments; }\n get subscriptions() { return this.ensureConfigured().subscriptions; }\n get subscriptionModels() { return this.ensureConfigured().subscriptionModels; }\n get entities() { return this.ensureConfigured().entities; }\n get users() { return this.ensureConfigured().users; }\n get customers() { return this.ensureConfigured().customers; }\n get flexibleOrders() { return this.ensureConfigured().flexibleOrders; }\n get stripe() { return this.ensureConfigured().stripe; }\n get mercadopago() { return this.ensureConfigured().mercadopago; }\n get vendorPayments() { return this.ensureConfigured().vendorPayments; }\n get purchases() { return this.ensureConfigured().purchases; }\n\n /** Full block access */\n get salesBlock(): SalesBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createWalletBlock,\n type WalletBlock,\n type WalletBlockConfig,\n} from '@23blocks/block-wallet';\nimport { TRANSPORT, WALLET_TRANSPORT, WALLET_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Wallet block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const wallet = await this.walletService.wallets.create({ userUniqueId });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class WalletService {\n private readonly block: WalletBlock | null;\n\n constructor(\n @Optional() @Inject(WALLET_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(WALLET_CONFIG) config: WalletBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createWalletBlock(transport, config) : null;\n }\n\n private ensureConfigured(): WalletBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] WalletService is not configured. ' +\n \"Add 'urls.wallet' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get wallets() { return this.ensureConfigured().wallets; }\n get transactions() { return this.ensureConfigured().transactions; }\n get authorizationCodes() { return this.ensureConfigured().authorizationCodes; }\n get webhooks() { return this.ensureConfigured().webhooks; }\n\n /** Full block access */\n get walletBlock(): WalletBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createJarvisBlock,\n type JarvisBlock,\n type JarvisBlockConfig,\n} from '@23blocks/block-jarvis';\nimport { TRANSPORT, JARVIS_TRANSPORT, JARVIS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Jarvis block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const response = await this.jarvisService.agents.chat(agentId, { message });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class JarvisService {\n private readonly block: JarvisBlock | null;\n\n constructor(\n @Optional() @Inject(JARVIS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(JARVIS_CONFIG) config: JarvisBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createJarvisBlock(transport, config) : null;\n }\n\n private ensureConfigured(): JarvisBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] JarvisService is not configured. ' +\n \"Add 'urls.jarvis' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get agents() { return this.ensureConfigured().agents; }\n get prompts() { return this.ensureConfigured().prompts; }\n get workflows() { return this.ensureConfigured().workflows; }\n get executions() { return this.ensureConfigured().executions; }\n get conversations() { return this.ensureConfigured().conversations; }\n get aiModels() { return this.ensureConfigured().aiModels; }\n get entities() { return this.ensureConfigured().entities; }\n get clusters() { return this.ensureConfigured().clusters; }\n get users() { return this.ensureConfigured().users; }\n get workflowParticipants() { return this.ensureConfigured().workflowParticipants; }\n get workflowSteps() { return this.ensureConfigured().workflowSteps; }\n get workflowInstances() { return this.ensureConfigured().workflowInstances; }\n get agentRuntime() { return this.ensureConfigured().agentRuntime; }\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n get marvinChat() { return this.ensureConfigured().marvinChat; }\n get promptComments() { return this.ensureConfigured().promptComments; }\n get executionComments() { return this.ensureConfigured().executionComments; }\n\n /** Full block access */\n get jarvisBlock(): JarvisBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createOnboardingBlock,\n type OnboardingBlock,\n type OnboardingBlockConfig,\n} from '@23blocks/block-onboarding';\nimport { TRANSPORT, ONBOARDING_TRANSPORT, ONBOARDING_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Onboarding block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const onboarding = await this.onboardingService.onboardings.create({ code: 'user-onboarding', name: 'User Onboarding' });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class OnboardingService {\n private readonly block: OnboardingBlock | null;\n\n constructor(\n @Optional() @Inject(ONBOARDING_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(ONBOARDING_CONFIG) config: OnboardingBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createOnboardingBlock(transport, config) : null;\n }\n\n private ensureConfigured(): OnboardingBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] OnboardingService is not configured. ' +\n \"Add 'urls.onboarding' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get onboardings() { return this.ensureConfigured().onboardings; }\n get flows() { return this.ensureConfigured().flows; }\n get userJourneys() { return this.ensureConfigured().userJourneys; }\n get userIdentities() { return this.ensureConfigured().userIdentities; }\n get onboard() { return this.ensureConfigured().onboard; }\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n get remarketing() { return this.ensureConfigured().remarketing; }\n\n /** Full block access */\n get onboardingBlock(): OnboardingBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createUniversityBlock,\n type UniversityBlock,\n type UniversityBlockConfig,\n} from '@23blocks/block-university';\nimport { TRANSPORT, UNIVERSITY_TRANSPORT, UNIVERSITY_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the University block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const courses = await this.universityService.courses.list({ page: 1, perPage: 10 });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class UniversityService {\n private readonly block: UniversityBlock | null;\n\n constructor(\n @Optional() @Inject(UNIVERSITY_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(UNIVERSITY_CONFIG) config: UniversityBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createUniversityBlock(transport, config) : null;\n }\n\n private ensureConfigured(): UniversityBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] UniversityService is not configured. ' +\n \"Add 'urls.university' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get courses() { return this.ensureConfigured().courses; }\n get lessons() { return this.ensureConfigured().lessons; }\n get enrollments() { return this.ensureConfigured().enrollments; }\n get assignments() { return this.ensureConfigured().assignments; }\n get submissions() { return this.ensureConfigured().submissions; }\n get subjects() { return this.ensureConfigured().subjects; }\n get teachers() { return this.ensureConfigured().teachers; }\n get students() { return this.ensureConfigured().students; }\n get courseGroups() { return this.ensureConfigured().courseGroups; }\n get coachingSessions() { return this.ensureConfigured().coachingSessions; }\n get tests() { return this.ensureConfigured().tests; }\n get registrationTokens() { return this.ensureConfigured().registrationTokens; }\n get placements() { return this.ensureConfigured().placements; }\n get calendars() { return this.ensureConfigured().calendars; }\n get matches() { return this.ensureConfigured().matches; }\n get attendance() { return this.ensureConfigured().attendance; }\n get notes() { return this.ensureConfigured().notes; }\n\n /** Full block access */\n get universityBlock(): UniversityBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createRagBlock,\n type RagBlock,\n type RagBlockConfig,\n} from '@23blocks/block-rag';\nimport { TRANSPORT, RAG_TRANSPORT, RAG_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the RAG block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * // Promise-based (recommended for modern Angular):\n * const result = await this.ragService.scope.query('entities', { query: 'revenue' });\n *\n * // Observable-based:\n * from(this.ragService.scope.query('entities', { query: 'revenue' })).subscribe(...)\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class RagService {\n private readonly block: RagBlock | null;\n\n constructor(\n @Optional() @Inject(RAG_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(RAG_CONFIG) config: RagBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createRagBlock(transport, config) : null;\n }\n\n private ensureConfigured(): RagBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] RagService is not configured. ' +\n \"Add 'urls.rag' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get scope() { return this.ensureConfigured().scope; }\n get files() { return this.ensureConfigured().files; }\n get jobs() { return this.ensureConfigured().jobs; }\n get images() { return this.ensureConfigured().images; }\n get products() { return this.ensureConfigured().products; }\n\n /** Full block access */\n get ragBlock(): RagBlock { return this.ensureConfigured(); }\n}\n","// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Main API (Recommended) β blocks expose health(), CreateOrderRequest supports flat + items[]\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\nexport {\n // Main exports\n provideBlocks23,\n getBlocks23Providers,\n type ProviderConfig,\n type ServiceUrls,\n type AuthMode,\n type StorageType,\n type TokenManagerService,\n TOKEN_MANAGER,\n PROVIDER_CONFIG,\n\n // Backward compatibility (deprecated)\n type Simple23BlocksConfig,\n SIMPLE_CONFIG,\n} from './simple-providers';\n\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Advanced API (Custom transport)\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Tokens\nexport {\n // Legacy shared transport (deprecated)\n TRANSPORT,\n // Per-service transport tokens\n AUTHENTICATION_TRANSPORT,\n SEARCH_TRANSPORT,\n PRODUCTS_TRANSPORT,\n CRM_TRANSPORT,\n CONTENT_TRANSPORT,\n GEOLOCATION_TRANSPORT,\n CONVERSATIONS_TRANSPORT,\n FILES_TRANSPORT,\n FORMS_TRANSPORT,\n ASSETS_TRANSPORT,\n CAMPAIGNS_TRANSPORT,\n COMPANY_TRANSPORT,\n REWARDS_TRANSPORT,\n SALES_TRANSPORT,\n WALLET_TRANSPORT,\n JARVIS_TRANSPORT,\n ONBOARDING_TRANSPORT,\n UNIVERSITY_TRANSPORT,\n RAG_TRANSPORT,\n // Config tokens\n AUTHENTICATION_CONFIG,\n SEARCH_CONFIG,\n PRODUCTS_CONFIG,\n CRM_CONFIG,\n CONTENT_CONFIG,\n GEOLOCATION_CONFIG,\n CONVERSATIONS_CONFIG,\n FILES_CONFIG,\n FORMS_CONFIG,\n ASSETS_CONFIG,\n CAMPAIGNS_CONFIG,\n COMPANY_CONFIG,\n REWARDS_CONFIG,\n SALES_CONFIG,\n WALLET_CONFIG,\n JARVIS_CONFIG,\n ONBOARDING_CONFIG,\n UNIVERSITY_CONFIG,\n RAG_CONFIG,\n} from './tokens';\n\n// Provider functions (advanced - requires custom transport)\nexport { provide23Blocks, get23BlocksProviders, type Provide23BlocksConfig } from './providers';\n\n// Services\nexport { AuthenticationService } from './authentication/index';\nexport { SearchService } from './search/index';\nexport { ProductsService } from './products/index';\nexport { CrmService } from './crm/index';\nexport { ContentService } from './content/index';\nexport { GeolocationService } from './geolocation/index';\nexport { ConversationsService } from './conversations/index';\nexport { FilesService } from './files/index';\nexport { FormsService } from './forms/index';\nexport { AssetsService } from './assets/index';\nexport { CampaignsService } from './campaigns/index';\nexport { CompanyService } from './company/index';\nexport { RewardsService } from './rewards/index';\nexport { SalesService } from './sales/index';\nexport { WalletService } from './wallet/index';\nexport { JarvisService } from './jarvis/index';\nexport { OnboardingService } from './onboarding/index';\nexport { UniversityService } from './university/index';\nexport { RagService } from './rag/index';\n","// Angular bindings β search, crm, files, onboarding aligned with API strong params\nexport * from './lib/index';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"23blocks-angular.mjs","sources":["../../src/lib/tokens.ts","../../src/lib/simple-providers.ts","../../src/lib/providers.ts","../../src/lib/authentication/authentication.service.ts","../../src/lib/search/search.service.ts","../../src/lib/products/products.service.ts","../../src/lib/crm/crm.service.ts","../../src/lib/content/content.service.ts","../../src/lib/geolocation/geolocation.service.ts","../../src/lib/conversations/conversations.service.ts","../../src/lib/files/files.service.ts","../../src/lib/forms/forms.service.ts","../../src/lib/assets/assets.service.ts","../../src/lib/campaigns/campaigns.service.ts","../../src/lib/company/company.service.ts","../../src/lib/rewards/rewards.service.ts","../../src/lib/sales/sales.service.ts","../../src/lib/wallet/wallet.service.ts","../../src/lib/jarvis/jarvis.service.ts","../../src/lib/onboarding/onboarding.service.ts","../../src/lib/university/university.service.ts","../../src/lib/rag/rag.service.ts","../../src/lib/index.ts","../../src/index.ts","../../src/23blocks-angular.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport type { AuthenticationBlockConfig } from '@23blocks/block-authentication';\nimport type { SearchBlockConfig } from '@23blocks/block-search';\nimport type { GeolocationBlockConfig } from '@23blocks/block-geolocation';\nimport type { ContentBlockConfig } from '@23blocks/block-content';\nimport type { CrmBlockConfig } from '@23blocks/block-crm';\nimport type { ProductsBlockConfig } from '@23blocks/block-products';\nimport type { ConversationsBlockConfig } from '@23blocks/block-conversations';\nimport type { FilesBlockConfig } from '@23blocks/block-files';\nimport type { AssetsBlockConfig } from '@23blocks/block-assets';\nimport type { FormsBlockConfig } from '@23blocks/block-forms';\nimport type { SalesBlockConfig } from '@23blocks/block-sales';\nimport type { CampaignsBlockConfig } from '@23blocks/block-campaigns';\nimport type { CompanyBlockConfig } from '@23blocks/block-company';\nimport type { RewardsBlockConfig } from '@23blocks/block-rewards';\nimport type { JarvisBlockConfig } from '@23blocks/block-jarvis';\nimport type { OnboardingBlockConfig } from '@23blocks/block-onboarding';\nimport type { UniversityBlockConfig } from '@23blocks/block-university';\nimport type { WalletBlockConfig } from '@23blocks/block-wallet';\nimport type { RagBlockConfig } from '@23blocks/block-rag';\n\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Transport Tokens (per-service)\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n/**\n * @deprecated Use per-service transport tokens (AUTHENTICATION_TRANSPORT, etc.)\n * Shared transport token - only for backward compatibility with advanced API\n */\nexport const TRANSPORT = new InjectionToken<Transport>('23blocks.transport');\n\n/** Transport for Authentication service */\nexport const AUTHENTICATION_TRANSPORT = new InjectionToken<Transport | null>('23blocks.authentication.transport');\n\n/** Transport for Search service */\nexport const SEARCH_TRANSPORT = new InjectionToken<Transport | null>('23blocks.search.transport');\n\n/** Transport for Products service */\nexport const PRODUCTS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.products.transport');\n\n/** Transport for CRM service */\nexport const CRM_TRANSPORT = new InjectionToken<Transport | null>('23blocks.crm.transport');\n\n/** Transport for Content service */\nexport const CONTENT_TRANSPORT = new InjectionToken<Transport | null>('23blocks.content.transport');\n\n/** Transport for Geolocation service */\nexport const GEOLOCATION_TRANSPORT = new InjectionToken<Transport | null>('23blocks.geolocation.transport');\n\n/** Transport for Conversations service */\nexport const CONVERSATIONS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.conversations.transport');\n\n/** Transport for Files service */\nexport const FILES_TRANSPORT = new InjectionToken<Transport | null>('23blocks.files.transport');\n\n/** Transport for Forms service */\nexport const FORMS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.forms.transport');\n\n/** Transport for Assets service */\nexport const ASSETS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.assets.transport');\n\n/** Transport for Campaigns service */\nexport const CAMPAIGNS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.campaigns.transport');\n\n/** Transport for Company service */\nexport const COMPANY_TRANSPORT = new InjectionToken<Transport | null>('23blocks.company.transport');\n\n/** Transport for Rewards service */\nexport const REWARDS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.rewards.transport');\n\n/** Transport for Sales service */\nexport const SALES_TRANSPORT = new InjectionToken<Transport | null>('23blocks.sales.transport');\n\n/** Transport for Wallet service */\nexport const WALLET_TRANSPORT = new InjectionToken<Transport | null>('23blocks.wallet.transport');\n\n/** Transport for Jarvis service */\nexport const JARVIS_TRANSPORT = new InjectionToken<Transport | null>('23blocks.jarvis.transport');\n\n/** Transport for Onboarding service */\nexport const ONBOARDING_TRANSPORT = new InjectionToken<Transport | null>('23blocks.onboarding.transport');\n\n/** Transport for University service */\nexport const UNIVERSITY_TRANSPORT = new InjectionToken<Transport | null>('23blocks.university.transport');\n\n/** Transport for RAG service */\nexport const RAG_TRANSPORT = new InjectionToken<Transport | null>('23blocks.rag.transport');\n\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Config Tokens (per-service)\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n/**\n * Injection token for Authentication block configuration\n */\nexport const AUTHENTICATION_CONFIG = new InjectionToken<AuthenticationBlockConfig>(\n '23blocks.authentication.config'\n);\n\n/**\n * Injection token for Search block configuration\n */\nexport const SEARCH_CONFIG = new InjectionToken<SearchBlockConfig>(\n '23blocks.search.config'\n);\n\n/**\n * Injection token for Geolocation block configuration\n */\nexport const GEOLOCATION_CONFIG = new InjectionToken<GeolocationBlockConfig>(\n '23blocks.geolocation.config'\n);\n\n/**\n * Injection token for Content block configuration\n */\nexport const CONTENT_CONFIG = new InjectionToken<ContentBlockConfig>(\n '23blocks.content.config'\n);\n\n/**\n * Injection token for CRM block configuration\n */\nexport const CRM_CONFIG = new InjectionToken<CrmBlockConfig>(\n '23blocks.crm.config'\n);\n\n/**\n * Injection token for Products block configuration\n */\nexport const PRODUCTS_CONFIG = new InjectionToken<ProductsBlockConfig>(\n '23blocks.products.config'\n);\n\n/**\n * Injection token for Conversations block configuration\n */\nexport const CONVERSATIONS_CONFIG = new InjectionToken<ConversationsBlockConfig>(\n '23blocks.conversations.config'\n);\n\n/**\n * Injection token for Files block configuration\n */\nexport const FILES_CONFIG = new InjectionToken<FilesBlockConfig>(\n '23blocks.files.config'\n);\n\n/**\n * Injection token for Assets block configuration\n */\nexport const ASSETS_CONFIG = new InjectionToken<AssetsBlockConfig>(\n '23blocks.assets.config'\n);\n\n/**\n * Injection token for Forms block configuration\n */\nexport const FORMS_CONFIG = new InjectionToken<FormsBlockConfig>(\n '23blocks.forms.config'\n);\n\n/**\n * Injection token for Sales block configuration\n */\nexport const SALES_CONFIG = new InjectionToken<SalesBlockConfig>(\n '23blocks.sales.config'\n);\n\n/**\n * Injection token for Campaigns block configuration\n */\nexport const CAMPAIGNS_CONFIG = new InjectionToken<CampaignsBlockConfig>(\n '23blocks.campaigns.config'\n);\n\n/**\n * Injection token for Company block configuration\n */\nexport const COMPANY_CONFIG = new InjectionToken<CompanyBlockConfig>(\n '23blocks.company.config'\n);\n\n/**\n * Injection token for Rewards block configuration\n */\nexport const REWARDS_CONFIG = new InjectionToken<RewardsBlockConfig>(\n '23blocks.rewards.config'\n);\n\n/**\n * Injection token for Jarvis block configuration\n */\nexport const JARVIS_CONFIG = new InjectionToken<JarvisBlockConfig>(\n '23blocks.jarvis.config'\n);\n\n/**\n * Injection token for Onboarding block configuration\n */\nexport const ONBOARDING_CONFIG = new InjectionToken<OnboardingBlockConfig>(\n '23blocks.onboarding.config'\n);\n\n/**\n * Injection token for University block configuration\n */\nexport const UNIVERSITY_CONFIG = new InjectionToken<UniversityBlockConfig>(\n '23blocks.university.config'\n);\n\n/**\n * Injection token for Wallet block configuration\n */\nexport const WALLET_CONFIG = new InjectionToken<WalletBlockConfig>(\n '23blocks.wallet.config'\n);\n\n/**\n * Injection token for RAG block configuration\n */\nexport const RAG_CONFIG = new InjectionToken<RagBlockConfig>(\n '23blocks.rag.config'\n);\n","import type { Provider, EnvironmentProviders } from '@angular/core';\nimport { InjectionToken, makeEnvironmentProviders } from '@angular/core';\nimport { createHttpTransport } from '@23blocks/transport-http';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n TRANSPORT,\n // Per-service transport tokens\n AUTHENTICATION_TRANSPORT,\n SEARCH_TRANSPORT,\n PRODUCTS_TRANSPORT,\n CRM_TRANSPORT,\n CONTENT_TRANSPORT,\n GEOLOCATION_TRANSPORT,\n CONVERSATIONS_TRANSPORT,\n FILES_TRANSPORT,\n FORMS_TRANSPORT,\n ASSETS_TRANSPORT,\n CAMPAIGNS_TRANSPORT,\n COMPANY_TRANSPORT,\n REWARDS_TRANSPORT,\n SALES_TRANSPORT,\n WALLET_TRANSPORT,\n JARVIS_TRANSPORT,\n ONBOARDING_TRANSPORT,\n UNIVERSITY_TRANSPORT,\n RAG_TRANSPORT,\n // Config tokens\n AUTHENTICATION_CONFIG,\n SEARCH_CONFIG,\n PRODUCTS_CONFIG,\n CRM_CONFIG,\n CONTENT_CONFIG,\n GEOLOCATION_CONFIG,\n CONVERSATIONS_CONFIG,\n FILES_CONFIG,\n FORMS_CONFIG,\n ASSETS_CONFIG,\n CAMPAIGNS_CONFIG,\n COMPANY_CONFIG,\n REWARDS_CONFIG,\n SALES_CONFIG,\n WALLET_CONFIG,\n JARVIS_CONFIG,\n ONBOARDING_CONFIG,\n UNIVERSITY_CONFIG,\n RAG_CONFIG,\n} from './tokens';\n\n/**\n * Authentication mode\n */\nexport type AuthMode = 'token' | 'cookie';\n\n/**\n * Storage type for token mode\n */\nexport type StorageType = 'localStorage' | 'sessionStorage' | 'memory';\n\n/**\n * Service URL configuration - each microservice has its own URL.\n * All URLs are optional - only configure the services you need.\n */\nexport interface ServiceUrls {\n /** Authentication service URL */\n authentication?: string;\n /** Search service URL */\n search?: string;\n /** Products service URL */\n products?: string;\n /** CRM service URL */\n crm?: string;\n /** Content service URL */\n content?: string;\n /** Geolocation service URL */\n geolocation?: string;\n /** Conversations service URL */\n conversations?: string;\n /** Files service URL */\n files?: string;\n /** Forms service URL */\n forms?: string;\n /** Assets service URL */\n assets?: string;\n /** Campaigns service URL */\n campaigns?: string;\n /** Company service URL */\n company?: string;\n /** Rewards service URL */\n rewards?: string;\n /** Sales service URL */\n sales?: string;\n /** Wallet service URL */\n wallet?: string;\n /** Jarvis (AI) service URL */\n jarvis?: string;\n /** Onboarding service URL */\n onboarding?: string;\n /** University (LMS) service URL */\n university?: string;\n /** RAG (Retrieval-Augmented Generation) service URL */\n rag?: string;\n}\n\n/**\n * Configuration for providing 23blocks services\n */\nexport interface ProviderConfig {\n /**\n * Service URLs for each microservice.\n * Only configure the services you need - accessing a service without\n * a configured URL will throw an error.\n *\n * @example\n * ```typescript\n * provideBlocks23({\n * apiKey: 'your-api-key',\n * urls: {\n * authentication: 'https://gateway.23blocks.com',\n * crm: 'https://crm.23blocks.com',\n * products: 'https://products.23blocks.com',\n * },\n * })\n * ```\n */\n urls: ServiceUrls;\n\n /**\n * API Key for authenticating with 23blocks services\n */\n apiKey: string;\n\n /**\n * Tenant ID (optional, for multi-tenant setups)\n */\n tenantId?: string;\n\n /**\n * Authentication mode\n * - 'token' (default): SDK stores tokens in localStorage/sessionStorage/memory\n * - 'cookie': Backend manages auth via httpOnly cookies\n */\n authMode?: AuthMode;\n\n /**\n * Storage type for token mode\n * @default 'localStorage'\n */\n storage?: StorageType;\n\n /**\n * Additional headers to include with every request\n */\n headers?: Record<string, string>;\n\n /**\n * Request timeout in milliseconds\n * @default 30000\n */\n timeout?: number;\n}\n\n/**\n * Injection token for the token manager (internal use)\n */\nexport const TOKEN_MANAGER = new InjectionToken<TokenManagerService>('23blocks.token-manager');\n\n/**\n * Injection token for provider config\n */\nexport const PROVIDER_CONFIG = new InjectionToken<ProviderConfig>('23blocks.provider-config');\n\n/** @deprecated Use PROVIDER_CONFIG instead */\nexport const SIMPLE_CONFIG = PROVIDER_CONFIG;\n\n/**\n * Token manager interface\n */\nexport interface TokenManagerService {\n getAccessToken(): string | null;\n getRefreshToken(): string | null;\n setTokens(accessToken: string, refreshToken?: string): void;\n clearTokens(): void;\n /**\n * Subscribe to storage changes from other tabs/windows.\n * Returns an unsubscribe function.\n */\n onStorageChange(callback: () => void): () => void;\n}\n\n/**\n * Generate storage key scoped to API key and tenant\n */\nfunction getStorageKey(type: 'access' | 'refresh', apiKey: string, tenantId?: string): string {\n const scope = tenantId ? `${apiKey}_${tenantId}` : apiKey;\n return `23blocks_${scope}_${type}_token`;\n}\n\n/**\n * In-memory storage for SSR\n */\nclass MemoryStorage {\n private data = new Map<string, string>();\n getItem(key: string): string | null {\n return this.data.get(key) ?? null;\n }\n setItem(key: string, value: string): void {\n this.data.set(key, value);\n }\n removeItem(key: string): void {\n this.data.delete(key);\n }\n}\n\n/**\n * Create a token manager with scoped storage keys and cross-tab sync\n */\nfunction createTokenManager(\n apiKey: string,\n storageType: StorageType,\n tenantId?: string\n): TokenManagerService {\n const isBrowser = typeof window !== 'undefined' && typeof window.localStorage !== 'undefined';\n\n const accessTokenKey = getStorageKey('access', apiKey, tenantId);\n const refreshTokenKey = getStorageKey('refresh', apiKey, tenantId);\n\n let storage: Storage | MemoryStorage;\n if (!isBrowser) {\n storage = new MemoryStorage();\n } else {\n switch (storageType) {\n case 'sessionStorage':\n storage = window.sessionStorage;\n break;\n case 'memory':\n storage = new MemoryStorage();\n break;\n default:\n storage = window.localStorage;\n }\n }\n\n return {\n getAccessToken(): string | null {\n try {\n return storage.getItem(accessTokenKey);\n } catch {\n return null;\n }\n },\n getRefreshToken(): string | null {\n try {\n return storage.getItem(refreshTokenKey);\n } catch {\n return null;\n }\n },\n setTokens(accessToken: string, refreshToken?: string): void {\n try {\n storage.setItem(accessTokenKey, accessToken);\n if (refreshToken) {\n storage.setItem(refreshTokenKey, refreshToken);\n }\n } catch {\n console.warn('[23blocks] Unable to store tokens');\n }\n },\n clearTokens(): void {\n try {\n storage.removeItem(accessTokenKey);\n storage.removeItem(refreshTokenKey);\n } catch {\n // Silently fail\n }\n },\n onStorageChange(callback: () => void): () => void {\n // Only works in browser with localStorage/sessionStorage\n if (!isBrowser || storageType === 'memory') {\n // Return no-op unsubscribe for SSR/memory storage\n return () => {};\n }\n\n const handler = (event: StorageEvent) => {\n // Only trigger if our keys changed\n if (event.key === accessTokenKey || event.key === refreshTokenKey) {\n callback();\n }\n };\n\n window.addEventListener('storage', handler);\n\n // Return unsubscribe function\n return () => {\n window.removeEventListener('storage', handler);\n };\n },\n };\n}\n\n/**\n * Create transport with automatic token handling for a specific URL\n */\nfunction createTransportWithAuth(\n baseUrl: string,\n config: ProviderConfig,\n tokenManager: TokenManagerService\n): Transport {\n return createHttpTransport({\n baseUrl,\n timeout: config.timeout,\n credentials: config.authMode === 'cookie' ? 'include' : undefined,\n headers: () => {\n const headers: Record<string, string> = {\n ...config.headers,\n 'x-api-key': config.apiKey,\n };\n\n if (config.tenantId) {\n headers['tenant-id'] = config.tenantId;\n }\n\n // In token mode, add Authorization header if we have a token\n if (config.authMode !== 'cookie') {\n const token = tokenManager.getAccessToken();\n if (token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n }\n\n return headers;\n },\n });\n}\n\n/**\n * Provide 23blocks services with simplified configuration.\n *\n * This is the recommended way to set up 23blocks in new Angular applications.\n * It automatically handles token storage and authentication headers.\n *\n * Services are only available if their URL is configured. Accessing a service\n * without a configured URL will throw an error.\n *\n * @example Basic usage with multiple services\n * ```typescript\n * // app.config.ts\n * import { ApplicationConfig } from '@angular/core';\n * import { provideBlocks23 } from '@23blocks/angular';\n *\n * export const appConfig: ApplicationConfig = {\n * providers: [\n * provideBlocks23({\n * apiKey: 'your-api-key',\n * urls: {\n * authentication: 'https://gateway.23blocks.com',\n * crm: 'https://crm.23blocks.com',\n * products: 'https://products.23blocks.com',\n * },\n * }),\n * ],\n * };\n * ```\n *\n * @example Cookie mode (recommended for security)\n * ```typescript\n * export const appConfig: ApplicationConfig = {\n * providers: [\n * provideBlocks23({\n * apiKey: 'your-api-key',\n * authMode: 'cookie',\n * urls: {\n * authentication: 'https://gateway.23blocks.com',\n * crm: 'https://crm.23blocks.com',\n * },\n * }),\n * ],\n * };\n * ```\n */\nexport function provideBlocks23(config: ProviderConfig): EnvironmentProviders {\n // Block config for all services\n const blockConfig = { apiKey: config.apiKey, tenantId: config.tenantId };\n\n // Helper to create transport provider for a service URL\n const createTransportProvider = (\n token: InjectionToken<Transport | null>,\n url: string | undefined\n ): Provider => ({\n provide: token,\n useFactory: (tokenManager: TokenManagerService) => {\n if (!url) return null;\n return createTransportWithAuth(url, config, tokenManager);\n },\n deps: [TOKEN_MANAGER],\n });\n\n const providers: Provider[] = [\n // Store config for injection\n { provide: PROVIDER_CONFIG, useValue: config },\n\n // Token manager factory - creates singleton within the injector\n {\n provide: TOKEN_MANAGER,\n useFactory: () => {\n const storage = config.storage ?? 'localStorage';\n return createTokenManager(config.apiKey, storage, config.tenantId);\n },\n },\n\n // Per-service transport factories (null if URL not configured)\n createTransportProvider(AUTHENTICATION_TRANSPORT, config.urls.authentication),\n createTransportProvider(SEARCH_TRANSPORT, config.urls.search),\n createTransportProvider(PRODUCTS_TRANSPORT, config.urls.products),\n createTransportProvider(CRM_TRANSPORT, config.urls.crm),\n createTransportProvider(CONTENT_TRANSPORT, config.urls.content),\n createTransportProvider(GEOLOCATION_TRANSPORT, config.urls.geolocation),\n createTransportProvider(CONVERSATIONS_TRANSPORT, config.urls.conversations),\n createTransportProvider(FILES_TRANSPORT, config.urls.files),\n createTransportProvider(FORMS_TRANSPORT, config.urls.forms),\n createTransportProvider(ASSETS_TRANSPORT, config.urls.assets),\n createTransportProvider(CAMPAIGNS_TRANSPORT, config.urls.campaigns),\n createTransportProvider(COMPANY_TRANSPORT, config.urls.company),\n createTransportProvider(REWARDS_TRANSPORT, config.urls.rewards),\n createTransportProvider(SALES_TRANSPORT, config.urls.sales),\n createTransportProvider(WALLET_TRANSPORT, config.urls.wallet),\n createTransportProvider(JARVIS_TRANSPORT, config.urls.jarvis),\n createTransportProvider(ONBOARDING_TRANSPORT, config.urls.onboarding),\n createTransportProvider(UNIVERSITY_TRANSPORT, config.urls.university),\n createTransportProvider(RAG_TRANSPORT, config.urls.rag),\n\n // Backward compatibility: provide TRANSPORT token using auth URL if available\n // (for advanced API users who still inject TRANSPORT directly)\n {\n provide: TRANSPORT,\n useFactory: (tokenManager: TokenManagerService) => {\n // Use auth URL if available, otherwise create a dummy transport that throws\n const url = config.urls.authentication;\n if (url) {\n return createTransportWithAuth(url, config, tokenManager);\n }\n // Return a transport that throws helpful errors\n return {\n request: () => {\n throw new Error(\n '[23blocks] TRANSPORT is not configured. ' +\n 'Use per-service transport tokens or configure urls.authentication.'\n );\n },\n };\n },\n deps: [TOKEN_MANAGER],\n },\n\n // Block configs\n { provide: AUTHENTICATION_CONFIG, useValue: blockConfig },\n { provide: SEARCH_CONFIG, useValue: blockConfig },\n { provide: PRODUCTS_CONFIG, useValue: blockConfig },\n { provide: CRM_CONFIG, useValue: blockConfig },\n { provide: CONTENT_CONFIG, useValue: blockConfig },\n { provide: GEOLOCATION_CONFIG, useValue: blockConfig },\n { provide: CONVERSATIONS_CONFIG, useValue: blockConfig },\n { provide: FILES_CONFIG, useValue: blockConfig },\n { provide: FORMS_CONFIG, useValue: blockConfig },\n { provide: ASSETS_CONFIG, useValue: blockConfig },\n { provide: CAMPAIGNS_CONFIG, useValue: blockConfig },\n { provide: COMPANY_CONFIG, useValue: blockConfig },\n { provide: REWARDS_CONFIG, useValue: blockConfig },\n { provide: SALES_CONFIG, useValue: blockConfig },\n { provide: WALLET_CONFIG, useValue: blockConfig },\n { provide: JARVIS_CONFIG, useValue: blockConfig },\n { provide: ONBOARDING_CONFIG, useValue: blockConfig },\n { provide: UNIVERSITY_CONFIG, useValue: blockConfig },\n { provide: RAG_CONFIG, useValue: blockConfig },\n ];\n\n return makeEnvironmentProviders(providers);\n}\n\n/**\n * Get providers array for NgModule-based applications with simplified config.\n *\n * Services are only available if their URL is configured. Accessing a service\n * without a configured URL will throw an error.\n *\n * @example\n * ```typescript\n * // app.module.ts\n * import { NgModule } from '@angular/core';\n * import { getBlocks23Providers } from '@23blocks/angular';\n *\n * @NgModule({\n * providers: [\n * ...getBlocks23Providers({\n * apiKey: 'your-api-key',\n * urls: {\n * authentication: 'https://gateway.23blocks.com',\n * crm: 'https://crm.23blocks.com',\n * },\n * }),\n * ],\n * })\n * export class AppModule {}\n * ```\n */\nexport function getBlocks23Providers(config: ProviderConfig): Provider[] {\n // Block config for all services\n const blockConfig = { apiKey: config.apiKey, tenantId: config.tenantId };\n\n // Helper to create transport provider for a service URL\n const createTransportProvider = (\n token: InjectionToken<Transport | null>,\n url: string | undefined\n ): Provider => ({\n provide: token,\n useFactory: (tokenManager: TokenManagerService) => {\n if (!url) return null;\n return createTransportWithAuth(url, config, tokenManager);\n },\n deps: [TOKEN_MANAGER],\n });\n\n return [\n // Store config for injection\n { provide: PROVIDER_CONFIG, useValue: config },\n\n // Token manager factory - creates singleton within the injector\n {\n provide: TOKEN_MANAGER,\n useFactory: () => {\n const storage = config.storage ?? 'localStorage';\n return createTokenManager(config.apiKey, storage, config.tenantId);\n },\n },\n\n // Per-service transport factories (null if URL not configured)\n createTransportProvider(AUTHENTICATION_TRANSPORT, config.urls.authentication),\n createTransportProvider(SEARCH_TRANSPORT, config.urls.search),\n createTransportProvider(PRODUCTS_TRANSPORT, config.urls.products),\n createTransportProvider(CRM_TRANSPORT, config.urls.crm),\n createTransportProvider(CONTENT_TRANSPORT, config.urls.content),\n createTransportProvider(GEOLOCATION_TRANSPORT, config.urls.geolocation),\n createTransportProvider(CONVERSATIONS_TRANSPORT, config.urls.conversations),\n createTransportProvider(FILES_TRANSPORT, config.urls.files),\n createTransportProvider(FORMS_TRANSPORT, config.urls.forms),\n createTransportProvider(ASSETS_TRANSPORT, config.urls.assets),\n createTransportProvider(CAMPAIGNS_TRANSPORT, config.urls.campaigns),\n createTransportProvider(COMPANY_TRANSPORT, config.urls.company),\n createTransportProvider(REWARDS_TRANSPORT, config.urls.rewards),\n createTransportProvider(SALES_TRANSPORT, config.urls.sales),\n createTransportProvider(WALLET_TRANSPORT, config.urls.wallet),\n createTransportProvider(JARVIS_TRANSPORT, config.urls.jarvis),\n createTransportProvider(ONBOARDING_TRANSPORT, config.urls.onboarding),\n createTransportProvider(UNIVERSITY_TRANSPORT, config.urls.university),\n createTransportProvider(RAG_TRANSPORT, config.urls.rag),\n\n // Backward compatibility: provide TRANSPORT token using auth URL if available\n {\n provide: TRANSPORT,\n useFactory: (tokenManager: TokenManagerService) => {\n const url = config.urls.authentication;\n if (url) {\n return createTransportWithAuth(url, config, tokenManager);\n }\n return {\n request: () => {\n throw new Error(\n '[23blocks] TRANSPORT is not configured. ' +\n 'Use per-service transport tokens or configure urls.authentication.'\n );\n },\n };\n },\n deps: [TOKEN_MANAGER],\n },\n\n // Block configs\n { provide: AUTHENTICATION_CONFIG, useValue: blockConfig },\n { provide: SEARCH_CONFIG, useValue: blockConfig },\n { provide: PRODUCTS_CONFIG, useValue: blockConfig },\n { provide: CRM_CONFIG, useValue: blockConfig },\n { provide: CONTENT_CONFIG, useValue: blockConfig },\n { provide: GEOLOCATION_CONFIG, useValue: blockConfig },\n { provide: CONVERSATIONS_CONFIG, useValue: blockConfig },\n { provide: FILES_CONFIG, useValue: blockConfig },\n { provide: FORMS_CONFIG, useValue: blockConfig },\n { provide: ASSETS_CONFIG, useValue: blockConfig },\n { provide: CAMPAIGNS_CONFIG, useValue: blockConfig },\n { provide: COMPANY_CONFIG, useValue: blockConfig },\n { provide: REWARDS_CONFIG, useValue: blockConfig },\n { provide: SALES_CONFIG, useValue: blockConfig },\n { provide: WALLET_CONFIG, useValue: blockConfig },\n { provide: JARVIS_CONFIG, useValue: blockConfig },\n { provide: ONBOARDING_CONFIG, useValue: blockConfig },\n { provide: UNIVERSITY_CONFIG, useValue: blockConfig },\n { provide: RAG_CONFIG, useValue: blockConfig },\n ];\n}\n\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Backward Compatibility Aliases (deprecated)\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n/** @deprecated Use `ProviderConfig` instead */\nexport type Simple23BlocksConfig = ProviderConfig;\n","import type { Provider, EnvironmentProviders } from '@angular/core';\nimport { makeEnvironmentProviders } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport type { AuthenticationBlockConfig } from '@23blocks/block-authentication';\nimport type { SearchBlockConfig } from '@23blocks/block-search';\nimport type { ProductsBlockConfig } from '@23blocks/block-products';\nimport type { CrmBlockConfig } from '@23blocks/block-crm';\nimport type { ContentBlockConfig } from '@23blocks/block-content';\nimport type { GeolocationBlockConfig } from '@23blocks/block-geolocation';\nimport type { ConversationsBlockConfig } from '@23blocks/block-conversations';\nimport type { FilesBlockConfig } from '@23blocks/block-files';\nimport type { FormsBlockConfig } from '@23blocks/block-forms';\nimport type { AssetsBlockConfig } from '@23blocks/block-assets';\nimport type { CampaignsBlockConfig } from '@23blocks/block-campaigns';\nimport type { CompanyBlockConfig } from '@23blocks/block-company';\nimport type { RewardsBlockConfig } from '@23blocks/block-rewards';\nimport type { SalesBlockConfig } from '@23blocks/block-sales';\nimport type { WalletBlockConfig } from '@23blocks/block-wallet';\nimport type { JarvisBlockConfig } from '@23blocks/block-jarvis';\nimport type { OnboardingBlockConfig } from '@23blocks/block-onboarding';\nimport type { UniversityBlockConfig } from '@23blocks/block-university';\nimport type { RagBlockConfig } from '@23blocks/block-rag';\nimport {\n TRANSPORT,\n AUTHENTICATION_CONFIG,\n SEARCH_CONFIG,\n PRODUCTS_CONFIG,\n CRM_CONFIG,\n CONTENT_CONFIG,\n GEOLOCATION_CONFIG,\n CONVERSATIONS_CONFIG,\n FILES_CONFIG,\n FORMS_CONFIG,\n ASSETS_CONFIG,\n CAMPAIGNS_CONFIG,\n COMPANY_CONFIG,\n REWARDS_CONFIG,\n SALES_CONFIG,\n WALLET_CONFIG,\n JARVIS_CONFIG,\n ONBOARDING_CONFIG,\n UNIVERSITY_CONFIG,\n RAG_CONFIG,\n} from './tokens';\n\n/**\n * Configuration for providing 23blocks services\n */\nexport interface Provide23BlocksConfig {\n transport: Transport;\n authentication?: AuthenticationBlockConfig;\n search?: SearchBlockConfig;\n products?: ProductsBlockConfig;\n crm?: CrmBlockConfig;\n content?: ContentBlockConfig;\n geolocation?: GeolocationBlockConfig;\n conversations?: ConversationsBlockConfig;\n files?: FilesBlockConfig;\n forms?: FormsBlockConfig;\n assets?: AssetsBlockConfig;\n campaigns?: CampaignsBlockConfig;\n company?: CompanyBlockConfig;\n rewards?: RewardsBlockConfig;\n sales?: SalesBlockConfig;\n wallet?: WalletBlockConfig;\n jarvis?: JarvisBlockConfig;\n onboarding?: OnboardingBlockConfig;\n university?: UniversityBlockConfig;\n rag?: RagBlockConfig;\n}\n\n/**\n * Provide 23blocks services for standalone Angular applications.\n *\n * @example\n * ```typescript\n * // app.config.ts\n * import { ApplicationConfig } from '@angular/core';\n * import { provide23Blocks } from '@23blocks/angular';\n * import { createHttpTransport } from '@23blocks/transport-http';\n *\n * const transport = createHttpTransport({\n * baseUrl: 'https://api.example.com',\n * headers: () => ({\n * 'Authorization': `Bearer ${localStorage.getItem('token')}`,\n * }),\n * });\n *\n * export const appConfig: ApplicationConfig = {\n * providers: [\n * provide23Blocks({\n * transport,\n * authentication: { apiKey: 'my-api-key' },\n * search: { apiKey: 'my-api-key' },\n * products: { apiKey: 'my-api-key' },\n * crm: { apiKey: 'my-api-key' },\n * }),\n * ],\n * };\n * ```\n */\nexport function provide23Blocks(config: Provide23BlocksConfig): EnvironmentProviders {\n const providers: Provider[] = [\n { provide: TRANSPORT, useValue: config.transport },\n ];\n\n if (config.authentication) {\n providers.push({ provide: AUTHENTICATION_CONFIG, useValue: config.authentication });\n }\n if (config.search) {\n providers.push({ provide: SEARCH_CONFIG, useValue: config.search });\n }\n if (config.products) {\n providers.push({ provide: PRODUCTS_CONFIG, useValue: config.products });\n }\n if (config.crm) {\n providers.push({ provide: CRM_CONFIG, useValue: config.crm });\n }\n if (config.content) {\n providers.push({ provide: CONTENT_CONFIG, useValue: config.content });\n }\n if (config.geolocation) {\n providers.push({ provide: GEOLOCATION_CONFIG, useValue: config.geolocation });\n }\n if (config.conversations) {\n providers.push({ provide: CONVERSATIONS_CONFIG, useValue: config.conversations });\n }\n if (config.files) {\n providers.push({ provide: FILES_CONFIG, useValue: config.files });\n }\n if (config.forms) {\n providers.push({ provide: FORMS_CONFIG, useValue: config.forms });\n }\n if (config.assets) {\n providers.push({ provide: ASSETS_CONFIG, useValue: config.assets });\n }\n if (config.campaigns) {\n providers.push({ provide: CAMPAIGNS_CONFIG, useValue: config.campaigns });\n }\n if (config.company) {\n providers.push({ provide: COMPANY_CONFIG, useValue: config.company });\n }\n if (config.rewards) {\n providers.push({ provide: REWARDS_CONFIG, useValue: config.rewards });\n }\n if (config.sales) {\n providers.push({ provide: SALES_CONFIG, useValue: config.sales });\n }\n if (config.wallet) {\n providers.push({ provide: WALLET_CONFIG, useValue: config.wallet });\n }\n if (config.jarvis) {\n providers.push({ provide: JARVIS_CONFIG, useValue: config.jarvis });\n }\n if (config.onboarding) {\n providers.push({ provide: ONBOARDING_CONFIG, useValue: config.onboarding });\n }\n if (config.university) {\n providers.push({ provide: UNIVERSITY_CONFIG, useValue: config.university });\n }\n if (config.rag) {\n providers.push({ provide: RAG_CONFIG, useValue: config.rag });\n }\n\n return makeEnvironmentProviders(providers);\n}\n\n/**\n * Get providers array for NgModule-based applications.\n *\n * @example\n * ```typescript\n * // app.module.ts\n * import { NgModule } from '@angular/core';\n * import { get23BlocksProviders } from '@23blocks/angular';\n *\n * @NgModule({\n * providers: [\n * ...get23BlocksProviders({\n * transport,\n * authentication: { apiKey: 'my-api-key' },\n * }),\n * ],\n * })\n * export class AppModule {}\n * ```\n */\nexport function get23BlocksProviders(config: Provide23BlocksConfig): Provider[] {\n const providers: Provider[] = [\n { provide: TRANSPORT, useValue: config.transport },\n ];\n\n if (config.authentication) {\n providers.push({ provide: AUTHENTICATION_CONFIG, useValue: config.authentication });\n }\n if (config.search) {\n providers.push({ provide: SEARCH_CONFIG, useValue: config.search });\n }\n if (config.products) {\n providers.push({ provide: PRODUCTS_CONFIG, useValue: config.products });\n }\n if (config.crm) {\n providers.push({ provide: CRM_CONFIG, useValue: config.crm });\n }\n if (config.content) {\n providers.push({ provide: CONTENT_CONFIG, useValue: config.content });\n }\n if (config.geolocation) {\n providers.push({ provide: GEOLOCATION_CONFIG, useValue: config.geolocation });\n }\n if (config.conversations) {\n providers.push({ provide: CONVERSATIONS_CONFIG, useValue: config.conversations });\n }\n if (config.files) {\n providers.push({ provide: FILES_CONFIG, useValue: config.files });\n }\n if (config.forms) {\n providers.push({ provide: FORMS_CONFIG, useValue: config.forms });\n }\n if (config.assets) {\n providers.push({ provide: ASSETS_CONFIG, useValue: config.assets });\n }\n if (config.campaigns) {\n providers.push({ provide: CAMPAIGNS_CONFIG, useValue: config.campaigns });\n }\n if (config.company) {\n providers.push({ provide: COMPANY_CONFIG, useValue: config.company });\n }\n if (config.rewards) {\n providers.push({ provide: REWARDS_CONFIG, useValue: config.rewards });\n }\n if (config.sales) {\n providers.push({ provide: SALES_CONFIG, useValue: config.sales });\n }\n if (config.wallet) {\n providers.push({ provide: WALLET_CONFIG, useValue: config.wallet });\n }\n if (config.jarvis) {\n providers.push({ provide: JARVIS_CONFIG, useValue: config.jarvis });\n }\n if (config.onboarding) {\n providers.push({ provide: ONBOARDING_CONFIG, useValue: config.onboarding });\n }\n if (config.university) {\n providers.push({ provide: UNIVERSITY_CONFIG, useValue: config.university });\n }\n if (config.rag) {\n providers.push({ provide: RAG_CONFIG, useValue: config.rag });\n }\n\n return providers;\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport { Observable, from, tap } from 'rxjs';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createAuthenticationBlock,\n type AuthenticationBlock,\n type AuthenticationBlockConfig,\n type SignInRequest,\n type SignInResponse,\n type SignUpRequest,\n type SignUpResponse,\n type RefreshTokenRequest,\n type RefreshTokenResponse,\n type MagicLinkVerifyRequest,\n type AcceptInvitationRequest,\n type OAuthSocialLoginRequest,\n type TenantLoginRequest,\n} from '@23blocks/block-authentication';\nimport { TRANSPORT, AUTHENTICATION_TRANSPORT, AUTHENTICATION_CONFIG } from '../tokens';\nimport { TOKEN_MANAGER, SIMPLE_CONFIG, type TokenManagerService, type Simple23BlocksConfig } from '../simple-providers';\n\n/**\n * Angular service wrapping the Authentication block.\n *\n * Auth-flow methods (signIn, signUp, signOut, OAuth, etc.) return Observables\n * with automatic token management via `tap()`.\n *\n * All other sub-services are exposed as typed getters returning Promise-based APIs.\n * Use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * // Auth flows (Observable with token management):\n * this.auth.signIn({ email, password }).subscribe(...)\n *\n * // Other services (Promise-based, wrap in from() if needed):\n * const user = await this.auth.users.get(userId);\n * from(this.auth.roles.list()).subscribe(...)\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class AuthenticationService {\n private readonly block: AuthenticationBlock | null;\n private readonly tokenManager: TokenManagerService | null;\n private readonly simpleConfig: Simple23BlocksConfig | null;\n\n constructor(\n @Optional() @Inject(AUTHENTICATION_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(AUTHENTICATION_CONFIG) config: AuthenticationBlockConfig,\n @Optional() @Inject(TOKEN_MANAGER) tokenManager: TokenManagerService | null,\n @Optional() @Inject(SIMPLE_CONFIG) simpleConfig: Simple23BlocksConfig | null\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createAuthenticationBlock(transport, config) : null;\n this.tokenManager = tokenManager;\n this.simpleConfig = simpleConfig;\n }\n\n private ensureConfigured(): AuthenticationBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] AuthenticationService is not configured. ' +\n \"Add 'urls.authentication' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n private get isTokenMode(): boolean {\n return this.tokenManager !== null && this.simpleConfig?.authMode !== 'cookie';\n }\n\n private storeTokens(response: SignInResponse | RefreshTokenResponse): void {\n if (this.isTokenMode && this.tokenManager && response.accessToken) {\n this.tokenManager.setTokens(\n response.accessToken,\n 'refreshToken' in response ? response.refreshToken : undefined\n );\n }\n }\n\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n // Auth-flow methods (Observable with token management)\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n /**\n * Sign in with email and password.\n * Returns an Observable that emits the sign-in response and automatically\n * stores access/refresh tokens in token mode.\n *\n * @param request - Email and password credentials\n * @returns Observable emitting SignInResponse with `user`, `accessToken`,\n * optional `refreshToken`, `tokenType`, and `expiresIn`\n * @example\n * ```typescript\n * this.authService.signIn({ email: 'user@example.com', password: 'secret' })\n * .subscribe(({ user, accessToken }) => console.log('Signed in:', user.email));\n * ```\n */\n signIn(request: SignInRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().auth.signIn(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Sign up a new user.\n * Returns an Observable that emits the sign-up response and automatically\n * stores tokens if email confirmation is not required.\n *\n * @param request - User registration data (email, password, etc.)\n * @returns Observable emitting SignUpResponse with `user`, optional `accessToken`\n * (absent if email confirmation is required), and optional `message`\n * @note If email confirmation is enabled, `accessToken` will be undefined until confirmed.\n */\n signUp(request: SignUpRequest): Observable<SignUpResponse> {\n return from(this.ensureConfigured().auth.signUp(request)).pipe(\n tap((response) => {\n if (this.isTokenMode && this.tokenManager && response.accessToken) {\n this.tokenManager.setTokens(response.accessToken);\n }\n })\n );\n }\n\n /**\n * Sign out the current user.\n * Invalidates the session server-side and clears locally stored tokens in token mode.\n *\n * @returns Observable that completes on successful sign-out\n */\n signOut(): Observable<void> {\n return from(this.ensureConfigured().auth.signOut()).pipe(\n tap(() => {\n if (this.isTokenMode && this.tokenManager) {\n this.tokenManager.clearTokens();\n }\n })\n );\n }\n\n /**\n * Refresh the access token using a refresh token.\n * Automatically stores the new token pair in token mode.\n *\n * @param request - Contains the `refreshToken` to exchange\n * @returns Observable emitting RefreshTokenResponse with new `accessToken`,\n * optional new `refreshToken`, `tokenType`, and `expiresIn`\n */\n refreshToken(request: RefreshTokenRequest): Observable<RefreshTokenResponse> {\n return from(this.ensureConfigured().auth.refreshToken(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Verify a magic link token and sign in.\n * Automatically stores tokens on successful verification.\n *\n * @param request - Contains the magic link `token` from the email link\n * @returns Observable emitting SignInResponse with `user`, `accessToken`, optional `refreshToken`\n */\n verifyMagicLink(request: MagicLinkVerifyRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().auth.verifyMagicLink(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Accept an invitation and create the user's account.\n * Automatically stores tokens on successful acceptance.\n *\n * @param request - Invitation token and user account details (password, etc.)\n * @returns Observable emitting SignInResponse with the new `user`, `accessToken`,\n * optional `refreshToken`\n */\n acceptInvitation(request: AcceptInvitationRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().auth.acceptInvitation(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Sign in via Facebook OAuth.\n * Automatically stores tokens on successful authentication.\n *\n * @param request - Facebook OAuth access token\n * @returns Observable emitting SignInResponse with `user` and tokens\n */\n facebookLogin(request: OAuthSocialLoginRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().oauth.facebookLogin(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Sign in via Google OAuth.\n * Automatically stores tokens on successful authentication.\n *\n * @param request - Google OAuth access token\n * @returns Observable emitting SignInResponse with `user` and tokens\n */\n googleLogin(request: OAuthSocialLoginRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().oauth.googleLogin(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n /**\n * Sign in via tenant-specific login (white-label authentication).\n * Automatically stores tokens on successful authentication.\n *\n * @param request - Tenant login credentials and tenant identifier\n * @returns Observable emitting SignInResponse with `user` and tokens\n */\n tenantLogin(request: TenantLoginRequest): Observable<SignInResponse> {\n return from(this.ensureConfigured().oauth.tenantLogin(request)).pipe(\n tap((response) => this.storeTokens(response))\n );\n }\n\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n // Token Management (only applicable with provideBlocks23)\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n /**\n * Get the currently stored access token.\n * Only available in token mode (not cookie mode).\n *\n * @returns The access token string, or `null` if not set or in cookie mode\n */\n getAccessToken(): string | null {\n return this.tokenManager?.getAccessToken() ?? null;\n }\n\n /**\n * Get the currently stored refresh token.\n * Only available in token mode (not cookie mode).\n *\n * @returns The refresh token string, or `null` if not set or in cookie mode\n */\n getRefreshToken(): string | null {\n return this.tokenManager?.getRefreshToken() ?? null;\n }\n\n /**\n * Manually set access and refresh tokens.\n * Useful when tokens are obtained outside the normal auth flow\n * (e.g., from a server-side redirect or external OAuth callback).\n *\n * @param accessToken - The access token to store\n * @param refreshToken - Optional refresh token to store\n */\n setTokens(accessToken: string, refreshToken?: string): void {\n this.tokenManager?.setTokens(accessToken, refreshToken);\n }\n\n /**\n * Clear all stored tokens, effectively logging the user out locally.\n * Does NOT invalidate the session server-side β use `signOut()` for that.\n */\n clearTokens(): void {\n this.tokenManager?.clearTokens();\n }\n\n /**\n * Check if the user is currently authenticated based on token presence.\n *\n * @returns `true` if an access token is stored, `false` if not,\n * or `null` if token management is unavailable (cookie mode or no TokenManager)\n */\n isAuthenticated(): boolean | null {\n if (!this.tokenManager || this.simpleConfig?.authMode === 'cookie') {\n return null;\n }\n return !!this.tokenManager.getAccessToken();\n }\n\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n // Delegated sub-services (Promise-based, auto-sync with block API)\n // βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n\n /** Core auth operations (signIn, signUp, signOut, password reset, magic links, invitations). Promise-based. */\n get auth() { return this.ensureConfigured().auth; }\n /** User CRUD, listing, search, and profile management */\n get users() { return this.ensureConfigured().users; }\n /** Role listing and assignment */\n get roles() { return this.ensureConfigured().roles; }\n /** Permission management */\n get permissions() { return this.ensureConfigured().permissions; }\n /** API key creation and management */\n get apiKeys() { return this.ensureConfigured().apiKeys; }\n /** Service token management for machine-to-machine authentication */\n get serviceTokens() { return this.ensureConfigured().serviceTokens; }\n /** Multi-factor authentication setup and verification */\n get mfa() { return this.ensureConfigured().mfa; }\n /** OAuth provider management (Facebook, Google, tenant login) */\n get oauth() { return this.ensureConfigured().oauth; }\n /** User avatar upload and management */\n get avatars() { return this.ensureConfigured().avatars; }\n /** Tenant CRUD and configuration */\n get tenants() { return this.ensureConfigured().tenants; }\n /** Application registration and management */\n get apps() { return this.ensureConfigured().apps; }\n /** Block configuration management */\n get blocks() { return this.ensureConfigured().blocks; }\n /** Service endpoint management */\n get services() { return this.ensureConfigured().services; }\n /** Subscription model/plan definitions */\n get subscriptionModels() { return this.ensureConfigured().subscriptionModels; }\n /** User-level subscription management */\n get userSubscriptions() { return this.ensureConfigured().userSubscriptions; }\n /** Company-level subscription management */\n get companySubscriptions() { return this.ensureConfigured().companySubscriptions; }\n /** Country listing (read-only reference data) */\n get countries() { return this.ensureConfigured().countries; }\n /** State/province listing (read-only reference data) */\n get states() { return this.ensureConfigured().states; }\n /** County listing (read-only reference data) */\n get counties() { return this.ensureConfigured().counties; }\n /** City listing (read-only reference data) */\n get cities() { return this.ensureConfigured().cities; }\n /** Currency listing (read-only reference data) */\n get currencies() { return this.ensureConfigured().currencies; }\n /** Guest/anonymous user management */\n get guests() { return this.ensureConfigured().guests; }\n /** Magic link token management */\n get magicLinks() { return this.ensureConfigured().magicLinks; }\n /** Refresh token listing and revocation */\n get refreshTokens() { return this.ensureConfigured().refreshTokens; }\n /** User device registration and management */\n get userDevices() { return this.ensureConfigured().userDevices; }\n /** Tenant-user association management */\n get tenantUsers() { return this.ensureConfigured().tenantUsers; }\n /** Email template management (Mandrill/SendGrid) */\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n /** JSON Web Key Set management */\n get jwks() { return this.ensureConfigured().jwks; }\n /** Admin RSA key management */\n get adminRsaKeys() { return this.ensureConfigured().adminRsaKeys; }\n /** OpenID Connect configuration */\n get oidc() { return this.ensureConfigured().oidc; }\n\n /** Direct access to the underlying AuthenticationBlock instance */\n get authenticationBlock(): AuthenticationBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createSearchBlock,\n type SearchBlock,\n type SearchBlockConfig,\n} from '@23blocks/block-search';\nimport { TRANSPORT, SEARCH_TRANSPORT, SEARCH_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Search block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * // Promise-based (recommended for modern Angular):\n * const result = await this.searchService.search.search(request);\n *\n * // Observable-based:\n * from(this.searchService.search.search(request)).subscribe(...)\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class SearchService {\n private readonly block: SearchBlock | null;\n\n constructor(\n @Optional() @Inject(SEARCH_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(SEARCH_CONFIG) config: SearchBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createSearchBlock(transport, config) : null;\n }\n\n private ensureConfigured(): SearchBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] SearchService is not configured. ' +\n \"Add 'urls.search' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get search() { return this.ensureConfigured().search; }\n get history() { return this.ensureConfigured().history; }\n get favorites() { return this.ensureConfigured().favorites; }\n get entities() { return this.ensureConfigured().entities; }\n get identities() { return this.ensureConfigured().identities; }\n get jarvis() { return this.ensureConfigured().jarvis; }\n\n /** Full block access */\n get searchBlock(): SearchBlock { return this.ensureConfigured(); }\n}\n","// Products block aligned with backend strong params\nimport { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createProductsBlock,\n type ProductsBlock,\n type ProductsBlockConfig,\n} from '@23blocks/block-products';\nimport { TRANSPORT, PRODUCTS_TRANSPORT, PRODUCTS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Products block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const products = await this.productsService.products.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class ProductsService {\n private readonly block: ProductsBlock | null;\n\n constructor(\n @Optional() @Inject(PRODUCTS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(PRODUCTS_CONFIG) config: ProductsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createProductsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): ProductsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] ProductsService is not configured. ' +\n \"Add 'urls.products' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get products() { return this.ensureConfigured().products; }\n get cart() { return this.ensureConfigured().cart; }\n get cartDetails() { return this.ensureConfigured().cartDetails; }\n get categories() { return this.ensureConfigured().categories; }\n get brands() { return this.ensureConfigured().brands; }\n get vendors() { return this.ensureConfigured().vendors; }\n get warehouses() { return this.ensureConfigured().warehouses; }\n get channels() { return this.ensureConfigured().channels; }\n get collections() { return this.ensureConfigured().collections; }\n get productSets() { return this.ensureConfigured().productSets; }\n get shoppingLists() { return this.ensureConfigured().shoppingLists; }\n get promotions() { return this.ensureConfigured().promotions; }\n get prices() { return this.ensureConfigured().prices; }\n get filters() { return this.ensureConfigured().filters; }\n get images() { return this.ensureConfigured().images; }\n get variations() { return this.ensureConfigured().variations; }\n get reviews() { return this.ensureConfigured().reviews; }\n get variationReviews() { return this.ensureConfigured().variationReviews; }\n get stock() { return this.ensureConfigured().stock; }\n get suggestions() { return this.ensureConfigured().suggestions; }\n get addons() { return this.ensureConfigured().addons; }\n get myCarts() { return this.ensureConfigured().myCarts; }\n get remarketing() { return this.ensureConfigured().remarketing; }\n get visitors() { return this.ensureConfigured().visitors; }\n get productVendors() { return this.ensureConfigured().productVendors; }\n\n /** Full block access */\n get productsBlock(): ProductsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createCrmBlock,\n type CrmBlock,\n type CrmBlockConfig,\n} from '@23blocks/block-crm';\nimport { TRANSPORT, CRM_TRANSPORT, CRM_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the CRM block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const accounts = await this.crmService.accounts.list({ page: 1, perPage: 20 });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class CrmService {\n private readonly block: CrmBlock | null;\n\n constructor(\n @Optional() @Inject(CRM_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(CRM_CONFIG) config: CrmBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createCrmBlock(transport, config) : null;\n }\n\n private ensureConfigured(): CrmBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] CrmService is not configured. ' +\n \"Add 'urls.crm' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get accounts() { return this.ensureConfigured().accounts; }\n get contacts() { return this.ensureConfigured().contacts; }\n get contactEvents() { return this.ensureConfigured().contactEvents; }\n get leads() { return this.ensureConfigured().leads; }\n get leadFollows() { return this.ensureConfigured().leadFollows; }\n get opportunities() { return this.ensureConfigured().opportunities; }\n get meetings() { return this.ensureConfigured().meetings; }\n get meetingParticipants() { return this.ensureConfigured().meetingParticipants; }\n get meetingBillings() { return this.ensureConfigured().meetingBillings; }\n get quotes() { return this.ensureConfigured().quotes; }\n get subscribers() { return this.ensureConfigured().subscribers; }\n get referrals() { return this.ensureConfigured().referrals; }\n get touches() { return this.ensureConfigured().touches; }\n get categories() { return this.ensureConfigured().categories; }\n get calendarAccounts() { return this.ensureConfigured().calendarAccounts; }\n get busyBlocks() { return this.ensureConfigured().busyBlocks; }\n get icsTokens() { return this.ensureConfigured().icsTokens; }\n get zoomMeetings() { return this.ensureConfigured().zoomMeetings; }\n get zoomHosts() { return this.ensureConfigured().zoomHosts; }\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n get communications() { return this.ensureConfigured().communications; }\n get users() { return this.ensureConfigured().users; }\n get billingReports() { return this.ensureConfigured().billingReports; }\n get calendarSync() { return this.ensureConfigured().calendarSync; }\n\n /** Full block access */\n get crmBlock(): CrmBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createContentBlock,\n type ContentBlock,\n type ContentBlockConfig,\n} from '@23blocks/block-content';\nimport { TRANSPORT, CONTENT_TRANSPORT, CONTENT_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Content block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const posts = await this.contentService.posts.list({ page: 1, perPage: 10 });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class ContentService {\n private readonly block: ContentBlock | null;\n\n constructor(\n @Optional() @Inject(CONTENT_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(CONTENT_CONFIG) config: ContentBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createContentBlock(transport, config) : null;\n }\n\n private ensureConfigured(): ContentBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] ContentService is not configured. ' +\n \"Add 'urls.content' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get posts() { return this.ensureConfigured().posts; }\n get postVersions() { return this.ensureConfigured().postVersions; }\n get postTemplates() { return this.ensureConfigured().postTemplates; }\n get comments() { return this.ensureConfigured().comments; }\n get categories() { return this.ensureConfigured().categories; }\n get tags() { return this.ensureConfigured().tags; }\n get users() { return this.ensureConfigured().users; }\n get moderation() { return this.ensureConfigured().moderation; }\n get activity() { return this.ensureConfigured().activity; }\n get series() { return this.ensureConfigured().series; }\n\n /** Full block access */\n get contentBlock(): ContentBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createGeolocationBlock,\n type GeolocationBlock,\n type GeolocationBlockConfig,\n} from '@23blocks/block-geolocation';\nimport { TRANSPORT, GEOLOCATION_TRANSPORT, GEOLOCATION_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Geolocation block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const locations = await this.geolocationService.locations.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class GeolocationService {\n private readonly block: GeolocationBlock | null;\n\n constructor(\n @Optional() @Inject(GEOLOCATION_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(GEOLOCATION_CONFIG) config: GeolocationBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createGeolocationBlock(transport, config) : null;\n }\n\n private ensureConfigured(): GeolocationBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] GeolocationService is not configured. ' +\n \"Add 'urls.geolocation' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get locations() { return this.ensureConfigured().locations; }\n get addresses() { return this.ensureConfigured().addresses; }\n get areas() { return this.ensureConfigured().areas; }\n get regions() { return this.ensureConfigured().regions; }\n get routes() { return this.ensureConfigured().routes; }\n get bookings() { return this.ensureConfigured().bookings; }\n get premises() { return this.ensureConfigured().premises; }\n get premiseEvents() { return this.ensureConfigured().premiseEvents; }\n get routeTracker() { return this.ensureConfigured().routeTracker; }\n get locationHours() { return this.ensureConfigured().locationHours; }\n get locationImages() { return this.ensureConfigured().locationImages; }\n get locationSlots() { return this.ensureConfigured().locationSlots; }\n get locationTaxes() { return this.ensureConfigured().locationTaxes; }\n get locationGroups() { return this.ensureConfigured().locationGroups; }\n get identities() { return this.ensureConfigured().identities; }\n get locationIdentities() { return this.ensureConfigured().locationIdentities; }\n get geoCountries() { return this.ensureConfigured().geoCountries; }\n get geoStates() { return this.ensureConfigured().geoStates; }\n get geoCities() { return this.ensureConfigured().geoCities; }\n\n /** Full block access */\n get geolocationBlock(): GeolocationBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createConversationsBlock,\n type ConversationsBlock,\n type ConversationsBlockConfig,\n} from '@23blocks/block-conversations';\nimport { TRANSPORT, CONVERSATIONS_TRANSPORT, CONVERSATIONS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Conversations block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const message = await this.conversationsService.messages.create({ contextId, content });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class ConversationsService {\n private readonly block: ConversationsBlock | null;\n\n constructor(\n @Optional() @Inject(CONVERSATIONS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(CONVERSATIONS_CONFIG) config: ConversationsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createConversationsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): ConversationsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] ConversationsService is not configured. ' +\n \"Add 'urls.conversations' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get messages() { return this.ensureConfigured().messages; }\n get draftMessages() { return this.ensureConfigured().draftMessages; }\n get groups() { return this.ensureConfigured().groups; }\n get groupInvites() { return this.ensureConfigured().groupInvites; }\n get notifications() { return this.ensureConfigured().notifications; }\n get conversations() { return this.ensureConfigured().conversations; }\n get websocketTokens() { return this.ensureConfigured().websocketTokens; }\n get contexts() { return this.ensureConfigured().contexts; }\n get notificationSettings() { return this.ensureConfigured().notificationSettings; }\n get availabilities() { return this.ensureConfigured().availabilities; }\n get messageFiles() { return this.ensureConfigured().messageFiles; }\n get sources() { return this.ensureConfigured().sources; }\n get users() { return this.ensureConfigured().users; }\n get meetings() { return this.ensureConfigured().meetings; }\n get webNotifications() { return this.ensureConfigured().webNotifications; }\n\n /** Full block access */\n get conversationsBlock(): ConversationsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createFilesBlock,\n type FilesBlock,\n type FilesBlockConfig,\n} from '@23blocks/block-files';\nimport { TRANSPORT, FILES_TRANSPORT, FILES_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Files block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const files = await this.filesService.storageFiles.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class FilesService {\n private readonly block: FilesBlock | null;\n\n constructor(\n @Optional() @Inject(FILES_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(FILES_CONFIG) config: FilesBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createFilesBlock(transport, config) : null;\n }\n\n private ensureConfigured(): FilesBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] FilesService is not configured. ' +\n \"Add 'urls.files' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get storageFiles() { return this.ensureConfigured().storageFiles; }\n get entityFiles() { return this.ensureConfigured().entityFiles; }\n get fileSchemas() { return this.ensureConfigured().fileSchemas; }\n get userFiles() { return this.ensureConfigured().userFiles; }\n get fileCategories() { return this.ensureConfigured().fileCategories; }\n get fileTags() { return this.ensureConfigured().fileTags; }\n get delegations() { return this.ensureConfigured().delegations; }\n get fileAccess() { return this.ensureConfigured().fileAccess; }\n get fileAccessRequests() { return this.ensureConfigured().fileAccessRequests; }\n\n /** Full block access */\n get filesBlock(): FilesBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createFormsBlock,\n type FormsBlock,\n type FormsBlockConfig,\n} from '@23blocks/block-forms';\nimport { TRANSPORT, FORMS_TRANSPORT, FORMS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Forms block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const forms = await this.formsService.forms.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class FormsService {\n private readonly block: FormsBlock | null;\n\n constructor(\n @Optional() @Inject(FORMS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(FORMS_CONFIG) config: FormsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createFormsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): FormsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] FormsService is not configured. ' +\n \"Add 'urls.forms' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get forms() { return this.ensureConfigured().forms; }\n get schemas() { return this.ensureConfigured().schemas; }\n get schemaVersions() { return this.ensureConfigured().schemaVersions; }\n get instances() { return this.ensureConfigured().instances; }\n get sets() { return this.ensureConfigured().sets; }\n get landings() { return this.ensureConfigured().landings; }\n get subscriptions() { return this.ensureConfigured().subscriptions; }\n get appointments() { return this.ensureConfigured().appointments; }\n get surveys() { return this.ensureConfigured().surveys; }\n get referrals() { return this.ensureConfigured().referrals; }\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n get applicationForms() { return this.ensureConfigured().applicationForms; }\n get crmSync() { return this.ensureConfigured().crmSync; }\n\n /** Full block access */\n get formsBlock(): FormsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createAssetsBlock,\n type AssetsBlock,\n type AssetsBlockConfig,\n} from '@23blocks/block-assets';\nimport { TRANSPORT, ASSETS_TRANSPORT, ASSETS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Assets block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const assets = await this.assetsService.assets.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class AssetsService {\n private readonly block: AssetsBlock | null;\n\n constructor(\n @Optional() @Inject(ASSETS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(ASSETS_CONFIG) config: AssetsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createAssetsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): AssetsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] AssetsService is not configured. ' +\n \"Add 'urls.assets' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get assets() { return this.ensureConfigured().assets; }\n get events() { return this.ensureConfigured().events; }\n get audits() { return this.ensureConfigured().audits; }\n get categories() { return this.ensureConfigured().categories; }\n get tags() { return this.ensureConfigured().tags; }\n get vendors() { return this.ensureConfigured().vendors; }\n get warehouses() { return this.ensureConfigured().warehouses; }\n get entities() { return this.ensureConfigured().entities; }\n get operations() { return this.ensureConfigured().operations; }\n get alerts() { return this.ensureConfigured().alerts; }\n get users() { return this.ensureConfigured().users; }\n get images() { return this.ensureConfigured().images; }\n\n /** Full block access */\n get assetsBlock(): AssetsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createCampaignsBlock,\n type CampaignsBlock,\n type CampaignsBlockConfig,\n} from '@23blocks/block-campaigns';\nimport { TRANSPORT, CAMPAIGNS_TRANSPORT, CAMPAIGNS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Campaigns block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const campaigns = await this.campaignsService.campaigns.list({ page: 1, perPage: 10 });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class CampaignsService {\n private readonly block: CampaignsBlock | null;\n\n constructor(\n @Optional() @Inject(CAMPAIGNS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(CAMPAIGNS_CONFIG) config: CampaignsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createCampaignsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): CampaignsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] CampaignsService is not configured. ' +\n \"Add 'urls.campaigns' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get campaigns() { return this.ensureConfigured().campaigns; }\n get campaignMedia() { return this.ensureConfigured().campaignMedia; }\n get landingPages() { return this.ensureConfigured().landingPages; }\n get audiences() { return this.ensureConfigured().audiences; }\n get landingTemplates() { return this.ensureConfigured().landingTemplates; }\n get targets() { return this.ensureConfigured().targets; }\n get results() { return this.ensureConfigured().results; }\n get markets() { return this.ensureConfigured().markets; }\n get locations() { return this.ensureConfigured().locations; }\n get templates() { return this.ensureConfigured().templates; }\n get mediaResults() { return this.ensureConfigured().mediaResults; }\n get media() { return this.ensureConfigured().media; }\n\n /** Full block access */\n get campaignsBlock(): CampaignsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createCompanyBlock,\n type CompanyBlock,\n type CompanyBlockConfig,\n} from '@23blocks/block-company';\nimport { TRANSPORT, COMPANY_TRANSPORT, COMPANY_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Company block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const companies = await this.companyService.companies.list();\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class CompanyService {\n private readonly block: CompanyBlock | null;\n\n constructor(\n @Optional() @Inject(COMPANY_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(COMPANY_CONFIG) config: CompanyBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createCompanyBlock(transport, config) : null;\n }\n\n private ensureConfigured(): CompanyBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] CompanyService is not configured. ' +\n \"Add 'urls.company' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get companies() { return this.ensureConfigured().companies; }\n get departments() { return this.ensureConfigured().departments; }\n get teams() { return this.ensureConfigured().teams; }\n get teamMembers() { return this.ensureConfigured().teamMembers; }\n get quarters() { return this.ensureConfigured().quarters; }\n get positions() { return this.ensureConfigured().positions; }\n get employeeAssignments() { return this.ensureConfigured().employeeAssignments; }\n\n /** Full block access */\n get companyBlock(): CompanyBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createRewardsBlock,\n type RewardsBlock,\n type RewardsBlockConfig,\n} from '@23blocks/block-rewards';\nimport { TRANSPORT, REWARDS_TRANSPORT, REWARDS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Rewards block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const rewards = await this.rewardsService.rewards.list({ status: 'active' });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class RewardsService {\n private readonly block: RewardsBlock | null;\n\n constructor(\n @Optional() @Inject(REWARDS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(REWARDS_CONFIG) config: RewardsBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createRewardsBlock(transport, config) : null;\n }\n\n private ensureConfigured(): RewardsBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] RewardsService is not configured. ' +\n \"Add 'urls.rewards' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get rewards() { return this.ensureConfigured().rewards; }\n get coupons() { return this.ensureConfigured().coupons; }\n get loyalty() { return this.ensureConfigured().loyalty; }\n get badges() { return this.ensureConfigured().badges; }\n get couponConfigurations() { return this.ensureConfigured().couponConfigurations; }\n get offerCodes() { return this.ensureConfigured().offerCodes; }\n get expirationRules() { return this.ensureConfigured().expirationRules; }\n get customers() { return this.ensureConfigured().customers; }\n get badgeCategories() { return this.ensureConfigured().badgeCategories; }\n get moneyRules() { return this.ensureConfigured().moneyRules; }\n get productRules() { return this.ensureConfigured().productRules; }\n get eventRules() { return this.ensureConfigured().eventRules; }\n\n /** Full block access */\n get rewardsBlock(): RewardsBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createSalesBlock,\n type SalesBlock,\n type SalesBlockConfig,\n} from '@23blocks/block-sales';\nimport { TRANSPORT, SALES_TRANSPORT, SALES_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Sales block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const order = await this.salesService.orders.get('uuid');\n * const purchase = await this.salesService.purchases.create({ ... });\n * const subs = await this.salesService.users.listSubscriptions('user-uuid');\n * const session = await this.salesService.stripe.createCheckoutSession({ ... });\n * const payment = await this.salesService.vendorPayments.get('payment-uuid');\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class SalesService {\n private readonly block: SalesBlock | null;\n\n constructor(\n @Optional() @Inject(SALES_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(SALES_CONFIG) config: SalesBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createSalesBlock(transport, config) : null;\n }\n\n private ensureConfigured(): SalesBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] SalesService is not configured. ' +\n \"Add 'urls.sales' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get orders() { return this.ensureConfigured().orders; }\n get orderDetails() { return this.ensureConfigured().orderDetails; }\n get orderTaxes() { return this.ensureConfigured().orderTaxes; }\n get payments() { return this.ensureConfigured().payments; }\n get subscriptions() { return this.ensureConfigured().subscriptions; }\n get subscriptionModels() { return this.ensureConfigured().subscriptionModels; }\n get entities() { return this.ensureConfigured().entities; }\n get users() { return this.ensureConfigured().users; }\n get customers() { return this.ensureConfigured().customers; }\n get flexibleOrders() { return this.ensureConfigured().flexibleOrders; }\n get stripe() { return this.ensureConfigured().stripe; }\n get mercadopago() { return this.ensureConfigured().mercadopago; }\n get vendorPayments() { return this.ensureConfigured().vendorPayments; }\n get purchases() { return this.ensureConfigured().purchases; }\n\n /** Full block access */\n get salesBlock(): SalesBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createWalletBlock,\n type WalletBlock,\n type WalletBlockConfig,\n} from '@23blocks/block-wallet';\nimport { TRANSPORT, WALLET_TRANSPORT, WALLET_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Wallet block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const wallet = await this.walletService.wallets.create({ userUniqueId });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class WalletService {\n private readonly block: WalletBlock | null;\n\n constructor(\n @Optional() @Inject(WALLET_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(WALLET_CONFIG) config: WalletBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createWalletBlock(transport, config) : null;\n }\n\n private ensureConfigured(): WalletBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] WalletService is not configured. ' +\n \"Add 'urls.wallet' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get wallets() { return this.ensureConfigured().wallets; }\n get transactions() { return this.ensureConfigured().transactions; }\n get authorizationCodes() { return this.ensureConfigured().authorizationCodes; }\n get webhooks() { return this.ensureConfigured().webhooks; }\n\n /** Full block access */\n get walletBlock(): WalletBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createJarvisBlock,\n type JarvisBlock,\n type JarvisBlockConfig,\n} from '@23blocks/block-jarvis';\nimport { TRANSPORT, JARVIS_TRANSPORT, JARVIS_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Jarvis block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const response = await this.jarvisService.agents.chat(agentId, { message });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class JarvisService {\n private readonly block: JarvisBlock | null;\n\n constructor(\n @Optional() @Inject(JARVIS_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(JARVIS_CONFIG) config: JarvisBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createJarvisBlock(transport, config) : null;\n }\n\n private ensureConfigured(): JarvisBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] JarvisService is not configured. ' +\n \"Add 'urls.jarvis' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get agents() { return this.ensureConfigured().agents; }\n get prompts() { return this.ensureConfigured().prompts; }\n get workflows() { return this.ensureConfigured().workflows; }\n get executions() { return this.ensureConfigured().executions; }\n get conversations() { return this.ensureConfigured().conversations; }\n get aiModels() { return this.ensureConfigured().aiModels; }\n get entities() { return this.ensureConfigured().entities; }\n get clusters() { return this.ensureConfigured().clusters; }\n get users() { return this.ensureConfigured().users; }\n get workflowParticipants() { return this.ensureConfigured().workflowParticipants; }\n get workflowSteps() { return this.ensureConfigured().workflowSteps; }\n get workflowInstances() { return this.ensureConfigured().workflowInstances; }\n get agentRuntime() { return this.ensureConfigured().agentRuntime; }\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n get marvinChat() { return this.ensureConfigured().marvinChat; }\n get promptComments() { return this.ensureConfigured().promptComments; }\n get executionComments() { return this.ensureConfigured().executionComments; }\n\n /** Full block access */\n get jarvisBlock(): JarvisBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createOnboardingBlock,\n type OnboardingBlock,\n type OnboardingBlockConfig,\n} from '@23blocks/block-onboarding';\nimport { TRANSPORT, ONBOARDING_TRANSPORT, ONBOARDING_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the Onboarding block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const onboarding = await this.onboardingService.onboardings.create({ code: 'user-onboarding', name: 'User Onboarding' });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class OnboardingService {\n private readonly block: OnboardingBlock | null;\n\n constructor(\n @Optional() @Inject(ONBOARDING_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(ONBOARDING_CONFIG) config: OnboardingBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createOnboardingBlock(transport, config) : null;\n }\n\n private ensureConfigured(): OnboardingBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] OnboardingService is not configured. ' +\n \"Add 'urls.onboarding' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get onboardings() { return this.ensureConfigured().onboardings; }\n get flows() { return this.ensureConfigured().flows; }\n get userJourneys() { return this.ensureConfigured().userJourneys; }\n get userIdentities() { return this.ensureConfigured().userIdentities; }\n get onboard() { return this.ensureConfigured().onboard; }\n get mailTemplates() { return this.ensureConfigured().mailTemplates; }\n get remarketing() { return this.ensureConfigured().remarketing; }\n\n /** Full block access */\n get onboardingBlock(): OnboardingBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createUniversityBlock,\n type UniversityBlock,\n type UniversityBlockConfig,\n} from '@23blocks/block-university';\nimport { TRANSPORT, UNIVERSITY_TRANSPORT, UNIVERSITY_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the University block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * const courses = await this.universityService.courses.list({ page: 1, perPage: 10 });\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class UniversityService {\n private readonly block: UniversityBlock | null;\n\n constructor(\n @Optional() @Inject(UNIVERSITY_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(UNIVERSITY_CONFIG) config: UniversityBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createUniversityBlock(transport, config) : null;\n }\n\n private ensureConfigured(): UniversityBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] UniversityService is not configured. ' +\n \"Add 'urls.university' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get courses() { return this.ensureConfigured().courses; }\n get lessons() { return this.ensureConfigured().lessons; }\n get enrollments() { return this.ensureConfigured().enrollments; }\n get assignments() { return this.ensureConfigured().assignments; }\n get submissions() { return this.ensureConfigured().submissions; }\n get subjects() { return this.ensureConfigured().subjects; }\n get teachers() { return this.ensureConfigured().teachers; }\n get students() { return this.ensureConfigured().students; }\n get courseGroups() { return this.ensureConfigured().courseGroups; }\n get coachingSessions() { return this.ensureConfigured().coachingSessions; }\n get tests() { return this.ensureConfigured().tests; }\n get registrationTokens() { return this.ensureConfigured().registrationTokens; }\n get placements() { return this.ensureConfigured().placements; }\n get calendars() { return this.ensureConfigured().calendars; }\n get matches() { return this.ensureConfigured().matches; }\n get attendance() { return this.ensureConfigured().attendance; }\n get notes() { return this.ensureConfigured().notes; }\n\n /** Full block access */\n get universityBlock(): UniversityBlock { return this.ensureConfigured(); }\n}\n","import { Injectable, Inject, Optional } from '@angular/core';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createRagBlock,\n type RagBlock,\n type RagBlockConfig,\n} from '@23blocks/block-rag';\nimport { TRANSPORT, RAG_TRANSPORT, RAG_CONFIG } from '../tokens';\n\n/**\n * Angular service wrapping the RAG block.\n *\n * Exposes block sub-services directly via typed getters.\n * All methods return Promises - use `from()` to convert to Observables if needed.\n *\n * @example\n * ```typescript\n * // Promise-based (recommended for modern Angular):\n * const result = await this.ragService.scope.query('entities', { query: 'revenue' });\n *\n * // Observable-based:\n * from(this.ragService.scope.query('entities', { query: 'revenue' })).subscribe(...)\n * ```\n */\n@Injectable({ providedIn: 'root' })\nexport class RagService {\n private readonly block: RagBlock | null;\n\n constructor(\n @Optional() @Inject(RAG_TRANSPORT) serviceTransport: Transport | null,\n @Optional() @Inject(TRANSPORT) legacyTransport: Transport | null,\n @Inject(RAG_CONFIG) config: RagBlockConfig\n ) {\n const transport = serviceTransport ?? legacyTransport;\n this.block = transport ? createRagBlock(transport, config) : null;\n }\n\n private ensureConfigured(): RagBlock {\n if (!this.block) {\n throw new Error(\n '[23blocks] RagService is not configured. ' +\n \"Add 'urls.rag' to your provideBlocks23() configuration.\"\n );\n }\n return this.block;\n }\n\n get scope() { return this.ensureConfigured().scope; }\n get files() { return this.ensureConfigured().files; }\n get jobs() { return this.ensureConfigured().jobs; }\n get images() { return this.ensureConfigured().images; }\n get products() { return this.ensureConfigured().products; }\n\n /** Full block access */\n get ragBlock(): RagBlock { return this.ensureConfigured(); }\n}\n","// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Main API (Recommended) β blocks expose health(), CreateOrderRequest supports flat + items[]\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\nexport {\n // Main exports\n provideBlocks23,\n getBlocks23Providers,\n type ProviderConfig,\n type ServiceUrls,\n type AuthMode,\n type StorageType,\n type TokenManagerService,\n TOKEN_MANAGER,\n PROVIDER_CONFIG,\n\n // Backward compatibility (deprecated)\n type Simple23BlocksConfig,\n SIMPLE_CONFIG,\n} from './simple-providers';\n\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Advanced API (Custom transport)\n// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ\n// Tokens\nexport {\n // Legacy shared transport (deprecated)\n TRANSPORT,\n // Per-service transport tokens\n AUTHENTICATION_TRANSPORT,\n SEARCH_TRANSPORT,\n PRODUCTS_TRANSPORT,\n CRM_TRANSPORT,\n CONTENT_TRANSPORT,\n GEOLOCATION_TRANSPORT,\n CONVERSATIONS_TRANSPORT,\n FILES_TRANSPORT,\n FORMS_TRANSPORT,\n ASSETS_TRANSPORT,\n CAMPAIGNS_TRANSPORT,\n COMPANY_TRANSPORT,\n REWARDS_TRANSPORT,\n SALES_TRANSPORT,\n WALLET_TRANSPORT,\n JARVIS_TRANSPORT,\n ONBOARDING_TRANSPORT,\n UNIVERSITY_TRANSPORT,\n RAG_TRANSPORT,\n // Config tokens\n AUTHENTICATION_CONFIG,\n SEARCH_CONFIG,\n PRODUCTS_CONFIG,\n CRM_CONFIG,\n CONTENT_CONFIG,\n GEOLOCATION_CONFIG,\n CONVERSATIONS_CONFIG,\n FILES_CONFIG,\n FORMS_CONFIG,\n ASSETS_CONFIG,\n CAMPAIGNS_CONFIG,\n COMPANY_CONFIG,\n REWARDS_CONFIG,\n SALES_CONFIG,\n WALLET_CONFIG,\n JARVIS_CONFIG,\n ONBOARDING_CONFIG,\n UNIVERSITY_CONFIG,\n RAG_CONFIG,\n} from './tokens';\n\n// Provider functions (advanced - requires custom transport)\nexport { provide23Blocks, get23BlocksProviders, type Provide23BlocksConfig } from './providers';\n\n// Services\nexport { AuthenticationService } from './authentication/index';\nexport { SearchService } from './search/index';\nexport { ProductsService } from './products/index';\nexport { CrmService } from './crm/index';\nexport { ContentService } from './content/index';\nexport { GeolocationService } from './geolocation/index';\nexport { ConversationsService } from './conversations/index';\nexport { FilesService } from './files/index';\nexport { FormsService } from './forms/index';\nexport { AssetsService } from './assets/index';\nexport { CampaignsService } from './campaigns/index';\nexport { CompanyService } from './company/index';\nexport { RewardsService } from './rewards/index';\nexport { SalesService } from './sales/index';\nexport { WalletService } from './wallet/index';\nexport { JarvisService } from './jarvis/index';\nexport { OnboardingService } from './onboarding/index';\nexport { UniversityService } from './university/index';\nexport { RagService } from './rag/index';\n","// Angular bindings β search, crm, files, onboarding aligned with API strong params\nexport * from './lib/index';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sources":["../src/lib/simple-providers.ts","../src/lib/tokens.ts","../src/lib/providers.ts","../src/lib/authentication/authentication.service.ts","../src/lib/search/search.service.ts","../src/lib/products/products.service.ts","../src/lib/crm/crm.service.ts","../src/lib/content/content.service.ts","../src/lib/geolocation/geolocation.service.ts","../src/lib/conversations/conversations.service.ts","../src/lib/files/files.service.ts","../src/lib/forms/forms.service.ts","../src/lib/assets/assets.service.ts","../src/lib/campaigns/campaigns.service.ts","../src/lib/company/company.service.ts","../src/lib/rewards/rewards.service.ts","../src/lib/sales/sales.service.ts","../src/lib/wallet/wallet.service.ts","../src/lib/jarvis/jarvis.service.ts","../src/lib/onboarding/onboarding.service.ts","../src/lib/university/university.service.ts","../src/lib/rag/rag.service.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sources":["../src/lib/simple-providers.ts","../src/lib/tokens.ts","../src/lib/providers.ts","../src/lib/authentication/authentication.service.ts","../src/lib/search/search.service.ts","../src/lib/products/products.service.ts","../src/lib/crm/crm.service.ts","../src/lib/content/content.service.ts","../src/lib/geolocation/geolocation.service.ts","../src/lib/conversations/conversations.service.ts","../src/lib/files/files.service.ts","../src/lib/forms/forms.service.ts","../src/lib/assets/assets.service.ts","../src/lib/campaigns/campaigns.service.ts","../src/lib/company/company.service.ts","../src/lib/rewards/rewards.service.ts","../src/lib/sales/sales.service.ts","../src/lib/wallet/wallet.service.ts","../src/lib/jarvis/jarvis.service.ts","../src/lib/onboarding/onboarding.service.ts","../src/lib/university/university.service.ts","../src/lib/rag/rag.service.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA;;AAEG;;AAGH;;AAEG;AACG,KAAA,WAAA;AAEN;;;AAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCF;AAED;;AAEG;;AAED;;;;;;;;;;;;;;;;AAgBG;;AAGH;;AAEG;;AAGH;;AAEG;;AAGH;;;;AAIG;;AAGH;;;AAGG;;AAGH;;AAEG;;AAGH;;;AAGG;;AAEJ;AAED;;AAEG;AACH,cAAA,aAAA,EAAA,cAAA,CAAA,mBAAA;AAEA;;AAEG;AACH,cAAA,eAAA,EAAA,cAAA,CAAA,cAAA;AAEA;AACA,cAAA,aAAA,EAAA,cAAA,CAAA,cAAA;AAEA;;AAEG;;AAED;AACA;;;AAGA;;;AAGG;;AAEJ;AAmJD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CG;AACH,iBAAA,eAAA,SAAA,cAAA,GAAA,oBAAA;AAmGA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;AACH,iBAAA,oBAAA,SAAA,cAAA,GAAA,QAAA;AAkGA;AACM,KAAA,oBAAA,GAAA,cAAA;;ACjkBN;;;AAGG;AACH,cAAA,SAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,wBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,gBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,kBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,aAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,iBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,qBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,uBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,eAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,eAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,gBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,mBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,iBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,iBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,eAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,gBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,gBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,oBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,oBAAA,EAAA,cAAA,CAAA,SAAA;AAEA;AACA,cAAA,aAAA,EAAA,cAAA,CAAA,SAAA;AAMA;;AAEG;AACH,cAAA,qBAAA,EAAA,cAAA,CAAA,yBAAA;AAIA;;AAEG;AACH,cAAA,aAAA,EAAA,cAAA,CAAA,iBAAA;AAIA;;AAEG;AACH,cAAA,kBAAA,EAAA,cAAA,CAAA,sBAAA;AAIA;;AAEG;AACH,cAAA,cAAA,EAAA,cAAA,CAAA,kBAAA;AAIA;;AAEG;AACH,cAAA,UAAA,EAAA,cAAA,CAAA,cAAA;AAIA;;AAEG;AACH,cAAA,eAAA,EAAA,cAAA,CAAA,mBAAA;AAIA;;AAEG;AACH,cAAA,oBAAA,EAAA,cAAA,CAAA,wBAAA;AAIA;;AAEG;AACH,cAAA,YAAA,EAAA,cAAA,CAAA,gBAAA;AAIA;;AAEG;AACH,cAAA,aAAA,EAAA,cAAA,CAAA,iBAAA;AAIA;;AAEG;AACH,cAAA,YAAA,EAAA,cAAA,CAAA,gBAAA;AAIA;;AAEG;AACH,cAAA,YAAA,EAAA,cAAA,CAAA,gBAAA;AAIA;;AAEG;AACH,cAAA,gBAAA,EAAA,cAAA,CAAA,oBAAA;AAIA;;AAEG;AACH,cAAA,cAAA,EAAA,cAAA,CAAA,kBAAA;AAIA;;AAEG;AACH,cAAA,cAAA,EAAA,cAAA,CAAA,kBAAA;AAIA;;AAEG;AACH,cAAA,aAAA,EAAA,cAAA,CAAA,iBAAA;AAIA;;AAEG;AACH,cAAA,iBAAA,EAAA,cAAA,CAAA,qBAAA;AAIA;;AAEG;AACH,cAAA,iBAAA,EAAA,cAAA,CAAA,qBAAA;AAIA;;AAEG;AACH,cAAA,aAAA,EAAA,cAAA,CAAA,iBAAA;AAIA;;AAEG;AACH,cAAA,UAAA,EAAA,cAAA,CAAA,cAAA;;ACjLA;;AAEG;;;;;;;;;;;;;;;;;;;;;;AAsBF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BG;AACH,iBAAA,eAAA,SAAA,qBAAA,GAAA,oBAAA;AAkEA;;;;;;;;;;;;;;;;;;;AAmBG;AACH,iBAAA,oBAAA,SAAA,qBAAA,GAAA,QAAA;;ACtKA;;;;;;;;;;;;;;;;;;AAkBG;AACH,cAAA,qBAAA;AAEE;AACA;AACA;;AAeA;;AAcA;AAaA;;;;;;;;;;;;;AAaG;;AAOH;;;;;;;;;AASG;;AAWH;;;;;AAKG;AACH,eAAA,UAAA;AAUA;;;;;;;AAOG;;AAOH;;;;;;AAMG;;AAOH;;;;;;;AAOG;;AAOH;;;;;;AAMG;;AAOH;;;;;;AAMG;;AAOH;;;;;;AAMG;;AAWH;;;;;AAKG;;AAKH;;;;;AAKG;;AAKH;;;;;;;AAOG;;AAKH;;;AAGG;AACH;AAIA;;;;;AAKG;;;AAaH,gBAAQ,8BAAA,CAAA,WAAA;;AAER,iBAAS,8BAAA,CAAA,YAAA;;AAET,iBAAS,8BAAA,CAAA,YAAA;;AAET,uBAAe,8BAAA,CAAA,kBAAA;;AAEf,mBAAW,8BAAA,CAAA,cAAA;;AAEX,yBAAiB,8BAAA,CAAA,oBAAA;;AAEjB,eAAO,8BAAA,CAAA,UAAA;;AAEP,iBAAS,8BAAA,CAAA,YAAA;;AAET,mBAAW,8BAAA,CAAA,cAAA;;AAEX,mBAAW,8BAAA,CAAA,cAAA;;AAEX,gBAAQ,8BAAA,CAAA,WAAA;;AAER,kBAAU,8BAAA,CAAA,aAAA;;AAEV,oBAAY,8BAAA,CAAA,uBAAA;;AAEZ,8BAAsB,8BAAA,CAAA,yBAAA;;AAEtB,6BAAqB,8BAAA,CAAA,wBAAA;;AAErB,gCAAwB,8BAAA,CAAA,2BAAA;;AAExB,qBAAa,8BAAA,CAAA,gBAAA;;AAEb,kBAAU,8BAAA,CAAA,aAAA;;AAEV,oBAAY,8BAAA,CAAA,eAAA;;AAEZ,kBAAU,8BAAA,CAAA,aAAA;;AAEV,sBAAc,8BAAA,CAAA,iBAAA;;AAEd,kBAAU,8BAAA,CAAA,aAAA;;AAEV,sBAAc,8BAAA,CAAA,iBAAA;;AAEd,yBAAiB,8BAAA,CAAA,oBAAA;;AAEjB,uBAAe,8BAAA,CAAA,kBAAA;;AAEf,uBAAe,8BAAA,CAAA,kBAAA;;AAEf,yBAAiB,8BAAA,CAAA,oBAAA;;AAEjB,gBAAQ,8BAAA,CAAA,WAAA;;AAER,wBAAgB,8BAAA,CAAA,mBAAA;;AAEhB,gBAAQ,8BAAA,CAAA,WAAA;;;;;AAIT;;ACjVD;;;;;;;;;;;;;;AAcG;AACH,cAAA,aAAA;AAEE;AAGwC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,iBAAA;AAQxC;AAUA,kBAAU,sBAAA,CAAA,aAAA;AACV,mBAAW,sBAAA,CAAA,oBAAA;AACX,qBAAa,sBAAA,CAAA,gBAAA;AACb,oBAAY,sBAAA,CAAA,eAAA;AACZ,sBAAc,sBAAA,CAAA,iBAAA;AACd,kBAAU,sBAAA,CAAA,mBAAA;;;;;AAIX;;AC9CD;;;;;;;;;;AAUG;AACH,cAAA,eAAA;AAEE;AAG0C,kCAAA,SAAA,0BAAA,SAAA,iBAAA,mBAAA;AAQ1C;AAUA,oBAAY,wBAAA,CAAA,eAAA;AACZ,gBAAQ,wBAAA,CAAA,WAAA;AACR,uBAAe,wBAAA,CAAA,kBAAA;AACf,sBAAc,wBAAA,CAAA,iBAAA;AACd,kBAAU,wBAAA,CAAA,aAAA;AACV,mBAAW,wBAAA,CAAA,cAAA;AACX,sBAAc,wBAAA,CAAA,iBAAA;AACd,oBAAY,wBAAA,CAAA,eAAA;AACZ,uBAAe,wBAAA,CAAA,kBAAA;AACf,uBAAe,wBAAA,CAAA,kBAAA;AACf,yBAAiB,wBAAA,CAAA,oBAAA;AACjB,sBAAc,wBAAA,CAAA,wBAAA;AACd,kBAAU,wBAAA,CAAA,oBAAA;AACV,mBAAW,wBAAA,CAAA,qBAAA;AACX,kBAAU,wBAAA,CAAA,oBAAA;AACV,sBAAc,wBAAA,CAAA,wBAAA;AACd,mBAAW,wBAAA,CAAA,qBAAA;AACX,4BAAoB,wBAAA,CAAA,8BAAA;AACpB,iBAAS,wBAAA,CAAA,YAAA;AACT,uBAAe,wBAAA,CAAA,yBAAA;AACf,kBAAU,wBAAA,CAAA,aAAA;AACV,mBAAW,wBAAA,CAAA,cAAA;AACX,uBAAe,wBAAA,CAAA,kBAAA;AACf,oBAAY,wBAAA,CAAA,eAAA;AACZ,0BAAkB,wBAAA,CAAA,qBAAA;;;;;AAInB;;AC/DD;;;;;;;;;;AAUG;AACH,cAAA,UAAA;AAEE;AAGqC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,cAAA;AAQrC;AAUA,oBAAY,mBAAA,CAAA,eAAA;AACZ,oBAAY,mBAAA,CAAA,eAAA;AACZ,yBAAiB,mBAAA,CAAA,oBAAA;AACjB,iBAAS,mBAAA,CAAA,YAAA;AACT,uBAAe,mBAAA,CAAA,kBAAA;AACf,yBAAiB,mBAAA,CAAA,oBAAA;AACjB,oBAAY,mBAAA,CAAA,eAAA;AACZ,+BAAuB,mBAAA,CAAA,0BAAA;AACvB,2BAAmB,mBAAA,CAAA,sBAAA;AACnB,kBAAU,mBAAA,CAAA,aAAA;AACV,uBAAe,mBAAA,CAAA,kBAAA;AACf,qBAAa,mBAAA,CAAA,gBAAA;AACb,mBAAW,mBAAA,CAAA,cAAA;AACX,sBAAc,mBAAA,CAAA,iBAAA;AACd,4BAAoB,mBAAA,CAAA,uBAAA;AACpB,sBAAc,mBAAA,CAAA,iBAAA;AACd,qBAAa,mBAAA,CAAA,gBAAA;AACb,wBAAgB,mBAAA,CAAA,mBAAA;AAChB,qBAAa,mBAAA,CAAA,gBAAA;AACb,yBAAiB,mBAAA,CAAA,uBAAA;AACjB,0BAAkB,mBAAA,CAAA,qBAAA;AAClB,iBAAS,mBAAA,CAAA,eAAA;AACT,0BAAkB,mBAAA,CAAA,qBAAA;AAClB,wBAAgB,mBAAA,CAAA,mBAAA;;;;;AAIjB;;AC7DD;;;;;;;;;;AAUG;AACH,cAAA,cAAA;AAEE;AAGyC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,kBAAA;AAQzC;AAUA,iBAAS,uBAAA,CAAA,YAAA;AACT,wBAAgB,uBAAA,CAAA,mBAAA;AAChB,yBAAiB,uBAAA,CAAA,oBAAA;AACjB,oBAAY,uBAAA,CAAA,eAAA;AACZ,sBAAc,uBAAA,CAAA,iBAAA;AACd,gBAAQ,uBAAA,CAAA,WAAA;AACR,iBAAS,uBAAA,CAAA,mBAAA;AACT,sBAAc,uBAAA,CAAA,iBAAA;AACd,oBAAY,uBAAA,CAAA,eAAA;AACZ,kBAAU,uBAAA,CAAA,aAAA;;;;;AAIX;;AC/CD;;;;;;;;;;AAUG;AACH,cAAA,kBAAA;AAEE;AAG6C,kCAAA,SAAA,0BAAA,SAAA,iBAAA,sBAAA;AAQ7C;AAUA,qBAAa,2BAAA,CAAA,gBAAA;AACb,qBAAa,2BAAA,CAAA,gBAAA;AACb,iBAAS,2BAAA,CAAA,YAAA;AACT,mBAAW,2BAAA,CAAA,cAAA;AACX,kBAAU,2BAAA,CAAA,mBAAA;AACV,oBAAY,2BAAA,CAAA,sBAAA;AACZ,oBAAY,2BAAA,CAAA,eAAA;AACZ,yBAAiB,2BAAA,CAAA,oBAAA;AACjB,wBAAgB,2BAAA,CAAA,mBAAA;AAChB,yBAAiB,2BAAA,CAAA,oBAAA;AACjB,0BAAkB,2BAAA,CAAA,qBAAA;AAClB,yBAAiB,2BAAA,CAAA,oBAAA;AACjB,yBAAiB,2BAAA,CAAA,oBAAA;AACjB,0BAAkB,2BAAA,CAAA,qBAAA;AAClB,sBAAc,2BAAA,CAAA,oBAAA;AACd,8BAAsB,2BAAA,CAAA,yBAAA;AACtB,wBAAgB,2BAAA,CAAA,mBAAA;AAChB,qBAAa,2BAAA,CAAA,gBAAA;AACb,qBAAa,2BAAA,CAAA,gBAAA;;;;;AAId;;ACxDD;;;;;;;;;;AAUG;AACH,cAAA,oBAAA;AAEE;AAG+C,kCAAA,SAAA,0BAAA,SAAA,iBAAA,wBAAA;AAQ/C;AAUA,oBAAY,6BAAA,CAAA,eAAA;AACZ,yBAAiB,6BAAA,CAAA,oBAAA;AACjB,kBAAU,6BAAA,CAAA,aAAA;AACV,wBAAgB,6BAAA,CAAA,mBAAA;AAChB,yBAAiB,6BAAA,CAAA,oBAAA;AACjB,yBAAiB,6BAAA,CAAA,oBAAA;AACjB,2BAAmB,6BAAA,CAAA,sBAAA;AACnB,oBAAY,6BAAA,CAAA,eAAA;AACZ,gCAAwB,6BAAA,CAAA,2BAAA;AACxB,0BAAkB,6BAAA,CAAA,qBAAA;AAClB,wBAAgB,6BAAA,CAAA,mBAAA;AAChB,mBAAW,6BAAA,CAAA,cAAA;AACX,iBAAS,6BAAA,CAAA,YAAA;AACT,oBAAY,6BAAA,CAAA,eAAA;AACZ,4BAAoB,6BAAA,CAAA,uBAAA;;;;;AAIrB;;ACpDD;;;;;;;;;;AAUG;AACH,cAAA,YAAA;AAEE;AAGuC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,gBAAA;AAQvC;AAUA,wBAAgB,qBAAA,CAAA,mBAAA;AAChB,uBAAe,qBAAA,CAAA,kBAAA;AACf,uBAAe,qBAAA,CAAA,kBAAA;AACf,qBAAa,qBAAA,CAAA,gBAAA;AACb,0BAAkB,qBAAA,CAAA,qBAAA;AAClB,oBAAY,qBAAA,CAAA,eAAA;AACZ,uBAAe,qBAAA,CAAA,kBAAA;AACf,sBAAc,qBAAA,CAAA,iBAAA;AACd,8BAAsB,qBAAA,CAAA,yBAAA;;;;;AAIvB;;AC9CD;;;;;;;;;;AAUG;AACH,cAAA,YAAA;AAEE;AAGuC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,gBAAA;AAQvC;AAUA,iBAAS,qBAAA,CAAA,YAAA;AACT,mBAAW,qBAAA,CAAA,kBAAA;AACX,0BAAkB,qBAAA,CAAA,yBAAA;AAClB,qBAAa,qBAAA,CAAA,oBAAA;AACb,gBAAQ,qBAAA,CAAA,eAAA;AACR,oBAAY,qBAAA,CAAA,eAAA;AACZ,yBAAiB,qBAAA,CAAA,oBAAA;AACjB,wBAAgB,qBAAA,CAAA,mBAAA;AAChB,mBAAW,qBAAA,CAAA,cAAA;AACX,qBAAa,qBAAA,CAAA,gBAAA;AACb,yBAAiB,qBAAA,CAAA,oBAAA;AACjB,4BAAoB,qBAAA,CAAA,uBAAA;AACpB,mBAAW,qBAAA,CAAA,cAAA;;;;;AAIZ;;AClDD;;;;;;;;;;AAUG;AACH,cAAA,aAAA;AAEE;AAGwC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,iBAAA;AAQxC;AAUA,kBAAU,sBAAA,CAAA,aAAA;AACV,kBAAU,sBAAA,CAAA,kBAAA;AACV,kBAAU,sBAAA,CAAA,kBAAA;AACV,sBAAc,sBAAA,CAAA,iBAAA;AACd,gBAAQ,sBAAA,CAAA,WAAA;AACR,mBAAW,sBAAA,CAAA,cAAA;AACX,sBAAc,sBAAA,CAAA,iBAAA;AACd,oBAAY,sBAAA,CAAA,qBAAA;AACZ,sBAAc,sBAAA,CAAA,sBAAA;AACd,kBAAU,sBAAA,CAAA,aAAA;AACV,iBAAS,sBAAA,CAAA,kBAAA;AACT,kBAAU,sBAAA,CAAA,kBAAA;;;;;AAIX;;ACjDD;;;;;;;;;;AAUG;AACH,cAAA,gBAAA;AAEE;AAG2C,kCAAA,SAAA,0BAAA,SAAA,iBAAA,oBAAA;AAQ3C;AAUA,qBAAa,yBAAA,CAAA,gBAAA;AACb,yBAAiB,yBAAA,CAAA,oBAAA;AACjB,wBAAgB,yBAAA,CAAA,mBAAA;AAChB,qBAAa,yBAAA,CAAA,gBAAA;AACb,4BAAoB,yBAAA,CAAA,uBAAA;AACpB,mBAAW,yBAAA,CAAA,sBAAA;AACX,mBAAW,yBAAA,CAAA,sBAAA;AACX,mBAAW,yBAAA,CAAA,sBAAA;AACX,qBAAa,yBAAA,CAAA,wBAAA;AACb,qBAAa,yBAAA,CAAA,wBAAA;AACb,wBAAgB,yBAAA,CAAA,2BAAA;AAChB,iBAAS,yBAAA,CAAA,YAAA;;;;;AAIV;;ACjDD;;;;;;;;;;AAUG;AACH,cAAA,cAAA;AAEE;AAGyC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,kBAAA;AAQzC;AAUA,qBAAa,uBAAA,CAAA,gBAAA;AACb,uBAAe,uBAAA,CAAA,kBAAA;AACf,iBAAS,uBAAA,CAAA,YAAA;AACT,uBAAe,uBAAA,CAAA,kBAAA;AACf,oBAAY,uBAAA,CAAA,eAAA;AACZ,qBAAa,uBAAA,CAAA,gBAAA;AACb,+BAAuB,uBAAA,CAAA,0BAAA;;;;;AAIxB;;AC5CD;;;;;;;;;;AAUG;AACH,cAAA,cAAA;AAEE;AAGyC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,kBAAA;AAQzC;AAUA,mBAAW,uBAAA,CAAA,cAAA;AACX,mBAAW,uBAAA,CAAA,cAAA;AACX,mBAAW,uBAAA,CAAA,cAAA;AACX,kBAAU,uBAAA,CAAA,aAAA;AACV,gCAAwB,uBAAA,CAAA,2BAAA;AACxB,sBAAc,uBAAA,CAAA,iBAAA;AACd,2BAAmB,uBAAA,CAAA,sBAAA;AACnB,qBAAa,uBAAA,CAAA,uBAAA;AACb,2BAAmB,uBAAA,CAAA,sBAAA;AACnB,sBAAc,uBAAA,CAAA,iBAAA;AACd,wBAAgB,uBAAA,CAAA,mBAAA;AAChB,sBAAc,uBAAA,CAAA,iBAAA;;;;;AAIf;;ACjDD;;;;;;;;;;;;;;AAcG;AACH,cAAA,YAAA;AAEE;AAGuC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,gBAAA;AAQvC;AAUA,kBAAU,qBAAA,CAAA,aAAA;AACV,wBAAgB,qBAAA,CAAA,mBAAA;AAChB,sBAAc,qBAAA,CAAA,iBAAA;AACd,oBAAY,qBAAA,CAAA,eAAA;AACZ,yBAAiB,qBAAA,CAAA,oBAAA;AACjB,8BAAsB,qBAAA,CAAA,yBAAA;AACtB,oBAAY,qBAAA,CAAA,oBAAA;AACZ,iBAAS,qBAAA,CAAA,iBAAA;AACT,qBAAa,qBAAA,CAAA,qBAAA;AACb,0BAAkB,qBAAA,CAAA,qBAAA;AAClB,kBAAU,qBAAA,CAAA,aAAA;AACV,uBAAe,qBAAA,CAAA,kBAAA;AACf,0BAAkB,qBAAA,CAAA,qBAAA;AAClB,qBAAa,qBAAA,CAAA,gBAAA;;;;;AAId;;ACvDD;;;;;;;;;;AAUG;AACH,cAAA,aAAA;AAEE;AAGwC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,iBAAA;AAQxC;AAUA,mBAAW,sBAAA,CAAA,cAAA;AACX,wBAAgB,sBAAA,CAAA,mBAAA;AAChB,8BAAsB,sBAAA,CAAA,yBAAA;AACtB,oBAAY,sBAAA,CAAA,eAAA;;;;;AAIb;;ACzCD;;;;;;;;;;AAUG;AACH,cAAA,aAAA;AAEE;AAGwC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,iBAAA;AAQxC;AAUA,kBAAU,sBAAA,CAAA,aAAA;AACV,mBAAW,sBAAA,CAAA,cAAA;AACX,qBAAa,sBAAA,CAAA,gBAAA;AACb,sBAAc,sBAAA,CAAA,iBAAA;AACd,yBAAiB,sBAAA,CAAA,oBAAA;AACjB,oBAAY,sBAAA,CAAA,eAAA;AACZ,oBAAY,sBAAA,CAAA,eAAA;AACZ,oBAAY,sBAAA,CAAA,eAAA;AACZ,iBAAS,sBAAA,CAAA,kBAAA;AACT,gCAAwB,sBAAA,CAAA,2BAAA;AACxB,yBAAiB,sBAAA,CAAA,oBAAA;AACjB,6BAAqB,sBAAA,CAAA,wBAAA;AACrB,wBAAgB,sBAAA,CAAA,mBAAA;AAChB,yBAAiB,sBAAA,CAAA,oBAAA;AACjB,sBAAc,sBAAA,CAAA,iBAAA;AACd,0BAAkB,sBAAA,CAAA,qBAAA;AAClB,6BAAqB,sBAAA,CAAA,wBAAA;;;;;AAItB;;ACtDD;;;;;;;;;;AAUG;AACH,cAAA,iBAAA;AAEE;AAG4C,kCAAA,SAAA,0BAAA,SAAA,iBAAA,qBAAA;AAQ5C;AAUA,uBAAe,0BAAA,CAAA,kBAAA;AACf,iBAAS,0BAAA,CAAA,YAAA;AACT,wBAAgB,0BAAA,CAAA,mBAAA;AAChB,0BAAkB,0BAAA,CAAA,qBAAA;AAClB,mBAAW,0BAAA,CAAA,cAAA;AACX,yBAAiB,0BAAA,CAAA,oBAAA;AACjB,uBAAe,0BAAA,CAAA,kBAAA;;;;;AAIhB;;AC5CD;;;;;;;;;;AAUG;AACH,cAAA,iBAAA;AAEE;AAG4C,kCAAA,SAAA,0BAAA,SAAA,iBAAA,qBAAA;AAQ5C;AAUA,mBAAW,0BAAA,CAAA,cAAA;AACX,mBAAW,0BAAA,CAAA,cAAA;AACX,uBAAe,0BAAA,CAAA,kBAAA;AACf,uBAAe,0BAAA,CAAA,kBAAA;AACf,uBAAe,0BAAA,CAAA,kBAAA;AACf,oBAAY,0BAAA,CAAA,eAAA;AACZ,oBAAY,0BAAA,CAAA,eAAA;AACZ,oBAAY,0BAAA,CAAA,eAAA;AACZ,wBAAgB,0BAAA,CAAA,mBAAA;AAChB,4BAAoB,0BAAA,CAAA,uBAAA;AACpB,iBAAS,0BAAA,CAAA,mBAAA;AACT,8BAAsB,0BAAA,CAAA,yBAAA;AACtB,sBAAc,0BAAA,CAAA,iBAAA;AACd,qBAAa,0BAAA,CAAA,gBAAA;AACb,mBAAW,0BAAA,CAAA,cAAA;AACX,sBAAc,0BAAA,CAAA,iBAAA;AACd,iBAAS,0BAAA,CAAA,YAAA;;;;;AAIV;;ACtDD;;;;;;;;;;;;;;AAcG;AACH,cAAA,UAAA;AAEE;AAGqC,kCAAA,SAAA,0BAAA,SAAA,iBAAA,cAAA;AAQrC;AAUA,iBAAS,mBAAA,CAAA,YAAA;AACT,iBAAS,mBAAA,CAAA,eAAA;AACT,gBAAQ,mBAAA,CAAA,WAAA;AACR,kBAAU,mBAAA,CAAA,aAAA;AACV,oBAAY,mBAAA,CAAA,kBAAA;;;;;AAIb;;;;"}
|
package/package.json
CHANGED