@better-giving/endowment 1.0.18 → 1.0.20

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/db.d.mts CHANGED
@@ -53,16 +53,14 @@ export declare namespace Program {
53
53
  /** in USD */
54
54
  totalDonations?: number;
55
55
  };
56
- export type DbRecord = Keys & NonKeyAttributes;
57
- export {};
56
+ type DbRecord = Keys & NonKeyAttributes;
58
57
  }
59
58
  export declare namespace Milestone {
60
59
  type Keys = {
61
60
  PK: `Prog#${string}#${Environment}`;
62
61
  SK: `Mile#${MilestoneId}`;
63
62
  };
64
- export type DbRecord = Keys & MilestoneShape;
65
- export {};
63
+ type DbRecord = Keys & MilestoneShape;
66
64
  }
67
65
  export declare const mediaGsi: {
68
66
  readonly 1: "gsi1";
package/dist/index.d.mts CHANGED
@@ -1,10 +1,10 @@
1
1
  import type { Fields as FundItem } from "./cloudsearch.mjs";
2
- import type { Milestone, Program as TProgram } from "./schema.mjs";
3
- import type { Endow as NEndow, Media } from "./db.mjs";
2
+ import type { Endow as NEndow, Media, Program as NProgram } from "./db.mjs";
3
+ import type { Milestone } from "./schema.mjs";
4
4
  export type { Allocation, DonateMethodId, EndowByEinParams, EndowDesignation, EndowQueryParam, EndowsQueryParams, EndowUpdate, Environment, Increment, Milestone, MilestoneUpdate, NewMilestone, NewProgram, ProgramUpdate, SocialMediaURLs, UnSdgNum, MediaQueryParams, MediaQueryParamsObj, MediaType, MediaUpdate, } from "./schema.mjs";
5
5
  export type { FundItem };
6
6
  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
- export type Program = TProgram & {
7
+ export type Program = Omit<NProgram.DbRecord, "PK" | "SK"> & {
8
8
  milestones: Milestone[];
9
9
  };
10
10
  /** web-app format */
package/dist/schema.d.mts CHANGED
@@ -565,29 +565,29 @@ export type ProgramId = InferOutput<typeof programId>;
565
565
  export declare const milestoneId: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").UuidAction<string, undefined>]>;
566
566
  export type MilestoneId = InferOutput<typeof milestoneId>;
567
567
  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").IsoDateAction<string, undefined>]>;
568
+ readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
569
569
  readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
570
570
  readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
571
571
  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
572
  }, undefined>;
573
573
  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").IsoDateAction<string, undefined>]>;
574
+ readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
575
575
  readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
576
576
  readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
577
577
  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
578
  }, undefined>, "_types" | "_run" | "entries"> & {
579
579
  readonly entries: {
580
- readonly date: import("valibot").OptionalSchema<import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoDateAction<string, undefined>]>, never>;
580
+ 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
581
  readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
582
582
  readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
583
583
  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
584
  };
585
- _run(dataset: import("valibot").Dataset<unknown, never>, config: import("valibot").Config<import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").IsoDateIssue<string>>): import("valibot").Dataset<{
585
+ _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
586
  title: string;
587
587
  description: string;
588
588
  date?: string | undefined;
589
589
  media?: string | undefined;
590
- }, import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").IsoDateIssue<string>>;
590
+ }, import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").IsoTimestampIssue<string>>;
591
591
  readonly _types?: {
592
592
  readonly input: {
593
593
  title: string;
@@ -601,14 +601,14 @@ export declare const milestoneUpdate: Omit<import("valibot").ObjectSchema<{
601
601
  date?: string | undefined;
602
602
  media?: string | undefined;
603
603
  };
604
- readonly issue: import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").IsoDateIssue<string>;
604
+ readonly issue: import("valibot").StringIssue | import("valibot").ObjectIssue | import("valibot").UrlIssue<string> | import("valibot").IsoTimestampIssue<string>;
605
605
  } | undefined;
606
606
  };
607
607
  export type MilestoneUpdate = InferOutput<typeof milestoneUpdate>;
608
608
  export type NewMilestone = InferOutput<typeof newMilestone>;
609
609
  export declare const milestone: import("valibot").ObjectSchema<{
610
610
  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").IsoDateAction<string, undefined>]>;
611
+ readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
612
612
  readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
613
613
  readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
614
614
  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 +621,7 @@ export declare const newProgram: import("valibot").ObjectSchema<{
621
621
  /** null unsets target */
622
622
  readonly targetRaise: import("valibot").NullishSchema<import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").MinValueAction<number, 0, undefined>]>, never>;
623
623
  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").IsoDateAction<string, undefined>]>;
624
+ readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
625
625
  readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
626
626
  readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
627
627
  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 +646,7 @@ export declare const programUpdate: Omit<Omit<import("valibot").ObjectSchema<{
646
646
  /** null unsets target */
647
647
  readonly targetRaise: import("valibot").NullishSchema<import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").MinValueAction<number, 0, undefined>]>, never>;
648
648
  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").IsoDateAction<string, undefined>]>;
649
+ readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
650
650
  readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
651
651
  readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
652
652
  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 +664,7 @@ export declare const programUpdate: Omit<Omit<import("valibot").ObjectSchema<{
664
664
  /** null unsets target */
665
665
  readonly targetRaise: import("valibot").NullishSchema<import("valibot").SchemaWithPipe<[import("valibot").NumberSchema<undefined>, import("valibot").MinValueAction<number, 0, undefined>]>, never>;
666
666
  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").IsoDateAction<string, undefined>]>;
667
+ readonly date: import("valibot").SchemaWithPipe<[import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>, import("valibot").IsoTimestampAction<string, undefined>]>;
668
668
  readonly title: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
669
669
  readonly description: import("valibot").SchemaWithPipe<[import("valibot").StringSchema<undefined>, import("valibot").TrimAction]>;
670
670
  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,6 +1,6 @@
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, isoDate, keyof, lazy, maxLength, maxValue, minLength, minValue, nonEmpty, nullish, number, object, omit, optional, partial, picklist, pipe, regex, startsWith, string, transform, trim, uuid, } from "valibot";
3
+ import { url, array, base64, boolean, check, custom, excludes, integer, keyof, lazy, maxLength, maxValue, minLength, minValue, nonEmpty, nullish, number, object, omit, optional, partial, picklist, pipe, regex, startsWith, string, transform, trim, uuid, isoTimestamp, } from "valibot";
4
4
  export const str = pipe(string(), trim());
5
5
  const pct = pipe(number(), integer(), minValue(0), maxValue(100));
6
6
  export const allocation = pipe(object({
@@ -112,7 +112,7 @@ const amnt = pipe(number(), minValue(0));
112
112
  export const programId = pipe(str, uuid());
113
113
  export const milestoneId = pipe(str, uuid());
114
114
  export const newMilestone = object({
115
- date: pipe(str, isoDate()),
115
+ date: pipe(str, isoTimestamp()),
116
116
  title: str,
117
117
  description: str,
118
118
  media: optional(_url),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@better-giving/endowment",
3
- "version": "1.0.18",
3
+ "version": "1.0.20",
4
4
  "peerDependencies": {
5
5
  "@better-giving/schemas": "1.0.1",
6
6
  "@better-giving/types": "1.0.1"
package/src/db.mts CHANGED
@@ -77,12 +77,12 @@ export namespace SlugEnvGsi {
77
77
  }
78
78
 
79
79
  export namespace Program {
80
- type Keys = {
80
+ export type Keys = {
81
81
  PK: `Endow#${number}#${Environment}`;
82
82
  SK: `Prog#${ProgramId}`;
83
83
  };
84
84
 
85
- type NonKeyAttributes = ProgramShape & {
85
+ export type NonKeyAttributes = ProgramShape & {
86
86
  /** in USD */
87
87
  totalDonations?: number;
88
88
  };
@@ -90,7 +90,7 @@ export namespace Program {
90
90
  }
91
91
 
92
92
  export namespace Milestone {
93
- type Keys = {
93
+ export type Keys = {
94
94
  PK: `Prog#${string}#${Environment}`;
95
95
  SK: `Mile#${MilestoneId}`;
96
96
  };
package/src/index.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { Fields as FundItem } from "./cloudsearch.mjs";
2
- import type { Milestone, Program as TProgram } from "./schema.mjs";
3
- import type { Endow as NEndow, Media } from "./db.mjs";
2
+ import type { Endow as NEndow, Media, Program as NProgram } from "./db.mjs";
3
+ import type { Milestone } from "./schema.mjs";
4
4
  export type {
5
5
  Allocation,
6
6
  DonateMethodId,
@@ -55,7 +55,9 @@ export type Endow = Pick<
55
55
  | "receiptMsg"
56
56
  >;
57
57
 
58
- export type Program = TProgram & { milestones: Milestone[] };
58
+ export type Program = Omit<NProgram.DbRecord, "PK" | "SK"> & {
59
+ milestones: Milestone[];
60
+ };
59
61
 
60
62
  /** web-app format */
61
63
  export type TMedia = Omit<Media.DbRecord, "PK" | "SK" | "gsi1PK" | "gsi1SK"> & {
package/src/schema.mts CHANGED
@@ -16,7 +16,6 @@ import {
16
16
  custom,
17
17
  excludes,
18
18
  integer,
19
- isoDate,
20
19
  keyof,
21
20
  lazy,
22
21
  maxLength,
@@ -38,6 +37,7 @@ import {
38
37
  transform,
39
38
  trim,
40
39
  uuid,
40
+ isoTimestamp,
41
41
  } from "valibot";
42
42
 
43
43
  export const str = pipe(string(), trim());
@@ -262,7 +262,7 @@ export const milestoneId = pipe(str, uuid());
262
262
  export type MilestoneId = InferOutput<typeof milestoneId>;
263
263
 
264
264
  export const newMilestone = object({
265
- date: pipe(str, isoDate()),
265
+ date: pipe(str, isoTimestamp()),
266
266
  title: str,
267
267
  description: str,
268
268
  media: optional(_url),