@better-giving/endowment 1.0.19 → 1.0.21
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/cloudsearch.d.mts +40 -7
- package/dist/cloudsearch.mjs +40 -1
- package/dist/db.d.mts +2 -7
- package/dist/index.d.mts +3 -4
- package/dist/schema.d.mts +49 -47
- package/dist/schema.mjs +14 -21
- package/package.json +1 -1
- package/src/cloudsearch.mts +72 -25
- package/src/db.mts +3 -6
- package/src/index.mts +5 -4
- package/src/schema.mts +22 -59
package/dist/cloudsearch.d.mts
CHANGED
|
@@ -1,14 +1,47 @@
|
|
|
1
1
|
import type { ToDoc, ToHitFields, ToUpdate } from "@better-giving/types/cloudsearch";
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
import { type Environment } from "./schema.mjs";
|
|
3
|
+
import { type InferOutput, type InferInput } from "valibot";
|
|
4
|
+
export declare const cloudsearchEndowFields: import("valibot").ObjectSchema<{
|
|
5
|
+
readonly contributions_total: import("valibot").NumberSchema<undefined>;
|
|
6
|
+
readonly contributions_count: import("valibot").NumberSchema<undefined>;
|
|
7
|
+
}, undefined>;
|
|
8
|
+
export declare const cloudsearchEndow: import("valibot").ObjectSchema<{
|
|
9
|
+
readonly contributions_total: import("valibot").NumberSchema<undefined>;
|
|
10
|
+
readonly contributions_count: import("valibot").NumberSchema<undefined>;
|
|
11
|
+
readonly name: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>;
|
|
12
|
+
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>;
|
|
13
|
+
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>;
|
|
14
|
+
readonly hq_country: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>;
|
|
15
|
+
readonly active_in_countries: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, undefined>, import("valibot").NonEmptyAction<string[], "required">]>;
|
|
16
|
+
readonly sdgs: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1, undefined>]>;
|
|
17
|
+
readonly published: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
18
|
+
readonly fund_opt_in: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
19
|
+
readonly claimed: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
20
|
+
readonly kyc_donors_only: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
21
|
+
readonly id: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
22
|
+
readonly env: import("valibot").PicklistSchema<readonly ["staging", "production"], undefined>;
|
|
23
|
+
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">]>;
|
|
24
|
+
readonly endow_designation: import("valibot").PicklistSchema<readonly ["Charity", "Religious Organization", "University", "Hospital", "Other"], undefined>;
|
|
25
|
+
}, undefined>;
|
|
26
|
+
export declare const cloudSearchEndowFields: import("valibot").PicklistSchema<["name", "tagline", "card_img", "hq_country", "active_in_countries", "sdgs", "published", "fund_opt_in", "claimed", "kyc_donors_only", "id", "env", "registration_number", "endow_designation", "contributions_total", "contributions_count"], undefined>;
|
|
27
|
+
export declare const endowsQueryParams: import("valibot").ObjectSchema<{
|
|
28
|
+
readonly query: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
29
|
+
readonly page: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TransformAction<string, number>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
30
|
+
readonly endow_designation: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[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").FilterItemsAction<string[]>]>, import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly ["Charity", "Religious Organization", "University", "Hospital", "Other"], undefined>, undefined>]>, never>;
|
|
31
|
+
readonly sdgs: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[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").FilterItemsAction<string[]>]>, import("valibot").MapItemsAction<string[], number>, import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>]>, never>;
|
|
32
|
+
readonly kyc_only: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[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").FilterItemsAction<string[]>]>, import("valibot").MapItemsAction<string[], boolean>, import("valibot").ArraySchema<import("valibot").BooleanSchema<undefined>, undefined>]>, never>;
|
|
33
|
+
readonly fund_opt_in: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[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").FilterItemsAction<string[]>]>, import("valibot").MapItemsAction<string[], boolean>, import("valibot").ArraySchema<import("valibot").BooleanSchema<undefined>, undefined>]>, never>;
|
|
34
|
+
readonly claimed: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[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").FilterItemsAction<string[]>]>, import("valibot").MapItemsAction<string[], boolean>, import("valibot").ArraySchema<import("valibot").BooleanSchema<undefined>, undefined>]>, never>;
|
|
35
|
+
readonly countries: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[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").FilterItemsAction<string[]>]>, import("valibot").ArraySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, undefined>]>, never>;
|
|
36
|
+
readonly fields: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[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").FilterItemsAction<string[]>]>, import("valibot").ArraySchema<import("valibot").PicklistSchema<["name", "tagline", "card_img", "hq_country", "active_in_countries", "sdgs", "published", "fund_opt_in", "claimed", "kyc_donors_only", "id", "env", "registration_number", "endow_designation", "contributions_total", "contributions_count"], undefined>, undefined>]>, never>;
|
|
37
|
+
}, undefined>;
|
|
38
|
+
export type CloudsearchEndowsQueryParams = InferInput<typeof endowsQueryParams>;
|
|
39
|
+
export type CloudsearchEndow = InferOutput<typeof cloudsearchEndow>;
|
|
7
40
|
type DocId = `${Environment}-${number}`;
|
|
8
41
|
type Doc = {
|
|
9
42
|
documentId: DocId;
|
|
10
43
|
_score: number;
|
|
11
|
-
} & ToDoc<
|
|
44
|
+
} & ToDoc<CloudsearchEndow>;
|
|
12
45
|
export type HitFields = ToHitFields<Omit<Doc, "documentId" | "_score">>;
|
|
13
|
-
export type Update = ToUpdate<DocId,
|
|
46
|
+
export type Update = ToUpdate<DocId, CloudsearchEndow>;
|
|
14
47
|
export {};
|
package/dist/cloudsearch.mjs
CHANGED
|
@@ -1 +1,40 @@
|
|
|
1
|
-
|
|
1
|
+
import { csvStrs, endowment, str } from "./schema.mjs";
|
|
2
|
+
import { object, number, pick, keyof, pipe, string, transform, integer, minValue, optional, mapItems, array, boolean, } from "valibot";
|
|
3
|
+
import { orgDesignation, unSdgNum } from "@better-giving/schemas";
|
|
4
|
+
const boolCsv = pipe(csvStrs, mapItems(Boolean), array(boolean()));
|
|
5
|
+
export const cloudsearchEndowFields = object({
|
|
6
|
+
contributions_total: number(),
|
|
7
|
+
contributions_count: number(),
|
|
8
|
+
});
|
|
9
|
+
export const cloudsearchEndow = object({
|
|
10
|
+
...pick(endowment, [
|
|
11
|
+
"card_img",
|
|
12
|
+
"name",
|
|
13
|
+
"tagline",
|
|
14
|
+
"hq_country",
|
|
15
|
+
"sdgs",
|
|
16
|
+
"active_in_countries",
|
|
17
|
+
"endow_designation",
|
|
18
|
+
"registration_number",
|
|
19
|
+
"kyc_donors_only",
|
|
20
|
+
"claimed",
|
|
21
|
+
//filters
|
|
22
|
+
"env",
|
|
23
|
+
"id",
|
|
24
|
+
"published",
|
|
25
|
+
"fund_opt_in",
|
|
26
|
+
]).entries,
|
|
27
|
+
...cloudsearchEndowFields.entries,
|
|
28
|
+
});
|
|
29
|
+
export const cloudSearchEndowFields = keyof(cloudsearchEndow);
|
|
30
|
+
export const endowsQueryParams = object({
|
|
31
|
+
query: str,
|
|
32
|
+
page: pipe(string(), transform((x) => +x), integer(), minValue(1)),
|
|
33
|
+
endow_designation: optional(pipe(csvStrs, array(orgDesignation))),
|
|
34
|
+
sdgs: optional(pipe(csvStrs, mapItems(Number), array(unSdgNum))),
|
|
35
|
+
kyc_only: optional(boolCsv),
|
|
36
|
+
fund_opt_in: optional(boolCsv),
|
|
37
|
+
claimed: optional(boolCsv),
|
|
38
|
+
countries: optional(pipe(csvStrs, array(str))),
|
|
39
|
+
fields: optional(pipe(csvStrs, array(cloudSearchEndowFields))),
|
|
40
|
+
});
|
package/dist/db.d.mts
CHANGED
|
@@ -19,10 +19,7 @@ export declare namespace Endow {
|
|
|
19
19
|
SK: Environment;
|
|
20
20
|
};
|
|
21
21
|
type NonKeyAttributes = EndowmentShape & {
|
|
22
|
-
env: Environment;
|
|
23
|
-
kyc_donors_only: boolean;
|
|
24
22
|
fiscal_sponsored: boolean;
|
|
25
|
-
claimed: boolean;
|
|
26
23
|
/** in USD @deprecated */
|
|
27
24
|
payout_minimum?: number;
|
|
28
25
|
/** @deprecated */
|
|
@@ -53,16 +50,14 @@ export declare namespace Program {
|
|
|
53
50
|
/** in USD */
|
|
54
51
|
totalDonations?: number;
|
|
55
52
|
};
|
|
56
|
-
|
|
57
|
-
export {};
|
|
53
|
+
type DbRecord = Keys & NonKeyAttributes;
|
|
58
54
|
}
|
|
59
55
|
export declare namespace Milestone {
|
|
60
56
|
type Keys = {
|
|
61
57
|
PK: `Prog#${string}#${Environment}`;
|
|
62
58
|
SK: `Mile#${MilestoneId}`;
|
|
63
59
|
};
|
|
64
|
-
|
|
65
|
-
export {};
|
|
60
|
+
type DbRecord = Keys & MilestoneShape;
|
|
66
61
|
}
|
|
67
62
|
export declare const mediaGsi: {
|
|
68
63
|
readonly 1: "gsi1";
|
package/dist/index.d.mts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type { Fields as FundItem } from "./cloudsearch.mjs";
|
|
2
|
-
import type { Milestone } from "./schema.mjs";
|
|
3
1
|
import type { Endow as NEndow, Media, Program as NProgram } from "./db.mjs";
|
|
4
|
-
|
|
5
|
-
export type {
|
|
2
|
+
import type { Milestone } from "./schema.mjs";
|
|
3
|
+
export type { Allocation, DonateMethodId, EndowByEinParams, EndowDesignation, EndowQueryParam, EndowUpdate, Environment, Increment, Milestone, MilestoneUpdate, NewMilestone, NewProgram, ProgramUpdate, SocialMediaURLs, UnSdgNum, MediaQueryParams, MediaQueryParamsObj, MediaType, MediaUpdate, } from "./schema.mjs";
|
|
4
|
+
export type { CloudsearchEndow as EndowItem, CloudsearchEndowsQueryParams as EndowsQueryParams, } from "./cloudsearch.mjs";
|
|
6
5
|
export type Endow = Pick<NEndow.DbRecord, "id" | "slug" | "active_in_countries" | "endow_designation" | "fiscal_sponsored" | "hide_bg_tip" | "hq_country" | "image" | "card_img" | "kyc_donors_only" | "logo" | "name" | "overview" | "published" | "registration_number" | "sdgs" | "social_media_urls" | "street_address" | "tagline" | "url" | "claimed" | "progDonationsAllowed" | "donateMethods" | "allocation" | "increments" | "receiptMsg">;
|
|
7
6
|
export type Program = Omit<NProgram.DbRecord, "PK" | "SK"> & {
|
|
8
7
|
milestones: Milestone[];
|
package/dist/schema.d.mts
CHANGED
|
@@ -3,6 +3,8 @@ export type { OrgDesignation as EndowDesignation, Environment, UnSdgNum, } from
|
|
|
3
3
|
export { orgDesignation as endowDesignation, env, unSdgNum };
|
|
4
4
|
import { type InferInput, type InferOutput } from "valibot";
|
|
5
5
|
export declare const str: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
6
|
+
export declare const csv: 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">]>>;
|
|
7
|
+
export declare const csvStrs: 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").FilterItemsAction<string[]>]>;
|
|
6
8
|
export declare const allocation: import("valibot").SchemaWithPipe<[import("valibot").ObjectSchema<{
|
|
7
9
|
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>]>;
|
|
8
10
|
readonly liq: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 0, undefined>, import("valibot").MaxValueAction<number, 100, undefined>]>;
|
|
@@ -48,6 +50,7 @@ export declare const increment: import("valibot").ObjectSchema<{
|
|
|
48
50
|
export type Increment = InferOutput<typeof increment>;
|
|
49
51
|
export declare const endowment: import("valibot").ObjectSchema<{
|
|
50
52
|
readonly id: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
53
|
+
readonly env: import("valibot").PicklistSchema<readonly ["staging", "production"], undefined>;
|
|
51
54
|
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>;
|
|
52
55
|
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">]>;
|
|
53
56
|
readonly name: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>;
|
|
@@ -71,7 +74,7 @@ export declare const endowment: import("valibot").ObjectSchema<{
|
|
|
71
74
|
}, undefined>;
|
|
72
75
|
/** website */
|
|
73
76
|
readonly url: 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").StartsWithAction<string, "https://", "should start with https://">, import("valibot").CustomSchema<string, "incomplete url">, import("valibot").UrlAction<string, "invalid url">]>>, never>;
|
|
74
|
-
readonly sdgs: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 |
|
|
77
|
+
readonly sdgs: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1, undefined>]>;
|
|
75
78
|
readonly receiptMsg: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 500, undefined>]>, never>;
|
|
76
79
|
readonly hide_bg_tip: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
77
80
|
readonly published: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
@@ -95,9 +98,13 @@ export declare const endowment: import("valibot").ObjectSchema<{
|
|
|
95
98
|
label: string;
|
|
96
99
|
}[], 4, undefined>]>, never>;
|
|
97
100
|
readonly fund_opt_in: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
101
|
+
/** endowment is not claimed if `false` only */
|
|
102
|
+
readonly claimed: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
103
|
+
readonly kyc_donors_only: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
98
104
|
}, undefined>;
|
|
99
105
|
export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
100
106
|
readonly id: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
107
|
+
readonly env: import("valibot").PicklistSchema<readonly ["staging", "production"], undefined>;
|
|
101
108
|
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>;
|
|
102
109
|
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">]>;
|
|
103
110
|
readonly name: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>;
|
|
@@ -121,7 +128,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
121
128
|
}, undefined>;
|
|
122
129
|
/** website */
|
|
123
130
|
readonly url: 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").StartsWithAction<string, "https://", "should start with https://">, import("valibot").CustomSchema<string, "incomplete url">, import("valibot").UrlAction<string, "invalid url">]>>, never>;
|
|
124
|
-
readonly sdgs: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 |
|
|
131
|
+
readonly sdgs: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1, undefined>]>;
|
|
125
132
|
readonly receiptMsg: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 500, undefined>]>, never>;
|
|
126
133
|
readonly hide_bg_tip: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
127
134
|
readonly published: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
@@ -145,9 +152,13 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
145
152
|
label: string;
|
|
146
153
|
}[], 4, undefined>]>, never>;
|
|
147
154
|
readonly fund_opt_in: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
155
|
+
/** endowment is not claimed if `false` only */
|
|
156
|
+
readonly claimed: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
157
|
+
readonly kyc_donors_only: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
148
158
|
}, undefined>, "_types" | "_run" | "entries"> & {
|
|
149
159
|
readonly entries: Omit<{
|
|
150
160
|
readonly id: import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
161
|
+
readonly env: import("valibot").PicklistSchema<readonly ["staging", "production"], undefined>;
|
|
151
162
|
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>;
|
|
152
163
|
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">]>;
|
|
153
164
|
readonly name: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>;
|
|
@@ -171,7 +182,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
171
182
|
}, undefined>;
|
|
172
183
|
/** website */
|
|
173
184
|
readonly url: 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").StartsWithAction<string, "https://", "should start with https://">, import("valibot").CustomSchema<string, "incomplete url">, import("valibot").UrlAction<string, "invalid url">]>>, never>;
|
|
174
|
-
readonly sdgs: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 |
|
|
185
|
+
readonly sdgs: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1, undefined>]>;
|
|
175
186
|
readonly receiptMsg: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 500, undefined>]>, never>;
|
|
176
187
|
readonly hide_bg_tip: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
177
188
|
readonly published: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
@@ -195,19 +206,22 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
195
206
|
label: string;
|
|
196
207
|
}[], 4, undefined>]>, never>;
|
|
197
208
|
readonly fund_opt_in: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
198
|
-
|
|
199
|
-
|
|
209
|
+
/** endowment is not claimed if `false` only */
|
|
210
|
+
readonly claimed: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
211
|
+
readonly kyc_donors_only: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>;
|
|
212
|
+
}, "claimed" | "kyc_donors_only" | "id" | "env">;
|
|
213
|
+
_run(dataset: import("valibot").Dataset<unknown, never>, config: import("valibot").Config<import("valibot").StringIssue | import("valibot").RegexIssue<string> | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
200
214
|
cash: number;
|
|
201
215
|
liq: number;
|
|
202
216
|
lock: number;
|
|
203
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").
|
|
217
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").StartsWithIssue<string, "https://"> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 3 | 4 | 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<{
|
|
204
218
|
value: string;
|
|
205
219
|
label: string;
|
|
206
220
|
}[], 4>>): import("valibot").Dataset<{
|
|
207
221
|
name: string;
|
|
208
222
|
hq_country: string;
|
|
209
223
|
active_in_countries: string[];
|
|
210
|
-
sdgs: (2 | 1 |
|
|
224
|
+
sdgs: (2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[];
|
|
211
225
|
registration_number: string;
|
|
212
226
|
endow_designation: "Charity" | "Religious Organization" | "University" | "Hospital" | "Other";
|
|
213
227
|
social_media_urls: {
|
|
@@ -242,11 +256,11 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
242
256
|
label: string;
|
|
243
257
|
}[] | undefined;
|
|
244
258
|
fund_opt_in?: boolean | undefined;
|
|
245
|
-
}, import("valibot").StringIssue | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
259
|
+
}, import("valibot").StringIssue | import("valibot").RegexIssue<string> | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
246
260
|
cash: number;
|
|
247
261
|
liq: number;
|
|
248
262
|
lock: number;
|
|
249
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").
|
|
263
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").StartsWithIssue<string, "https://"> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 3 | 4 | 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<{
|
|
250
264
|
value: string;
|
|
251
265
|
label: string;
|
|
252
266
|
}[], 4>>;
|
|
@@ -255,7 +269,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
255
269
|
name: string;
|
|
256
270
|
hq_country: string;
|
|
257
271
|
active_in_countries: string[];
|
|
258
|
-
sdgs: (2 | 1 |
|
|
272
|
+
sdgs: (2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[];
|
|
259
273
|
registration_number: string;
|
|
260
274
|
endow_designation: "Charity" | "Religious Organization" | "University" | "Hospital" | "Other";
|
|
261
275
|
social_media_urls: {
|
|
@@ -295,7 +309,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
295
309
|
name: string;
|
|
296
310
|
hq_country: string;
|
|
297
311
|
active_in_countries: string[];
|
|
298
|
-
sdgs: (2 | 1 |
|
|
312
|
+
sdgs: (2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[];
|
|
299
313
|
registration_number: string;
|
|
300
314
|
endow_designation: "Charity" | "Religious Organization" | "University" | "Hospital" | "Other";
|
|
301
315
|
social_media_urls: {
|
|
@@ -331,11 +345,11 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
331
345
|
}[] | undefined;
|
|
332
346
|
fund_opt_in?: boolean | undefined;
|
|
333
347
|
};
|
|
334
|
-
readonly issue: import("valibot").StringIssue | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
348
|
+
readonly issue: import("valibot").StringIssue | import("valibot").RegexIssue<string> | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
335
349
|
cash: number;
|
|
336
350
|
liq: number;
|
|
337
351
|
lock: number;
|
|
338
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").
|
|
352
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").StartsWithIssue<string, "https://"> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 3 | 4 | 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<{
|
|
339
353
|
value: string;
|
|
340
354
|
label: string;
|
|
341
355
|
}[], 4>;
|
|
@@ -353,7 +367,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
353
367
|
readonly hq_country: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").NonEmptyAction<string, "required">]>, never>;
|
|
354
368
|
readonly active_in_countries: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, undefined>, import("valibot").NonEmptyAction<string[], "required">]>, never>;
|
|
355
369
|
readonly street_address: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, never>, never>;
|
|
356
|
-
readonly sdgs: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 |
|
|
370
|
+
readonly sdgs: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>, import("valibot").MinLengthAction<(2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[], 1, undefined>]>, never>;
|
|
357
371
|
readonly receiptMsg: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").MaxLengthAction<string, 500, undefined>]>, never>, never>;
|
|
358
372
|
readonly hide_bg_tip: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>, never>;
|
|
359
373
|
readonly published: import("valibot").OptionalSchema<import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, never>, never>;
|
|
@@ -388,11 +402,11 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
388
402
|
readonly tiktok: 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").StartsWithAction<string, "https://", "should start with https://">, import("valibot").CustomSchema<string, "incomplete url">, import("valibot").UrlAction<string, "invalid url">]>>, never>;
|
|
389
403
|
}, undefined>, never>;
|
|
390
404
|
};
|
|
391
|
-
_run(dataset: import("valibot").Dataset<unknown, never>, config: import("valibot").Config<import("valibot").StringIssue | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
405
|
+
_run(dataset: import("valibot").Dataset<unknown, never>, config: import("valibot").Config<import("valibot").StringIssue | import("valibot").RegexIssue<string> | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
392
406
|
cash: number;
|
|
393
407
|
liq: number;
|
|
394
408
|
lock: number;
|
|
395
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").
|
|
409
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").StartsWithIssue<string, "https://"> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 3 | 4 | 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<{
|
|
396
410
|
value: string;
|
|
397
411
|
label: string;
|
|
398
412
|
}[], 4>>): import("valibot").Dataset<{
|
|
@@ -407,7 +421,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
407
421
|
hq_country?: string | undefined;
|
|
408
422
|
active_in_countries?: string[] | undefined;
|
|
409
423
|
street_address?: string | undefined;
|
|
410
|
-
sdgs?: (2 | 1 |
|
|
424
|
+
sdgs?: (2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[] | undefined;
|
|
411
425
|
receiptMsg?: string | undefined;
|
|
412
426
|
hide_bg_tip?: boolean | undefined;
|
|
413
427
|
published?: boolean | undefined;
|
|
@@ -434,11 +448,11 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
434
448
|
youtube?: string | undefined;
|
|
435
449
|
tiktok?: string | undefined;
|
|
436
450
|
} | undefined;
|
|
437
|
-
}, import("valibot").StringIssue | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
451
|
+
}, import("valibot").StringIssue | import("valibot").RegexIssue<string> | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
438
452
|
cash: number;
|
|
439
453
|
liq: number;
|
|
440
454
|
lock: number;
|
|
441
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").
|
|
455
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").StartsWithIssue<string, "https://"> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 3 | 4 | 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<{
|
|
442
456
|
value: string;
|
|
443
457
|
label: string;
|
|
444
458
|
}[], 4>>;
|
|
@@ -455,7 +469,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
455
469
|
hq_country?: string | undefined;
|
|
456
470
|
active_in_countries?: string[] | undefined;
|
|
457
471
|
street_address?: string | undefined;
|
|
458
|
-
sdgs?: (2 | 1 |
|
|
472
|
+
sdgs?: (2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[] | undefined;
|
|
459
473
|
receiptMsg?: string | undefined;
|
|
460
474
|
hide_bg_tip?: boolean | undefined;
|
|
461
475
|
published?: boolean | undefined;
|
|
@@ -495,7 +509,7 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
495
509
|
hq_country?: string | undefined;
|
|
496
510
|
active_in_countries?: string[] | undefined;
|
|
497
511
|
street_address?: string | undefined;
|
|
498
|
-
sdgs?: (2 | 1 |
|
|
512
|
+
sdgs?: (2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17)[] | undefined;
|
|
499
513
|
receiptMsg?: string | undefined;
|
|
500
514
|
hide_bg_tip?: boolean | undefined;
|
|
501
515
|
published?: boolean | undefined;
|
|
@@ -523,34 +537,22 @@ export declare const endowUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
523
537
|
tiktok?: string | undefined;
|
|
524
538
|
} | undefined;
|
|
525
539
|
};
|
|
526
|
-
readonly issue: import("valibot").StringIssue | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
540
|
+
readonly issue: import("valibot").StringIssue | import("valibot").RegexIssue<string> | import("valibot").NumberIssue | import("valibot").IntegerIssue<number> | import("valibot").MinValueIssue<number, 0> | import("valibot").MaxValueIssue<number, 100> | import("valibot").ObjectIssue | import("valibot").CheckIssue<{
|
|
527
541
|
cash: number;
|
|
528
542
|
liq: number;
|
|
529
543
|
lock: number;
|
|
530
|
-
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").
|
|
544
|
+
}> | import("valibot").MaxLengthIssue<string, 30> | import("valibot").ExcludesIssue<string, ".."> | import("valibot").CustomIssue | import("valibot").NonEmptyIssue<string> | import("valibot").PicklistIssue | import("valibot").UrlIssue<string> | import("valibot").StartsWithIssue<string, "https://"> | import("valibot").MaxLengthIssue<string, 140> | import("valibot").ArrayIssue | import("valibot").NonEmptyIssue<string[]> | import("valibot").MinLengthIssue<(2 | 1 | 3 | 4 | 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<{
|
|
531
545
|
value: string;
|
|
532
546
|
label: string;
|
|
533
547
|
}[], 4>;
|
|
534
548
|
} | undefined;
|
|
535
549
|
};
|
|
536
|
-
export declare const endowFields: 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>;
|
|
550
|
+
export declare const endowFields: 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", "claimed", "kyc_donors_only", "id", "env", "registration_number", "endow_designation", "social_media_urls"], undefined>;
|
|
537
551
|
export type Endowment = InferOutput<typeof endowment>;
|
|
538
552
|
export type EndowUpdate = InferOutput<typeof endowUpdate>;
|
|
539
553
|
export type EndowmentFields = InferOutput<typeof endowFields>;
|
|
540
|
-
export declare const endowsQueryParams: import("valibot").ObjectSchema<{
|
|
541
|
-
readonly query: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
542
|
-
readonly page: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TransformAction<string, number>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>]>;
|
|
543
|
-
readonly endow_designation: 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<readonly ["Charity", "Religious Organization", "University", "Hospital", "Other"], undefined>, undefined>]>, never>;
|
|
544
|
-
readonly sdgs: 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, number[]>, import("valibot").ArraySchema<import("valibot").PicklistSchema<readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], undefined>, undefined>]>, never>;
|
|
545
|
-
readonly kyc_only: 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, boolean[]>, import("valibot").ArraySchema<import("valibot").BooleanSchema<undefined>, undefined>]>, never>;
|
|
546
|
-
readonly fund_opt_in: 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, boolean[]>, import("valibot").ArraySchema<import("valibot").BooleanSchema<undefined>, undefined>]>, never>;
|
|
547
|
-
readonly claimed: 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, boolean[]>, import("valibot").ArraySchema<import("valibot").BooleanSchema<undefined>, undefined>]>, never>;
|
|
548
|
-
readonly countries: 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").RegexAction<string, "invalid csv">]>>, never>;
|
|
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>;
|
|
550
|
-
}, undefined>;
|
|
551
|
-
export type EndowsQueryParams = InferInput<typeof endowsQueryParams>;
|
|
552
554
|
export declare const endowQueryParam: import("valibot").ObjectSchema<{
|
|
553
|
-
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>;
|
|
555
|
+
readonly fields: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[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").FilterItemsAction<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", "claimed", "kyc_donors_only", "id", "env", "registration_number", "endow_designation", "social_media_urls"], undefined>, undefined>]>, never>;
|
|
554
556
|
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>;
|
|
555
557
|
readonly env: import("valibot").PicklistSchema<readonly ["staging", "production"], undefined>;
|
|
556
558
|
}, undefined>;
|
|
@@ -565,29 +567,29 @@ export type ProgramId = InferOutput<typeof programId>;
|
|
|
565
567
|
export declare const milestoneId: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UuidAction<string, undefined>]>;
|
|
566
568
|
export type MilestoneId = InferOutput<typeof milestoneId>;
|
|
567
569
|
export declare const newMilestone: import("valibot").ObjectSchema<{
|
|
568
|
-
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").
|
|
570
|
+
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
|
|
569
571
|
readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
570
572
|
readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
571
573
|
readonly media: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
572
574
|
}, undefined>;
|
|
573
575
|
export declare const milestoneUpdate: Omit<import("valibot").ObjectSchema<{
|
|
574
|
-
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").
|
|
576
|
+
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
|
|
575
577
|
readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
576
578
|
readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
577
579
|
readonly media: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
578
580
|
}, undefined>, "_types" | "_run" | "entries"> & {
|
|
579
581
|
readonly entries: {
|
|
580
|
-
readonly date: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").
|
|
582
|
+
readonly date: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>, never>;
|
|
581
583
|
readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
582
584
|
readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
583
585
|
readonly media: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
584
586
|
};
|
|
585
|
-
_run(dataset: import("valibot").Dataset<unknown, never>, config: import("valibot").Config<import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").
|
|
587
|
+
_run(dataset: import("valibot").Dataset<unknown, never>, config: import("valibot").Config<import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").IsoTimestampIssue<string>>): import("valibot").Dataset<{
|
|
586
588
|
title: string;
|
|
587
589
|
description: string;
|
|
588
590
|
date?: string | undefined;
|
|
589
591
|
media?: string | undefined;
|
|
590
|
-
}, import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").
|
|
592
|
+
}, import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").IsoTimestampIssue<string>>;
|
|
591
593
|
readonly _types?: {
|
|
592
594
|
readonly input: {
|
|
593
595
|
title: string;
|
|
@@ -601,14 +603,14 @@ export declare const milestoneUpdate: Omit<import("valibot").ObjectSchema<{
|
|
|
601
603
|
date?: string | undefined;
|
|
602
604
|
media?: string | undefined;
|
|
603
605
|
};
|
|
604
|
-
readonly issue: import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").
|
|
606
|
+
readonly issue: import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").IsoTimestampIssue<string>;
|
|
605
607
|
} | undefined;
|
|
606
608
|
};
|
|
607
609
|
export type MilestoneUpdate = InferOutput<typeof milestoneUpdate>;
|
|
608
610
|
export type NewMilestone = InferOutput<typeof newMilestone>;
|
|
609
611
|
export declare const milestone: import("valibot").ObjectSchema<{
|
|
610
612
|
readonly id: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UuidAction<string, undefined>]>;
|
|
611
|
-
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").
|
|
613
|
+
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
|
|
612
614
|
readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
613
615
|
readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
614
616
|
readonly media: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
@@ -621,7 +623,7 @@ export declare const newProgram: import("valibot").ObjectSchema<{
|
|
|
621
623
|
/** null unsets target */
|
|
622
624
|
readonly targetRaise: import("valibot").NullishSchema<import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").MinValueAction<number, 0, undefined>]>, never>;
|
|
623
625
|
readonly milestones: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
624
|
-
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").
|
|
626
|
+
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
|
|
625
627
|
readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
626
628
|
readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
627
629
|
readonly media: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
@@ -646,7 +648,7 @@ export declare const programUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
646
648
|
/** null unsets target */
|
|
647
649
|
readonly targetRaise: import("valibot").NullishSchema<import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").MinValueAction<number, 0, undefined>]>, never>;
|
|
648
650
|
readonly milestones: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
649
|
-
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").
|
|
651
|
+
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
|
|
650
652
|
readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
651
653
|
readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
652
654
|
readonly media: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
|
@@ -664,7 +666,7 @@ export declare const programUpdate: Omit<Omit<import("valibot").ObjectSchema<{
|
|
|
664
666
|
/** null unsets target */
|
|
665
667
|
readonly targetRaise: import("valibot").NullishSchema<import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").MinValueAction<number, 0, undefined>]>, never>;
|
|
666
668
|
readonly milestones: import("valibot").SchemaWithPipe<[import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
667
|
-
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").
|
|
669
|
+
readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
|
|
668
670
|
readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
669
671
|
readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
|
|
670
672
|
readonly media: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UrlAction<string, undefined>]>, never>;
|
package/dist/schema.mjs
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { env, orgDesignation, unSdgNum } from "@better-giving/schemas";
|
|
2
2
|
export { orgDesignation as endowDesignation, env, unSdgNum };
|
|
3
|
-
import { url, array, base64, boolean, check, custom, excludes, integer,
|
|
3
|
+
import { url, array, base64, boolean, check, custom, excludes, filterItems, integer, isoTimestamp, keyof, lazy, maxLength, maxValue, minLength, minValue, nonEmpty, nullish, number, object, omit, optional, partial, picklist, pipe, regex, startsWith, string, transform, trim, uuid, } from "valibot";
|
|
4
4
|
export const str = pipe(string(), trim());
|
|
5
|
+
export const csv = lazy((x) => {
|
|
6
|
+
if (!x)
|
|
7
|
+
return str;
|
|
8
|
+
return pipe(str, regex(/^[^,]+(?:,[^,]+)*$/, "invalid csv"));
|
|
9
|
+
});
|
|
10
|
+
export const csvStrs = pipe(csv, transform((x) => x.split(",")), filterItems((x) => x.length > 0));
|
|
5
11
|
const pct = pipe(number(), integer(), minValue(0), maxValue(100));
|
|
6
12
|
export const allocation = pipe(object({
|
|
7
13
|
cash: pct,
|
|
@@ -53,6 +59,7 @@ export const increment = object({
|
|
|
53
59
|
});
|
|
54
60
|
export const endowment = object({
|
|
55
61
|
id: endowId,
|
|
62
|
+
env,
|
|
56
63
|
slug: optional(segment),
|
|
57
64
|
registration_number: reg_number,
|
|
58
65
|
name: pipe(str, nonEmpty("required")),
|
|
@@ -79,28 +86,14 @@ export const endowment = object({
|
|
|
79
86
|
donateMethods: optional(array(donateMethodId)),
|
|
80
87
|
increments: optional(pipe(array(increment), maxLength(MAX_NUM_INCREMENTS))),
|
|
81
88
|
fund_opt_in: optional(boolean()),
|
|
89
|
+
/** endowment is not claimed if `false` only */
|
|
90
|
+
claimed: optional(boolean()),
|
|
91
|
+
kyc_donors_only: optional(boolean()),
|
|
82
92
|
});
|
|
83
|
-
export const endowUpdate = partial(omit(endowment, ["id"]));
|
|
93
|
+
export const endowUpdate = partial(omit(endowment, ["id", "claimed", "kyc_donors_only", "env"]));
|
|
84
94
|
export const endowFields = keyof(endowment);
|
|
85
|
-
const csv = lazy((x) => {
|
|
86
|
-
if (!x)
|
|
87
|
-
return str;
|
|
88
|
-
return pipe(str, regex(/^[^,]+(?:,[^,]+)*$/, "invalid csv"));
|
|
89
|
-
});
|
|
90
|
-
const boolCsv = pipe(csv, transform((x) => x.split(",").map(Boolean)), array(boolean()));
|
|
91
|
-
export const endowsQueryParams = object({
|
|
92
|
-
query: str,
|
|
93
|
-
page: pipe(string(), transform((x) => +x), integer(), minValue(1)),
|
|
94
|
-
endow_designation: optional(pipe(csv, transform((x) => x.split(",")), array(orgDesignation))),
|
|
95
|
-
sdgs: optional(pipe(csv, transform((x) => x.split(",").map((s) => +s)), array(unSdgNum))),
|
|
96
|
-
kyc_only: optional(boolCsv),
|
|
97
|
-
fund_opt_in: optional(boolCsv),
|
|
98
|
-
claimed: optional(boolCsv),
|
|
99
|
-
countries: optional(csv),
|
|
100
|
-
fields: optional(pipe(csv, transform((x) => x.split(",")), array(endowFields))),
|
|
101
|
-
});
|
|
102
95
|
export const endowQueryParam = object({
|
|
103
|
-
fields: optional(pipe(
|
|
96
|
+
fields: optional(pipe(csvStrs, array(endowFields))),
|
|
104
97
|
slug: optional(segment),
|
|
105
98
|
env,
|
|
106
99
|
});
|
|
@@ -112,7 +105,7 @@ const amnt = pipe(number(), minValue(0));
|
|
|
112
105
|
export const programId = pipe(str, uuid());
|
|
113
106
|
export const milestoneId = pipe(str, uuid());
|
|
114
107
|
export const newMilestone = object({
|
|
115
|
-
date: pipe(str,
|
|
108
|
+
date: pipe(str, isoTimestamp()),
|
|
116
109
|
title: str,
|
|
117
110
|
description: str,
|
|
118
111
|
media: optional(_url),
|
package/package.json
CHANGED
package/src/cloudsearch.mts
CHANGED
|
@@ -1,39 +1,86 @@
|
|
|
1
|
+
import { orgDesignation, unSdgNum } from "@better-giving/schemas";
|
|
1
2
|
import type {
|
|
2
3
|
ToDoc,
|
|
3
4
|
ToHitFields,
|
|
4
5
|
ToUpdate,
|
|
5
6
|
} from "@better-giving/types/cloudsearch";
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
7
|
+
import {
|
|
8
|
+
type InferInput,
|
|
9
|
+
type InferOutput,
|
|
10
|
+
array,
|
|
11
|
+
boolean,
|
|
12
|
+
integer,
|
|
13
|
+
keyof,
|
|
14
|
+
mapItems,
|
|
15
|
+
minValue,
|
|
16
|
+
number,
|
|
17
|
+
object,
|
|
18
|
+
optional,
|
|
19
|
+
pick,
|
|
20
|
+
pipe,
|
|
21
|
+
string,
|
|
22
|
+
transform,
|
|
23
|
+
} from "valibot";
|
|
24
|
+
import { type Environment, csvStrs, endowment, str } from "./schema.mjs";
|
|
25
|
+
|
|
26
|
+
const boolCsv = pipe(csvStrs, mapItems(Boolean), array(boolean()));
|
|
27
|
+
|
|
28
|
+
export const cloudsearchEndowFields = object({
|
|
29
|
+
contributions_total: number(),
|
|
30
|
+
contributions_count: number(),
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
export const cloudsearchEndow = object({
|
|
34
|
+
...pick(endowment, [
|
|
35
|
+
"card_img",
|
|
36
|
+
"name",
|
|
37
|
+
"tagline",
|
|
38
|
+
"hq_country",
|
|
39
|
+
"sdgs",
|
|
40
|
+
"active_in_countries",
|
|
41
|
+
"endow_designation",
|
|
42
|
+
"registration_number",
|
|
43
|
+
"kyc_donors_only",
|
|
44
|
+
"claimed",
|
|
45
|
+
//filters
|
|
46
|
+
"env",
|
|
47
|
+
"id",
|
|
48
|
+
"published",
|
|
49
|
+
"fund_opt_in",
|
|
50
|
+
]).entries,
|
|
51
|
+
...cloudsearchEndowFields.entries,
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
export const cloudSearchEndowFields = keyof(cloudsearchEndow);
|
|
55
|
+
|
|
56
|
+
export const endowsQueryParams = object({
|
|
57
|
+
query: str,
|
|
58
|
+
page: pipe(
|
|
59
|
+
string(),
|
|
60
|
+
transform((x) => +x),
|
|
61
|
+
integer(),
|
|
62
|
+
minValue(1)
|
|
63
|
+
),
|
|
64
|
+
endow_designation: optional(pipe(csvStrs, array(orgDesignation))),
|
|
65
|
+
sdgs: optional(pipe(csvStrs, mapItems(Number), array(unSdgNum))),
|
|
66
|
+
kyc_only: optional(boolCsv),
|
|
67
|
+
fund_opt_in: optional(boolCsv),
|
|
68
|
+
claimed: optional(boolCsv),
|
|
69
|
+
countries: optional(pipe(csvStrs, array(str))),
|
|
70
|
+
fields: optional(pipe(csvStrs, array(cloudSearchEndowFields))),
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
export type CloudsearchEndowsQueryParams = InferInput<typeof endowsQueryParams>;
|
|
74
|
+
|
|
75
|
+
export type CloudsearchEndow = InferOutput<typeof cloudsearchEndow>;
|
|
29
76
|
|
|
30
77
|
type DocId = `${Environment}-${number}`;
|
|
31
78
|
|
|
32
79
|
type Doc = {
|
|
33
80
|
documentId: DocId;
|
|
34
81
|
_score: number;
|
|
35
|
-
} & ToDoc<
|
|
82
|
+
} & ToDoc<CloudsearchEndow>;
|
|
36
83
|
|
|
37
84
|
export type HitFields = ToHitFields<Omit<Doc, "documentId" | "_score">>;
|
|
38
85
|
|
|
39
|
-
export type Update = ToUpdate<DocId,
|
|
86
|
+
export type Update = ToUpdate<DocId, CloudsearchEndow>;
|
package/src/db.mts
CHANGED
|
@@ -41,10 +41,7 @@ export namespace Endow {
|
|
|
41
41
|
};
|
|
42
42
|
|
|
43
43
|
export type NonKeyAttributes = EndowmentShape & {
|
|
44
|
-
env: Environment;
|
|
45
|
-
kyc_donors_only: boolean;
|
|
46
44
|
fiscal_sponsored: boolean;
|
|
47
|
-
claimed: boolean;
|
|
48
45
|
|
|
49
46
|
/** in USD @deprecated */
|
|
50
47
|
payout_minimum?: number;
|
|
@@ -77,12 +74,12 @@ export namespace SlugEnvGsi {
|
|
|
77
74
|
}
|
|
78
75
|
|
|
79
76
|
export namespace Program {
|
|
80
|
-
type Keys = {
|
|
77
|
+
export type Keys = {
|
|
81
78
|
PK: `Endow#${number}#${Environment}`;
|
|
82
79
|
SK: `Prog#${ProgramId}`;
|
|
83
80
|
};
|
|
84
81
|
|
|
85
|
-
type NonKeyAttributes = ProgramShape & {
|
|
82
|
+
export type NonKeyAttributes = ProgramShape & {
|
|
86
83
|
/** in USD */
|
|
87
84
|
totalDonations?: number;
|
|
88
85
|
};
|
|
@@ -90,7 +87,7 @@ export namespace Program {
|
|
|
90
87
|
}
|
|
91
88
|
|
|
92
89
|
export namespace Milestone {
|
|
93
|
-
type Keys = {
|
|
90
|
+
export type Keys = {
|
|
94
91
|
PK: `Prog#${string}#${Environment}`;
|
|
95
92
|
SK: `Mile#${MilestoneId}`;
|
|
96
93
|
};
|
package/src/index.mts
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
import type { Fields as FundItem } from "./cloudsearch.mjs";
|
|
2
|
-
import type { Milestone } from "./schema.mjs";
|
|
3
1
|
import type { Endow as NEndow, Media, Program as NProgram } from "./db.mjs";
|
|
2
|
+
import type { Milestone } from "./schema.mjs";
|
|
4
3
|
export type {
|
|
5
4
|
Allocation,
|
|
6
5
|
DonateMethodId,
|
|
7
6
|
EndowByEinParams,
|
|
8
7
|
EndowDesignation,
|
|
9
8
|
EndowQueryParam,
|
|
10
|
-
EndowsQueryParams,
|
|
11
9
|
EndowUpdate,
|
|
12
10
|
Environment,
|
|
13
11
|
Increment,
|
|
@@ -23,7 +21,10 @@ export type {
|
|
|
23
21
|
MediaType,
|
|
24
22
|
MediaUpdate,
|
|
25
23
|
} from "./schema.mjs";
|
|
26
|
-
export type {
|
|
24
|
+
export type {
|
|
25
|
+
CloudsearchEndow as EndowItem,
|
|
26
|
+
CloudsearchEndowsQueryParams as EndowsQueryParams,
|
|
27
|
+
} from "./cloudsearch.mjs";
|
|
27
28
|
|
|
28
29
|
export type Endow = Pick<
|
|
29
30
|
NEndow.DbRecord,
|
package/src/schema.mts
CHANGED
|
@@ -15,8 +15,9 @@ import {
|
|
|
15
15
|
check,
|
|
16
16
|
custom,
|
|
17
17
|
excludes,
|
|
18
|
+
filterItems,
|
|
18
19
|
integer,
|
|
19
|
-
|
|
20
|
+
isoTimestamp,
|
|
20
21
|
keyof,
|
|
21
22
|
lazy,
|
|
22
23
|
maxLength,
|
|
@@ -41,6 +42,15 @@ import {
|
|
|
41
42
|
} from "valibot";
|
|
42
43
|
|
|
43
44
|
export const str = pipe(string(), trim());
|
|
45
|
+
export const csv = lazy((x) => {
|
|
46
|
+
if (!x) return str;
|
|
47
|
+
return pipe(str, regex(/^[^,]+(?:,[^,]+)*$/, "invalid csv"));
|
|
48
|
+
});
|
|
49
|
+
export const csvStrs = pipe(
|
|
50
|
+
csv,
|
|
51
|
+
transform((x) => x.split(",")),
|
|
52
|
+
filterItems((x) => x.length > 0)
|
|
53
|
+
);
|
|
44
54
|
|
|
45
55
|
const pct = pipe(number(), integer(), minValue(0), maxValue(100));
|
|
46
56
|
export const allocation = pipe(
|
|
@@ -150,6 +160,7 @@ export type Increment = InferOutput<typeof increment>;
|
|
|
150
160
|
|
|
151
161
|
export const endowment = object({
|
|
152
162
|
id: endowId,
|
|
163
|
+
env,
|
|
153
164
|
slug: optional(segment),
|
|
154
165
|
registration_number: reg_number,
|
|
155
166
|
name: pipe(str, nonEmpty("required")),
|
|
@@ -177,71 +188,23 @@ export const endowment = object({
|
|
|
177
188
|
donateMethods: optional(array(donateMethodId)),
|
|
178
189
|
increments: optional(pipe(array(increment), maxLength(MAX_NUM_INCREMENTS))),
|
|
179
190
|
fund_opt_in: optional(boolean()),
|
|
191
|
+
|
|
192
|
+
/** endowment is not claimed if `false` only */
|
|
193
|
+
claimed: optional(boolean()),
|
|
194
|
+
kyc_donors_only: optional(boolean()),
|
|
180
195
|
});
|
|
181
196
|
|
|
182
|
-
export const endowUpdate = partial(
|
|
183
|
-
|
|
197
|
+
export const endowUpdate = partial(
|
|
198
|
+
omit(endowment, ["id", "claimed", "kyc_donors_only", "env"])
|
|
199
|
+
);
|
|
184
200
|
|
|
201
|
+
export const endowFields = keyof(endowment);
|
|
185
202
|
export type Endowment = InferOutput<typeof endowment>;
|
|
186
203
|
export type EndowUpdate = InferOutput<typeof endowUpdate>;
|
|
187
204
|
export type EndowmentFields = InferOutput<typeof endowFields>;
|
|
188
205
|
|
|
189
|
-
const csv = lazy((x) => {
|
|
190
|
-
if (!x) return str;
|
|
191
|
-
return pipe(str, regex(/^[^,]+(?:,[^,]+)*$/, "invalid csv"));
|
|
192
|
-
});
|
|
193
|
-
|
|
194
|
-
const boolCsv = pipe(
|
|
195
|
-
csv,
|
|
196
|
-
transform((x) => x.split(",").map(Boolean)),
|
|
197
|
-
array(boolean())
|
|
198
|
-
);
|
|
199
|
-
|
|
200
|
-
export const endowsQueryParams = object({
|
|
201
|
-
query: str,
|
|
202
|
-
page: pipe(
|
|
203
|
-
string(),
|
|
204
|
-
transform((x) => +x),
|
|
205
|
-
integer(),
|
|
206
|
-
minValue(1)
|
|
207
|
-
),
|
|
208
|
-
endow_designation: optional(
|
|
209
|
-
pipe(
|
|
210
|
-
csv,
|
|
211
|
-
transform((x) => x.split(",")),
|
|
212
|
-
array(orgDesignation)
|
|
213
|
-
)
|
|
214
|
-
),
|
|
215
|
-
sdgs: optional(
|
|
216
|
-
pipe(
|
|
217
|
-
csv,
|
|
218
|
-
transform((x) => x.split(",").map((s) => +s)),
|
|
219
|
-
array(unSdgNum)
|
|
220
|
-
)
|
|
221
|
-
),
|
|
222
|
-
kyc_only: optional(boolCsv),
|
|
223
|
-
fund_opt_in: optional(boolCsv),
|
|
224
|
-
claimed: optional(boolCsv),
|
|
225
|
-
countries: optional(csv),
|
|
226
|
-
fields: optional(
|
|
227
|
-
pipe(
|
|
228
|
-
csv,
|
|
229
|
-
transform((x) => x.split(",")),
|
|
230
|
-
array(endowFields)
|
|
231
|
-
)
|
|
232
|
-
),
|
|
233
|
-
});
|
|
234
|
-
|
|
235
|
-
export type EndowsQueryParams = InferInput<typeof endowsQueryParams>;
|
|
236
|
-
|
|
237
206
|
export const endowQueryParam = object({
|
|
238
|
-
fields: optional(
|
|
239
|
-
pipe(
|
|
240
|
-
csv,
|
|
241
|
-
transform((x) => x.split(",")),
|
|
242
|
-
array(endowFields)
|
|
243
|
-
)
|
|
244
|
-
),
|
|
207
|
+
fields: optional(pipe(csvStrs, array(endowFields))),
|
|
245
208
|
slug: optional(segment),
|
|
246
209
|
env,
|
|
247
210
|
});
|
|
@@ -262,7 +225,7 @@ export const milestoneId = pipe(str, uuid());
|
|
|
262
225
|
export type MilestoneId = InferOutput<typeof milestoneId>;
|
|
263
226
|
|
|
264
227
|
export const newMilestone = object({
|
|
265
|
-
date: pipe(str,
|
|
228
|
+
date: pipe(str, isoTimestamp()),
|
|
266
229
|
title: str,
|
|
267
230
|
description: str,
|
|
268
231
|
media: optional(_url),
|