@better-giving/endowment 1.0.5 → 1.0.7
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/schema.d.mts +20 -16
- package/dist/schema.mjs +5 -2
- package/package.json +1 -1
- package/src/schema.mts +9 -2
package/dist/schema.d.mts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { env, orgDesignation, unSdgNum } from "@better-giving/schemas";
|
|
1
2
|
export type { OrgDesignation as EndowDesignation, Environment, UnSdgNum, } from "@better-giving/schemas";
|
|
3
|
+
export { orgDesignation as endowDesignation, env, unSdgNum };
|
|
2
4
|
import { type InferInput, type InferOutput } from "valibot";
|
|
3
5
|
export declare const allocation: import("valibot").SchemaWithPipe<[import("valibot").ObjectSchema<{
|
|
4
6
|
readonly cash: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 0, undefined>, import("valibot").MaxValueAction<number, 100, undefined>]>;
|
|
@@ -13,7 +15,8 @@ export type Allocation = InferOutput<typeof allocation>;
|
|
|
13
15
|
export declare const endowId: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
14
16
|
export type EndowId = InferOutput<typeof endowId>;
|
|
15
17
|
export declare const endowIdParam: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TransformAction<string, number>, import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>]>;
|
|
16
|
-
export declare const
|
|
18
|
+
export declare const segmentMaxChars = 30;
|
|
19
|
+
export declare const segment: import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, ({ requirement: r }: import("valibot").MaxLengthIssue<string, 30>) => string>, import("valibot").RegexAction<string, "should not be an id">, import("valibot").RegexAction<string, "allowed: numbers | letters | - | . | _ | ~">, import("valibot").ExcludesAction<string, "..", "should not contain double periods">, import("valibot").CustomSchema<string, "should not start with dot">, import("valibot").CustomSchema<string, "should not end with dot">]>>;
|
|
17
20
|
export declare const reg_number: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">, import("valibot").RegexAction<string, "must only contain letters and numbers">]>;
|
|
18
21
|
export declare const donateMethodIds: readonly ["stripe", "crypto", "daf", "stocks"];
|
|
19
22
|
export declare const donateMethodId: import("valibot").PicklistSchema<readonly ["stripe", "crypto", "daf", "stocks"], undefined>;
|
|
@@ -32,6 +35,7 @@ export declare const MAX_RECEIPT_MSG_CHAR = 500;
|
|
|
32
35
|
export declare const incrementVal: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">, import("valibot").TransformAction<string, number>, import("valibot").NumberSchema<"must be a number">, import("valibot").MinValueAction<number, 0, "must be greater than 0">, import("valibot").TransformAction<number, string>]>;
|
|
33
36
|
export declare const MAX_NUM_INCREMENTS = 4;
|
|
34
37
|
export declare const incrementLabelMaxChars = 30;
|
|
38
|
+
export declare const taglineMaxChars = 140;
|
|
35
39
|
export declare const incrementLabel: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, ({ requirement: r }: import("valibot").MaxLengthIssue<string, 30>) => string>]>;
|
|
36
40
|
export declare const increment: import("valibot").ObjectSchema<{
|
|
37
41
|
readonly value: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">, import("valibot").TransformAction<string, number>, import("valibot").NumberSchema<"must be a number">, import("valibot").MinValueAction<number, 0, "must be greater than 0">, import("valibot").TransformAction<number, string>]>;
|
|
@@ -40,12 +44,12 @@ export declare const increment: import("valibot").ObjectSchema<{
|
|
|
40
44
|
export type Increment = InferOutput<typeof increment>;
|
|
41
45
|
export declare const endowment: import("valibot").ObjectSchema<{
|
|
42
46
|
readonly id: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
43
|
-
readonly slug: import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, "
|
|
47
|
+
readonly slug: import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, ({ requirement: r }: import("valibot").MaxLengthIssue<string, 30>) => string>, import("valibot").RegexAction<string, "should not be an id">, import("valibot").RegexAction<string, "allowed: numbers | letters | - | . | _ | ~">, import("valibot").ExcludesAction<string, "..", "should not contain double periods">, import("valibot").CustomSchema<string, "should not start with dot">, import("valibot").CustomSchema<string, "should not end with dot">]>>, never>;
|
|
44
48
|
readonly registration_number: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">, import("valibot").RegexAction<string, "must only contain letters and numbers">]>;
|
|
45
49
|
readonly name: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>;
|
|
46
50
|
readonly endow_designation: import("valibot").PicklistSchema<readonly ["Charity", "Religious Organization", "University", "Hospital", "Other"], undefined>;
|
|
47
51
|
readonly overview: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>;
|
|
48
|
-
readonly tagline: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>;
|
|
52
|
+
readonly tagline: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 140, undefined>]>, never>;
|
|
49
53
|
readonly image: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
50
54
|
readonly logo: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
51
55
|
readonly card_img: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
@@ -90,12 +94,12 @@ export declare const endowment: import("valibot").ObjectSchema<{
|
|
|
90
94
|
}, undefined>;
|
|
91
95
|
export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
92
96
|
readonly id: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
93
|
-
readonly slug: import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, "
|
|
97
|
+
readonly slug: import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, ({ requirement: r }: import("valibot").MaxLengthIssue<string, 30>) => string>, import("valibot").RegexAction<string, "should not be an id">, import("valibot").RegexAction<string, "allowed: numbers | letters | - | . | _ | ~">, import("valibot").ExcludesAction<string, "..", "should not contain double periods">, import("valibot").CustomSchema<string, "should not start with dot">, import("valibot").CustomSchema<string, "should not end with dot">]>>, never>;
|
|
94
98
|
readonly registration_number: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">, import("valibot").RegexAction<string, "must only contain letters and numbers">]>;
|
|
95
99
|
readonly name: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>;
|
|
96
100
|
readonly endow_designation: import("valibot").PicklistSchema<readonly ["Charity", "Religious Organization", "University", "Hospital", "Other"], undefined>;
|
|
97
101
|
readonly overview: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>;
|
|
98
|
-
readonly tagline: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>;
|
|
102
|
+
readonly tagline: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 140, undefined>]>, never>;
|
|
99
103
|
readonly image: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
100
104
|
readonly logo: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
101
105
|
readonly card_img: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
@@ -140,12 +144,12 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
140
144
|
}, undefined>, "_types" | "_run" | "entries"> & {
|
|
141
145
|
readonly entries: Omit<{
|
|
142
146
|
readonly id: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
143
|
-
readonly slug: import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, "
|
|
147
|
+
readonly slug: import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, ({ requirement: r }: import("valibot").MaxLengthIssue<string, 30>) => string>, import("valibot").RegexAction<string, "should not be an id">, import("valibot").RegexAction<string, "allowed: numbers | letters | - | . | _ | ~">, import("valibot").ExcludesAction<string, "..", "should not contain double periods">, import("valibot").CustomSchema<string, "should not start with dot">, import("valibot").CustomSchema<string, "should not end with dot">]>>, never>;
|
|
144
148
|
readonly registration_number: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">, import("valibot").RegexAction<string, "must only contain letters and numbers">]>;
|
|
145
149
|
readonly name: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>;
|
|
146
150
|
readonly endow_designation: import("valibot").PicklistSchema<readonly ["Charity", "Religious Organization", "University", "Hospital", "Other"], undefined>;
|
|
147
151
|
readonly overview: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>;
|
|
148
|
-
readonly tagline: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>;
|
|
152
|
+
readonly tagline: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 140, undefined>]>, never>;
|
|
149
153
|
readonly image: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
150
154
|
readonly logo: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
151
155
|
readonly card_img: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
@@ -192,7 +196,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
192
196
|
cash: number;
|
|
193
197
|
liq: number;
|
|
194
198
|
lock: number;
|
|
195
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
199
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
196
200
|
value: string;
|
|
197
201
|
label: string;
|
|
198
202
|
}[], 4>>): import("valibot").Dataset<{
|
|
@@ -238,7 +242,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
238
242
|
cash: number;
|
|
239
243
|
liq: number;
|
|
240
244
|
lock: number;
|
|
241
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
245
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
242
246
|
value: string;
|
|
243
247
|
label: string;
|
|
244
248
|
}[], 4>>;
|
|
@@ -327,7 +331,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
327
331
|
cash: number;
|
|
328
332
|
liq: number;
|
|
329
333
|
lock: number;
|
|
330
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
334
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
331
335
|
value: string;
|
|
332
336
|
label: string;
|
|
333
337
|
}[], 4>;
|
|
@@ -335,10 +339,10 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
335
339
|
}, "_types" | "_run" | "entries"> & {
|
|
336
340
|
readonly entries: {
|
|
337
341
|
readonly url: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>, never>;
|
|
338
|
-
readonly slug: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, "
|
|
342
|
+
readonly slug: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, ({ requirement: r }: import("valibot").MaxLengthIssue<string, 30>) => string>, import("valibot").RegexAction<string, "should not be an id">, import("valibot").RegexAction<string, "allowed: numbers | letters | - | . | _ | ~">, import("valibot").ExcludesAction<string, "..", "should not contain double periods">, import("valibot").CustomSchema<string, "should not start with dot">, import("valibot").CustomSchema<string, "should not end with dot">]>>, never>, never>;
|
|
339
343
|
readonly name: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>, never>;
|
|
340
344
|
readonly overview: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>, never>;
|
|
341
|
-
readonly tagline: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>, never>;
|
|
345
|
+
readonly tagline: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 140, undefined>]>, never>, never>;
|
|
342
346
|
readonly image: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>, never>;
|
|
343
347
|
readonly logo: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>, never>;
|
|
344
348
|
readonly card_img: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>, never>;
|
|
@@ -384,7 +388,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
384
388
|
cash: number;
|
|
385
389
|
liq: number;
|
|
386
390
|
lock: number;
|
|
387
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
391
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
388
392
|
value: string;
|
|
389
393
|
label: string;
|
|
390
394
|
}[], 4>>): import("valibot").Dataset<{
|
|
@@ -430,7 +434,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
430
434
|
cash: number;
|
|
431
435
|
liq: number;
|
|
432
436
|
lock: number;
|
|
433
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
437
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
434
438
|
value: string;
|
|
435
439
|
label: string;
|
|
436
440
|
}[], 4>>;
|
|
@@ -519,7 +523,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
519
523
|
cash: number;
|
|
520
524
|
liq: number;
|
|
521
525
|
lock: number;
|
|
522
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
526
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").RegexIssue<string> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 4 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1> | import("valibot").MaxLengthIssue<string, 500> | import("valibot").BooleanIssue | import("valibot").MaxLengthIssue<{
|
|
523
527
|
value: string;
|
|
524
528
|
label: string;
|
|
525
529
|
}[], 4>;
|
|
@@ -543,7 +547,7 @@ export declare const endowsQueryParams: import("valibot").ObjectSchema<{
|
|
|
543
547
|
export type EndowsQueryParams = InferInput<typeof endowsQueryParams>;
|
|
544
548
|
export declare const endowQueryParam: import("valibot").ObjectSchema<{
|
|
545
549
|
readonly fields: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").RegexAction<string, "invalid csv">]>>, import("valibot").TransformAction<string, string[]>, import("valibot").ArraySchema<import("valibot").PicklistSchema<["url", "slug", "name", "overview", "tagline", "image", "logo", "card_img", "hq_country", "active_in_countries", "street_address", "sdgs", "receiptMsg", "hide_bg_tip", "published", "progDonationsAllowed", "allocation", "donateMethods", "increments", "fund_opt_in", "id", "registration_number", "endow_designation", "social_media_urls"], undefined>, undefined>]>, never>;
|
|
546
|
-
readonly slug: import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, "
|
|
550
|
+
readonly slug: import("valibot").OptionalSchema<import("valibot").LazySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]> | import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 30, ({ requirement: r }: import("valibot").MaxLengthIssue<string, 30>) => string>, import("valibot").RegexAction<string, "should not be an id">, import("valibot").RegexAction<string, "allowed: numbers | letters | - | . | _ | ~">, import("valibot").ExcludesAction<string, "..", "should not contain double periods">, import("valibot").CustomSchema<string, "should not start with dot">, import("valibot").CustomSchema<string, "should not end with dot">]>>, never>;
|
|
547
551
|
readonly env: import("valibot").PicklistSchema<readonly ["staging", "production"], undefined>;
|
|
548
552
|
}, undefined>;
|
|
549
553
|
export type EndowQueryParam = InferInput<typeof endowQueryParam>;
|
package/dist/schema.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { env, orgDesignation, unSdgNum } from "@better-giving/schemas";
|
|
2
|
+
export { orgDesignation as endowDesignation, env, unSdgNum };
|
|
2
3
|
import { url, array, boolean, check, custom, excludes, integer, isoDate, keyof, lazy, maxLength, maxValue, minLength, minValue, nonEmpty, nullish, number, object, omit, optional, partial, picklist, pipe, regex, string, transform, trim, uuid, } from "valibot";
|
|
3
4
|
const str = pipe(string(), trim());
|
|
4
5
|
const pct = pipe(number(), integer(), minValue(0), maxValue(100));
|
|
@@ -9,10 +10,11 @@ export const allocation = pipe(object({
|
|
|
9
10
|
}), check((x) => x.cash + x.liq + x.lock === 100, "must total to 100"));
|
|
10
11
|
export const endowId = pipe(number(), integer(), minValue(1));
|
|
11
12
|
export const endowIdParam = pipe(string(), transform((x) => +x), endowId);
|
|
13
|
+
export const segmentMaxChars = 30;
|
|
12
14
|
export const segment = lazy((x) => {
|
|
13
15
|
if (!x)
|
|
14
16
|
return str;
|
|
15
|
-
return pipe(str, maxLength(
|
|
17
|
+
return pipe(str, maxLength(segmentMaxChars, ({ requirement: r }) => `cannot exceed ${r} chars`),
|
|
16
18
|
//must not be id-like
|
|
17
19
|
regex(/^(?!^\d+$)/, "should not be an id"),
|
|
18
20
|
//valid characters
|
|
@@ -37,6 +39,7 @@ export const incrementVal = pipe(str, nonEmpty("required"), transform((x) => +x)
|
|
|
37
39
|
transform((x) => x.toString()));
|
|
38
40
|
export const MAX_NUM_INCREMENTS = 4;
|
|
39
41
|
export const incrementLabelMaxChars = 30;
|
|
42
|
+
export const taglineMaxChars = 140;
|
|
40
43
|
export const incrementLabel = pipe(str, maxLength(incrementLabelMaxChars, ({ requirement: r }) => `cannot exceed ${r} characters`));
|
|
41
44
|
export const increment = object({
|
|
42
45
|
value: incrementVal,
|
|
@@ -49,7 +52,7 @@ export const endowment = object({
|
|
|
49
52
|
name: pipe(str, nonEmpty("required")),
|
|
50
53
|
endow_designation: orgDesignation,
|
|
51
54
|
overview: optional(str),
|
|
52
|
-
tagline: optional(str),
|
|
55
|
+
tagline: optional(pipe(str, maxLength(taglineMaxChars))),
|
|
53
56
|
image: optional(_url),
|
|
54
57
|
logo: optional(_url),
|
|
55
58
|
card_img: optional(_url),
|
package/package.json
CHANGED
package/src/schema.mts
CHANGED
|
@@ -4,6 +4,7 @@ export type {
|
|
|
4
4
|
Environment,
|
|
5
5
|
UnSdgNum,
|
|
6
6
|
} from "@better-giving/schemas";
|
|
7
|
+
export { orgDesignation as endowDesignation, env, unSdgNum };
|
|
7
8
|
import {
|
|
8
9
|
url,
|
|
9
10
|
type InferInput,
|
|
@@ -59,11 +60,15 @@ export const endowIdParam = pipe(
|
|
|
59
60
|
endowId
|
|
60
61
|
);
|
|
61
62
|
|
|
63
|
+
export const segmentMaxChars = 30;
|
|
62
64
|
export const segment = lazy((x) => {
|
|
63
65
|
if (!x) return str;
|
|
64
66
|
return pipe(
|
|
65
67
|
str,
|
|
66
|
-
maxLength(
|
|
68
|
+
maxLength(
|
|
69
|
+
segmentMaxChars,
|
|
70
|
+
({ requirement: r }) => `cannot exceed ${r} chars`
|
|
71
|
+
),
|
|
67
72
|
//must not be id-like
|
|
68
73
|
regex(/^(?!^\d+$)/, "should not be an id"),
|
|
69
74
|
//valid characters
|
|
@@ -112,6 +117,8 @@ export const incrementVal = pipe(
|
|
|
112
117
|
|
|
113
118
|
export const MAX_NUM_INCREMENTS = 4;
|
|
114
119
|
export const incrementLabelMaxChars = 30;
|
|
120
|
+
export const taglineMaxChars = 140;
|
|
121
|
+
|
|
115
122
|
export const incrementLabel = pipe(
|
|
116
123
|
str,
|
|
117
124
|
maxLength(
|
|
@@ -134,7 +141,7 @@ export const endowment = object({
|
|
|
134
141
|
name: pipe(str, nonEmpty("required")),
|
|
135
142
|
endow_designation: orgDesignation,
|
|
136
143
|
overview: optional(str),
|
|
137
|
-
tagline: optional(str),
|
|
144
|
+
tagline: optional(pipe(str, maxLength(taglineMaxChars))),
|
|
138
145
|
image: optional(_url),
|
|
139
146
|
logo: optional(_url),
|
|
140
147
|
card_img: optional(_url),
|