@23blocks/angular 1.1.2 → 1.1.3
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/dist/index.d.ts +1 -0
- package/dist/index.esm.js +4230 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/lib/assets/assets.service.d.ts +58 -0
- package/dist/src/lib/assets/assets.service.d.ts.map +1 -0
- package/dist/{lib/assets/index.js → src/lib/assets/index.d.ts} +1 -2
- package/dist/src/lib/assets/index.d.ts.map +1 -0
- package/dist/src/lib/authentication/authentication.service.d.ts +105 -0
- package/dist/src/lib/authentication/authentication.service.d.ts.map +1 -0
- package/dist/{lib/authentication/index.js → src/lib/authentication/index.d.ts} +1 -2
- package/dist/src/lib/authentication/index.d.ts.map +1 -0
- package/dist/src/lib/campaigns/campaigns.service.d.ts +66 -0
- package/dist/src/lib/campaigns/campaigns.service.d.ts.map +1 -0
- package/dist/{lib/campaigns/index.js → src/lib/campaigns/index.d.ts} +1 -2
- package/dist/src/lib/campaigns/index.d.ts.map +1 -0
- package/dist/src/lib/company/company.service.d.ts +65 -0
- package/dist/src/lib/company/company.service.d.ts.map +1 -0
- package/dist/{lib/company/index.js → src/lib/company/index.d.ts} +1 -2
- package/dist/src/lib/company/index.d.ts.map +1 -0
- package/dist/src/lib/content/content.service.d.ts +67 -0
- package/dist/src/lib/content/content.service.d.ts.map +1 -0
- package/dist/{lib/content/index.js → src/lib/content/index.d.ts} +1 -2
- package/dist/src/lib/content/index.d.ts.map +1 -0
- package/dist/src/lib/conversations/conversations.service.d.ts +74 -0
- package/dist/src/lib/conversations/conversations.service.d.ts.map +1 -0
- package/dist/{lib/conversations/index.js → src/lib/conversations/index.d.ts} +1 -2
- package/dist/src/lib/conversations/index.d.ts.map +1 -0
- package/dist/src/lib/crm/crm.service.d.ts +84 -0
- package/dist/src/lib/crm/crm.service.d.ts.map +1 -0
- package/dist/{lib/crm/index.js → src/lib/crm/index.d.ts} +1 -2
- package/dist/src/lib/crm/index.d.ts.map +1 -0
- package/dist/src/lib/files/files.service.d.ts +62 -0
- package/dist/src/lib/files/files.service.d.ts.map +1 -0
- package/dist/{lib/files/index.js → src/lib/files/index.d.ts} +1 -2
- package/dist/src/lib/files/index.d.ts.map +1 -0
- package/dist/src/lib/forms/forms.service.d.ts +60 -0
- package/dist/src/lib/forms/forms.service.d.ts.map +1 -0
- package/dist/src/lib/forms/index.d.ts +2 -0
- package/dist/src/lib/forms/index.d.ts.map +1 -0
- package/dist/src/lib/geolocation/geolocation.service.d.ts +93 -0
- package/dist/src/lib/geolocation/geolocation.service.d.ts.map +1 -0
- package/dist/{lib/geolocation/index.js → src/lib/geolocation/index.d.ts} +1 -2
- package/dist/src/lib/geolocation/index.d.ts.map +1 -0
- package/dist/src/lib/index.d.ts +22 -0
- package/dist/src/lib/index.d.ts.map +1 -0
- package/dist/{lib/jarvis/index.js → src/lib/jarvis/index.d.ts} +1 -2
- package/dist/src/lib/jarvis/index.d.ts.map +1 -0
- package/dist/src/lib/jarvis/jarvis.service.d.ts +69 -0
- package/dist/src/lib/jarvis/jarvis.service.d.ts.map +1 -0
- package/dist/{lib/onboarding/index.js → src/lib/onboarding/index.d.ts} +1 -2
- package/dist/src/lib/onboarding/index.d.ts.map +1 -0
- package/dist/src/lib/onboarding/onboarding.service.d.ts +68 -0
- package/dist/src/lib/onboarding/onboarding.service.d.ts.map +1 -0
- package/dist/{lib/products/index.js → src/lib/products/index.d.ts} +1 -2
- package/dist/src/lib/products/index.d.ts.map +1 -0
- package/dist/src/lib/products/products.service.d.ts +101 -0
- package/dist/src/lib/products/products.service.d.ts.map +1 -0
- package/dist/src/lib/providers.d.ts +97 -0
- package/dist/src/lib/providers.d.ts.map +1 -0
- package/dist/{lib/rewards/index.js → src/lib/rewards/index.d.ts} +1 -2
- package/dist/src/lib/rewards/index.d.ts.map +1 -0
- package/dist/src/lib/rewards/rewards.service.d.ts +62 -0
- package/dist/src/lib/rewards/rewards.service.d.ts.map +1 -0
- package/dist/{lib/sales/index.js → src/lib/sales/index.d.ts} +1 -2
- package/dist/src/lib/sales/index.d.ts.map +1 -0
- package/dist/src/lib/sales/sales.service.d.ts +62 -0
- package/dist/src/lib/sales/sales.service.d.ts.map +1 -0
- package/dist/{lib/search/index.js → src/lib/search/index.d.ts} +1 -2
- package/dist/src/lib/search/index.d.ts.map +1 -0
- package/dist/src/lib/search/search.service.d.ts +80 -0
- package/dist/src/lib/search/search.service.d.ts.map +1 -0
- package/dist/src/lib/simple-providers.d.ts +202 -0
- package/dist/src/lib/simple-providers.d.ts.map +1 -0
- package/dist/src/lib/tokens.d.ts +114 -0
- package/dist/src/lib/tokens.d.ts.map +1 -0
- package/dist/{lib/university/index.js → src/lib/university/index.d.ts} +1 -2
- package/dist/src/lib/university/index.d.ts.map +1 -0
- package/dist/src/lib/university/university.service.d.ts +75 -0
- package/dist/src/lib/university/university.service.d.ts.map +1 -0
- package/dist/{lib/wallet/index.js → src/lib/wallet/index.d.ts} +1 -2
- package/dist/src/lib/wallet/index.d.ts.map +1 -0
- package/dist/src/lib/wallet/wallet.service.d.ts +60 -0
- package/dist/src/lib/wallet/wallet.service.d.ts.map +1 -0
- package/package.json +10 -8
- package/dist/index.js +0 -3
- package/dist/index.js.map +0 -1
- package/dist/lib/assets/assets.service.js +0 -123
- package/dist/lib/assets/assets.service.js.map +0 -1
- package/dist/lib/assets/index.js.map +0 -1
- package/dist/lib/authentication/authentication.service.js +0 -209
- package/dist/lib/authentication/authentication.service.js.map +0 -1
- package/dist/lib/authentication/index.js.map +0 -1
- package/dist/lib/campaigns/campaigns.service.js +0 -150
- package/dist/lib/campaigns/campaigns.service.js.map +0 -1
- package/dist/lib/campaigns/index.js.map +0 -1
- package/dist/lib/company/company.service.js +0 -150
- package/dist/lib/company/company.service.js.map +0 -1
- package/dist/lib/company/index.js.map +0 -1
- package/dist/lib/content/content.service.js +0 -153
- package/dist/lib/content/content.service.js.map +0 -1
- package/dist/lib/content/index.js.map +0 -1
- package/dist/lib/conversations/conversations.service.js +0 -177
- package/dist/lib/conversations/conversations.service.js.map +0 -1
- package/dist/lib/conversations/index.js.map +0 -1
- package/dist/lib/crm/crm.service.js +0 -210
- package/dist/lib/crm/crm.service.js.map +0 -1
- package/dist/lib/crm/index.js.map +0 -1
- package/dist/lib/files/files.service.js +0 -120
- package/dist/lib/files/files.service.js.map +0 -1
- package/dist/lib/files/index.js.map +0 -1
- package/dist/lib/forms/forms.service.js +0 -132
- package/dist/lib/forms/forms.service.js.map +0 -1
- package/dist/lib/forms/index.js +0 -3
- package/dist/lib/forms/index.js.map +0 -1
- package/dist/lib/geolocation/geolocation.service.js +0 -240
- package/dist/lib/geolocation/geolocation.service.js.map +0 -1
- package/dist/lib/geolocation/index.js.map +0 -1
- package/dist/lib/index.js +0 -36
- package/dist/lib/index.js.map +0 -1
- package/dist/lib/jarvis/index.js.map +0 -1
- package/dist/lib/jarvis/jarvis.service.js +0 -162
- package/dist/lib/jarvis/jarvis.service.js.map +0 -1
- package/dist/lib/onboarding/index.js.map +0 -1
- package/dist/lib/onboarding/onboarding.service.js +0 -132
- package/dist/lib/onboarding/onboarding.service.js.map +0 -1
- package/dist/lib/products/index.js.map +0 -1
- package/dist/lib/products/products.service.js +0 -255
- package/dist/lib/products/products.service.js.map +0 -1
- package/dist/lib/providers.js +0 -286
- package/dist/lib/providers.js.map +0 -1
- package/dist/lib/rewards/index.js.map +0 -1
- package/dist/lib/rewards/rewards.service.js +0 -138
- package/dist/lib/rewards/rewards.service.js.map +0 -1
- package/dist/lib/sales/index.js.map +0 -1
- package/dist/lib/sales/sales.service.js +0 -138
- package/dist/lib/sales/sales.service.js.map +0 -1
- package/dist/lib/search/index.js.map +0 -1
- package/dist/lib/search/search.service.js +0 -106
- package/dist/lib/search/search.service.js.map +0 -1
- package/dist/lib/simple-providers.js +0 -498
- package/dist/lib/simple-providers.js.map +0 -1
- package/dist/lib/tokens.js +0 -85
- package/dist/lib/tokens.js.map +0 -1
- package/dist/lib/university/index.js.map +0 -1
- package/dist/lib/university/university.service.js +0 -174
- package/dist/lib/university/university.service.js.map +0 -1
- package/dist/lib/wallet/index.js.map +0 -1
- package/dist/lib/wallet/wallet.service.js +0 -111
- package/dist/lib/wallet/wallet.service.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/search/index.ts"],"sourcesContent":["export { SearchService } from './search.service.js';\n"],"names":["SearchService"],"rangeMappings":"","mappings":"AAAA,SAASA,aAAa,QAAQ,sBAAsB"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { _ as _ts_decorate } from "@swc/helpers/_/_ts_decorate";
|
|
2
|
-
import { _ as _ts_metadata } from "@swc/helpers/_/_ts_metadata";
|
|
3
|
-
import { _ as _ts_param } from "@swc/helpers/_/_ts_param";
|
|
4
|
-
import { Injectable, Inject, Optional } from '@angular/core';
|
|
5
|
-
import { from } from 'rxjs';
|
|
6
|
-
import { createSearchBlock } from '@23blocks/block-search';
|
|
7
|
-
import { TRANSPORT, SEARCH_TRANSPORT, SEARCH_CONFIG } from '../tokens.js';
|
|
8
|
-
export class SearchService {
|
|
9
|
-
/**
|
|
10
|
-
* Ensure the service is configured, throw helpful error if not
|
|
11
|
-
*/ ensureConfigured() {
|
|
12
|
-
if (!this.block) {
|
|
13
|
-
throw new Error('[23blocks] SearchService is not configured. ' + "Add 'urls.search' to your provideBlocks23() configuration.");
|
|
14
|
-
}
|
|
15
|
-
return this.block;
|
|
16
|
-
}
|
|
17
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
18
|
-
// Search Operations
|
|
19
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
20
|
-
/**
|
|
21
|
-
* Perform a search query
|
|
22
|
-
*/ search(request) {
|
|
23
|
-
return from(this.ensureConfigured().search.search(request));
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Get search suggestions for autocomplete
|
|
27
|
-
*/ suggest(query, limit) {
|
|
28
|
-
return from(this.ensureConfigured().search.suggest(query, limit));
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Get available entity types for filtering
|
|
32
|
-
*/ getEntityTypes() {
|
|
33
|
-
return from(this.ensureConfigured().search.entityTypes());
|
|
34
|
-
}
|
|
35
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
36
|
-
// Search History
|
|
37
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
38
|
-
/**
|
|
39
|
-
* Get recent search queries
|
|
40
|
-
*/ getLastQueries(limit) {
|
|
41
|
-
return from(this.ensureConfigured().history.getLastQueries(limit));
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Get the full history of search queries
|
|
45
|
-
*/ getQueryHistory(params) {
|
|
46
|
-
return from(this.ensureConfigured().history.getHistory(params));
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Clear search history
|
|
50
|
-
*/ clearHistory() {
|
|
51
|
-
return from(this.ensureConfigured().history.clear());
|
|
52
|
-
}
|
|
53
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
54
|
-
// Favorites
|
|
55
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
56
|
-
/**
|
|
57
|
-
* List user's favorite entities
|
|
58
|
-
*/ listFavorites() {
|
|
59
|
-
return from(this.ensureConfigured().favorites.list());
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Add an entity to favorites
|
|
63
|
-
*/ addFavorite(request) {
|
|
64
|
-
return from(this.ensureConfigured().favorites.add(request));
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Remove an entity from favorites
|
|
68
|
-
*/ removeFavorite(id) {
|
|
69
|
-
return from(this.ensureConfigured().favorites.remove(id));
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Check if an entity is favorited
|
|
73
|
-
*/ isFavorite(entityUniqueId) {
|
|
74
|
-
return from(this.ensureConfigured().favorites.isFavorite(entityUniqueId));
|
|
75
|
-
}
|
|
76
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
77
|
-
// Direct Block Access (for advanced usage)
|
|
78
|
-
// ─────────────────────────────────────────────────────────────────────────────
|
|
79
|
-
/**
|
|
80
|
-
* Access the underlying block for advanced operations
|
|
81
|
-
*/ get rawBlock() {
|
|
82
|
-
return this.ensureConfigured();
|
|
83
|
-
}
|
|
84
|
-
constructor(serviceTransport, legacyTransport, config){
|
|
85
|
-
const transport = serviceTransport != null ? serviceTransport : legacyTransport;
|
|
86
|
-
this.block = transport ? createSearchBlock(transport, config) : null;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
SearchService = _ts_decorate([
|
|
90
|
-
Injectable({
|
|
91
|
-
providedIn: 'root'
|
|
92
|
-
}),
|
|
93
|
-
_ts_param(0, Optional()),
|
|
94
|
-
_ts_param(0, Inject(SEARCH_TRANSPORT)),
|
|
95
|
-
_ts_param(1, Optional()),
|
|
96
|
-
_ts_param(1, Inject(TRANSPORT)),
|
|
97
|
-
_ts_param(2, Inject(SEARCH_CONFIG)),
|
|
98
|
-
_ts_metadata("design:type", Function),
|
|
99
|
-
_ts_metadata("design:paramtypes", [
|
|
100
|
-
Object,
|
|
101
|
-
Object,
|
|
102
|
-
typeof SearchBlockConfig === "undefined" ? Object : SearchBlockConfig
|
|
103
|
-
])
|
|
104
|
-
], SearchService);
|
|
105
|
-
|
|
106
|
-
//# sourceMappingURL=search.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/search/search.service.ts"],"sourcesContent":["import { Injectable, Inject, Optional } from '@angular/core';\nimport { Observable, from } from 'rxjs';\nimport type { Transport } from '@23blocks/contracts';\nimport {\n createSearchBlock,\n type SearchBlock,\n type SearchBlockConfig,\n type SearchResult,\n type SearchQuery,\n type LastQuery,\n type FavoriteEntity,\n type EntityType,\n type SearchRequest,\n type SearchResponse,\n type AddFavoriteRequest,\n} from '@23blocks/block-search';\nimport { TRANSPORT, SEARCH_TRANSPORT, SEARCH_CONFIG } from '../tokens.js';\n\n/**\n * Angular service wrapping the Search block.\n * Converts Promise-based APIs to RxJS Observables.\n *\n * @example\n * ```typescript\n * @Component({...})\n * export class SearchComponent {\n * results$ = new BehaviorSubject<SearchResult[]>([]);\n *\n * constructor(private searchService: SearchService) {}\n *\n * onSearch(query: string) {\n * this.searchService.search({ query }).subscribe({\n * next: (response) => this.results$.next(response.results),\n * error: (err) => console.error('Search failed:', err),\n * });\n * }\n * }\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 /**\n * Ensure the service is configured, throw helpful error if not\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 // ─────────────────────────────────────────────────────────────────────────────\n // Search Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Perform a search query\n */\n search(request: SearchRequest): Observable<SearchResponse> {\n return from(this.ensureConfigured().search.search(request));\n }\n\n /**\n * Get search suggestions for autocomplete\n */\n suggest(query: string, limit?: number): Observable<SearchResult[]> {\n return from(this.ensureConfigured().search.suggest(query, limit));\n }\n\n /**\n * Get available entity types for filtering\n */\n getEntityTypes(): Observable<EntityType[]> {\n return from(this.ensureConfigured().search.entityTypes());\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Search History\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Get recent search queries\n */\n getLastQueries(limit?: number): Observable<LastQuery[]> {\n return from(this.ensureConfigured().history.getLastQueries(limit));\n }\n\n /**\n * Get the full history of search queries\n */\n getQueryHistory(params?: { page?: number; perPage?: number }): Observable<SearchQuery[]> {\n return from(this.ensureConfigured().history.getHistory(params));\n }\n\n /**\n * Clear search history\n */\n clearHistory(): Observable<void> {\n return from(this.ensureConfigured().history.clear());\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Favorites\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * List user's favorite entities\n */\n listFavorites(): Observable<FavoriteEntity[]> {\n return from(this.ensureConfigured().favorites.list());\n }\n\n /**\n * Add an entity to favorites\n */\n addFavorite(request: AddFavoriteRequest): Observable<FavoriteEntity> {\n return from(this.ensureConfigured().favorites.add(request));\n }\n\n /**\n * Remove an entity from favorites\n */\n removeFavorite(id: string): Observable<void> {\n return from(this.ensureConfigured().favorites.remove(id));\n }\n\n /**\n * Check if an entity is favorited\n */\n isFavorite(entityUniqueId: string): Observable<boolean> {\n return from(this.ensureConfigured().favorites.isFavorite(entityUniqueId));\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Direct Block Access (for advanced usage)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Access the underlying block for advanced operations\n */\n get rawBlock(): SearchBlock {\n return this.ensureConfigured();\n }\n}\n"],"names":["Injectable","Inject","Optional","from","createSearchBlock","TRANSPORT","SEARCH_TRANSPORT","SEARCH_CONFIG","SearchService","ensureConfigured","block","Error","search","request","suggest","query","limit","getEntityTypes","entityTypes","getLastQueries","history","getQueryHistory","params","getHistory","clearHistory","clear","listFavorites","favorites","list","addFavorite","add","removeFavorite","id","remove","isFavorite","entityUniqueId","rawBlock","constructor","serviceTransport","legacyTransport","config","transport","providedIn"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;AAAA,SAASA,UAAU,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,gBAAgB;AAC7D,SAAqBC,IAAI,QAAQ,OAAO;AAExC,SACEC,iBAAiB,QAWZ,yBAAyB;AAChC,SAASC,SAAS,EAAEC,gBAAgB,EAAEC,aAAa,QAAQ,eAAe;AAwB1E,OAAO,MAAMC;IAYX;;GAEC,GACD,AAAQC,mBAAgC;QACtC,IAAI,CAAC,IAAI,CAACC,KAAK,EAAE;YACf,MAAM,IAAIC,MACR,iDACA;QAEJ;QACA,OAAO,IAAI,CAACD,KAAK;IACnB;IAEA,gFAAgF;IAChF,oBAAoB;IACpB,gFAAgF;IAEhF;;GAEC,GACDE,OAAOC,OAAsB,EAA8B;QACzD,OAAOV,KAAK,IAAI,CAACM,gBAAgB,GAAGG,MAAM,CAACA,MAAM,CAACC;IACpD;IAEA;;GAEC,GACDC,QAAQC,KAAa,EAAEC,KAAc,EAA8B;QACjE,OAAOb,KAAK,IAAI,CAACM,gBAAgB,GAAGG,MAAM,CAACE,OAAO,CAACC,OAAOC;IAC5D;IAEA;;GAEC,GACDC,iBAA2C;QACzC,OAAOd,KAAK,IAAI,CAACM,gBAAgB,GAAGG,MAAM,CAACM,WAAW;IACxD;IAEA,gFAAgF;IAChF,iBAAiB;IACjB,gFAAgF;IAEhF;;GAEC,GACDC,eAAeH,KAAc,EAA2B;QACtD,OAAOb,KAAK,IAAI,CAACM,gBAAgB,GAAGW,OAAO,CAACD,cAAc,CAACH;IAC7D;IAEA;;GAEC,GACDK,gBAAgBC,MAA4C,EAA6B;QACvF,OAAOnB,KAAK,IAAI,CAACM,gBAAgB,GAAGW,OAAO,CAACG,UAAU,CAACD;IACzD;IAEA;;GAEC,GACDE,eAAiC;QAC/B,OAAOrB,KAAK,IAAI,CAACM,gBAAgB,GAAGW,OAAO,CAACK,KAAK;IACnD;IAEA,gFAAgF;IAChF,YAAY;IACZ,gFAAgF;IAEhF;;GAEC,GACDC,gBAA8C;QAC5C,OAAOvB,KAAK,IAAI,CAACM,gBAAgB,GAAGkB,SAAS,CAACC,IAAI;IACpD;IAEA;;GAEC,GACDC,YAAYhB,OAA2B,EAA8B;QACnE,OAAOV,KAAK,IAAI,CAACM,gBAAgB,GAAGkB,SAAS,CAACG,GAAG,CAACjB;IACpD;IAEA;;GAEC,GACDkB,eAAeC,EAAU,EAAoB;QAC3C,OAAO7B,KAAK,IAAI,CAACM,gBAAgB,GAAGkB,SAAS,CAACM,MAAM,CAACD;IACvD;IAEA;;GAEC,GACDE,WAAWC,cAAsB,EAAuB;QACtD,OAAOhC,KAAK,IAAI,CAACM,gBAAgB,GAAGkB,SAAS,CAACO,UAAU,CAACC;IAC3D;IAEA,gFAAgF;IAChF,2CAA2C;IAC3C,gFAAgF;IAEhF;;GAEC,GACD,IAAIC,WAAwB;QAC1B,OAAO,IAAI,CAAC3B,gBAAgB;IAC9B;IAjHA4B,YACE,AAAsCC,gBAAkC,EACxE,AAA+BC,eAAiC,EAChE,AAAuBC,MAAyB,CAChD;QACA,MAAMC,YAAYH,2BAAAA,mBAAoBC;QACtC,IAAI,CAAC7B,KAAK,GAAG+B,YAAYrC,kBAAkBqC,WAAWD,UAAU;IAClE;AA2GF;AArHahC;IADZR,WAAW;QAAE0C,YAAY;IAAO;IAK5BxC,aAAAA;IAAYD,aAAAA,OAAOK;IACnBJ,aAAAA;IAAYD,aAAAA,OAAOI;IACnBJ,aAAAA,OAAOM;;;;;eAAuB,6CAAA;;GANtBC"}
|
|
@@ -1,498 +0,0 @@
|
|
|
1
|
-
import { _ as _extends } from "@swc/helpers/_/_extends";
|
|
2
|
-
import { InjectionToken, makeEnvironmentProviders } from '@angular/core';
|
|
3
|
-
import { createHttpTransport } from '@23blocks/transport-http';
|
|
4
|
-
import { TRANSPORT, // Per-service transport tokens
|
|
5
|
-
AUTHENTICATION_TRANSPORT, SEARCH_TRANSPORT, PRODUCTS_TRANSPORT, CRM_TRANSPORT, CONTENT_TRANSPORT, GEOLOCATION_TRANSPORT, CONVERSATIONS_TRANSPORT, FILES_TRANSPORT, FORMS_TRANSPORT, ASSETS_TRANSPORT, CAMPAIGNS_TRANSPORT, COMPANY_TRANSPORT, REWARDS_TRANSPORT, SALES_TRANSPORT, WALLET_TRANSPORT, JARVIS_TRANSPORT, ONBOARDING_TRANSPORT, UNIVERSITY_TRANSPORT, // Config tokens
|
|
6
|
-
AUTHENTICATION_CONFIG, SEARCH_CONFIG, PRODUCTS_CONFIG, CRM_CONFIG, CONTENT_CONFIG, GEOLOCATION_CONFIG, CONVERSATIONS_CONFIG, FILES_CONFIG, FORMS_CONFIG, ASSETS_CONFIG, CAMPAIGNS_CONFIG, COMPANY_CONFIG, REWARDS_CONFIG, SALES_CONFIG, WALLET_CONFIG, JARVIS_CONFIG, ONBOARDING_CONFIG, UNIVERSITY_CONFIG } from './tokens.js';
|
|
7
|
-
/**
|
|
8
|
-
* Injection token for the token manager (internal use)
|
|
9
|
-
*/ export const TOKEN_MANAGER = new InjectionToken('23blocks.token-manager');
|
|
10
|
-
/**
|
|
11
|
-
* Injection token for provider config
|
|
12
|
-
*/ export const PROVIDER_CONFIG = new InjectionToken('23blocks.provider-config');
|
|
13
|
-
/** @deprecated Use PROVIDER_CONFIG instead */ export const SIMPLE_CONFIG = PROVIDER_CONFIG;
|
|
14
|
-
/**
|
|
15
|
-
* Generate storage key scoped to app and tenant
|
|
16
|
-
*/ function getStorageKey(type, appId, tenantId) {
|
|
17
|
-
const scope = tenantId ? `${appId}_${tenantId}` : appId;
|
|
18
|
-
return `23blocks_${scope}_${type}_token`;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* In-memory storage for SSR
|
|
22
|
-
*/ let MemoryStorage = class MemoryStorage {
|
|
23
|
-
getItem(key) {
|
|
24
|
-
var _this_data_get;
|
|
25
|
-
return (_this_data_get = this.data.get(key)) != null ? _this_data_get : null;
|
|
26
|
-
}
|
|
27
|
-
setItem(key, value) {
|
|
28
|
-
this.data.set(key, value);
|
|
29
|
-
}
|
|
30
|
-
removeItem(key) {
|
|
31
|
-
this.data.delete(key);
|
|
32
|
-
}
|
|
33
|
-
constructor(){
|
|
34
|
-
this.data = new Map();
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* Create a token manager with scoped storage keys and cross-tab sync
|
|
39
|
-
*/ function createTokenManager(appId, storageType, tenantId) {
|
|
40
|
-
const isBrowser = typeof window !== 'undefined' && typeof window.localStorage !== 'undefined';
|
|
41
|
-
const accessTokenKey = getStorageKey('access', appId, tenantId);
|
|
42
|
-
const refreshTokenKey = getStorageKey('refresh', appId, tenantId);
|
|
43
|
-
let storage;
|
|
44
|
-
if (!isBrowser) {
|
|
45
|
-
storage = new MemoryStorage();
|
|
46
|
-
} else {
|
|
47
|
-
switch(storageType){
|
|
48
|
-
case 'sessionStorage':
|
|
49
|
-
storage = window.sessionStorage;
|
|
50
|
-
break;
|
|
51
|
-
case 'memory':
|
|
52
|
-
storage = new MemoryStorage();
|
|
53
|
-
break;
|
|
54
|
-
default:
|
|
55
|
-
storage = window.localStorage;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return {
|
|
59
|
-
getAccessToken () {
|
|
60
|
-
try {
|
|
61
|
-
return storage.getItem(accessTokenKey);
|
|
62
|
-
} catch (e) {
|
|
63
|
-
return null;
|
|
64
|
-
}
|
|
65
|
-
},
|
|
66
|
-
getRefreshToken () {
|
|
67
|
-
try {
|
|
68
|
-
return storage.getItem(refreshTokenKey);
|
|
69
|
-
} catch (e) {
|
|
70
|
-
return null;
|
|
71
|
-
}
|
|
72
|
-
},
|
|
73
|
-
setTokens (accessToken, refreshToken) {
|
|
74
|
-
try {
|
|
75
|
-
storage.setItem(accessTokenKey, accessToken);
|
|
76
|
-
if (refreshToken) {
|
|
77
|
-
storage.setItem(refreshTokenKey, refreshToken);
|
|
78
|
-
}
|
|
79
|
-
} catch (e) {
|
|
80
|
-
console.warn('[23blocks] Unable to store tokens');
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
clearTokens () {
|
|
84
|
-
try {
|
|
85
|
-
storage.removeItem(accessTokenKey);
|
|
86
|
-
storage.removeItem(refreshTokenKey);
|
|
87
|
-
} catch (e) {
|
|
88
|
-
// Silently fail
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
onStorageChange (callback) {
|
|
92
|
-
// Only works in browser with localStorage/sessionStorage
|
|
93
|
-
if (!isBrowser || storageType === 'memory') {
|
|
94
|
-
// Return no-op unsubscribe for SSR/memory storage
|
|
95
|
-
return ()=>{};
|
|
96
|
-
}
|
|
97
|
-
const handler = (event)=>{
|
|
98
|
-
// Only trigger if our keys changed
|
|
99
|
-
if (event.key === accessTokenKey || event.key === refreshTokenKey) {
|
|
100
|
-
callback();
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
window.addEventListener('storage', handler);
|
|
104
|
-
// Return unsubscribe function
|
|
105
|
-
return ()=>{
|
|
106
|
-
window.removeEventListener('storage', handler);
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Create transport with automatic token handling for a specific URL
|
|
113
|
-
*/ function createTransportWithAuth(baseUrl, config, tokenManager) {
|
|
114
|
-
return createHttpTransport({
|
|
115
|
-
baseUrl,
|
|
116
|
-
timeout: config.timeout,
|
|
117
|
-
credentials: config.authMode === 'cookie' ? 'include' : undefined,
|
|
118
|
-
headers: ()=>{
|
|
119
|
-
const headers = _extends({}, config.headers, {
|
|
120
|
-
appid: config.appId
|
|
121
|
-
});
|
|
122
|
-
if (config.tenantId) {
|
|
123
|
-
headers['tenant-id'] = config.tenantId;
|
|
124
|
-
}
|
|
125
|
-
// In token mode, add Authorization header if we have a token
|
|
126
|
-
if (config.authMode !== 'cookie') {
|
|
127
|
-
const token = tokenManager.getAccessToken();
|
|
128
|
-
if (token) {
|
|
129
|
-
headers['Authorization'] = `Bearer ${token}`;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
return headers;
|
|
133
|
-
}
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Provide 23blocks services with simplified configuration.
|
|
138
|
-
*
|
|
139
|
-
* This is the recommended way to set up 23blocks in new Angular applications.
|
|
140
|
-
* It automatically handles token storage and authentication headers.
|
|
141
|
-
*
|
|
142
|
-
* Services are only available if their URL is configured. Accessing a service
|
|
143
|
-
* without a configured URL will throw an error.
|
|
144
|
-
*
|
|
145
|
-
* @example Basic usage with multiple services
|
|
146
|
-
* ```typescript
|
|
147
|
-
* // app.config.ts
|
|
148
|
-
* import { ApplicationConfig } from '@angular/core';
|
|
149
|
-
* import { provideBlocks23 } from '@23blocks/angular';
|
|
150
|
-
*
|
|
151
|
-
* export const appConfig: ApplicationConfig = {
|
|
152
|
-
* providers: [
|
|
153
|
-
* provideBlocks23({
|
|
154
|
-
* appId: 'your-app-id',
|
|
155
|
-
* urls: {
|
|
156
|
-
* authentication: 'https://gateway.23blocks.com',
|
|
157
|
-
* crm: 'https://crm.23blocks.com',
|
|
158
|
-
* products: 'https://products.23blocks.com',
|
|
159
|
-
* },
|
|
160
|
-
* }),
|
|
161
|
-
* ],
|
|
162
|
-
* };
|
|
163
|
-
* ```
|
|
164
|
-
*
|
|
165
|
-
* @example Cookie mode (recommended for security)
|
|
166
|
-
* ```typescript
|
|
167
|
-
* export const appConfig: ApplicationConfig = {
|
|
168
|
-
* providers: [
|
|
169
|
-
* provideBlocks23({
|
|
170
|
-
* appId: 'your-app-id',
|
|
171
|
-
* authMode: 'cookie',
|
|
172
|
-
* urls: {
|
|
173
|
-
* authentication: 'https://gateway.23blocks.com',
|
|
174
|
-
* crm: 'https://crm.23blocks.com',
|
|
175
|
-
* },
|
|
176
|
-
* }),
|
|
177
|
-
* ],
|
|
178
|
-
* };
|
|
179
|
-
* ```
|
|
180
|
-
*/ export function provideBlocks23(config) {
|
|
181
|
-
// Block config for all services
|
|
182
|
-
const blockConfig = {
|
|
183
|
-
appId: config.appId,
|
|
184
|
-
tenantId: config.tenantId
|
|
185
|
-
};
|
|
186
|
-
// Helper to create transport provider for a service URL
|
|
187
|
-
const createTransportProvider = (token, url)=>({
|
|
188
|
-
provide: token,
|
|
189
|
-
useFactory: (tokenManager)=>{
|
|
190
|
-
if (!url) return null;
|
|
191
|
-
return createTransportWithAuth(url, config, tokenManager);
|
|
192
|
-
},
|
|
193
|
-
deps: [
|
|
194
|
-
TOKEN_MANAGER
|
|
195
|
-
]
|
|
196
|
-
});
|
|
197
|
-
const providers = [
|
|
198
|
-
// Store config for injection
|
|
199
|
-
{
|
|
200
|
-
provide: PROVIDER_CONFIG,
|
|
201
|
-
useValue: config
|
|
202
|
-
},
|
|
203
|
-
// Token manager factory - creates singleton within the injector
|
|
204
|
-
{
|
|
205
|
-
provide: TOKEN_MANAGER,
|
|
206
|
-
useFactory: ()=>{
|
|
207
|
-
var _config_storage;
|
|
208
|
-
const storage = (_config_storage = config.storage) != null ? _config_storage : 'localStorage';
|
|
209
|
-
return createTokenManager(config.appId, storage, config.tenantId);
|
|
210
|
-
}
|
|
211
|
-
},
|
|
212
|
-
// Per-service transport factories (null if URL not configured)
|
|
213
|
-
createTransportProvider(AUTHENTICATION_TRANSPORT, config.urls.authentication),
|
|
214
|
-
createTransportProvider(SEARCH_TRANSPORT, config.urls.search),
|
|
215
|
-
createTransportProvider(PRODUCTS_TRANSPORT, config.urls.products),
|
|
216
|
-
createTransportProvider(CRM_TRANSPORT, config.urls.crm),
|
|
217
|
-
createTransportProvider(CONTENT_TRANSPORT, config.urls.content),
|
|
218
|
-
createTransportProvider(GEOLOCATION_TRANSPORT, config.urls.geolocation),
|
|
219
|
-
createTransportProvider(CONVERSATIONS_TRANSPORT, config.urls.conversations),
|
|
220
|
-
createTransportProvider(FILES_TRANSPORT, config.urls.files),
|
|
221
|
-
createTransportProvider(FORMS_TRANSPORT, config.urls.forms),
|
|
222
|
-
createTransportProvider(ASSETS_TRANSPORT, config.urls.assets),
|
|
223
|
-
createTransportProvider(CAMPAIGNS_TRANSPORT, config.urls.campaigns),
|
|
224
|
-
createTransportProvider(COMPANY_TRANSPORT, config.urls.company),
|
|
225
|
-
createTransportProvider(REWARDS_TRANSPORT, config.urls.rewards),
|
|
226
|
-
createTransportProvider(SALES_TRANSPORT, config.urls.sales),
|
|
227
|
-
createTransportProvider(WALLET_TRANSPORT, config.urls.wallet),
|
|
228
|
-
createTransportProvider(JARVIS_TRANSPORT, config.urls.jarvis),
|
|
229
|
-
createTransportProvider(ONBOARDING_TRANSPORT, config.urls.onboarding),
|
|
230
|
-
createTransportProvider(UNIVERSITY_TRANSPORT, config.urls.university),
|
|
231
|
-
// Backward compatibility: provide TRANSPORT token using auth URL if available
|
|
232
|
-
// (for advanced API users who still inject TRANSPORT directly)
|
|
233
|
-
{
|
|
234
|
-
provide: TRANSPORT,
|
|
235
|
-
useFactory: (tokenManager)=>{
|
|
236
|
-
// Use auth URL if available, otherwise create a dummy transport that throws
|
|
237
|
-
const url = config.urls.authentication;
|
|
238
|
-
if (url) {
|
|
239
|
-
return createTransportWithAuth(url, config, tokenManager);
|
|
240
|
-
}
|
|
241
|
-
// Return a transport that throws helpful errors
|
|
242
|
-
return {
|
|
243
|
-
request: ()=>{
|
|
244
|
-
throw new Error('[23blocks] TRANSPORT is not configured. ' + 'Use per-service transport tokens or configure urls.authentication.');
|
|
245
|
-
}
|
|
246
|
-
};
|
|
247
|
-
},
|
|
248
|
-
deps: [
|
|
249
|
-
TOKEN_MANAGER
|
|
250
|
-
]
|
|
251
|
-
},
|
|
252
|
-
// Block configs
|
|
253
|
-
{
|
|
254
|
-
provide: AUTHENTICATION_CONFIG,
|
|
255
|
-
useValue: blockConfig
|
|
256
|
-
},
|
|
257
|
-
{
|
|
258
|
-
provide: SEARCH_CONFIG,
|
|
259
|
-
useValue: blockConfig
|
|
260
|
-
},
|
|
261
|
-
{
|
|
262
|
-
provide: PRODUCTS_CONFIG,
|
|
263
|
-
useValue: blockConfig
|
|
264
|
-
},
|
|
265
|
-
{
|
|
266
|
-
provide: CRM_CONFIG,
|
|
267
|
-
useValue: blockConfig
|
|
268
|
-
},
|
|
269
|
-
{
|
|
270
|
-
provide: CONTENT_CONFIG,
|
|
271
|
-
useValue: blockConfig
|
|
272
|
-
},
|
|
273
|
-
{
|
|
274
|
-
provide: GEOLOCATION_CONFIG,
|
|
275
|
-
useValue: blockConfig
|
|
276
|
-
},
|
|
277
|
-
{
|
|
278
|
-
provide: CONVERSATIONS_CONFIG,
|
|
279
|
-
useValue: blockConfig
|
|
280
|
-
},
|
|
281
|
-
{
|
|
282
|
-
provide: FILES_CONFIG,
|
|
283
|
-
useValue: blockConfig
|
|
284
|
-
},
|
|
285
|
-
{
|
|
286
|
-
provide: FORMS_CONFIG,
|
|
287
|
-
useValue: blockConfig
|
|
288
|
-
},
|
|
289
|
-
{
|
|
290
|
-
provide: ASSETS_CONFIG,
|
|
291
|
-
useValue: blockConfig
|
|
292
|
-
},
|
|
293
|
-
{
|
|
294
|
-
provide: CAMPAIGNS_CONFIG,
|
|
295
|
-
useValue: blockConfig
|
|
296
|
-
},
|
|
297
|
-
{
|
|
298
|
-
provide: COMPANY_CONFIG,
|
|
299
|
-
useValue: blockConfig
|
|
300
|
-
},
|
|
301
|
-
{
|
|
302
|
-
provide: REWARDS_CONFIG,
|
|
303
|
-
useValue: blockConfig
|
|
304
|
-
},
|
|
305
|
-
{
|
|
306
|
-
provide: SALES_CONFIG,
|
|
307
|
-
useValue: blockConfig
|
|
308
|
-
},
|
|
309
|
-
{
|
|
310
|
-
provide: WALLET_CONFIG,
|
|
311
|
-
useValue: blockConfig
|
|
312
|
-
},
|
|
313
|
-
{
|
|
314
|
-
provide: JARVIS_CONFIG,
|
|
315
|
-
useValue: blockConfig
|
|
316
|
-
},
|
|
317
|
-
{
|
|
318
|
-
provide: ONBOARDING_CONFIG,
|
|
319
|
-
useValue: blockConfig
|
|
320
|
-
},
|
|
321
|
-
{
|
|
322
|
-
provide: UNIVERSITY_CONFIG,
|
|
323
|
-
useValue: blockConfig
|
|
324
|
-
}
|
|
325
|
-
];
|
|
326
|
-
return makeEnvironmentProviders(providers);
|
|
327
|
-
}
|
|
328
|
-
/**
|
|
329
|
-
* Get providers array for NgModule-based applications with simplified config.
|
|
330
|
-
*
|
|
331
|
-
* Services are only available if their URL is configured. Accessing a service
|
|
332
|
-
* without a configured URL will throw an error.
|
|
333
|
-
*
|
|
334
|
-
* @example
|
|
335
|
-
* ```typescript
|
|
336
|
-
* // app.module.ts
|
|
337
|
-
* import { NgModule } from '@angular/core';
|
|
338
|
-
* import { getBlocks23Providers } from '@23blocks/angular';
|
|
339
|
-
*
|
|
340
|
-
* @NgModule({
|
|
341
|
-
* providers: [
|
|
342
|
-
* ...getBlocks23Providers({
|
|
343
|
-
* appId: 'your-app-id',
|
|
344
|
-
* urls: {
|
|
345
|
-
* authentication: 'https://gateway.23blocks.com',
|
|
346
|
-
* crm: 'https://crm.23blocks.com',
|
|
347
|
-
* },
|
|
348
|
-
* }),
|
|
349
|
-
* ],
|
|
350
|
-
* })
|
|
351
|
-
* export class AppModule {}
|
|
352
|
-
* ```
|
|
353
|
-
*/ export function getBlocks23Providers(config) {
|
|
354
|
-
// Block config for all services
|
|
355
|
-
const blockConfig = {
|
|
356
|
-
appId: config.appId,
|
|
357
|
-
tenantId: config.tenantId
|
|
358
|
-
};
|
|
359
|
-
// Helper to create transport provider for a service URL
|
|
360
|
-
const createTransportProvider = (token, url)=>({
|
|
361
|
-
provide: token,
|
|
362
|
-
useFactory: (tokenManager)=>{
|
|
363
|
-
if (!url) return null;
|
|
364
|
-
return createTransportWithAuth(url, config, tokenManager);
|
|
365
|
-
},
|
|
366
|
-
deps: [
|
|
367
|
-
TOKEN_MANAGER
|
|
368
|
-
]
|
|
369
|
-
});
|
|
370
|
-
return [
|
|
371
|
-
// Store config for injection
|
|
372
|
-
{
|
|
373
|
-
provide: PROVIDER_CONFIG,
|
|
374
|
-
useValue: config
|
|
375
|
-
},
|
|
376
|
-
// Token manager factory - creates singleton within the injector
|
|
377
|
-
{
|
|
378
|
-
provide: TOKEN_MANAGER,
|
|
379
|
-
useFactory: ()=>{
|
|
380
|
-
var _config_storage;
|
|
381
|
-
const storage = (_config_storage = config.storage) != null ? _config_storage : 'localStorage';
|
|
382
|
-
return createTokenManager(config.appId, storage, config.tenantId);
|
|
383
|
-
}
|
|
384
|
-
},
|
|
385
|
-
// Per-service transport factories (null if URL not configured)
|
|
386
|
-
createTransportProvider(AUTHENTICATION_TRANSPORT, config.urls.authentication),
|
|
387
|
-
createTransportProvider(SEARCH_TRANSPORT, config.urls.search),
|
|
388
|
-
createTransportProvider(PRODUCTS_TRANSPORT, config.urls.products),
|
|
389
|
-
createTransportProvider(CRM_TRANSPORT, config.urls.crm),
|
|
390
|
-
createTransportProvider(CONTENT_TRANSPORT, config.urls.content),
|
|
391
|
-
createTransportProvider(GEOLOCATION_TRANSPORT, config.urls.geolocation),
|
|
392
|
-
createTransportProvider(CONVERSATIONS_TRANSPORT, config.urls.conversations),
|
|
393
|
-
createTransportProvider(FILES_TRANSPORT, config.urls.files),
|
|
394
|
-
createTransportProvider(FORMS_TRANSPORT, config.urls.forms),
|
|
395
|
-
createTransportProvider(ASSETS_TRANSPORT, config.urls.assets),
|
|
396
|
-
createTransportProvider(CAMPAIGNS_TRANSPORT, config.urls.campaigns),
|
|
397
|
-
createTransportProvider(COMPANY_TRANSPORT, config.urls.company),
|
|
398
|
-
createTransportProvider(REWARDS_TRANSPORT, config.urls.rewards),
|
|
399
|
-
createTransportProvider(SALES_TRANSPORT, config.urls.sales),
|
|
400
|
-
createTransportProvider(WALLET_TRANSPORT, config.urls.wallet),
|
|
401
|
-
createTransportProvider(JARVIS_TRANSPORT, config.urls.jarvis),
|
|
402
|
-
createTransportProvider(ONBOARDING_TRANSPORT, config.urls.onboarding),
|
|
403
|
-
createTransportProvider(UNIVERSITY_TRANSPORT, config.urls.university),
|
|
404
|
-
// Backward compatibility: provide TRANSPORT token using auth URL if available
|
|
405
|
-
{
|
|
406
|
-
provide: TRANSPORT,
|
|
407
|
-
useFactory: (tokenManager)=>{
|
|
408
|
-
const url = config.urls.authentication;
|
|
409
|
-
if (url) {
|
|
410
|
-
return createTransportWithAuth(url, config, tokenManager);
|
|
411
|
-
}
|
|
412
|
-
return {
|
|
413
|
-
request: ()=>{
|
|
414
|
-
throw new Error('[23blocks] TRANSPORT is not configured. ' + 'Use per-service transport tokens or configure urls.authentication.');
|
|
415
|
-
}
|
|
416
|
-
};
|
|
417
|
-
},
|
|
418
|
-
deps: [
|
|
419
|
-
TOKEN_MANAGER
|
|
420
|
-
]
|
|
421
|
-
},
|
|
422
|
-
// Block configs
|
|
423
|
-
{
|
|
424
|
-
provide: AUTHENTICATION_CONFIG,
|
|
425
|
-
useValue: blockConfig
|
|
426
|
-
},
|
|
427
|
-
{
|
|
428
|
-
provide: SEARCH_CONFIG,
|
|
429
|
-
useValue: blockConfig
|
|
430
|
-
},
|
|
431
|
-
{
|
|
432
|
-
provide: PRODUCTS_CONFIG,
|
|
433
|
-
useValue: blockConfig
|
|
434
|
-
},
|
|
435
|
-
{
|
|
436
|
-
provide: CRM_CONFIG,
|
|
437
|
-
useValue: blockConfig
|
|
438
|
-
},
|
|
439
|
-
{
|
|
440
|
-
provide: CONTENT_CONFIG,
|
|
441
|
-
useValue: blockConfig
|
|
442
|
-
},
|
|
443
|
-
{
|
|
444
|
-
provide: GEOLOCATION_CONFIG,
|
|
445
|
-
useValue: blockConfig
|
|
446
|
-
},
|
|
447
|
-
{
|
|
448
|
-
provide: CONVERSATIONS_CONFIG,
|
|
449
|
-
useValue: blockConfig
|
|
450
|
-
},
|
|
451
|
-
{
|
|
452
|
-
provide: FILES_CONFIG,
|
|
453
|
-
useValue: blockConfig
|
|
454
|
-
},
|
|
455
|
-
{
|
|
456
|
-
provide: FORMS_CONFIG,
|
|
457
|
-
useValue: blockConfig
|
|
458
|
-
},
|
|
459
|
-
{
|
|
460
|
-
provide: ASSETS_CONFIG,
|
|
461
|
-
useValue: blockConfig
|
|
462
|
-
},
|
|
463
|
-
{
|
|
464
|
-
provide: CAMPAIGNS_CONFIG,
|
|
465
|
-
useValue: blockConfig
|
|
466
|
-
},
|
|
467
|
-
{
|
|
468
|
-
provide: COMPANY_CONFIG,
|
|
469
|
-
useValue: blockConfig
|
|
470
|
-
},
|
|
471
|
-
{
|
|
472
|
-
provide: REWARDS_CONFIG,
|
|
473
|
-
useValue: blockConfig
|
|
474
|
-
},
|
|
475
|
-
{
|
|
476
|
-
provide: SALES_CONFIG,
|
|
477
|
-
useValue: blockConfig
|
|
478
|
-
},
|
|
479
|
-
{
|
|
480
|
-
provide: WALLET_CONFIG,
|
|
481
|
-
useValue: blockConfig
|
|
482
|
-
},
|
|
483
|
-
{
|
|
484
|
-
provide: JARVIS_CONFIG,
|
|
485
|
-
useValue: blockConfig
|
|
486
|
-
},
|
|
487
|
-
{
|
|
488
|
-
provide: ONBOARDING_CONFIG,
|
|
489
|
-
useValue: blockConfig
|
|
490
|
-
},
|
|
491
|
-
{
|
|
492
|
-
provide: UNIVERSITY_CONFIG,
|
|
493
|
-
useValue: blockConfig
|
|
494
|
-
}
|
|
495
|
-
];
|
|
496
|
-
}
|
|
497
|
-
|
|
498
|
-
//# sourceMappingURL=simple-providers.js.map
|