pi-kiosk-shared 2.1.5 → 2.1.7
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/api.d.ts +4 -2
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +20 -4
- package/dist/api.js.map +1 -1
- package/package.json +3 -3
package/dist/api.d.ts
CHANGED
|
@@ -31,12 +31,14 @@ export declare const API_ENDPOINTS: {
|
|
|
31
31
|
export declare class APIClient {
|
|
32
32
|
private baseUrl;
|
|
33
33
|
private kioskSecret?;
|
|
34
|
-
|
|
34
|
+
private tenantCode?;
|
|
35
|
+
constructor(baseUrl: string, kioskSecret?: string, tenantCode?: string);
|
|
36
|
+
private injectTenantIntoEndpoint;
|
|
35
37
|
private request;
|
|
36
38
|
get<T>(endpoint: string): Promise<T>;
|
|
37
39
|
post<T>(endpoint: string, data?: any): Promise<T>;
|
|
38
40
|
put<T>(endpoint: string, data?: any): Promise<T>;
|
|
39
41
|
delete<T>(endpoint: string): Promise<T>;
|
|
40
42
|
}
|
|
41
|
-
export declare const createAPIClient: (baseUrl?: string, kioskSecret?: string) => APIClient;
|
|
43
|
+
export declare const createAPIClient: (baseUrl?: string, kioskSecret?: string, tenantCode?: string) => APIClient;
|
|
42
44
|
//# sourceMappingURL=api.d.ts.map
|
package/dist/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsChB,CAAC;AAEX,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAC,CAAS;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsChB,CAAC;AAEX,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAS;gBAEhB,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;IAStE,OAAO,CAAC,wBAAwB;YAalB,OAAO;IAyCf,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAIpC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAOjD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAOhD,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAG9C;AAED,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,cAAc,MAAM,EAAE,aAAa,MAAM,cAK1F,CAAC"}
|
package/dist/api.js
CHANGED
|
@@ -37,18 +37,34 @@ export const API_ENDPOINTS = {
|
|
|
37
37
|
export class APIClient {
|
|
38
38
|
baseUrl;
|
|
39
39
|
kioskSecret;
|
|
40
|
-
|
|
40
|
+
tenantCode;
|
|
41
|
+
constructor(baseUrl, kioskSecret, tenantCode) {
|
|
41
42
|
if (!baseUrl || typeof baseUrl !== 'string') {
|
|
42
43
|
throw new Error('APIClient: baseUrl is required and must be a string');
|
|
43
44
|
}
|
|
44
45
|
this.baseUrl = baseUrl.replace(/\/$/, ''); // Remove trailing slash
|
|
45
46
|
this.kioskSecret = kioskSecret;
|
|
47
|
+
this.tenantCode = tenantCode;
|
|
48
|
+
}
|
|
49
|
+
injectTenantIntoEndpoint(endpoint) {
|
|
50
|
+
if (!this.tenantCode) {
|
|
51
|
+
return endpoint;
|
|
52
|
+
}
|
|
53
|
+
if (endpoint.startsWith('/api/')) {
|
|
54
|
+
// Handle query strings - split endpoint and query, inject tenant into path only
|
|
55
|
+
const [path, query] = endpoint.split('?');
|
|
56
|
+
const tenantPath = `/api/${this.tenantCode}${path.slice(4)}`;
|
|
57
|
+
return query ? `${tenantPath}?${query}` : tenantPath;
|
|
58
|
+
}
|
|
59
|
+
return endpoint;
|
|
46
60
|
}
|
|
47
61
|
async request(endpoint, options = {}) {
|
|
48
62
|
if (!endpoint || typeof endpoint !== 'string') {
|
|
49
63
|
throw new Error(`APIClient: endpoint is required and must be a string, got: ${typeof endpoint}`);
|
|
50
64
|
}
|
|
51
|
-
|
|
65
|
+
// Inject tenant into endpoint path if tenant is configured
|
|
66
|
+
const tenantEndpoint = this.injectTenantIntoEndpoint(endpoint);
|
|
67
|
+
const url = `${this.baseUrl}${tenantEndpoint}`;
|
|
52
68
|
// Validate URL before making request
|
|
53
69
|
try {
|
|
54
70
|
new URL(url);
|
|
@@ -92,9 +108,9 @@ export class APIClient {
|
|
|
92
108
|
return this.request(endpoint, { method: 'DELETE' });
|
|
93
109
|
}
|
|
94
110
|
}
|
|
95
|
-
export const createAPIClient = (baseUrl, kioskSecret) => {
|
|
111
|
+
export const createAPIClient = (baseUrl, kioskSecret, tenantCode) => {
|
|
96
112
|
// Fallback to default if not provided
|
|
97
113
|
const url = baseUrl || 'http://localhost:3015';
|
|
98
|
-
return new APIClient(url, kioskSecret);
|
|
114
|
+
return new APIClient(url, kioskSecret, tenantCode);
|
|
99
115
|
};
|
|
100
116
|
//# sourceMappingURL=api.js.map
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,uBAAuB;AAEvB,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,oBAAoB;IACpB,QAAQ,EAAE,eAAe;IACzB,aAAa,EAAE,yBAAyB;IAExC,oBAAoB;IACpB,iBAAiB,EAAE,yBAAyB;IAC5C,uBAAuB,EAAE,+BAA+B;IACxD,oBAAoB,EAAE,uCAAuC;IAC7D,gBAAgB,EAAE,wBAAwB;IAC1C,sBAAsB,EAAE,8BAA8B;IACtD,cAAc,EAAE,sBAAsB;IACtC,wBAAwB,EAAE,gCAAgC;IAC1D,uBAAuB,EAAE,+BAA+B;IAExD,8BAA8B;IAC9B,qBAAqB,EAAE,6BAA6B;IACpD,qBAAqB,EAAE,wCAAwC;IAC/D,qBAAqB,EAAE,6BAA6B;IACpD,sBAAsB,EAAE,8BAA8B;IAEtD,kBAAkB;IAClB,WAAW,EAAE,kBAAkB;IAC/B,cAAc,EAAE,qBAAqB;IACrC,wBAAwB,EAAE,wCAAwC;IAClE,uBAAuB,EAAE,mCAAmC;IAC5D,8BAA8B,EAAE,mDAAmD;IACnF,8BAA8B,EAAE,+CAA+C;IAC/E,YAAY,EAAE,mBAAmB;IACjC,mBAAmB,EAAE,uBAAuB;IAC5C,UAAU,EAAE,iBAAiB;IAE7B,mBAAmB;IACnB,MAAM,EAAE,SAAS;IACjB,wBAAwB,EAAE,2BAA2B;IACrD,kCAAkC,EAAE,qCAAqC;IACzE,kBAAkB,EAAE,6BAA6B;IACjD,MAAM,EAAE,kBAAkB;CAClB,CAAC;AAEX,MAAM,OAAO,SAAS;IACZ,OAAO,CAAS;IAChB,WAAW,CAAU;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-kiosk-shared",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.7",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Shared types, API contracts, and error classes for Pi Kiosk system",
|
|
6
6
|
"keywords": [
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
"clean": "rimraf dist",
|
|
35
35
|
"publish:local": "npm run build && npm pack --pack-destination ../",
|
|
36
36
|
"prepublishOnly": "npm run build",
|
|
37
|
-
"preversion": "npm run test",
|
|
38
|
-
"postversion": "git push && git push --tags"
|
|
37
|
+
"preversion": "npm run test -- --passWithNoTests",
|
|
38
|
+
"postversion": "echo 'Version updated. Run git push && git push --tags manually if needed.'"
|
|
39
39
|
},
|
|
40
40
|
"files": [
|
|
41
41
|
"dist",
|