@tietokilta/ilmomasiina-models 2.0.0-alpha4 → 2.0.0-alpha40
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/README.md +0 -2
- package/dist/attrs/event.d.ts +17 -0
- package/dist/attrs/event.d.ts.map +1 -0
- package/dist/attrs/event.js +61 -0
- package/dist/enum.d.ts +54 -0
- package/dist/enum.d.ts.map +1 -0
- package/dist/enum.js +61 -0
- package/dist/index.d.ts +2 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -0
- package/dist/models/answer.d.ts +5 -5
- package/dist/models/answer.d.ts.map +1 -1
- package/dist/models/auditlog.d.ts +2 -1
- package/dist/models/auditlog.d.ts.map +1 -1
- package/dist/models/index.d.ts +8 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/question.d.ts +4 -5
- package/dist/models/question.d.ts.map +1 -1
- package/dist/models/question.js +0 -2
- package/dist/models/quota.d.ts +2 -2
- package/dist/models/signup.d.ts +4 -4
- package/dist/models/signup.d.ts.map +1 -1
- package/dist/models/signup.js +0 -2
- package/dist/schema/auditLog/attributes.d.ts +15 -0
- package/dist/schema/auditLog/attributes.d.ts.map +1 -0
- package/dist/schema/auditLog/attributes.js +42 -0
- package/dist/schema/auditLog/index.d.ts +36 -0
- package/dist/schema/auditLog/index.d.ts.map +1 -0
- package/dist/schema/auditLog/index.js +41 -0
- package/dist/schema/category/index.d.ts +10 -0
- package/dist/schema/category/index.d.ts.map +1 -0
- package/dist/schema/category/index.js +10 -0
- package/dist/schema/errors/index.d.ts +55 -0
- package/dist/schema/errors/index.d.ts.map +1 -0
- package/dist/schema/errors/index.js +54 -0
- package/dist/schema/event/attributes.d.ts +90 -0
- package/dist/schema/event/attributes.d.ts.map +1 -0
- package/dist/schema/event/attributes.js +113 -0
- package/dist/schema/event/index.d.ts +233 -0
- package/dist/schema/event/index.d.ts.map +1 -0
- package/dist/schema/event/index.js +72 -0
- package/dist/schema/eventList/index.d.ts +118 -0
- package/dist/schema/eventList/index.d.ts.map +1 -0
- package/dist/schema/eventList/index.js +39 -0
- package/dist/schema/headers.d.ts +3 -0
- package/dist/schema/headers.d.ts.map +1 -0
- package/dist/schema/headers.js +6 -0
- package/dist/schema/index.d.ts +15 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +30 -0
- package/dist/schema/login/index.d.ts +15 -0
- package/dist/schema/login/index.d.ts.map +1 -0
- package/dist/schema/login/index.js +16 -0
- package/dist/schema/question/attributes.d.ts +15 -0
- package/dist/schema/question/attributes.d.ts.map +1 -0
- package/dist/schema/question/attributes.js +37 -0
- package/dist/schema/question/index.d.ts +36 -0
- package/dist/schema/question/index.d.ts.map +1 -0
- package/dist/schema/question/index.js +15 -0
- package/dist/schema/quota/attributes.d.ts +11 -0
- package/dist/schema/quota/attributes.d.ts.map +1 -0
- package/dist/schema/quota/attributes.js +25 -0
- package/dist/schema/quota/index.d.ts +25 -0
- package/dist/schema/quota/index.d.ts.map +1 -0
- package/dist/schema/quota/index.js +15 -0
- package/dist/schema/quotaWithSignups/index.d.ts +57 -0
- package/dist/schema/quotaWithSignups/index.d.ts.map +1 -0
- package/dist/schema/quotaWithSignups/index.js +33 -0
- package/dist/schema/signup/attributes.d.ts +40 -0
- package/dist/schema/signup/attributes.d.ts.map +1 -0
- package/dist/schema/signup/attributes.js +83 -0
- package/dist/schema/signup/index.d.ts +112 -0
- package/dist/schema/signup/index.d.ts.map +1 -0
- package/dist/schema/signup/index.js +45 -0
- package/dist/schema/signupForEdit/index.d.ts +81 -0
- package/dist/schema/signupForEdit/index.d.ts.map +1 -0
- package/dist/schema/signupForEdit/index.js +28 -0
- package/dist/schema/slug/index.d.ts +15 -0
- package/dist/schema/slug/index.d.ts.map +1 -0
- package/dist/schema/slug/index.js +19 -0
- package/dist/schema/user/attributes.d.ts +14 -0
- package/dist/schema/user/attributes.d.ts.map +1 -0
- package/dist/schema/user/attributes.js +27 -0
- package/dist/schema/user/index.d.ts +45 -0
- package/dist/schema/user/index.d.ts.map +1 -0
- package/dist/schema/user/index.js +27 -0
- package/dist/schema/utils.d.ts +3 -0
- package/dist/schema/utils.d.ts.map +1 -0
- package/dist/schema/utils.js +7 -0
- package/package.json +6 -3
- package/dist/services/admin/categories/index.d.ts +0 -7
- package/dist/services/admin/categories/index.d.ts.map +0 -1
- package/dist/services/admin/categories/list.d.ts +0 -2
- package/dist/services/admin/categories/list.d.ts.map +0 -1
- package/dist/services/admin/categories/list.js +0 -2
- package/dist/services/admin/events/create.d.ts +0 -15
- package/dist/services/admin/events/create.d.ts.map +0 -1
- package/dist/services/admin/events/create.js +0 -38
- package/dist/services/admin/events/index.d.ts +0 -32
- package/dist/services/admin/events/index.d.ts.map +0 -1
- package/dist/services/admin/events/index.js +0 -2
- package/dist/services/admin/events/update.d.ts +0 -17
- package/dist/services/admin/events/update.d.ts.map +0 -1
- package/dist/services/admin/events/update.js +0 -2
- package/dist/services/admin/slug/get.d.ts +0 -6
- package/dist/services/admin/slug/get.d.ts.map +0 -1
- package/dist/services/admin/slug/get.js +0 -2
- package/dist/services/admin/slug/index.d.ts +0 -7
- package/dist/services/admin/slug/index.d.ts.map +0 -1
- package/dist/services/admin/slug/index.js +0 -2
- package/dist/services/auditlog/index.d.ts +0 -26
- package/dist/services/auditlog/index.d.ts.map +0 -1
- package/dist/services/auditlog/index.js +0 -2
- package/dist/services/auth/index.d.ts +0 -18
- package/dist/services/auth/index.d.ts.map +0 -1
- package/dist/services/auth/index.js +0 -2
- package/dist/services/events/details.d.ts +0 -45
- package/dist/services/events/details.d.ts.map +0 -1
- package/dist/services/events/details.js +0 -67
- package/dist/services/events/index.d.ts +0 -26
- package/dist/services/events/index.d.ts.map +0 -1
- package/dist/services/events/index.js +0 -2
- package/dist/services/events/list.d.ts +0 -18
- package/dist/services/events/list.d.ts.map +0 -1
- package/dist/services/events/list.js +0 -26
- package/dist/services/signups/create.d.ts +0 -10
- package/dist/services/signups/create.d.ts.map +0 -1
- package/dist/services/signups/create.js +0 -2
- package/dist/services/signups/getForEdit.d.ts +0 -29
- package/dist/services/signups/getForEdit.d.ts.map +0 -1
- package/dist/services/signups/getForEdit.js +0 -29
- package/dist/services/signups/index.d.ts +0 -28
- package/dist/services/signups/index.d.ts.map +0 -1
- package/dist/services/signups/index.js +0 -2
- package/dist/services/signups/update.d.ts +0 -19
- package/dist/services/signups/update.d.ts.map +0 -1
- package/dist/services/signups/update.js +0 -2
- package/dist/services/users/details.d.ts +0 -10
- package/dist/services/users/details.d.ts.map +0 -1
- package/dist/services/users/details.js +0 -5
- package/dist/services/users/index.d.ts +0 -13
- package/dist/services/users/index.d.ts.map +0 -1
- package/dist/services/users/index.js +0 -2
- package/dist/utils.d.ts +0 -5
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js +0 -2
- /package/dist/{services/admin/categories → models}/index.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../src/schema/signup/attributes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1C,eAAO,MAAM,QAAQ,qCAMnB,CAAC;AAEH,eAAO,MAAM,cAAc;;EAEzB,CAAC;AAMH,eAAO,MAAM,SAAS,qCAEpB,CAAC;AAEH,yCAAyC;AACzC,eAAO,MAAM,YAAY;;;EAevB,CAAC;AAEH,uCAAuC;AACvC,eAAO,MAAM,wBAAwB;;;;;;;;;EAiBnC,CAAC;AAEH,2EAA2E;AAC3E,eAAO,MAAM,8BAA8B;;;;;;;;EAWzC,CAAC;AAEH,6DAA6D;AAC7D,eAAO,MAAM,uBAAuB;;;;;EAclC,CAAC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.dynamicSignupAttributes = exports.publicEditableSignupAttributes = exports.editableSignupAttributes = exports.signupAnswer = exports.editToken = exports.signupIdentity = exports.signupID = void 0;
|
|
4
|
+
const typebox_1 = require("@sinclair/typebox");
|
|
5
|
+
const enum_1 = require("../../enum");
|
|
6
|
+
const attributes_1 = require("../question/attributes");
|
|
7
|
+
const utils_1 = require("../utils");
|
|
8
|
+
exports.signupID = typebox_1.Type.String({
|
|
9
|
+
title: "SignupID",
|
|
10
|
+
description: "Signup ID. Randomly generated alphanumeric string.",
|
|
11
|
+
minLength: 1,
|
|
12
|
+
maxLength: 32,
|
|
13
|
+
pattern: "^[a-z0-9]+$",
|
|
14
|
+
});
|
|
15
|
+
exports.signupIdentity = typebox_1.Type.Object({
|
|
16
|
+
id: exports.signupID,
|
|
17
|
+
});
|
|
18
|
+
const namePublic = typebox_1.Type.Boolean({
|
|
19
|
+
description: "Whether to show `firstName` and `lastName` publicly.",
|
|
20
|
+
});
|
|
21
|
+
exports.editToken = typebox_1.Type.String({
|
|
22
|
+
description: "Token required for editing or deleting the signup.",
|
|
23
|
+
});
|
|
24
|
+
/** Answer to a single signup question */
|
|
25
|
+
exports.signupAnswer = typebox_1.Type.Object({
|
|
26
|
+
questionId: attributes_1.questionID,
|
|
27
|
+
answer: typebox_1.Type.Union([
|
|
28
|
+
typebox_1.Type.String({ maxLength: 255 }),
|
|
29
|
+
typebox_1.Type.Array(typebox_1.Type.String({ maxLength: 255 }),
|
|
30
|
+
// This was a practical limit before an explicit limitation was added, so seems reasonable to set it here.
|
|
31
|
+
{ maxItems: 64 }),
|
|
32
|
+
], {
|
|
33
|
+
description: "Answer to the question.",
|
|
34
|
+
}),
|
|
35
|
+
});
|
|
36
|
+
/** Editable attributes of a signup. */
|
|
37
|
+
exports.editableSignupAttributes = typebox_1.Type.Object({
|
|
38
|
+
firstName: (0, utils_1.Nullable)(typebox_1.Type.String({ maxLength: 255 }), {
|
|
39
|
+
description: "First name of the attendee. Null if not set yet.",
|
|
40
|
+
}),
|
|
41
|
+
lastName: (0, utils_1.Nullable)(typebox_1.Type.String({ maxLength: 255 }), {
|
|
42
|
+
description: "Last name of the attendee. Null if not set yet.",
|
|
43
|
+
}),
|
|
44
|
+
// This does not have format: "email", as we validate it within updateSignup instead.
|
|
45
|
+
// If it was added, it would have to be unioned with Type.Literal("") to account for events without an email field.
|
|
46
|
+
// (Ideally, clients would send null instead of "" in those cases, but we don't want to break existing uses.)
|
|
47
|
+
email: (0, utils_1.Nullable)(typebox_1.Type.String({ maxLength: 255 }), {
|
|
48
|
+
description: "Email of the attendee. Null if not set yet.",
|
|
49
|
+
}),
|
|
50
|
+
namePublic,
|
|
51
|
+
answers: typebox_1.Type.Array(exports.signupAnswer, {
|
|
52
|
+
description: "Answers to the questions of the event.",
|
|
53
|
+
}),
|
|
54
|
+
});
|
|
55
|
+
/** Editable attributes of a signup with non-public information removed. */
|
|
56
|
+
exports.publicEditableSignupAttributes = typebox_1.Type.Object({
|
|
57
|
+
firstName: (0, utils_1.Nullable)(typebox_1.Type.String({ maxLength: 255 }), {
|
|
58
|
+
description: "First name of the attendee. Null if not set yet or not public.",
|
|
59
|
+
}),
|
|
60
|
+
lastName: (0, utils_1.Nullable)(typebox_1.Type.String({ maxLength: 255 }), {
|
|
61
|
+
description: "Fast name of the attendee. Null if not set yet or not public.",
|
|
62
|
+
}),
|
|
63
|
+
namePublic,
|
|
64
|
+
answers: typebox_1.Type.Array(exports.signupAnswer, {
|
|
65
|
+
description: "Answers to the public questions in the event.",
|
|
66
|
+
}),
|
|
67
|
+
});
|
|
68
|
+
/** Non-editable, automatically updated signup attributes. */
|
|
69
|
+
exports.dynamicSignupAttributes = typebox_1.Type.Object({
|
|
70
|
+
status: (0, utils_1.Nullable)(typebox_1.Type.Enum(enum_1.SignupStatus, { title: "SignupStatus" }), {
|
|
71
|
+
description: "Status of the signup. If null, the status has not been computed yet.",
|
|
72
|
+
}),
|
|
73
|
+
position: (0, utils_1.Nullable)(typebox_1.Type.Integer(), {
|
|
74
|
+
description: "Position of the signup in its current quota. If null, the status has not been computed yet.",
|
|
75
|
+
}),
|
|
76
|
+
createdAt: typebox_1.Type.String({
|
|
77
|
+
format: "date-time",
|
|
78
|
+
description: "The creation date of the signup.",
|
|
79
|
+
}),
|
|
80
|
+
confirmed: typebox_1.Type.Boolean({
|
|
81
|
+
description: "Whether the signup has been confirmed (saved).",
|
|
82
|
+
}),
|
|
83
|
+
});
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { Static } from "@sinclair/typebox";
|
|
2
|
+
import { editToken, signupID } from "./attributes";
|
|
3
|
+
/** Request body for creating a signup. */
|
|
4
|
+
export declare const signupCreateBody: import("@sinclair/typebox").TObject<{
|
|
5
|
+
quotaId: import("@sinclair/typebox").TString;
|
|
6
|
+
}>;
|
|
7
|
+
/** Response schema for successfully creating a signup. */
|
|
8
|
+
export declare const signupCreateResponse: import("@sinclair/typebox").TObject<{
|
|
9
|
+
id: import("@sinclair/typebox").TString;
|
|
10
|
+
editToken: import("@sinclair/typebox").TString;
|
|
11
|
+
}>;
|
|
12
|
+
/** Request body for editing an existing signup. */
|
|
13
|
+
export declare const signupUpdateBody: import("@sinclair/typebox").TObject<{
|
|
14
|
+
email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
15
|
+
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
16
|
+
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
17
|
+
answers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
18
|
+
questionId: import("@sinclair/typebox").TString;
|
|
19
|
+
answer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
|
|
20
|
+
}>>>;
|
|
21
|
+
namePublic: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
22
|
+
language: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
23
|
+
}>;
|
|
24
|
+
/** Request body for editing an existing signup as an admin. */
|
|
25
|
+
export declare const adminSignupUpdateBody: import("@sinclair/typebox").TObject<{
|
|
26
|
+
email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
27
|
+
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
28
|
+
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
29
|
+
answers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
30
|
+
questionId: import("@sinclair/typebox").TString;
|
|
31
|
+
answer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
|
|
32
|
+
}>>>;
|
|
33
|
+
namePublic: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
34
|
+
language: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
35
|
+
sendEmail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
36
|
+
}>;
|
|
37
|
+
/** Request body for creating a signup as an admin. */
|
|
38
|
+
export declare const adminSignupCreateBody: import("@sinclair/typebox").TObject<{
|
|
39
|
+
quotaId: import("@sinclair/typebox").TString;
|
|
40
|
+
email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
41
|
+
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
42
|
+
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
43
|
+
answers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
44
|
+
questionId: import("@sinclair/typebox").TString;
|
|
45
|
+
answer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
|
|
46
|
+
}>>>;
|
|
47
|
+
namePublic: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
48
|
+
language: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
49
|
+
sendEmail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
50
|
+
}>;
|
|
51
|
+
/** Response schema for successfully editing a signup. */
|
|
52
|
+
export declare const signupUpdateResponse: import("@sinclair/typebox").TObject<{
|
|
53
|
+
/** Response schema for successfully creating a signup. */
|
|
54
|
+
id: import("@sinclair/typebox").TString;
|
|
55
|
+
}>;
|
|
56
|
+
/** Schema for signups in event details from the public API. */
|
|
57
|
+
export declare const publicSignupSchema: import("@sinclair/typebox").TObject<{
|
|
58
|
+
firstName: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
59
|
+
lastName: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
60
|
+
answers: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
61
|
+
questionId: import("@sinclair/typebox").TString;
|
|
62
|
+
answer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
|
|
63
|
+
}>>;
|
|
64
|
+
namePublic: import("@sinclair/typebox").TBoolean;
|
|
65
|
+
createdAt: import("@sinclair/typebox").TString;
|
|
66
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TEnum<typeof import("../..").SignupStatus>, import("@sinclair/typebox").TNull]>;
|
|
67
|
+
position: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
68
|
+
confirmed: import("@sinclair/typebox").TBoolean;
|
|
69
|
+
}>;
|
|
70
|
+
/** Schema for signups in event details from the admin API. */
|
|
71
|
+
export declare const adminSignupSchema: import("@sinclair/typebox").TObject<{
|
|
72
|
+
id: import("@sinclair/typebox").TString;
|
|
73
|
+
email: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
74
|
+
firstName: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
75
|
+
lastName: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
76
|
+
answers: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
77
|
+
questionId: import("@sinclair/typebox").TString;
|
|
78
|
+
answer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
|
|
79
|
+
}>>;
|
|
80
|
+
namePublic: import("@sinclair/typebox").TBoolean;
|
|
81
|
+
createdAt: import("@sinclair/typebox").TString;
|
|
82
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TEnum<typeof import("../..").SignupStatus>, import("@sinclair/typebox").TNull]>;
|
|
83
|
+
position: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
84
|
+
confirmed: import("@sinclair/typebox").TBoolean;
|
|
85
|
+
}>;
|
|
86
|
+
/** Path parameters necessary to fetch and manipulate signups. */
|
|
87
|
+
export declare const signupPathParams: import("@sinclair/typebox").TObject<{
|
|
88
|
+
id: import("@sinclair/typebox").TString;
|
|
89
|
+
}>;
|
|
90
|
+
/** Signup ID type. Randomly generated alphanumeric string. */
|
|
91
|
+
export type SignupID = Static<typeof signupID>;
|
|
92
|
+
/** Signup edit token type. */
|
|
93
|
+
export type SignupEditToken = Static<typeof editToken>;
|
|
94
|
+
/** Path parameters necessary to fetch and manipulate signups. */
|
|
95
|
+
export type SignupPathParams = Static<typeof signupPathParams>;
|
|
96
|
+
/** Request body for creating a signup as a regular user. */
|
|
97
|
+
export type SignupCreateBody = Static<typeof signupCreateBody>;
|
|
98
|
+
/** Response schema for successfully creating a signup. */
|
|
99
|
+
export type SignupCreateResponse = Static<typeof signupCreateResponse>;
|
|
100
|
+
/** Request body for editing an existing signup as a regular user. */
|
|
101
|
+
export type SignupUpdateBody = Static<typeof signupUpdateBody>;
|
|
102
|
+
/** Request body for editing an existing signup as an admin. */
|
|
103
|
+
export type AdminSignupUpdateBody = Static<typeof adminSignupUpdateBody>;
|
|
104
|
+
/** Request body for creating a signup as an admin. */
|
|
105
|
+
export type AdminSignupCreateBody = Static<typeof adminSignupCreateBody>;
|
|
106
|
+
/** Response schema for successfully editing a signup. */
|
|
107
|
+
export type SignupUpdateResponse = Static<typeof signupUpdateResponse>;
|
|
108
|
+
/** Schema for signups in event details from the public API. */
|
|
109
|
+
export type PublicSignupSchema = Static<typeof publicSignupSchema>;
|
|
110
|
+
/** Schema for signups in event details from the admin API. */
|
|
111
|
+
export type AdminSignupSchema = Static<typeof adminSignupSchema>;
|
|
112
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/signup/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAIjD,OAAO,EAGL,SAAS,EAET,QAAQ,EAET,MAAM,cAAc,CAAC;AAEtB,0CAA0C;AAC1C,eAAO,MAAM,gBAAgB;;EAE3B,CAAC;AAEH,0DAA0D;AAC1D,eAAO,MAAM,oBAAoB;;;EAG/B,CAAC;AAcH,mDAAmD;AACnD,eAAO,MAAM,gBAAgB;;;;;;;;;;EAA2E,CAAC;AAEzG,+DAA+D;AAC/D,eAAO,MAAM,qBAAqB;;;;;;;;;;;EAEjC,CAAC;AAEF,sDAAsD;AACtD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAGhC,CAAC;AAEH,yDAAyD;AACzD,eAAO,MAAM,oBAAoB;IAjCjC,0DAA0D;;EAiCR,CAAC;AAEnD,+DAA+D;AAC/D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EAA4E,CAAC;AAE5G,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;EAAsF,CAAC;AAErH,iEAAiE;AACjE,eAAO,MAAM,gBAAgB;;EAE3B,CAAC;AAEH,8DAA8D;AAC9D,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC/C,8BAA8B;AAC9B,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC;AAEvD,iEAAiE;AACjE,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE/D,4DAA4D;AAC5D,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC/D,0DAA0D;AAC1D,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE,qEAAqE;AACrE,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC/D,+DAA+D;AAC/D,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACzE,sDAAsD;AACtD,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACzE,yDAAyD;AACzD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE,+DAA+D;AAC/D,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACnE,8DAA8D;AAC9D,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.signupPathParams = exports.adminSignupSchema = exports.publicSignupSchema = exports.signupUpdateResponse = exports.adminSignupCreateBody = exports.adminSignupUpdateBody = exports.signupUpdateBody = exports.signupCreateResponse = exports.signupCreateBody = void 0;
|
|
4
|
+
const typebox_1 = require("@sinclair/typebox");
|
|
5
|
+
const attributes_1 = require("../quota/attributes");
|
|
6
|
+
const utils_1 = require("../utils");
|
|
7
|
+
const attributes_2 = require("./attributes");
|
|
8
|
+
/** Request body for creating a signup. */
|
|
9
|
+
exports.signupCreateBody = typebox_1.Type.Object({
|
|
10
|
+
quotaId: attributes_1.quotaID,
|
|
11
|
+
});
|
|
12
|
+
/** Response schema for successfully creating a signup. */
|
|
13
|
+
exports.signupCreateResponse = typebox_1.Type.Object({
|
|
14
|
+
id: attributes_2.signupID,
|
|
15
|
+
editToken: attributes_2.editToken,
|
|
16
|
+
});
|
|
17
|
+
const signupLanguage = typebox_1.Type.Object({
|
|
18
|
+
language: (0, utils_1.Nullable)(typebox_1.Type.String({ maxLength: 8 }), {
|
|
19
|
+
description: "The language code used for emails related to this signup",
|
|
20
|
+
}),
|
|
21
|
+
});
|
|
22
|
+
const adminSignupUpdateOptions = typebox_1.Type.Object({
|
|
23
|
+
sendEmail: typebox_1.Type.Boolean({
|
|
24
|
+
description: "Whether to send an edit confirmation for the edit",
|
|
25
|
+
}),
|
|
26
|
+
});
|
|
27
|
+
/** Request body for editing an existing signup. */
|
|
28
|
+
exports.signupUpdateBody = typebox_1.Type.Partial(typebox_1.Type.Composite([attributes_2.editableSignupAttributes, signupLanguage]));
|
|
29
|
+
/** Request body for editing an existing signup as an admin. */
|
|
30
|
+
exports.adminSignupUpdateBody = typebox_1.Type.Partial(typebox_1.Type.Composite([attributes_2.editableSignupAttributes, signupLanguage, adminSignupUpdateOptions]));
|
|
31
|
+
/** Request body for creating a signup as an admin. */
|
|
32
|
+
exports.adminSignupCreateBody = typebox_1.Type.Composite([
|
|
33
|
+
exports.signupCreateBody,
|
|
34
|
+
typebox_1.Type.Partial(typebox_1.Type.Composite([attributes_2.editableSignupAttributes, signupLanguage, adminSignupUpdateOptions])),
|
|
35
|
+
]);
|
|
36
|
+
/** Response schema for successfully editing a signup. */
|
|
37
|
+
exports.signupUpdateResponse = attributes_2.signupIdentity;
|
|
38
|
+
/** Schema for signups in event details from the public API. */
|
|
39
|
+
exports.publicSignupSchema = typebox_1.Type.Composite([attributes_2.publicEditableSignupAttributes, attributes_2.dynamicSignupAttributes]);
|
|
40
|
+
/** Schema for signups in event details from the admin API. */
|
|
41
|
+
exports.adminSignupSchema = typebox_1.Type.Composite([attributes_2.signupIdentity, attributes_2.editableSignupAttributes, attributes_2.dynamicSignupAttributes]);
|
|
42
|
+
/** Path parameters necessary to fetch and manipulate signups. */
|
|
43
|
+
exports.signupPathParams = typebox_1.Type.Object({
|
|
44
|
+
id: attributes_2.signupID,
|
|
45
|
+
});
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { Static } from "@sinclair/typebox";
|
|
2
|
+
/** Schema for fetching a signup for editing. */
|
|
3
|
+
export declare const signupForEdit: import("@sinclair/typebox").TObject<{
|
|
4
|
+
id: import("@sinclair/typebox").TString;
|
|
5
|
+
email: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
6
|
+
firstName: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
7
|
+
lastName: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
8
|
+
answers: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
9
|
+
questionId: import("@sinclair/typebox").TString;
|
|
10
|
+
answer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
|
|
11
|
+
}>>;
|
|
12
|
+
namePublic: import("@sinclair/typebox").TBoolean;
|
|
13
|
+
quota: import("@sinclair/typebox").TObject<{
|
|
14
|
+
id: import("@sinclair/typebox").TString;
|
|
15
|
+
title: import("@sinclair/typebox").TString;
|
|
16
|
+
size: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
17
|
+
}>;
|
|
18
|
+
confirmableForMillis: import("@sinclair/typebox").TInteger;
|
|
19
|
+
editableForMillis: import("@sinclair/typebox").TInteger;
|
|
20
|
+
createdAt: import("@sinclair/typebox").TString;
|
|
21
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TEnum<typeof import("../..").SignupStatus>, import("@sinclair/typebox").TNull]>;
|
|
22
|
+
position: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
23
|
+
confirmed: import("@sinclair/typebox").TBoolean;
|
|
24
|
+
}>;
|
|
25
|
+
/** Response schema for fetching a signup for editing. */
|
|
26
|
+
export declare const signupForEditResponse: import("@sinclair/typebox").TObject<{
|
|
27
|
+
signup: import("@sinclair/typebox").TObject<{
|
|
28
|
+
id: import("@sinclair/typebox").TString;
|
|
29
|
+
email: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
30
|
+
firstName: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
31
|
+
lastName: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
32
|
+
answers: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
33
|
+
questionId: import("@sinclair/typebox").TString;
|
|
34
|
+
answer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>;
|
|
35
|
+
}>>;
|
|
36
|
+
namePublic: import("@sinclair/typebox").TBoolean;
|
|
37
|
+
quota: 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
|
+
}>;
|
|
42
|
+
confirmableForMillis: import("@sinclair/typebox").TInteger;
|
|
43
|
+
editableForMillis: import("@sinclair/typebox").TInteger;
|
|
44
|
+
createdAt: import("@sinclair/typebox").TString;
|
|
45
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TEnum<typeof import("../..").SignupStatus>, import("@sinclair/typebox").TNull]>;
|
|
46
|
+
position: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
47
|
+
confirmed: import("@sinclair/typebox").TBoolean;
|
|
48
|
+
}>;
|
|
49
|
+
event: import("@sinclair/typebox").TObject<{
|
|
50
|
+
id: import("@sinclair/typebox").TString;
|
|
51
|
+
title: import("@sinclair/typebox").TString;
|
|
52
|
+
description: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
53
|
+
date: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
54
|
+
slug: import("@sinclair/typebox").TString;
|
|
55
|
+
endDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
56
|
+
registrationStartDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
57
|
+
registrationEndDate: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
58
|
+
openQuotaSize: import("@sinclair/typebox").TInteger;
|
|
59
|
+
category: import("@sinclair/typebox").TString;
|
|
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
|
+
signupsPublic: import("@sinclair/typebox").TBoolean;
|
|
65
|
+
nameQuestion: import("@sinclair/typebox").TBoolean;
|
|
66
|
+
emailQuestion: import("@sinclair/typebox").TBoolean;
|
|
67
|
+
questions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
68
|
+
id: import("@sinclair/typebox").TString;
|
|
69
|
+
question: import("@sinclair/typebox").TString;
|
|
70
|
+
type: import("@sinclair/typebox").TEnum<typeof import("../..").QuestionType>;
|
|
71
|
+
options: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>, import("@sinclair/typebox").TNull]>;
|
|
72
|
+
required: import("@sinclair/typebox").TBoolean;
|
|
73
|
+
public: import("@sinclair/typebox").TBoolean;
|
|
74
|
+
}>>;
|
|
75
|
+
}>;
|
|
76
|
+
}>;
|
|
77
|
+
/** Schema for fetching a signup for editing. */
|
|
78
|
+
export type SignupForEdit = Static<typeof signupForEdit>;
|
|
79
|
+
/** Response schema for fetching a signup for editing. */
|
|
80
|
+
export type SignupForEditResponse = Static<typeof signupForEditResponse>;
|
|
81
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/signupForEdit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAOjD,gDAAgD;AAChD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;EAaxB,CAAC;AAEH,yDAAyD;AACzD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGhC,CAAC;AAEH,gDAAgD;AAChD,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC;AAEzD,yDAAyD;AACzD,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.signupForEditResponse = exports.signupForEdit = void 0;
|
|
4
|
+
const typebox_1 = require("@sinclair/typebox");
|
|
5
|
+
const event_1 = require("../event");
|
|
6
|
+
const quota_1 = require("../quota");
|
|
7
|
+
const attributes_1 = require("../signup/attributes");
|
|
8
|
+
// This is here because it depends on quota, causing an import cycle.
|
|
9
|
+
/** Schema for fetching a signup for editing. */
|
|
10
|
+
exports.signupForEdit = typebox_1.Type.Composite([
|
|
11
|
+
attributes_1.signupIdentity,
|
|
12
|
+
attributes_1.editableSignupAttributes,
|
|
13
|
+
typebox_1.Type.Object({
|
|
14
|
+
quota: quota_1.quota,
|
|
15
|
+
confirmableForMillis: typebox_1.Type.Integer({
|
|
16
|
+
description: "Time in ms remaining to confirm the signup until it expires. Zero for confirmed signups.",
|
|
17
|
+
}),
|
|
18
|
+
editableForMillis: typebox_1.Type.Integer({
|
|
19
|
+
description: "Time in ms the signup can be edited for. If zero, the signup cannot be edited.",
|
|
20
|
+
}),
|
|
21
|
+
}),
|
|
22
|
+
attributes_1.dynamicSignupAttributes,
|
|
23
|
+
]);
|
|
24
|
+
/** Response schema for fetching a signup for editing. */
|
|
25
|
+
exports.signupForEditResponse = typebox_1.Type.Object({
|
|
26
|
+
signup: exports.signupForEdit,
|
|
27
|
+
event: event_1.userEventForSignup,
|
|
28
|
+
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Static } from "@sinclair/typebox";
|
|
2
|
+
/** Path parameters necessary to check a slug's availability from the admin API. */
|
|
3
|
+
export declare const checkSlugParams: import("@sinclair/typebox").TObject<{
|
|
4
|
+
slug: import("@sinclair/typebox").TString;
|
|
5
|
+
}>;
|
|
6
|
+
/** Response schema for checking a slug's availability. */
|
|
7
|
+
export declare const checkSlugResponse: import("@sinclair/typebox").TObject<{
|
|
8
|
+
id: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
9
|
+
title: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
10
|
+
}>;
|
|
11
|
+
/** Path parameters necessary to check a slug's availability from the admin API. */
|
|
12
|
+
export type CheckSlugParams = Static<typeof checkSlugParams>;
|
|
13
|
+
/** Response schema for checking a slug's availability. */
|
|
14
|
+
export type CheckSlugResponse = Static<typeof checkSlugResponse>;
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/slug/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAKjD,mFAAmF;AACnF,eAAO,MAAM,eAAe;;EAE1B,CAAC;AAEH,0DAA0D;AAC1D,eAAO,MAAM,iBAAiB;;;EAO5B,CAAC;AAEH,mFAAmF;AACnF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAC7D,0DAA0D;AAC1D,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkSlugResponse = exports.checkSlugParams = void 0;
|
|
4
|
+
const typebox_1 = require("@sinclair/typebox");
|
|
5
|
+
const attributes_1 = require("../event/attributes");
|
|
6
|
+
const utils_1 = require("../utils");
|
|
7
|
+
/** Path parameters necessary to check a slug's availability from the admin API. */
|
|
8
|
+
exports.checkSlugParams = typebox_1.Type.Object({
|
|
9
|
+
slug: attributes_1.eventSlug,
|
|
10
|
+
});
|
|
11
|
+
/** Response schema for checking a slug's availability. */
|
|
12
|
+
exports.checkSlugResponse = typebox_1.Type.Object({
|
|
13
|
+
id: (0, utils_1.Nullable)(attributes_1.eventID, {
|
|
14
|
+
description: "ID of the event with the given slug, or null if none exist.",
|
|
15
|
+
}),
|
|
16
|
+
title: (0, utils_1.Nullable)(typebox_1.Type.String(), {
|
|
17
|
+
description: "Title of the event with the given slug, or null if none exist.",
|
|
18
|
+
}),
|
|
19
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const userID: import("@sinclair/typebox").TInteger;
|
|
2
|
+
/** Non-editable identity attributes of a user. */
|
|
3
|
+
export declare const userIdentity: import("@sinclair/typebox").TObject<{
|
|
4
|
+
id: import("@sinclair/typebox").TInteger;
|
|
5
|
+
}>;
|
|
6
|
+
/** Email address of a user, used as username. */
|
|
7
|
+
export declare const userEmail: import("@sinclair/typebox").TString;
|
|
8
|
+
/** Current password of a user. */
|
|
9
|
+
export declare const password: import("@sinclair/typebox").TString;
|
|
10
|
+
/** Creation attributes of a user. */
|
|
11
|
+
export declare const userAttributes: import("@sinclair/typebox").TObject<{
|
|
12
|
+
email: import("@sinclair/typebox").TString;
|
|
13
|
+
}>;
|
|
14
|
+
//# sourceMappingURL=attributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../src/schema/user/attributes.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,sCAEjB,CAAC;AAEH,kDAAkD;AAClD,eAAO,MAAM,YAAY;;EAEvB,CAAC;AAEH,iDAAiD;AACjD,eAAO,MAAM,SAAS,qCAKpB,CAAC;AAEH,kCAAkC;AAClC,eAAO,MAAM,QAAQ,qCAGnB,CAAC;AAEH,qCAAqC;AACrC,eAAO,MAAM,cAAc;;EAEzB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.userAttributes = exports.password = exports.userEmail = exports.userIdentity = exports.userID = void 0;
|
|
4
|
+
const typebox_1 = require("@sinclair/typebox");
|
|
5
|
+
exports.userID = typebox_1.Type.Integer({
|
|
6
|
+
title: "UserID",
|
|
7
|
+
});
|
|
8
|
+
/** Non-editable identity attributes of a user. */
|
|
9
|
+
exports.userIdentity = typebox_1.Type.Object({
|
|
10
|
+
id: exports.userID,
|
|
11
|
+
});
|
|
12
|
+
/** Email address of a user, used as username. */
|
|
13
|
+
exports.userEmail = typebox_1.Type.String({
|
|
14
|
+
format: "email",
|
|
15
|
+
description: "Email address, used as username.",
|
|
16
|
+
minLength: 1,
|
|
17
|
+
maxLength: 255,
|
|
18
|
+
});
|
|
19
|
+
/** Current password of a user. */
|
|
20
|
+
exports.password = typebox_1.Type.String({
|
|
21
|
+
minLength: 1,
|
|
22
|
+
maxLength: 255,
|
|
23
|
+
});
|
|
24
|
+
/** Creation attributes of a user. */
|
|
25
|
+
exports.userAttributes = typebox_1.Type.Object({
|
|
26
|
+
email: exports.userEmail,
|
|
27
|
+
});
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Static } from "@sinclair/typebox";
|
|
2
|
+
import { userID } from "./attributes";
|
|
3
|
+
/** Request body for creating an admin user. */
|
|
4
|
+
export declare const userCreateSchema: import("@sinclair/typebox").TObject<{
|
|
5
|
+
email: import("@sinclair/typebox").TString;
|
|
6
|
+
password: import("@sinclair/typebox").TString;
|
|
7
|
+
}>;
|
|
8
|
+
/** Request body for inviting an admin user. */
|
|
9
|
+
export declare const userInviteSchema: import("@sinclair/typebox").TObject<{
|
|
10
|
+
email: import("@sinclair/typebox").TString;
|
|
11
|
+
}>;
|
|
12
|
+
/** Request body for changing the user's own password. */
|
|
13
|
+
export declare const userChangePasswordSchema: import("@sinclair/typebox").TObject<{
|
|
14
|
+
oldPassword: import("@sinclair/typebox").TString;
|
|
15
|
+
newPassword: import("@sinclair/typebox").TString;
|
|
16
|
+
}>;
|
|
17
|
+
/** Schema for a user. */
|
|
18
|
+
export declare const userSchema: import("@sinclair/typebox").TObject<{
|
|
19
|
+
id: import("@sinclair/typebox").TInteger;
|
|
20
|
+
email: import("@sinclair/typebox").TString;
|
|
21
|
+
}>;
|
|
22
|
+
/** Response schema for fetching a list of users. */
|
|
23
|
+
export declare const userListResponse: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
24
|
+
id: import("@sinclair/typebox").TInteger;
|
|
25
|
+
email: import("@sinclair/typebox").TString;
|
|
26
|
+
}>>;
|
|
27
|
+
/** Path parameters necessary to fetch and manipulate users. */
|
|
28
|
+
export declare const userPathParams: import("@sinclair/typebox").TObject<{
|
|
29
|
+
id: import("@sinclair/typebox").TInteger;
|
|
30
|
+
}>;
|
|
31
|
+
/** User ID type. */
|
|
32
|
+
export type UserID = Static<typeof userID>;
|
|
33
|
+
/** Request body for creating an admin user. */
|
|
34
|
+
export type UserCreateSchema = Static<typeof userCreateSchema>;
|
|
35
|
+
/** Request body for inviting an admin user. */
|
|
36
|
+
export type UserInviteSchema = Static<typeof userInviteSchema>;
|
|
37
|
+
/** Request body for changing the user's own password. */
|
|
38
|
+
export type UserChangePasswordSchema = Static<typeof userChangePasswordSchema>;
|
|
39
|
+
/** Path parameters necessary to fetch and manipulate users. */
|
|
40
|
+
export type UserPathParams = Static<typeof userPathParams>;
|
|
41
|
+
/** Schema for a user. */
|
|
42
|
+
export type UserSchema = Static<typeof userSchema>;
|
|
43
|
+
/** Response schema for fetching a list of users. */
|
|
44
|
+
export type UserListResponse = Static<typeof userListResponse>;
|
|
45
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/user/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAA4B,MAAM,EAAgB,MAAM,cAAc,CAAC;AAE9E,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB;;;EAK3B,CAAC;AAEH,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB;;EAAmC,CAAC;AAEjE,yDAAyD;AACzD,eAAO,MAAM,wBAAwB;;;EAGnC,CAAC;AAEH,yBAAyB;AACzB,eAAO,MAAM,UAAU;;;EAAiD,CAAC;AAEzE,oDAAoD;AACpD,eAAO,MAAM,gBAAgB;;;GAAyB,CAAC;AAEvD,+DAA+D;AAC/D,eAAO,MAAM,cAAc;;EAEzB,CAAC;AAEH,oBAAoB;AACpB,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC;AAE3C,+CAA+C;AAC/C,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC/D,+CAA+C;AAC/C,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC/D,yDAAyD;AACzD,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE/E,+DAA+D;AAC/D,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAC3D,yBAAyB;AACzB,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;AACnD,oDAAoD;AACpD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.userPathParams = exports.userListResponse = exports.userSchema = exports.userChangePasswordSchema = exports.userInviteSchema = exports.userCreateSchema = void 0;
|
|
4
|
+
const typebox_1 = require("@sinclair/typebox");
|
|
5
|
+
const attributes_1 = require("./attributes");
|
|
6
|
+
/** Request body for creating an admin user. */
|
|
7
|
+
exports.userCreateSchema = typebox_1.Type.Composite([
|
|
8
|
+
attributes_1.userAttributes,
|
|
9
|
+
typebox_1.Type.Object({
|
|
10
|
+
password: attributes_1.password,
|
|
11
|
+
}),
|
|
12
|
+
]);
|
|
13
|
+
/** Request body for inviting an admin user. */
|
|
14
|
+
exports.userInviteSchema = typebox_1.Type.Composite([attributes_1.userAttributes]);
|
|
15
|
+
/** Request body for changing the user's own password. */
|
|
16
|
+
exports.userChangePasswordSchema = typebox_1.Type.Object({
|
|
17
|
+
oldPassword: attributes_1.password,
|
|
18
|
+
newPassword: attributes_1.password,
|
|
19
|
+
});
|
|
20
|
+
/** Schema for a user. */
|
|
21
|
+
exports.userSchema = typebox_1.Type.Composite([attributes_1.userIdentity, attributes_1.userAttributes]);
|
|
22
|
+
/** Response schema for fetching a list of users. */
|
|
23
|
+
exports.userListResponse = typebox_1.Type.Array(exports.userSchema);
|
|
24
|
+
/** Path parameters necessary to fetch and manipulate users. */
|
|
25
|
+
exports.userPathParams = typebox_1.Type.Object({
|
|
26
|
+
id: attributes_1.userID,
|
|
27
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/schema/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAQ,MAAM,mBAAmB,CAAC;AAGjE,eAAO,MAAM,QAAQ,yCAA0C,aAAa,+EAClC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Nullable = void 0;
|
|
4
|
+
const typebox_1 = require("@sinclair/typebox");
|
|
5
|
+
// eslint-disable-next-line import/prefer-default-export
|
|
6
|
+
const Nullable = (type, options) => typebox_1.Type.Union([type, typebox_1.Type.Null()], options);
|
|
7
|
+
exports.Nullable = Nullable;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tietokilta/ilmomasiina-models",
|
|
3
|
-
"version": "2.0.0-
|
|
3
|
+
"version": "2.0.0-alpha40",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/Tietokilta/ilmomasiina.git"
|
|
@@ -22,8 +22,11 @@
|
|
|
22
22
|
"./src/*": "./src/*.ts"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"rimraf": "^
|
|
26
|
-
"typescript": "~
|
|
25
|
+
"rimraf": "^5.0.5",
|
|
26
|
+
"typescript": "~5.2.2"
|
|
27
|
+
},
|
|
28
|
+
"dependencies": {
|
|
29
|
+
"@sinclair/typebox": "^0.32.14"
|
|
27
30
|
},
|
|
28
31
|
"scripts": {
|
|
29
32
|
"build": "tsc --build",
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { StringifyApi } from '../../../utils';
|
|
2
|
-
import { AdminListCategoriesResponse } from './list';
|
|
3
|
-
export declare type AdminCategoriesServiceTypes = AdminListCategoriesResponse;
|
|
4
|
-
export declare namespace AdminCategory {
|
|
5
|
-
type List = StringifyApi<AdminListCategoriesResponse>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/admin/categories/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,QAAQ,CAAC;AAErD,oBAAY,2BAA2B,GAAG,2BAA2B,CAAC;AAEtE,yBAAiB,aAAa,CAAC;IAC7B,KAAY,IAAI,GAAG,YAAY,CAAC,2BAA2B,CAAC,CAAC;CAC9D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/services/admin/categories/list.ts"],"names":[],"mappings":"AAAA,oBAAY,2BAA2B,GAAG,MAAM,EAAE,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import EventAttributes from '../../../models/event';
|
|
2
|
-
import QuestionAttributes from '../../../models/question';
|
|
3
|
-
import QuotaAttributes from '../../../models/quota';
|
|
4
|
-
export declare const adminEventCreateEventAttrs: readonly ["title", "slug", "date", "endDate", "registrationStartDate", "registrationEndDate", "openQuotaSize", "description", "price", "location", "webpageUrl", "facebookUrl", "category", "draft", "listed", "signupsPublic", "nameQuestion", "emailQuestion", "verificationEmail"];
|
|
5
|
-
export declare const adminEventCreateQuestionAttrs: readonly ["question", "type", "options", "required", "public"];
|
|
6
|
-
export declare const adminEventCreateQuotaAttrs: readonly ["title", "size"];
|
|
7
|
-
export interface AdminEventCreateQuestion extends Pick<QuestionAttributes, typeof adminEventCreateQuestionAttrs[number]> {
|
|
8
|
-
}
|
|
9
|
-
export interface AdminEventCreateQuota extends Pick<QuotaAttributes, typeof adminEventCreateQuotaAttrs[number]> {
|
|
10
|
-
}
|
|
11
|
-
export interface AdminEventCreateBody extends Pick<EventAttributes, typeof adminEventCreateEventAttrs[number]> {
|
|
12
|
-
questions: AdminEventCreateQuestion[];
|
|
13
|
-
quotas: AdminEventCreateQuota[];
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=create.d.ts.map
|