@remit/electrodb-entities 0.0.18 → 0.0.19

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/index.mjs CHANGED
@@ -4529,6 +4529,419 @@ export const BodyPartContent = {
4529
4529
  version: "1"
4530
4530
  }
4531
4531
  };
4532
+ export const CalendarCollection = {
4533
+ attributes: {
4534
+ calendarId: {
4535
+ type: "string",
4536
+ required: true,
4537
+ validate: value => {
4538
+ if (typeof value === "string" && value.length < 25)
4539
+ throw new Error("'calendarId' must be at least 25 characters");
4540
+ if (typeof value === "string" && value.length > 25)
4541
+ throw new Error("'calendarId' must be at most 25 characters");
4542
+ return true;
4543
+ }
4544
+ },
4545
+ accountConfigId: {
4546
+ type: "string",
4547
+ required: true,
4548
+ validate: value => {
4549
+ if (typeof value === "string" && value.length < 25)
4550
+ throw new Error("'accountConfigId' must be at least 25 characters");
4551
+ if (typeof value === "string" && value.length > 25)
4552
+ throw new Error("'accountConfigId' must be at most 25 characters");
4553
+ return true;
4554
+ }
4555
+ },
4556
+ urlSegment: {
4557
+ type: "string",
4558
+ required: true,
4559
+ validate: value => {
4560
+ if (typeof value === "string" && value.length > 64)
4561
+ throw new Error("'urlSegment' must be at most 64 characters");
4562
+ return true;
4563
+ }
4564
+ },
4565
+ displayName: {
4566
+ type: "string",
4567
+ required: true,
4568
+ validate: value => {
4569
+ if (typeof value === "string" && value.length > 140)
4570
+ throw new Error("'displayName' must be at most 140 characters");
4571
+ return true;
4572
+ }
4573
+ },
4574
+ color: {
4575
+ type: ["Cal1", "Cal2", "Cal3", "Cal4", "Cal5", "Cal6"],
4576
+ required: true,
4577
+ default: "Cal1"
4578
+ },
4579
+ componentSet: {
4580
+ type: ["VeventOnly"],
4581
+ required: true,
4582
+ default: "VeventOnly"
4583
+ },
4584
+ source: {
4585
+ type: ["Default", "UserCreated", "MailDerived"],
4586
+ required: true,
4587
+ default: "UserCreated"
4588
+ },
4589
+ timezone: {
4590
+ type: "string",
4591
+ required: true,
4592
+ default: "",
4593
+ validate: value => {
4594
+ if (typeof value === "string" && value.length > 64)
4595
+ throw new Error("'timezone' must be at most 64 characters");
4596
+ return true;
4597
+ }
4598
+ },
4599
+ syncSequence: {
4600
+ type: "number",
4601
+ required: true,
4602
+ default: 0,
4603
+ validate: value => {
4604
+ if (typeof value === "number" && !Number.isInteger(value))
4605
+ throw new Error("'syncSequence' must be an integer");
4606
+ return true;
4607
+ }
4608
+ },
4609
+ createdAt: {
4610
+ type: "number",
4611
+ readOnly: true,
4612
+ required: true,
4613
+ default: () => Date.now(),
4614
+ set: () => Date.now()
4615
+ },
4616
+ updatedAt: {
4617
+ type: "number",
4618
+ watch: "*",
4619
+ required: true,
4620
+ default: () => Date.now(),
4621
+ set: () => Date.now()
4622
+ }
4623
+ },
4624
+ indexes: {
4625
+ byUrlSegment: {
4626
+ pk: {
4627
+ field: "gsi0pk",
4628
+ composite: ["accountConfigId"]
4629
+ },
4630
+ sk: {
4631
+ field: "gsi0sk",
4632
+ composite: ["urlSegment"]
4633
+ },
4634
+ index: "gsi0"
4635
+ },
4636
+ Calendar: {
4637
+ pk: {
4638
+ field: "pk",
4639
+ composite: ["accountConfigId"]
4640
+ },
4641
+ sk: {
4642
+ field: "sk",
4643
+ composite: ["calendarId"]
4644
+ }
4645
+ }
4646
+ },
4647
+ model: {
4648
+ entity: "calendar",
4649
+ service: "remit",
4650
+ version: "1"
4651
+ }
4652
+ };
4653
+ export const CalendarObject = {
4654
+ attributes: {
4655
+ calendarObjectId: {
4656
+ type: "string",
4657
+ required: true,
4658
+ validate: value => {
4659
+ if (typeof value === "string" && value.length < 25)
4660
+ throw new Error("'calendarObjectId' must be at least 25 characters");
4661
+ if (typeof value === "string" && value.length > 25)
4662
+ throw new Error("'calendarObjectId' must be at most 25 characters");
4663
+ return true;
4664
+ }
4665
+ },
4666
+ calendarId: {
4667
+ type: "string",
4668
+ required: true,
4669
+ validate: value => {
4670
+ if (typeof value === "string" && value.length < 25)
4671
+ throw new Error("'calendarId' must be at least 25 characters");
4672
+ if (typeof value === "string" && value.length > 25)
4673
+ throw new Error("'calendarId' must be at most 25 characters");
4674
+ return true;
4675
+ }
4676
+ },
4677
+ resourceName: {
4678
+ type: "string",
4679
+ required: true,
4680
+ validate: value => {
4681
+ if (typeof value === "string" && value.length > 256)
4682
+ throw new Error("'resourceName' must be at most 256 characters");
4683
+ return true;
4684
+ }
4685
+ },
4686
+ icalUid: {
4687
+ type: "string",
4688
+ required: true,
4689
+ validate: value => {
4690
+ if (typeof value === "string" && value.length > 512)
4691
+ throw new Error("'icalUid' must be at most 512 characters");
4692
+ return true;
4693
+ }
4694
+ },
4695
+ icalData: {
4696
+ type: "string",
4697
+ required: true
4698
+ },
4699
+ etag: {
4700
+ type: "string",
4701
+ required: true,
4702
+ validate: value => {
4703
+ if (typeof value === "string" && value.length > 64)
4704
+ throw new Error("'etag' must be at most 64 characters");
4705
+ return true;
4706
+ }
4707
+ },
4708
+ sequence: {
4709
+ type: "number",
4710
+ required: true,
4711
+ default: 0,
4712
+ validate: value => {
4713
+ if (typeof value === "number" && !Number.isInteger(value))
4714
+ throw new Error("'sequence' must be an integer");
4715
+ return true;
4716
+ }
4717
+ },
4718
+ syncSequence: {
4719
+ type: "number",
4720
+ required: true,
4721
+ default: 0,
4722
+ validate: value => {
4723
+ if (typeof value === "number" && !Number.isInteger(value))
4724
+ throw new Error("'syncSequence' must be an integer");
4725
+ return true;
4726
+ }
4727
+ },
4728
+ summary: {
4729
+ type: "string",
4730
+ required: true,
4731
+ validate: value => {
4732
+ if (typeof value === "string" && value.length > 512)
4733
+ throw new Error("'summary' must be at most 512 characters");
4734
+ return true;
4735
+ }
4736
+ },
4737
+ dtStart: {
4738
+ type: "string",
4739
+ required: true,
4740
+ validate: value => {
4741
+ if (typeof value === "string" && value.length > 64)
4742
+ throw new Error("'dtStart' must be at most 64 characters");
4743
+ return true;
4744
+ }
4745
+ },
4746
+ dtEnd: {
4747
+ type: "string",
4748
+ required: true,
4749
+ validate: value => {
4750
+ if (typeof value === "string" && value.length > 64)
4751
+ throw new Error("'dtEnd' must be at most 64 characters");
4752
+ return true;
4753
+ }
4754
+ },
4755
+ allDay: {
4756
+ type: "boolean",
4757
+ required: true,
4758
+ default: false
4759
+ },
4760
+ zoneCertainty: {
4761
+ type: ["Local", "Explicit", "Ambiguous"],
4762
+ required: true,
4763
+ default: "Explicit"
4764
+ },
4765
+ status: {
4766
+ type: ["Confirmed", "Tentative", "Cancelled"],
4767
+ required: true,
4768
+ default: "Confirmed"
4769
+ },
4770
+ transparency: {
4771
+ type: ["Opaque", "Transparent"],
4772
+ required: true,
4773
+ default: "Opaque"
4774
+ },
4775
+ hasRecurrence: {
4776
+ type: "boolean",
4777
+ required: true,
4778
+ default: false
4779
+ },
4780
+ expandedThrough: {
4781
+ type: "string",
4782
+ required: true,
4783
+ default: "",
4784
+ validate: value => {
4785
+ if (typeof value === "string" && value.length > 64)
4786
+ throw new Error("'expandedThrough' must be at most 64 characters");
4787
+ return true;
4788
+ }
4789
+ },
4790
+ createdAt: {
4791
+ type: "number",
4792
+ readOnly: true,
4793
+ required: true,
4794
+ default: () => Date.now(),
4795
+ set: () => Date.now()
4796
+ },
4797
+ updatedAt: {
4798
+ type: "number",
4799
+ watch: "*",
4800
+ required: true,
4801
+ default: () => Date.now(),
4802
+ set: () => Date.now()
4803
+ }
4804
+ },
4805
+ indexes: {
4806
+ bySyncSequence: {
4807
+ pk: {
4808
+ field: "gsi1pk",
4809
+ composite: ["calendarId"]
4810
+ },
4811
+ sk: {
4812
+ field: "gsi1sk",
4813
+ composite: ["syncSequence"]
4814
+ },
4815
+ index: "gsi1"
4816
+ },
4817
+ byUid: {
4818
+ pk: {
4819
+ field: "gsi0pk",
4820
+ composite: ["calendarId"]
4821
+ },
4822
+ sk: {
4823
+ field: "gsi0sk",
4824
+ composite: ["icalUid"]
4825
+ },
4826
+ index: "gsi0"
4827
+ },
4828
+ CalendarObject: {
4829
+ pk: {
4830
+ field: "pk",
4831
+ composite: ["calendarId"]
4832
+ },
4833
+ sk: {
4834
+ field: "sk",
4835
+ composite: ["calendarObjectId"]
4836
+ }
4837
+ }
4838
+ },
4839
+ model: {
4840
+ entity: "calendarObject",
4841
+ service: "remit",
4842
+ version: "1"
4843
+ }
4844
+ };
4845
+ export const CalendarEventIndex = {
4846
+ attributes: {
4847
+ calendarId: {
4848
+ type: "string",
4849
+ required: true,
4850
+ validate: value => {
4851
+ if (typeof value === "string" && value.length < 25)
4852
+ throw new Error("'calendarId' must be at least 25 characters");
4853
+ if (typeof value === "string" && value.length > 25)
4854
+ throw new Error("'calendarId' must be at most 25 characters");
4855
+ return true;
4856
+ }
4857
+ },
4858
+ calendarObjectId: {
4859
+ type: "string",
4860
+ required: true,
4861
+ validate: value => {
4862
+ if (typeof value === "string" && value.length < 25)
4863
+ throw new Error("'calendarObjectId' must be at least 25 characters");
4864
+ if (typeof value === "string" && value.length > 25)
4865
+ throw new Error("'calendarObjectId' must be at most 25 characters");
4866
+ return true;
4867
+ }
4868
+ },
4869
+ recurrenceId: {
4870
+ type: "string",
4871
+ required: true,
4872
+ validate: value => {
4873
+ if (typeof value === "string" && value.length > 64)
4874
+ throw new Error("'recurrenceId' must be at most 64 characters");
4875
+ return true;
4876
+ }
4877
+ },
4878
+ startAt: {
4879
+ type: "string",
4880
+ required: true,
4881
+ validate: value => {
4882
+ if (typeof value === "string" && value.length > 64)
4883
+ throw new Error("'startAt' must be at most 64 characters");
4884
+ return true;
4885
+ }
4886
+ },
4887
+ endAt: {
4888
+ type: "string",
4889
+ required: true,
4890
+ validate: value => {
4891
+ if (typeof value === "string" && value.length > 64)
4892
+ throw new Error("'endAt' must be at most 64 characters");
4893
+ return true;
4894
+ }
4895
+ },
4896
+ allDay: {
4897
+ type: "boolean",
4898
+ required: true,
4899
+ default: false
4900
+ },
4901
+ createdAt: {
4902
+ type: "number",
4903
+ readOnly: true,
4904
+ required: true,
4905
+ default: () => Date.now(),
4906
+ set: () => Date.now()
4907
+ },
4908
+ updatedAt: {
4909
+ type: "number",
4910
+ watch: "*",
4911
+ required: true,
4912
+ default: () => Date.now(),
4913
+ set: () => Date.now()
4914
+ }
4915
+ },
4916
+ indexes: {
4917
+ byStart: {
4918
+ pk: {
4919
+ field: "gsi0pk",
4920
+ composite: ["calendarId"]
4921
+ },
4922
+ sk: {
4923
+ field: "gsi0sk",
4924
+ composite: ["startAt"]
4925
+ },
4926
+ index: "gsi0"
4927
+ },
4928
+ CalendarEventIndex: {
4929
+ pk: {
4930
+ field: "pk",
4931
+ composite: ["calendarId"]
4932
+ },
4933
+ sk: {
4934
+ field: "sk",
4935
+ composite: ["calendarObjectId", "recurrenceId"]
4936
+ }
4937
+ }
4938
+ },
4939
+ model: {
4940
+ entity: "calendarEventIndex",
4941
+ service: "remit",
4942
+ version: "1"
4943
+ }
4944
+ };
4532
4945
  export const MessageLabel = {
4533
4946
  attributes: {
4534
4947
  messageLabelId: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remit/electrodb-entities",
3
- "version": "0.0.18",
3
+ "version": "0.0.19",
4
4
  "description": "ElectroDB entities",
5
5
  "type": "module",
6
6
  "main": "./index.cjs",