@ikonintegration/module-config-api 2.0.17 → 2.0.19
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/Api.ts +5 -5
- package/CacheClient.ts +251 -0
- package/CacheTypes.ts +35 -0
- package/MemoryCache.ts +29 -0
- package/dist/Api.d.ts +5 -5
- package/dist/Api.js +1 -1
- package/dist/Api.js.map +1 -1
- package/dist/CacheClient.d.ts +56 -0
- package/dist/CacheClient.js +260 -0
- package/dist/CacheClient.js.map +1 -0
- package/dist/CacheTypes.d.ts +31 -0
- package/dist/CacheTypes.js +17 -0
- package/dist/CacheTypes.js.map +1 -0
- package/dist/MemoryCache.d.ts +10 -0
- package/dist/MemoryCache.js +33 -0
- package/dist/MemoryCache.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/index.ts +14 -0
- package/package.json +4 -3
package/Api.ts
CHANGED
|
@@ -2934,7 +2934,7 @@ export interface FaqResponse {
|
|
|
2934
2934
|
answer?: string
|
|
2935
2935
|
}
|
|
2936
2936
|
|
|
2937
|
-
export interface
|
|
2937
|
+
export interface InputVnr9Fm759Zi {
|
|
2938
2938
|
/**
|
|
2939
2939
|
* Tenant ID this FAQ belongs to
|
|
2940
2940
|
* @example "tenant456"
|
|
@@ -2957,7 +2957,7 @@ export interface InputZhvrz8Yp0W {
|
|
|
2957
2957
|
answer?: string
|
|
2958
2958
|
}
|
|
2959
2959
|
|
|
2960
|
-
export interface
|
|
2960
|
+
export interface InputGbe7Fhz907 {
|
|
2961
2961
|
/**
|
|
2962
2962
|
* Tenant ID this FAQ belongs to
|
|
2963
2963
|
* @example "tenant456"
|
|
@@ -5354,7 +5354,7 @@ export class HttpClient<SecurityDataType = unknown> {
|
|
|
5354
5354
|
|
|
5355
5355
|
/**
|
|
5356
5356
|
* @title No title
|
|
5357
|
-
* @version 2.0.
|
|
5357
|
+
* @version 2.0.19
|
|
5358
5358
|
* @baseUrl http://localhost:8080
|
|
5359
5359
|
* @contact Ikon Integration <ikon@ikonintegration.com> (http://example.com)
|
|
5360
5360
|
*/
|
|
@@ -6019,7 +6019,7 @@ export class Api<SecurityDataType extends unknown> extends HttpClient<SecurityDa
|
|
|
6019
6019
|
* @request POST:/tenant/{tenantID}/faq/{faqID}
|
|
6020
6020
|
* @secure
|
|
6021
6021
|
*/
|
|
6022
|
-
createFaq: (tenantId: string, faqId: string, data:
|
|
6022
|
+
createFaq: (tenantId: string, faqId: string, data: InputVnr9Fm759Zi, params: RequestParams = {}) =>
|
|
6023
6023
|
this.request<CreateFaqData, CreateFaqError>({
|
|
6024
6024
|
path: `/tenant/${tenantId}/faq/${faqId}`,
|
|
6025
6025
|
method: 'POST',
|
|
@@ -6038,7 +6038,7 @@ export class Api<SecurityDataType extends unknown> extends HttpClient<SecurityDa
|
|
|
6038
6038
|
* @request PUT:/tenant/{tenantID}/faq/{faqID}
|
|
6039
6039
|
* @secure
|
|
6040
6040
|
*/
|
|
6041
|
-
updateFaq: (tenantId: string, faqId: string, data:
|
|
6041
|
+
updateFaq: (tenantId: string, faqId: string, data: InputGbe7Fhz907, params: RequestParams = {}) =>
|
|
6042
6042
|
this.request<UpdateFaqData, UpdateFaqError>({
|
|
6043
6043
|
path: `/tenant/${tenantId}/faq/${faqId}`,
|
|
6044
6044
|
method: 'PUT',
|
package/CacheClient.ts
ADDED
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
// @ts-nocheck — This file is compiled in CI alongside generated sources (Api.js)
|
|
2
|
+
import { Api } from './Api.js'
|
|
3
|
+
import type { CustomerResponse, TenantResponse } from './Api.js'
|
|
4
|
+
import { MemoryCache } from './MemoryCache.js'
|
|
5
|
+
import { RedisLike, CacheConfig, CacheConstants } from './CacheTypes.js'
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Extended client that wraps the auto-generated Api with Redis cache support.
|
|
9
|
+
* Provides direct Redis-backed lookups for customers, tenants, certifications, and courses.
|
|
10
|
+
*
|
|
11
|
+
* Usage:
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { CacheClient } from "@ikonintegration/module-config-api/cache";
|
|
14
|
+
*
|
|
15
|
+
* const client = new CacheClient({
|
|
16
|
+
* // API layer (passed to the generated Api client)
|
|
17
|
+
* baseUrl: "https://api.example.com",
|
|
18
|
+
* // Cache layer (optional — enables Redis-backed lookups)
|
|
19
|
+
* cache: {
|
|
20
|
+
* endpoint: "redis.example.com",
|
|
21
|
+
* username: "default",
|
|
22
|
+
* password: "secret",
|
|
23
|
+
* enableTLS: true,
|
|
24
|
+
* version: 5
|
|
25
|
+
* }
|
|
26
|
+
* });
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export class CacheClient {
|
|
30
|
+
public api: Api<unknown>
|
|
31
|
+
private _localCache: MemoryCache
|
|
32
|
+
private _remoteCache: RedisLike | null = null
|
|
33
|
+
private _cacheConfig: CacheConfig | null
|
|
34
|
+
|
|
35
|
+
constructor(options: {
|
|
36
|
+
baseUrl?: string
|
|
37
|
+
baseApiParams?: ConstructorParameters<typeof Api>[0]
|
|
38
|
+
cache?: CacheConfig
|
|
39
|
+
}) {
|
|
40
|
+
this.api = new Api({
|
|
41
|
+
baseURL: options.baseUrl,
|
|
42
|
+
...options.baseApiParams,
|
|
43
|
+
})
|
|
44
|
+
this._localCache = new MemoryCache()
|
|
45
|
+
this._cacheConfig = options.cache || null
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/********* CACHE LAYER — Customers *********/
|
|
49
|
+
|
|
50
|
+
async getAllCustomers(): Promise<CustomerResponse[] | null> {
|
|
51
|
+
let allCustomers = this._localCache.getValue<CustomerResponse[]>(CacheConstants.CustomerPrefix)
|
|
52
|
+
if (!allCustomers) {
|
|
53
|
+
console.debug('ConfigClient - Customers Fetch All')
|
|
54
|
+
allCustomers = await this._getAllRemoteCustomers()
|
|
55
|
+
if (!allCustomers) return null
|
|
56
|
+
this._localCache.setValue(CacheConstants.CustomerPrefix, allCustomers, CacheConstants.AllCustomersTTL)
|
|
57
|
+
}
|
|
58
|
+
return allCustomers
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
async getCustomerByID(customerID: string): Promise<CustomerResponse | null> {
|
|
62
|
+
// Attempt local cache
|
|
63
|
+
let customer = this._localCache.getValue<CustomerResponse>(`${CacheConstants.CustomerPrefix}${customerID}`)
|
|
64
|
+
// Attempt from allCustomers local cache
|
|
65
|
+
if (!customer) {
|
|
66
|
+
const allCustomers = this._localCache.getValue<CustomerResponse[]>(CacheConstants.CustomerPrefix)
|
|
67
|
+
customer = allCustomers?.find(c => c.id === customerID) || null
|
|
68
|
+
}
|
|
69
|
+
// Attempt remote cache
|
|
70
|
+
if (!customer) {
|
|
71
|
+
console.debug('ConfigClient - Customer Fetch:', customerID)
|
|
72
|
+
await this._initCacheClient()
|
|
73
|
+
const raw = await this._remoteCache?.get(`${CacheConstants.CustomerPrefix}${customerID}`)
|
|
74
|
+
if (!raw) return null
|
|
75
|
+
customer = JSON.parse(raw)
|
|
76
|
+
this._localCache.setValue(`${CacheConstants.CustomerPrefix}${customerID}`, customer, CacheConstants.CustomerTTL)
|
|
77
|
+
}
|
|
78
|
+
return customer
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/********* CACHE LAYER — Tenants *********/
|
|
82
|
+
|
|
83
|
+
async getAllTenants(): Promise<TenantResponse[] | null> {
|
|
84
|
+
let allTenants = this._localCache.getValue<TenantResponse[]>(CacheConstants.TenantPrefix)
|
|
85
|
+
if (!allTenants) {
|
|
86
|
+
console.debug('ConfigClient - Tenants Fetch All')
|
|
87
|
+
allTenants = await this._getAllRemoteTenants()
|
|
88
|
+
if (!allTenants) return null
|
|
89
|
+
this._localCache.setValue(CacheConstants.TenantPrefix, allTenants, CacheConstants.AllTenantsTTL)
|
|
90
|
+
}
|
|
91
|
+
return allTenants
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
async getTenantByID(tenantID: string): Promise<TenantResponse | null> {
|
|
95
|
+
let tenant = this._localCache.getValue<TenantResponse>(`${CacheConstants.TenantPrefix}${tenantID}`)
|
|
96
|
+
if (!tenant) {
|
|
97
|
+
console.debug('ConfigClient - Tenant Fetch:', tenantID)
|
|
98
|
+
await this._initCacheClient()
|
|
99
|
+
const raw = await this._remoteCache?.get(`${CacheConstants.TenantPrefix}${tenantID}`)
|
|
100
|
+
if (!raw) return null
|
|
101
|
+
tenant = JSON.parse(raw)
|
|
102
|
+
this._localCache.setValue(`${CacheConstants.TenantPrefix}${tenantID}`, tenant, CacheConstants.TenantTTL)
|
|
103
|
+
}
|
|
104
|
+
return tenant
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/********* CACHE LAYER — Certifications & Courses *********/
|
|
108
|
+
|
|
109
|
+
async getCertificationByID(certID: string, tenantID: string) {
|
|
110
|
+
const tenant = await this.getTenantByID(tenantID)
|
|
111
|
+
if (!tenant || !Array.isArray((tenant as any).certifications)) return null
|
|
112
|
+
return (tenant as any).certifications.find((c: any) => c.id === certID) || null
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
async getCourseByID(courseID: string, tenantID: string) {
|
|
116
|
+
const tenant = await this.getTenantByID(tenantID)
|
|
117
|
+
if (!tenant || !Array.isArray((tenant as any).certifications)) return null
|
|
118
|
+
for (const cert of (tenant as any).certifications) {
|
|
119
|
+
for (const req of cert.requirements || []) {
|
|
120
|
+
if (Array.isArray(req)) {
|
|
121
|
+
const found = req.find((r: any) => r.id === courseID)
|
|
122
|
+
if (found) return found
|
|
123
|
+
} else if (req.id === courseID) return req
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return null
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
async getCourseInCertificationByID(certificationID: string, courseID: string, tenantID: string) {
|
|
130
|
+
const tenant = await this.getTenantByID(tenantID)
|
|
131
|
+
if (!tenant || !Array.isArray((tenant as any).certifications)) return null
|
|
132
|
+
const cert = (tenant as any).certifications.find((c: any) => c.id === certificationID)
|
|
133
|
+
if (!cert) return null
|
|
134
|
+
for (const req of cert.requirements || []) {
|
|
135
|
+
if (Array.isArray(req)) {
|
|
136
|
+
const found = req.find((r: any) => r.id === courseID)
|
|
137
|
+
if (found) return found
|
|
138
|
+
} else if (req.id === courseID) return req
|
|
139
|
+
}
|
|
140
|
+
return null
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
async getAllCoursesByTenantID(tenantID: string) {
|
|
144
|
+
const tenant = await this.getTenantByID(tenantID)
|
|
145
|
+
if (!tenant || !Array.isArray((tenant as any).certifications)) return null
|
|
146
|
+
const courses: any[] = []
|
|
147
|
+
for (const cert of (tenant as any).certifications) {
|
|
148
|
+
for (const req of cert.requirements || []) {
|
|
149
|
+
if (Array.isArray(req)) {
|
|
150
|
+
for (const sub of req) courses.push(sub)
|
|
151
|
+
} else courses.push(req)
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
return courses
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
async getAllCoursesByCertificationID(certID: string, tenantID: string) {
|
|
158
|
+
const tenant = await this.getTenantByID(tenantID)
|
|
159
|
+
if (!tenant || !Array.isArray((tenant as any).certifications)) return null
|
|
160
|
+
const courses: any[] = []
|
|
161
|
+
for (const cert of (tenant as any).certifications) {
|
|
162
|
+
if (cert.id !== certID) continue
|
|
163
|
+
for (const req of cert.requirements || []) {
|
|
164
|
+
if (Array.isArray(req)) {
|
|
165
|
+
for (const sub of req) courses.push(sub)
|
|
166
|
+
} else courses.push(req)
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
return courses
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
async getAllCourses() {
|
|
173
|
+
return this.getAllCoursesByCustomerID(null)
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
async getAllCoursesByCustomerID(customerID: string | null) {
|
|
177
|
+
const allTenants = await this.getAllTenants()
|
|
178
|
+
if (!allTenants) return []
|
|
179
|
+
const filtered = allTenants.filter(t => !customerID || (t as any).customerID === customerID)
|
|
180
|
+
const courses: any[] = []
|
|
181
|
+
for (const tenant of filtered) {
|
|
182
|
+
if (!Array.isArray((tenant as any).certifications)) continue
|
|
183
|
+
for (const cert of (tenant as any).certifications) {
|
|
184
|
+
for (const req of cert.requirements || []) {
|
|
185
|
+
if (Array.isArray(req)) {
|
|
186
|
+
for (const sub of req) {
|
|
187
|
+
if (!courses.find(c => c.id === sub.id)) courses.push(sub)
|
|
188
|
+
}
|
|
189
|
+
} else {
|
|
190
|
+
if (!courses.find(c => c.id === req.id)) courses.push(req)
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
return courses
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
/********* CACHE LAYER — Course Providers *********/
|
|
199
|
+
|
|
200
|
+
async getCourseProviderByIDs(courseProviderID: string, customerID: string) {
|
|
201
|
+
const customer = await this.getCustomerByID(customerID)
|
|
202
|
+
if (!customer || !Array.isArray((customer as any).courseProviders)) return null
|
|
203
|
+
return (customer as any).courseProviders.find((p: any) => p === courseProviderID) || null
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
/********* Private *********/
|
|
207
|
+
|
|
208
|
+
private async _getAllRemoteCustomers(): Promise<CustomerResponse[] | null> {
|
|
209
|
+
await this._initCacheClient()
|
|
210
|
+
if (!this._remoteCache) return null
|
|
211
|
+
const allKeys = await this._remoteCache.keys(`${CacheConstants.CustomerPrefix}*`)
|
|
212
|
+
if (!allKeys || allKeys.length === 0) return null
|
|
213
|
+
const raw = await this._remoteCache.mGet(allKeys)
|
|
214
|
+
return Array.isArray(raw) ? raw.map(r => JSON.parse(r)) : null
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
private async _getAllRemoteTenants(): Promise<TenantResponse[] | null> {
|
|
218
|
+
await this._initCacheClient()
|
|
219
|
+
if (!this._remoteCache) return null
|
|
220
|
+
const allKeys = await this._remoteCache.keys(`${CacheConstants.TenantPrefix}*`)
|
|
221
|
+
if (!allKeys || allKeys.length === 0) return null
|
|
222
|
+
const raw = await this._remoteCache.mGet(allKeys)
|
|
223
|
+
return Array.isArray(raw) ? raw.map(r => JSON.parse(r)) : null
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
private async _initCacheClient() {
|
|
227
|
+
if (this._remoteCache || !this._cacheConfig) return
|
|
228
|
+
const config = this._cacheConfig
|
|
229
|
+
|
|
230
|
+
if (config.version === 5) {
|
|
231
|
+
const dynamicImport = ['@ikonintegration/ikapi']
|
|
232
|
+
const { Redis } = await import(dynamicImport[0])
|
|
233
|
+
this._remoteCache = await Redis.connection({
|
|
234
|
+
hostname: config.endpoint,
|
|
235
|
+
username: config.username,
|
|
236
|
+
password: config.password,
|
|
237
|
+
enableTLS: config.enableTLS ?? true,
|
|
238
|
+
})
|
|
239
|
+
} else {
|
|
240
|
+
const dynamicImport = ['redis', '@ikonintegration/ikapi']
|
|
241
|
+
await import(dynamicImport[0])
|
|
242
|
+
const IKAPI = (await import(dynamicImport[1])).default
|
|
243
|
+
this._remoteCache = new IKAPI.IKRedis({
|
|
244
|
+
host: config.endpoint,
|
|
245
|
+
user: config.username,
|
|
246
|
+
password: config.password,
|
|
247
|
+
enableTLS: config.enableTLS ?? true,
|
|
248
|
+
})
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
package/CacheTypes.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal interface for Redis-like clients used by the cache layer.
|
|
3
|
+
* Supports both @ikonintegration/ikapi Redis and the legacy IKRedis.
|
|
4
|
+
*/
|
|
5
|
+
export interface RedisLike {
|
|
6
|
+
get(key: string): Promise<string | null>
|
|
7
|
+
keys(pattern: string): Promise<string[]>
|
|
8
|
+
mGet(keys: string[]): Promise<string[]>
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Configuration for the Redis cache connection.
|
|
13
|
+
*/
|
|
14
|
+
export interface CacheConfig {
|
|
15
|
+
endpoint: string
|
|
16
|
+
username: string
|
|
17
|
+
password: string
|
|
18
|
+
enableTLS?: boolean
|
|
19
|
+
/** Set to 5 to use the new @ikonintegration/ikapi Redis client */
|
|
20
|
+
version?: number
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Cache key prefixes and TTL constants (matching the legacy client).
|
|
25
|
+
*/
|
|
26
|
+
export const CacheConstants = {
|
|
27
|
+
// Customer
|
|
28
|
+
CustomerPrefix: 'CO::',
|
|
29
|
+
AllCustomersTTL: 60 * 60, // 1 hour
|
|
30
|
+
CustomerTTL: 60, // 1 minute
|
|
31
|
+
// Tenant
|
|
32
|
+
TenantPrefix: 'TN::',
|
|
33
|
+
AllTenantsTTL: 60 * 60, // 1 hour
|
|
34
|
+
TenantTTL: 60, // 1 minute
|
|
35
|
+
} as const
|
package/MemoryCache.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple in-memory TTL cache used as a local layer before hitting Redis.
|
|
3
|
+
*/
|
|
4
|
+
export class MemoryCache {
|
|
5
|
+
private store: Map<string, { value: any; expiresAt: number }> = new Map()
|
|
6
|
+
|
|
7
|
+
getValue<T = any>(key: string): T | null {
|
|
8
|
+
const entry = this.store.get(key)
|
|
9
|
+
if (!entry) return null
|
|
10
|
+
if (entry.expiresAt > 0 && Date.now() > entry.expiresAt) {
|
|
11
|
+
this.store.delete(key)
|
|
12
|
+
return null
|
|
13
|
+
}
|
|
14
|
+
return entry.value as T
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
setValue(key: string, value: any, ttlSeconds: number = 0): void {
|
|
18
|
+
const expiresAt = ttlSeconds > 0 ? Date.now() + ttlSeconds * 1000 : 0
|
|
19
|
+
this.store.set(key, { value, expiresAt })
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
cleanKey(key: string): void {
|
|
23
|
+
this.store.delete(key)
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
clear(): void {
|
|
27
|
+
this.store.clear()
|
|
28
|
+
}
|
|
29
|
+
}
|
package/dist/Api.d.ts
CHANGED
|
@@ -2894,7 +2894,7 @@ export interface FaqResponse {
|
|
|
2894
2894
|
*/
|
|
2895
2895
|
answer?: string;
|
|
2896
2896
|
}
|
|
2897
|
-
export interface
|
|
2897
|
+
export interface InputVnr9Fm759Zi {
|
|
2898
2898
|
/**
|
|
2899
2899
|
* Tenant ID this FAQ belongs to
|
|
2900
2900
|
* @example "tenant456"
|
|
@@ -2916,7 +2916,7 @@ export interface InputZhvrz8Yp0W {
|
|
|
2916
2916
|
*/
|
|
2917
2917
|
answer?: string;
|
|
2918
2918
|
}
|
|
2919
|
-
export interface
|
|
2919
|
+
export interface InputGbe7Fhz907 {
|
|
2920
2920
|
/**
|
|
2921
2921
|
* Tenant ID this FAQ belongs to
|
|
2922
2922
|
* @example "tenant456"
|
|
@@ -5073,7 +5073,7 @@ export declare class HttpClient<SecurityDataType = unknown> {
|
|
|
5073
5073
|
}
|
|
5074
5074
|
/**
|
|
5075
5075
|
* @title No title
|
|
5076
|
-
* @version 2.0.
|
|
5076
|
+
* @version 2.0.19
|
|
5077
5077
|
* @baseUrl http://localhost:8080
|
|
5078
5078
|
* @contact Ikon Integration <ikon@ikonintegration.com> (http://example.com)
|
|
5079
5079
|
*/
|
|
@@ -5437,7 +5437,7 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
|
|
|
5437
5437
|
* @request POST:/tenant/{tenantID}/faq/{faqID}
|
|
5438
5438
|
* @secure
|
|
5439
5439
|
*/
|
|
5440
|
-
createFaq: (tenantId: string, faqId: string, data:
|
|
5440
|
+
createFaq: (tenantId: string, faqId: string, data: InputVnr9Fm759Zi, params?: RequestParams) => Promise<any>;
|
|
5441
5441
|
/**
|
|
5442
5442
|
* @description Update an existing FAQ.
|
|
5443
5443
|
*
|
|
@@ -5447,7 +5447,7 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
|
|
|
5447
5447
|
* @request PUT:/tenant/{tenantID}/faq/{faqID}
|
|
5448
5448
|
* @secure
|
|
5449
5449
|
*/
|
|
5450
|
-
updateFaq: (tenantId: string, faqId: string, data:
|
|
5450
|
+
updateFaq: (tenantId: string, faqId: string, data: InputGbe7Fhz907, params?: RequestParams) => Promise<any>;
|
|
5451
5451
|
/**
|
|
5452
5452
|
* @description Delete a FAQ.
|
|
5453
5453
|
*
|
package/dist/Api.js
CHANGED
package/dist/Api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Api.js","sourceRoot":"","sources":["../Api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Api.js","sourceRoot":"","sources":["../Api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Api } from './Api.js';
|
|
2
|
+
import type { CustomerResponse, TenantResponse } from './Api.js';
|
|
3
|
+
import { CacheConfig } from './CacheTypes.js';
|
|
4
|
+
/**
|
|
5
|
+
* Extended client that wraps the auto-generated Api with Redis cache support.
|
|
6
|
+
* Provides direct Redis-backed lookups for customers, tenants, certifications, and courses.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { CacheClient } from "@ikonintegration/module-config-api/cache";
|
|
11
|
+
*
|
|
12
|
+
* const client = new CacheClient({
|
|
13
|
+
* // API layer (passed to the generated Api client)
|
|
14
|
+
* baseUrl: "https://api.example.com",
|
|
15
|
+
* // Cache layer (optional — enables Redis-backed lookups)
|
|
16
|
+
* cache: {
|
|
17
|
+
* endpoint: "redis.example.com",
|
|
18
|
+
* username: "default",
|
|
19
|
+
* password: "secret",
|
|
20
|
+
* enableTLS: true,
|
|
21
|
+
* version: 5
|
|
22
|
+
* }
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare class CacheClient {
|
|
27
|
+
api: Api<unknown>;
|
|
28
|
+
private _localCache;
|
|
29
|
+
private _remoteCache;
|
|
30
|
+
private _cacheConfig;
|
|
31
|
+
constructor(options: {
|
|
32
|
+
baseUrl?: string;
|
|
33
|
+
baseApiParams?: ConstructorParameters<typeof Api>[0];
|
|
34
|
+
cache?: CacheConfig;
|
|
35
|
+
});
|
|
36
|
+
/********* CACHE LAYER — Customers *********/
|
|
37
|
+
getAllCustomers(): Promise<CustomerResponse[] | null>;
|
|
38
|
+
getCustomerByID(customerID: string): Promise<CustomerResponse | null>;
|
|
39
|
+
/********* CACHE LAYER — Tenants *********/
|
|
40
|
+
getAllTenants(): Promise<TenantResponse[] | null>;
|
|
41
|
+
getTenantByID(tenantID: string): Promise<TenantResponse | null>;
|
|
42
|
+
/********* CACHE LAYER — Certifications & Courses *********/
|
|
43
|
+
getCertificationByID(certID: string, tenantID: string): Promise<any>;
|
|
44
|
+
getCourseByID(courseID: string, tenantID: string): Promise<any>;
|
|
45
|
+
getCourseInCertificationByID(certificationID: string, courseID: string, tenantID: string): Promise<any>;
|
|
46
|
+
getAllCoursesByTenantID(tenantID: string): Promise<any[]>;
|
|
47
|
+
getAllCoursesByCertificationID(certID: string, tenantID: string): Promise<any[]>;
|
|
48
|
+
getAllCourses(): Promise<any[]>;
|
|
49
|
+
getAllCoursesByCustomerID(customerID: string | null): Promise<any[]>;
|
|
50
|
+
/********* CACHE LAYER — Course Providers *********/
|
|
51
|
+
getCourseProviderByIDs(courseProviderID: string, customerID: string): Promise<any>;
|
|
52
|
+
/********* Private *********/
|
|
53
|
+
private _getAllRemoteCustomers;
|
|
54
|
+
private _getAllRemoteTenants;
|
|
55
|
+
private _initCacheClient;
|
|
56
|
+
}
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CacheClient = void 0;
|
|
4
|
+
// @ts-nocheck — This file is compiled in CI alongside generated sources (Api.js)
|
|
5
|
+
const Api_js_1 = require("./Api.js");
|
|
6
|
+
const MemoryCache_js_1 = require("./MemoryCache.js");
|
|
7
|
+
const CacheTypes_js_1 = require("./CacheTypes.js");
|
|
8
|
+
/**
|
|
9
|
+
* Extended client that wraps the auto-generated Api with Redis cache support.
|
|
10
|
+
* Provides direct Redis-backed lookups for customers, tenants, certifications, and courses.
|
|
11
|
+
*
|
|
12
|
+
* Usage:
|
|
13
|
+
* ```ts
|
|
14
|
+
* import { CacheClient } from "@ikonintegration/module-config-api/cache";
|
|
15
|
+
*
|
|
16
|
+
* const client = new CacheClient({
|
|
17
|
+
* // API layer (passed to the generated Api client)
|
|
18
|
+
* baseUrl: "https://api.example.com",
|
|
19
|
+
* // Cache layer (optional — enables Redis-backed lookups)
|
|
20
|
+
* cache: {
|
|
21
|
+
* endpoint: "redis.example.com",
|
|
22
|
+
* username: "default",
|
|
23
|
+
* password: "secret",
|
|
24
|
+
* enableTLS: true,
|
|
25
|
+
* version: 5
|
|
26
|
+
* }
|
|
27
|
+
* });
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
class CacheClient {
|
|
31
|
+
constructor(options) {
|
|
32
|
+
this._remoteCache = null;
|
|
33
|
+
this.api = new Api_js_1.Api({
|
|
34
|
+
baseURL: options.baseUrl,
|
|
35
|
+
...options.baseApiParams,
|
|
36
|
+
});
|
|
37
|
+
this._localCache = new MemoryCache_js_1.MemoryCache();
|
|
38
|
+
this._cacheConfig = options.cache || null;
|
|
39
|
+
}
|
|
40
|
+
/********* CACHE LAYER — Customers *********/
|
|
41
|
+
async getAllCustomers() {
|
|
42
|
+
let allCustomers = this._localCache.getValue(CacheTypes_js_1.CacheConstants.CustomerPrefix);
|
|
43
|
+
if (!allCustomers) {
|
|
44
|
+
console.debug('ConfigClient - Customers Fetch All');
|
|
45
|
+
allCustomers = await this._getAllRemoteCustomers();
|
|
46
|
+
if (!allCustomers)
|
|
47
|
+
return null;
|
|
48
|
+
this._localCache.setValue(CacheTypes_js_1.CacheConstants.CustomerPrefix, allCustomers, CacheTypes_js_1.CacheConstants.AllCustomersTTL);
|
|
49
|
+
}
|
|
50
|
+
return allCustomers;
|
|
51
|
+
}
|
|
52
|
+
async getCustomerByID(customerID) {
|
|
53
|
+
// Attempt local cache
|
|
54
|
+
let customer = this._localCache.getValue(`${CacheTypes_js_1.CacheConstants.CustomerPrefix}${customerID}`);
|
|
55
|
+
// Attempt from allCustomers local cache
|
|
56
|
+
if (!customer) {
|
|
57
|
+
const allCustomers = this._localCache.getValue(CacheTypes_js_1.CacheConstants.CustomerPrefix);
|
|
58
|
+
customer = allCustomers?.find(c => c.id === customerID) || null;
|
|
59
|
+
}
|
|
60
|
+
// Attempt remote cache
|
|
61
|
+
if (!customer) {
|
|
62
|
+
console.debug('ConfigClient - Customer Fetch:', customerID);
|
|
63
|
+
await this._initCacheClient();
|
|
64
|
+
const raw = await this._remoteCache?.get(`${CacheTypes_js_1.CacheConstants.CustomerPrefix}${customerID}`);
|
|
65
|
+
if (!raw)
|
|
66
|
+
return null;
|
|
67
|
+
customer = JSON.parse(raw);
|
|
68
|
+
this._localCache.setValue(`${CacheTypes_js_1.CacheConstants.CustomerPrefix}${customerID}`, customer, CacheTypes_js_1.CacheConstants.CustomerTTL);
|
|
69
|
+
}
|
|
70
|
+
return customer;
|
|
71
|
+
}
|
|
72
|
+
/********* CACHE LAYER — Tenants *********/
|
|
73
|
+
async getAllTenants() {
|
|
74
|
+
let allTenants = this._localCache.getValue(CacheTypes_js_1.CacheConstants.TenantPrefix);
|
|
75
|
+
if (!allTenants) {
|
|
76
|
+
console.debug('ConfigClient - Tenants Fetch All');
|
|
77
|
+
allTenants = await this._getAllRemoteTenants();
|
|
78
|
+
if (!allTenants)
|
|
79
|
+
return null;
|
|
80
|
+
this._localCache.setValue(CacheTypes_js_1.CacheConstants.TenantPrefix, allTenants, CacheTypes_js_1.CacheConstants.AllTenantsTTL);
|
|
81
|
+
}
|
|
82
|
+
return allTenants;
|
|
83
|
+
}
|
|
84
|
+
async getTenantByID(tenantID) {
|
|
85
|
+
let tenant = this._localCache.getValue(`${CacheTypes_js_1.CacheConstants.TenantPrefix}${tenantID}`);
|
|
86
|
+
if (!tenant) {
|
|
87
|
+
console.debug('ConfigClient - Tenant Fetch:', tenantID);
|
|
88
|
+
await this._initCacheClient();
|
|
89
|
+
const raw = await this._remoteCache?.get(`${CacheTypes_js_1.CacheConstants.TenantPrefix}${tenantID}`);
|
|
90
|
+
if (!raw)
|
|
91
|
+
return null;
|
|
92
|
+
tenant = JSON.parse(raw);
|
|
93
|
+
this._localCache.setValue(`${CacheTypes_js_1.CacheConstants.TenantPrefix}${tenantID}`, tenant, CacheTypes_js_1.CacheConstants.TenantTTL);
|
|
94
|
+
}
|
|
95
|
+
return tenant;
|
|
96
|
+
}
|
|
97
|
+
/********* CACHE LAYER — Certifications & Courses *********/
|
|
98
|
+
async getCertificationByID(certID, tenantID) {
|
|
99
|
+
const tenant = await this.getTenantByID(tenantID);
|
|
100
|
+
if (!tenant || !Array.isArray(tenant.certifications))
|
|
101
|
+
return null;
|
|
102
|
+
return tenant.certifications.find((c) => c.id === certID) || null;
|
|
103
|
+
}
|
|
104
|
+
async getCourseByID(courseID, tenantID) {
|
|
105
|
+
const tenant = await this.getTenantByID(tenantID);
|
|
106
|
+
if (!tenant || !Array.isArray(tenant.certifications))
|
|
107
|
+
return null;
|
|
108
|
+
for (const cert of tenant.certifications) {
|
|
109
|
+
for (const req of cert.requirements || []) {
|
|
110
|
+
if (Array.isArray(req)) {
|
|
111
|
+
const found = req.find((r) => r.id === courseID);
|
|
112
|
+
if (found)
|
|
113
|
+
return found;
|
|
114
|
+
}
|
|
115
|
+
else if (req.id === courseID)
|
|
116
|
+
return req;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return null;
|
|
120
|
+
}
|
|
121
|
+
async getCourseInCertificationByID(certificationID, courseID, tenantID) {
|
|
122
|
+
const tenant = await this.getTenantByID(tenantID);
|
|
123
|
+
if (!tenant || !Array.isArray(tenant.certifications))
|
|
124
|
+
return null;
|
|
125
|
+
const cert = tenant.certifications.find((c) => c.id === certificationID);
|
|
126
|
+
if (!cert)
|
|
127
|
+
return null;
|
|
128
|
+
for (const req of cert.requirements || []) {
|
|
129
|
+
if (Array.isArray(req)) {
|
|
130
|
+
const found = req.find((r) => r.id === courseID);
|
|
131
|
+
if (found)
|
|
132
|
+
return found;
|
|
133
|
+
}
|
|
134
|
+
else if (req.id === courseID)
|
|
135
|
+
return req;
|
|
136
|
+
}
|
|
137
|
+
return null;
|
|
138
|
+
}
|
|
139
|
+
async getAllCoursesByTenantID(tenantID) {
|
|
140
|
+
const tenant = await this.getTenantByID(tenantID);
|
|
141
|
+
if (!tenant || !Array.isArray(tenant.certifications))
|
|
142
|
+
return null;
|
|
143
|
+
const courses = [];
|
|
144
|
+
for (const cert of tenant.certifications) {
|
|
145
|
+
for (const req of cert.requirements || []) {
|
|
146
|
+
if (Array.isArray(req)) {
|
|
147
|
+
for (const sub of req)
|
|
148
|
+
courses.push(sub);
|
|
149
|
+
}
|
|
150
|
+
else
|
|
151
|
+
courses.push(req);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
return courses;
|
|
155
|
+
}
|
|
156
|
+
async getAllCoursesByCertificationID(certID, tenantID) {
|
|
157
|
+
const tenant = await this.getTenantByID(tenantID);
|
|
158
|
+
if (!tenant || !Array.isArray(tenant.certifications))
|
|
159
|
+
return null;
|
|
160
|
+
const courses = [];
|
|
161
|
+
for (const cert of tenant.certifications) {
|
|
162
|
+
if (cert.id !== certID)
|
|
163
|
+
continue;
|
|
164
|
+
for (const req of cert.requirements || []) {
|
|
165
|
+
if (Array.isArray(req)) {
|
|
166
|
+
for (const sub of req)
|
|
167
|
+
courses.push(sub);
|
|
168
|
+
}
|
|
169
|
+
else
|
|
170
|
+
courses.push(req);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return courses;
|
|
174
|
+
}
|
|
175
|
+
async getAllCourses() {
|
|
176
|
+
return this.getAllCoursesByCustomerID(null);
|
|
177
|
+
}
|
|
178
|
+
async getAllCoursesByCustomerID(customerID) {
|
|
179
|
+
const allTenants = await this.getAllTenants();
|
|
180
|
+
if (!allTenants)
|
|
181
|
+
return [];
|
|
182
|
+
const filtered = allTenants.filter(t => !customerID || t.customerID === customerID);
|
|
183
|
+
const courses = [];
|
|
184
|
+
for (const tenant of filtered) {
|
|
185
|
+
if (!Array.isArray(tenant.certifications))
|
|
186
|
+
continue;
|
|
187
|
+
for (const cert of tenant.certifications) {
|
|
188
|
+
for (const req of cert.requirements || []) {
|
|
189
|
+
if (Array.isArray(req)) {
|
|
190
|
+
for (const sub of req) {
|
|
191
|
+
if (!courses.find(c => c.id === sub.id))
|
|
192
|
+
courses.push(sub);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
else {
|
|
196
|
+
if (!courses.find(c => c.id === req.id))
|
|
197
|
+
courses.push(req);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
return courses;
|
|
203
|
+
}
|
|
204
|
+
/********* CACHE LAYER — Course Providers *********/
|
|
205
|
+
async getCourseProviderByIDs(courseProviderID, customerID) {
|
|
206
|
+
const customer = await this.getCustomerByID(customerID);
|
|
207
|
+
if (!customer || !Array.isArray(customer.courseProviders))
|
|
208
|
+
return null;
|
|
209
|
+
return customer.courseProviders.find((p) => p === courseProviderID) || null;
|
|
210
|
+
}
|
|
211
|
+
/********* Private *********/
|
|
212
|
+
async _getAllRemoteCustomers() {
|
|
213
|
+
await this._initCacheClient();
|
|
214
|
+
if (!this._remoteCache)
|
|
215
|
+
return null;
|
|
216
|
+
const allKeys = await this._remoteCache.keys(`${CacheTypes_js_1.CacheConstants.CustomerPrefix}*`);
|
|
217
|
+
if (!allKeys || allKeys.length === 0)
|
|
218
|
+
return null;
|
|
219
|
+
const raw = await this._remoteCache.mGet(allKeys);
|
|
220
|
+
return Array.isArray(raw) ? raw.map(r => JSON.parse(r)) : null;
|
|
221
|
+
}
|
|
222
|
+
async _getAllRemoteTenants() {
|
|
223
|
+
await this._initCacheClient();
|
|
224
|
+
if (!this._remoteCache)
|
|
225
|
+
return null;
|
|
226
|
+
const allKeys = await this._remoteCache.keys(`${CacheTypes_js_1.CacheConstants.TenantPrefix}*`);
|
|
227
|
+
if (!allKeys || allKeys.length === 0)
|
|
228
|
+
return null;
|
|
229
|
+
const raw = await this._remoteCache.mGet(allKeys);
|
|
230
|
+
return Array.isArray(raw) ? raw.map(r => JSON.parse(r)) : null;
|
|
231
|
+
}
|
|
232
|
+
async _initCacheClient() {
|
|
233
|
+
if (this._remoteCache || !this._cacheConfig)
|
|
234
|
+
return;
|
|
235
|
+
const config = this._cacheConfig;
|
|
236
|
+
if (config.version === 5) {
|
|
237
|
+
const dynamicImport = ['@ikonintegration/ikapi'];
|
|
238
|
+
const { Redis } = await import(dynamicImport[0]);
|
|
239
|
+
this._remoteCache = await Redis.connection({
|
|
240
|
+
hostname: config.endpoint,
|
|
241
|
+
username: config.username,
|
|
242
|
+
password: config.password,
|
|
243
|
+
enableTLS: config.enableTLS ?? true,
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
else {
|
|
247
|
+
const dynamicImport = ['redis', '@ikonintegration/ikapi'];
|
|
248
|
+
await import(dynamicImport[0]);
|
|
249
|
+
const IKAPI = (await import(dynamicImport[1])).default;
|
|
250
|
+
this._remoteCache = new IKAPI.IKRedis({
|
|
251
|
+
host: config.endpoint,
|
|
252
|
+
user: config.username,
|
|
253
|
+
password: config.password,
|
|
254
|
+
enableTLS: config.enableTLS ?? true,
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
exports.CacheClient = CacheClient;
|
|
260
|
+
//# sourceMappingURL=CacheClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CacheClient.js","sourceRoot":"","sources":["../CacheClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal interface for Redis-like clients used by the cache layer.
|
|
3
|
+
* Supports both @ikonintegration/ikapi Redis and the legacy IKRedis.
|
|
4
|
+
*/
|
|
5
|
+
export interface RedisLike {
|
|
6
|
+
get(key: string): Promise<string | null>;
|
|
7
|
+
keys(pattern: string): Promise<string[]>;
|
|
8
|
+
mGet(keys: string[]): Promise<string[]>;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Configuration for the Redis cache connection.
|
|
12
|
+
*/
|
|
13
|
+
export interface CacheConfig {
|
|
14
|
+
endpoint: string;
|
|
15
|
+
username: string;
|
|
16
|
+
password: string;
|
|
17
|
+
enableTLS?: boolean;
|
|
18
|
+
/** Set to 5 to use the new @ikonintegration/ikapi Redis client */
|
|
19
|
+
version?: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Cache key prefixes and TTL constants (matching the legacy client).
|
|
23
|
+
*/
|
|
24
|
+
export declare const CacheConstants: {
|
|
25
|
+
readonly CustomerPrefix: "CO::";
|
|
26
|
+
readonly AllCustomersTTL: number;
|
|
27
|
+
readonly CustomerTTL: 60;
|
|
28
|
+
readonly TenantPrefix: "TN::";
|
|
29
|
+
readonly AllTenantsTTL: number;
|
|
30
|
+
readonly TenantTTL: 60;
|
|
31
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CacheConstants = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Cache key prefixes and TTL constants (matching the legacy client).
|
|
6
|
+
*/
|
|
7
|
+
exports.CacheConstants = {
|
|
8
|
+
// Customer
|
|
9
|
+
CustomerPrefix: 'CO::',
|
|
10
|
+
AllCustomersTTL: 60 * 60, // 1 hour
|
|
11
|
+
CustomerTTL: 60, // 1 minute
|
|
12
|
+
// Tenant
|
|
13
|
+
TenantPrefix: 'TN::',
|
|
14
|
+
AllTenantsTTL: 60 * 60, // 1 hour
|
|
15
|
+
TenantTTL: 60, // 1 minute
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=CacheTypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CacheTypes.js","sourceRoot":"","sources":["../CacheTypes.ts"],"names":[],"mappings":";;;AAsBA;;GAEG;AACU,QAAA,cAAc,GAAG;IAC5B,WAAW;IACX,cAAc,EAAE,MAAM;IACtB,eAAe,EAAE,EAAE,GAAG,EAAE,EAAE,SAAS;IACnC,WAAW,EAAE,EAAE,EAAE,WAAW;IAC5B,SAAS;IACT,YAAY,EAAE,MAAM;IACpB,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,SAAS;IACjC,SAAS,EAAE,EAAE,EAAE,WAAW;CAClB,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple in-memory TTL cache used as a local layer before hitting Redis.
|
|
3
|
+
*/
|
|
4
|
+
export declare class MemoryCache {
|
|
5
|
+
private store;
|
|
6
|
+
getValue<T = any>(key: string): T | null;
|
|
7
|
+
setValue(key: string, value: any, ttlSeconds?: number): void;
|
|
8
|
+
cleanKey(key: string): void;
|
|
9
|
+
clear(): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MemoryCache = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Simple in-memory TTL cache used as a local layer before hitting Redis.
|
|
6
|
+
*/
|
|
7
|
+
class MemoryCache {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.store = new Map();
|
|
10
|
+
}
|
|
11
|
+
getValue(key) {
|
|
12
|
+
const entry = this.store.get(key);
|
|
13
|
+
if (!entry)
|
|
14
|
+
return null;
|
|
15
|
+
if (entry.expiresAt > 0 && Date.now() > entry.expiresAt) {
|
|
16
|
+
this.store.delete(key);
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
return entry.value;
|
|
20
|
+
}
|
|
21
|
+
setValue(key, value, ttlSeconds = 0) {
|
|
22
|
+
const expiresAt = ttlSeconds > 0 ? Date.now() + ttlSeconds * 1000 : 0;
|
|
23
|
+
this.store.set(key, { value, expiresAt });
|
|
24
|
+
}
|
|
25
|
+
cleanKey(key) {
|
|
26
|
+
this.store.delete(key);
|
|
27
|
+
}
|
|
28
|
+
clear() {
|
|
29
|
+
this.store.clear();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.MemoryCache = MemoryCache;
|
|
33
|
+
//# sourceMappingURL=MemoryCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MemoryCache.js","sourceRoot":"","sources":["../MemoryCache.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,WAAW;IAAxB;QACU,UAAK,GAAmD,IAAI,GAAG,EAAE,CAAA;IAwB3E,CAAC;IAtBC,QAAQ,CAAU,GAAW;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACjC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAA;QACvB,IAAI,KAAK,CAAC,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YACtB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,KAAK,CAAC,KAAU,CAAA;IACzB,CAAC;IAED,QAAQ,CAAC,GAAW,EAAE,KAAU,EAAE,aAAqB,CAAC;QACtD,MAAM,SAAS,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QACrE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,QAAQ,CAAC,GAAW;QAClB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;CACF;AAzBD,kCAyBC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Package barrel export.
|
|
3
|
+
* Re-exports both the auto-generated API client and the custom cache extensions.
|
|
4
|
+
*/
|
|
5
|
+
export * from './Api.js';
|
|
6
|
+
export { CacheClient } from './CacheClient.js';
|
|
7
|
+
export { MemoryCache } from './MemoryCache.js';
|
|
8
|
+
export { CacheConstants } from './CacheTypes.js';
|
|
9
|
+
export type { RedisLike, CacheConfig } from './CacheTypes.js';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// @ts-nocheck — This file is compiled in CI alongside generated sources
|
|
3
|
+
/**
|
|
4
|
+
* Package barrel export.
|
|
5
|
+
* Re-exports both the auto-generated API client and the custom cache extensions.
|
|
6
|
+
*/
|
|
7
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
+
if (k2 === undefined) k2 = k;
|
|
9
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
+
}
|
|
13
|
+
Object.defineProperty(o, k2, desc);
|
|
14
|
+
}) : (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
o[k2] = m[k];
|
|
17
|
+
}));
|
|
18
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
19
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.CacheConstants = exports.MemoryCache = exports.CacheClient = void 0;
|
|
23
|
+
// Generated API
|
|
24
|
+
__exportStar(require("./Api.js"), exports);
|
|
25
|
+
// Custom extensions
|
|
26
|
+
var CacheClient_js_1 = require("./CacheClient.js");
|
|
27
|
+
Object.defineProperty(exports, "CacheClient", { enumerable: true, get: function () { return CacheClient_js_1.CacheClient; } });
|
|
28
|
+
var MemoryCache_js_1 = require("./MemoryCache.js");
|
|
29
|
+
Object.defineProperty(exports, "MemoryCache", { enumerable: true, get: function () { return MemoryCache_js_1.MemoryCache; } });
|
|
30
|
+
var CacheTypes_js_1 = require("./CacheTypes.js");
|
|
31
|
+
Object.defineProperty(exports, "CacheConstants", { enumerable: true, get: function () { return CacheTypes_js_1.CacheConstants; } });
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA,wEAAwE;AACxE;;;GAGG;;;;;;;;;;;;;;;;;AAEH,gBAAgB;AAChB,2CAAwB;AAExB,oBAAoB;AACpB,mDAA8C;AAArC,6GAAA,WAAW,OAAA;AACpB,mDAA8C;AAArC,6GAAA,WAAW,OAAA;AACpB,iDAAgD;AAAvC,+GAAA,cAAc,OAAA"}
|
package/index.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// @ts-nocheck — This file is compiled in CI alongside generated sources
|
|
2
|
+
/**
|
|
3
|
+
* Package barrel export.
|
|
4
|
+
* Re-exports both the auto-generated API client and the custom cache extensions.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
// Generated API
|
|
8
|
+
export * from './Api.js'
|
|
9
|
+
|
|
10
|
+
// Custom extensions
|
|
11
|
+
export { CacheClient } from './CacheClient.js'
|
|
12
|
+
export { MemoryCache } from './MemoryCache.js'
|
|
13
|
+
export { CacheConstants } from './CacheTypes.js'
|
|
14
|
+
export type { RedisLike, CacheConfig } from './CacheTypes.js'
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ikonintegration/module-config-api",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.19",
|
|
4
4
|
"description": "",
|
|
5
|
-
"main": "dist/
|
|
5
|
+
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
8
8
|
},
|
|
@@ -12,5 +12,6 @@
|
|
|
12
12
|
"type": "commonjs",
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"axios": "^1.18.1"
|
|
15
|
-
}
|
|
15
|
+
},
|
|
16
|
+
"types": "dist/index.d.ts"
|
|
16
17
|
}
|