@foxford/sdk 7.0.0 → 7.0.1

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/entities.cjs CHANGED
@@ -342,6 +342,33 @@ var _User = class _User {
342
342
  get purchaseAnyExternshipContracts() {
343
343
  return this.props.purchaseAnyExternshipContracts;
344
344
  }
345
+ get hasExternshipRelation() {
346
+ return this.props.hasExternshipRelation;
347
+ }
348
+ get hasExternshipActiveContract() {
349
+ return this.props.hasExternshipActiveContract;
350
+ }
351
+ get canProlongateContract() {
352
+ return this.props.canProlongateContract;
353
+ }
354
+ get prolongation() {
355
+ return this.props.prolongation;
356
+ }
357
+ /**
358
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
359
+ *
360
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
361
+ * означает, что окна нет вовсе, а не что оно бесконечно.
362
+ */
363
+ isProlongationBetweenDates() {
364
+ var _a;
365
+ const { endsAt, startsAt } = (_a = this.props.prolongation) != null ? _a : {};
366
+ if (startsAt === void 0 || startsAt === null || endsAt === void 0 || endsAt === null) {
367
+ return false;
368
+ }
369
+ const now = Date.now();
370
+ return now >= Date.parse(startsAt) && now <= Date.parse(endsAt);
371
+ }
345
372
  /**
346
373
  * Глубокое клонирование объекта с защитой от циклических ссылок
347
374
  * @private
package/entities.d.cts CHANGED
@@ -51,9 +51,10 @@ interface UserDTO {
51
51
  elementaryDashboardUserExperienceFeedback?: boolean;
52
52
  homeSchoolFamilyEducationGuideHidden?: boolean;
53
53
  pageBonusesVisited?: boolean;
54
- pagePaymentsInfoVisited?: boolean;
54
+ pageDashboardPaymentsVisited?: boolean;
55
55
  pageSocializationLandingVisited?: boolean;
56
56
  pageSocializationVisited?: boolean;
57
+ supportButtonIndicatorHidden?: boolean;
57
58
  };
58
59
  bonus: {
59
60
  giftAmount: number;
@@ -97,6 +98,18 @@ interface UserDTO {
97
98
  } | null;
98
99
  freeAccessFinishesAt: null | string;
99
100
  purchaseAnyExternshipContracts: boolean;
101
+ hasExternshipRelation?: boolean;
102
+ hasExternshipActiveContract?: boolean;
103
+ canProlongateContract?: boolean;
104
+ /** Окно пролонгации договора домашней школы: даты, скидка и заголовок следующего года. */
105
+ prolongation?: {
106
+ dailyPlanBannerText?: string;
107
+ endsAt: null | string;
108
+ maxDiscount: number;
109
+ prolongationMenuTitleOn: boolean;
110
+ startsAt: null | string;
111
+ yearName: string;
112
+ } | null;
100
113
  }
101
114
 
102
115
  declare class User {
@@ -161,6 +174,17 @@ declare class User {
161
174
  get freeAccessFinishesAt(): UserDTO['freeAccessFinishesAt'];
162
175
  get hasUnseenRoomFeatures(): UserDTO['hasUnseenRoomFeatures'];
163
176
  get purchaseAnyExternshipContracts(): UserDTO['purchaseAnyExternshipContracts'];
177
+ get hasExternshipRelation(): UserDTO['hasExternshipRelation'];
178
+ get hasExternshipActiveContract(): UserDTO['hasExternshipActiveContract'];
179
+ get canProlongateContract(): UserDTO['canProlongateContract'];
180
+ get prolongation(): UserDTO['prolongation'];
181
+ /**
182
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
183
+ *
184
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
185
+ * означает, что окна нет вовсе, а не что оно бесконечно.
186
+ */
187
+ isProlongationBetweenDates(): boolean;
164
188
  /**
165
189
  * Глубокое клонирование объекта с защитой от циклических ссылок
166
190
  * @private
package/entities.d.ts CHANGED
@@ -51,9 +51,10 @@ interface UserDTO {
51
51
  elementaryDashboardUserExperienceFeedback?: boolean;
52
52
  homeSchoolFamilyEducationGuideHidden?: boolean;
53
53
  pageBonusesVisited?: boolean;
54
- pagePaymentsInfoVisited?: boolean;
54
+ pageDashboardPaymentsVisited?: boolean;
55
55
  pageSocializationLandingVisited?: boolean;
56
56
  pageSocializationVisited?: boolean;
57
+ supportButtonIndicatorHidden?: boolean;
57
58
  };
58
59
  bonus: {
59
60
  giftAmount: number;
@@ -97,6 +98,18 @@ interface UserDTO {
97
98
  } | null;
98
99
  freeAccessFinishesAt: null | string;
99
100
  purchaseAnyExternshipContracts: boolean;
101
+ hasExternshipRelation?: boolean;
102
+ hasExternshipActiveContract?: boolean;
103
+ canProlongateContract?: boolean;
104
+ /** Окно пролонгации договора домашней школы: даты, скидка и заголовок следующего года. */
105
+ prolongation?: {
106
+ dailyPlanBannerText?: string;
107
+ endsAt: null | string;
108
+ maxDiscount: number;
109
+ prolongationMenuTitleOn: boolean;
110
+ startsAt: null | string;
111
+ yearName: string;
112
+ } | null;
100
113
  }
101
114
 
102
115
  declare class User {
@@ -161,6 +174,17 @@ declare class User {
161
174
  get freeAccessFinishesAt(): UserDTO['freeAccessFinishesAt'];
162
175
  get hasUnseenRoomFeatures(): UserDTO['hasUnseenRoomFeatures'];
163
176
  get purchaseAnyExternshipContracts(): UserDTO['purchaseAnyExternshipContracts'];
177
+ get hasExternshipRelation(): UserDTO['hasExternshipRelation'];
178
+ get hasExternshipActiveContract(): UserDTO['hasExternshipActiveContract'];
179
+ get canProlongateContract(): UserDTO['canProlongateContract'];
180
+ get prolongation(): UserDTO['prolongation'];
181
+ /**
182
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
183
+ *
184
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
185
+ * означает, что окна нет вовсе, а не что оно бесконечно.
186
+ */
187
+ isProlongationBetweenDates(): boolean;
164
188
  /**
165
189
  * Глубокое клонирование объекта с защитой от циклических ссылок
166
190
  * @private
package/entities.js CHANGED
@@ -319,6 +319,33 @@ var _User = class _User {
319
319
  get purchaseAnyExternshipContracts() {
320
320
  return this.props.purchaseAnyExternshipContracts;
321
321
  }
322
+ get hasExternshipRelation() {
323
+ return this.props.hasExternshipRelation;
324
+ }
325
+ get hasExternshipActiveContract() {
326
+ return this.props.hasExternshipActiveContract;
327
+ }
328
+ get canProlongateContract() {
329
+ return this.props.canProlongateContract;
330
+ }
331
+ get prolongation() {
332
+ return this.props.prolongation;
333
+ }
334
+ /**
335
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
336
+ *
337
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
338
+ * означает, что окна нет вовсе, а не что оно бесконечно.
339
+ */
340
+ isProlongationBetweenDates() {
341
+ var _a;
342
+ const { endsAt, startsAt } = (_a = this.props.prolongation) != null ? _a : {};
343
+ if (startsAt === void 0 || startsAt === null || endsAt === void 0 || endsAt === null) {
344
+ return false;
345
+ }
346
+ const now = Date.now();
347
+ return now >= Date.parse(startsAt) && now <= Date.parse(endsAt);
348
+ }
322
349
  /**
323
350
  * Глубокое клонирование объекта с защитой от циклических ссылок
324
351
  * @private
package/entities.js.flow CHANGED
@@ -79,9 +79,10 @@ declare interface UserDTO {
79
79
  elementaryDashboardUserExperienceFeedback?: boolean,
80
80
  homeSchoolFamilyEducationGuideHidden?: boolean,
81
81
  pageBonusesVisited?: boolean,
82
- pagePaymentsInfoVisited?: boolean,
82
+ pageDashboardPaymentsVisited?: boolean,
83
83
  pageSocializationLandingVisited?: boolean,
84
84
  pageSocializationVisited?: boolean,
85
+ supportButtonIndicatorHidden?: boolean,
85
86
  ...
86
87
  };
87
88
  bonus: {
@@ -129,6 +130,22 @@ declare interface UserDTO {
129
130
  } | null;
130
131
  freeAccessFinishesAt: null | string;
131
132
  purchaseAnyExternshipContracts: boolean;
133
+ hasExternshipRelation?: boolean;
134
+ hasExternshipActiveContract?: boolean;
135
+ canProlongateContract?: boolean;
136
+
137
+ /**
138
+ * Окно пролонгации договора домашней школы: даты, скидка и заголовок следующего года.
139
+ */
140
+ prolongation?: {
141
+ dailyPlanBannerText?: string,
142
+ endsAt: null | string,
143
+ maxDiscount: number,
144
+ prolongationMenuTitleOn: boolean,
145
+ startsAt: null | string,
146
+ yearName: string,
147
+ ...
148
+ } | null;
132
149
  }
133
150
  declare class User {
134
151
  constructor(): this;
@@ -211,6 +228,21 @@ declare class User {
211
228
  UserDTO,
212
229
  "purchaseAnyExternshipContracts"
213
230
  >;
231
+ hasExternshipRelation: $PropertyType<UserDTO, "hasExternshipRelation">;
232
+ hasExternshipActiveContract: $PropertyType<
233
+ UserDTO,
234
+ "hasExternshipActiveContract"
235
+ >;
236
+ canProlongateContract: $PropertyType<UserDTO, "canProlongateContract">;
237
+ prolongation: $PropertyType<UserDTO, "prolongation">;
238
+
239
+ /**
240
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
241
+ *
242
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
243
+ * означает, что окна нет вовсе, а не что оно бесконечно.
244
+ */
245
+ isProlongationBetweenDates(): boolean;
214
246
  static createDefault(): User;
215
247
  static fromApi(input: mixed): User;
216
248
  isDefaultUser(): boolean;
package/index.cjs CHANGED
@@ -1191,6 +1191,33 @@ var _User = class _User {
1191
1191
  get purchaseAnyExternshipContracts() {
1192
1192
  return this.props.purchaseAnyExternshipContracts;
1193
1193
  }
1194
+ get hasExternshipRelation() {
1195
+ return this.props.hasExternshipRelation;
1196
+ }
1197
+ get hasExternshipActiveContract() {
1198
+ return this.props.hasExternshipActiveContract;
1199
+ }
1200
+ get canProlongateContract() {
1201
+ return this.props.canProlongateContract;
1202
+ }
1203
+ get prolongation() {
1204
+ return this.props.prolongation;
1205
+ }
1206
+ /**
1207
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
1208
+ *
1209
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
1210
+ * означает, что окна нет вовсе, а не что оно бесконечно.
1211
+ */
1212
+ isProlongationBetweenDates() {
1213
+ var _a;
1214
+ const { endsAt, startsAt } = (_a = this.props.prolongation) != null ? _a : {};
1215
+ if (startsAt === void 0 || startsAt === null || endsAt === void 0 || endsAt === null) {
1216
+ return false;
1217
+ }
1218
+ const now = Date.now();
1219
+ return now >= Date.parse(startsAt) && now <= Date.parse(endsAt);
1220
+ }
1194
1221
  /**
1195
1222
  * Глубокое клонирование объекта с защитой от циклических ссылок
1196
1223
  * @private
package/index.d.cts CHANGED
@@ -55,9 +55,10 @@ interface UserDTO {
55
55
  elementaryDashboardUserExperienceFeedback?: boolean;
56
56
  homeSchoolFamilyEducationGuideHidden?: boolean;
57
57
  pageBonusesVisited?: boolean;
58
- pagePaymentsInfoVisited?: boolean;
58
+ pageDashboardPaymentsVisited?: boolean;
59
59
  pageSocializationLandingVisited?: boolean;
60
60
  pageSocializationVisited?: boolean;
61
+ supportButtonIndicatorHidden?: boolean;
61
62
  };
62
63
  bonus: {
63
64
  giftAmount: number;
@@ -101,6 +102,18 @@ interface UserDTO {
101
102
  } | null;
102
103
  freeAccessFinishesAt: null | string;
103
104
  purchaseAnyExternshipContracts: boolean;
105
+ hasExternshipRelation?: boolean;
106
+ hasExternshipActiveContract?: boolean;
107
+ canProlongateContract?: boolean;
108
+ /** Окно пролонгации договора домашней школы: даты, скидка и заголовок следующего года. */
109
+ prolongation?: {
110
+ dailyPlanBannerText?: string;
111
+ endsAt: null | string;
112
+ maxDiscount: number;
113
+ prolongationMenuTitleOn: boolean;
114
+ startsAt: null | string;
115
+ yearName: string;
116
+ } | null;
104
117
  }
105
118
 
106
119
  declare class User {
@@ -165,6 +178,17 @@ declare class User {
165
178
  get freeAccessFinishesAt(): UserDTO['freeAccessFinishesAt'];
166
179
  get hasUnseenRoomFeatures(): UserDTO['hasUnseenRoomFeatures'];
167
180
  get purchaseAnyExternshipContracts(): UserDTO['purchaseAnyExternshipContracts'];
181
+ get hasExternshipRelation(): UserDTO['hasExternshipRelation'];
182
+ get hasExternshipActiveContract(): UserDTO['hasExternshipActiveContract'];
183
+ get canProlongateContract(): UserDTO['canProlongateContract'];
184
+ get prolongation(): UserDTO['prolongation'];
185
+ /**
186
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
187
+ *
188
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
189
+ * означает, что окна нет вовсе, а не что оно бесконечно.
190
+ */
191
+ isProlongationBetweenDates(): boolean;
168
192
  /**
169
193
  * Глубокое клонирование объекта с защитой от циклических ссылок
170
194
  * @private
package/index.d.ts CHANGED
@@ -55,9 +55,10 @@ interface UserDTO {
55
55
  elementaryDashboardUserExperienceFeedback?: boolean;
56
56
  homeSchoolFamilyEducationGuideHidden?: boolean;
57
57
  pageBonusesVisited?: boolean;
58
- pagePaymentsInfoVisited?: boolean;
58
+ pageDashboardPaymentsVisited?: boolean;
59
59
  pageSocializationLandingVisited?: boolean;
60
60
  pageSocializationVisited?: boolean;
61
+ supportButtonIndicatorHidden?: boolean;
61
62
  };
62
63
  bonus: {
63
64
  giftAmount: number;
@@ -101,6 +102,18 @@ interface UserDTO {
101
102
  } | null;
102
103
  freeAccessFinishesAt: null | string;
103
104
  purchaseAnyExternshipContracts: boolean;
105
+ hasExternshipRelation?: boolean;
106
+ hasExternshipActiveContract?: boolean;
107
+ canProlongateContract?: boolean;
108
+ /** Окно пролонгации договора домашней школы: даты, скидка и заголовок следующего года. */
109
+ prolongation?: {
110
+ dailyPlanBannerText?: string;
111
+ endsAt: null | string;
112
+ maxDiscount: number;
113
+ prolongationMenuTitleOn: boolean;
114
+ startsAt: null | string;
115
+ yearName: string;
116
+ } | null;
104
117
  }
105
118
 
106
119
  declare class User {
@@ -165,6 +178,17 @@ declare class User {
165
178
  get freeAccessFinishesAt(): UserDTO['freeAccessFinishesAt'];
166
179
  get hasUnseenRoomFeatures(): UserDTO['hasUnseenRoomFeatures'];
167
180
  get purchaseAnyExternshipContracts(): UserDTO['purchaseAnyExternshipContracts'];
181
+ get hasExternshipRelation(): UserDTO['hasExternshipRelation'];
182
+ get hasExternshipActiveContract(): UserDTO['hasExternshipActiveContract'];
183
+ get canProlongateContract(): UserDTO['canProlongateContract'];
184
+ get prolongation(): UserDTO['prolongation'];
185
+ /**
186
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
187
+ *
188
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
189
+ * означает, что окна нет вовсе, а не что оно бесконечно.
190
+ */
191
+ isProlongationBetweenDates(): boolean;
168
192
  /**
169
193
  * Глубокое клонирование объекта с защитой от циклических ссылок
170
194
  * @private
package/index.js CHANGED
@@ -1139,6 +1139,33 @@ var _User = class _User {
1139
1139
  get purchaseAnyExternshipContracts() {
1140
1140
  return this.props.purchaseAnyExternshipContracts;
1141
1141
  }
1142
+ get hasExternshipRelation() {
1143
+ return this.props.hasExternshipRelation;
1144
+ }
1145
+ get hasExternshipActiveContract() {
1146
+ return this.props.hasExternshipActiveContract;
1147
+ }
1148
+ get canProlongateContract() {
1149
+ return this.props.canProlongateContract;
1150
+ }
1151
+ get prolongation() {
1152
+ return this.props.prolongation;
1153
+ }
1154
+ /**
1155
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
1156
+ *
1157
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
1158
+ * означает, что окна нет вовсе, а не что оно бесконечно.
1159
+ */
1160
+ isProlongationBetweenDates() {
1161
+ var _a;
1162
+ const { endsAt, startsAt } = (_a = this.props.prolongation) != null ? _a : {};
1163
+ if (startsAt === void 0 || startsAt === null || endsAt === void 0 || endsAt === null) {
1164
+ return false;
1165
+ }
1166
+ const now = Date.now();
1167
+ return now >= Date.parse(startsAt) && now <= Date.parse(endsAt);
1168
+ }
1142
1169
  /**
1143
1170
  * Глубокое клонирование объекта с защитой от циклических ссылок
1144
1171
  * @private
package/index.js.flow CHANGED
@@ -126,9 +126,10 @@ declare interface UserDTO {
126
126
  elementaryDashboardUserExperienceFeedback?: boolean,
127
127
  homeSchoolFamilyEducationGuideHidden?: boolean,
128
128
  pageBonusesVisited?: boolean,
129
- pagePaymentsInfoVisited?: boolean,
129
+ pageDashboardPaymentsVisited?: boolean,
130
130
  pageSocializationLandingVisited?: boolean,
131
131
  pageSocializationVisited?: boolean,
132
+ supportButtonIndicatorHidden?: boolean,
132
133
  ...
133
134
  };
134
135
  bonus: {
@@ -176,6 +177,22 @@ declare interface UserDTO {
176
177
  } | null;
177
178
  freeAccessFinishesAt: null | string;
178
179
  purchaseAnyExternshipContracts: boolean;
180
+ hasExternshipRelation?: boolean;
181
+ hasExternshipActiveContract?: boolean;
182
+ canProlongateContract?: boolean;
183
+
184
+ /**
185
+ * Окно пролонгации договора домашней школы: даты, скидка и заголовок следующего года.
186
+ */
187
+ prolongation?: {
188
+ dailyPlanBannerText?: string,
189
+ endsAt: null | string,
190
+ maxDiscount: number,
191
+ prolongationMenuTitleOn: boolean,
192
+ startsAt: null | string,
193
+ yearName: string,
194
+ ...
195
+ } | null;
179
196
  }
180
197
  declare class User {
181
198
  constructor(): this;
@@ -258,6 +275,21 @@ declare class User {
258
275
  UserDTO,
259
276
  "purchaseAnyExternshipContracts"
260
277
  >;
278
+ hasExternshipRelation: $PropertyType<UserDTO, "hasExternshipRelation">;
279
+ hasExternshipActiveContract: $PropertyType<
280
+ UserDTO,
281
+ "hasExternshipActiveContract"
282
+ >;
283
+ canProlongateContract: $PropertyType<UserDTO, "canProlongateContract">;
284
+ prolongation: $PropertyType<UserDTO, "prolongation">;
285
+
286
+ /**
287
+ * Идёт ли сейчас окно пролонгации договора домашней школы.
288
+ *
289
+ * Границы включаются: последний день окна ещё считается пролонгацией. Не заданная граница
290
+ * означает, что окна нет вовсе, а не что оно бесконечно.
291
+ */
292
+ isProlongationBetweenDates(): boolean;
261
293
  static createDefault(): User;
262
294
  static fromApi(input: mixed): User;
263
295
  isDefaultUser(): boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@foxford/sdk",
3
- "version": "7.0.0",
3
+ "version": "7.0.1",
4
4
  "description": "Foxford sdk for external projects",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -9,7 +9,8 @@
9
9
  "bugs": "https://github.com/foxford/frontend-platform/issues",
10
10
  "repository": {
11
11
  "type": "git",
12
- "url": "git+https://github.com/foxford/frontend-platform.git"
12
+ "url": "git+https://github.com/foxford/frontend-platform.git",
13
+ "directory": "packages/sdk"
13
14
  },
14
15
  "maintainers": [
15
16
  {
@@ -94,6 +95,6 @@
94
95
  "package.json",
95
96
  "plugins"
96
97
  ],
97
- "sha": "70cdd11",
98
+ "sha": "8ba3d93",
98
99
  "scripts": {}
99
100
  }
@@ -1,4 +1,4 @@
1
- import { S as SdkPlugin } from './types-CFv3gSlt.cjs';
1
+ import { S as SdkPlugin } from './types-Dm_vMzIq.cjs';
2
2
  import '@foxford/services';
3
3
  import '@foxford/types';
4
4
 
@@ -1,4 +1,4 @@
1
- import { S as SdkPlugin } from './types-CFv3gSlt.cjs';
1
+ import { S as SdkPlugin } from './types-Dm_vMzIq.cjs';
2
2
  import '@foxford/services';
3
3
  import '@foxford/types';
4
4