@remnawave/subscription-page-types 0.1.4 → 0.1.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"subscription-page-config.schema.d.ts","sourceRoot":"","sources":["../../../../models/subscription-page-config/subscription-page-config.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subscription-page-config.schema.d.ts","sourceRoot":"","sources":["../../../../models/subscription-page-config/subscription-page-config.schema.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,10 @@ exports.SubscriptionPageRawConfigSchema = exports.LocalizedTextSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const constants_1 = require("../../constants");
6
6
  const subscription_page_config_validator_1 = require("./subscription-page-config.validator");
7
+ // Используем z.string() вместо z.enum() для уменьшения размера .d.ts
8
+ // Валидация языковых кодов происходит в superRefine
7
9
  exports.LocalizedTextSchema = zod_1.z
8
- .record(zod_1.z.enum(constants_1.LANGUAGE_CODES), zod_1.z.string())
10
+ .record(zod_1.z.string(), zod_1.z.string())
9
11
  .refine((obj) => Object.keys(obj).length > 0, {
10
12
  message: 'At least one language must be specified',
11
13
  });
@@ -94,7 +96,7 @@ const SubscriptionPageTranslateKeysSchema = zod_1.z.object({
94
96
  exports.SubscriptionPageRawConfigSchema = zod_1.z
95
97
  .object({
96
98
  version: zod_1.z.nativeEnum(constants_1.SUBSCRIPTION_PAGE_CONFIG_VERSION),
97
- locales: zod_1.z.array(zod_1.z.enum(constants_1.LANGUAGE_CODES)).min(1, 'At least one locale must be specified'),
99
+ locales: zod_1.z.array(zod_1.z.string()).min(1, 'At least one locale must be specified'),
98
100
  brandingSettings: BrandingSettingsSchema,
99
101
  uiConfig: UiConfigSchema,
100
102
  baseTranslations: SubscriptionPageTranslateKeysSchema,
@@ -102,6 +104,7 @@ exports.SubscriptionPageRawConfigSchema = zod_1.z
102
104
  platforms: zod_1.z.record(zod_1.z.nativeEnum(constants_1.SUBSCRIPTION_PAGE_CONFIG_PLATFORM_TYPES), PlatformSchema),
103
105
  })
104
106
  .superRefine((data, ctx) => {
107
+ (0, subscription_page_config_validator_1.validateLocales)(data.locales, ctx);
105
108
  (0, subscription_page_config_validator_1.validateLocalizedTexts)(data, data.locales, ctx);
106
109
  (0, subscription_page_config_validator_1.validateSvgReferences)(data, ctx);
107
110
  });
@@ -1,13 +1,16 @@
1
1
  import { z } from 'zod';
2
- import { TLanguageCode } from '../../constants';
2
+ /**
3
+ * Валидирует что все локали являются валидными языковыми кодами
4
+ */
5
+ export declare const validateLocales: (locales: string[], ctx: z.RefinementCtx) => void;
3
6
  /**
4
7
  * Валидирует что все обязательные локали присутствуют в LocalizedText полях
5
8
  */
6
9
  export declare const validateLocalizedTexts: (data: {
7
- locales: TLanguageCode[];
10
+ locales: string[];
8
11
  platforms: Record<string, unknown>;
9
12
  uiConfig: unknown;
10
- }, requiredLocales: TLanguageCode[], ctx: z.RefinementCtx) => void;
13
+ }, requiredLocales: string[], ctx: z.RefinementCtx) => void;
11
14
  /**
12
15
  * Валидирует что все svgIconKey ссылаются на существующие ключи в svgLibrary
13
16
  */
@@ -21,5 +24,5 @@ export declare const validateSvgReferences: (data: {
21
24
  * - Делает trim() всем строкам
22
25
  * - Удаляет пустые значения
23
26
  */
24
- export declare const cleanLocalizedTexts: <T>(obj: T, activeLocales: TLanguageCode[]) => T;
27
+ export declare const cleanLocalizedTexts: <T>(obj: T, activeLocales: string[]) => T;
25
28
  //# sourceMappingURL=subscription-page-config.validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subscription-page-config.validator.d.ts","sourceRoot":"","sources":["../../../../models/subscription-page-config/subscription-page-config.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,aAAa,EAAkB,MAAM,iBAAiB,CAAC;AAoBhE;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAC/B,MAAM;IAAE,OAAO,EAAE,aAAa,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,EACzF,iBAAiB,aAAa,EAAE,EAChC,KAAK,CAAC,CAAC,aAAa,KACrB,IAoCF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAC9B,MAAM;IAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAChF,KAAK,CAAC,CAAC,aAAa,KACrB,IA2BF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,CAAC,EAAE,KAAK,CAAC,EAAE,eAAe,aAAa,EAAE,KAAG,CA2B/E,CAAC"}
1
+ {"version":3,"file":"subscription-page-config.validator.d.ts","sourceRoot":"","sources":["../../../../models/subscription-page-config/subscription-page-config.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC,aAAa,KAAG,IAUzE,CAAC;AAoBF;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAC/B,MAAM;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,EAClF,iBAAiB,MAAM,EAAE,EACzB,KAAK,CAAC,CAAC,aAAa,KACrB,IAoCF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAC9B,MAAM;IAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAChF,KAAK,CAAC,CAAC,aAAa,KACrB,IA2BF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,CAAC,EAAE,KAAK,CAAC,EAAE,eAAe,MAAM,EAAE,KAAG,CA2BxE,CAAC"}
@@ -1,8 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.cleanLocalizedTexts = exports.validateSvgReferences = exports.validateLocalizedTexts = void 0;
3
+ exports.cleanLocalizedTexts = exports.validateSvgReferences = exports.validateLocalizedTexts = exports.validateLocales = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const constants_1 = require("../../constants");
6
+ /**
7
+ * Валидирует что все локали являются валидными языковыми кодами
8
+ */
9
+ const validateLocales = (locales, ctx) => {
10
+ for (let i = 0; i < locales.length; i++) {
11
+ if (!(0, constants_1.isLanguageCode)(locales[i])) {
12
+ ctx.addIssue({
13
+ code: zod_1.z.ZodIssueCode.custom,
14
+ message: `Invalid language code '${locales[i]}' at locales[${i}]`,
15
+ path: ['locales', i],
16
+ });
17
+ }
18
+ }
19
+ };
20
+ exports.validateLocales = validateLocales;
6
21
  /**
7
22
  * Проверяет что LocalizedText объект является таковым
8
23
  * LocalizedText - это объект где ключи это языковые коды, а значения - строки
@@ -4,8 +4,10 @@ exports.SubscriptionPageRawConfigSchema = exports.LocalizedTextSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const constants_1 = require("../../constants");
6
6
  const subscription_page_config_validator_1 = require("./subscription-page-config.validator");
7
+ // Используем z.string() вместо z.enum() для уменьшения размера .d.ts
8
+ // Валидация языковых кодов происходит в superRefine
7
9
  exports.LocalizedTextSchema = zod_1.z
8
- .record(zod_1.z.enum(constants_1.LANGUAGE_CODES), zod_1.z.string())
10
+ .record(zod_1.z.string(), zod_1.z.string())
9
11
  .refine((obj) => Object.keys(obj).length > 0, {
10
12
  message: 'At least one language must be specified',
11
13
  });
@@ -94,7 +96,7 @@ const SubscriptionPageTranslateKeysSchema = zod_1.z.object({
94
96
  exports.SubscriptionPageRawConfigSchema = zod_1.z
95
97
  .object({
96
98
  version: zod_1.z.nativeEnum(constants_1.SUBSCRIPTION_PAGE_CONFIG_VERSION),
97
- locales: zod_1.z.array(zod_1.z.enum(constants_1.LANGUAGE_CODES)).min(1, 'At least one locale must be specified'),
99
+ locales: zod_1.z.array(zod_1.z.string()).min(1, 'At least one locale must be specified'),
98
100
  brandingSettings: BrandingSettingsSchema,
99
101
  uiConfig: UiConfigSchema,
100
102
  baseTranslations: SubscriptionPageTranslateKeysSchema,
@@ -102,6 +104,7 @@ exports.SubscriptionPageRawConfigSchema = zod_1.z
102
104
  platforms: zod_1.z.record(zod_1.z.nativeEnum(constants_1.SUBSCRIPTION_PAGE_CONFIG_PLATFORM_TYPES), PlatformSchema),
103
105
  })
104
106
  .superRefine((data, ctx) => {
107
+ (0, subscription_page_config_validator_1.validateLocales)(data.locales, ctx);
105
108
  (0, subscription_page_config_validator_1.validateLocalizedTexts)(data, data.locales, ctx);
106
109
  (0, subscription_page_config_validator_1.validateSvgReferences)(data, ctx);
107
110
  });
@@ -1,8 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.cleanLocalizedTexts = exports.validateSvgReferences = exports.validateLocalizedTexts = void 0;
3
+ exports.cleanLocalizedTexts = exports.validateSvgReferences = exports.validateLocalizedTexts = exports.validateLocales = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const constants_1 = require("../../constants");
6
+ /**
7
+ * Валидирует что все локали являются валидными языковыми кодами
8
+ */
9
+ const validateLocales = (locales, ctx) => {
10
+ for (let i = 0; i < locales.length; i++) {
11
+ if (!(0, constants_1.isLanguageCode)(locales[i])) {
12
+ ctx.addIssue({
13
+ code: zod_1.z.ZodIssueCode.custom,
14
+ message: `Invalid language code '${locales[i]}' at locales[${i}]`,
15
+ path: ['locales', i],
16
+ });
17
+ }
18
+ }
19
+ };
20
+ exports.validateLocales = validateLocales;
6
21
  /**
7
22
  * Проверяет что LocalizedText объект является таковым
8
23
  * LocalizedText - это объект где ключи это языковые коды, а значения - строки
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remnawave/subscription-page-types",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "public": true,
5
5
  "license": "AGPL-3.0-only",
6
6
  "description": "A types library for Remnawave Subscription Page.",