math-main-components 0.0.144 → 0.0.147

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.
Files changed (38) hide show
  1. package/dist/components/AuthButton/AuthButton.d.ts +2 -1
  2. package/dist/components/Button/Button.d.ts +2 -1
  3. package/dist/components/CardButton/CardButton.d.ts +2 -1
  4. package/dist/index.cjs.js +3 -22
  5. package/dist/index.d.ts +3 -10
  6. package/dist/index.esm.js +4 -23
  7. package/dist/types/Calculator.d.ts +2 -2
  8. package/dist/types/Category.d.ts +2 -2
  9. package/dist/types/Course.d.ts +53 -3
  10. package/dist/types/Ebook.d.ts +2 -2
  11. package/dist/types/Feedback.d.ts +4 -4
  12. package/dist/types/HelpData.d.ts +2 -2
  13. package/dist/types/LicenseKey.d.ts +2 -2
  14. package/dist/types/Log.d.ts +4 -3
  15. package/dist/types/Material.d.ts +2 -2
  16. package/dist/types/Movie.d.ts +2 -2
  17. package/dist/types/Organization.d.ts +14 -2
  18. package/dist/types/Product.d.ts +10 -3
  19. package/dist/types/S3File.d.ts +8 -0
  20. package/dist/types/Subscription.d.ts +12 -11
  21. package/dist/types/UploadSignature.d.ts +2 -2
  22. package/dist/types/Usage.d.ts +2 -2
  23. package/dist/types/User.d.ts +6 -3
  24. package/dist/types/marketing/About.d.ts +4 -4
  25. package/dist/types/marketing/BenefitForIndividuals.d.ts +2 -2
  26. package/dist/types/marketing/BenefitForSchools.d.ts +2 -2
  27. package/dist/types/marketing/Concept.d.ts +2 -2
  28. package/dist/types/marketing/Content.d.ts +4 -4
  29. package/dist/types/marketing/Faq.d.ts +2 -2
  30. package/dist/types/marketing/Feature.d.ts +2 -2
  31. package/dist/types/marketing/FooterLink.d.ts +2 -2
  32. package/dist/types/marketing/Home.d.ts +12 -2
  33. package/dist/types/marketing/News.d.ts +2 -2
  34. package/dist/types/marketing/Pricing.d.ts +2 -2
  35. package/dist/types/marketing/StaticPage.d.ts +8 -0
  36. package/dist/types/marketing/Website.d.ts +23 -0
  37. package/dist/types/marketing/WebsiteData.d.ts +1 -1
  38. package/package.json +1 -1
@@ -1,5 +1,6 @@
1
1
  import React, { MouseEvent } from 'react';
2
- export declare function AuthButton({ text, type, theme, iconName, isVisible, onClick }: {
2
+ export declare function AuthButton({ id, text, type, theme, iconName, isVisible, onClick }: {
3
+ id?: string;
3
4
  text: string | undefined;
4
5
  type?: 'submit' | 'reset' | 'button' | undefined;
5
6
  theme?: 'primary' | 'secondary' | undefined;
@@ -1,6 +1,7 @@
1
1
  import React, { MouseEvent } from 'react';
2
2
  type ButtonType = "blue" | "red" | "grey" | "lightBlue";
3
- export declare function Button({ text, iconName, iconFill, type, onClick }: {
3
+ export declare function Button({ id, text, iconName, iconFill, type, onClick }: {
4
+ id?: string;
4
5
  text?: string;
5
6
  iconName?: string;
6
7
  iconFill?: string;
@@ -1,5 +1,6 @@
1
1
  import React, { MouseEvent } from 'react';
2
- export declare function CardButton({ title, iconName, onClick, }: {
2
+ export declare function CardButton({ id, title, iconName, onClick, }: {
3
+ id?: string;
3
4
  title: string;
4
5
  iconName: string;
5
6
  onClick?: (event: MouseEvent<HTMLDivElement>) => {};
package/dist/index.cjs.js CHANGED
@@ -57,7 +57,7 @@ var css_248z$u = ".styles-module_container__4978M {\n max-width: 100%;\n width
57
57
  var styles$u = {"container":"styles-module_container__4978M","visible":"styles-module_visible__uvQwq","hidden":"styles-module_hidden__Oruyx","rotate":"styles-module_rotate__mmYPQ","button":"styles-module_button__BWOOi","secondary":"styles-module_secondary__Eoik3"};
58
58
  styleInject(css_248z$u);
59
59
 
60
- function AuthButton({ text, type = "submit", theme = "primary", iconName = "arrow_forward", isVisible = true, onClick }) {
60
+ function AuthButton({ id, text, type = "submit", theme = "primary", iconName = "arrow_forward", isVisible = true, onClick }) {
61
61
  return (React__default["default"].createElement("div", { className: [styles$u.container, isVisible ? styles$u.visible : styles$u.hidden, ["arrow_forward"].includes(iconName) ? styles$u.rotate : null].join(" ") },
62
62
  React__default["default"].createElement("button", { type: type, className: `${styles$u.button} ${styles$u[theme]}`, onClick: onClick },
63
63
  text,
@@ -68,7 +68,7 @@ var css_248z$t = ".styles-module_container__TP0rp {\n max-width: 100%;\n}\n.sty
68
68
  var styles$t = {"container":"styles-module_container__TP0rp","button":"styles-module_button__Sh-fr","blue":"styles-module_blue__DRdbo","lightBlue":"styles-module_lightBlue__7EKfp","red":"styles-module_red__EhImH","grey":"styles-module_grey__kAVD1","onlyIcon":"styles-module_onlyIcon__bNVnI"};
69
69
  styleInject(css_248z$t);
70
70
 
71
- function Button({ text, iconName, iconFill = "white", type = "blue", onClick = () => { } }) {
71
+ function Button({ id, text, iconName, iconFill = "white", type = "blue", onClick = () => { } }) {
72
72
  function onClickButton(event) {
73
73
  event.preventDefault();
74
74
  if (onClick)
@@ -84,7 +84,7 @@ var css_248z$s = ".styles-module_card__bOd85 {\n background: var(--background-2
84
84
  var styles$s = {"card":"styles-module_card__bOd85"};
85
85
  styleInject(css_248z$s);
86
86
 
87
- function CardButton({ title, iconName, onClick, }) {
87
+ function CardButton({ id, title, iconName, onClick, }) {
88
88
  function onClickCard(event) {
89
89
  event.preventDefault();
90
90
  if (onClick)
@@ -1037,25 +1037,6 @@ function UsageCard({ title, subtitle, ratio = 0, loading }) {
1037
1037
  ], lineWidth: 15, totalValue: 1 }))));
1038
1038
  }
1039
1039
 
1040
- exports.CourseAnnouncementAssetType = void 0;
1041
- (function (CourseAnnouncementAssetType) {
1042
- CourseAnnouncementAssetType["file"] = "file";
1043
- CourseAnnouncementAssetType["calculator"] = "calculator";
1044
- CourseAnnouncementAssetType["movie"] = "movie";
1045
- CourseAnnouncementAssetType["material"] = "material";
1046
- CourseAnnouncementAssetType["ebook"] = "ebook";
1047
- CourseAnnouncementAssetType["test"] = "test";
1048
- CourseAnnouncementAssetType["link"] = "link"; // simple external link url
1049
- })(exports.CourseAnnouncementAssetType || (exports.CourseAnnouncementAssetType = {}));
1050
-
1051
- exports.S3FileCategory = void 0;
1052
- (function (S3FileCategory) {
1053
- S3FileCategory["movies"] = "movies";
1054
- S3FileCategory["materials"] = "materials";
1055
- S3FileCategory["ebooks"] = "ebooks";
1056
- S3FileCategory["default"] = "file";
1057
- })(exports.S3FileCategory || (exports.S3FileCategory = {}));
1058
-
1059
1040
  exports.Accordeon = Accordeon;
1060
1041
  exports.AuthButton = AuthButton;
1061
1042
  exports.Button = Button;
package/dist/index.d.ts CHANGED
@@ -38,27 +38,20 @@ export * from './types/marketing/Feature';
38
38
  export * from './types/marketing/FooterLink';
39
39
  export * from './types/marketing/News';
40
40
  export * from './types/marketing/Pricing';
41
- export * from './types/marketing/WebsiteData';
41
+ export * from './types/marketing/Website';
42
42
  export * from './types/Calculator';
43
43
  export * from './types/Category';
44
44
  export * from './types/Course';
45
- export * from './types/CourseAnnouncement';
46
- export * from './types/CourseAnnouncementAsset';
47
- export * from './types/CourseMessage';
48
- export * from './types/CourseParticipant';
49
- export * from './types/CoursePin';
50
45
  export * from './types/Ebook';
51
46
  export * from './types/Feedback';
52
- export * from './types/File';
53
47
  export * from './types/HelpData';
54
48
  export * from './types/LicenseKey';
55
49
  export * from './types/Manager';
56
50
  export * from './types/Material';
57
51
  export * from './types/Movie';
58
52
  export * from './types/Organization';
59
- export * from './types/OrganizationMember';
60
53
  export * from './types/Product';
61
- export * from './types/ProductLimit';
54
+ export * from './types/S3File';
62
55
  export * from './types/Subscription';
63
56
  export * from './types/UploadSignature';
64
57
  export * from './types/Usage';
@@ -68,4 +61,4 @@ export * from './types/marketing/Concept';
68
61
  export * from './types/marketing/Content';
69
62
  export * from './types/marketing/Faq';
70
63
  export * from './types/marketing/Home';
71
- export * from './types/marketing/Page';
64
+ export * from './types/marketing/StaticPage';
package/dist/index.esm.js CHANGED
@@ -49,7 +49,7 @@ var css_248z$u = ".styles-module_container__4978M {\n max-width: 100%;\n width
49
49
  var styles$u = {"container":"styles-module_container__4978M","visible":"styles-module_visible__uvQwq","hidden":"styles-module_hidden__Oruyx","rotate":"styles-module_rotate__mmYPQ","button":"styles-module_button__BWOOi","secondary":"styles-module_secondary__Eoik3"};
50
50
  styleInject(css_248z$u);
51
51
 
52
- function AuthButton({ text, type = "submit", theme = "primary", iconName = "arrow_forward", isVisible = true, onClick }) {
52
+ function AuthButton({ id, text, type = "submit", theme = "primary", iconName = "arrow_forward", isVisible = true, onClick }) {
53
53
  return (React.createElement("div", { className: [styles$u.container, isVisible ? styles$u.visible : styles$u.hidden, ["arrow_forward"].includes(iconName) ? styles$u.rotate : null].join(" ") },
54
54
  React.createElement("button", { type: type, className: `${styles$u.button} ${styles$u[theme]}`, onClick: onClick },
55
55
  text,
@@ -60,7 +60,7 @@ var css_248z$t = ".styles-module_container__TP0rp {\n max-width: 100%;\n}\n.sty
60
60
  var styles$t = {"container":"styles-module_container__TP0rp","button":"styles-module_button__Sh-fr","blue":"styles-module_blue__DRdbo","lightBlue":"styles-module_lightBlue__7EKfp","red":"styles-module_red__EhImH","grey":"styles-module_grey__kAVD1","onlyIcon":"styles-module_onlyIcon__bNVnI"};
61
61
  styleInject(css_248z$t);
62
62
 
63
- function Button({ text, iconName, iconFill = "white", type = "blue", onClick = () => { } }) {
63
+ function Button({ id, text, iconName, iconFill = "white", type = "blue", onClick = () => { } }) {
64
64
  function onClickButton(event) {
65
65
  event.preventDefault();
66
66
  if (onClick)
@@ -76,7 +76,7 @@ var css_248z$s = ".styles-module_card__bOd85 {\n background: var(--background-2
76
76
  var styles$s = {"card":"styles-module_card__bOd85"};
77
77
  styleInject(css_248z$s);
78
78
 
79
- function CardButton({ title, iconName, onClick, }) {
79
+ function CardButton({ id, title, iconName, onClick, }) {
80
80
  function onClickCard(event) {
81
81
  event.preventDefault();
82
82
  if (onClick)
@@ -1029,23 +1029,4 @@ function UsageCard({ title, subtitle, ratio = 0, loading }) {
1029
1029
  ], lineWidth: 15, totalValue: 1 }))));
1030
1030
  }
1031
1031
 
1032
- var CourseAnnouncementAssetType;
1033
- (function (CourseAnnouncementAssetType) {
1034
- CourseAnnouncementAssetType["file"] = "file";
1035
- CourseAnnouncementAssetType["calculator"] = "calculator";
1036
- CourseAnnouncementAssetType["movie"] = "movie";
1037
- CourseAnnouncementAssetType["material"] = "material";
1038
- CourseAnnouncementAssetType["ebook"] = "ebook";
1039
- CourseAnnouncementAssetType["test"] = "test";
1040
- CourseAnnouncementAssetType["link"] = "link"; // simple external link url
1041
- })(CourseAnnouncementAssetType || (CourseAnnouncementAssetType = {}));
1042
-
1043
- var S3FileCategory;
1044
- (function (S3FileCategory) {
1045
- S3FileCategory["movies"] = "movies";
1046
- S3FileCategory["materials"] = "materials";
1047
- S3FileCategory["ebooks"] = "ebooks";
1048
- S3FileCategory["default"] = "file";
1049
- })(S3FileCategory || (S3FileCategory = {}));
1050
-
1051
- export { Accordeon, AuthButton, Button, CardButton, Checkbox, ChooseRole, ChooseRoleItem, CopyCode, CourseAnnouncementAssetType, Dialog, EmptyCard, FormButton, FormText, ForwardButton, Gap, InputArea, InputMail, InputNames, InputNumber, InputPassword, InputPin, InputText, OptionField, OptionFieldHorizontal, ProgressBar, RadioButtons, RadioOption, RedirectButton, S3FileCategory, SearchChip, SearchChips, Searchbar, Slider, SliderCard, StepBack, SvgIcon, Table, Tabs, TextWithIcon, UsageCard };
1032
+ export { Accordeon, AuthButton, Button, CardButton, Checkbox, ChooseRole, ChooseRoleItem, CopyCode, Dialog, EmptyCard, FormButton, FormText, ForwardButton, Gap, InputArea, InputMail, InputNames, InputNumber, InputPassword, InputPin, InputText, OptionField, OptionFieldHorizontal, ProgressBar, RadioButtons, RadioOption, RedirectButton, SearchChip, SearchChips, Searchbar, Slider, SliderCard, StepBack, SvgIcon, Table, Tabs, TextWithIcon, UsageCard };
@@ -1,6 +1,6 @@
1
1
  import { PortableTextBlock } from "sanity";
2
2
  import { Category } from "./Category";
3
- export interface Calculator {
3
+ export type Calculator = {
4
4
  _id: string;
5
5
  previewImage: {
6
6
  asset: {
@@ -13,4 +13,4 @@ export interface Calculator {
13
13
  shortDescription: string;
14
14
  description: PortableTextBlock[];
15
15
  categories: Category[];
16
- }
16
+ };
@@ -1,4 +1,4 @@
1
- export interface Category {
1
+ export type Category = {
2
2
  _id: string;
3
3
  title: string;
4
4
  isTopLevel: boolean;
@@ -9,4 +9,4 @@ export interface Category {
9
9
  hasPoster: boolean;
10
10
  childrenCategories: Category[];
11
11
  relatedCategories: Category[];
12
- }
12
+ };
@@ -1,7 +1,6 @@
1
- import { CourseParticipant } from "./CourseParticipant";
2
1
  import { Organization } from "./Organization";
3
2
  import { User } from "./User";
4
- export interface Course {
3
+ export type Course = {
5
4
  id: string;
6
5
  title: string;
7
6
  description: string;
@@ -14,4 +13,55 @@ export interface Course {
14
13
  courseParticipant: CourseParticipant[];
15
14
  createdAt: string;
16
15
  updatedAt: string;
17
- }
16
+ };
17
+ export type CourseAnnouncement = {
18
+ id: string;
19
+ author: User;
20
+ authorId: string;
21
+ course: Course;
22
+ courseId: string;
23
+ message: string;
24
+ CourseAnnouncementAsset: CourseAnnouncementAsset[];
25
+ createdAt: Date;
26
+ };
27
+ export type CourseAnnouncementAssetType = "file" | "calculator" | "movie" | "material" | "ebook" | "test" | "link";
28
+ export type CourseAnnouncementAsset = {
29
+ id?: string;
30
+ type: CourseAnnouncementAssetType;
31
+ link: string;
32
+ text: string;
33
+ file?: File;
34
+ fileName?: string;
35
+ fileType?: string;
36
+ fileId?: string;
37
+ fileExpire?: Date;
38
+ fileSize?: number;
39
+ createdAt?: Date;
40
+ };
41
+ export type CourseMessage = {
42
+ id: string;
43
+ author: User;
44
+ authorId: string;
45
+ course: Course;
46
+ courseId: string;
47
+ message: string;
48
+ createdAt: Date;
49
+ answerToMessage?: CourseMessage;
50
+ answers: CourseMessage[];
51
+ };
52
+ export type CourseParticipant = {
53
+ id: string;
54
+ role: string;
55
+ createdAt: string;
56
+ updatedAt: string;
57
+ userId: string;
58
+ user?: User;
59
+ };
60
+ export type CoursePin = {
61
+ id: string;
62
+ subscriptionPin: string;
63
+ amountOfUses: number;
64
+ maxAmountOfUses: number;
65
+ createdAt: Date;
66
+ validUntil: Date;
67
+ };
@@ -1,7 +1,7 @@
1
1
  import { PortableTextBlock } from "sanity";
2
2
  import { Category } from "./Category";
3
3
  import { Product } from "./Product";
4
- export interface Ebook {
4
+ export type Ebook = {
5
5
  _id: string;
6
6
  title: string;
7
7
  previewImage: {
@@ -19,4 +19,4 @@ export interface Ebook {
19
19
  shortDescription: string;
20
20
  categories: Category[];
21
21
  product?: Product;
22
- }
22
+ };
@@ -1,5 +1,5 @@
1
1
  import { User } from "./User";
2
- export interface Feedback {
2
+ export type Feedback = {
3
3
  id: string;
4
4
  user: User;
5
5
  userId: number;
@@ -8,8 +8,8 @@ export interface Feedback {
8
8
  createdAt: Date;
9
9
  updatedAt: Date;
10
10
  hallo: string;
11
- }
12
- export interface FeedbackAnswer {
11
+ };
12
+ export type FeedbackAnswer = {
13
13
  message: string;
14
14
  createdAt: Date;
15
- }
15
+ };
@@ -1,7 +1,7 @@
1
- export interface HelpData {
1
+ export type HelpData = {
2
2
  _id: string;
3
3
  title: string;
4
4
  content: any;
5
5
  openButtonText: string;
6
6
  closeButtonText: string;
7
- }
7
+ };
@@ -1,5 +1,5 @@
1
1
  import { Product } from "./Product";
2
- export interface LicenseKey {
2
+ export type LicenseKey = {
3
3
  id: string;
4
4
  product: Product;
5
5
  productId: string;
@@ -9,4 +9,4 @@ export interface LicenseKey {
9
9
  key: string;
10
10
  createdAt: string;
11
11
  redeemedOn: string;
12
- }
12
+ };
@@ -1,9 +1,10 @@
1
- export interface Log {
1
+ export type Log = {
2
2
  id: string;
3
3
  title: string;
4
4
  message: string;
5
5
  httpCode?: number;
6
6
  stack?: string;
7
- application: "math-main-app" | "math-main-manager";
7
+ application: LogApplication;
8
8
  createdAt: Date;
9
- }
9
+ };
10
+ export type LogApplication = "math-main-app" | "math-main-manager";
@@ -1,5 +1,5 @@
1
1
  import { Category } from "./Category";
2
- export interface Material {
2
+ export type Material = {
3
3
  _id: string;
4
4
  title: string;
5
5
  fileId: string;
@@ -16,4 +16,4 @@ export interface Material {
16
16
  };
17
17
  };
18
18
  categories: Category[];
19
- }
19
+ };
@@ -1,6 +1,6 @@
1
1
  import { PortableTextBlock } from "sanity";
2
2
  import { Category } from "./Category";
3
- export interface Movie {
3
+ export type Movie = {
4
4
  _id: string;
5
5
  title: string;
6
6
  previewImage: {
@@ -17,4 +17,4 @@ export interface Movie {
17
17
  shortDescription: string;
18
18
  description: PortableTextBlock[];
19
19
  categories: Category[];
20
- }
20
+ };
@@ -1,4 +1,5 @@
1
- export interface Organization {
1
+ import { User } from "./User";
2
+ export type Organization = {
2
3
  id: string;
3
4
  name: string;
4
5
  website: string;
@@ -12,4 +13,15 @@ export interface Organization {
12
13
  iconId: string;
13
14
  iconUrl: string;
14
15
  iconExpire: Date;
15
- }
16
+ };
17
+ export type OrganizationMember = {
18
+ id: string;
19
+ role: OrganizationRole;
20
+ createdAt: string;
21
+ updatedAt: string;
22
+ user: User;
23
+ userId: string;
24
+ organization: Organization;
25
+ organizationId: string;
26
+ };
27
+ export type OrganizationRole = "creator" | "admin" | "manager" | "teacher" | "student";
@@ -1,7 +1,6 @@
1
1
  import { PortableTextBlock } from "sanity";
2
2
  import { Ebook } from "./Ebook";
3
- import { ProductLimit } from "./ProductLimit";
4
- export interface Product {
3
+ export type Product = {
5
4
  _id: string;
6
5
  title: string;
7
6
  combinable: boolean;
@@ -21,4 +20,12 @@ export interface Product {
21
20
  ebooks: Ebook[];
22
21
  stripePriceId: string;
23
22
  stripeProductId: string;
24
- }
23
+ };
24
+ export type ProductLimit = {
25
+ _id: string;
26
+ _type: string;
27
+ _key: string;
28
+ type: "maxAmountOfCourses" | "maxTestsPerDay" | "maxAmountOfTestPapers";
29
+ isUnlimited: boolean;
30
+ limit: number;
31
+ };
@@ -0,0 +1,8 @@
1
+ export type S3File = {
2
+ fileId: string;
3
+ updatedAt: Date;
4
+ title: string;
5
+ description: string;
6
+ category: S3FileCategory;
7
+ };
8
+ export type S3FileCategory = 'movies' | 'materials' | 'ebooks' | 'file';
@@ -2,20 +2,21 @@ import Stripe from "stripe";
2
2
  import { Organization } from "./Organization";
3
3
  import { Product } from "./Product";
4
4
  import { User } from "./User";
5
- export interface SubscriptionFeature {
5
+ export type SubscriptionFeature = {
6
6
  type: "accessMovies" | "accessMaterials" | "accessCalculators";
7
7
  available: boolean;
8
- }
9
- export interface SubscriptionLimit {
8
+ };
9
+ export type SubscriptionLimit = {
10
10
  type: "maxAmountOfCourses" | "maxTestsPerDay" | "maxAmountOfTestPapers";
11
11
  isUnlimited: boolean;
12
12
  limit: number;
13
- }
14
- export interface SubscriptionEbook {
13
+ };
14
+ export type SubscriptionEbook = {
15
15
  id: string;
16
- }
16
+ };
17
17
  export type SubscriptionStatus = "active" | "trialing" | "canceled" | "unpaid";
18
- export interface Subscription {
18
+ export type SubscriptionType = "monthly" | "yearly";
19
+ export type Subscription = {
19
20
  id: string;
20
21
  organization?: Organization;
21
22
  organizationId: string;
@@ -26,15 +27,15 @@ export interface Subscription {
26
27
  currentPeriodPaid: boolean;
27
28
  lastPeriodPaid: boolean;
28
29
  cancelAtPeriodEnd: boolean;
29
- currentPeriodStart: string;
30
- currentPeriodEnd: string;
30
+ currentPeriodStart: Date;
31
+ currentPeriodEnd: Date;
31
32
  status: SubscriptionStatus;
32
33
  quantity: number;
33
34
  newQuantity: number;
34
35
  trialEnd: string;
35
- recurringInterval: string;
36
+ recurringInterval: SubscriptionType;
36
37
  stripeSubscriptionId: string;
37
38
  stripeSubscription: Stripe.Subscription;
38
39
  stripePaymentMethod: Stripe.PaymentMethod;
39
40
  notes: string[];
40
- }
41
+ };
@@ -1,4 +1,4 @@
1
- export interface UploadSignature {
1
+ export type UploadSignature = {
2
2
  signedUploadUrl: string;
3
3
  fileId: string;
4
- }
4
+ };
@@ -1,5 +1,5 @@
1
- export interface Usage {
1
+ export type Usage = {
2
2
  title: string;
3
3
  subtitle: string;
4
4
  ratio: number;
5
- }
5
+ };
@@ -1,6 +1,6 @@
1
1
  import { Course } from "./Course";
2
2
  import { Organization } from "./Organization";
3
- export interface User {
3
+ export type User = {
4
4
  id: string;
5
5
  email: string;
6
6
  username: string;
@@ -11,7 +11,7 @@ export interface User {
11
11
  isPasswordEnabled: boolean;
12
12
  emailVerified: boolean;
13
13
  profileImageUrl: string;
14
- settings: Object;
14
+ settings: UserSettings;
15
15
  role: string;
16
16
  courses: Course[];
17
17
  appNotifications: Object;
@@ -22,4 +22,7 @@ export interface User {
22
22
  organization: Organization;
23
23
  organizationId: string;
24
24
  organizationRole: string;
25
- }
25
+ };
26
+ export type UserSettings = {
27
+ preferredLanguage: string;
28
+ };
@@ -1,11 +1,11 @@
1
1
  import { PortableTextBlock } from "sanity";
2
- export interface About {
2
+ export type About = {
3
3
  id: number;
4
4
  quote: string;
5
5
  description: PortableTextBlock[];
6
6
  persons: Person[];
7
- }
8
- export interface Person {
7
+ };
8
+ export type Person = {
9
9
  name: string;
10
10
  role: string;
11
11
  linkedIn: string;
@@ -17,4 +17,4 @@ export interface Person {
17
17
  _type: string;
18
18
  };
19
19
  };
20
- }
20
+ };
@@ -1,8 +1,8 @@
1
- export interface BenefitForIndividuals {
1
+ export type BenefitForIndividuals = {
2
2
  _id: string;
3
3
  priority: number;
4
4
  title: string;
5
5
  subtitle: string;
6
6
  iconName: string;
7
7
  description: string;
8
- }
8
+ };
@@ -1,8 +1,8 @@
1
- export interface BenefitForSchools {
1
+ export type BenefitForSchools = {
2
2
  _id: string;
3
3
  priority: number;
4
4
  title: string;
5
5
  subtitle: string;
6
6
  iconName: string;
7
7
  description: string;
8
- }
8
+ };
@@ -1,7 +1,7 @@
1
- export interface Concept {
1
+ export type Concept = {
2
2
  _id: string;
3
3
  title: string;
4
4
  subtitle: string;
5
5
  description: string;
6
6
  iconName: string;
7
- }
7
+ };
@@ -1,5 +1,5 @@
1
1
  import { PortableTextBlock } from "sanity";
2
- export interface Content {
2
+ export type Content = {
3
3
  _id: string;
4
4
  priority: number;
5
5
  title: string;
@@ -8,8 +8,8 @@ export interface Content {
8
8
  description: PortableTextBlock[];
9
9
  isComingSoon: boolean;
10
10
  contentBuckets: ContentBucket[];
11
- }
12
- export interface ContentBucket {
11
+ };
12
+ export type ContentBucket = {
13
13
  title: string;
14
14
  description: string;
15
15
  bucket: string;
@@ -19,4 +19,4 @@ export interface ContentBucket {
19
19
  _type: string;
20
20
  };
21
21
  };
22
- }
22
+ };
@@ -1,7 +1,7 @@
1
1
  import { PortableTextBlock } from "sanity";
2
- export interface Faq {
2
+ export type Faq = {
3
3
  _id: string;
4
4
  priority: number;
5
5
  question: string;
6
6
  answer: PortableTextBlock[];
7
- }
7
+ };
@@ -1,4 +1,4 @@
1
- export interface Feature {
1
+ export type Feature = {
2
2
  _id: string;
3
3
  priority: number;
4
4
  title: string;
@@ -11,4 +11,4 @@ export interface Feature {
11
11
  _type: string;
12
12
  };
13
13
  };
14
- }
14
+ };
@@ -1,7 +1,7 @@
1
- export interface FooterLink {
1
+ export type FooterLink = {
2
2
  _id: string;
3
3
  title: string;
4
4
  link: string;
5
5
  priority: number;
6
6
  column: string;
7
- }
7
+ };
@@ -1,5 +1,5 @@
1
1
  import { PortableTextBlock } from "sanity";
2
- export interface Home {
2
+ export type Home = {
3
3
  _id: string;
4
4
  _type: string;
5
5
  helpMockup?: {
@@ -10,4 +10,14 @@ export interface Home {
10
10
  };
11
11
  helpTitle: string;
12
12
  helpDescription: PortableTextBlock[];
13
- }
13
+ quote: string;
14
+ targetGroups: TargetGroup[];
15
+ };
16
+ export type TargetGroup = {
17
+ _key: string;
18
+ _type: string;
19
+ title: string;
20
+ description: string;
21
+ iconName: string;
22
+ buttonText: string;
23
+ };
@@ -1,5 +1,5 @@
1
1
  import { PortableTextBlock } from "sanity";
2
- export interface News {
2
+ export type News = {
3
3
  _id: string;
4
4
  visible: boolean;
5
5
  headline: string;
@@ -16,4 +16,4 @@ export interface News {
16
16
  content: PortableTextBlock[];
17
17
  short: PortableTextBlock[];
18
18
  type: 'press' | 'update' | 'short';
19
- }
19
+ };
@@ -1,6 +1,6 @@
1
1
  import { PortableTextBlock } from "sanity";
2
2
  import { Product } from "../Product";
3
- export interface Pricing {
3
+ export type Pricing = {
4
4
  _id: string;
5
5
  title: string;
6
6
  position: PricingPosition;
@@ -13,6 +13,6 @@ export interface Pricing {
13
13
  product: Product;
14
14
  enableMoreInfoLink: boolean;
15
15
  moreInfoLink: string;
16
- }
16
+ };
17
17
  type PricingPosition = 'personal-left' | 'personal-right' | 'schools-left' | 'schools-right';
18
18
  export {};
@@ -0,0 +1,8 @@
1
+ import { PortableTextBlock } from "sanity";
2
+ export type StaticPage = {
3
+ title: string;
4
+ slug: {
5
+ current: string;
6
+ };
7
+ content: PortableTextBlock[];
8
+ };
@@ -0,0 +1,23 @@
1
+ export type Website = {
2
+ _id: string;
3
+ heroDescription: string;
4
+ heroTitle: string;
5
+ title: string;
6
+ copyright: string;
7
+ footerLeftColumn: string;
8
+ footerMiddleColumn: string;
9
+ footerRightColumn: string;
10
+ textBelowSchoolPricing: [];
11
+ defaultPersonalProduct: {
12
+ _ref: string;
13
+ };
14
+ defaultOrganizationProduct: {
15
+ _ref: string;
16
+ };
17
+ discordInviteLink: string;
18
+ betaEnabled: boolean;
19
+ testsEnabled: boolean;
20
+ moviesEnabled: boolean;
21
+ calculatorsEnabled: boolean;
22
+ materialsEnabled: boolean;
23
+ };
@@ -1,4 +1,4 @@
1
- export interface WebsiteData {
1
+ export interface Website {
2
2
  _id: string;
3
3
  heroDescription: string;
4
4
  heroTitle: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "math-main-components",
3
- "version": "0.0.144",
3
+ "version": "0.0.147",
4
4
  "author": "Emilian Scheel",
5
5
  "files": [
6
6
  "dist/**/*"