@remnawave/backend-contract 2.2.17 → 2.2.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.
Files changed (31) hide show
  1. package/build/backend/commands/remnawave-settings/get-remnawave-settings.command.d.ts +229 -0
  2. package/build/backend/commands/remnawave-settings/get-remnawave-settings.command.d.ts.map +1 -1
  3. package/build/backend/commands/remnawave-settings/update-remnawave-settings.command.d.ts +400 -0
  4. package/build/backend/commands/remnawave-settings/update-remnawave-settings.command.d.ts.map +1 -1
  5. package/build/backend/commands/remnawave-settings/update-remnawave-settings.command.js +3 -0
  6. package/build/backend/models/remnawave-settings/index.d.ts +3 -0
  7. package/build/backend/models/remnawave-settings/index.d.ts.map +1 -1
  8. package/build/backend/models/remnawave-settings/index.js +3 -0
  9. package/build/backend/models/remnawave-settings/oauth2-settings.schema.d.ts +96 -0
  10. package/build/backend/models/remnawave-settings/oauth2-settings.schema.d.ts.map +1 -0
  11. package/build/backend/models/remnawave-settings/oauth2-settings.schema.js +32 -0
  12. package/build/backend/models/remnawave-settings/passkey-settings.schema.d.ts +1 -0
  13. package/build/backend/models/remnawave-settings/passkey-settings.schema.d.ts.map +1 -1
  14. package/build/backend/models/remnawave-settings/passkey-settings.schema.js +13 -11
  15. package/build/backend/models/remnawave-settings/password-auth-settings.schema.d.ts +10 -0
  16. package/build/backend/models/remnawave-settings/password-auth-settings.schema.d.ts.map +1 -0
  17. package/build/backend/models/remnawave-settings/password-auth-settings.schema.js +10 -0
  18. package/build/backend/models/remnawave-settings/remnawave-settings.schema.d.ts +171 -2
  19. package/build/backend/models/remnawave-settings/remnawave-settings.schema.d.ts.map +1 -1
  20. package/build/backend/models/remnawave-settings/remnawave-settings.schema.js +6 -0
  21. package/build/backend/models/remnawave-settings/tg-auth-settings.schema.d.ts +16 -0
  22. package/build/backend/models/remnawave-settings/tg-auth-settings.schema.d.ts.map +1 -0
  23. package/build/backend/models/remnawave-settings/tg-auth-settings.schema.js +12 -0
  24. package/build/frontend/commands/remnawave-settings/update-remnawave-settings.command.js +3 -0
  25. package/build/frontend/models/remnawave-settings/index.js +3 -0
  26. package/build/frontend/models/remnawave-settings/oauth2-settings.schema.js +32 -0
  27. package/build/frontend/models/remnawave-settings/passkey-settings.schema.js +13 -11
  28. package/build/frontend/models/remnawave-settings/password-auth-settings.schema.js +10 -0
  29. package/build/frontend/models/remnawave-settings/remnawave-settings.schema.js +6 -0
  30. package/build/frontend/models/remnawave-settings/tg-auth-settings.schema.js +12 -0
  31. package/package.json +4 -1
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PasswordAuthSettingsSchema = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ exports.PasswordAuthSettingsSchema = zod_1.default.object({
9
+ enabled: zod_1.default.boolean(),
10
+ });
@@ -1,5 +1,4 @@
1
1
  import { z } from 'zod';
2
- import { PasskeySettingsSchema } from './passkey-settings.schema';
3
2
  export declare const RemnawaveSettingsSchema: z.ZodObject<{
4
3
  passkeySettings: z.ZodNullable<z.ZodObject<{
5
4
  enabled: z.ZodBoolean;
@@ -14,19 +13,189 @@ export declare const RemnawaveSettingsSchema: z.ZodObject<{
14
13
  rpId: string | null;
15
14
  origin: string | null;
16
15
  }>>;
16
+ oauth2Settings: z.ZodNullable<z.ZodObject<{
17
+ github: z.ZodObject<{
18
+ enabled: z.ZodBoolean;
19
+ clientId: z.ZodNullable<z.ZodString>;
20
+ clientSecret: z.ZodNullable<z.ZodString>;
21
+ allowedEmails: z.ZodArray<z.ZodString, "many">;
22
+ }, "strip", z.ZodTypeAny, {
23
+ enabled: boolean;
24
+ clientId: string | null;
25
+ clientSecret: string | null;
26
+ allowedEmails: string[];
27
+ }, {
28
+ enabled: boolean;
29
+ clientId: string | null;
30
+ clientSecret: string | null;
31
+ allowedEmails: string[];
32
+ }>;
33
+ pocketid: z.ZodObject<{
34
+ enabled: z.ZodBoolean;
35
+ clientId: z.ZodNullable<z.ZodString>;
36
+ clientSecret: z.ZodNullable<z.ZodString>;
37
+ plainDomain: z.ZodNullable<z.ZodEffects<z.ZodString, string, string>>;
38
+ allowedEmails: z.ZodArray<z.ZodString, "many">;
39
+ }, "strip", z.ZodTypeAny, {
40
+ enabled: boolean;
41
+ clientId: string | null;
42
+ clientSecret: string | null;
43
+ allowedEmails: string[];
44
+ plainDomain: string | null;
45
+ }, {
46
+ enabled: boolean;
47
+ clientId: string | null;
48
+ clientSecret: string | null;
49
+ allowedEmails: string[];
50
+ plainDomain: string | null;
51
+ }>;
52
+ yandex: z.ZodObject<{
53
+ enabled: z.ZodBoolean;
54
+ clientId: z.ZodNullable<z.ZodString>;
55
+ clientSecret: z.ZodNullable<z.ZodString>;
56
+ allowedEmails: z.ZodArray<z.ZodString, "many">;
57
+ }, "strip", z.ZodTypeAny, {
58
+ enabled: boolean;
59
+ clientId: string | null;
60
+ clientSecret: string | null;
61
+ allowedEmails: string[];
62
+ }, {
63
+ enabled: boolean;
64
+ clientId: string | null;
65
+ clientSecret: string | null;
66
+ allowedEmails: string[];
67
+ }>;
68
+ }, "strip", z.ZodTypeAny, {
69
+ github: {
70
+ enabled: boolean;
71
+ clientId: string | null;
72
+ clientSecret: string | null;
73
+ allowedEmails: string[];
74
+ };
75
+ pocketid: {
76
+ enabled: boolean;
77
+ clientId: string | null;
78
+ clientSecret: string | null;
79
+ allowedEmails: string[];
80
+ plainDomain: string | null;
81
+ };
82
+ yandex: {
83
+ enabled: boolean;
84
+ clientId: string | null;
85
+ clientSecret: string | null;
86
+ allowedEmails: string[];
87
+ };
88
+ }, {
89
+ github: {
90
+ enabled: boolean;
91
+ clientId: string | null;
92
+ clientSecret: string | null;
93
+ allowedEmails: string[];
94
+ };
95
+ pocketid: {
96
+ enabled: boolean;
97
+ clientId: string | null;
98
+ clientSecret: string | null;
99
+ allowedEmails: string[];
100
+ plainDomain: string | null;
101
+ };
102
+ yandex: {
103
+ enabled: boolean;
104
+ clientId: string | null;
105
+ clientSecret: string | null;
106
+ allowedEmails: string[];
107
+ };
108
+ }>>;
109
+ tgAuthSettings: z.ZodNullable<z.ZodObject<{
110
+ enabled: z.ZodBoolean;
111
+ botToken: z.ZodNullable<z.ZodString>;
112
+ adminIds: z.ZodArray<z.ZodNumber, "many">;
113
+ }, "strip", z.ZodTypeAny, {
114
+ enabled: boolean;
115
+ botToken: string | null;
116
+ adminIds: number[];
117
+ }, {
118
+ enabled: boolean;
119
+ botToken: string | null;
120
+ adminIds: number[];
121
+ }>>;
122
+ passwordSettings: z.ZodNullable<z.ZodObject<{
123
+ enabled: z.ZodBoolean;
124
+ }, "strip", z.ZodTypeAny, {
125
+ enabled: boolean;
126
+ }, {
127
+ enabled: boolean;
128
+ }>>;
17
129
  }, "strip", z.ZodTypeAny, {
18
130
  passkeySettings: {
19
131
  enabled: boolean;
20
132
  rpId: string | null;
21
133
  origin: string | null;
22
134
  } | null;
135
+ oauth2Settings: {
136
+ github: {
137
+ enabled: boolean;
138
+ clientId: string | null;
139
+ clientSecret: string | null;
140
+ allowedEmails: string[];
141
+ };
142
+ pocketid: {
143
+ enabled: boolean;
144
+ clientId: string | null;
145
+ clientSecret: string | null;
146
+ allowedEmails: string[];
147
+ plainDomain: string | null;
148
+ };
149
+ yandex: {
150
+ enabled: boolean;
151
+ clientId: string | null;
152
+ clientSecret: string | null;
153
+ allowedEmails: string[];
154
+ };
155
+ } | null;
156
+ tgAuthSettings: {
157
+ enabled: boolean;
158
+ botToken: string | null;
159
+ adminIds: number[];
160
+ } | null;
161
+ passwordSettings: {
162
+ enabled: boolean;
163
+ } | null;
23
164
  }, {
24
165
  passkeySettings: {
25
166
  enabled: boolean;
26
167
  rpId: string | null;
27
168
  origin: string | null;
28
169
  } | null;
170
+ oauth2Settings: {
171
+ github: {
172
+ enabled: boolean;
173
+ clientId: string | null;
174
+ clientSecret: string | null;
175
+ allowedEmails: string[];
176
+ };
177
+ pocketid: {
178
+ enabled: boolean;
179
+ clientId: string | null;
180
+ clientSecret: string | null;
181
+ allowedEmails: string[];
182
+ plainDomain: string | null;
183
+ };
184
+ yandex: {
185
+ enabled: boolean;
186
+ clientId: string | null;
187
+ clientSecret: string | null;
188
+ allowedEmails: string[];
189
+ };
190
+ } | null;
191
+ tgAuthSettings: {
192
+ enabled: boolean;
193
+ botToken: string | null;
194
+ adminIds: number[];
195
+ } | null;
196
+ passwordSettings: {
197
+ enabled: boolean;
198
+ } | null;
29
199
  }>;
30
200
  export type TRemnawaveSettings = z.infer<typeof RemnawaveSettingsSchema>;
31
- export type TRemnawavePasskeySettings = z.infer<typeof PasskeySettingsSchema>;
32
201
  //# sourceMappingURL=remnawave-settings.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remnawave-settings.schema.d.ts","sourceRoot":"","sources":["../../../../models/remnawave-settings/remnawave-settings.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;EAElC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACzE,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
1
+ {"version":3,"file":"remnawave-settings.schema.d.ts","sourceRoot":"","sources":["../../../../models/remnawave-settings/remnawave-settings.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKlC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
@@ -2,7 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RemnawaveSettingsSchema = void 0;
4
4
  const zod_1 = require("zod");
5
+ const password_auth_settings_schema_1 = require("./password-auth-settings.schema");
5
6
  const passkey_settings_schema_1 = require("./passkey-settings.schema");
7
+ const tg_auth_settings_schema_1 = require("./tg-auth-settings.schema");
8
+ const oauth2_settings_schema_1 = require("./oauth2-settings.schema");
6
9
  exports.RemnawaveSettingsSchema = zod_1.z.object({
7
10
  passkeySettings: zod_1.z.nullable(passkey_settings_schema_1.PasskeySettingsSchema),
11
+ oauth2Settings: zod_1.z.nullable(oauth2_settings_schema_1.Oauth2SettingsSchema),
12
+ tgAuthSettings: zod_1.z.nullable(tg_auth_settings_schema_1.TgAuthSettingsSchema),
13
+ passwordSettings: zod_1.z.nullable(password_auth_settings_schema_1.PasswordAuthSettingsSchema),
8
14
  });
@@ -0,0 +1,16 @@
1
+ import z from 'zod';
2
+ export declare const TgAuthSettingsSchema: z.ZodObject<{
3
+ enabled: z.ZodBoolean;
4
+ botToken: z.ZodNullable<z.ZodString>;
5
+ adminIds: z.ZodArray<z.ZodNumber, "many">;
6
+ }, "strip", z.ZodTypeAny, {
7
+ enabled: boolean;
8
+ botToken: string | null;
9
+ adminIds: number[];
10
+ }, {
11
+ enabled: boolean;
12
+ botToken: string | null;
13
+ adminIds: number[];
14
+ }>;
15
+ export type TTgAuthSettings = z.infer<typeof TgAuthSettingsSchema>;
16
+ //# sourceMappingURL=tg-auth-settings.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tg-auth-settings.schema.d.ts","sourceRoot":"","sources":["../../../../models/remnawave-settings/tg-auth-settings.schema.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TgAuthSettingsSchema = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ exports.TgAuthSettingsSchema = zod_1.default.object({
9
+ enabled: zod_1.default.boolean(),
10
+ botToken: zod_1.default.nullable(zod_1.default.string()),
11
+ adminIds: zod_1.default.array(zod_1.default.number()),
12
+ });
@@ -12,6 +12,9 @@ var UpdateRemnawaveSettingsCommand;
12
12
  UpdateRemnawaveSettingsCommand.endpointDetails = (0, constants_1.getEndpointDetails)(api_1.REMNAAWAVE_SETTINGS_ROUTES.UPDATE, 'patch', 'Update Remnawave settings');
13
13
  UpdateRemnawaveSettingsCommand.RequestSchema = zod_1.z.object({
14
14
  passkeySettings: models_1.PasskeySettingsSchema.optional(),
15
+ oauth2Settings: models_1.Oauth2SettingsSchema.optional(),
16
+ tgAuthSettings: models_1.TgAuthSettingsSchema.optional(),
17
+ passwordSettings: models_1.PasswordAuthSettingsSchema.optional(),
15
18
  });
16
19
  UpdateRemnawaveSettingsCommand.ResponseSchema = zod_1.z.object({
17
20
  response: models_1.RemnawaveSettingsSchema,
@@ -14,5 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./oauth2-settings.schema"), exports);
17
18
  __exportStar(require("./passkey-settings.schema"), exports);
19
+ __exportStar(require("./password-auth-settings.schema"), exports);
18
20
  __exportStar(require("./remnawave-settings.schema"), exports);
21
+ __exportStar(require("./tg-auth-settings.schema"), exports);
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Oauth2SettingsSchema = void 0;
7
+ const isFQDN_1 = __importDefault(require("validator/lib/isFQDN"));
8
+ const zod_1 = __importDefault(require("zod"));
9
+ exports.Oauth2SettingsSchema = zod_1.default.object({
10
+ github: zod_1.default.object({
11
+ enabled: zod_1.default.boolean(),
12
+ clientId: zod_1.default.nullable(zod_1.default.string()),
13
+ clientSecret: zod_1.default.nullable(zod_1.default.string()),
14
+ allowedEmails: zod_1.default.array(zod_1.default.string()),
15
+ }),
16
+ pocketid: zod_1.default.object({
17
+ enabled: zod_1.default.boolean(),
18
+ clientId: zod_1.default.nullable(zod_1.default.string()),
19
+ clientSecret: zod_1.default.nullable(zod_1.default.string()),
20
+ plainDomain: zod_1.default.nullable(zod_1.default.string().refine((val) => val === 'localhost' ||
21
+ (0, isFQDN_1.default)(val, {
22
+ require_tld: true,
23
+ }), 'Must be a valid fully qualified domain name (FQDN), e.g. "remnawave.com" or "localhost"')),
24
+ allowedEmails: zod_1.default.array(zod_1.default.string()),
25
+ }),
26
+ yandex: zod_1.default.object({
27
+ enabled: zod_1.default.boolean(),
28
+ clientId: zod_1.default.nullable(zod_1.default.string()),
29
+ clientSecret: zod_1.default.nullable(zod_1.default.string()),
30
+ allowedEmails: zod_1.default.array(zod_1.default.string()),
31
+ }),
32
+ });
@@ -9,15 +9,17 @@ const isURL_1 = __importDefault(require("validator/lib/isURL"));
9
9
  const zod_1 = __importDefault(require("zod"));
10
10
  exports.PasskeySettingsSchema = zod_1.default.object({
11
11
  enabled: zod_1.default.boolean(),
12
- rpId: zod_1.default.nullable(zod_1.default.string().refine((val) => (0, isFQDN_1.default)(val, {
13
- require_tld: true,
14
- }), 'Must me a valid fully qualified domain name (FQDN), e.g. "remnawave.com"')),
15
- origin: zod_1.default.nullable(zod_1.default.string().refine((val) => (0, isURL_1.default)(val, {
16
- protocols: ['http', 'https'],
17
- require_protocol: true,
18
- require_valid_protocol: true,
19
- allow_fragments: false,
20
- allow_query_components: false,
21
- allow_trailing_dot: false,
22
- }), 'Must me a valid URL, e.g. "https://remnawave.com"')),
12
+ rpId: zod_1.default.nullable(zod_1.default.string().refine((val) => val === 'localhost' ||
13
+ (0, isFQDN_1.default)(val, {
14
+ require_tld: true,
15
+ }), 'Must be a valid fully qualified domain name (FQDN), e.g. "remnawave.com" or "localhost"')),
16
+ origin: zod_1.default.nullable(zod_1.default.string().refine((val) => /^http[s]?:\/\/localhost:\d+$/.test(val) ||
17
+ (0, isURL_1.default)(val, {
18
+ protocols: ['http', 'https'],
19
+ require_protocol: true,
20
+ require_valid_protocol: true,
21
+ allow_fragments: false,
22
+ allow_query_components: false,
23
+ allow_trailing_dot: false,
24
+ }), 'Must be a valid URL, e.g. "https://remnawave.com"')),
23
25
  });
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PasswordAuthSettingsSchema = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ exports.PasswordAuthSettingsSchema = zod_1.default.object({
9
+ enabled: zod_1.default.boolean(),
10
+ });
@@ -2,7 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RemnawaveSettingsSchema = void 0;
4
4
  const zod_1 = require("zod");
5
+ const password_auth_settings_schema_1 = require("./password-auth-settings.schema");
5
6
  const passkey_settings_schema_1 = require("./passkey-settings.schema");
7
+ const tg_auth_settings_schema_1 = require("./tg-auth-settings.schema");
8
+ const oauth2_settings_schema_1 = require("./oauth2-settings.schema");
6
9
  exports.RemnawaveSettingsSchema = zod_1.z.object({
7
10
  passkeySettings: zod_1.z.nullable(passkey_settings_schema_1.PasskeySettingsSchema),
11
+ oauth2Settings: zod_1.z.nullable(oauth2_settings_schema_1.Oauth2SettingsSchema),
12
+ tgAuthSettings: zod_1.z.nullable(tg_auth_settings_schema_1.TgAuthSettingsSchema),
13
+ passwordSettings: zod_1.z.nullable(password_auth_settings_schema_1.PasswordAuthSettingsSchema),
8
14
  });
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TgAuthSettingsSchema = void 0;
7
+ const zod_1 = __importDefault(require("zod"));
8
+ exports.TgAuthSettingsSchema = zod_1.default.object({
9
+ enabled: zod_1.default.boolean(),
10
+ botToken: zod_1.default.nullable(zod_1.default.string()),
11
+ adminIds: zod_1.default.array(zod_1.default.number()),
12
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remnawave/backend-contract",
3
- "version": "2.2.17",
3
+ "version": "2.2.19",
4
4
  "public": true,
5
5
  "license": "AGPL-3.0-only",
6
6
  "description": "A contract library for Remnawave Backend. It can be used in backend and frontend.",
@@ -29,5 +29,8 @@
29
29
  "keywords": [],
30
30
  "dependencies": {
31
31
  "zod": "^3.25.76"
32
+ },
33
+ "devDependencies": {
34
+ "validator": "13.15.15"
32
35
  }
33
36
  }