@topvisor/ui 1.5.10-hotkeys.4 → 1.5.10-hotkeys.6

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 (157) hide show
  1. package/.chunks/{app-BpyVfZtN.es.amd.js → app-qGtdp_Vh.es.amd.js} +2 -2
  2. package/.chunks/app-qGtdp_Vh.es.amd.js.map +1 -0
  3. package/.chunks/{app-BpyVfZtN.es.js → app-qGtdp_Vh.es.js} +12 -6
  4. package/.chunks/app-qGtdp_Vh.es.js.map +1 -0
  5. package/.chunks/{datepicker-CpnGeB5y.es.amd.js → datepicker-MlbIM78m.es.amd.js} +2 -2
  6. package/.chunks/{datepicker-CpnGeB5y.es.amd.js.map → datepicker-MlbIM78m.es.amd.js.map} +1 -1
  7. package/.chunks/{datepicker-CpnGeB5y.es.js → datepicker-MlbIM78m.es.js} +2 -2
  8. package/.chunks/{datepicker-CpnGeB5y.es.js.map → datepicker-MlbIM78m.es.js.map} +1 -1
  9. package/.chunks/dialog-C_1nmPXN.es.amd.js +2 -0
  10. package/.chunks/dialog-C_1nmPXN.es.amd.js.map +1 -0
  11. package/.chunks/{dialog-DZLTpHen.es.js → dialog-C_1nmPXN.es.js} +45 -30
  12. package/.chunks/dialog-C_1nmPXN.es.js.map +1 -0
  13. package/.chunks/dialog_regionSelectorRegions-BPUDeHdW.es.amd.js +2 -0
  14. package/.chunks/dialog_regionSelectorRegions-BPUDeHdW.es.amd.js.map +1 -0
  15. package/.chunks/dialog_regionSelectorRegions-BPUDeHdW.es.js +165 -0
  16. package/.chunks/dialog_regionSelectorRegions-BPUDeHdW.es.js.map +1 -0
  17. package/.chunks/forms-dosApNxi.es.amd.js +2 -0
  18. package/.chunks/forms-dosApNxi.es.amd.js.map +1 -0
  19. package/.chunks/{forms-CjJD60m3.es.js → forms-dosApNxi.es.js} +138 -133
  20. package/.chunks/forms-dosApNxi.es.js.map +1 -0
  21. package/.chunks/formsExt-D7XsRleI.es.amd.js +2 -0
  22. package/.chunks/formsExt-D7XsRleI.es.amd.js.map +1 -0
  23. package/.chunks/{formsExt-CbccziSy.es.js → formsExt-D7XsRleI.es.js} +13 -17
  24. package/.chunks/formsExt-D7XsRleI.es.js.map +1 -0
  25. package/.chunks/{notice-BSVUBQ4B.es.amd.js → notice-8nwvAJQm.es.amd.js} +2 -2
  26. package/.chunks/{notice-BSVUBQ4B.es.amd.js.map → notice-8nwvAJQm.es.amd.js.map} +1 -1
  27. package/.chunks/{notice-BSVUBQ4B.es.js → notice-8nwvAJQm.es.js} +2 -2
  28. package/.chunks/{notice-BSVUBQ4B.es.js.map → notice-8nwvAJQm.es.js.map} +1 -1
  29. package/.chunks/{popup-BoCCkzOM.es.amd.js → popup-Bn5Wm8WI.es.amd.js} +2 -2
  30. package/.chunks/{popup-BoCCkzOM.es.amd.js.map → popup-Bn5Wm8WI.es.amd.js.map} +1 -1
  31. package/.chunks/{popup-BoCCkzOM.es.js → popup-Bn5Wm8WI.es.js} +3 -3
  32. package/.chunks/{popup-BoCCkzOM.es.js.map → popup-Bn5Wm8WI.es.js.map} +1 -1
  33. package/.chunks/{popup-q1PRZblX.es.amd.js → popup-cAqd6Dj3.es.amd.js} +2 -2
  34. package/.chunks/{popup-q1PRZblX.es.amd.js.map → popup-cAqd6Dj3.es.amd.js.map} +1 -1
  35. package/.chunks/{popup-q1PRZblX.es.js → popup-cAqd6Dj3.es.js} +3 -3
  36. package/.chunks/{popup-q1PRZblX.es.js.map → popup-cAqd6Dj3.es.js.map} +1 -1
  37. package/.chunks/{utils-B8-plt84.es.amd.js → utils-D46Z7je_.es.amd.js} +2 -2
  38. package/.chunks/{utils-B8-plt84.es.amd.js.map → utils-D46Z7je_.es.amd.js.map} +1 -1
  39. package/.chunks/{utils-B8-plt84.es.js → utils-D46Z7je_.es.js} +4 -4
  40. package/.chunks/{utils-B8-plt84.es.js.map → utils-D46Z7je_.es.js.map} +1 -1
  41. package/.chunks/utils-mBJcBhkk.es.amd.js +2 -0
  42. package/.chunks/utils-mBJcBhkk.es.amd.js.map +1 -0
  43. package/.chunks/{utils-CUvjkXu8.es.js → utils-mBJcBhkk.es.js} +3 -4
  44. package/.chunks/utils-mBJcBhkk.es.js.map +1 -0
  45. package/.chunks/worker-BfCrg4RI.es.amd.js +2 -0
  46. package/.chunks/worker-BfCrg4RI.es.amd.js.map +1 -0
  47. package/.chunks/{worker-F-Y1IEi2.es.js → worker-BfCrg4RI.es.js} +4 -4
  48. package/.chunks/worker-BfCrg4RI.es.js.map +1 -0
  49. package/assets/forms.css +1 -1
  50. package/assets/formsExt.css +1 -1
  51. package/autoload-css-manifest.amd.json +4 -4
  52. package/autoload-css-manifest.json +4 -4
  53. package/charts/charts.amd.js +1 -1
  54. package/charts/charts.amd.js.map +1 -1
  55. package/charts/charts.js +1 -1
  56. package/core/app.amd.js +1 -1
  57. package/core/app.amd.js.map +1 -1
  58. package/core/app.js +3 -3
  59. package/dialog/dialog.amd.js +1 -1
  60. package/dialog/dialog.amd.js.map +1 -1
  61. package/dialog/dialog.js +2 -2
  62. package/forms/forms.amd.js +1 -1
  63. package/forms/forms.amd.js.map +1 -1
  64. package/forms/forms.js +1 -1
  65. package/formsExt/formsExt.amd.js +1 -1
  66. package/formsExt/formsExt.amd.js.map +1 -1
  67. package/formsExt/formsExt.js +1 -1
  68. package/icomoon/Topvisor icons.json +284 -261
  69. package/icomoon/demo.html +15 -1
  70. package/icomoon/fonts/Topvisor-2.eot +0 -0
  71. package/icomoon/fonts/Topvisor-2.svg +3 -1
  72. package/icomoon/fonts/Topvisor-2.ttf +0 -0
  73. package/icomoon/fonts/Topvisor-2.woff +0 -0
  74. package/icomoon/selection.json +1 -1
  75. package/icomoon/style.css +8 -5
  76. package/layout/layout.amd.js +1 -1
  77. package/layout/layout.amd.js.map +1 -1
  78. package/layout/layout.js +1 -1
  79. package/package.json +1 -1
  80. package/popup/popup.amd.js +1 -1
  81. package/popup/popup.amd.js.map +1 -1
  82. package/popup/popup.js +1 -1
  83. package/popup/worker.amd.js +1 -1
  84. package/popup/worker.amd.js.map +1 -1
  85. package/popup/worker.js +1 -1
  86. package/project/project.amd.js +1 -1
  87. package/project/project.amd.js.map +1 -1
  88. package/project/project.js +397 -381
  89. package/project/project.js.map +1 -1
  90. package/schedule/schedule.amd.js +1 -1
  91. package/schedule/schedule.amd.js.map +1 -1
  92. package/schedule/schedule.js +2 -2
  93. package/src/components/dialog/dialog/page/types.d.ts +10 -0
  94. package/src/components/formsExt/selector2/composables/useAPI.d.ts +1 -199
  95. package/src/components/project/projectSelector/cache.d.ts +2 -2
  96. package/src/components/project/projectSelector/utils.d.ts +13 -7
  97. package/src/components/project/regionSelector/dialog_regionSelectorRegions/types.d.ts +2 -4
  98. package/src/core/core/core.d.ts +17 -0
  99. package/src/core/core/options.d.ts +4 -0
  100. package/src/core/plugins/core.d.ts +1 -1
  101. package/src/core/utils/searchers.d.ts +15 -0
  102. package/src/core/utils/string.d.ts +7 -2
  103. package/tabsView/tabsView.amd.js +1 -1
  104. package/tabsView/tabsView.amd.js.map +1 -1
  105. package/tabsView/tabsView.js +2 -2
  106. package/utils/clipboard.amd.js +1 -1
  107. package/utils/clipboard.amd.js.map +1 -1
  108. package/utils/clipboard.js +1 -1
  109. package/utils/date.amd.js +1 -1
  110. package/utils/date.amd.js.map +1 -1
  111. package/utils/date.js +1 -1
  112. package/utils/device.amd.js +1 -1
  113. package/utils/device.amd.js.map +1 -1
  114. package/utils/device.js +1 -1
  115. package/utils/lodash.amd.js +1 -1
  116. package/utils/lodash.amd.js.map +1 -1
  117. package/utils/lodash.js +1 -1
  118. package/utils/price.amd.js +1 -1
  119. package/utils/price.amd.js.map +1 -1
  120. package/utils/price.js +1 -1
  121. package/utils/searchers.amd.js +1 -1
  122. package/utils/searchers.amd.js.map +1 -1
  123. package/utils/searchers.js +24 -7
  124. package/utils/searchers.js.map +1 -1
  125. package/utils/string.amd.js +2 -1
  126. package/utils/string.amd.js.map +1 -1
  127. package/utils/string.js +9 -2
  128. package/utils/string.js.map +1 -1
  129. package/.chunks/app-BpyVfZtN.es.amd.js.map +0 -1
  130. package/.chunks/app-BpyVfZtN.es.js.map +0 -1
  131. package/.chunks/dialog-DZLTpHen.es.amd.js +0 -2
  132. package/.chunks/dialog-DZLTpHen.es.amd.js.map +0 -1
  133. package/.chunks/dialog-DZLTpHen.es.js.map +0 -1
  134. package/.chunks/dialog_regionSelectorRegions-Nob9K60s.es.amd.js +0 -2
  135. package/.chunks/dialog_regionSelectorRegions-Nob9K60s.es.amd.js.map +0 -1
  136. package/.chunks/dialog_regionSelectorRegions-Nob9K60s.es.js +0 -169
  137. package/.chunks/dialog_regionSelectorRegions-Nob9K60s.es.js.map +0 -1
  138. package/.chunks/forms-CjJD60m3.es.amd.js +0 -2
  139. package/.chunks/forms-CjJD60m3.es.amd.js.map +0 -1
  140. package/.chunks/forms-CjJD60m3.es.js.map +0 -1
  141. package/.chunks/formsExt-CbccziSy.es.amd.js +0 -2
  142. package/.chunks/formsExt-CbccziSy.es.amd.js.map +0 -1
  143. package/.chunks/formsExt-CbccziSy.es.js.map +0 -1
  144. package/.chunks/utils-CUvjkXu8.es.amd.js +0 -2
  145. package/.chunks/utils-CUvjkXu8.es.amd.js.map +0 -1
  146. package/.chunks/utils-CUvjkXu8.es.js.map +0 -1
  147. package/.chunks/worker-F-Y1IEi2.es.amd.js +0 -2
  148. package/.chunks/worker-F-Y1IEi2.es.amd.js.map +0 -1
  149. package/.chunks/worker-F-Y1IEi2.es.js.map +0 -1
  150. package/src/components/dialog/dialog/stories/dialog_example/pages/utils.d.ts +0 -7
  151. package/src/components/project/groupSelector/stories/mocks/folders.d.ts +0 -4
  152. package/src/components/project/groupSelector/stories/mocks/groups.d.ts +0 -6
  153. package/src/components/project/groupSelector/stories/mocks/index.d.ts +0 -8
  154. package/src/components/project/groupSelector/stories/play/apiEditorMulti.d.ts +0 -2
  155. package/src/components/project/projectSelector/stories/mocks/index.d.ts +0 -5
  156. package/src/components/project/projectSelector/stories/mocks/projects.d.ts +0 -3
  157. package/src/components/schedule/schedule/stories/play/play.d.ts +0 -5
@@ -401,204 +401,6 @@ export declare const useAPI: (api: Props["api"], apiSetSearchParams: Props["apiS
401
401
  }[]>;
402
402
  isLoading: Ref<boolean, boolean>;
403
403
  countLoading: Ref<number, number>;
404
- load: (append: boolean) => Promise<{
405
- [x: string]: any;
406
- id: number | typeof ITEM_ID_NEW;
407
- name: string;
408
- listItemProps?: {
409
- type?: "button" | "formControls" | "regular" | "title" | "delimiter" | undefined;
410
- closeByClick?: boolean | undefined;
411
- class?: string | undefined;
412
- attrs?: {
413
- style?: string | undefined;
414
- title?: string | undefined;
415
- id?: string | undefined;
416
- dir?: string | undefined;
417
- hidden?: string | undefined;
418
- contextmenu?: string | undefined;
419
- lang?: string | undefined;
420
- tabindex?: string | undefined;
421
- color?: string | undefined;
422
- contenteditable?: string | undefined;
423
- onCopy?: string | undefined;
424
- onCut?: string | undefined;
425
- onPaste?: string | undefined;
426
- onCompositionend?: string | undefined;
427
- onCompositionstart?: string | undefined;
428
- onCompositionupdate?: string | undefined;
429
- onDrag?: string | undefined;
430
- onDragend?: string | undefined;
431
- onDragenter?: string | undefined;
432
- onDragexit?: string | undefined;
433
- onDragleave?: string | undefined;
434
- onDragover?: string | undefined;
435
- onDragstart?: string | undefined;
436
- onDrop?: string | undefined;
437
- onFocus?: string | undefined;
438
- onFocusin?: string | undefined;
439
- onFocusout?: string | undefined;
440
- onBlur?: string | undefined;
441
- onChange?: string | undefined;
442
- onBeforeinput?: string | undefined;
443
- onFormdata?: string | undefined;
444
- onInput?: string | undefined;
445
- onReset?: string | undefined;
446
- onSubmit?: string | undefined;
447
- onInvalid?: string | undefined;
448
- onFullscreenchange?: string | undefined;
449
- onFullscreenerror?: string | undefined;
450
- onLoad?: string | undefined;
451
- onError?: string | undefined;
452
- onKeydown?: string | undefined;
453
- onKeypress?: string | undefined;
454
- onKeyup?: string | undefined;
455
- onDblclick?: string | undefined;
456
- onMousedown?: string | undefined;
457
- onMouseenter?: string | undefined;
458
- onMouseleave?: string | undefined;
459
- onMousemove?: string | undefined;
460
- onMouseout?: string | undefined;
461
- onMouseover?: string | undefined;
462
- onMouseup?: string | undefined;
463
- onAbort?: string | undefined;
464
- onCanplay?: string | undefined;
465
- onCanplaythrough?: string | undefined;
466
- onDurationchange?: string | undefined;
467
- onEmptied?: string | undefined;
468
- onEncrypted?: string | undefined;
469
- onEnded?: string | undefined;
470
- onLoadeddata?: string | undefined;
471
- onLoadedmetadata?: string | undefined;
472
- onLoadstart?: string | undefined;
473
- onPause?: string | undefined;
474
- onPlay?: string | undefined;
475
- onPlaying?: string | undefined;
476
- onProgress?: string | undefined;
477
- onRatechange?: string | undefined;
478
- onSeeked?: string | undefined;
479
- onSeeking?: string | undefined;
480
- onStalled?: string | undefined;
481
- onSuspend?: string | undefined;
482
- onTimeupdate?: string | undefined;
483
- onVolumechange?: string | undefined;
484
- onWaiting?: string | undefined;
485
- onSelect?: string | undefined;
486
- onScroll?: string | undefined;
487
- onScrollend?: string | undefined;
488
- onTouchcancel?: string | undefined;
489
- onTouchend?: string | undefined;
490
- onTouchmove?: string | undefined;
491
- onTouchstart?: string | undefined;
492
- onAuxclick?: string | undefined;
493
- onClick?: string | undefined;
494
- onContextmenu?: string | undefined;
495
- onGotpointercapture?: string | undefined;
496
- onLostpointercapture?: string | undefined;
497
- onPointerdown?: string | undefined;
498
- onPointermove?: string | undefined;
499
- onPointerup?: string | undefined;
500
- onPointercancel?: string | undefined;
501
- onPointerenter?: string | undefined;
502
- onPointerleave?: string | undefined;
503
- onPointerover?: string | undefined;
504
- onPointerout?: string | undefined;
505
- onBeforetoggle?: string | undefined;
506
- onToggle?: string | undefined;
507
- onWheel?: string | undefined;
508
- onAnimationcancel?: string | undefined;
509
- onAnimationstart?: string | undefined;
510
- onAnimationend?: string | undefined;
511
- onAnimationiteration?: string | undefined;
512
- onSecuritypolicyviolation?: string | undefined;
513
- onTransitioncancel?: string | undefined;
514
- onTransitionend?: string | undefined;
515
- onTransitionrun?: string | undefined;
516
- onTransitionstart?: string | undefined;
517
- innerHTML?: string | undefined;
518
- accesskey?: string | undefined;
519
- draggable?: string | undefined;
520
- enterkeyhint?: string | undefined;
521
- enterKeyHint?: string | undefined;
522
- inert?: string | undefined;
523
- placeholder?: string | undefined;
524
- spellcheck?: string | undefined;
525
- translate?: string | undefined;
526
- radiogroup?: string | undefined;
527
- role?: string | undefined;
528
- about?: string | undefined;
529
- datatype?: string | undefined;
530
- inlist?: string | undefined;
531
- prefix?: string | undefined;
532
- property?: string | undefined;
533
- resource?: string | undefined;
534
- typeof?: string | undefined;
535
- vocab?: string | undefined;
536
- autocapitalize?: string | undefined;
537
- autocorrect?: string | undefined;
538
- autosave?: string | undefined;
539
- itemprop?: string | undefined;
540
- itemscope?: string | undefined;
541
- itemtype?: string | undefined;
542
- itemid?: string | undefined;
543
- itemref?: string | undefined;
544
- results?: string | undefined;
545
- security?: string | undefined;
546
- unselectable?: string | undefined;
547
- inputmode?: string | undefined;
548
- is?: string | undefined;
549
- exportparts?: string | undefined;
550
- part?: string | undefined;
551
- "aria-activedescendant"?: string | undefined;
552
- "aria-atomic"?: string | undefined;
553
- "aria-autocomplete"?: string | undefined;
554
- "aria-busy"?: string | undefined;
555
- "aria-checked"?: string | undefined;
556
- "aria-colcount"?: string | undefined;
557
- "aria-colindex"?: string | undefined;
558
- "aria-colspan"?: string | undefined;
559
- "aria-controls"?: string | undefined;
560
- "aria-current"?: string | undefined;
561
- "aria-describedby"?: string | undefined;
562
- "aria-details"?: string | undefined;
563
- "aria-disabled"?: string | undefined;
564
- "aria-dropeffect"?: string | undefined;
565
- "aria-errormessage"?: string | undefined;
566
- "aria-expanded"?: string | undefined;
567
- "aria-flowto"?: string | undefined;
568
- "aria-grabbed"?: string | undefined;
569
- "aria-haspopup"?: string | undefined;
570
- "aria-hidden"?: string | undefined;
571
- "aria-invalid"?: string | undefined;
572
- "aria-keyshortcuts"?: string | undefined;
573
- "aria-label"?: string | undefined;
574
- "aria-labelledby"?: string | undefined;
575
- "aria-level"?: string | undefined;
576
- "aria-live"?: string | undefined;
577
- "aria-modal"?: string | undefined;
578
- "aria-multiline"?: string | undefined;
579
- "aria-multiselectable"?: string | undefined;
580
- "aria-orientation"?: string | undefined;
581
- "aria-owns"?: string | undefined;
582
- "aria-placeholder"?: string | undefined;
583
- "aria-posinset"?: string | undefined;
584
- "aria-pressed"?: string | undefined;
585
- "aria-readonly"?: string | undefined;
586
- "aria-relevant"?: string | undefined;
587
- "aria-required"?: string | undefined;
588
- "aria-roledescription"?: string | undefined;
589
- "aria-rowcount"?: string | undefined;
590
- "aria-rowindex"?: string | undefined;
591
- "aria-rowspan"?: string | undefined;
592
- "aria-selected"?: string | undefined;
593
- "aria-setsize"?: string | undefined;
594
- "aria-sort"?: string | undefined;
595
- "aria-valuemax"?: string | undefined;
596
- "aria-valuemin"?: string | undefined;
597
- "aria-valuenow"?: string | undefined;
598
- "aria-valuetext"?: string | undefined;
599
- } | undefined;
600
- } | undefined;
601
- }[] | undefined>;
602
- getNextOffset: () => number | null | undefined;
404
+ load: (append: boolean) => Promise<void>;
603
405
  setSearchTextAndLoad: (newSearchText: string, useDebounce?: boolean) => void;
604
406
  };
@@ -1,4 +1,4 @@
1
- import { Project } from './types';
1
+ import { Item } from '../../formsExt/selector2/types';
2
2
  import { Ref, ShallowRef } from 'vue';
3
3
  /**
4
4
  * Promise текущего выполняющегося запроса на получение проектов.
@@ -24,7 +24,7 @@ export declare const projectsRequest: Ref<{
24
24
  *
25
25
  * @todo Добавить поддержку моков
26
26
  */
27
- export declare const projectsCache: ShallowRef<Project[] | undefined, Project[] | undefined>;
27
+ export declare const projectsCache: ShallowRef<Item[] | undefined, Item[] | undefined>;
28
28
  export declare const setCacheTotal: (projectsTotal: number) => void;
29
29
  export declare const getCacheTotal: () => number | undefined;
30
30
  /**
@@ -6,12 +6,6 @@ import { components } from 'topvisor-openapi/src/ts/TV/API/Types/UrlShort';
6
6
  * Сгенерировать элемент для TopSelector
7
7
  */
8
8
  export declare const genProjectItem: (project: Project) => Item;
9
- /**
10
- * Подготовить данные проектов для отображения:
11
- * - добавить `listItemProps` для шаблона TopSelector
12
- * - добавить заголовки к категориям
13
- */
14
- export declare const prepareProjects: (projects: Project[] | undefined) => Item[] | undefined;
15
9
  export declare const navigateToProject: (projectId: number) => void;
16
10
  /**
17
11
  * Сгенерировать ссылку на страницу проекта с инструментом
@@ -41,8 +35,12 @@ export declare const genProjectExternalLink: (url: string) => string;
41
35
  export declare const apiSetSearchParamsFilter: (api: NonNullable<Props["api"]>, search: string) => void;
42
36
  /**
43
37
  * Создать API запрос на получение списка проектов
38
+ *
39
+ * Данные после загрузки преобразуются с помощью `prepareProjects()`
40
+ *
41
+ * @see prepareProjects
44
42
  */
45
- export declare const genApiGetProjects: (client: Api.Client<Api.TV.Paths, true>) => Api.ClientRequest<Api.ClientRequestContext< paths, "/get/projects_2/projects/", true>, ("name" | "id" | "on" | "right" | "user_id" | "url")[], Api.Params<Api.ClientRequestContext< paths, "/get/projects_2/projects/", true>, undefined, {
43
+ export declare const genApiGetProjects: (client: Api.Client<Api.TV.Paths, true>, needOnApiLoaded?: boolean) => Api.ClientRequest<Api.ClientRequestContext< paths, "/get/projects_2/projects/", true>, ("name" | "id" | "on" | "right" | "user_id" | "url")[], Api.Params<Api.ClientRequestContext< paths, "/get/projects_2/projects/", true>, undefined, {
46
44
  "COUNT(*)"?: any;
47
45
  "IS_YOUTUBE()"?: any;
48
46
  "IS_APP_STORE()"?: any;
@@ -263,6 +261,14 @@ export declare const genApiGetProjects: (client: Api.Client<Api.TV.Paths, true>)
263
261
  guest_link_right_volumes?: number | null;
264
262
  guest_link_right_visitors?: number | null;
265
263
  }> | undefined>;
264
+ /**
265
+ * Состояние поиска следующего/предыдущего проекта
266
+ *
267
+ * Состояние хранит загруженные ids проектов в порядке сортировки `TopProjectSelector` и догружает страницы API по необходимости
268
+ */
269
+ export declare const nextProjectIdState: (client: Api.Client<Api.TV.Paths, true>) => {
270
+ getNextProjectId: (currentProjectId: number, prev?: boolean) => Promise<number | undefined>;
271
+ };
266
272
  /**
267
273
  * Создать API запрос для добавления проекта
268
274
  */
@@ -1,4 +1,5 @@
1
1
  import { Region } from '../types';
2
+ import { genRegionLabelData } from '../../../../core/utils/searchers';
2
3
  export interface Props {
3
4
  /**
4
5
  * Список регионов
@@ -18,9 +19,6 @@ export interface Props {
18
19
  */
19
20
  export type RegionRich = Region & {
20
21
  selected: boolean;
21
- title: string;
22
- searcherIcon: string;
23
- langLabel?: string;
24
- deviceIcon?: string;
22
+ labelData: ReturnType<typeof genRegionLabelData>;
25
23
  flagLink?: string;
26
24
  };
@@ -25,6 +25,19 @@ export default class Core {
25
25
  size: number;
26
26
  isHidden: boolean;
27
27
  };
28
+ static options: {
29
+ documentClassModificators: Map<string | number, string>;
30
+ themeName: "light" | "dark" | string;
31
+ widthForMobile: number;
32
+ userId: number;
33
+ dateFormat: string;
34
+ currency: "RUB" | "USD" | "EUR";
35
+ timezoneOffset: number;
36
+ closedByMod: Record<string, boolean>;
37
+ showGlobalRegionForKeywordsStats: boolean;
38
+ forceSearchersKeysForKeywordsStats: number[];
39
+ goToHandler: (url: string) => Promise<void>;
40
+ };
28
41
  static preloaders: typeof preloaders;
29
42
  static widthForMobile: number;
30
43
  static themeName: string;
@@ -114,4 +127,8 @@ export default class Core {
114
127
  * @see insertToPage
115
128
  */
116
129
  static insertStyleToPage: (style: string, type?: "" | "m" | "pc") => void;
130
+ /**
131
+ * Выполнить переход по url
132
+ */
133
+ static goTo: (url: string) => Promise<void>;
117
134
  }
@@ -66,5 +66,9 @@ declare const _default: {
66
66
  * Какие ПС надо всегда выводить в компонентах, связанных с выводом статистика запросов
67
67
  */
68
68
  forceSearchersKeysForKeywordsStats: number[];
69
+ /**
70
+ * Обработчик навигации в приложении
71
+ */
72
+ goToHandler: (url: string) => Promise<void>;
69
73
  };
70
74
  export default _default;
@@ -41,7 +41,7 @@ declare module '@vue/runtime-core' {
41
41
  TopDialogs: typeof TopDialogs;
42
42
  }
43
43
  }
44
- type CoreOptions = PartialBy<typeof coreDefaultOptions, 'documentClassModificators' | 'userId' | 'timezoneOffset' | 'closedByMod' | 'showGlobalRegionForKeywordsStats' | 'forceSearchersKeysForKeywordsStats'>;
44
+ type CoreOptions = PartialBy<typeof coreDefaultOptions, 'documentClassModificators' | 'userId' | 'timezoneOffset' | 'closedByMod' | 'showGlobalRegionForKeywordsStats' | 'forceSearchersKeysForKeywordsStats' | 'goToHandler'>;
45
45
  type Options = CoreOptions & {
46
46
  topPopupOptions?: TopPopupOptions;
47
47
  topDialogOptions?: TopDialogOptions;
@@ -1,3 +1,4 @@
1
+ import { Region } from '../../components/project/regionSelector/types';
1
2
  /**
2
3
  * Вспомогательный класс для работы с разными Поисковиками
3
4
  */
@@ -29,6 +30,20 @@ export declare const getDeviceGIcon: (device: number | string) => string;
29
30
  * Получить иконку языка
30
31
  */
31
32
  export declare const getLangLabel: (searcherKey: number | string, lang: string) => string;
33
+ /**
34
+ * Сгенерировать данные подписи региона.
35
+ *
36
+ * Настройки по умолчанию не добавляют суффиксы к региону.
37
+ * Например, `device` `ПК` и `alt` `XML` не выводим.
38
+ */
39
+ export declare const genRegionLabelData: (region: Partial<Region>) => {
40
+ searcherTopIcon: string;
41
+ searcherLabel: string;
42
+ deviceTopIcon: string;
43
+ deviceLabel: any;
44
+ langLabel: string;
45
+ altLabel: string;
46
+ };
32
47
  /**
33
48
  * Сгенерировать заголовок типа частоты
34
49
  */
@@ -28,9 +28,14 @@ export declare const isUrl: (url: string) => boolean;
28
28
  */
29
29
  export declare const addCommasWhite: (n: number | string) => string;
30
30
  /**
31
- * Вставляет HTML-код разрыва строки перед каждым переводом строки
31
+ * Заменяет переносы строк на `<br>`.
32
+ *
33
+ * @param str - Исходная строка.
34
+ * @param skipBrNearTags - Пропускать замену переносов строк рядом с популярными блочными тегами.
35
+ *
36
+ * Блочные теги, которые будут пропущены: `div`, `p`, `ul`, `ol`, `li`, `blockquote`, `pre`.
32
37
  */
33
- export declare const nl2br: (str: string) => string;
38
+ export declare const nl2br: (str: string, skipBrNearTags?: boolean) => string;
34
39
  /**
35
40
  * Перевести число без деситичной приставки в число с деситичной приставкой степеней тысячи (с параметрами по умолчанию 1255 -> '1.26 K')
36
41
  * @param number
@@ -1,2 +1,2 @@
1
- define([`require`,`exports`,`../.chunks/forms-CjJD60m3.es.amd`,`../utils/system.amd`,`../utils/route.amd`,`../.chunks/store-DjQAOnrn.es.amd`,`../.chunks/popup-q1PRZblX.es.amd`,`vue`,`../require/css.amd!../assets/tabsView.css`],function(e,t,n,r,i,a,o,s){"use strict";if(c===void 0)var c=window.Vue;Object.defineProperty(t,"__esModule",{value:!0}),t.TopTabsViewMenuTitle=t.TopTabsViewMenuItem=t.TopTabsView=void 0;var l=(e,t)=>`top:${String(e)}:${t}`,u={loadLocalStorge:(e,t)=>{if(!t.$id)return;let n=l(e,t.$id);try{let r=JSON.parse(localStorage.getItem(n));typeof r==typeof t[e]&&(t[e]=r)}catch{console.warn(Error(`В localStorage[${n}] не корректный json`))}},addSaverLocalStorge:(e,t)=>{if(!t.$id)return;let n=l(e,t.$id);(0,s.watch)(()=>t[e],()=>{localStorage.setItem(n,JSON.stringify(t[e]))},{immediate:!0})}},d=new Set;addEventListener(`popstate`,e=>{d.forEach(t=>t(e))});var f=Symbol(),p=(e,t)=>{let r=(0,a.t)(f,()=>({showMenuInPopup:(0,s.computed)(()=>e.showMenuInPopup??n.O.state.isMobile),pageMod:(0,s.computed)(()=>e.pageMod),isShort:(0,s.ref)(!1),activeItemName:t,component:(0,s.ref)(void 0),scrollable:(0,s.ref)(!0)}),e.idState);if(e.isShortable){let e=`isShort`;u.loadLocalStorge(e,r),u.addSaverLocalStorge(e,r)}return r.$id&&d.add(e=>{t.value=(0,i.getHash)(r.$id)}),r},m=()=>(0,a.r)(f),h={key:1,class:`top-ellipsis`},g=(0,s.defineComponent)({__name:`menuItem`,props:{name:{},href:{},icon:{},disabled:{type:Boolean},component:{default:void 0},scrollable:{type:Boolean,default:!0}},setup(e,{slots:t}){let n=e,r=m(),a=(0,s.computed)(()=>n.name&&r.$id?(0,i.genHash)(r.$id,n.name):n.href),c=(0,s.computed)(()=>r.showMenuInPopup?o.o:a.value?`a`:`button`),l=e=>{!n.href&&a.value&&e.preventDefault(),n.name&&(r.activeItemName=n.name)};return(n,i)=>((0,s.openBlock)(),(0,s.createBlock)((0,s.resolveDynamicComponent)(c.value),{target:`_self`,class:(0,s.normalizeClass)({"top-tabsView_menuItem":!(0,s.unref)(r).showMenuInPopup,"top-active":e.name&&(0,s.unref)(r).activeItemName===e.name,"top-disabled":e.disabled,"top-spa-disabled":!0}),href:a.value,"data-top-icon":e.icon||void 0,disabled:e.disabled||void 0,onClick:l},{default:(0,s.withCtx)(()=>[(0,s.unref)(r).showMenuInPopup?(0,s.renderSlot)(n.$slots,`default`,{},void 0,void 0,0):t.default&&!(0,s.unref)(r).isShort?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,h,[(0,s.renderSlot)(n.$slots,`default`)])):(0,s.createCommentVNode)(``,!0)]),_:3},8,[`class`,`href`,`data-top-icon`,`disabled`]))}}),_=e=>e?.name===`AsyncComponentWrapper`&&!e?.__asyncResolved,v=async(e,t)=>{e?.name===`AsyncComponentWrapper`&&(e?.__asyncResolved||(e.__asyncLoader(),await(0,r.sleepWhile)(()=>t()&&_(e),200)))},y={class:`top-tabsView_menuOpener`},b=[`data-top-icon`],x={class:`top-ellipsis`},S={class:`top-tabsView_menuList`},C={key:0,class:`top-tabsView_menuFooter`},w=(0,s.defineComponent)({__name:`menu`,props:(0,s.mergeModels)({isShortable:{type:Boolean},isLoading:{type:Boolean}},{isLoading:{},isLoadingModifiers:{}}),emits:[`update:isLoading`],setup(e){let t=(0,s.useModel)(e,`isLoading`),n=m(),r=(0,s.useSlots)(),a=new Map,c=()=>{if(!r.default)return;let e=r.default({}).find(e=>e.key===`_menu`);e&&l(e.children)},l=e=>{e.forEach(e=>{if(e.type.__name&&e.type.__name!==g.__name)return;if(!e.type.__name&&typeof e.children==`object`){l(e.children);return}if(!e.props?.name||e.props?.disabled)return;let t={title:(e.children.default?.()[0].children).trim(),icon:e.props.icon,component:e.props.component?(0,s.markRaw)(e.props.component):g.props.component.default,scrollable:e.props.scrollable??g.props.scrollable.default};a.set(e.props.name,t)})},u=(0,s.ref)(null),d=0;return(0,s.watch)(()=>n.activeItemName,async()=>{let e=++d;if(a.size===0&&c(),a.size===0){n.activeItemName=``;return}if(u.value=a.get(n.activeItemName)??null,!u.value&&n.$id){let e=(0,i.getHash)(n.$id);if(u.value=a.get(e)??null,u.value){n.activeItemName=e;return}}if(!u.value){n.activeItemName=a.keys().next().value;return}if(u.value.component===n.component){t.value=!1;return}n.$id&&(0,i.setHash)(n.$id,n.activeItemName,!1),t.value=!0,await v(u.value.component,()=>e===d),e===d&&(n.scrollable=u.value.scrollable,n.component=u.value.component,u.value&&!n.component&&console.warn(`Компонент вкладки ${n.activeItemName} не найден. Добавьте props.component для пункта меню ${n.activeItemName}.`))},{immediate:!0}),(t,r)=>((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{class:(0,s.normalizeClass)({"top-tabsView_menu":!0,"top-tabsView_menu-inPopup_0":!(0,s.unref)(n).showMenuInPopup,"top-tabsView_menu-inPopup_1":(0,s.unref)(n).showMenuInPopup,"top-tabsView_menu-short":(0,s.unref)(n).isShort&&!(0,s.unref)(n).showMenuInPopup})},[(0,s.unref)(n).showMenuInPopup?((0,s.openBlock)(),(0,s.createBlock)((0,s.unref)(o.s),{key:0},{opener:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`div`,y,[u.value?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:0,class:`top-tabsView_menuOpenerActiveItem`,"data-top-icon":u.value.icon},[(0,s.createElementVNode)(`span`,x,(0,s.toDisplayString)(u.value.title),1)],8,b)):(0,s.createCommentVNode)(``,!0),r[1]||=(0,s.createElementVNode)(`div`,{class:`top-tabsView_menuOpenerIcon`,"data-top-icon":``},null,-1)])]),contentList:(0,s.withCtx)(()=>[(0,s.renderSlot)(t.$slots,`default`)]),_:3})):((0,s.openBlock)(),(0,s.createElementBlock)(s.Fragment,{key:1},[(0,s.createElementVNode)(`div`,S,[(0,s.renderSlot)(t.$slots,`default`)]),e.isShortable?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,C,[e.isShortable?((0,s.openBlock)(),(0,s.createBlock)(g,{key:0,icon:(0,s.unref)(n).isShort?``:``,onClick:r[0]||=e=>(0,s.unref)(n).isShort=!(0,s.unref)(n).isShort},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)((0,s.unref)(n).isShort?``:`Свернуть`),1)]),_:1},8,[`icon`])):(0,s.createCommentVNode)(``,!0)])):(0,s.createCommentVNode)(``,!0)],64))],2))}}),T=(0,s.defineComponent)({__name:`tabsView`,props:(0,s.mergeModels)({modelValue:{},pageMod:{type:Boolean},showMenuInPopup:{type:Boolean,default:void 0},isShortable:{type:Boolean,default:!1},idState:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,r=p(t,(0,s.useModel)(e,`modelValue`)),a=Math.random();t.pageMod&&n.O.state.documentClassModificators.set(a,`top-hasTabsViewPageMod`),(0,s.onUnmounted)(()=>{t.pageMod&&n.O.state.documentClassModificators.delete(a),r.$id&&(0,i.delHash)(r.$id,!0)});let o=(0,s.ref)(),c=(0,s.ref)(!1);return(0,s.watch)([o,()=>r.component],()=>{c.value=_(r.component)},{immediate:!0}),(i,a)=>((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{class:(0,s.normalizeClass)({"top-tabsView":!0,"top-tabsView-pageMod":t.pageMod,"top-tabsView-inPopup":(0,s.unref)(r).showMenuInPopup})},[(0,s.createVNode)(w,{isShortable:e.isShortable,isLoading:c.value,"onUpdate:isLoading":a[0]||=e=>c.value=e},{default:(0,s.withCtx)(()=>[(0,s.renderSlot)(i.$slots,`menu`)]),_:3},8,[`isShortable`,`isLoading`]),(0,s.createElementVNode)(`div`,{class:(0,s.normalizeClass)({"top-tabsView_contents":!0,"top-tabsView_contents-isLoading":c.value,"top-tabsView_contents-noScrollable":!(0,s.unref)(r).scrollable})},[c.value?((0,s.openBlock)(),(0,s.createBlock)(n.l,{key:0})):(0,s.createCommentVNode)(``,!0),((0,s.openBlock)(),(0,s.createBlock)(s.KeepAlive,null,[((0,s.openBlock)(),(0,s.createBlock)((0,s.resolveDynamicComponent)((0,s.unref)(r).component),{ref_key:`componentRef`,ref:o},null,512))],1024))],2)],2))}}),E={},D={class:`top-tabsView_menuDelimeter`};t.TopTabsViewMenuItem=g,t.TopTabsView=T;function O(e,t){return(0,s.openBlock)(),(0,s.createElementBlock)(`div`,D)}var k=(0,n.u)(E,[[`render`,O]]);t.TopTabsViewMenuTitle=(0,s.defineComponent)({__name:`menuTitle`,props:{isSubtitle:{type:Boolean}},setup(e){let t=m();return(n,r)=>(0,s.unref)(t).showMenuInPopup?((0,s.openBlock)(),(0,s.createBlock)((0,s.unref)(o.o),{key:0,type:`title`},{default:(0,s.withCtx)(()=>[(0,s.renderSlot)(n.$slots,`default`)]),_:3})):(0,s.unref)(t).isShort?((0,s.openBlock)(),(0,s.createBlock)(k,{key:1})):((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:2,class:(0,s.normalizeClass)({"top-tabsView_menuTitle":!0,"top-tabsView_menuTitle-subtitle":e.isSubtitle})},[(0,s.renderSlot)(n.$slots,`default`)],2))}})});
1
+ define([`require`,`exports`,`../.chunks/forms-dosApNxi.es.amd`,`../utils/system.amd`,`../utils/route.amd`,`../.chunks/store-DjQAOnrn.es.amd`,`../.chunks/popup-cAqd6Dj3.es.amd`,`vue`,`../require/css.amd!../assets/tabsView.css`],function(e,t,n,r,i,a,o,s){"use strict";if(c===void 0)var c=window.Vue;Object.defineProperty(t,"__esModule",{value:!0}),t.TopTabsViewMenuTitle=t.TopTabsViewMenuItem=t.TopTabsView=void 0;var l=(e,t)=>`top:${String(e)}:${t}`,u={loadLocalStorge:(e,t)=>{if(!t.$id)return;let n=l(e,t.$id);try{let r=JSON.parse(localStorage.getItem(n));typeof r==typeof t[e]&&(t[e]=r)}catch{console.warn(Error(`В localStorage[${n}] не корректный json`))}},addSaverLocalStorge:(e,t)=>{if(!t.$id)return;let n=l(e,t.$id);(0,s.watch)(()=>t[e],()=>{localStorage.setItem(n,JSON.stringify(t[e]))},{immediate:!0})}},d=new Set;addEventListener(`popstate`,e=>{d.forEach(t=>t(e))});var f=Symbol(),p=(e,t)=>{let r=(0,a.t)(f,()=>({showMenuInPopup:(0,s.computed)(()=>e.showMenuInPopup??n.O.state.isMobile),pageMod:(0,s.computed)(()=>e.pageMod),isShort:(0,s.ref)(!1),activeItemName:t,component:(0,s.ref)(void 0),scrollable:(0,s.ref)(!0)}),e.idState);if(e.isShortable){let e=`isShort`;u.loadLocalStorge(e,r),u.addSaverLocalStorge(e,r)}return r.$id&&d.add(e=>{t.value=(0,i.getHash)(r.$id)}),r},m=()=>(0,a.r)(f),h={key:1,class:`top-ellipsis`},g=(0,s.defineComponent)({__name:`menuItem`,props:{name:{},href:{},icon:{},disabled:{type:Boolean},component:{default:void 0},scrollable:{type:Boolean,default:!0}},setup(e,{slots:t}){let n=e,r=m(),a=(0,s.computed)(()=>n.name&&r.$id?(0,i.genHash)(r.$id,n.name):n.href),c=(0,s.computed)(()=>r.showMenuInPopup?o.o:a.value?`a`:`button`),l=e=>{!n.href&&a.value&&e.preventDefault(),n.name&&(r.activeItemName=n.name)};return(n,i)=>((0,s.openBlock)(),(0,s.createBlock)((0,s.resolveDynamicComponent)(c.value),{target:`_self`,class:(0,s.normalizeClass)({"top-tabsView_menuItem":!(0,s.unref)(r).showMenuInPopup,"top-active":e.name&&(0,s.unref)(r).activeItemName===e.name,"top-disabled":e.disabled,"top-spa-disabled":!0}),href:a.value,"data-top-icon":e.icon||void 0,disabled:e.disabled||void 0,onClick:l},{default:(0,s.withCtx)(()=>[(0,s.unref)(r).showMenuInPopup?(0,s.renderSlot)(n.$slots,`default`,{},void 0,void 0,0):t.default&&!(0,s.unref)(r).isShort?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,h,[(0,s.renderSlot)(n.$slots,`default`)])):(0,s.createCommentVNode)(``,!0)]),_:3},8,[`class`,`href`,`data-top-icon`,`disabled`]))}}),_=e=>e?.name===`AsyncComponentWrapper`&&!e?.__asyncResolved,v=async(e,t)=>{e?.name===`AsyncComponentWrapper`&&(e?.__asyncResolved||(e.__asyncLoader(),await(0,r.sleepWhile)(()=>t()&&_(e),200)))},y={class:`top-tabsView_menuOpener`},b=[`data-top-icon`],x={class:`top-ellipsis`},S={class:`top-tabsView_menuList`},C={key:0,class:`top-tabsView_menuFooter`},w=(0,s.defineComponent)({__name:`menu`,props:(0,s.mergeModels)({isShortable:{type:Boolean},isLoading:{type:Boolean}},{isLoading:{},isLoadingModifiers:{}}),emits:[`update:isLoading`],setup(e){let t=(0,s.useModel)(e,`isLoading`),n=m(),r=(0,s.useSlots)(),a=new Map,c=()=>{if(!r.default)return;let e=r.default({}).find(e=>e.key===`_menu`);e&&l(e.children)},l=e=>{e.forEach(e=>{if(e.type.__name&&e.type.__name!==g.__name)return;if(!e.type.__name&&typeof e.children==`object`){l(e.children);return}if(!e.props?.name||e.props?.disabled)return;let t={title:(e.children.default?.()[0].children).trim(),icon:e.props.icon,component:e.props.component?(0,s.markRaw)(e.props.component):g.props.component.default,scrollable:e.props.scrollable??g.props.scrollable.default};a.set(e.props.name,t)})},u=(0,s.ref)(null),d=0;return(0,s.watch)(()=>n.activeItemName,async()=>{let e=++d;if(a.size===0&&c(),a.size===0){n.activeItemName=``;return}if(u.value=a.get(n.activeItemName)??null,!u.value&&n.$id){let e=(0,i.getHash)(n.$id);if(u.value=a.get(e)??null,u.value){n.activeItemName=e;return}}if(!u.value){n.activeItemName=a.keys().next().value;return}if(u.value.component===n.component){t.value=!1;return}n.$id&&(0,i.setHash)(n.$id,n.activeItemName,!1),t.value=!0,await v(u.value.component,()=>e===d),e===d&&(n.scrollable=u.value.scrollable,n.component=u.value.component,u.value&&!n.component&&console.warn(`Компонент вкладки ${n.activeItemName} не найден. Добавьте props.component для пункта меню ${n.activeItemName}.`))},{immediate:!0}),(t,r)=>((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{class:(0,s.normalizeClass)({"top-tabsView_menu":!0,"top-tabsView_menu-inPopup_0":!(0,s.unref)(n).showMenuInPopup,"top-tabsView_menu-inPopup_1":(0,s.unref)(n).showMenuInPopup,"top-tabsView_menu-short":(0,s.unref)(n).isShort&&!(0,s.unref)(n).showMenuInPopup})},[(0,s.unref)(n).showMenuInPopup?((0,s.openBlock)(),(0,s.createBlock)((0,s.unref)(o.s),{key:0},{opener:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`div`,y,[u.value?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:0,class:`top-tabsView_menuOpenerActiveItem`,"data-top-icon":u.value.icon},[(0,s.createElementVNode)(`span`,x,(0,s.toDisplayString)(u.value.title),1)],8,b)):(0,s.createCommentVNode)(``,!0),r[1]||=(0,s.createElementVNode)(`div`,{class:`top-tabsView_menuOpenerIcon`,"data-top-icon":``},null,-1)])]),contentList:(0,s.withCtx)(()=>[(0,s.renderSlot)(t.$slots,`default`)]),_:3})):((0,s.openBlock)(),(0,s.createElementBlock)(s.Fragment,{key:1},[(0,s.createElementVNode)(`div`,S,[(0,s.renderSlot)(t.$slots,`default`)]),e.isShortable?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,C,[e.isShortable?((0,s.openBlock)(),(0,s.createBlock)(g,{key:0,icon:(0,s.unref)(n).isShort?``:``,onClick:r[0]||=e=>(0,s.unref)(n).isShort=!(0,s.unref)(n).isShort},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)((0,s.unref)(n).isShort?``:`Свернуть`),1)]),_:1},8,[`icon`])):(0,s.createCommentVNode)(``,!0)])):(0,s.createCommentVNode)(``,!0)],64))],2))}}),T=(0,s.defineComponent)({__name:`tabsView`,props:(0,s.mergeModels)({modelValue:{},pageMod:{type:Boolean},showMenuInPopup:{type:Boolean,default:void 0},isShortable:{type:Boolean,default:!1},idState:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,r=p(t,(0,s.useModel)(e,`modelValue`)),a=Math.random();t.pageMod&&n.O.state.documentClassModificators.set(a,`top-hasTabsViewPageMod`),(0,s.onUnmounted)(()=>{t.pageMod&&n.O.state.documentClassModificators.delete(a),r.$id&&(0,i.delHash)(r.$id,!0)});let o=(0,s.ref)(),c=(0,s.ref)(!1);return(0,s.watch)([o,()=>r.component],()=>{c.value=_(r.component)},{immediate:!0}),(i,a)=>((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{class:(0,s.normalizeClass)({"top-tabsView":!0,"top-tabsView-pageMod":t.pageMod,"top-tabsView-inPopup":(0,s.unref)(r).showMenuInPopup})},[(0,s.createVNode)(w,{isShortable:e.isShortable,isLoading:c.value,"onUpdate:isLoading":a[0]||=e=>c.value=e},{default:(0,s.withCtx)(()=>[(0,s.renderSlot)(i.$slots,`menu`)]),_:3},8,[`isShortable`,`isLoading`]),(0,s.createElementVNode)(`div`,{class:(0,s.normalizeClass)({"top-tabsView_contents":!0,"top-tabsView_contents-isLoading":c.value,"top-tabsView_contents-noScrollable":!(0,s.unref)(r).scrollable})},[c.value?((0,s.openBlock)(),(0,s.createBlock)(n.l,{key:0})):(0,s.createCommentVNode)(``,!0),((0,s.openBlock)(),(0,s.createBlock)(s.KeepAlive,null,[((0,s.openBlock)(),(0,s.createBlock)((0,s.resolveDynamicComponent)((0,s.unref)(r).component),{ref_key:`componentRef`,ref:o},null,512))],1024))],2)],2))}}),E={},D={class:`top-tabsView_menuDelimeter`};t.TopTabsViewMenuItem=g,t.TopTabsView=T;function O(e,t){return(0,s.openBlock)(),(0,s.createElementBlock)(`div`,D)}var k=(0,n.u)(E,[[`render`,O]]);t.TopTabsViewMenuTitle=(0,s.defineComponent)({__name:`menuTitle`,props:{isSubtitle:{type:Boolean}},setup(e){let t=m();return(n,r)=>(0,s.unref)(t).showMenuInPopup?((0,s.openBlock)(),(0,s.createBlock)((0,s.unref)(o.o),{key:0,type:`title`},{default:(0,s.withCtx)(()=>[(0,s.renderSlot)(n.$slots,`default`)]),_:3})):(0,s.unref)(t).isShort?((0,s.openBlock)(),(0,s.createBlock)(k,{key:1})):((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:2,class:(0,s.normalizeClass)({"top-tabsView_menuTitle":!0,"top-tabsView_menuTitle-subtitle":e.isSubtitle})},[(0,s.renderSlot)(n.$slots,`default`)],2))}})});
2
2
  //# sourceMappingURL=tabsView.amd.js.map