@lssm/lib.contracts 1.7.3 → 1.7.4
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/app-config/contracts.d.ts +51 -49
- package/dist/app-config/contracts.d.ts.map +1 -1
- package/dist/app-config/contracts.js +1 -1
- package/dist/app-config/contracts.js.map +1 -1
- package/dist/app-config/events.d.ts +28 -26
- package/dist/app-config/events.d.ts.map +1 -1
- package/dist/app-config/events.js +1 -1
- package/dist/app-config/events.js.map +1 -1
- package/dist/app-config/lifecycle-contracts.d.ts +81 -79
- package/dist/app-config/lifecycle-contracts.d.ts.map +1 -1
- package/dist/app-config/lifecycle-contracts.js +1 -1
- package/dist/app-config/lifecycle-contracts.js.map +1 -1
- package/dist/capabilities/openbanking.d.ts.map +1 -1
- package/dist/client/react/form-render.d.ts +1 -0
- package/dist/client/react/form-render.d.ts.map +1 -1
- package/dist/contracts-adapter-input.d.ts +1 -0
- package/dist/contracts-adapter-input.d.ts.map +1 -1
- package/dist/events.d.ts +1 -0
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +1 -1
- package/dist/events.js.map +1 -1
- package/dist/forms.d.ts +1 -0
- package/dist/forms.d.ts.map +1 -1
- package/dist/graphql-federation/dist/index.js +2 -0
- package/dist/graphql-federation/dist/index.js.map +1 -0
- package/dist/install.d.ts +1 -0
- package/dist/install.d.ts.map +1 -1
- package/dist/integrations/contracts.d.ts +103 -101
- package/dist/integrations/contracts.d.ts.map +1 -1
- package/dist/integrations/contracts.js +1 -1
- package/dist/integrations/contracts.js.map +1 -1
- package/dist/integrations/openbanking/contracts/accounts.d.ts +67 -65
- package/dist/integrations/openbanking/contracts/accounts.d.ts.map +1 -1
- package/dist/integrations/openbanking/contracts/accounts.js +1 -1
- package/dist/integrations/openbanking/contracts/accounts.js.map +1 -1
- package/dist/integrations/openbanking/contracts/balances.d.ts +35 -33
- package/dist/integrations/openbanking/contracts/balances.d.ts.map +1 -1
- package/dist/integrations/openbanking/contracts/balances.js +1 -1
- package/dist/integrations/openbanking/contracts/balances.js.map +1 -1
- package/dist/integrations/openbanking/contracts/transactions.d.ts +49 -47
- package/dist/integrations/openbanking/contracts/transactions.d.ts.map +1 -1
- package/dist/integrations/openbanking/contracts/transactions.js +1 -1
- package/dist/integrations/openbanking/contracts/transactions.js.map +1 -1
- package/dist/integrations/openbanking/models.d.ts +57 -54
- package/dist/integrations/openbanking/models.d.ts.map +1 -1
- package/dist/integrations/openbanking/models.js +1 -1
- package/dist/integrations/openbanking/models.js.map +1 -1
- package/dist/jsonschema.d.ts +1 -1
- package/dist/jsonschema.d.ts.map +1 -1
- package/dist/knowledge/contracts.d.ts +67 -65
- package/dist/knowledge/contracts.d.ts.map +1 -1
- package/dist/knowledge/contracts.js +1 -1
- package/dist/knowledge/contracts.js.map +1 -1
- package/dist/onboarding-base.d.ts +30 -28
- package/dist/onboarding-base.d.ts.map +1 -1
- package/dist/onboarding-base.js +1 -1
- package/dist/onboarding-base.js.map +1 -1
- package/dist/presentations.d.ts +1 -0
- package/dist/presentations.d.ts.map +1 -1
- package/dist/presentations.v2.d.ts +1 -0
- package/dist/presentations.v2.d.ts.map +1 -1
- package/dist/registry.d.ts +1 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/resources.d.ts.map +1 -1
- package/dist/schema/{src → dist}/FieldType.js +1 -1
- package/dist/schema/dist/FieldType.js.map +1 -0
- package/dist/schema/dist/ScalarTypeEnum.js +2 -0
- package/dist/schema/dist/ScalarTypeEnum.js.map +1 -0
- package/dist/schema/{src → dist}/SchemaModel.js +1 -1
- package/dist/schema/dist/SchemaModel.js.map +1 -0
- package/dist/schema/dist/index.js +1 -0
- package/dist/server/graphql-schema-export.js +1 -1
- package/dist/server/graphql-schema-export.js.map +1 -1
- package/dist/spec.d.ts +1 -0
- package/dist/spec.d.ts.map +1 -1
- package/dist/workflow/spec.d.ts.map +1 -1
- package/package.json +168 -168
- package/dist/graphql-federation/src/index.js +0 -2
- package/dist/graphql-federation/src/index.js.map +0 -1
- package/dist/schema/src/FieldType.js.map +0 -1
- package/dist/schema/src/ScalarTypeEnum.js +0 -2
- package/dist/schema/src/ScalarTypeEnum.js.map +0 -1
- package/dist/schema/src/SchemaModel.js.map +0 -1
- package/dist/schema/src/index.js +0 -1
- /package/dist/schema/{src → dist}/EnumType.js +0 -0
|
@@ -1,36 +1,38 @@
|
|
|
1
1
|
import { ContractSpec } from "../spec.js";
|
|
2
2
|
import { SpecRegistry } from "../registry.js";
|
|
3
|
+
import * as _lssm_lib_schema78 from "@lssm/lib.schema";
|
|
4
|
+
import { SchemaModel } from "@lssm/lib.schema";
|
|
3
5
|
|
|
4
6
|
//#region src/app-config/contracts.d.ts
|
|
5
7
|
declare const UpdateTenantBrandingCommand: ContractSpec<SchemaModel<{
|
|
6
8
|
tenantId: {
|
|
7
|
-
type:
|
|
9
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
8
10
|
isOptional: false;
|
|
9
11
|
};
|
|
10
12
|
appId: {
|
|
11
|
-
type:
|
|
13
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
12
14
|
isOptional: false;
|
|
13
15
|
};
|
|
14
16
|
environment: {
|
|
15
|
-
type:
|
|
17
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
16
18
|
isOptional: true;
|
|
17
19
|
};
|
|
18
20
|
appName: {
|
|
19
|
-
type:
|
|
21
|
+
type: _lssm_lib_schema78.FieldType<Record<string, unknown>, Record<string, unknown>>;
|
|
20
22
|
isOptional: true;
|
|
21
23
|
};
|
|
22
24
|
assets: {
|
|
23
25
|
type: SchemaModel<{
|
|
24
26
|
type: {
|
|
25
|
-
type:
|
|
27
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
26
28
|
isOptional: false;
|
|
27
29
|
};
|
|
28
30
|
url: {
|
|
29
|
-
type:
|
|
31
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
30
32
|
isOptional: false;
|
|
31
33
|
};
|
|
32
34
|
mimeType: {
|
|
33
|
-
type:
|
|
35
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
34
36
|
isOptional: true;
|
|
35
37
|
};
|
|
36
38
|
}>;
|
|
@@ -38,92 +40,92 @@ declare const UpdateTenantBrandingCommand: ContractSpec<SchemaModel<{
|
|
|
38
40
|
isArray: true;
|
|
39
41
|
};
|
|
40
42
|
colors: {
|
|
41
|
-
type:
|
|
43
|
+
type: _lssm_lib_schema78.FieldType<Record<string, unknown>, Record<string, unknown>>;
|
|
42
44
|
isOptional: true;
|
|
43
45
|
};
|
|
44
46
|
customDomain: {
|
|
45
|
-
type:
|
|
47
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
46
48
|
isOptional: true;
|
|
47
49
|
};
|
|
48
50
|
subdomain: {
|
|
49
|
-
type:
|
|
51
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
50
52
|
isOptional: true;
|
|
51
53
|
};
|
|
52
54
|
}>, SchemaModel<{
|
|
53
55
|
success: {
|
|
54
|
-
type:
|
|
56
|
+
type: _lssm_lib_schema78.FieldType<boolean, boolean>;
|
|
55
57
|
isOptional: false;
|
|
56
58
|
};
|
|
57
59
|
updatedAt: {
|
|
58
|
-
type:
|
|
60
|
+
type: _lssm_lib_schema78.FieldType<Date, string>;
|
|
59
61
|
isOptional: false;
|
|
60
62
|
};
|
|
61
63
|
}>, undefined>;
|
|
62
64
|
declare const VerifyCustomDomainCommand: ContractSpec<SchemaModel<{
|
|
63
65
|
tenantId: {
|
|
64
|
-
type:
|
|
66
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
65
67
|
isOptional: false;
|
|
66
68
|
};
|
|
67
69
|
appId: {
|
|
68
|
-
type:
|
|
70
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
69
71
|
isOptional: false;
|
|
70
72
|
};
|
|
71
73
|
domain: {
|
|
72
|
-
type:
|
|
74
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
73
75
|
isOptional: false;
|
|
74
76
|
};
|
|
75
77
|
}>, SchemaModel<{
|
|
76
78
|
status: {
|
|
77
|
-
type:
|
|
79
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
78
80
|
isOptional: false;
|
|
79
81
|
};
|
|
80
82
|
message: {
|
|
81
|
-
type:
|
|
83
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
82
84
|
isOptional: true;
|
|
83
85
|
};
|
|
84
86
|
}>, undefined>;
|
|
85
87
|
declare const UpdateBlueprintTranslationCatalogCommand: ContractSpec<SchemaModel<{
|
|
86
88
|
blueprintName: {
|
|
87
|
-
type:
|
|
89
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
88
90
|
isOptional: false;
|
|
89
91
|
};
|
|
90
92
|
blueprintVersion: {
|
|
91
|
-
type:
|
|
93
|
+
type: _lssm_lib_schema78.FieldType<number, number>;
|
|
92
94
|
isOptional: false;
|
|
93
95
|
};
|
|
94
96
|
catalogName: {
|
|
95
|
-
type:
|
|
97
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
96
98
|
isOptional: false;
|
|
97
99
|
};
|
|
98
100
|
catalogVersion: {
|
|
99
|
-
type:
|
|
101
|
+
type: _lssm_lib_schema78.FieldType<number, number>;
|
|
100
102
|
isOptional: false;
|
|
101
103
|
};
|
|
102
104
|
defaultLocale: {
|
|
103
|
-
type:
|
|
105
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
104
106
|
isOptional: false;
|
|
105
107
|
};
|
|
106
108
|
supportedLocales: {
|
|
107
|
-
type:
|
|
109
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
108
110
|
isOptional: false;
|
|
109
111
|
isArray: true;
|
|
110
112
|
};
|
|
111
113
|
entries: {
|
|
112
114
|
type: SchemaModel<{
|
|
113
115
|
key: {
|
|
114
|
-
type:
|
|
116
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
115
117
|
isOptional: false;
|
|
116
118
|
};
|
|
117
119
|
locale: {
|
|
118
|
-
type:
|
|
120
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
119
121
|
isOptional: false;
|
|
120
122
|
};
|
|
121
123
|
value: {
|
|
122
|
-
type:
|
|
124
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
123
125
|
isOptional: false;
|
|
124
126
|
};
|
|
125
127
|
context: {
|
|
126
|
-
type:
|
|
128
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
127
129
|
isOptional: true;
|
|
128
130
|
};
|
|
129
131
|
}>;
|
|
@@ -132,39 +134,39 @@ declare const UpdateBlueprintTranslationCatalogCommand: ContractSpec<SchemaModel
|
|
|
132
134
|
};
|
|
133
135
|
}>, SchemaModel<{
|
|
134
136
|
success: {
|
|
135
|
-
type:
|
|
137
|
+
type: _lssm_lib_schema78.FieldType<boolean, boolean>;
|
|
136
138
|
isOptional: false;
|
|
137
139
|
};
|
|
138
140
|
updatedAt: {
|
|
139
|
-
type:
|
|
141
|
+
type: _lssm_lib_schema78.FieldType<Date, string>;
|
|
140
142
|
isOptional: false;
|
|
141
143
|
};
|
|
142
144
|
}>, undefined>;
|
|
143
145
|
declare const UpdateTenantTranslationOverridesCommand: ContractSpec<SchemaModel<{
|
|
144
146
|
tenantId: {
|
|
145
|
-
type:
|
|
147
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
146
148
|
isOptional: false;
|
|
147
149
|
};
|
|
148
150
|
appId: {
|
|
149
|
-
type:
|
|
151
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
150
152
|
isOptional: false;
|
|
151
153
|
};
|
|
152
154
|
entries: {
|
|
153
155
|
type: SchemaModel<{
|
|
154
156
|
key: {
|
|
155
|
-
type:
|
|
157
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
156
158
|
isOptional: false;
|
|
157
159
|
};
|
|
158
160
|
locale: {
|
|
159
|
-
type:
|
|
161
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
160
162
|
isOptional: false;
|
|
161
163
|
};
|
|
162
164
|
value: {
|
|
163
|
-
type:
|
|
165
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
164
166
|
isOptional: false;
|
|
165
167
|
};
|
|
166
168
|
context: {
|
|
167
|
-
type:
|
|
169
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
168
170
|
isOptional: true;
|
|
169
171
|
};
|
|
170
172
|
}>;
|
|
@@ -172,67 +174,67 @@ declare const UpdateTenantTranslationOverridesCommand: ContractSpec<SchemaModel<
|
|
|
172
174
|
isArray: true;
|
|
173
175
|
};
|
|
174
176
|
defaultLocale: {
|
|
175
|
-
type:
|
|
177
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
176
178
|
isOptional: true;
|
|
177
179
|
};
|
|
178
180
|
enabledLocales: {
|
|
179
|
-
type:
|
|
181
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
180
182
|
isOptional: true;
|
|
181
183
|
isArray: true;
|
|
182
184
|
};
|
|
183
185
|
}>, SchemaModel<{
|
|
184
186
|
success: {
|
|
185
|
-
type:
|
|
187
|
+
type: _lssm_lib_schema78.FieldType<boolean, boolean>;
|
|
186
188
|
isOptional: false;
|
|
187
189
|
};
|
|
188
190
|
updatedAt: {
|
|
189
|
-
type:
|
|
191
|
+
type: _lssm_lib_schema78.FieldType<Date, string>;
|
|
190
192
|
isOptional: false;
|
|
191
193
|
};
|
|
192
194
|
}>, undefined>;
|
|
193
195
|
declare const GetResolvedBrandingQuery: ContractSpec<SchemaModel<{
|
|
194
196
|
tenantId: {
|
|
195
|
-
type:
|
|
197
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
196
198
|
isOptional: false;
|
|
197
199
|
};
|
|
198
200
|
appId: {
|
|
199
|
-
type:
|
|
201
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
200
202
|
isOptional: false;
|
|
201
203
|
};
|
|
202
204
|
environment: {
|
|
203
|
-
type:
|
|
205
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
204
206
|
isOptional: true;
|
|
205
207
|
};
|
|
206
208
|
}>, SchemaModel<{
|
|
207
209
|
branding: {
|
|
208
|
-
type:
|
|
210
|
+
type: _lssm_lib_schema78.FieldType<Record<string, unknown>, Record<string, unknown>>;
|
|
209
211
|
isOptional: false;
|
|
210
212
|
};
|
|
211
213
|
}>, undefined>;
|
|
212
214
|
declare const ResolveMessageQuery: ContractSpec<SchemaModel<{
|
|
213
215
|
tenantId: {
|
|
214
|
-
type:
|
|
216
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
215
217
|
isOptional: false;
|
|
216
218
|
};
|
|
217
219
|
appId: {
|
|
218
|
-
type:
|
|
220
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
219
221
|
isOptional: false;
|
|
220
222
|
};
|
|
221
223
|
locale: {
|
|
222
|
-
type:
|
|
224
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
223
225
|
isOptional: false;
|
|
224
226
|
};
|
|
225
227
|
key: {
|
|
226
|
-
type:
|
|
228
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
227
229
|
isOptional: false;
|
|
228
230
|
};
|
|
229
231
|
}>, SchemaModel<{
|
|
230
232
|
value: {
|
|
231
|
-
type:
|
|
233
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
232
234
|
isOptional: true;
|
|
233
235
|
};
|
|
234
236
|
source: {
|
|
235
|
-
type:
|
|
237
|
+
type: _lssm_lib_schema78.FieldType<string, string>;
|
|
236
238
|
isOptional: true;
|
|
237
239
|
};
|
|
238
240
|
}>, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","names":[],"sources":["../../src/app-config/contracts.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","names":[],"sources":["../../src/app-config/contracts.ts"],"sourcesContent":[],"mappings":";;;;;;cAgIa,6BAA2B,aAAA;;UAoBtC,kBAAA,CAAA;IApBW,UAAA,EAAA,KAAA;EAoBX,CAAA;;;;;;;;;;;;;;;MApBsC,IAAA,EAAA;QAAA,IAAA,8BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;QAAA,IAAA,8BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;QAAA,UAAA,EAAA,KAAA;MAsB3B,CAAA;MAoBX,QAAA,EAAA;;;MApBoC,CAAA;IAAA,CAAA,CAAA;;;EAAA,CAAA;EAAA,MAAA,EAAA;IAsBzB,IAAA,8BAoBX,OAAA,CAAA,MAAA,EAAA,OAAA,CAAA,QAAA,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA;IAAA,UAAA,EAAA,IAAA;;;;;;;;;;;EApBmD,OAAA,EAAA;IAAA,IAAA,EA5Cb,kBAAA,CAAA,SA4Ca,CAAA,OAAA,EAAA,OAAA,CAAA;;;;IAAA,IAAA,8BAAA,KAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;EAsBxC,CAAA;CAoBX,CAAA,EAAA,SAAA,CAAA;cAhEW,2BAAyB,aAAA;;UAoBpC,kBAAA,CAAA;;;;;;EAwBkD,CAAA;EAAA,MAAA,EAAA;;;;CAAA,CAAA,aAAA,CAAA;EAAA,MAAA,EAAA;IAsBvC,IAAA,EAlEyB,kBAAA,CAAA,SAkGpC,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;;;IAhCmC,IAAA,8BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;cA5CxB,0CAAwC,aAAA;EA4ChB,aAAA,EAAA;IAAA,IAAA,EAxBnC,kBAAA,CAAA,SAwBmC,CAAA,MAAA,EAAA,MAAA,CAAA;IAkCxB,UAAA,EAAA,KAAA;EAqBX,CAAA;;;;EArB8B,CAAA;EAAA,WAAA,EAAA;;;EAAA,CAAA;EAAA,cAAA,EAAA;IAuBnB,IAAA,8BAAmC,CAAf,MAAA,EAAM,MAAA,CAAA;IASvB,UAAA,EAAA,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA9GqC,kBAAA,CAAA;;;;;;;;cAsBxC,yCAAuC,aAAA;;UAoBlD,kBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UApBkD,kBAAA,CAAA;;;;;;;;cAsBvC,0BAAwB,aAAA;;UAgCnC,kBAAA,CAAA;;;;;;;;;;;;;;;;;cAEW,qBAAmB,aAAA;;UAqB9B,kBAAA,CAAA;;;;;;;;;;;;;;;;;UArB8B,kBAAA,CAAA;;;;;;;;cAuBnB,oBAAoB,eAAe;iBAShC,0BAAA,WAAqC,eAAY"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{l as e}from"../schema/dist/ScalarTypeEnum.js";import{t}from"../schema/dist/SchemaModel.js";import"../schema/dist/index.js";import{defineCommand as n,defineQuery as r}from"../spec.js";import{OwnersEnum as i,StabilityEnum as a,TagsEnum as o}from"../ownership.js";const s=new t({name:`BrandingAssetInput`,fields:{type:{type:e.String_unsecure(),isOptional:!1},url:{type:e.URL(),isOptional:!1},mimeType:{type:e.String_unsecure(),isOptional:!0}}}),c=new t({name:`UpdateTenantBrandingInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},environment:{type:e.String_unsecure(),isOptional:!0},appName:{type:e.JSONObject(),isOptional:!0},assets:{type:s,isOptional:!0,isArray:!0},colors:{type:e.JSONObject(),isOptional:!0},customDomain:{type:e.String_unsecure(),isOptional:!0},subdomain:{type:e.String_unsecure(),isOptional:!0}}}),l=new t({name:`UpdateTenantBrandingOutput`,fields:{success:{type:e.Boolean(),isOptional:!1},updatedAt:{type:e.DateTime(),isOptional:!1}}}),u=new t({name:`VerifyCustomDomainInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},domain:{type:e.String_unsecure(),isOptional:!1}}}),d=new t({name:`VerifyCustomDomainOutput`,fields:{status:{type:e.String_unsecure(),isOptional:!1},message:{type:e.String_unsecure(),isOptional:!0}}}),f=new t({name:`TranslationEntryInput`,fields:{key:{type:e.String_unsecure(),isOptional:!1},locale:{type:e.String_unsecure(),isOptional:!1},value:{type:e.String_unsecure(),isOptional:!1},context:{type:e.String_unsecure(),isOptional:!0}}}),p=new t({name:`UpdateBlueprintTranslationInput`,fields:{blueprintName:{type:e.String_unsecure(),isOptional:!1},blueprintVersion:{type:e.Int_unsecure(),isOptional:!1},catalogName:{type:e.String_unsecure(),isOptional:!1},catalogVersion:{type:e.Int_unsecure(),isOptional:!1},defaultLocale:{type:e.String_unsecure(),isOptional:!1},supportedLocales:{type:e.String_unsecure(),isOptional:!1,isArray:!0},entries:{type:f,isOptional:!1,isArray:!0}}}),m=new t({name:`UpdateTenantTranslationInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},entries:{type:f,isOptional:!1,isArray:!0},defaultLocale:{type:e.String_unsecure(),isOptional:!0},enabledLocales:{type:e.String_unsecure(),isOptional:!0,isArray:!0}}}),h=new t({name:`MessageResolutionInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},locale:{type:e.String_unsecure(),isOptional:!1},key:{type:e.String_unsecure(),isOptional:!1}}}),g=new t({name:`MessageResolutionOutput`,fields:{value:{type:e.String_unsecure(),isOptional:!0},source:{type:e.String_unsecure(),isOptional:!0}}}),_=n({meta:{name:`appConfig.updateTenantBranding`,version:1,description:`Applies tenant branding overrides (names, assets, domains).`,owners:[i.PlatformSigil],tags:[`branding`],stability:a.Beta,goal:`Maintain tenant-specific branding assets and domains.`,context:`Invoked by the Studio or automation when a tenant updates branding settings.`},io:{input:c,output:l},policy:{auth:`admin`,policies:[{name:`platform.app-config.manage`,version:1}]}}),v=n({meta:{name:`appConfig.verifyCustomDomain`,version:1,description:`Validates DNS ownership for tenant custom domains.`,owners:[i.PlatformSigil],tags:[`branding`],stability:a.Experimental,goal:`Confirm tenant-provided domains before activation.`,context:`Triggered after the tenant adds DNS records to verify domain ownership.`},io:{input:u,output:d},policy:{auth:`admin`,policies:[{name:`platform.app-config.manage`,version:1}]}}),y=n({meta:{name:`appConfig.updateBlueprintTranslationCatalog`,version:1,description:`Registers or updates translation entries for a blueprint.`,owners:[i.PlatformSigil],tags:[o.I18n],stability:a.Beta,goal:`Keep blueprint translation catalogs in sync with shipped copy.`,context:`Executed by platform automation or CI when committing updated translation catalogs.`},io:{input:p,output:l},policy:{auth:`admin`,policies:[{name:`platform.app-config.manage`,version:1}]}}),b=n({meta:{name:`appConfig.updateTenantTranslations`,version:1,description:`Applies tenant-specific translation entries.`,owners:[i.PlatformSigil],tags:[o.I18n],stability:a.Beta,goal:`Allow tenants to override selected message keys.`,context:`Called by the Studio when a tenant customizes labels or copy for their locale.`},io:{input:m,output:l},policy:{auth:`admin`,policies:[{name:`platform.app-config.manage`,version:1}]}}),x=r({meta:{name:`appConfig.getResolvedBranding`,version:1,description:`Returns the resolved branding for a tenant/app/environment.`,owners:[i.PlatformSigil],tags:[`branding`],stability:a.Beta,goal:`Expose hydrated branding assets for rendering UI/email experiences.`,context:`Used by runtime surfaces to fetch brand assets prior to rendering tenant-specific experiences.`},io:{input:new t({name:`GetResolvedBrandingInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},environment:{type:e.String_unsecure(),isOptional:!0}}}),output:new t({name:`GetResolvedBrandingOutput`,fields:{branding:{type:e.JSONObject(),isOptional:!1}}})},policy:{auth:`admin`,policies:[{name:`platform.app-config.read`,version:1}]}}),S=r({meta:{name:`appConfig.resolveMessage`,version:1,description:`Resolves a translation key for a tenant in the requested locale.`,owners:[i.PlatformSigil],tags:[o.I18n],stability:a.Experimental,goal:`Expose a server-side API for resolving message keys on demand.`,context:`Used by backend services or scripts that need translated copy outside the front-end runtime.`},io:{input:h,output:g},policy:{auth:`admin`,policies:[{name:`platform.app-config.read`,version:1}]}}),C={UpdateTenantBrandingCommand:_,VerifyCustomDomainCommand:v,UpdateBlueprintTranslationCatalogCommand:y,UpdateTenantTranslationOverridesCommand:b,GetResolvedBrandingQuery:x,ResolveMessageQuery:S};function w(e){return e.register(_).register(v).register(y).register(b).register(x).register(S)}export{x as GetResolvedBrandingQuery,S as ResolveMessageQuery,y as UpdateBlueprintTranslationCatalogCommand,_ as UpdateTenantBrandingCommand,b as UpdateTenantTranslationOverridesCommand,v as VerifyCustomDomainCommand,C as appConfigContracts,w as registerAppConfigContracts};
|
|
2
2
|
//# sourceMappingURL=contracts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","names":["appConfigContracts: Record<string, ContractSpec<any, any>>"],"sources":["../../src/app-config/contracts.ts"],"sourcesContent":["import {\n ScalarTypeEnum,\n SchemaModel,\n} from '@lssm/lib.schema';\nimport {\n defineCommand,\n defineQuery,\n} from '../spec';\nimport { OwnersEnum, StabilityEnum, TagsEnum } from '../ownership';\nimport type { ContractSpec } from '../spec';\nimport type { SpecRegistry } from '../registry';\n\nconst BrandingAssetInput = new SchemaModel({\n name: 'BrandingAssetInput',\n fields: {\n type: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n url: { type: ScalarTypeEnum.URL(), isOptional: false },\n mimeType: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst UpdateTenantBrandingInput = new SchemaModel({\n name: 'UpdateTenantBrandingInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n environment: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n appName: { type: ScalarTypeEnum.JSONObject(), isOptional: true },\n assets: { type: BrandingAssetInput, isOptional: true, isArray: true },\n colors: { type: ScalarTypeEnum.JSONObject(), isOptional: true },\n customDomain: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n subdomain: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst UpdateTenantBrandingOutput = new SchemaModel({\n name: 'UpdateTenantBrandingOutput',\n fields: {\n success: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n updatedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n },\n});\n\nconst VerifyCustomDomainInput = new SchemaModel({\n name: 'VerifyCustomDomainInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n domain: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst VerifyCustomDomainOutput = new SchemaModel({\n name: 'VerifyCustomDomainOutput',\n fields: {\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n message: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst TranslationEntryInput = new SchemaModel({\n name: 'TranslationEntryInput',\n fields: {\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n locale: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n value: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n context: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst UpdateBlueprintTranslationInput = new SchemaModel({\n name: 'UpdateBlueprintTranslationInput',\n fields: {\n blueprintName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n blueprintVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n catalogName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n catalogVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n defaultLocale: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n supportedLocales: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n isArray: true,\n },\n entries: {\n type: TranslationEntryInput,\n isOptional: false,\n isArray: true,\n },\n },\n});\n\nconst UpdateTenantTranslationInput = new SchemaModel({\n name: 'UpdateTenantTranslationInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n entries: {\n type: TranslationEntryInput,\n isOptional: false,\n isArray: true,\n },\n defaultLocale: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n enabledLocales: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n isArray: true,\n },\n },\n});\n\nconst MessageResolutionInput = new SchemaModel({\n name: 'MessageResolutionInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n locale: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst MessageResolutionOutput = new SchemaModel({\n name: 'MessageResolutionOutput',\n fields: {\n value: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n source: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nexport const UpdateTenantBrandingCommand = defineCommand({\n meta: {\n name: 'appConfig.updateTenantBranding',\n version: 1,\n description: 'Applies tenant branding overrides (names, assets, domains).',\n owners: [OwnersEnum.PlatformSigil],\n tags: ['branding'],\n stability: StabilityEnum.Beta,\n goal: 'Maintain tenant-specific branding assets and domains.',\n context:\n 'Invoked by the Studio or automation when a tenant updates branding settings.',\n },\n io: {\n input: UpdateTenantBrandingInput,\n output: UpdateTenantBrandingOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n },\n});\n\nexport const VerifyCustomDomainCommand = defineCommand({\n meta: {\n name: 'appConfig.verifyCustomDomain',\n version: 1,\n description: 'Validates DNS ownership for tenant custom domains.',\n owners: [OwnersEnum.PlatformSigil],\n tags: ['branding'],\n stability: StabilityEnum.Experimental,\n goal: 'Confirm tenant-provided domains before activation.',\n context:\n 'Triggered after the tenant adds DNS records to verify domain ownership.',\n },\n io: {\n input: VerifyCustomDomainInput,\n output: VerifyCustomDomainOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n },\n});\n\nexport const UpdateBlueprintTranslationCatalogCommand = defineCommand({\n meta: {\n name: 'appConfig.updateBlueprintTranslationCatalog',\n version: 1,\n description: 'Registers or updates translation entries for a blueprint.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.I18n],\n stability: StabilityEnum.Beta,\n goal: 'Keep blueprint translation catalogs in sync with shipped copy.',\n context:\n 'Executed by platform automation or CI when committing updated translation catalogs.',\n },\n io: {\n input: UpdateBlueprintTranslationInput,\n output: UpdateTenantBrandingOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n },\n});\n\nexport const UpdateTenantTranslationOverridesCommand = defineCommand({\n meta: {\n name: 'appConfig.updateTenantTranslations',\n version: 1,\n description: 'Applies tenant-specific translation entries.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.I18n],\n stability: StabilityEnum.Beta,\n goal: 'Allow tenants to override selected message keys.',\n context:\n 'Called by the Studio when a tenant customizes labels or copy for their locale.',\n },\n io: {\n input: UpdateTenantTranslationInput,\n output: UpdateTenantBrandingOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n },\n});\n\nexport const GetResolvedBrandingQuery = defineQuery({\n meta: {\n name: 'appConfig.getResolvedBranding',\n version: 1,\n description: 'Returns the resolved branding for a tenant/app/environment.',\n owners: [OwnersEnum.PlatformSigil],\n tags: ['branding'],\n stability: StabilityEnum.Beta,\n goal: 'Expose hydrated branding assets for rendering UI/email experiences.',\n context:\n 'Used by runtime surfaces to fetch brand assets prior to rendering tenant-specific experiences.',\n },\n io: {\n input: new SchemaModel({\n name: 'GetResolvedBrandingInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n environment: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n }),\n output: new SchemaModel({\n name: 'GetResolvedBrandingOutput',\n fields: {\n branding: { type: ScalarTypeEnum.JSONObject(), isOptional: false },\n },\n }),\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.read', version: 1 }],\n },\n});\n\nexport const ResolveMessageQuery = defineQuery({\n meta: {\n name: 'appConfig.resolveMessage',\n version: 1,\n description:\n 'Resolves a translation key for a tenant in the requested locale.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.I18n],\n stability: StabilityEnum.Experimental,\n goal: 'Expose a server-side API for resolving message keys on demand.',\n context:\n 'Used by backend services or scripts that need translated copy outside the front-end runtime.',\n },\n io: {\n input: MessageResolutionInput,\n output: MessageResolutionOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.read', version: 1 }],\n },\n});\n\nexport const appConfigContracts: Record<string, ContractSpec<any, any>> = {\n UpdateTenantBrandingCommand,\n VerifyCustomDomainCommand,\n UpdateBlueprintTranslationCatalogCommand,\n UpdateTenantTranslationOverridesCommand,\n GetResolvedBrandingQuery,\n ResolveMessageQuery,\n};\n\nexport function registerAppConfigContracts(registry: SpecRegistry) {\n return registry\n .register(UpdateTenantBrandingCommand)\n .register(VerifyCustomDomainCommand)\n .register(UpdateBlueprintTranslationCatalogCommand)\n .register(UpdateTenantTranslationOverridesCommand)\n .register(GetResolvedBrandingQuery)\n .register(ResolveMessageQuery);\n}\n\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contracts.js","names":["SchemaModel","ScalarTypeEnum","appConfigContracts: Record<string, ContractSpec<any, any>>"],"sources":["../../src/app-config/contracts.ts"],"sourcesContent":["import {\n ScalarTypeEnum,\n SchemaModel,\n} from '@lssm/lib.schema';\nimport {\n defineCommand,\n defineQuery,\n} from '../spec';\nimport { OwnersEnum, StabilityEnum, TagsEnum } from '../ownership';\nimport type { ContractSpec } from '../spec';\nimport type { SpecRegistry } from '../registry';\n\nconst BrandingAssetInput = new SchemaModel({\n name: 'BrandingAssetInput',\n fields: {\n type: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n url: { type: ScalarTypeEnum.URL(), isOptional: false },\n mimeType: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst UpdateTenantBrandingInput = new SchemaModel({\n name: 'UpdateTenantBrandingInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n environment: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n appName: { type: ScalarTypeEnum.JSONObject(), isOptional: true },\n assets: { type: BrandingAssetInput, isOptional: true, isArray: true },\n colors: { type: ScalarTypeEnum.JSONObject(), isOptional: true },\n customDomain: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n subdomain: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst UpdateTenantBrandingOutput = new SchemaModel({\n name: 'UpdateTenantBrandingOutput',\n fields: {\n success: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n updatedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n },\n});\n\nconst VerifyCustomDomainInput = new SchemaModel({\n name: 'VerifyCustomDomainInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n domain: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst VerifyCustomDomainOutput = new SchemaModel({\n name: 'VerifyCustomDomainOutput',\n fields: {\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n message: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst TranslationEntryInput = new SchemaModel({\n name: 'TranslationEntryInput',\n fields: {\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n locale: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n value: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n context: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst UpdateBlueprintTranslationInput = new SchemaModel({\n name: 'UpdateBlueprintTranslationInput',\n fields: {\n blueprintName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n blueprintVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n catalogName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n catalogVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n defaultLocale: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n supportedLocales: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n isArray: true,\n },\n entries: {\n type: TranslationEntryInput,\n isOptional: false,\n isArray: true,\n },\n },\n});\n\nconst UpdateTenantTranslationInput = new SchemaModel({\n name: 'UpdateTenantTranslationInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n entries: {\n type: TranslationEntryInput,\n isOptional: false,\n isArray: true,\n },\n defaultLocale: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n enabledLocales: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n isArray: true,\n },\n },\n});\n\nconst MessageResolutionInput = new SchemaModel({\n name: 'MessageResolutionInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n locale: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst MessageResolutionOutput = new SchemaModel({\n name: 'MessageResolutionOutput',\n fields: {\n value: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n source: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nexport const UpdateTenantBrandingCommand = defineCommand({\n meta: {\n name: 'appConfig.updateTenantBranding',\n version: 1,\n description: 'Applies tenant branding overrides (names, assets, domains).',\n owners: [OwnersEnum.PlatformSigil],\n tags: ['branding'],\n stability: StabilityEnum.Beta,\n goal: 'Maintain tenant-specific branding assets and domains.',\n context:\n 'Invoked by the Studio or automation when a tenant updates branding settings.',\n },\n io: {\n input: UpdateTenantBrandingInput,\n output: UpdateTenantBrandingOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n },\n});\n\nexport const VerifyCustomDomainCommand = defineCommand({\n meta: {\n name: 'appConfig.verifyCustomDomain',\n version: 1,\n description: 'Validates DNS ownership for tenant custom domains.',\n owners: [OwnersEnum.PlatformSigil],\n tags: ['branding'],\n stability: StabilityEnum.Experimental,\n goal: 'Confirm tenant-provided domains before activation.',\n context:\n 'Triggered after the tenant adds DNS records to verify domain ownership.',\n },\n io: {\n input: VerifyCustomDomainInput,\n output: VerifyCustomDomainOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n },\n});\n\nexport const UpdateBlueprintTranslationCatalogCommand = defineCommand({\n meta: {\n name: 'appConfig.updateBlueprintTranslationCatalog',\n version: 1,\n description: 'Registers or updates translation entries for a blueprint.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.I18n],\n stability: StabilityEnum.Beta,\n goal: 'Keep blueprint translation catalogs in sync with shipped copy.',\n context:\n 'Executed by platform automation or CI when committing updated translation catalogs.',\n },\n io: {\n input: UpdateBlueprintTranslationInput,\n output: UpdateTenantBrandingOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n },\n});\n\nexport const UpdateTenantTranslationOverridesCommand = defineCommand({\n meta: {\n name: 'appConfig.updateTenantTranslations',\n version: 1,\n description: 'Applies tenant-specific translation entries.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.I18n],\n stability: StabilityEnum.Beta,\n goal: 'Allow tenants to override selected message keys.',\n context:\n 'Called by the Studio when a tenant customizes labels or copy for their locale.',\n },\n io: {\n input: UpdateTenantTranslationInput,\n output: UpdateTenantBrandingOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n },\n});\n\nexport const GetResolvedBrandingQuery = defineQuery({\n meta: {\n name: 'appConfig.getResolvedBranding',\n version: 1,\n description: 'Returns the resolved branding for a tenant/app/environment.',\n owners: [OwnersEnum.PlatformSigil],\n tags: ['branding'],\n stability: StabilityEnum.Beta,\n goal: 'Expose hydrated branding assets for rendering UI/email experiences.',\n context:\n 'Used by runtime surfaces to fetch brand assets prior to rendering tenant-specific experiences.',\n },\n io: {\n input: new SchemaModel({\n name: 'GetResolvedBrandingInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n environment: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n }),\n output: new SchemaModel({\n name: 'GetResolvedBrandingOutput',\n fields: {\n branding: { type: ScalarTypeEnum.JSONObject(), isOptional: false },\n },\n }),\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.read', version: 1 }],\n },\n});\n\nexport const ResolveMessageQuery = defineQuery({\n meta: {\n name: 'appConfig.resolveMessage',\n version: 1,\n description:\n 'Resolves a translation key for a tenant in the requested locale.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.I18n],\n stability: StabilityEnum.Experimental,\n goal: 'Expose a server-side API for resolving message keys on demand.',\n context:\n 'Used by backend services or scripts that need translated copy outside the front-end runtime.',\n },\n io: {\n input: MessageResolutionInput,\n output: MessageResolutionOutput,\n },\n policy: {\n auth: 'admin',\n policies: [{ name: 'platform.app-config.read', version: 1 }],\n },\n});\n\nexport const appConfigContracts: Record<string, ContractSpec<any, any>> = {\n UpdateTenantBrandingCommand,\n VerifyCustomDomainCommand,\n UpdateBlueprintTranslationCatalogCommand,\n UpdateTenantTranslationOverridesCommand,\n GetResolvedBrandingQuery,\n ResolveMessageQuery,\n};\n\nexport function registerAppConfigContracts(registry: SpecRegistry) {\n return registry\n .register(UpdateTenantBrandingCommand)\n .register(VerifyCustomDomainCommand)\n .register(UpdateBlueprintTranslationCatalogCommand)\n .register(UpdateTenantTranslationOverridesCommand)\n .register(GetResolvedBrandingQuery)\n .register(ResolveMessageQuery);\n}\n\n"],"mappings":"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"}
|
|
@@ -1,118 +1,120 @@
|
|
|
1
1
|
import { EventSpec } from "../events.js";
|
|
2
2
|
import "../index.js";
|
|
3
|
+
import * as _lssm_lib_schema127 from "@lssm/lib.schema";
|
|
4
|
+
import { SchemaModel } from "@lssm/lib.schema";
|
|
3
5
|
|
|
4
6
|
//#region src/app-config/events.d.ts
|
|
5
7
|
declare const ConfigDraftCreatedEvent: EventSpec<SchemaModel<{
|
|
6
8
|
tenantId: {
|
|
7
|
-
type:
|
|
9
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
8
10
|
isOptional: false;
|
|
9
11
|
};
|
|
10
12
|
appId: {
|
|
11
|
-
type:
|
|
13
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
12
14
|
isOptional: false;
|
|
13
15
|
};
|
|
14
16
|
version: {
|
|
15
|
-
type:
|
|
17
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
16
18
|
isOptional: false;
|
|
17
19
|
};
|
|
18
20
|
blueprintName: {
|
|
19
|
-
type:
|
|
21
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
20
22
|
isOptional: false;
|
|
21
23
|
};
|
|
22
24
|
blueprintVersion: {
|
|
23
|
-
type:
|
|
25
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
24
26
|
isOptional: false;
|
|
25
27
|
};
|
|
26
28
|
createdBy: {
|
|
27
|
-
type:
|
|
29
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
28
30
|
isOptional: false;
|
|
29
31
|
};
|
|
30
32
|
clonedFrom: {
|
|
31
|
-
type:
|
|
33
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
32
34
|
isOptional: true;
|
|
33
35
|
};
|
|
34
36
|
}>>;
|
|
35
37
|
declare const ConfigPromotedToPreviewEvent: EventSpec<SchemaModel<{
|
|
36
38
|
tenantId: {
|
|
37
|
-
type:
|
|
39
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
38
40
|
isOptional: false;
|
|
39
41
|
};
|
|
40
42
|
appId: {
|
|
41
|
-
type:
|
|
43
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
42
44
|
isOptional: false;
|
|
43
45
|
};
|
|
44
46
|
version: {
|
|
45
|
-
type:
|
|
47
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
46
48
|
isOptional: false;
|
|
47
49
|
};
|
|
48
50
|
promotedBy: {
|
|
49
|
-
type:
|
|
51
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
50
52
|
isOptional: false;
|
|
51
53
|
};
|
|
52
54
|
warnings: {
|
|
53
|
-
type:
|
|
55
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
54
56
|
isOptional: true;
|
|
55
57
|
isArray: true;
|
|
56
58
|
};
|
|
57
59
|
}>>;
|
|
58
60
|
declare const ConfigPublishedEvent: EventSpec<SchemaModel<{
|
|
59
61
|
tenantId: {
|
|
60
|
-
type:
|
|
62
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
61
63
|
isOptional: false;
|
|
62
64
|
};
|
|
63
65
|
appId: {
|
|
64
|
-
type:
|
|
66
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
65
67
|
isOptional: false;
|
|
66
68
|
};
|
|
67
69
|
version: {
|
|
68
|
-
type:
|
|
70
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
69
71
|
isOptional: false;
|
|
70
72
|
};
|
|
71
73
|
previousVersion: {
|
|
72
|
-
type:
|
|
74
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
73
75
|
isOptional: true;
|
|
74
76
|
};
|
|
75
77
|
publishedBy: {
|
|
76
|
-
type:
|
|
78
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
77
79
|
isOptional: false;
|
|
78
80
|
};
|
|
79
81
|
changeSummary: {
|
|
80
|
-
type:
|
|
82
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
81
83
|
isOptional: true;
|
|
82
84
|
};
|
|
83
85
|
changedSections: {
|
|
84
|
-
type:
|
|
86
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
85
87
|
isOptional: true;
|
|
86
88
|
isArray: true;
|
|
87
89
|
};
|
|
88
90
|
}>>;
|
|
89
91
|
declare const ConfigRolledBackEvent: EventSpec<SchemaModel<{
|
|
90
92
|
tenantId: {
|
|
91
|
-
type:
|
|
93
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
92
94
|
isOptional: false;
|
|
93
95
|
};
|
|
94
96
|
appId: {
|
|
95
|
-
type:
|
|
97
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
96
98
|
isOptional: false;
|
|
97
99
|
};
|
|
98
100
|
newVersion: {
|
|
99
|
-
type:
|
|
101
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
100
102
|
isOptional: false;
|
|
101
103
|
};
|
|
102
104
|
rolledBackFrom: {
|
|
103
|
-
type:
|
|
105
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
104
106
|
isOptional: false;
|
|
105
107
|
};
|
|
106
108
|
rolledBackTo: {
|
|
107
|
-
type:
|
|
109
|
+
type: _lssm_lib_schema127.FieldType<number, number>;
|
|
108
110
|
isOptional: false;
|
|
109
111
|
};
|
|
110
112
|
rolledBackBy: {
|
|
111
|
-
type:
|
|
113
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
112
114
|
isOptional: false;
|
|
113
115
|
};
|
|
114
116
|
reason: {
|
|
115
|
-
type:
|
|
117
|
+
type: _lssm_lib_schema127.FieldType<string, string>;
|
|
116
118
|
isOptional: false;
|
|
117
119
|
};
|
|
118
120
|
}>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","names":[],"sources":["../../src/app-config/events.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"events.d.ts","names":[],"sources":["../../src/app-config/events.ts"],"sourcesContent":[],"mappings":";;;;;;cAca,yBAAuB,UAAA;;UAoBlC,mBAAA,CAAA;;;EApBW,KAAA,EAAA;IAoBX,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;;;;EApBkC,aAAA,EAAA;IAAA,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;EAsBvB,CAAA;EAmBX,gBAAA,EAAA;;;;;IAnBuC,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;EAAA,CAAA;EAqB5B,UAAA,EAAA;IA8BX,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;cAnDW,8BAA4B,UAAA;;UAmBvC,mBAAA,CAAA;IAE+B,UAAA,EAAA,KAAA;EAAA,CAAA;EAAA,KAAA,EAAA;IAgCpB,IAAA,+BA0BX,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;;;;;;;IA1BgC,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;EAAA,CAAA;;;;;;;cAhCrB,sBAAoB,UAAA;;UA8B/B,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAEW,uBAAqB,UAAA;;UA0BhC,mBAAA,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{l as e}from"../schema/dist/ScalarTypeEnum.js";import{t}from"../schema/dist/SchemaModel.js";import"../schema/dist/index.js";import{defineEvent as n}from"../events.js";import{OwnersEnum as r,StabilityEnum as i,TagsEnum as a}from"../ownership.js";const o={title:`Tenant App Config Lifecycle`,description:`Events emitted when tenant app configurations move through lifecycle stages.`,domain:`app-config.lifecycle`,owners:[r.PlatformSigil],tags:[a.Hygiene],stability:i.Beta},s=n({name:`app_config.draft_created`,version:1,description:`A new tenant config draft was created.`,ownership:o,payload:new t({name:`ConfigDraftCreatedPayload`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},version:{type:e.Int_unsecure(),isOptional:!1},blueprintName:{type:e.String_unsecure(),isOptional:!1},blueprintVersion:{type:e.Int_unsecure(),isOptional:!1},createdBy:{type:e.String_unsecure(),isOptional:!1},clonedFrom:{type:e.Int_unsecure(),isOptional:!0}}})}),c=n({name:`app_config.promoted_to_preview`,version:1,description:`A tenant config draft was promoted to preview.`,ownership:o,payload:new t({name:`ConfigPromotedToPreviewPayload`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},version:{type:e.Int_unsecure(),isOptional:!1},promotedBy:{type:e.String_unsecure(),isOptional:!1},warnings:{type:e.String_unsecure(),isOptional:!0,isArray:!0}}})}),l=n({name:`app_config.published`,version:1,description:`A tenant config version was published to production.`,ownership:o,payload:new t({name:`ConfigPublishedPayload`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},version:{type:e.Int_unsecure(),isOptional:!1},previousVersion:{type:e.Int_unsecure(),isOptional:!0},publishedBy:{type:e.String_unsecure(),isOptional:!1},changeSummary:{type:e.String_unsecure(),isOptional:!0},changedSections:{type:e.String_unsecure(),isOptional:!0,isArray:!0}}})}),u=n({name:`app_config.rolled_back`,version:1,description:`A tenant config was rolled back to a previous version.`,ownership:o,payload:new t({name:`ConfigRolledBackPayload`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},newVersion:{type:e.Int_unsecure(),isOptional:!1},rolledBackFrom:{type:e.Int_unsecure(),isOptional:!1},rolledBackTo:{type:e.Int_unsecure(),isOptional:!1},rolledBackBy:{type:e.String_unsecure(),isOptional:!1},reason:{type:e.String_unsecure(),isOptional:!1}}})});export{s as ConfigDraftCreatedEvent,c as ConfigPromotedToPreviewEvent,l as ConfigPublishedEvent,u as ConfigRolledBackEvent};
|
|
2
2
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","names":[],"sources":["../../src/app-config/events.ts"],"sourcesContent":["import { SchemaModel, ScalarTypeEnum } from '@lssm/lib.schema';\nimport { defineEvent } from '../events';\nimport { OwnersEnum, StabilityEnum, TagsEnum } from '../ownership';\n\nconst lifecycleOwnership = {\n title: 'Tenant App Config Lifecycle',\n description:\n 'Events emitted when tenant app configurations move through lifecycle stages.',\n domain: 'app-config.lifecycle',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.Hygiene],\n stability: StabilityEnum.Beta,\n};\n\nexport const ConfigDraftCreatedEvent = defineEvent({\n name: 'app_config.draft_created',\n version: 1,\n description: 'A new tenant config draft was created.',\n ownership: lifecycleOwnership,\n payload: new SchemaModel({\n name: 'ConfigDraftCreatedPayload',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n blueprintName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n blueprintVersion: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n createdBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n clonedFrom: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n },\n }),\n});\n\nexport const ConfigPromotedToPreviewEvent = defineEvent({\n name: 'app_config.promoted_to_preview',\n version: 1,\n description: 'A tenant config draft was promoted to preview.',\n ownership: lifecycleOwnership,\n payload: new SchemaModel({\n name: 'ConfigPromotedToPreviewPayload',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n promotedBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n warnings: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n isArray: true,\n },\n },\n }),\n});\n\nexport const ConfigPublishedEvent = defineEvent({\n name: 'app_config.published',\n version: 1,\n description: 'A tenant config version was published to production.',\n ownership: lifecycleOwnership,\n payload: new SchemaModel({\n name: 'ConfigPublishedPayload',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n previousVersion: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n publishedBy: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n changeSummary: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n changedSections: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n isArray: true,\n },\n },\n }),\n});\n\nexport const ConfigRolledBackEvent = defineEvent({\n name: 'app_config.rolled_back',\n version: 1,\n description: 'A tenant config was rolled back to a previous version.',\n ownership: lifecycleOwnership,\n payload: new SchemaModel({\n name: 'ConfigRolledBackPayload',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n newVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n rolledBackFrom: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n rolledBackTo: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n rolledBackBy: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n reason: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n }),\n});\n\n\n\n\n\n\n\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"events.js","names":["SchemaModel","ScalarTypeEnum"],"sources":["../../src/app-config/events.ts"],"sourcesContent":["import { SchemaModel, ScalarTypeEnum } from '@lssm/lib.schema';\nimport { defineEvent } from '../events';\nimport { OwnersEnum, StabilityEnum, TagsEnum } from '../ownership';\n\nconst lifecycleOwnership = {\n title: 'Tenant App Config Lifecycle',\n description:\n 'Events emitted when tenant app configurations move through lifecycle stages.',\n domain: 'app-config.lifecycle',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.Hygiene],\n stability: StabilityEnum.Beta,\n};\n\nexport const ConfigDraftCreatedEvent = defineEvent({\n name: 'app_config.draft_created',\n version: 1,\n description: 'A new tenant config draft was created.',\n ownership: lifecycleOwnership,\n payload: new SchemaModel({\n name: 'ConfigDraftCreatedPayload',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n blueprintName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n blueprintVersion: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n createdBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n clonedFrom: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n },\n }),\n});\n\nexport const ConfigPromotedToPreviewEvent = defineEvent({\n name: 'app_config.promoted_to_preview',\n version: 1,\n description: 'A tenant config draft was promoted to preview.',\n ownership: lifecycleOwnership,\n payload: new SchemaModel({\n name: 'ConfigPromotedToPreviewPayload',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n promotedBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n warnings: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n isArray: true,\n },\n },\n }),\n});\n\nexport const ConfigPublishedEvent = defineEvent({\n name: 'app_config.published',\n version: 1,\n description: 'A tenant config version was published to production.',\n ownership: lifecycleOwnership,\n payload: new SchemaModel({\n name: 'ConfigPublishedPayload',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n previousVersion: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n publishedBy: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n changeSummary: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n changedSections: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n isArray: true,\n },\n },\n }),\n});\n\nexport const ConfigRolledBackEvent = defineEvent({\n name: 'app_config.rolled_back',\n version: 1,\n description: 'A tenant config was rolled back to a previous version.',\n ownership: lifecycleOwnership,\n payload: new SchemaModel({\n name: 'ConfigRolledBackPayload',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n newVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n rolledBackFrom: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n rolledBackTo: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n rolledBackBy: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n reason: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n }),\n});\n\n\n\n\n\n\n\n"],"mappings":"2PAIA,MAAM,EAAqB,CACzB,MAAO,8BACP,YACE,+EACF,OAAQ,uBACR,OAAQ,CAAC,EAAW,cAAc,CAClC,KAAM,CAAC,EAAS,QAAQ,CACxB,UAAW,EAAc,KAC1B,CAEY,EAA0B,EAAY,CACjD,KAAM,2BACN,QAAS,EACT,YAAa,yCACb,UAAW,EACX,QAAS,IAAIA,EAAY,CACvB,KAAM,4BACN,OAAQ,CACN,SAAU,CAAE,KAAMC,EAAe,IAAI,CAAE,WAAY,GAAO,CAC1D,MAAO,CAAE,KAAMA,EAAe,IAAI,CAAE,WAAY,GAAO,CACvD,QAAS,CAAE,KAAMA,EAAe,cAAc,CAAE,WAAY,GAAO,CACnE,cAAe,CAAE,KAAMA,EAAe,iBAAiB,CAAE,WAAY,GAAO,CAC5E,iBAAkB,CAChB,KAAMA,EAAe,cAAc,CACnC,WAAY,GACb,CACD,UAAW,CAAE,KAAMA,EAAe,iBAAiB,CAAE,WAAY,GAAO,CACxE,WAAY,CAAE,KAAMA,EAAe,cAAc,CAAE,WAAY,GAAM,CACtE,CACF,CAAC,CACH,CAAC,CAEW,EAA+B,EAAY,CACtD,KAAM,iCACN,QAAS,EACT,YAAa,iDACb,UAAW,EACX,QAAS,IAAID,EAAY,CACvB,KAAM,iCACN,OAAQ,CACN,SAAU,CAAE,KAAMC,EAAe,IAAI,CAAE,WAAY,GAAO,CAC1D,MAAO,CAAE,KAAMA,EAAe,IAAI,CAAE,WAAY,GAAO,CACvD,QAAS,CAAE,KAAMA,EAAe,cAAc,CAAE,WAAY,GAAO,CACnE,WAAY,CAAE,KAAMA,EAAe,iBAAiB,CAAE,WAAY,GAAO,CACzE,SAAU,CACR,KAAMA,EAAe,iBAAiB,CACtC,WAAY,GACZ,QAAS,GACV,CACF,CACF,CAAC,CACH,CAAC,CAEW,EAAuB,EAAY,CAC9C,KAAM,uBACN,QAAS,EACT,YAAa,uDACb,UAAW,EACX,QAAS,IAAID,EAAY,CACvB,KAAM,yBACN,OAAQ,CACN,SAAU,CAAE,KAAMC,EAAe,IAAI,CAAE,WAAY,GAAO,CAC1D,MAAO,CAAE,KAAMA,EAAe,IAAI,CAAE,WAAY,GAAO,CACvD,QAAS,CAAE,KAAMA,EAAe,cAAc,CAAE,WAAY,GAAO,CACnE,gBAAiB,CACf,KAAMA,EAAe,cAAc,CACnC,WAAY,GACb,CACD,YAAa,CACX,KAAMA,EAAe,iBAAiB,CACtC,WAAY,GACb,CACD,cAAe,CACb,KAAMA,EAAe,iBAAiB,CACtC,WAAY,GACb,CACD,gBAAiB,CACf,KAAMA,EAAe,iBAAiB,CACtC,WAAY,GACZ,QAAS,GACV,CACF,CACF,CAAC,CACH,CAAC,CAEW,EAAwB,EAAY,CAC/C,KAAM,yBACN,QAAS,EACT,YAAa,yDACb,UAAW,EACX,QAAS,IAAID,EAAY,CACvB,KAAM,0BACN,OAAQ,CACN,SAAU,CAAE,KAAMC,EAAe,IAAI,CAAE,WAAY,GAAO,CAC1D,MAAO,CAAE,KAAMA,EAAe,IAAI,CAAE,WAAY,GAAO,CACvD,WAAY,CAAE,KAAMA,EAAe,cAAc,CAAE,WAAY,GAAO,CACtE,eAAgB,CACd,KAAMA,EAAe,cAAc,CACnC,WAAY,GACb,CACD,aAAc,CACZ,KAAMA,EAAe,cAAc,CACnC,WAAY,GACb,CACD,aAAc,CACZ,KAAMA,EAAe,iBAAiB,CACtC,WAAY,GACb,CACD,OAAQ,CAAE,KAAMA,EAAe,iBAAiB,CAAE,WAAY,GAAO,CACtE,CACF,CAAC,CACH,CAAC"}
|