@glissandoo/lib 1.104.10 → 1.104.12

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.
@@ -164,6 +164,7 @@ export declare enum FbFunctionName {
164
164
  UserRegister = "user-register",
165
165
  UserRemove = "user-remove",
166
166
  UserSendYearWrapped = "user-sendYearWrapped",
167
+ UserRecoveryPassword = "user-recoveryPassword",
167
168
  UserGroupOnDelete = "userGroup-onDelete",
168
169
  WebhookEventOnCreate = "webhookEvent-onCreate",
169
170
  WebhookGocardless = "webhook-gocardless",
@@ -168,6 +168,7 @@ var FbFunctionName;
168
168
  FbFunctionName["UserRegister"] = "user-register";
169
169
  FbFunctionName["UserRemove"] = "user-remove";
170
170
  FbFunctionName["UserSendYearWrapped"] = "user-sendYearWrapped";
171
+ FbFunctionName["UserRecoveryPassword"] = "user-recoveryPassword";
171
172
  FbFunctionName["UserGroupOnDelete"] = "userGroup-onDelete";
172
173
  FbFunctionName["WebhookEventOnCreate"] = "webhookEvent-onCreate";
173
174
  FbFunctionName["WebhookGocardless"] = "webhook-gocardless";
@@ -172,6 +172,7 @@ const regionByFunctions = {
172
172
  [index_1.FbFunctionName.UserOnUpdate]: GCloudRegions.UsCentral1,
173
173
  [index_1.FbFunctionName.UserRegister]: GCloudRegions.UsCentral1,
174
174
  [index_1.FbFunctionName.UserRemove]: GCloudRegions.EuropeWest6,
175
+ [index_1.FbFunctionName.UserRecoveryPassword]: GCloudRegions.EuropeWest6,
175
176
  [index_1.FbFunctionName.UserGroupOnDelete]: GCloudRegions.EuropeWest6,
176
177
  [index_1.FbFunctionName.UserSendYearWrapped]: GCloudRegions.EuropeWest6,
177
178
  [index_1.FbFunctionName.NotificationRemoveAllByGroup]: GCloudRegions.EuropeWest6,
@@ -19,4 +19,8 @@ export declare namespace UserFbFunctionsTypes {
19
19
  instrument?: string;
20
20
  }
21
21
  type JoinEventResult = void;
22
+ interface RecoveryPasswordParams {
23
+ email: string;
24
+ }
25
+ type RecoveryPasswordResult = void;
22
26
  }
package/lang/ca.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "Quin transport utilitzaràs?",
56
56
  "group.questions.default.declined.answer1": "🤒 Malalt",
57
57
  "group.questions.default.declined.answer2": "🏖️ Vacances",
58
+ "group.questions.default.declined.answer3": "💼 Feina",
59
+ "group.questions.default.declined.answer4": "📝 Exàmens",
58
60
  "group.questions.default.declined.title": "Motiu per no assistir",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 Arribaré tard",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Marxaré abans",
package/lang/de.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "Welches Transportmittel wirst du nutzen?",
56
56
  "group.questions.default.declined.answer1": "🤒 Krank",
57
57
  "group.questions.default.declined.answer2": "🏖️ Urlaub",
58
+ "group.questions.default.declined.answer3": "💼 Arbeit",
59
+ "group.questions.default.declined.answer4": "📝 Prüfungen",
58
60
  "group.questions.default.declined.title": "Gründe für Abwesenheit",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 Ich komme zu spät",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Ich gehe früher",
package/lang/en.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "What transport will you use?",
56
56
  "group.questions.default.declined.answer1": "🤒 Sick",
57
57
  "group.questions.default.declined.answer2": "🏖️ On vacation",
58
+ "group.questions.default.declined.answer3": "💼 Work",
59
+ "group.questions.default.declined.answer4": "📝 Exams",
58
60
  "group.questions.default.declined.title": "Reasons for not attending",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 I will arrive late",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ I will leave early",
package/lang/es.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "¿Qué transporte utilizarás?",
56
56
  "group.questions.default.declined.answer1": "🤒 Enfermo",
57
57
  "group.questions.default.declined.answer2": "🏖️ Vacaciones",
58
+ "group.questions.default.declined.answer3": "💼 Trabajo",
59
+ "group.questions.default.declined.answer4": "📝 Exámenes",
58
60
  "group.questions.default.declined.title": "Motivos para no asistir",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 Llegaré tarde",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Me marcharé antes",
package/lang/eu.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "Zein garraiobide erabiliko duzu?",
56
56
  "group.questions.default.declined.answer1": "🤒 Gaixo",
57
57
  "group.questions.default.declined.answer2": "🏖️ Oporretan",
58
+ "group.questions.default.declined.answer3": "💼 Lana",
59
+ "group.questions.default.declined.answer4": "📝 Azterketak",
58
60
  "group.questions.default.declined.title": "Ez joatearen arrazoiak",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 Berandu iritsiko naiz",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Lehenago alde egingo dut",
package/lang/fr.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "Quel moyen de transport vas-tu utiliser ?",
56
56
  "group.questions.default.declined.answer1": "🤒 Malade",
57
57
  "group.questions.default.declined.answer2": "🏖️ En vacances",
58
+ "group.questions.default.declined.answer3": "💼 Travail",
59
+ "group.questions.default.declined.answer4": "📝 Examens",
58
60
  "group.questions.default.declined.title": "Raisons d'absence",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 J’arriverai en retard",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Je partirai plus tôt",
package/lang/gl.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "Que transporte vas usar?",
56
56
  "group.questions.default.declined.answer1": "🤒 Enfermo",
57
57
  "group.questions.default.declined.answer2": "🏖️ Vacacións",
58
+ "group.questions.default.declined.answer3": "💼 Traballo",
59
+ "group.questions.default.declined.answer4": "📝 Exames",
58
60
  "group.questions.default.declined.title": "Motivos para non asistir",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 Chegarei tarde",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Marcharei antes",
package/lang/it.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "Quale mezzo di trasporto userai?",
56
56
  "group.questions.default.declined.answer1": "🤒 Malato",
57
57
  "group.questions.default.declined.answer2": "🏖️ In vacanza",
58
+ "group.questions.default.declined.answer3": "💼 Lavoro",
59
+ "group.questions.default.declined.answer4": "📝 Esami",
58
60
  "group.questions.default.declined.title": "Motivi per non partecipare",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 Arriverò in ritardo",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Andrò via prima",
package/lang/nl.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "Welk vervoermiddel gebruik je?",
56
56
  "group.questions.default.declined.answer1": "🤒 Ziek",
57
57
  "group.questions.default.declined.answer2": "🏖️ Op vakantie",
58
+ "group.questions.default.declined.answer3": "💼 Werk",
59
+ "group.questions.default.declined.answer4": "📝 Examens",
58
60
  "group.questions.default.declined.title": "Redenen om niet aanwezig te zijn",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 Ik kom te laat",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Ik vertrek eerder",
package/lang/pt.json CHANGED
@@ -55,6 +55,8 @@
55
55
  "group.questions.default.confirmed.title": "Que meio de transporte vais usar?",
56
56
  "group.questions.default.declined.answer1": "🤒 Doente",
57
57
  "group.questions.default.declined.answer2": "🏖️ De férias",
58
+ "group.questions.default.declined.answer3": "💼 Trabalho",
59
+ "group.questions.default.declined.answer4": "📝 Exames",
58
60
  "group.questions.default.declined.title": "Motivos para não comparecer",
59
61
  "group.questions.default2.confirmed.answer1": "🏃 Vou chegar atrasado",
60
62
  "group.questions.default2.confirmed.answer2": "⏱️ Vou sair mais cedo",
@@ -67,4 +67,5 @@ export default class GroupPlayer extends UserExtended<GroupPlayerData> {
67
67
  obtainAt: Date | null;
68
68
  currentValue: number;
69
69
  }[];
70
+ get customFields(): Record<string, import("./types").GroupPlayerCustomFieldValue>;
70
71
  }
@@ -223,5 +223,8 @@ class GroupPlayer extends extended_1.default {
223
223
  }
224
224
  return badges;
225
225
  }
226
+ get customFields() {
227
+ return this.data.customFields || {};
228
+ }
226
229
  }
227
230
  exports.default = GroupPlayer;
@@ -3,6 +3,14 @@ import { InstrumentId } from '../../../helpers/instruments';
3
3
  import { Descendant } from '../../../helpers/slate';
4
4
  import { UserExtendedData } from '../../User/types';
5
5
  import { AdminPermissions } from '../types';
6
+ export interface GroupPlayerCustomFieldValue {
7
+ value: string | number | boolean | Timestamp | null;
8
+ updatedAt: Timestamp;
9
+ updatedBy: string;
10
+ }
11
+ export interface AGroupPlayerCustomFieldValue extends GroupPlayerCustomFieldValue {
12
+ id: string;
13
+ }
6
14
  export declare enum GroupPlayerRole {
7
15
  Admin = "admin",
8
16
  Member = "member",
@@ -21,6 +29,7 @@ export interface GroupPlayerData extends UserExtendedData {
21
29
  leavedAt: Timestamp | null;
22
30
  leavedBy: string | null;
23
31
  additionalInfo: Descendant[];
32
+ customFields: Record<string, GroupPlayerCustomFieldValue>;
24
33
  lastEditAdditionalInfoAt: Timestamp | null;
25
34
  lastEditAdditionalInfoBy: string | null;
26
35
  badgeAccPractices?: BadgeLevels;
@@ -4,7 +4,7 @@ import { LanguagesTypes } from '../../lang';
4
4
  import { EventPlayerStatus } from '../Evento/Player/types';
5
5
  import { DocumentModel } from '../Model';
6
6
  import GroupBasic from './basic';
7
- import { AdminPermissions, CustomGroupInstrument, GroupConfigShowAttendanceToMembers, GroupData, GroupStatus, SocialNetwork } from './types';
7
+ import { AGroupCustomField, AdminPermissions, CustomGroupInstrument, GroupConfigShowAttendanceToMembers, GroupData, GroupStatus, SocialNetwork } from './types';
8
8
  export default class Group extends GroupBasic<GroupData> {
9
9
  constructor(doc: DocumentModel, lang?: LanguagesTypes);
10
10
  get owner(): DocumentReference;
@@ -129,4 +129,6 @@ export default class Group extends GroupBasic<GroupData> {
129
129
  multiselect: boolean;
130
130
  id: string;
131
131
  } | undefined;
132
+ get customFields(): Record<string, import("./types").GroupCustomField>;
133
+ get customFieldsList(): AGroupCustomField[];
132
134
  }
@@ -281,5 +281,16 @@ class Group extends basic_1.default {
281
281
  getDefaultQuestion(status) {
282
282
  return this.questionsList.find((q) => q.isDefault && q.status === status);
283
283
  }
284
+ get customFields() {
285
+ return this.data.customFields || {};
286
+ }
287
+ get customFieldsList() {
288
+ return Object.entries(this.customFields)
289
+ .map(([id, field]) => ({
290
+ id,
291
+ ...field,
292
+ }))
293
+ .sort((a, b) => a.order - b.order);
294
+ }
284
295
  }
285
296
  exports.default = Group;
@@ -6,6 +6,33 @@ import { CreatedOn } from '../../helpers/types';
6
6
  import { EventPlayerStatus } from '../Evento/Player/types';
7
7
  import { EventType } from '../Evento/types';
8
8
  import { PlayerBasicData } from '../Player/types';
9
+ export declare enum GroupCustomFieldType {
10
+ TEXT = "text",
11
+ NUMBER = "number",
12
+ DATE = "date",
13
+ SELECT = "select",
14
+ EMAIL = "email",
15
+ PHONE = "phone"
16
+ }
17
+ export interface GroupCustomFieldOption {
18
+ id: string;
19
+ value: string;
20
+ }
21
+ export interface GroupCustomField {
22
+ label: string;
23
+ type: GroupCustomFieldType;
24
+ required: boolean;
25
+ placeholder: string | null;
26
+ options: GroupCustomFieldOption[];
27
+ order: number;
28
+ createdAt: Timestamp;
29
+ updatedAt: Timestamp;
30
+ createdBy: string;
31
+ updatedBy: string;
32
+ }
33
+ export interface AGroupCustomField extends GroupCustomField {
34
+ id: string;
35
+ }
9
36
  export interface GroupOnboardingMessage {
10
37
  type: string;
11
38
  createdAt: Timestamp;
@@ -197,6 +224,7 @@ export interface GroupData extends GroupBasicData {
197
224
  onboardingMessages: GroupOnboardingMessage[];
198
225
  subscriptionId: string | null;
199
226
  questions: Record<string, GroupEventQuestion>;
227
+ customFields: Record<string, GroupCustomField>;
200
228
  readonly createdOn: CreatedOn;
201
229
  readonly owner: DocumentReference;
202
230
  readonly createdAt: Timestamp;
@@ -1,6 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GroupRepertoireTagDefault = exports.GroupRepertoireTagReserved = exports.SocialNetwork = exports.GroupStatus = exports.GroupConfigShowAttendanceToMembers = exports.GroupConfigSitesKey = exports.GroupConfigKey = exports.AdminPermissions = void 0;
3
+ exports.GroupRepertoireTagDefault = exports.GroupRepertoireTagReserved = exports.SocialNetwork = exports.GroupStatus = exports.GroupConfigShowAttendanceToMembers = exports.GroupConfigSitesKey = exports.GroupConfigKey = exports.AdminPermissions = exports.GroupCustomFieldType = void 0;
4
+ // types/CustomFields.ts
5
+ var GroupCustomFieldType;
6
+ (function (GroupCustomFieldType) {
7
+ GroupCustomFieldType["TEXT"] = "text";
8
+ GroupCustomFieldType["NUMBER"] = "number";
9
+ GroupCustomFieldType["DATE"] = "date";
10
+ GroupCustomFieldType["SELECT"] = "select";
11
+ GroupCustomFieldType["EMAIL"] = "email";
12
+ GroupCustomFieldType["PHONE"] = "phone";
13
+ })(GroupCustomFieldType = exports.GroupCustomFieldType || (exports.GroupCustomFieldType = {}));
4
14
  var AdminPermissions;
5
15
  (function (AdminPermissions) {
6
16
  AdminPermissions["Owner"] = "owner";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@glissandoo/lib",
3
- "version": "1.104.10",
3
+ "version": "1.104.12",
4
4
  "description": "Glissandoo library js",
5
5
  "main": "./index.js",
6
6
  "types": "./index.d.ts",