@lokalise/content-type-app-engine-contracts 4.8.0 → 4.9.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.
package/dist/index.d.ts CHANGED
@@ -11,6 +11,8 @@ export * from './schemas/content/contentApiSchemas.ts';
11
11
  export * from './schemas/content/contentSchemas.ts';
12
12
  export * from './schemas/env/envApiSchemas.ts';
13
13
  export * from './schemas/env/envSchemas.ts';
14
+ export * from './schemas/filter/filterApiSchemas.ts';
15
+ export * from './schemas/filter/filterSchemas.ts';
14
16
  export * from './schemas/integration/integrationApiSchemas.ts';
15
17
  export * from './schemas/integration/integrationSchemas.ts';
16
18
  export * from './schemas/integrationProject/integrationProjectApiSchemas.ts';
@@ -26,6 +28,8 @@ export * from './schemas/language/languageSchemas.ts';
26
28
  export * from './schemas/manifest/manifestApiSchemas.ts';
27
29
  export * from './schemas/project/projectApiSchemas.ts';
28
30
  export * from './schemas/project/projectSchemas.ts';
31
+ export * from './schemas/schedule/scheduleApiSchemas.ts';
32
+ export * from './schemas/schedule/scheduleSchemas.ts';
29
33
  export * from './schemas/settings/settingsApiSchemas.ts';
30
34
  export * from './schemas/settings/settingsSchemas.ts';
31
35
  export * from './schemas/status/statusApiSchemas.ts';
package/dist/index.js CHANGED
@@ -11,6 +11,8 @@ export * from "./schemas/content/contentApiSchemas.js";
11
11
  export * from "./schemas/content/contentSchemas.js";
12
12
  export * from "./schemas/env/envApiSchemas.js";
13
13
  export * from "./schemas/env/envSchemas.js";
14
+ export * from "./schemas/filter/filterApiSchemas.js";
15
+ export * from "./schemas/filter/filterSchemas.js";
14
16
  export * from "./schemas/integration/integrationApiSchemas.js";
15
17
  export * from "./schemas/integration/integrationSchemas.js";
16
18
  export * from "./schemas/integrationProject/integrationProjectApiSchemas.js";
@@ -26,6 +28,8 @@ export * from "./schemas/language/languageSchemas.js";
26
28
  export * from "./schemas/manifest/manifestApiSchemas.js";
27
29
  export * from "./schemas/project/projectApiSchemas.js";
28
30
  export * from "./schemas/project/projectSchemas.js";
31
+ export * from "./schemas/schedule/scheduleApiSchemas.js";
32
+ export * from "./schemas/schedule/scheduleSchemas.js";
29
33
  export * from "./schemas/settings/settingsApiSchemas.js";
30
34
  export * from "./schemas/settings/settingsSchemas.js";
31
35
  export * from "./schemas/status/statusApiSchemas.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,6CAA6C,CAAA;AAC3D,cAAc,0CAA0C,CAAA;AACxD,cAAc,oCAAoC,CAAA;AAClD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,mCAAmC,CAAA;AACjD,cAAc,iDAAiD,CAAA;AAC/D,cAAc,8CAA8C,CAAA;AAC5D,cAAc,wCAAwC,CAAA;AACtD,cAAc,qCAAqC,CAAA;AACnD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gDAAgD,CAAA;AAC9D,cAAc,6CAA6C,CAAA;AAC3D,cAAc,8DAA8D,CAAA;AAC5E,cAAc,2DAA2D,CAAA;AACzE,cAAc,uDAAuD,CAAA;AACrE,cAAc,oDAAoD,CAAA;AAClE,cAAc,gDAAgD,CAAA;AAC9D,cAAc,qDAAqD,CAAA;AACnE,cAAc,kDAAkD,CAAA;AAChE,cAAc,yCAAyC,CAAA;AACvD,cAAc,0CAA0C,CAAA;AACxD,cAAc,uCAAuC,CAAA;AACrD,cAAc,0CAA0C,CAAA;AACxD,cAAc,wCAAwC,CAAA;AACtD,cAAc,qCAAqC,CAAA;AACnD,cAAc,0CAA0C,CAAA;AACxD,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA;AACpD,cAAc,mCAAmC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,6CAA6C,CAAA;AAC3D,cAAc,0CAA0C,CAAA;AACxD,cAAc,oCAAoC,CAAA;AAClD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,mCAAmC,CAAA;AACjD,cAAc,iDAAiD,CAAA;AAC/D,cAAc,8CAA8C,CAAA;AAC5D,cAAc,wCAAwC,CAAA;AACtD,cAAc,qCAAqC,CAAA;AACnD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sCAAsC,CAAA;AACpD,cAAc,mCAAmC,CAAA;AACjD,cAAc,gDAAgD,CAAA;AAC9D,cAAc,6CAA6C,CAAA;AAC3D,cAAc,8DAA8D,CAAA;AAC5E,cAAc,2DAA2D,CAAA;AACzE,cAAc,uDAAuD,CAAA;AACrE,cAAc,oDAAoD,CAAA;AAClE,cAAc,gDAAgD,CAAA;AAC9D,cAAc,qDAAqD,CAAA;AACnE,cAAc,kDAAkD,CAAA;AAChE,cAAc,yCAAyC,CAAA;AACvD,cAAc,0CAA0C,CAAA;AACxD,cAAc,uCAAuC,CAAA;AACrD,cAAc,0CAA0C,CAAA;AACxD,cAAc,wCAAwC,CAAA;AACtD,cAAc,qCAAqC,CAAA;AACnD,cAAc,0CAA0C,CAAA;AACxD,cAAc,uCAAuC,CAAA;AACrD,cAAc,0CAA0C,CAAA;AACxD,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA;AACpD,cAAc,mCAAmC,CAAA"}
@@ -0,0 +1,77 @@
1
+ export declare const getContentFiltersContract: import("@lokalise/api-contracts").GetRouteDefinition<import("zod").ZodObject<{
2
+ filters: import("zod").ZodArray<import("zod").ZodObject<{
3
+ id: import("zod").ZodGUID;
4
+ name: import("zod").ZodString;
5
+ definition: import("zod").ZodArray<import("zod").ZodObject<{
6
+ relation: import("zod").ZodEnum<{
7
+ AND: "AND";
8
+ OR: "OR";
9
+ }>;
10
+ object: import("zod").ZodString;
11
+ option: import("zod").ZodEnum<{
12
+ endsWith: "endsWith";
13
+ startsWith: "startsWith";
14
+ equals: "equals";
15
+ notEquals: "notEquals";
16
+ contains: "contains";
17
+ containsAll: "containsAll";
18
+ notContainsAll: "notContainsAll";
19
+ }>;
20
+ values: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodNumber]>>;
21
+ }, import("zod/v4/core").$strip>>;
22
+ createdAt: import("zod").ZodString;
23
+ updatedAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
24
+ }, import("zod/v4/core").$strip>>;
25
+ }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
26
+ authorization: import("zod").ZodOptional<import("zod").ZodString>;
27
+ }, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
28
+ export declare const putContentFilterContract: import("@lokalise/api-contracts").PayloadRouteDefinition<import("zod").ZodObject<{
29
+ id: import("zod").ZodOptional<import("zod").ZodGUID>;
30
+ name: import("zod").ZodString;
31
+ definition: import("zod").ZodArray<import("zod").ZodObject<{
32
+ relation: import("zod").ZodEnum<{
33
+ AND: "AND";
34
+ OR: "OR";
35
+ }>;
36
+ object: import("zod").ZodString;
37
+ option: import("zod").ZodEnum<{
38
+ endsWith: "endsWith";
39
+ startsWith: "startsWith";
40
+ equals: "equals";
41
+ notEquals: "notEquals";
42
+ contains: "contains";
43
+ containsAll: "containsAll";
44
+ notContainsAll: "notContainsAll";
45
+ }>;
46
+ values: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodNumber]>>;
47
+ }, import("zod/v4/core").$strip>>;
48
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
49
+ id: import("zod").ZodGUID;
50
+ name: import("zod").ZodString;
51
+ definition: import("zod").ZodArray<import("zod").ZodObject<{
52
+ relation: import("zod").ZodEnum<{
53
+ AND: "AND";
54
+ OR: "OR";
55
+ }>;
56
+ object: import("zod").ZodString;
57
+ option: import("zod").ZodEnum<{
58
+ endsWith: "endsWith";
59
+ startsWith: "startsWith";
60
+ equals: "equals";
61
+ notEquals: "notEquals";
62
+ contains: "contains";
63
+ containsAll: "containsAll";
64
+ notContainsAll: "notContainsAll";
65
+ }>;
66
+ values: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodNumber]>>;
67
+ }, import("zod/v4/core").$strip>>;
68
+ createdAt: import("zod").ZodString;
69
+ updatedAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
70
+ }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
71
+ authorization: import("zod").ZodOptional<import("zod").ZodString>;
72
+ }, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
73
+ export declare const deleteContentFilterContract: import("@lokalise/api-contracts").DeleteRouteDefinition<undefined, import("zod").ZodObject<{
74
+ filterId: import("zod").ZodGUID;
75
+ }, import("zod/v4/core").$strip>, undefined, import("zod").ZodObject<{
76
+ authorization: import("zod").ZodOptional<import("zod").ZodString>;
77
+ }, import("zod/v4/core").$strip>, undefined, false, true, undefined>;
@@ -0,0 +1,30 @@
1
+ import { buildRestContract } from '@lokalise/api-contracts';
2
+ import { AUTHORIZATION_HEADER_SCHEMA } from "../commonRequestSchemas.js";
3
+ import { CONTENT_FILTER_PATH_PARAMS, CONTENT_FILTER_SCHEMA, GET_CONTENT_FILTERS_RESPONSE, PUT_CONTENT_FILTER_REQUEST_BODY, } from "./filterSchemas.js";
4
+ export const getContentFiltersContract = buildRestContract({
5
+ method: 'get',
6
+ summary: 'List saved filters',
7
+ description: 'Get all saved filters for the current integration',
8
+ successResponseBodySchema: GET_CONTENT_FILTERS_RESPONSE,
9
+ requestHeaderSchema: AUTHORIZATION_HEADER_SCHEMA,
10
+ pathResolver: () => '/v1/filters',
11
+ });
12
+ export const putContentFilterContract = buildRestContract({
13
+ method: 'put',
14
+ summary: 'Create or update a saved filter',
15
+ description: 'Upsert filter',
16
+ requestBodySchema: PUT_CONTENT_FILTER_REQUEST_BODY,
17
+ successResponseBodySchema: CONTENT_FILTER_SCHEMA,
18
+ requestHeaderSchema: AUTHORIZATION_HEADER_SCHEMA,
19
+ pathResolver: () => `/v1/filters`,
20
+ });
21
+ export const deleteContentFilterContract = buildRestContract({
22
+ method: 'delete',
23
+ summary: 'Delete existing filter',
24
+ description: 'Delete existing filter by ID',
25
+ successResponseBodySchema: undefined,
26
+ requestPathParamsSchema: CONTENT_FILTER_PATH_PARAMS,
27
+ requestHeaderSchema: AUTHORIZATION_HEADER_SCHEMA,
28
+ pathResolver: ({ filterId }) => `/v1/filters/${filterId}`,
29
+ });
30
+ //# sourceMappingURL=filterApiSchemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterApiSchemas.js","sourceRoot":"","sources":["../../../src/schemas/filter/filterApiSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAA;AACxE,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,4BAA4B,EAC5B,+BAA+B,GAChC,MAAM,oBAAoB,CAAA;AAE3B,MAAM,CAAC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;IACzD,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,oBAAoB;IAC7B,WAAW,EAAE,mDAAmD;IAChE,yBAAyB,EAAE,4BAA4B;IACvD,mBAAmB,EAAE,2BAA2B;IAChD,YAAY,EAAE,GAAG,EAAE,CAAC,aAAa;CAClC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACxD,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,iCAAiC;IAC1C,WAAW,EAAE,eAAe;IAC5B,iBAAiB,EAAE,+BAA+B;IAClD,yBAAyB,EAAE,qBAAqB;IAChD,mBAAmB,EAAE,2BAA2B;IAChD,YAAY,EAAE,GAAG,EAAE,CAAC,aAAa;CAClC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;IAC3D,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,wBAAwB;IACjC,WAAW,EAAE,8BAA8B;IAC3C,yBAAyB,EAAE,SAAS;IACpC,uBAAuB,EAAE,0BAA0B;IACnD,mBAAmB,EAAE,2BAA2B;IAChD,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,eAAe,QAAQ,EAAE;CAC1D,CAAC,CAAA"}
@@ -0,0 +1,94 @@
1
+ import { z } from 'zod/v4';
2
+ export declare const FILTER_ITEM_SCHEMA: z.ZodObject<{
3
+ relation: z.ZodEnum<{
4
+ AND: "AND";
5
+ OR: "OR";
6
+ }>;
7
+ object: z.ZodString;
8
+ option: z.ZodEnum<{
9
+ endsWith: "endsWith";
10
+ startsWith: "startsWith";
11
+ equals: "equals";
12
+ notEquals: "notEquals";
13
+ contains: "contains";
14
+ containsAll: "containsAll";
15
+ notContainsAll: "notContainsAll";
16
+ }>;
17
+ values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
18
+ }, z.core.$strip>;
19
+ export declare const CONTENT_FILTER_SCHEMA: z.ZodObject<{
20
+ id: z.ZodGUID;
21
+ name: z.ZodString;
22
+ definition: z.ZodArray<z.ZodObject<{
23
+ relation: z.ZodEnum<{
24
+ AND: "AND";
25
+ OR: "OR";
26
+ }>;
27
+ object: z.ZodString;
28
+ option: z.ZodEnum<{
29
+ endsWith: "endsWith";
30
+ startsWith: "startsWith";
31
+ equals: "equals";
32
+ notEquals: "notEquals";
33
+ contains: "contains";
34
+ containsAll: "containsAll";
35
+ notContainsAll: "notContainsAll";
36
+ }>;
37
+ values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
38
+ }, z.core.$strip>>;
39
+ createdAt: z.ZodString;
40
+ updatedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
41
+ }, z.core.$strip>;
42
+ export declare const GET_CONTENT_FILTERS_RESPONSE: z.ZodObject<{
43
+ filters: z.ZodArray<z.ZodObject<{
44
+ id: z.ZodGUID;
45
+ name: z.ZodString;
46
+ definition: z.ZodArray<z.ZodObject<{
47
+ relation: z.ZodEnum<{
48
+ AND: "AND";
49
+ OR: "OR";
50
+ }>;
51
+ object: z.ZodString;
52
+ option: z.ZodEnum<{
53
+ endsWith: "endsWith";
54
+ startsWith: "startsWith";
55
+ equals: "equals";
56
+ notEquals: "notEquals";
57
+ contains: "contains";
58
+ containsAll: "containsAll";
59
+ notContainsAll: "notContainsAll";
60
+ }>;
61
+ values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
62
+ }, z.core.$strip>>;
63
+ createdAt: z.ZodString;
64
+ updatedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
65
+ }, z.core.$strip>>;
66
+ }, z.core.$strip>;
67
+ export declare const PUT_CONTENT_FILTER_REQUEST_BODY: z.ZodObject<{
68
+ id: z.ZodOptional<z.ZodGUID>;
69
+ name: z.ZodString;
70
+ definition: z.ZodArray<z.ZodObject<{
71
+ relation: z.ZodEnum<{
72
+ AND: "AND";
73
+ OR: "OR";
74
+ }>;
75
+ object: z.ZodString;
76
+ option: z.ZodEnum<{
77
+ endsWith: "endsWith";
78
+ startsWith: "startsWith";
79
+ equals: "equals";
80
+ notEquals: "notEquals";
81
+ contains: "contains";
82
+ containsAll: "containsAll";
83
+ notContainsAll: "notContainsAll";
84
+ }>;
85
+ values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
86
+ }, z.core.$strip>>;
87
+ }, z.core.$strip>;
88
+ export declare const CONTENT_FILTER_PATH_PARAMS: z.ZodObject<{
89
+ filterId: z.ZodGUID;
90
+ }, z.core.$strip>;
91
+ export type FilterItem = z.infer<typeof FILTER_ITEM_SCHEMA>;
92
+ export type ContentFilter = z.infer<typeof CONTENT_FILTER_SCHEMA>;
93
+ export type GetContentFiltersResponse = z.infer<typeof GET_CONTENT_FILTERS_RESPONSE>;
94
+ export type PutContentFilterRequest = z.infer<typeof PUT_CONTENT_FILTER_REQUEST_BODY>;
@@ -0,0 +1,34 @@
1
+ import { z } from 'zod/v4';
2
+ export const FILTER_ITEM_SCHEMA = z.object({
3
+ relation: z.enum(['AND', 'OR']),
4
+ object: z.string().min(1),
5
+ option: z.enum([
6
+ 'equals',
7
+ 'notEquals',
8
+ 'contains',
9
+ 'containsAll',
10
+ 'notContainsAll',
11
+ 'startsWith',
12
+ 'endsWith',
13
+ ]),
14
+ values: z.array(z.union([z.string(), z.number()])).nonempty(),
15
+ });
16
+ export const CONTENT_FILTER_SCHEMA = z.object({
17
+ id: z.guid(),
18
+ name: z.string().min(1),
19
+ definition: z.array(FILTER_ITEM_SCHEMA),
20
+ createdAt: z.string(),
21
+ updatedAt: z.string().nullish(),
22
+ });
23
+ export const GET_CONTENT_FILTERS_RESPONSE = z.object({
24
+ filters: z.array(CONTENT_FILTER_SCHEMA),
25
+ });
26
+ export const PUT_CONTENT_FILTER_REQUEST_BODY = z.object({
27
+ id: z.guid().optional(),
28
+ name: z.string().min(1).max(255),
29
+ definition: z.array(FILTER_ITEM_SCHEMA).nonempty(),
30
+ });
31
+ export const CONTENT_FILTER_PATH_PARAMS = z.object({
32
+ filterId: z.guid(),
33
+ });
34
+ //# sourceMappingURL=filterSchemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterSchemas.js","sourceRoot":"","sources":["../../../src/schemas/filter/filterSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC;QACb,QAAQ;QACR,WAAW;QACX,UAAU;QACV,aAAa;QACb,gBAAgB;QAChB,YAAY;QACZ,UAAU;KACX,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC9D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;IACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;CAChC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;CACxC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAChC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;CACnD,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE;CACnB,CAAC,CAAA"}
@@ -0,0 +1,163 @@
1
+ export declare const getScheduleConfigContract: import("@lokalise/api-contracts").GetRouteDefinition<import("zod").ZodObject<{
2
+ autoImport: import("zod").ZodNullable<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
3
+ frequency: import("zod").ZodLiteral<"daily">;
4
+ enabled: import("zod").ZodBoolean;
5
+ hour: import("zod").ZodNumber;
6
+ minute: import("zod").ZodNumber;
7
+ timezone: import("zod").ZodString;
8
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
9
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
10
+ options: import("zod").ZodOptional<import("zod").ZodObject<{
11
+ overrideUpdatedTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
12
+ skipEmptyTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
13
+ importTags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
14
+ }, import("zod/v4/core").$strip>>;
15
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
16
+ frequency: import("zod").ZodLiteral<"weekly">;
17
+ day: import("zod").ZodNumber;
18
+ enabled: import("zod").ZodBoolean;
19
+ hour: import("zod").ZodNumber;
20
+ minute: import("zod").ZodNumber;
21
+ timezone: import("zod").ZodString;
22
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
23
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
24
+ options: import("zod").ZodOptional<import("zod").ZodObject<{
25
+ overrideUpdatedTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
26
+ skipEmptyTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
27
+ importTags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
28
+ }, import("zod/v4/core").$strip>>;
29
+ }, import("zod/v4/core").$strip>], "frequency">>;
30
+ autoExport: import("zod").ZodNullable<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
31
+ frequency: import("zod").ZodLiteral<"daily">;
32
+ enabled: import("zod").ZodBoolean;
33
+ hour: import("zod").ZodNumber;
34
+ minute: import("zod").ZodNumber;
35
+ timezone: import("zod").ZodString;
36
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
37
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
38
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
39
+ frequency: import("zod").ZodLiteral<"weekly">;
40
+ day: import("zod").ZodNumber;
41
+ enabled: import("zod").ZodBoolean;
42
+ hour: import("zod").ZodNumber;
43
+ minute: import("zod").ZodNumber;
44
+ timezone: import("zod").ZodString;
45
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
46
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
47
+ }, import("zod/v4/core").$strip>], "frequency">>;
48
+ }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
49
+ authorization: import("zod").ZodOptional<import("zod").ZodString>;
50
+ }, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
51
+ export declare const putScheduleConfigContract: import("@lokalise/api-contracts").PayloadRouteDefinition<import("zod").ZodObject<{
52
+ autoImport: import("zod").ZodOptional<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
53
+ frequency: import("zod").ZodLiteral<"daily">;
54
+ enabled: import("zod").ZodBoolean;
55
+ hour: import("zod").ZodNumber;
56
+ minute: import("zod").ZodNumber;
57
+ timezone: import("zod").ZodString;
58
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
59
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
60
+ options: import("zod").ZodOptional<import("zod").ZodObject<{
61
+ overrideUpdatedTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
62
+ skipEmptyTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
63
+ importTags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
64
+ }, import("zod/v4/core").$strip>>;
65
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
66
+ frequency: import("zod").ZodLiteral<"weekly">;
67
+ day: import("zod").ZodNumber;
68
+ enabled: import("zod").ZodBoolean;
69
+ hour: import("zod").ZodNumber;
70
+ minute: import("zod").ZodNumber;
71
+ timezone: import("zod").ZodString;
72
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
73
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
74
+ options: import("zod").ZodOptional<import("zod").ZodObject<{
75
+ overrideUpdatedTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
76
+ skipEmptyTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
77
+ importTags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
78
+ }, import("zod/v4/core").$strip>>;
79
+ }, import("zod/v4/core").$strip>], "frequency">>;
80
+ autoExport: import("zod").ZodOptional<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
81
+ frequency: import("zod").ZodLiteral<"daily">;
82
+ enabled: import("zod").ZodBoolean;
83
+ hour: import("zod").ZodNumber;
84
+ minute: import("zod").ZodNumber;
85
+ timezone: import("zod").ZodString;
86
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
87
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
88
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
89
+ frequency: import("zod").ZodLiteral<"weekly">;
90
+ day: import("zod").ZodNumber;
91
+ enabled: import("zod").ZodBoolean;
92
+ hour: import("zod").ZodNumber;
93
+ minute: import("zod").ZodNumber;
94
+ timezone: import("zod").ZodString;
95
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
96
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
97
+ }, import("zod/v4/core").$strip>], "frequency">>;
98
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
99
+ autoImport: import("zod").ZodNullable<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
100
+ frequency: import("zod").ZodLiteral<"daily">;
101
+ enabled: import("zod").ZodBoolean;
102
+ hour: import("zod").ZodNumber;
103
+ minute: import("zod").ZodNumber;
104
+ timezone: import("zod").ZodString;
105
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
106
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
107
+ options: import("zod").ZodOptional<import("zod").ZodObject<{
108
+ overrideUpdatedTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
109
+ skipEmptyTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
110
+ importTags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
111
+ }, import("zod/v4/core").$strip>>;
112
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
113
+ frequency: import("zod").ZodLiteral<"weekly">;
114
+ day: import("zod").ZodNumber;
115
+ enabled: import("zod").ZodBoolean;
116
+ hour: import("zod").ZodNumber;
117
+ minute: import("zod").ZodNumber;
118
+ timezone: import("zod").ZodString;
119
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
120
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
121
+ options: import("zod").ZodOptional<import("zod").ZodObject<{
122
+ overrideUpdatedTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
123
+ skipEmptyTranslations: import("zod").ZodOptional<import("zod").ZodBoolean>;
124
+ importTags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
125
+ }, import("zod/v4/core").$strip>>;
126
+ }, import("zod/v4/core").$strip>], "frequency">>;
127
+ autoExport: import("zod").ZodNullable<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
128
+ frequency: import("zod").ZodLiteral<"daily">;
129
+ enabled: import("zod").ZodBoolean;
130
+ hour: import("zod").ZodNumber;
131
+ minute: import("zod").ZodNumber;
132
+ timezone: import("zod").ZodString;
133
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
134
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
135
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
136
+ frequency: import("zod").ZodLiteral<"weekly">;
137
+ day: import("zod").ZodNumber;
138
+ enabled: import("zod").ZodBoolean;
139
+ hour: import("zod").ZodNumber;
140
+ minute: import("zod").ZodNumber;
141
+ timezone: import("zod").ZodString;
142
+ filterId: import("zod").ZodOptional<import("zod").ZodGUID>;
143
+ languages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
144
+ }, import("zod/v4/core").$strip>], "frequency">>;
145
+ }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
146
+ authorization: import("zod").ZodOptional<import("zod").ZodString>;
147
+ }, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
148
+ export declare const getScheduleExecutionsContract: import("@lokalise/api-contracts").GetRouteDefinition<import("zod").ZodObject<{
149
+ executions: import("zod").ZodArray<import("zod").ZodObject<{
150
+ id: import("zod").ZodString;
151
+ scheduleId: import("zod").ZodString;
152
+ status: import("zod").ZodEnum<{
153
+ RUNNING: "RUNNING";
154
+ COMPLETED: "COMPLETED";
155
+ FAILED: "FAILED";
156
+ }>;
157
+ startedAt: import("zod").ZodString;
158
+ completedAt: import("zod").ZodNullable<import("zod").ZodString>;
159
+ error: import("zod").ZodNullable<import("zod").ZodString>;
160
+ }, import("zod/v4/core").$strip>>;
161
+ }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
162
+ authorization: import("zod").ZodOptional<import("zod").ZodString>;
163
+ }, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
@@ -0,0 +1,29 @@
1
+ import { buildRestContract } from '@lokalise/api-contracts';
2
+ import { AUTHORIZATION_HEADER_SCHEMA } from "../commonRequestSchemas.js";
3
+ import { EXECUTIONS_RESPONSE, SCHEDULE_CONFIG_RESPONSE, UPDATE_SCHEDULE_REQUEST_BODY, } from "./scheduleSchemas.js";
4
+ export const getScheduleConfigContract = buildRestContract({
5
+ method: 'get',
6
+ summary: 'Get schedule configuration',
7
+ description: 'Get the auto import/export schedule configuration for the current link',
8
+ successResponseBodySchema: SCHEDULE_CONFIG_RESPONSE,
9
+ requestHeaderSchema: AUTHORIZATION_HEADER_SCHEMA,
10
+ pathResolver: () => '/v1/schedule',
11
+ });
12
+ export const putScheduleConfigContract = buildRestContract({
13
+ method: 'put',
14
+ summary: 'Update schedule configuration',
15
+ description: 'Create or update the auto import/export schedule for the current link',
16
+ requestBodySchema: UPDATE_SCHEDULE_REQUEST_BODY,
17
+ successResponseBodySchema: SCHEDULE_CONFIG_RESPONSE,
18
+ requestHeaderSchema: AUTHORIZATION_HEADER_SCHEMA,
19
+ pathResolver: () => '/v1/schedule',
20
+ });
21
+ export const getScheduleExecutionsContract = buildRestContract({
22
+ method: 'get',
23
+ summary: 'Get schedule executions',
24
+ description: 'Get execution history for the current link schedule',
25
+ successResponseBodySchema: EXECUTIONS_RESPONSE,
26
+ requestHeaderSchema: AUTHORIZATION_HEADER_SCHEMA,
27
+ pathResolver: () => '/v1/schedule/executions',
28
+ });
29
+ //# sourceMappingURL=scheduleApiSchemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduleApiSchemas.js","sourceRoot":"","sources":["../../../src/schemas/schedule/scheduleApiSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAA;AACxE,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAA;AAE7B,MAAM,CAAC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;IACzD,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,4BAA4B;IACrC,WAAW,EAAE,wEAAwE;IACrF,yBAAyB,EAAE,wBAAwB;IACnD,mBAAmB,EAAE,2BAA2B;IAChD,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;CACnC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;IACzD,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,+BAA+B;IACxC,WAAW,EAAE,uEAAuE;IACpF,iBAAiB,EAAE,4BAA4B;IAC/C,yBAAyB,EAAE,wBAAwB;IACnD,mBAAmB,EAAE,2BAA2B;IAChD,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;CACnC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,iBAAiB,CAAC;IAC7D,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,yBAAyB;IAClC,WAAW,EAAE,qDAAqD;IAClE,yBAAyB,EAAE,mBAAmB;IAC9C,mBAAmB,EAAE,2BAA2B;IAChD,YAAY,EAAE,GAAG,EAAE,CAAC,yBAAyB;CAC9C,CAAC,CAAA"}
@@ -0,0 +1,214 @@
1
+ import { z } from 'zod';
2
+ export declare const VALID_TIMEZONES: Set<string>;
3
+ export declare const TIMEZONE_SCHEMA: z.ZodString;
4
+ export declare const SCHEDULE_COMMON_FIELDS: {
5
+ enabled: z.ZodBoolean;
6
+ hour: z.ZodNumber;
7
+ minute: z.ZodNumber;
8
+ timezone: z.ZodString;
9
+ filterId: z.ZodOptional<z.ZodGUID>;
10
+ };
11
+ export declare const DAILY_SCHEDULE_SCHEMA: z.ZodObject<{
12
+ frequency: z.ZodLiteral<"daily">;
13
+ enabled: z.ZodBoolean;
14
+ hour: z.ZodNumber;
15
+ minute: z.ZodNumber;
16
+ timezone: z.ZodString;
17
+ filterId: z.ZodOptional<z.ZodGUID>;
18
+ }, z.core.$strip>;
19
+ export declare const WEEKLY_SCHEDULE_SCHEMA: z.ZodObject<{
20
+ frequency: z.ZodLiteral<"weekly">;
21
+ day: z.ZodNumber;
22
+ enabled: z.ZodBoolean;
23
+ hour: z.ZodNumber;
24
+ minute: z.ZodNumber;
25
+ timezone: z.ZodString;
26
+ filterId: z.ZodOptional<z.ZodGUID>;
27
+ }, z.core.$strip>;
28
+ export declare const AUTO_IMPORT_EXTRA: {
29
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
30
+ options: z.ZodOptional<z.ZodObject<{
31
+ overrideUpdatedTranslations: z.ZodOptional<z.ZodBoolean>;
32
+ skipEmptyTranslations: z.ZodOptional<z.ZodBoolean>;
33
+ importTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
34
+ }, z.core.$strip>>;
35
+ };
36
+ export declare const AUTO_IMPORT_OPTIONS_SCHEMA: z.ZodDiscriminatedUnion<[z.ZodObject<{
37
+ frequency: z.ZodLiteral<"daily">;
38
+ enabled: z.ZodBoolean;
39
+ hour: z.ZodNumber;
40
+ minute: z.ZodNumber;
41
+ timezone: z.ZodString;
42
+ filterId: z.ZodOptional<z.ZodGUID>;
43
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
44
+ options: z.ZodOptional<z.ZodObject<{
45
+ overrideUpdatedTranslations: z.ZodOptional<z.ZodBoolean>;
46
+ skipEmptyTranslations: z.ZodOptional<z.ZodBoolean>;
47
+ importTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
48
+ }, z.core.$strip>>;
49
+ }, z.core.$strip>, z.ZodObject<{
50
+ frequency: z.ZodLiteral<"weekly">;
51
+ day: z.ZodNumber;
52
+ enabled: z.ZodBoolean;
53
+ hour: z.ZodNumber;
54
+ minute: z.ZodNumber;
55
+ timezone: z.ZodString;
56
+ filterId: z.ZodOptional<z.ZodGUID>;
57
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
58
+ options: z.ZodOptional<z.ZodObject<{
59
+ overrideUpdatedTranslations: z.ZodOptional<z.ZodBoolean>;
60
+ skipEmptyTranslations: z.ZodOptional<z.ZodBoolean>;
61
+ importTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
62
+ }, z.core.$strip>>;
63
+ }, z.core.$strip>], "frequency">;
64
+ export declare const AUTO_EXPORT_EXTRA: {
65
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
66
+ };
67
+ export declare const AUTO_EXPORT_OPTIONS_SCHEMA: z.ZodDiscriminatedUnion<[z.ZodObject<{
68
+ frequency: z.ZodLiteral<"daily">;
69
+ enabled: z.ZodBoolean;
70
+ hour: z.ZodNumber;
71
+ minute: z.ZodNumber;
72
+ timezone: z.ZodString;
73
+ filterId: z.ZodOptional<z.ZodGUID>;
74
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
75
+ }, z.core.$strip>, z.ZodObject<{
76
+ frequency: z.ZodLiteral<"weekly">;
77
+ day: z.ZodNumber;
78
+ enabled: z.ZodBoolean;
79
+ hour: z.ZodNumber;
80
+ minute: z.ZodNumber;
81
+ timezone: z.ZodString;
82
+ filterId: z.ZodOptional<z.ZodGUID>;
83
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
84
+ }, z.core.$strip>], "frequency">;
85
+ export declare const SCHEDULE_CONFIG_RESPONSE: z.ZodObject<{
86
+ autoImport: z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
87
+ frequency: z.ZodLiteral<"daily">;
88
+ enabled: z.ZodBoolean;
89
+ hour: z.ZodNumber;
90
+ minute: z.ZodNumber;
91
+ timezone: z.ZodString;
92
+ filterId: z.ZodOptional<z.ZodGUID>;
93
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
94
+ options: z.ZodOptional<z.ZodObject<{
95
+ overrideUpdatedTranslations: z.ZodOptional<z.ZodBoolean>;
96
+ skipEmptyTranslations: z.ZodOptional<z.ZodBoolean>;
97
+ importTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
98
+ }, z.core.$strip>>;
99
+ }, z.core.$strip>, z.ZodObject<{
100
+ frequency: z.ZodLiteral<"weekly">;
101
+ day: z.ZodNumber;
102
+ enabled: z.ZodBoolean;
103
+ hour: z.ZodNumber;
104
+ minute: z.ZodNumber;
105
+ timezone: z.ZodString;
106
+ filterId: z.ZodOptional<z.ZodGUID>;
107
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
108
+ options: z.ZodOptional<z.ZodObject<{
109
+ overrideUpdatedTranslations: z.ZodOptional<z.ZodBoolean>;
110
+ skipEmptyTranslations: z.ZodOptional<z.ZodBoolean>;
111
+ importTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
112
+ }, z.core.$strip>>;
113
+ }, z.core.$strip>], "frequency">>;
114
+ autoExport: z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
115
+ frequency: z.ZodLiteral<"daily">;
116
+ enabled: z.ZodBoolean;
117
+ hour: z.ZodNumber;
118
+ minute: z.ZodNumber;
119
+ timezone: z.ZodString;
120
+ filterId: z.ZodOptional<z.ZodGUID>;
121
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
122
+ }, z.core.$strip>, z.ZodObject<{
123
+ frequency: z.ZodLiteral<"weekly">;
124
+ day: z.ZodNumber;
125
+ enabled: z.ZodBoolean;
126
+ hour: z.ZodNumber;
127
+ minute: z.ZodNumber;
128
+ timezone: z.ZodString;
129
+ filterId: z.ZodOptional<z.ZodGUID>;
130
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
131
+ }, z.core.$strip>], "frequency">>;
132
+ }, z.core.$strip>;
133
+ export declare const UPDATE_SCHEDULE_REQUEST_BODY: z.ZodObject<{
134
+ autoImport: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
135
+ frequency: z.ZodLiteral<"daily">;
136
+ enabled: z.ZodBoolean;
137
+ hour: z.ZodNumber;
138
+ minute: z.ZodNumber;
139
+ timezone: z.ZodString;
140
+ filterId: z.ZodOptional<z.ZodGUID>;
141
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
142
+ options: z.ZodOptional<z.ZodObject<{
143
+ overrideUpdatedTranslations: z.ZodOptional<z.ZodBoolean>;
144
+ skipEmptyTranslations: z.ZodOptional<z.ZodBoolean>;
145
+ importTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
146
+ }, z.core.$strip>>;
147
+ }, z.core.$strip>, z.ZodObject<{
148
+ frequency: z.ZodLiteral<"weekly">;
149
+ day: z.ZodNumber;
150
+ enabled: z.ZodBoolean;
151
+ hour: z.ZodNumber;
152
+ minute: z.ZodNumber;
153
+ timezone: z.ZodString;
154
+ filterId: z.ZodOptional<z.ZodGUID>;
155
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
156
+ options: z.ZodOptional<z.ZodObject<{
157
+ overrideUpdatedTranslations: z.ZodOptional<z.ZodBoolean>;
158
+ skipEmptyTranslations: z.ZodOptional<z.ZodBoolean>;
159
+ importTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
160
+ }, z.core.$strip>>;
161
+ }, z.core.$strip>], "frequency">>;
162
+ autoExport: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
163
+ frequency: z.ZodLiteral<"daily">;
164
+ enabled: z.ZodBoolean;
165
+ hour: z.ZodNumber;
166
+ minute: z.ZodNumber;
167
+ timezone: z.ZodString;
168
+ filterId: z.ZodOptional<z.ZodGUID>;
169
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
170
+ }, z.core.$strip>, z.ZodObject<{
171
+ frequency: z.ZodLiteral<"weekly">;
172
+ day: z.ZodNumber;
173
+ enabled: z.ZodBoolean;
174
+ hour: z.ZodNumber;
175
+ minute: z.ZodNumber;
176
+ timezone: z.ZodString;
177
+ filterId: z.ZodOptional<z.ZodGUID>;
178
+ languages: z.ZodOptional<z.ZodArray<z.ZodString>>;
179
+ }, z.core.$strip>], "frequency">>;
180
+ }, z.core.$strip>;
181
+ export declare const EXECUTION_ITEM_SCHEMA: z.ZodObject<{
182
+ id: z.ZodString;
183
+ scheduleId: z.ZodString;
184
+ status: z.ZodEnum<{
185
+ RUNNING: "RUNNING";
186
+ COMPLETED: "COMPLETED";
187
+ FAILED: "FAILED";
188
+ }>;
189
+ startedAt: z.ZodString;
190
+ completedAt: z.ZodNullable<z.ZodString>;
191
+ error: z.ZodNullable<z.ZodString>;
192
+ }, z.core.$strip>;
193
+ export declare const EXECUTIONS_RESPONSE: z.ZodObject<{
194
+ executions: z.ZodArray<z.ZodObject<{
195
+ id: z.ZodString;
196
+ scheduleId: z.ZodString;
197
+ status: z.ZodEnum<{
198
+ RUNNING: "RUNNING";
199
+ COMPLETED: "COMPLETED";
200
+ FAILED: "FAILED";
201
+ }>;
202
+ startedAt: z.ZodString;
203
+ completedAt: z.ZodNullable<z.ZodString>;
204
+ error: z.ZodNullable<z.ZodString>;
205
+ }, z.core.$strip>>;
206
+ }, z.core.$strip>;
207
+ export type DailySchedule = z.infer<typeof DAILY_SCHEDULE_SCHEMA>;
208
+ export type WeeklySchedule = z.infer<typeof WEEKLY_SCHEDULE_SCHEMA>;
209
+ export type AutoImportOptions = z.infer<typeof AUTO_IMPORT_OPTIONS_SCHEMA>;
210
+ export type AutoExportOptions = z.infer<typeof AUTO_EXPORT_OPTIONS_SCHEMA>;
211
+ export type ScheduleConfigResponse = z.infer<typeof SCHEDULE_CONFIG_RESPONSE>;
212
+ export type UpdateScheduleRequest = z.infer<typeof UPDATE_SCHEDULE_REQUEST_BODY>;
213
+ export type ScheduleExecutionItem = z.infer<typeof EXECUTION_ITEM_SCHEMA>;
214
+ export type ScheduleExecutionsResponse = z.infer<typeof EXECUTIONS_RESPONSE>;
@@ -0,0 +1,65 @@
1
+ import { z } from 'zod';
2
+ export const VALID_TIMEZONES = new Set(Intl.supportedValuesOf('timeZone'));
3
+ export const TIMEZONE_SCHEMA = z
4
+ .string()
5
+ .min(1)
6
+ .refine((val) => VALID_TIMEZONES.has(val), {
7
+ message: 'Invalid IANA timezone',
8
+ });
9
+ export const SCHEDULE_COMMON_FIELDS = {
10
+ enabled: z.boolean(),
11
+ hour: z.number().int().min(0).max(23),
12
+ minute: z.number().int().min(0).max(55),
13
+ timezone: TIMEZONE_SCHEMA,
14
+ filterId: z.guid().optional(),
15
+ };
16
+ export const DAILY_SCHEDULE_SCHEMA = z.object({
17
+ ...SCHEDULE_COMMON_FIELDS,
18
+ frequency: z.literal('daily'),
19
+ });
20
+ export const WEEKLY_SCHEDULE_SCHEMA = z.object({
21
+ ...SCHEDULE_COMMON_FIELDS,
22
+ frequency: z.literal('weekly'),
23
+ day: z.number().int().min(1).max(7),
24
+ });
25
+ export const AUTO_IMPORT_EXTRA = {
26
+ languages: z.array(z.string()).optional(),
27
+ options: z
28
+ .object({
29
+ overrideUpdatedTranslations: z.boolean().optional(),
30
+ skipEmptyTranslations: z.boolean().optional(),
31
+ importTags: z.array(z.string()).optional(),
32
+ })
33
+ .optional(),
34
+ };
35
+ export const AUTO_IMPORT_OPTIONS_SCHEMA = z.discriminatedUnion('frequency', [
36
+ DAILY_SCHEDULE_SCHEMA.extend(AUTO_IMPORT_EXTRA),
37
+ WEEKLY_SCHEDULE_SCHEMA.extend(AUTO_IMPORT_EXTRA),
38
+ ]);
39
+ export const AUTO_EXPORT_EXTRA = {
40
+ languages: z.array(z.string()).optional(),
41
+ };
42
+ export const AUTO_EXPORT_OPTIONS_SCHEMA = z.discriminatedUnion('frequency', [
43
+ DAILY_SCHEDULE_SCHEMA.extend(AUTO_EXPORT_EXTRA),
44
+ WEEKLY_SCHEDULE_SCHEMA.extend(AUTO_EXPORT_EXTRA),
45
+ ]);
46
+ export const SCHEDULE_CONFIG_RESPONSE = z.object({
47
+ autoImport: AUTO_IMPORT_OPTIONS_SCHEMA.nullable(),
48
+ autoExport: AUTO_EXPORT_OPTIONS_SCHEMA.nullable(),
49
+ });
50
+ export const UPDATE_SCHEDULE_REQUEST_BODY = z.object({
51
+ autoImport: AUTO_IMPORT_OPTIONS_SCHEMA.optional(),
52
+ autoExport: AUTO_EXPORT_OPTIONS_SCHEMA.optional(),
53
+ });
54
+ export const EXECUTION_ITEM_SCHEMA = z.object({
55
+ id: z.string(),
56
+ scheduleId: z.string(),
57
+ status: z.enum(['RUNNING', 'COMPLETED', 'FAILED']),
58
+ startedAt: z.string(),
59
+ completedAt: z.string().nullable(),
60
+ error: z.string().nullable(),
61
+ });
62
+ export const EXECUTIONS_RESPONSE = z.object({
63
+ executions: z.array(EXECUTION_ITEM_SCHEMA),
64
+ });
65
+ //# sourceMappingURL=scheduleSchemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduleSchemas.js","sourceRoot":"","sources":["../../../src/schemas/schedule/scheduleSchemas.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lokalise/content-type-app-engine-contracts",
3
- "version": "4.8.0",
3
+ "version": "4.9.0",
4
4
  "description": "Content Type App Engine service contracts",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",