@progalaxyelabs/ngx-stonescriptphp-client 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/HLD.md +31 -0
  2. package/LICENSE +21 -0
  3. package/README.md +89 -2
  4. package/{lib → dist}/api-connection.service.d.ts +1 -3
  5. package/dist/api-connection.service.d.ts.map +1 -0
  6. package/dist/api-connection.service.js +314 -0
  7. package/dist/api-connection.service.js.map +1 -0
  8. package/{lib → dist}/api-response.model.d.ts +1 -0
  9. package/dist/api-response.model.d.ts.map +1 -0
  10. package/dist/api-response.model.js +51 -0
  11. package/dist/api-response.model.js.map +1 -0
  12. package/dist/auth.service.d.ts +4 -0
  13. package/dist/auth.service.d.ts.map +1 -0
  14. package/dist/auth.service.js +16 -0
  15. package/dist/auth.service.js.map +1 -0
  16. package/{lib → dist}/csrf.service.d.ts +1 -3
  17. package/dist/csrf.service.d.ts.map +1 -0
  18. package/dist/csrf.service.js +47 -0
  19. package/dist/csrf.service.js.map +1 -0
  20. package/dist/db.service.d.ts +4 -0
  21. package/dist/db.service.d.ts.map +1 -0
  22. package/dist/db.service.js +16 -0
  23. package/dist/db.service.js.map +1 -0
  24. package/{fesm2022/progalaxyelabs-ngx-stonescriptphp-client.mjs → dist/esm/api-connection.service.js} +28 -276
  25. package/dist/esm/api-connection.service.js.map +1 -0
  26. package/dist/esm/api-response.model.js +47 -0
  27. package/dist/esm/api-response.model.js.map +1 -0
  28. package/dist/esm/auth.service.js +13 -0
  29. package/dist/esm/auth.service.js.map +1 -0
  30. package/dist/esm/csrf.service.js +44 -0
  31. package/dist/esm/csrf.service.js.map +1 -0
  32. package/dist/esm/db.service.js +13 -0
  33. package/dist/esm/db.service.js.map +1 -0
  34. package/dist/esm/index.js +13 -0
  35. package/dist/esm/index.js.map +1 -0
  36. package/dist/esm/my-environment.model.js +29 -0
  37. package/dist/esm/my-environment.model.js.map +1 -0
  38. package/dist/esm/ngx-stonescriptphp-client.module.js +25 -0
  39. package/dist/esm/ngx-stonescriptphp-client.module.js.map +1 -0
  40. package/dist/esm/signin-status.service.js +23 -0
  41. package/dist/esm/signin-status.service.js.map +1 -0
  42. package/dist/esm/token.service.js +61 -0
  43. package/dist/esm/token.service.js.map +1 -0
  44. package/dist/index.d.ts +10 -0
  45. package/dist/index.d.ts.map +1 -0
  46. package/dist/index.js +16 -0
  47. package/dist/index.js.map +1 -0
  48. package/{lib → dist}/my-environment.model.d.ts +1 -0
  49. package/dist/my-environment.model.d.ts.map +1 -0
  50. package/dist/my-environment.model.js +33 -0
  51. package/dist/my-environment.model.js.map +1 -0
  52. package/dist/ngx-stonescriptphp-client.module.d.ts +6 -0
  53. package/dist/ngx-stonescriptphp-client.module.d.ts.map +1 -0
  54. package/dist/ngx-stonescriptphp-client.module.js +28 -0
  55. package/dist/ngx-stonescriptphp-client.module.js.map +1 -0
  56. package/{lib → dist}/signin-status.service.d.ts +1 -3
  57. package/dist/signin-status.service.d.ts.map +1 -0
  58. package/dist/signin-status.service.js +26 -0
  59. package/dist/signin-status.service.js.map +1 -0
  60. package/{lib → dist}/token.service.d.ts +1 -3
  61. package/dist/token.service.d.ts.map +1 -0
  62. package/dist/token.service.js +64 -0
  63. package/dist/token.service.js.map +1 -0
  64. package/docs/AUTH_COMPATIBILITY.md +310 -0
  65. package/docs/CHANGELOG.md +261 -0
  66. package/package.json +59 -18
  67. package/esm2022/lib/api-connection.service.mjs +0 -304
  68. package/esm2022/lib/api-response.model.mjs +0 -44
  69. package/esm2022/lib/auth.service.mjs +0 -14
  70. package/esm2022/lib/csrf.service.mjs +0 -46
  71. package/esm2022/lib/db.service.mjs +0 -14
  72. package/esm2022/lib/my-environment.model.mjs +0 -31
  73. package/esm2022/lib/ngx-stonescriptphp-client/ngx-stonescriptphp-client.module.mjs +0 -27
  74. package/esm2022/lib/signin-status.service.mjs +0 -23
  75. package/esm2022/lib/token.service.mjs +0 -63
  76. package/esm2022/progalaxyelabs-ngx-stonescriptphp-client.mjs +0 -5
  77. package/esm2022/public-api.mjs +0 -13
  78. package/fesm2022/progalaxyelabs-ngx-stonescriptphp-client.mjs.map +0 -1
  79. package/index.d.ts +0 -5
  80. package/lib/auth.service.d.ts +0 -6
  81. package/lib/db.service.d.ts +0 -6
  82. package/lib/ngx-stonescriptphp-client/ngx-stonescriptphp-client.module.d.ts +0 -10
  83. package/public-api.d.ts +0 -9
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CsrfService = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const core_1 = require("@angular/core");
6
+ /**
7
+ * CSRF Token Service
8
+ *
9
+ * Manages CSRF tokens for cookie-based authentication.
10
+ * Reads CSRF token from cookies and provides it for request headers.
11
+ */
12
+ let CsrfService = class CsrfService {
13
+ /**
14
+ * Get CSRF token from cookie
15
+ */
16
+ getCsrfToken(cookieName = 'csrf_token') {
17
+ const cookies = document.cookie.split(';');
18
+ for (const cookie of cookies) {
19
+ const [name, value] = cookie.trim().split('=');
20
+ if (name === cookieName) {
21
+ return decodeURIComponent(value);
22
+ }
23
+ }
24
+ return null;
25
+ }
26
+ /**
27
+ * Check if CSRF token exists
28
+ */
29
+ hasCsrfToken(cookieName = 'csrf_token') {
30
+ return this.getCsrfToken(cookieName) !== null;
31
+ }
32
+ /**
33
+ * Clear CSRF token (for logout)
34
+ * Note: Client-side deletion is limited for httpOnly cookies
35
+ */
36
+ clearCsrfToken(cookieName = 'csrf_token') {
37
+ // Can only clear non-httpOnly cookies
38
+ document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`;
39
+ }
40
+ };
41
+ exports.CsrfService = CsrfService;
42
+ exports.CsrfService = CsrfService = tslib_1.__decorate([
43
+ (0, core_1.Injectable)({
44
+ providedIn: 'root'
45
+ })
46
+ ], CsrfService);
47
+ //# sourceMappingURL=csrf.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csrf.service.js","sourceRoot":"","sources":["../src/csrf.service.ts"],"names":[],"mappings":";;;;AAAA,wCAA2C;AAE3C;;;;;GAKG;AAII,IAAM,WAAW,GAAjB,MAAM,WAAW;IAEpB;;OAEG;IACH,YAAY,CAAC,aAAqB,YAAY;QAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/C,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBACtB,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,aAAqB,YAAY;QAC1C,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IAClD,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,aAAqB,YAAY;QAC5C,sCAAsC;QACtC,QAAQ,CAAC,MAAM,GAAG,GAAG,UAAU,mDAAmD,CAAC;IACvF,CAAC;CACJ,CAAA;AA/BY,kCAAW;sBAAX,WAAW;IAHvB,IAAA,iBAAU,EAAC;QACR,UAAU,EAAE,MAAM;KACrB,CAAC;GACW,WAAW,CA+BvB"}
@@ -0,0 +1,4 @@
1
+ export declare class DbService {
2
+ constructor();
3
+ }
4
+ //# sourceMappingURL=db.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db.service.d.ts","sourceRoot":"","sources":["../src/db.service.ts"],"names":[],"mappings":"AAEA,qBAGa,SAAS;;CAGrB"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DbService = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const core_1 = require("@angular/core");
6
+ let DbService = class DbService {
7
+ constructor() { }
8
+ };
9
+ exports.DbService = DbService;
10
+ exports.DbService = DbService = tslib_1.__decorate([
11
+ (0, core_1.Injectable)({
12
+ providedIn: 'root'
13
+ }),
14
+ tslib_1.__metadata("design:paramtypes", [])
15
+ ], DbService);
16
+ //# sourceMappingURL=db.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db.service.js","sourceRoot":"","sources":["../src/db.service.ts"],"names":[],"mappings":";;;;AAAA,wCAA2C;AAKpC,IAAM,SAAS,GAAf,MAAM,SAAS;IAEpB,gBAAgB,CAAC;CAClB,CAAA;AAHY,8BAAS;oBAAT,SAAS;IAHrB,IAAA,iBAAU,EAAC;QACV,UAAU,EAAE,MAAM;KACnB,CAAC;;GACW,SAAS,CAGrB"}
@@ -1,216 +1,23 @@
1
- import * as i0 from '@angular/core';
2
- import { Injectable, NgModule } from '@angular/core';
3
- import { BehaviorSubject } from 'rxjs';
4
- import { CommonModule } from '@angular/common';
5
-
6
- class ApiResponse {
7
- constructor(status, data = {}, message = '') {
8
- this.status = status;
9
- this.data = data;
10
- this.message = message;
11
- }
12
- onOk(callback) {
13
- if (this.status === 'ok') {
14
- callback(this.data);
15
- }
16
- return this;
17
- }
18
- onNotOk(callback) {
19
- if (this.status === 'not ok') {
20
- callback(this.message, this.data);
21
- }
22
- return this;
23
- }
24
- onError(callback) {
25
- if (this.status === 'error') {
26
- callback();
27
- }
28
- return this;
29
- }
30
- isSuccess() {
31
- return this.status === 'ok';
32
- }
33
- isError() {
34
- return this.status === 'error' || this.status === 'not ok';
35
- }
36
- getData() {
37
- return this.data || null;
38
- }
39
- getError() {
40
- return this.message || 'Unknown error';
41
- }
42
- getStatus() {
43
- return this.status;
44
- }
45
- getMessage() {
46
- return this.message;
47
- }
48
- }
49
-
50
- class TokenService {
51
- constructor() {
52
- this.accessToken = '';
53
- this.refreshToken = '';
54
- this.lsAccessTokenKey = 'progalaxyapi_access_token';
55
- this.lsRefreshTokenKey = 'progalaxyapi_refresh_token';
56
- }
57
- setTokens(accessToken, refreshToken) {
58
- this.accessToken = accessToken;
59
- this.refreshToken = refreshToken;
60
- localStorage.setItem(this.lsAccessTokenKey, accessToken);
61
- localStorage.setItem(this.lsRefreshTokenKey, refreshToken);
62
- }
63
- setAccessToken(accessToken) {
64
- this.accessToken = accessToken;
65
- localStorage.setItem(this.lsAccessTokenKey, accessToken);
66
- }
67
- setRefreshToken(refreshToken) {
68
- this.refreshToken = refreshToken;
69
- localStorage.setItem(this.lsRefreshTokenKey, refreshToken);
70
- }
71
- getAccessToken() {
72
- if (this.accessToken) {
73
- return this.accessToken;
74
- }
75
- const storedAccessToken = localStorage.getItem(this.lsAccessTokenKey);
76
- if (storedAccessToken) {
77
- return storedAccessToken;
78
- }
79
- else {
80
- return '';
81
- }
82
- }
83
- getRefreshToken() {
84
- if (this.refreshToken) {
85
- return this.refreshToken;
86
- }
87
- const storedRefreshToken = localStorage.getItem(this.lsRefreshTokenKey);
88
- if (storedRefreshToken) {
89
- return storedRefreshToken;
90
- }
91
- else {
92
- return '';
93
- }
94
- }
95
- clear() {
96
- this.accessToken = '';
97
- this.refreshToken = '';
98
- localStorage.removeItem(this.lsAccessTokenKey);
99
- localStorage.removeItem(this.lsRefreshTokenKey);
100
- }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
102
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TokenService, providedIn: 'root' }); }
103
- }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TokenService, decorators: [{
105
- type: Injectable,
106
- args: [{
107
- providedIn: 'root'
108
- }]
109
- }], ctorParameters: function () { return []; } });
110
-
111
- class SigninStatusService {
112
- constructor() {
113
- this.status = new BehaviorSubject(false);
114
- }
115
- signedOut() {
116
- this.status.next(false);
117
- }
118
- signedIn() {
119
- this.status.next(true);
120
- }
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SigninStatusService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
122
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SigninStatusService, providedIn: 'root' }); }
123
- }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SigninStatusService, decorators: [{
125
- type: Injectable,
126
- args: [{
127
- providedIn: 'root'
128
- }]
129
- }], ctorParameters: function () { return []; } });
130
-
131
- class MyEnvironmentModel {
132
- constructor() {
133
- this.production = true;
134
- this.firebase = {
135
- projectId: '',
136
- appId: '',
137
- databaseURL: '',
138
- storageBucket: '',
139
- locationId: '',
140
- apiKey: '',
141
- authDomain: '',
142
- messagingSenderId: '',
143
- measurementId: ''
144
- };
145
- this.apiServer = { host: '' };
146
- this.chatServer = { host: '' };
147
- /**
148
- * Authentication configuration
149
- * @default { mode: 'cookie', refreshEndpoint: '/auth/refresh', useCsrf: true }
150
- */
151
- this.auth = {
152
- mode: 'cookie',
153
- refreshEndpoint: '/auth/refresh',
154
- useCsrf: true,
155
- refreshTokenCookieName: 'refresh_token',
156
- csrfTokenCookieName: 'csrf_token',
157
- csrfHeaderName: 'X-CSRF-Token'
158
- };
159
- }
160
- }
161
-
162
- /**
163
- * CSRF Token Service
164
- *
165
- * Manages CSRF tokens for cookie-based authentication.
166
- * Reads CSRF token from cookies and provides it for request headers.
167
- */
168
- class CsrfService {
169
- /**
170
- * Get CSRF token from cookie
171
- */
172
- getCsrfToken(cookieName = 'csrf_token') {
173
- const cookies = document.cookie.split(';');
174
- for (const cookie of cookies) {
175
- const [name, value] = cookie.trim().split('=');
176
- if (name === cookieName) {
177
- return decodeURIComponent(value);
178
- }
179
- }
180
- return null;
181
- }
182
- /**
183
- * Check if CSRF token exists
184
- */
185
- hasCsrfToken(cookieName = 'csrf_token') {
186
- return this.getCsrfToken(cookieName) !== null;
187
- }
188
- /**
189
- * Clear CSRF token (for logout)
190
- * Note: Client-side deletion is limited for httpOnly cookies
191
- */
192
- clearCsrfToken(cookieName = 'csrf_token') {
193
- // Can only clear non-httpOnly cookies
194
- document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`;
195
- }
196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsrfService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
197
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsrfService, providedIn: 'root' }); }
198
- }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsrfService, decorators: [{
200
- type: Injectable,
201
- args: [{
202
- providedIn: 'root'
203
- }]
204
- }] });
205
-
206
- class ApiConnectionService {
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { TokenService } from './token.service';
4
+ import { SigninStatusService } from './signin-status.service';
5
+ import { ApiResponse } from './api-response.model';
6
+ import { MyEnvironmentModel } from './my-environment.model';
7
+ import { CsrfService } from './csrf.service';
8
+ let ApiConnectionService = class ApiConnectionService {
9
+ tokens;
10
+ signinStatus;
11
+ environment;
12
+ csrf;
13
+ host = ''; // contains trailing slash
14
+ accessToken = '';
15
+ authConfig;
207
16
  constructor(tokens, signinStatus, environment, csrf) {
208
17
  this.tokens = tokens;
209
18
  this.signinStatus = signinStatus;
210
19
  this.environment = environment;
211
20
  this.csrf = csrf;
212
- this.host = ''; // contains trailing slash
213
- this.accessToken = '';
214
21
  this.host = environment.apiServer.host;
215
22
  // Set default auth config based on mode
216
23
  this.authConfig = {
@@ -396,7 +203,7 @@ class ApiConnectionService {
396
203
  let refreshTokenResponse = await fetch(refreshTokenUrl, {
397
204
  method: 'POST',
398
205
  mode: 'cors',
399
- credentials: 'include',
206
+ credentials: 'include', // Important: send cookies
400
207
  redirect: 'error',
401
208
  headers: headers
402
209
  });
@@ -490,70 +297,15 @@ class ApiConnectionService {
490
297
  }
491
298
  return '';
492
299
  }
493
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ApiConnectionService, deps: [{ token: TokenService }, { token: SigninStatusService }, { token: MyEnvironmentModel }, { token: CsrfService }], target: i0.ɵɵFactoryTarget.Injectable }); }
494
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ApiConnectionService, providedIn: 'root' }); }
495
- }
496
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ApiConnectionService, decorators: [{
497
- type: Injectable,
498
- args: [{
499
- providedIn: 'root'
500
- }]
501
- }], ctorParameters: function () { return [{ type: TokenService }, { type: SigninStatusService }, { type: MyEnvironmentModel }, { type: CsrfService }]; } });
502
-
503
- class AuthService {
504
- constructor() { }
505
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
506
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthService, providedIn: 'root' }); }
507
- }
508
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthService, decorators: [{
509
- type: Injectable,
510
- args: [{
511
- providedIn: 'root'
512
- }]
513
- }], ctorParameters: function () { return []; } });
514
-
515
- class DbService {
516
- constructor() { }
517
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
518
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbService, providedIn: 'root' }); }
519
- }
520
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbService, decorators: [{
521
- type: Injectable,
522
- args: [{
523
- providedIn: 'root'
524
- }]
525
- }], ctorParameters: function () { return []; } });
526
-
527
- class NgxStoneScriptPhpClientModule {
528
- static forRoot(environment) {
529
- return {
530
- ngModule: NgxStoneScriptPhpClientModule,
531
- providers: [
532
- { provide: MyEnvironmentModel, useValue: environment }
533
- ]
534
- };
535
- }
536
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgxStoneScriptPhpClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
537
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgxStoneScriptPhpClientModule, imports: [CommonModule] }); }
538
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgxStoneScriptPhpClientModule, imports: [CommonModule] }); }
539
- }
540
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgxStoneScriptPhpClientModule, decorators: [{
541
- type: NgModule,
542
- args: [{
543
- declarations: [],
544
- imports: [
545
- CommonModule
546
- ]
547
- }]
548
- }] });
549
-
550
- /*
551
- * Public API Surface of ngx-stonescriptphp-client
552
- */
553
-
554
- /**
555
- * Generated bundle index. Do not edit.
556
- */
557
-
558
- export { ApiConnectionService, ApiResponse, AuthService, CsrfService, DbService, MyEnvironmentModel, NgxStoneScriptPhpClientModule, SigninStatusService, TokenService };
559
- //# sourceMappingURL=progalaxyelabs-ngx-stonescriptphp-client.mjs.map
300
+ };
301
+ ApiConnectionService = __decorate([
302
+ Injectable({
303
+ providedIn: 'root'
304
+ }),
305
+ __metadata("design:paramtypes", [TokenService,
306
+ SigninStatusService,
307
+ MyEnvironmentModel,
308
+ CsrfService])
309
+ ], ApiConnectionService);
310
+ export { ApiConnectionService };
311
+ //# sourceMappingURL=api-connection.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-connection.service.js","sourceRoot":"","sources":["../../src/api-connection.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ export class ApiResponse {
2
+ status;
3
+ data;
4
+ message;
5
+ constructor(status, data = {}, message = '') {
6
+ this.status = status;
7
+ this.data = data;
8
+ this.message = message;
9
+ }
10
+ onOk(callback) {
11
+ if (this.status === 'ok') {
12
+ callback(this.data);
13
+ }
14
+ return this;
15
+ }
16
+ onNotOk(callback) {
17
+ if (this.status === 'not ok') {
18
+ callback(this.message, this.data);
19
+ }
20
+ return this;
21
+ }
22
+ onError(callback) {
23
+ if (this.status === 'error') {
24
+ callback();
25
+ }
26
+ return this;
27
+ }
28
+ isSuccess() {
29
+ return this.status === 'ok';
30
+ }
31
+ isError() {
32
+ return this.status === 'error' || this.status === 'not ok';
33
+ }
34
+ getData() {
35
+ return this.data || null;
36
+ }
37
+ getError() {
38
+ return this.message || 'Unknown error';
39
+ }
40
+ getStatus() {
41
+ return this.status;
42
+ }
43
+ getMessage() {
44
+ return this.message;
45
+ }
46
+ }
47
+ //# sourceMappingURL=api-response.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-response.model.js","sourceRoot":"","sources":["../../src/api-response.model.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAW;IACZ,MAAM,CAAQ;IACd,IAAI,CAAK;IACT,OAAO,CAAQ;IAEvB,YAAY,MAAc,EAAE,OAAY,EAAE,EAAE,UAAkB,EAAE;QAC5D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAED,IAAI,CAAC,QAAkC;QACnC,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACvB,CAAC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IAED,OAAO,CAAC,QAAmD;QACvD,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IAED,OAAO,CAAC,QAAoB;QACxB,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC1B,QAAQ,EAAE,CAAA;QACd,CAAC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,KAAK,IAAI,CAAA;IAC/B,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAA;IAC9D,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAA;IAC5B,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,OAAO,IAAI,eAAe,CAAA;IAC1C,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;CACJ"}
@@ -0,0 +1,13 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ let AuthService = class AuthService {
4
+ constructor() { }
5
+ };
6
+ AuthService = __decorate([
7
+ Injectable({
8
+ providedIn: 'root'
9
+ }),
10
+ __metadata("design:paramtypes", [])
11
+ ], AuthService);
12
+ export { AuthService };
13
+ //# sourceMappingURL=auth.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../src/auth.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKpC,IAAM,WAAW,GAAjB,MAAM,WAAW;IAEtB,gBAAgB,CAAC;CAClB,CAAA;AAHY,WAAW;IAHvB,UAAU,CAAC;QACV,UAAU,EAAE,MAAM;KACnB,CAAC;;GACW,WAAW,CAGvB"}
@@ -0,0 +1,44 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ /**
4
+ * CSRF Token Service
5
+ *
6
+ * Manages CSRF tokens for cookie-based authentication.
7
+ * Reads CSRF token from cookies and provides it for request headers.
8
+ */
9
+ let CsrfService = class CsrfService {
10
+ /**
11
+ * Get CSRF token from cookie
12
+ */
13
+ getCsrfToken(cookieName = 'csrf_token') {
14
+ const cookies = document.cookie.split(';');
15
+ for (const cookie of cookies) {
16
+ const [name, value] = cookie.trim().split('=');
17
+ if (name === cookieName) {
18
+ return decodeURIComponent(value);
19
+ }
20
+ }
21
+ return null;
22
+ }
23
+ /**
24
+ * Check if CSRF token exists
25
+ */
26
+ hasCsrfToken(cookieName = 'csrf_token') {
27
+ return this.getCsrfToken(cookieName) !== null;
28
+ }
29
+ /**
30
+ * Clear CSRF token (for logout)
31
+ * Note: Client-side deletion is limited for httpOnly cookies
32
+ */
33
+ clearCsrfToken(cookieName = 'csrf_token') {
34
+ // Can only clear non-httpOnly cookies
35
+ document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`;
36
+ }
37
+ };
38
+ CsrfService = __decorate([
39
+ Injectable({
40
+ providedIn: 'root'
41
+ })
42
+ ], CsrfService);
43
+ export { CsrfService };
44
+ //# sourceMappingURL=csrf.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csrf.service.js","sourceRoot":"","sources":["../../src/csrf.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C;;;;;GAKG;AAII,IAAM,WAAW,GAAjB,MAAM,WAAW;IAEpB;;OAEG;IACH,YAAY,CAAC,aAAqB,YAAY;QAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/C,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBACtB,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,aAAqB,YAAY;QAC1C,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IAClD,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,aAAqB,YAAY;QAC5C,sCAAsC;QACtC,QAAQ,CAAC,MAAM,GAAG,GAAG,UAAU,mDAAmD,CAAC;IACvF,CAAC;CACJ,CAAA;AA/BY,WAAW;IAHvB,UAAU,CAAC;QACR,UAAU,EAAE,MAAM;KACrB,CAAC;GACW,WAAW,CA+BvB"}
@@ -0,0 +1,13 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ let DbService = class DbService {
4
+ constructor() { }
5
+ };
6
+ DbService = __decorate([
7
+ Injectable({
8
+ providedIn: 'root'
9
+ }),
10
+ __metadata("design:paramtypes", [])
11
+ ], DbService);
12
+ export { DbService };
13
+ //# sourceMappingURL=db.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db.service.js","sourceRoot":"","sources":["../../src/db.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKpC,IAAM,SAAS,GAAf,MAAM,SAAS;IAEpB,gBAAgB,CAAC;CAClB,CAAA;AAHY,SAAS;IAHrB,UAAU,CAAC;QACV,UAAU,EAAE,MAAM;KACnB,CAAC;;GACW,SAAS,CAGrB"}
@@ -0,0 +1,13 @@
1
+ /*
2
+ * Public API Surface of ngx-stonescriptphp-client
3
+ */
4
+ export * from './api-connection.service';
5
+ export * from './auth.service';
6
+ export * from './db.service';
7
+ export * from './signin-status.service';
8
+ export * from './token.service';
9
+ export * from './csrf.service';
10
+ export * from './api-response.model';
11
+ export * from './my-environment.model';
12
+ export * from './ngx-stonescriptphp-client.module';
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC"}
@@ -0,0 +1,29 @@
1
+ export class MyEnvironmentModel {
2
+ production = true;
3
+ firebase = {
4
+ projectId: '',
5
+ appId: '',
6
+ databaseURL: '',
7
+ storageBucket: '',
8
+ locationId: '',
9
+ apiKey: '',
10
+ authDomain: '',
11
+ messagingSenderId: '',
12
+ measurementId: ''
13
+ };
14
+ apiServer = { host: '' };
15
+ chatServer = { host: '' };
16
+ /**
17
+ * Authentication configuration
18
+ * @default { mode: 'cookie', refreshEndpoint: '/auth/refresh', useCsrf: true }
19
+ */
20
+ auth = {
21
+ mode: 'cookie',
22
+ refreshEndpoint: '/auth/refresh',
23
+ useCsrf: true,
24
+ refreshTokenCookieName: 'refresh_token',
25
+ csrfTokenCookieName: 'csrf_token',
26
+ csrfHeaderName: 'X-CSRF-Token'
27
+ };
28
+ }
29
+ //# sourceMappingURL=my-environment.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"my-environment.model.js","sourceRoot":"","sources":["../../src/my-environment.model.ts"],"names":[],"mappings":"AA0CA,MAAM,OAAO,kBAAkB;IAC3B,UAAU,GAAY,IAAI,CAAA;IAC1B,QAAQ,GAUJ;QACI,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,EAAE;QACf,aAAa,EAAE,EAAE;QACjB,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;QACd,iBAAiB,EAAE,EAAE;QACrB,aAAa,EAAE,EAAE;KACpB,CAAA;IACL,SAAS,GAEL,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;IAChB,UAAU,GAEN,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;IAEhB;;;OAGG;IACH,IAAI,GAAgB;QAChB,IAAI,EAAE,QAAQ;QACd,eAAe,EAAE,eAAe;QAChC,OAAO,EAAE,IAAI;QACb,sBAAsB,EAAE,eAAe;QACvC,mBAAmB,EAAE,YAAY;QACjC,cAAc,EAAE,cAAc;KACjC,CAAC;CACL"}
@@ -0,0 +1,25 @@
1
+ var NgxStoneScriptPhpClientModule_1;
2
+ import { __decorate } from "tslib";
3
+ import { NgModule } from '@angular/core';
4
+ import { CommonModule } from '@angular/common';
5
+ import { MyEnvironmentModel } from './my-environment.model';
6
+ let NgxStoneScriptPhpClientModule = NgxStoneScriptPhpClientModule_1 = class NgxStoneScriptPhpClientModule {
7
+ static forRoot(environment) {
8
+ return {
9
+ ngModule: NgxStoneScriptPhpClientModule_1,
10
+ providers: [
11
+ { provide: MyEnvironmentModel, useValue: environment }
12
+ ]
13
+ };
14
+ }
15
+ };
16
+ NgxStoneScriptPhpClientModule = NgxStoneScriptPhpClientModule_1 = __decorate([
17
+ NgModule({
18
+ declarations: [],
19
+ imports: [
20
+ CommonModule
21
+ ]
22
+ })
23
+ ], NgxStoneScriptPhpClientModule);
24
+ export { NgxStoneScriptPhpClientModule };
25
+ //# sourceMappingURL=ngx-stonescriptphp-client.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngx-stonescriptphp-client.module.js","sourceRoot":"","sources":["../../src/ngx-stonescriptphp-client.module.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAuB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAUrD,IAAM,6BAA6B,qCAAnC,MAAM,6BAA6B;IAC/B,MAAM,CAAC,OAAO,CAAC,WAA+B;QACjD,OAAO;YACH,QAAQ,EAAE,+BAA6B;YACvC,SAAS,EAAE;gBACP,EAAE,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,WAAW,EAAE;aACzD;SACJ,CAAA;IACL,CAAC;CACJ,CAAA;AATY,6BAA6B;IANzC,QAAQ,CAAC;QACN,YAAY,EAAE,EAAE;QAChB,OAAO,EAAE;YACL,YAAY;SACf;KACJ,CAAC;GACW,6BAA6B,CASzC"}