@tietokilta/ilmomasiina-models 2.0.0 → 2.1.0-beta.2

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 (121) hide show
  1. package/dist/cjs/schema/auditLog/attributes.d.ts +12 -11
  2. package/dist/cjs/schema/auditLog/attributes.d.ts.map +1 -1
  3. package/dist/cjs/schema/auditLog/attributes.js +1 -1
  4. package/dist/cjs/schema/auditLog/index.d.ts +24 -22
  5. package/dist/cjs/schema/auditLog/index.d.ts.map +1 -1
  6. package/dist/cjs/schema/auditLog/index.js +5 -3
  7. package/dist/cjs/schema/category/index.d.ts +3 -3
  8. package/dist/cjs/schema/category/index.d.ts.map +1 -1
  9. package/dist/cjs/schema/category/index.js +1 -1
  10. package/dist/cjs/schema/errors/index.d.ts +31 -31
  11. package/dist/cjs/schema/errors/index.d.ts.map +1 -1
  12. package/dist/cjs/schema/errors/index.js +19 -28
  13. package/dist/cjs/schema/event/attributes.d.ts +88 -87
  14. package/dist/cjs/schema/event/attributes.d.ts.map +1 -1
  15. package/dist/cjs/schema/event/attributes.js +3 -7
  16. package/dist/cjs/schema/event/index.d.ts +256 -256
  17. package/dist/cjs/schema/event/index.d.ts.map +1 -1
  18. package/dist/cjs/schema/event/index.js +39 -63
  19. package/dist/cjs/schema/eventList/index.d.ts +128 -128
  20. package/dist/cjs/schema/eventList/index.d.ts.map +1 -1
  21. package/dist/cjs/schema/eventList/index.js +9 -21
  22. package/dist/cjs/schema/login/index.d.ts +6 -6
  23. package/dist/cjs/schema/login/index.d.ts.map +1 -1
  24. package/dist/cjs/schema/login/index.js +1 -1
  25. package/dist/cjs/schema/question/attributes.d.ts +15 -12
  26. package/dist/cjs/schema/question/attributes.d.ts.map +1 -1
  27. package/dist/cjs/schema/question/attributes.js +5 -4
  28. package/dist/cjs/schema/question/index.d.ts +25 -25
  29. package/dist/cjs/schema/question/index.d.ts.map +1 -1
  30. package/dist/cjs/schema/question/index.js +5 -4
  31. package/dist/cjs/schema/quota/attributes.d.ts +9 -8
  32. package/dist/cjs/schema/quota/attributes.d.ts.map +1 -1
  33. package/dist/cjs/schema/quota/attributes.js +1 -1
  34. package/dist/cjs/schema/quota/index.d.ts +14 -14
  35. package/dist/cjs/schema/quota/index.d.ts.map +1 -1
  36. package/dist/cjs/schema/quota/index.js +3 -3
  37. package/dist/cjs/schema/quotaWithSignups/index.d.ts +40 -40
  38. package/dist/cjs/schema/quotaWithSignups/index.d.ts.map +1 -1
  39. package/dist/cjs/schema/quotaWithSignups/index.js +13 -22
  40. package/dist/cjs/schema/signup/attributes.d.ts +28 -27
  41. package/dist/cjs/schema/signup/attributes.d.ts.map +1 -1
  42. package/dist/cjs/schema/signup/attributes.js +1 -1
  43. package/dist/cjs/schema/signup/index.d.ts +64 -64
  44. package/dist/cjs/schema/signup/index.d.ts.map +1 -1
  45. package/dist/cjs/schema/signup/index.js +6 -9
  46. package/dist/cjs/schema/signupForEdit/index.d.ts +82 -82
  47. package/dist/cjs/schema/signupForEdit/index.d.ts.map +1 -1
  48. package/dist/cjs/schema/signupForEdit/index.js +9 -14
  49. package/dist/cjs/schema/slug/index.d.ts +6 -6
  50. package/dist/cjs/schema/slug/index.d.ts.map +1 -1
  51. package/dist/cjs/schema/slug/index.js +1 -1
  52. package/dist/cjs/schema/user/attributes.d.ts +8 -7
  53. package/dist/cjs/schema/user/attributes.d.ts.map +1 -1
  54. package/dist/cjs/schema/user/attributes.js +1 -1
  55. package/dist/cjs/schema/user/index.d.ts +17 -17
  56. package/dist/cjs/schema/user/index.d.ts.map +1 -1
  57. package/dist/cjs/schema/user/index.js +6 -9
  58. package/dist/cjs/schema/utils.d.ts +2 -2
  59. package/dist/cjs/schema/utils.d.ts.map +1 -1
  60. package/dist/cjs/schema/utils.js +1 -1
  61. package/dist/esm/schema/auditLog/attributes.d.ts +12 -11
  62. package/dist/esm/schema/auditLog/attributes.d.ts.map +1 -1
  63. package/dist/esm/schema/auditLog/attributes.js +1 -1
  64. package/dist/esm/schema/auditLog/index.d.ts +24 -22
  65. package/dist/esm/schema/auditLog/index.d.ts.map +1 -1
  66. package/dist/esm/schema/auditLog/index.js +4 -2
  67. package/dist/esm/schema/category/index.d.ts +3 -3
  68. package/dist/esm/schema/category/index.d.ts.map +1 -1
  69. package/dist/esm/schema/category/index.js +1 -1
  70. package/dist/esm/schema/errors/index.d.ts +31 -31
  71. package/dist/esm/schema/errors/index.d.ts.map +1 -1
  72. package/dist/esm/schema/errors/index.js +19 -28
  73. package/dist/esm/schema/event/attributes.d.ts +88 -87
  74. package/dist/esm/schema/event/attributes.d.ts.map +1 -1
  75. package/dist/esm/schema/event/attributes.js +3 -7
  76. package/dist/esm/schema/event/index.d.ts +256 -256
  77. package/dist/esm/schema/event/index.d.ts.map +1 -1
  78. package/dist/esm/schema/event/index.js +39 -63
  79. package/dist/esm/schema/eventList/index.d.ts +128 -128
  80. package/dist/esm/schema/eventList/index.d.ts.map +1 -1
  81. package/dist/esm/schema/eventList/index.js +9 -21
  82. package/dist/esm/schema/login/index.d.ts +6 -6
  83. package/dist/esm/schema/login/index.d.ts.map +1 -1
  84. package/dist/esm/schema/login/index.js +1 -1
  85. package/dist/esm/schema/question/attributes.d.ts +15 -12
  86. package/dist/esm/schema/question/attributes.d.ts.map +1 -1
  87. package/dist/esm/schema/question/attributes.js +4 -3
  88. package/dist/esm/schema/question/index.d.ts +25 -25
  89. package/dist/esm/schema/question/index.d.ts.map +1 -1
  90. package/dist/esm/schema/question/index.js +4 -4
  91. package/dist/esm/schema/quota/attributes.d.ts +9 -8
  92. package/dist/esm/schema/quota/attributes.d.ts.map +1 -1
  93. package/dist/esm/schema/quota/attributes.js +1 -1
  94. package/dist/esm/schema/quota/index.d.ts +14 -14
  95. package/dist/esm/schema/quota/index.d.ts.map +1 -1
  96. package/dist/esm/schema/quota/index.js +3 -3
  97. package/dist/esm/schema/quotaWithSignups/index.d.ts +40 -40
  98. package/dist/esm/schema/quotaWithSignups/index.d.ts.map +1 -1
  99. package/dist/esm/schema/quotaWithSignups/index.js +13 -22
  100. package/dist/esm/schema/signup/attributes.d.ts +28 -27
  101. package/dist/esm/schema/signup/attributes.d.ts.map +1 -1
  102. package/dist/esm/schema/signup/attributes.js +1 -1
  103. package/dist/esm/schema/signup/index.d.ts +64 -64
  104. package/dist/esm/schema/signup/index.d.ts.map +1 -1
  105. package/dist/esm/schema/signup/index.js +6 -9
  106. package/dist/esm/schema/signupForEdit/index.d.ts +82 -82
  107. package/dist/esm/schema/signupForEdit/index.d.ts.map +1 -1
  108. package/dist/esm/schema/signupForEdit/index.js +9 -14
  109. package/dist/esm/schema/slug/index.d.ts +6 -6
  110. package/dist/esm/schema/slug/index.d.ts.map +1 -1
  111. package/dist/esm/schema/slug/index.js +1 -1
  112. package/dist/esm/schema/user/attributes.d.ts +8 -7
  113. package/dist/esm/schema/user/attributes.d.ts.map +1 -1
  114. package/dist/esm/schema/user/attributes.js +1 -1
  115. package/dist/esm/schema/user/index.d.ts +17 -17
  116. package/dist/esm/schema/user/index.d.ts.map +1 -1
  117. package/dist/esm/schema/user/index.js +6 -9
  118. package/dist/esm/schema/utils.d.ts +2 -2
  119. package/dist/esm/schema/utils.d.ts.map +1 -1
  120. package/dist/esm/schema/utils.js +1 -1
  121. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schema/event/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAMjD,OAAO,EAEL,kBAAkB,EAGlB,OAAO,EAEP,SAAS,EAGT,iBAAiB,EAElB,MAAM,cAAc,CAAC;AAKtB,iEAAiE;AACjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa5B,CAAC;AAEH,8EAA8E;AAC9E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO7B,CAAC;AAWH,2EAA2E;AAC3E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW7B,CAAC;AAEH,0CAA0C;AAC1C,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM1B,CAAC;AAEH,kDAAkD;AAClD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkB3B,CAAC;AAEF,uEAAuE;AACvE,eAAO,MAAM,mBAAmB;;EAE9B,CAAC;AAEH,sEAAsE;AACtE,eAAO,MAAM,oBAAoB;;EAE/B,CAAC;AAEH,6DAA6D;AAC7D,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,OAAO,CAAC,CAAC;AAC7C,uBAAuB;AACvB,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC;AAEjD,sEAAsE;AACtE,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACvE,uEAAuE;AACvE,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAErE,0CAA0C;AAC1C,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAC7D,kDAAkD;AAClD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAE7D,2EAA2E;AAC3E,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACnE,iEAAiE;AACjE,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE,uDAAuD;AACvD,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACnE,4CAA4C;AAC5C,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schema/event/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAMvC,OAAO,EAEL,kBAAkB,EAGlB,OAAO,EAEP,SAAS,EAGT,iBAAiB,EAElB,MAAM,cAAc,CAAC;AAKtB,iEAAiE;AACjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS5B,CAAC;AAEH,8EAA8E;AAC9E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG7B,CAAC;AAQH,2EAA2E;AAC3E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO7B,CAAC;AAEH,0CAA0C;AAC1C,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG1B,CAAC;AAEH,kDAAkD;AAClD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe3B,CAAC;AAEF,uEAAuE;AACvE,eAAO,MAAM,mBAAmB;;EAE9B,CAAC;AAEH,sEAAsE;AACtE,eAAO,MAAM,oBAAoB;;EAE/B,CAAC;AAEH,6DAA6D;AAC7D,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,OAAO,CAAC,CAAC;AAC7C,uBAAuB;AACvB,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC;AAEjD,sEAAsE;AACtE,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACvE,uEAAuE;AACvE,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAErE,0CAA0C;AAC1C,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAC7D,kDAAkD;AAClD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAE7D,2EAA2E;AAC3E,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACnE,iEAAiE;AACjE,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE,uDAAuD;AACvD,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACnE,4CAA4C;AAC5C,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -1,81 +1,57 @@
1
- import { Type } from "@sinclair/typebox";
1
+ import { Type } from "typebox";
2
2
  import { question, questionCreate, questionUpdate } from "../question";
3
3
  import { quota, quotaCreate, quotaUpdate } from "../quota";
4
4
  import { adminQuotaWithSignups, userQuotaWithSignups } from "../quotaWithSignups";
5
5
  import { Nullable } from "../utils";
6
6
  import { adminDetailsOnlyCommonAttributes, adminEventLanguages, adminOnlyEventAttributes, eventID, eventIdentity, eventSlug, publicCommonAttributes, publicEventAttributes, userEventLanguages, } from "./attributes";
7
7
  /** Non-relation attributes for the public API. */
8
- const publicAttributes = Type.Composite([publicEventAttributes, publicCommonAttributes, userEventLanguages]);
8
+ const publicAttributes = Type.Interface([publicEventAttributes, publicCommonAttributes, userEventLanguages], {});
9
9
  /** Response schema for fetching an event from the public API. */
10
- export const userEventResponse = Type.Composite([
11
- eventIdentity,
12
- publicAttributes,
13
- Type.Object({
14
- questions: Type.Array(question),
15
- quotas: Type.Array(userQuotaWithSignups),
16
- millisTillOpening: Nullable(Type.Integer(), {
17
- description: "Time in ms until signup opens. If null, the signup will not open in the future.",
18
- }),
19
- registrationClosed: Type.Boolean({
20
- description: "Whether the signup has closed.",
21
- }),
10
+ export const userEventResponse = Type.Interface([eventIdentity, publicAttributes], {
11
+ questions: Type.Array(question),
12
+ quotas: Type.Array(userQuotaWithSignups),
13
+ millisTillOpening: Nullable(Type.Integer(), {
14
+ description: "Time in ms until signup opens. If null, the signup will not open in the future.",
22
15
  }),
23
- ]);
24
- /** Response schema when an event is fetched as part of an editable signup. */
25
- export const userEventForSignup = Type.Composite([
26
- eventIdentity,
27
- publicAttributes,
28
- Type.Object({
29
- questions: Type.Array(question),
30
- quotas: Type.Array(quota),
16
+ registrationClosed: Type.Boolean({
17
+ description: "Whether the signup has closed.",
31
18
  }),
32
- ]);
19
+ });
20
+ /** Response schema when an event is fetched as part of an editable signup. */
21
+ export const userEventForSignup = Type.Interface([eventIdentity, publicAttributes], {
22
+ questions: Type.Array(question),
23
+ quotas: Type.Array(quota),
24
+ });
33
25
  /** Non-relation attributes for the admin API. */
34
- const adminAttributes = Type.Composite([
35
- publicEventAttributes,
36
- publicCommonAttributes,
37
- adminOnlyEventAttributes,
38
- adminDetailsOnlyCommonAttributes,
39
- adminEventLanguages,
40
- ]);
26
+ const adminAttributes = Type.Interface([publicEventAttributes, publicCommonAttributes, adminOnlyEventAttributes, adminDetailsOnlyCommonAttributes, adminEventLanguages], {});
41
27
  /** Response schema for fetching or modifying an event in the admin API. */
42
- export const adminEventResponse = Type.Composite([
43
- eventIdentity,
44
- adminAttributes,
45
- Type.Object({
46
- questions: Type.Array(question),
47
- quotas: Type.Array(adminQuotaWithSignups),
48
- updatedAt: Type.String({
49
- description: "Last update time of the event. Used for edit conflict handling.",
50
- format: "date-time",
51
- }),
28
+ export const adminEventResponse = Type.Interface([eventIdentity, adminAttributes], {
29
+ questions: Type.Array(question),
30
+ quotas: Type.Array(adminQuotaWithSignups),
31
+ updatedAt: Type.String({
32
+ description: "Last update time of the event. Used for edit conflict handling.",
33
+ format: "date-time",
52
34
  }),
53
- ]);
35
+ });
54
36
  /** Request body for creating an event. */
55
- export const eventCreateBody = Type.Composite([
56
- adminAttributes,
57
- Type.Object({
58
- quotas: Type.Array(quotaCreate),
59
- questions: Type.Array(questionCreate),
60
- }),
61
- ]);
37
+ export const eventCreateBody = Type.Interface([adminAttributes], {
38
+ quotas: Type.Array(quotaCreate),
39
+ questions: Type.Array(questionCreate),
40
+ });
62
41
  /** Request body for editing an existing event. */
63
- export const eventUpdateBody = Type.Partial(Type.Composite([
64
- adminAttributes,
65
- Type.Object({
66
- quotas: Type.Array(quotaUpdate),
67
- questions: Type.Array(questionUpdate),
68
- moveSignupsToQueue: Type.Boolean({
69
- default: false,
70
- description: "Whether to allow moving signups to the queue, if caused by quota changes.",
71
- }),
72
- updatedAt: Type.String({
73
- format: "date-time",
74
- description: "Last update time of the event. An edit conflict is detected if this does not match the update " +
75
- "date on the server.",
76
- }),
42
+ export const eventUpdateBody = Type.Partial(Type.Interface([adminAttributes], {
43
+ quotas: Type.Array(quotaUpdate),
44
+ questions: Type.Array(questionUpdate),
45
+ moveSignupsToQueue: Type.Boolean({
46
+ default: false,
47
+ description: "Whether to allow moving signups to the queue, if caused by quota changes.",
48
+ }),
49
+ updatedAt: Type.String({
50
+ format: "date-time",
51
+ description: "Last update time of the event. An edit conflict is detected if this does not match the update " +
52
+ "date on the server.",
77
53
  }),
78
- ]));
54
+ }));
79
55
  /** Path parameters necessary to fetch an event from the public API. */
80
56
  export const userEventPathParams = Type.Object({
81
57
  slug: eventSlug,
@@ -1,150 +1,150 @@
1
- import { Static } from "@sinclair/typebox";
1
+ import { Static, Type } from "typebox";
2
2
  /** Schema for an item of an event list from the public API. */
3
- declare const userEventListItem: import("@sinclair/typebox").TObject<{
4
- id: import("@sinclair/typebox").TString;
5
- title: import("@sinclair/typebox").TString;
6
- date: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
7
- slug: import("@sinclair/typebox").TString;
8
- endDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
9
- registrationStartDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
10
- registrationEndDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
11
- openQuotaSize: import("@sinclair/typebox").TInteger;
12
- category: import("@sinclair/typebox").TString;
13
- signupsPublic: import("@sinclair/typebox").TBoolean;
14
- nameQuestion: import("@sinclair/typebox").TBoolean;
15
- emailQuestion: import("@sinclair/typebox").TBoolean;
16
- defaultLanguage: import("@sinclair/typebox").TString;
17
- description: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
18
- price: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
19
- location: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
20
- webpageUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
21
- facebookUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
22
- languages: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
23
- description: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
24
- price: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
25
- location: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
26
- webpageUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
27
- facebookUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
28
- title: import("@sinclair/typebox").TString;
29
- quotas: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
30
- title: import("@sinclair/typebox").TString;
3
+ declare const userEventListItem: Type.TObject<{
4
+ id: Type.TString;
5
+ title: Type.TString;
6
+ slug: Type.TString;
7
+ date: Type.TUnion<[Type.TString, Type.TNull]>;
8
+ endDate: Type.TUnion<[Type.TString, Type.TNull]>;
9
+ registrationStartDate: Type.TUnion<[Type.TString, Type.TNull]>;
10
+ registrationEndDate: Type.TUnion<[Type.TString, Type.TNull]>;
11
+ openQuotaSize: Type.TInteger;
12
+ category: Type.TString;
13
+ signupsPublic: Type.TBoolean;
14
+ nameQuestion: Type.TBoolean;
15
+ emailQuestion: Type.TBoolean;
16
+ defaultLanguage: Type.TString;
17
+ description: Type.TUnion<[Type.TString, Type.TNull]>;
18
+ price: Type.TUnion<[Type.TString, Type.TNull]>;
19
+ location: Type.TUnion<[Type.TString, Type.TNull]>;
20
+ webpageUrl: Type.TUnion<[Type.TString, Type.TNull]>;
21
+ facebookUrl: Type.TUnion<[Type.TString, Type.TNull]>;
22
+ languages: Type.TRecord<"^.*$", Type.TObject<{
23
+ description: Type.TUnion<[Type.TString, Type.TNull]>;
24
+ price: Type.TUnion<[Type.TString, Type.TNull]>;
25
+ location: Type.TUnion<[Type.TString, Type.TNull]>;
26
+ webpageUrl: Type.TUnion<[Type.TString, Type.TNull]>;
27
+ facebookUrl: Type.TUnion<[Type.TString, Type.TNull]>;
28
+ title: Type.TString;
29
+ quotas: Type.TArray<Type.TObject<{
30
+ title: Type.TString;
31
31
  }>>;
32
- questions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
33
- question: import("@sinclair/typebox").TString;
34
- options: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>, import("@sinclair/typebox").TNull]>;
32
+ questions: Type.TArray<Type.TObject<{
33
+ question: Type.TString;
34
+ options: Type.TUnion<[Type.TArray<Type.TString>, Type.TNull]>;
35
35
  }>>;
36
36
  }>>;
37
- quotas: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
38
- id: import("@sinclair/typebox").TString;
39
- title: import("@sinclair/typebox").TString;
40
- size: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
41
- signupCount: import("@sinclair/typebox").TInteger;
37
+ quotas: Type.TArray<Type.TObject<{
38
+ id: Type.TString;
39
+ title: Type.TString;
40
+ size: Type.TUnion<[Type.TInteger, Type.TNull]>;
41
+ signupCount: Type.TInteger;
42
42
  }>>;
43
43
  }>;
44
44
  /** Response schema for fetching a list of events from the public API. */
45
- export declare const userEventListResponse: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
46
- id: import("@sinclair/typebox").TString;
47
- title: import("@sinclair/typebox").TString;
48
- date: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
49
- slug: import("@sinclair/typebox").TString;
50
- endDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
51
- registrationStartDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
52
- registrationEndDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
53
- openQuotaSize: import("@sinclair/typebox").TInteger;
54
- category: import("@sinclair/typebox").TString;
55
- signupsPublic: import("@sinclair/typebox").TBoolean;
56
- nameQuestion: import("@sinclair/typebox").TBoolean;
57
- emailQuestion: import("@sinclair/typebox").TBoolean;
58
- defaultLanguage: import("@sinclair/typebox").TString;
59
- description: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
60
- price: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
61
- location: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
62
- webpageUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
63
- facebookUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
64
- languages: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
65
- description: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
66
- price: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
67
- location: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
68
- webpageUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
69
- facebookUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
70
- title: import("@sinclair/typebox").TString;
71
- quotas: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
72
- title: import("@sinclair/typebox").TString;
45
+ export declare const userEventListResponse: Type.TArray<Type.TObject<{
46
+ id: Type.TString;
47
+ title: Type.TString;
48
+ slug: Type.TString;
49
+ date: Type.TUnion<[Type.TString, Type.TNull]>;
50
+ endDate: Type.TUnion<[Type.TString, Type.TNull]>;
51
+ registrationStartDate: Type.TUnion<[Type.TString, Type.TNull]>;
52
+ registrationEndDate: Type.TUnion<[Type.TString, Type.TNull]>;
53
+ openQuotaSize: Type.TInteger;
54
+ category: Type.TString;
55
+ signupsPublic: Type.TBoolean;
56
+ nameQuestion: Type.TBoolean;
57
+ emailQuestion: Type.TBoolean;
58
+ defaultLanguage: Type.TString;
59
+ description: Type.TUnion<[Type.TString, Type.TNull]>;
60
+ price: Type.TUnion<[Type.TString, Type.TNull]>;
61
+ location: Type.TUnion<[Type.TString, Type.TNull]>;
62
+ webpageUrl: Type.TUnion<[Type.TString, Type.TNull]>;
63
+ facebookUrl: Type.TUnion<[Type.TString, Type.TNull]>;
64
+ languages: Type.TRecord<"^.*$", Type.TObject<{
65
+ description: Type.TUnion<[Type.TString, Type.TNull]>;
66
+ price: Type.TUnion<[Type.TString, Type.TNull]>;
67
+ location: Type.TUnion<[Type.TString, Type.TNull]>;
68
+ webpageUrl: Type.TUnion<[Type.TString, Type.TNull]>;
69
+ facebookUrl: Type.TUnion<[Type.TString, Type.TNull]>;
70
+ title: Type.TString;
71
+ quotas: Type.TArray<Type.TObject<{
72
+ title: Type.TString;
73
73
  }>>;
74
- questions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
75
- question: import("@sinclair/typebox").TString;
76
- options: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>, import("@sinclair/typebox").TNull]>;
74
+ questions: Type.TArray<Type.TObject<{
75
+ question: Type.TString;
76
+ options: Type.TUnion<[Type.TArray<Type.TString>, Type.TNull]>;
77
77
  }>>;
78
78
  }>>;
79
- quotas: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
80
- id: import("@sinclair/typebox").TString;
81
- title: import("@sinclair/typebox").TString;
82
- size: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
83
- signupCount: import("@sinclair/typebox").TInteger;
79
+ quotas: Type.TArray<Type.TObject<{
80
+ id: Type.TString;
81
+ title: Type.TString;
82
+ size: Type.TUnion<[Type.TInteger, Type.TNull]>;
83
+ signupCount: Type.TInteger;
84
84
  }>>;
85
85
  }>>;
86
86
  /** Schema for an item of an event list from the admin API. */
87
- declare const adminEventListItem: import("@sinclair/typebox").TObject<{
88
- id: import("@sinclair/typebox").TString;
89
- title: import("@sinclair/typebox").TString;
90
- date: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
91
- slug: import("@sinclair/typebox").TString;
92
- endDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
93
- registrationStartDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
94
- registrationEndDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
95
- openQuotaSize: import("@sinclair/typebox").TInteger;
96
- category: import("@sinclair/typebox").TString;
97
- signupsPublic: import("@sinclair/typebox").TBoolean;
98
- nameQuestion: import("@sinclair/typebox").TBoolean;
99
- emailQuestion: import("@sinclair/typebox").TBoolean;
100
- defaultLanguage: import("@sinclair/typebox").TString;
101
- description: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
102
- price: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
103
- location: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
104
- webpageUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
105
- facebookUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
106
- draft: import("@sinclair/typebox").TBoolean;
107
- listed: import("@sinclair/typebox").TBoolean;
108
- quotas: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
109
- id: import("@sinclair/typebox").TString;
110
- title: import("@sinclair/typebox").TString;
111
- size: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
112
- signupCount: import("@sinclair/typebox").TInteger;
87
+ declare const adminEventListItem: Type.TObject<{
88
+ id: Type.TString;
89
+ title: Type.TString;
90
+ slug: Type.TString;
91
+ date: Type.TUnion<[Type.TString, Type.TNull]>;
92
+ endDate: Type.TUnion<[Type.TString, Type.TNull]>;
93
+ registrationStartDate: Type.TUnion<[Type.TString, Type.TNull]>;
94
+ registrationEndDate: Type.TUnion<[Type.TString, Type.TNull]>;
95
+ openQuotaSize: Type.TInteger;
96
+ category: Type.TString;
97
+ signupsPublic: Type.TBoolean;
98
+ nameQuestion: Type.TBoolean;
99
+ emailQuestion: Type.TBoolean;
100
+ defaultLanguage: Type.TString;
101
+ description: Type.TUnion<[Type.TString, Type.TNull]>;
102
+ price: Type.TUnion<[Type.TString, Type.TNull]>;
103
+ location: Type.TUnion<[Type.TString, Type.TNull]>;
104
+ webpageUrl: Type.TUnion<[Type.TString, Type.TNull]>;
105
+ facebookUrl: Type.TUnion<[Type.TString, Type.TNull]>;
106
+ draft: Type.TBoolean;
107
+ listed: Type.TBoolean;
108
+ quotas: Type.TArray<Type.TObject<{
109
+ id: Type.TString;
110
+ title: Type.TString;
111
+ size: Type.TUnion<[Type.TInteger, Type.TNull]>;
112
+ signupCount: Type.TInteger;
113
113
  }>>;
114
114
  }>;
115
115
  /** Response schema for fetching a list of events from the admin API. */
116
- export declare const adminEventListResponse: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
117
- id: import("@sinclair/typebox").TString;
118
- title: import("@sinclair/typebox").TString;
119
- date: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
120
- slug: import("@sinclair/typebox").TString;
121
- endDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
122
- registrationStartDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
123
- registrationEndDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
124
- openQuotaSize: import("@sinclair/typebox").TInteger;
125
- category: import("@sinclair/typebox").TString;
126
- signupsPublic: import("@sinclair/typebox").TBoolean;
127
- nameQuestion: import("@sinclair/typebox").TBoolean;
128
- emailQuestion: import("@sinclair/typebox").TBoolean;
129
- defaultLanguage: import("@sinclair/typebox").TString;
130
- description: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
131
- price: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
132
- location: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
133
- webpageUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
134
- facebookUrl: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
135
- draft: import("@sinclair/typebox").TBoolean;
136
- listed: import("@sinclair/typebox").TBoolean;
137
- quotas: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
138
- id: import("@sinclair/typebox").TString;
139
- title: import("@sinclair/typebox").TString;
140
- size: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
141
- signupCount: import("@sinclair/typebox").TInteger;
116
+ export declare const adminEventListResponse: Type.TArray<Type.TObject<{
117
+ id: Type.TString;
118
+ title: Type.TString;
119
+ slug: Type.TString;
120
+ date: Type.TUnion<[Type.TString, Type.TNull]>;
121
+ endDate: Type.TUnion<[Type.TString, Type.TNull]>;
122
+ registrationStartDate: Type.TUnion<[Type.TString, Type.TNull]>;
123
+ registrationEndDate: Type.TUnion<[Type.TString, Type.TNull]>;
124
+ openQuotaSize: Type.TInteger;
125
+ category: Type.TString;
126
+ signupsPublic: Type.TBoolean;
127
+ nameQuestion: Type.TBoolean;
128
+ emailQuestion: Type.TBoolean;
129
+ defaultLanguage: Type.TString;
130
+ description: Type.TUnion<[Type.TString, Type.TNull]>;
131
+ price: Type.TUnion<[Type.TString, Type.TNull]>;
132
+ location: Type.TUnion<[Type.TString, Type.TNull]>;
133
+ webpageUrl: Type.TUnion<[Type.TString, Type.TNull]>;
134
+ facebookUrl: Type.TUnion<[Type.TString, Type.TNull]>;
135
+ draft: Type.TBoolean;
136
+ listed: Type.TBoolean;
137
+ quotas: Type.TArray<Type.TObject<{
138
+ id: Type.TString;
139
+ title: Type.TString;
140
+ size: Type.TUnion<[Type.TInteger, Type.TNull]>;
141
+ signupCount: Type.TInteger;
142
142
  }>>;
143
143
  }>>;
144
144
  /** Query parameters applicable to the public event list API. */
145
- export declare const eventListQuery: import("@sinclair/typebox").TObject<{
146
- category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
147
- maxAge: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
145
+ export declare const eventListQuery: Type.TObject<{
146
+ category: Type.TOptional<Type.TString>;
147
+ maxAge: Type.TOptional<Type.TInteger>;
148
148
  }>;
149
149
  /** Query parameters applicable to the public event list API. */
150
150
  export type EventListQuery = Static<typeof eventListQuery>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schema/eventList/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAWjD,+DAA+D;AAC/D,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUrB,CAAC;AAEH,yEAAyE;AACzE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAgC,CAAC;AAEnE,8DAA8D;AAC9D,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUtB,CAAC;AAEH,wEAAwE;AACxE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAiC,CAAC;AAErE,gEAAgE;AAChE,eAAO,MAAM,cAAc;;;EAWzB,CAAC;AAEH,gEAAgE;AAChE,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAE3D,yEAAyE;AACzE,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACzE,+DAA+D;AAC/D,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AACjE,wEAAwE;AACxE,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC3E,8DAA8D;AAC9D,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schema/eventList/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAWvC,+DAA+D;AAC/D,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOtB,CAAC;AAEF,yEAAyE;AACzE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAgC,CAAC;AAEnE,8DAA8D;AAC9D,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOvB,CAAC;AAEF,wEAAwE;AACxE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAiC,CAAC;AAErE,gEAAgE;AAChE,eAAO,MAAM,cAAc;;;EAWzB,CAAC;AAEH,gEAAgE;AAChE,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAE3D,yEAAyE;AACzE,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACzE,+DAA+D;AAC/D,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AACjE,wEAAwE;AACxE,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC3E,8DAA8D;AAC9D,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -1,32 +1,20 @@
1
- import { Type } from "@sinclair/typebox";
1
+ import { Type } from "typebox";
2
2
  import { adminOnlyEventAttributes, eventIdentity, publicCommonAttributes, publicEventAttributes, userEventLanguages, } from "../event/attributes";
3
3
  import { quotaWithSignupCount } from "../quotaWithSignups";
4
4
  /** Schema for an item of an event list from the public API. */
5
- const userEventListItem = Type.Composite([
6
- eventIdentity,
7
- publicEventAttributes,
8
- publicCommonAttributes,
9
- userEventLanguages,
10
- Type.Object({
11
- quotas: Type.Array(quotaWithSignupCount, {
12
- description: "The quotas in this event, with signup counts.",
13
- }),
5
+ const userEventListItem = Type.Interface([eventIdentity, publicEventAttributes, publicCommonAttributes, userEventLanguages], {
6
+ quotas: Type.Array(quotaWithSignupCount, {
7
+ description: "The quotas in this event, with signup counts.",
14
8
  }),
15
- ]);
9
+ });
16
10
  /** Response schema for fetching a list of events from the public API. */
17
11
  export const userEventListResponse = Type.Array(userEventListItem);
18
12
  /** Schema for an item of an event list from the admin API. */
19
- const adminEventListItem = Type.Composite([
20
- eventIdentity,
21
- publicEventAttributes,
22
- publicCommonAttributes,
23
- adminOnlyEventAttributes,
24
- Type.Object({
25
- quotas: Type.Array(quotaWithSignupCount, {
26
- description: "The quotas in this event, with signup counts.",
27
- }),
13
+ const adminEventListItem = Type.Interface([eventIdentity, publicEventAttributes, publicCommonAttributes, adminOnlyEventAttributes], {
14
+ quotas: Type.Array(quotaWithSignupCount, {
15
+ description: "The quotas in this event, with signup counts.",
28
16
  }),
29
- ]);
17
+ });
30
18
  /** Response schema for fetching a list of events from the admin API. */
31
19
  export const adminEventListResponse = Type.Array(adminEventListItem);
32
20
  /** Query parameters applicable to the public event list API. */
@@ -1,12 +1,12 @@
1
- import { Static } from "@sinclair/typebox";
1
+ import { Static, Type } from "typebox";
2
2
  /** Request body for login. */
3
- export declare const adminLoginBody: import("@sinclair/typebox").TObject<{
4
- email: import("@sinclair/typebox").TString;
5
- password: import("@sinclair/typebox").TString;
3
+ export declare const adminLoginBody: Type.TObject<{
4
+ email: Type.TString;
5
+ password: Type.TString;
6
6
  }>;
7
7
  /** Response schema for a successful login. */
8
- export declare const adminLoginResponse: import("@sinclair/typebox").TObject<{
9
- accessToken: import("@sinclair/typebox").TString;
8
+ export declare const adminLoginResponse: Type.TObject<{
9
+ accessToken: Type.TString;
10
10
  }>;
11
11
  /** Request body for login. */
12
12
  export type AdminLoginBody = Static<typeof adminLoginBody>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schema/login/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAIjD,8BAA8B;AAC9B,eAAO,MAAM,cAAc;;;EAGzB,CAAC;AACH,8CAA8C;AAC9C,eAAO,MAAM,kBAAkB;;EAI7B,CAAC;AAEH,8BAA8B;AAC9B,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAC3D,8CAA8C;AAC9C,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/schema/login/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAIvC,8BAA8B;AAC9B,eAAO,MAAM,cAAc;;;EAGzB,CAAC;AACH,8CAA8C;AAC9C,eAAO,MAAM,kBAAkB;;EAI7B,CAAC;AAEH,8BAA8B;AAC9B,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAC3D,8CAA8C;AAC9C,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Type } from "@sinclair/typebox";
1
+ import { Type } from "typebox";
2
2
  import { password, userEmail } from "../user/attributes";
3
3
  /** Request body for login. */
4
4
  export const adminLoginBody = Type.Object({
@@ -1,20 +1,23 @@
1
+ import { Type } from "typebox";
1
2
  import { QuestionType } from "../../enum";
2
- export declare const questionID: import("@sinclair/typebox").TString;
3
+ export declare const questionID: Type.TString;
3
4
  /** Non-editable identity attributes of a question. */
4
- export declare const questionIdentity: import("@sinclair/typebox").TObject<{
5
- id: import("@sinclair/typebox").TString;
5
+ export declare const questionIdentity: Type.TObject<{
6
+ id: Type.TString;
6
7
  }>;
8
+ /** Maximum number of options per question. */
9
+ export declare const MAX_OPTIONS_PER_QUESTION = 64;
7
10
  /** Editable attributes of a question language version. */
8
- export declare const questionLanguageAttributes: import("@sinclair/typebox").TObject<{
9
- question: import("@sinclair/typebox").TString;
10
- options: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>, import("@sinclair/typebox").TNull]>;
11
+ export declare const questionLanguageAttributes: Type.TObject<{
12
+ question: Type.TString;
13
+ options: Type.TUnion<[Type.TArray<Type.TString>, Type.TNull]>;
11
14
  }>;
12
15
  /** Editable attributes of a question. */
13
- export declare const questionAttributes: import("@sinclair/typebox").TObject<{
14
- question: import("@sinclair/typebox").TString;
15
- type: import("@sinclair/typebox").TEnum<typeof QuestionType>;
16
- options: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>, import("@sinclair/typebox").TNull]>;
17
- required: import("@sinclair/typebox").TBoolean;
18
- public: import("@sinclair/typebox").TBoolean;
16
+ export declare const questionAttributes: Type.TObject<{
17
+ question: Type.TString;
18
+ type: Type.TEnum<[QuestionType.TEXT, QuestionType.TEXT_AREA, QuestionType.NUMBER, QuestionType.SELECT, QuestionType.CHECKBOX]>;
19
+ options: Type.TUnion<[Type.TArray<Type.TString>, Type.TNull]>;
20
+ required: Type.TBoolean;
21
+ public: Type.TBoolean;
19
22
  }>;
20
23
  //# sourceMappingURL=attributes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../../src/schema/question/attributes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,eAAO,MAAM,UAAU,qCAGrB,CAAC;AAEH,sDAAsD;AACtD,eAAO,MAAM,gBAAgB;;EAE3B,CAAC;AAaH,0DAA0D;AAC1D,eAAO,MAAM,0BAA0B;;;EAOrC,CAAC;AAEH,yCAAyC;AACzC,eAAO,MAAM,kBAAkB;;;;;;EAiB7B,CAAC"}
1
+ {"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../../src/schema/question/attributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,eAAO,MAAM,UAAU,cAGrB,CAAC;AAEH,sDAAsD;AACtD,eAAO,MAAM,gBAAgB;;EAE3B,CAAC;AAEH,8CAA8C;AAE9C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAS3C,0DAA0D;AAC1D,eAAO,MAAM,0BAA0B;;;EAOrC,CAAC;AAEH,yCAAyC;AACzC,eAAO,MAAM,kBAAkB;;;;;;EAiB7B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Type } from "@sinclair/typebox";
1
+ import { Type } from "typebox";
2
2
  import { QuestionType } from "../../enum";
3
3
  import { Nullable } from "../utils";
4
4
  export const questionID = Type.String({
@@ -9,9 +9,10 @@ export const questionID = Type.String({
9
9
  export const questionIdentity = Type.Object({
10
10
  id: questionID,
11
11
  });
12
- const questionOptions = Nullable(Type.Array(Type.String({ maxLength: 255 }),
12
+ /** Maximum number of options per question. */
13
13
  // This was a practical limit before an explicit limitation was added, so seems reasonable to set it here.
14
- { maxItems: 64 }), {
14
+ export const MAX_OPTIONS_PER_QUESTION = 64;
15
+ const questionOptions = Nullable(Type.Array(Type.String({ maxLength: 255 }), { maxItems: MAX_OPTIONS_PER_QUESTION }), {
15
16
  description: "For select or checkbox questions, the options available.",
16
17
  });
17
18
  /** Editable attributes of a question language version. */