@webitel/ui-sdk 26.8.50 → 26.8.51

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 (57) hide show
  1. package/dist/clients-rgtvDufW.js +39250 -0
  2. package/dist/{components-2ISVk3oW.js → components-9JJurJkY.js} +639 -631
  3. package/dist/{enums-De8CDKZ1.js → enums-DY3jIXFF.js} +50 -29
  4. package/dist/ui-sdk.js +3 -3
  5. package/dist/ui-sdk.umd.cjs +394 -394
  6. package/dist/{useValidation-D6P-wRwq.js → useValidation-BD4S-sEW.js} +1 -1
  7. package/dist/{wt-action-bar-HBm22ay5.js → wt-action-bar-C4JukltF.js} +2 -2
  8. package/dist/{wt-button-B7B7qITq.js → wt-button-2_aOV7LX.js} +4 -4
  9. package/dist/{wt-chat-emoji-ytWQWd8E.js → wt-chat-emoji-D2VNcMWj.js} +4 -4
  10. package/dist/{wt-datepicker-B8PRf5QY.js → wt-datepicker-H4E0JyRE.js} +6 -6
  11. package/dist/{wt-display-chip-items-BzQFwYws.js → wt-display-chip-items-Dk-8hhAU.js} +1 -1
  12. package/dist/{wt-dual-panel-BEGLGU7F.js → wt-dual-panel-C98aGU8o.js} +1 -1
  13. package/dist/{wt-expansion-card-CpmnVJ03.js → wt-expansion-card-CEMaWXCy.js} +1 -1
  14. package/dist/{wt-expansion-panel-Br7JPc5X.js → wt-expansion-panel-BjeXHSay.js} +1 -1
  15. package/dist/{wt-icon-09f_Vpk_.js → wt-icon-Ct0E7k_d.js} +1 -1
  16. package/dist/{wt-icon-action-BBmutGsL.js → wt-icon-action-DB6P4E4K.js} +1 -1
  17. package/dist/{wt-icon-btn-DvrrxhWx.js → wt-icon-btn-DZa_qsai.js} +1 -1
  18. package/dist/{wt-notifications-bar-0o0yhR7P.js → wt-notifications-bar-BEomlIrN.js} +2 -2
  19. package/dist/{wt-player-D_kVPIdJ.js → wt-player-1-8X7Uo8.js} +3 -3
  20. package/dist/{wt-search-bar-Dnjkgro3.js → wt-search-bar-DzzSQyB3.js} +1 -1
  21. package/dist/{wt-send-message-popup-BuTlCwnq.js → wt-send-message-popup-BYV75cZf.js} +2 -2
  22. package/dist/{wt-status-select-DL1bOn9G.js → wt-status-select-BuojqV_1.js} +9 -9
  23. package/dist/{wt-timepicker-CAkO0jFY.js → wt-timepicker-RhM7Sln_.js} +2 -2
  24. package/dist/{wt-toast-DrfbAfTj.js → wt-toast-eWzfeYuz.js} +2 -2
  25. package/dist/{wt-tree-table-DJGISZ65.js → wt-tree-table-DvG6KLLB.js} +1 -1
  26. package/dist/{wt-type-extension-value-input-DVpMso5z.js → wt-type-extension-value-input-BYoxNwD4.js} +3 -3
  27. package/dist/{wt-vidstack-player-DhaLynZB.js → wt-vidstack-player-B-vb7PqO.js} +4 -4
  28. package/package.json +3 -1
  29. package/src/enums/QueueType/QueueType.enum.ts +12 -31
  30. package/src/enums/RelativeDatetimeValue/RelativeDatetimeValue.ts +1 -11
  31. package/src/locale/en/en.js +64 -0
  32. package/src/locale/es/es.js +64 -0
  33. package/src/locale/kz/kz.js +64 -0
  34. package/src/locale/pl/pl.js +64 -0
  35. package/src/locale/ro/ro.js +64 -0
  36. package/src/locale/ru/ru.js +64 -0
  37. package/src/locale/uk/uk.js +64 -0
  38. package/src/locale/uz/uz.js +64 -0
  39. package/src/locale/vi/vi.js +64 -0
  40. package/src/scripts/normalizeDatetime.ts +7 -88
  41. package/types/.tsbuildinfo +1 -1
  42. package/types/enums/QueueType/QueueType.enum.d.ts +9 -28
  43. package/types/enums/RelativeDatetimeValue/RelativeDatetimeValue.d.ts +1 -7
  44. package/types/locale/en/en.d.ts +64 -0
  45. package/types/locale/es/es.d.ts +87 -3
  46. package/types/locale/i18n.d.ts +576 -0
  47. package/types/locale/index.d.ts +576 -0
  48. package/types/locale/kz/kz.d.ts +87 -3
  49. package/types/locale/pl/pl.d.ts +87 -3
  50. package/types/locale/ro/ro.d.ts +87 -3
  51. package/types/locale/ru/ru.d.ts +87 -3
  52. package/types/locale/uk/uk.d.ts +87 -3
  53. package/types/locale/uz/uz.d.ts +87 -3
  54. package/types/locale/vi/vi.d.ts +87 -3
  55. package/types/modules/Flow/lookups/FlowTypeApplications.lookup.d.ts +1 -1
  56. package/types/scripts/normalizeDatetime.d.ts +1 -8
  57. package/dist/clients-DBqdsc05.js +0 -38757
@@ -229,6 +229,34 @@ export default {
229
229
  [snakeToCamel(AgentStatus.BreakOut)]: 'Przerwa',
230
230
  },
231
231
  },
232
+ bucket: 'Kubeł | Kubeły',
233
+ joinedAt: 'Dołączono',
234
+ leavingAt: 'Opuszczono',
235
+ offeringAt: 'Zaoferowano',
236
+ stopCause: {
237
+ stopCause: 'Przyczyna zakończenia',
238
+ abandoned: 'Porzucone',
239
+ timeout: 'Przekroczono czas',
240
+ cancel: 'Anulowane',
241
+ success: 'Sukces',
242
+ failed: 'Niepowodzenie',
243
+ missed: 'Przegapione',
244
+ expired: 'Wygasło',
245
+ canceledByTimeout: 'Anulowano z powodu przekroczenia czasu',
246
+ },
247
+ memberPriority: 'Priorytet',
248
+ attempts: 'Próby',
249
+ callReportingResult: {
250
+ result: 'Wynik',
251
+ abandoned: 'Porzucone',
252
+ cancel: 'Anulowane',
253
+ success: 'Sukces',
254
+ failed: 'Niepowodzenie',
255
+ missed: 'Przegapione',
256
+ timeout: 'Przekroczono czas',
257
+ endless: 'Nieskończony',
258
+ transferred: 'Przekazane',
259
+ },
232
260
  flow: {
233
261
  name: 'Schemat przepływu | Schematy przepływu',
234
262
  type: {
@@ -701,6 +729,9 @@ export default {
701
729
  author: ({ linked }) => {
702
730
  return linked('cases.author');
703
731
  },
732
+ bucket: ({ linked }) => {
733
+ return linked('objects.bucket');
734
+ },
704
735
  cause: ({ linked }) => {
705
736
  return linked('objects.hangupCause');
706
737
  },
@@ -743,6 +774,39 @@ export default {
743
774
  hasUser: ({ linked }) => {
744
775
  return linked('objects.user');
745
776
  },
777
+ joinedAt: ({ linked }) => {
778
+ return linked('objects.joinedAt');
779
+ },
780
+ leavingAt: ({ linked }) => {
781
+ return linked('objects.leavingAt');
782
+ },
783
+ offeringAt: ({ linked }) => {
784
+ return linked('objects.offeringAt');
785
+ },
786
+ stopCause: ({ linked }) => {
787
+ return linked('objects.stopCause.stopCause');
788
+ },
789
+ memberPriority: ({ linked }) => {
790
+ return linked('objects.memberPriority');
791
+ },
792
+ attempts: ({ linked }) => {
793
+ return linked('objects.attempts');
794
+ },
795
+ name: ({ linked }) => {
796
+ return linked('reusable.name');
797
+ },
798
+ destination: ({ linked }) => {
799
+ return linked('vocabulary.destination');
800
+ },
801
+ duration: ({ linked }) => {
802
+ return linked('vocabulary.duration');
803
+ },
804
+ result: ({ linked }) => {
805
+ return linked('objects.callReportingResult.result');
806
+ },
807
+ tags: ({ linked }) => {
808
+ return linked('vocabulary.tag');
809
+ },
746
810
  impacted: ({ linked }) => {
747
811
  return linked('cases.impacted');
748
812
  },
@@ -229,6 +229,34 @@ export default {
229
229
  [snakeToCamel(AgentStatus.BreakOut)]: 'Pauză mare',
230
230
  },
231
231
  },
232
+ bucket: 'Balon | Baloane',
233
+ joinedAt: 'Alăturat la',
234
+ leavingAt: 'Părăsit la',
235
+ offeringAt: 'Ofertat la',
236
+ stopCause: {
237
+ stopCause: 'Motiv sfârșit',
238
+ abandoned: 'Abandonat',
239
+ timeout: 'Timp de așteptare',
240
+ cancel: 'Anulat',
241
+ success: 'Succes',
242
+ failed: 'Eșuat',
243
+ missed: 'Pierdut',
244
+ expired: 'Expirat',
245
+ canceledByTimeout: 'Anulat din cauza timpului expirat',
246
+ },
247
+ memberPriority: 'Prioritate',
248
+ attempts: 'Încercări',
249
+ callReportingResult: {
250
+ result: 'Rezultat',
251
+ abandoned: 'Abandonat',
252
+ cancel: 'Anulat',
253
+ success: 'Succes',
254
+ failed: 'Eșuat',
255
+ missed: 'Pierdut',
256
+ timeout: 'Timp de așteptare',
257
+ endless: 'Nelimitat',
258
+ transferred: 'Transferat',
259
+ },
232
260
  flow: {
233
261
  name: 'Schemă flux | Scheme flux',
234
262
  type: {
@@ -707,6 +735,9 @@ export default {
707
735
  author: ({ linked }) => {
708
736
  return linked('cases.author');
709
737
  },
738
+ bucket: ({ linked }) => {
739
+ return linked('objects.bucket');
740
+ },
710
741
  cause: ({ linked }) => {
711
742
  return linked('objects.hangupCause');
712
743
  },
@@ -749,6 +780,39 @@ export default {
749
780
  hasUser: ({ linked }) => {
750
781
  return linked('objects.user');
751
782
  },
783
+ joinedAt: ({ linked }) => {
784
+ return linked('objects.joinedAt');
785
+ },
786
+ leavingAt: ({ linked }) => {
787
+ return linked('objects.leavingAt');
788
+ },
789
+ offeringAt: ({ linked }) => {
790
+ return linked('objects.offeringAt');
791
+ },
792
+ stopCause: ({ linked }) => {
793
+ return linked('objects.stopCause.stopCause');
794
+ },
795
+ memberPriority: ({ linked }) => {
796
+ return linked('objects.memberPriority');
797
+ },
798
+ attempts: ({ linked }) => {
799
+ return linked('objects.attempts');
800
+ },
801
+ name: ({ linked }) => {
802
+ return linked('reusable.name');
803
+ },
804
+ destination: ({ linked }) => {
805
+ return linked('vocabulary.destination');
806
+ },
807
+ duration: ({ linked }) => {
808
+ return linked('vocabulary.duration');
809
+ },
810
+ result: ({ linked }) => {
811
+ return linked('objects.callReportingResult.result');
812
+ },
813
+ tags: ({ linked }) => {
814
+ return linked('vocabulary.tag');
815
+ },
752
816
  impacted: ({ linked }) => {
753
817
  return linked('cases.impacted');
754
818
  },
@@ -225,6 +225,34 @@ export default {
225
225
  [snakeToCamel(AgentStatus.BreakOut)]: 'Принудительный перерыв',
226
226
  },
227
227
  },
228
+ bucket: 'Корзина | Корзины',
229
+ joinedAt: 'Присоединено',
230
+ leavingAt: 'Покинуто',
231
+ offeringAt: 'Предложено',
232
+ stopCause: {
233
+ stopCause: 'Причина прекращения',
234
+ abandoned: 'Потерянный',
235
+ timeout: 'Тайм-аут',
236
+ cancel: 'Отменённый',
237
+ success: 'Успешный',
238
+ failed: 'Неудачный',
239
+ missed: 'Пропущенный',
240
+ expired: 'Истекший',
241
+ canceledByTimeout: 'Отменен по тайм-ауту',
242
+ },
243
+ memberPriority: 'Приоритет',
244
+ attempts: 'Попыток',
245
+ callReportingResult: {
246
+ result: 'Результат',
247
+ abandoned: 'Потерянный',
248
+ cancel: 'Отменённый',
249
+ success: 'Успешный',
250
+ failed: 'Неудачный',
251
+ missed: 'Пропущенный',
252
+ timeout: 'Тайм-аут',
253
+ endless: 'Бесконечный',
254
+ transferred: 'Переведен',
255
+ },
228
256
  flow: {
229
257
  name: 'Схема | Схемы',
230
258
  type: {
@@ -697,6 +725,9 @@ export default {
697
725
  author: ({ linked }) => {
698
726
  return linked('cases.author');
699
727
  },
728
+ bucket: ({ linked }) => {
729
+ return linked('objects.bucket');
730
+ },
700
731
  cause: ({ linked }) => {
701
732
  return linked('objects.hangupCause');
702
733
  },
@@ -739,6 +770,39 @@ export default {
739
770
  hasUser: ({ linked }) => {
740
771
  return linked('objects.user');
741
772
  },
773
+ joinedAt: ({ linked }) => {
774
+ return linked('objects.joinedAt');
775
+ },
776
+ leavingAt: ({ linked }) => {
777
+ return linked('objects.leavingAt');
778
+ },
779
+ offeringAt: ({ linked }) => {
780
+ return linked('objects.offeringAt');
781
+ },
782
+ stopCause: ({ linked }) => {
783
+ return linked('objects.stopCause.stopCause');
784
+ },
785
+ memberPriority: ({ linked }) => {
786
+ return linked('objects.memberPriority');
787
+ },
788
+ attempts: ({ linked }) => {
789
+ return linked('objects.attempts');
790
+ },
791
+ name: ({ linked }) => {
792
+ return linked('reusable.name');
793
+ },
794
+ destination: ({ linked }) => {
795
+ return linked('vocabulary.destination');
796
+ },
797
+ duration: ({ linked }) => {
798
+ return linked('vocabulary.duration');
799
+ },
800
+ result: ({ linked }) => {
801
+ return linked('objects.callReportingResult.result');
802
+ },
803
+ tags: ({ linked }) => {
804
+ return linked('vocabulary.tag');
805
+ },
742
806
  impacted: ({ linked }) => {
743
807
  return linked('cases.impacted');
744
808
  },
@@ -224,6 +224,34 @@ export default {
224
224
  [snakeToCamel(AgentStatus.BreakOut)]: 'Примусова перерва',
225
225
  },
226
226
  },
227
+ bucket: 'Кошик | Кошики',
228
+ joinedAt: 'Приєднано',
229
+ leavingAt: 'Покинуто',
230
+ offeringAt: 'Запропоновано',
231
+ stopCause: {
232
+ stopCause: 'Причина припинення',
233
+ abandoned: 'Втрачений',
234
+ timeout: 'Тайм-аут',
235
+ cancel: 'Скасований',
236
+ success: 'Успішний',
237
+ failed: 'Неуспішний',
238
+ missed: 'Пропущений',
239
+ expired: 'Час вийшов',
240
+ canceledByTimeout: 'Скасовано по тайм-ауту',
241
+ },
242
+ memberPriority: 'Пріоритет',
243
+ attempts: 'Спроб',
244
+ callReportingResult: {
245
+ result: 'Результат',
246
+ abandoned: 'Втрачений',
247
+ cancel: 'Скасований',
248
+ success: 'Успішний',
249
+ failed: 'Неуспішний',
250
+ missed: 'Пропущений',
251
+ timeout: 'Тайм-аут',
252
+ endless: 'Нескінченний',
253
+ transferred: 'Переведений',
254
+ },
227
255
  flow: {
228
256
  name: 'Схема | Схеми',
229
257
  type: {
@@ -695,6 +723,9 @@ export default {
695
723
  author: ({ linked }) => {
696
724
  return linked('cases.author');
697
725
  },
726
+ bucket: ({ linked }) => {
727
+ return linked('objects.bucket');
728
+ },
698
729
  cause: ({ linked }) => {
699
730
  return linked('objects.hangupCause');
700
731
  },
@@ -737,6 +768,39 @@ export default {
737
768
  hasUser: ({ linked }) => {
738
769
  return linked('objects.user');
739
770
  },
771
+ joinedAt: ({ linked }) => {
772
+ return linked('objects.joinedAt');
773
+ },
774
+ leavingAt: ({ linked }) => {
775
+ return linked('objects.leavingAt');
776
+ },
777
+ offeringAt: ({ linked }) => {
778
+ return linked('objects.offeringAt');
779
+ },
780
+ stopCause: ({ linked }) => {
781
+ return linked('objects.stopCause.stopCause');
782
+ },
783
+ memberPriority: ({ linked }) => {
784
+ return linked('objects.memberPriority');
785
+ },
786
+ attempts: ({ linked }) => {
787
+ return linked('objects.attempts');
788
+ },
789
+ name: ({ linked }) => {
790
+ return linked('reusable.name');
791
+ },
792
+ destination: ({ linked }) => {
793
+ return linked('vocabulary.destination');
794
+ },
795
+ duration: ({ linked }) => {
796
+ return linked('vocabulary.duration');
797
+ },
798
+ result: ({ linked }) => {
799
+ return linked('objects.callReportingResult.result');
800
+ },
801
+ tags: ({ linked }) => {
802
+ return linked('vocabulary.tag');
803
+ },
740
804
  impacted: ({ linked }) => {
741
805
  return linked('cases.impacted');
742
806
  },
@@ -229,6 +229,34 @@ export default {
229
229
  [snakeToCamel(AgentStatus.BreakOut)]: 'Tanaffus',
230
230
  },
231
231
  },
232
+ bucket: 'Bucket | Buckets',
233
+ joinedAt: "Qo'shilgan sana",
234
+ leavingAt: 'Chiqilgan sana',
235
+ offeringAt: 'Taklif qilingan sana',
236
+ stopCause: {
237
+ stopCause: 'Tugatish sababi',
238
+ abandoned: 'Abandoned',
239
+ timeout: 'Vaqt',
240
+ cancel: 'Bekor qilish',
241
+ success: 'Muvaffaqiyatli',
242
+ failed: 'Yaroqsiz',
243
+ missed: 'Bekor qilindi',
244
+ expired: 'Yaroqli',
245
+ canceledByTimeout: 'Vaqt tugashi sababli bekor qilindi',
246
+ },
247
+ memberPriority: 'Prioritet',
248
+ attempts: 'Urinishlar',
249
+ callReportingResult: {
250
+ result: 'Natija',
251
+ abandoned: 'Bekor qilindi',
252
+ cancel: 'Bekor qilindi',
253
+ success: 'Muvaffaqiyatli',
254
+ failed: 'Yaroqsiz',
255
+ missed: 'Bekor qilindi',
256
+ timeout: 'Vaqt',
257
+ endless: 'Cheksiz',
258
+ transferred: 'Uzatilgan',
259
+ },
232
260
  flow: {
233
261
  name: 'Oqim sxemasi | Oqim sxemalari',
234
262
  type: {
@@ -706,6 +734,9 @@ export default {
706
734
  author: ({ linked }) => {
707
735
  return linked('cases.author');
708
736
  },
737
+ bucket: ({ linked }) => {
738
+ return linked('objects.bucket');
739
+ },
709
740
  cause: ({ linked }) => {
710
741
  return linked('objects.hangupCause');
711
742
  },
@@ -748,6 +779,39 @@ export default {
748
779
  hasUser: ({ linked }) => {
749
780
  return linked('objects.user');
750
781
  },
782
+ joinedAt: ({ linked }) => {
783
+ return linked('objects.joinedAt');
784
+ },
785
+ leavingAt: ({ linked }) => {
786
+ return linked('objects.leavingAt');
787
+ },
788
+ offeringAt: ({ linked }) => {
789
+ return linked('objects.offeringAt');
790
+ },
791
+ stopCause: ({ linked }) => {
792
+ return linked('objects.stopCause.stopCause');
793
+ },
794
+ memberPriority: ({ linked }) => {
795
+ return linked('objects.memberPriority');
796
+ },
797
+ attempts: ({ linked }) => {
798
+ return linked('objects.attempts');
799
+ },
800
+ name: ({ linked }) => {
801
+ return linked('reusable.name');
802
+ },
803
+ destination: ({ linked }) => {
804
+ return linked('vocabulary.destination');
805
+ },
806
+ duration: ({ linked }) => {
807
+ return linked('vocabulary.duration');
808
+ },
809
+ result: ({ linked }) => {
810
+ return linked('objects.callReportingResult.result');
811
+ },
812
+ tags: ({ linked }) => {
813
+ return linked('vocabulary.tag');
814
+ },
751
815
  impacted: ({ linked }) => {
752
816
  return linked('cases.impacted');
753
817
  },
@@ -229,6 +229,34 @@ export default {
229
229
  [snakeToCamel(AgentStatus.BreakOut)]: 'Giải lao',
230
230
  },
231
231
  },
232
+ bucket: 'Thùng chứa',
233
+ joinedAt: 'Tham gia lúc',
234
+ leavingAt: 'Rời lúc',
235
+ offeringAt: 'Đề xuất lúc',
236
+ stopCause: {
237
+ stopCause: 'Nguyên nhân kết thúc',
238
+ abandoned: 'Bỏ qua',
239
+ timeout: 'Hết thời gian',
240
+ cancel: 'Hủy',
241
+ success: 'Thành công',
242
+ failed: 'Thất bại',
243
+ missed: 'Bỏ qua',
244
+ expired: 'Hết hạn',
245
+ canceledByTimeout: 'Đã hủy do hết thời gian chờ',
246
+ },
247
+ memberPriority: 'Ưu tiên',
248
+ attempts: 'Lần thử',
249
+ callReportingResult: {
250
+ result: 'Kết quả',
251
+ abandoned: 'Bỏ qua',
252
+ cancel: 'Hủy',
253
+ success: 'Thành công',
254
+ failed: 'Thất bại',
255
+ missed: 'Bỏ qua',
256
+ timeout: 'Hết thời gian',
257
+ endless: 'Vô hạn',
258
+ transferred: 'Chuyển đổi',
259
+ },
232
260
  flow: {
233
261
  name: 'Sơ đồ luồng | Sơ đồ luồng',
234
262
  type: {
@@ -704,6 +732,9 @@ export default {
704
732
  author: ({ linked }) => {
705
733
  return linked('cases.author');
706
734
  },
735
+ bucket: ({ linked }) => {
736
+ return linked('objects.bucket');
737
+ },
707
738
  cause: ({ linked }) => {
708
739
  return linked('objects.hangupCause');
709
740
  },
@@ -746,6 +777,39 @@ export default {
746
777
  hasUser: ({ linked }) => {
747
778
  return linked('objects.user');
748
779
  },
780
+ joinedAt: ({ linked }) => {
781
+ return linked('objects.joinedAt');
782
+ },
783
+ leavingAt: ({ linked }) => {
784
+ return linked('objects.leavingAt');
785
+ },
786
+ offeringAt: ({ linked }) => {
787
+ return linked('objects.offeringAt');
788
+ },
789
+ stopCause: ({ linked }) => {
790
+ return linked('objects.stopCause.stopCause');
791
+ },
792
+ memberPriority: ({ linked }) => {
793
+ return linked('objects.memberPriority');
794
+ },
795
+ attempts: ({ linked }) => {
796
+ return linked('objects.attempts');
797
+ },
798
+ name: ({ linked }) => {
799
+ return linked('reusable.name');
800
+ },
801
+ destination: ({ linked }) => {
802
+ return linked('vocabulary.destination');
803
+ },
804
+ duration: ({ linked }) => {
805
+ return linked('vocabulary.duration');
806
+ },
807
+ result: ({ linked }) => {
808
+ return linked('objects.callReportingResult.result');
809
+ },
810
+ tags: ({ linked }) => {
811
+ return linked('vocabulary.tag');
812
+ },
749
813
  impacted: ({ linked }) => {
750
814
  return linked('cases.impacted');
751
815
  },
@@ -1,88 +1,7 @@
1
- import {
2
- endOfMonth,
3
- endOfToday,
4
- endOfWeek,
5
- startOfMonth,
6
- startOfToday,
7
- startOfWeek,
8
- } from 'date-fns';
9
-
10
- import { RelativeDatetimeValue } from '../enums';
11
-
12
- export type RelativeDatetimeRoundOption =
13
- | 'start'
14
- | 'end'; /* for "from" or "to" */
15
-
16
- export type NormalizeDatetimeValueParam =
17
- | RelativeDatetimeValue
18
- | number
19
- | string
20
- | null
21
- | undefined;
22
-
23
- export type NormalizeDatetimeOptions = {
24
- round?: RelativeDatetimeRoundOption;
25
- };
26
-
27
- export const isRelativeDatetimeValue = (
28
- value: unknown,
29
- ): value is RelativeDatetimeValue => {
30
- return (
31
- typeof value === 'string' &&
32
- (Object.values(RelativeDatetimeValue) as string[]).includes(value)
33
- );
34
- };
35
-
36
- const convertRelativeDatetimeToTimestamp = (
37
- relativeValue: RelativeDatetimeValue,
38
- options?: NormalizeDatetimeOptions,
39
- ): number => {
40
- if (options?.round === 'end') {
41
- switch (relativeValue) {
42
- case RelativeDatetimeValue.Today:
43
- return endOfToday().getTime();
44
- case RelativeDatetimeValue.ThisWeek:
45
- return endOfWeek(Date.now(), {
46
- weekStartsOn: 1,
47
- }).getTime();
48
- case RelativeDatetimeValue.ThisMonth:
49
- return endOfMonth(Date.now()).getTime();
50
- default:
51
- return Date.now();
52
- }
53
- }
54
- switch (relativeValue) {
55
- case RelativeDatetimeValue.Today:
56
- return startOfToday().getTime();
57
- case RelativeDatetimeValue.ThisWeek:
58
- return startOfWeek(Date.now(), {
59
- weekStartsOn: 1,
60
- }).getTime();
61
- case RelativeDatetimeValue.ThisMonth:
62
- return startOfMonth(Date.now()).getTime();
63
- default:
64
- return Date.now();
65
- }
66
- };
67
-
68
- export const normalizeToTimestamp = (
69
- value?: NormalizeDatetimeValueParam,
70
- options: NormalizeDatetimeOptions = {},
71
- ): number => {
72
- if (value == null) {
73
- return 0;
74
- }
75
- if (typeof value === 'number') {
76
- return value;
77
- }
78
- if (isRelativeDatetimeValue(value)) {
79
- return convertRelativeDatetimeToTimestamp(value, options);
80
- }
81
- if (typeof value === 'string') {
82
- if (+value) {
83
- return +value;
84
- }
85
- return 0;
86
- }
87
- return Date.now();
88
- };
1
+ export {
2
+ isRelativeDatetimeValue,
3
+ type NormalizeDatetimeOptions,
4
+ type NormalizeDatetimeValueParam,
5
+ normalizeToTimestamp,
6
+ type RelativeDatetimeRoundOption,
7
+ } from '@webitel/api-services/scripts';