@hotelinking/ui 9.41.24 → 9.41.27

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 (34) hide show
  1. package/dist/types/components/Atoms/uiInput/uiInput.vue.d.ts +1 -1
  2. package/dist/types/components/Atoms/uiToggle/uiToggle.vue.d.ts +23 -1
  3. package/dist/types/components/Molecules/uiAlert/uiAlert.vue.d.ts +1 -1
  4. package/dist/types/components/Molecules/uiBreadcrumbs/uiBreadcrumbs.vue.d.ts +6 -2
  5. package/dist/types/components/Molecules/uiCard/uiCard.vue.d.ts +16 -2
  6. package/dist/types/components/Molecules/uiDeviceStatus/uiDeviceStatus.vue.d.ts +8 -2
  7. package/dist/types/components/Molecules/uiFilter/uiFilter.vue.d.ts +1 -1
  8. package/dist/types/components/Molecules/uiModal/uiModal.vue.d.ts +10 -8
  9. package/dist/types/components/Molecules/uiNotification/uiNotification.vue.d.ts +6 -2
  10. package/dist/types/components/Molecules/uiSectionTitle/uiSectionTitle.vue.d.ts +1 -1
  11. package/dist/types/components/Molecules/uiTaskList/uiTaskList.vue.d.ts +1 -1
  12. package/dist/types/components/Organisms/uiCharts/uiChart.vue.d.ts +4 -4
  13. package/dist/types/components/Organisms/uiCircleCharts/uiCircleChart.vue.d.ts +15 -9
  14. package/dist/types/components/Organisms/uiDateRange/uiDateRange.vue.d.ts +12 -2
  15. package/dist/types/components/Organisms/uiDragAndDrop/uiDragAndDrop.vue.d.ts +1 -1
  16. package/dist/types/components/Organisms/uiFunnelChartV2/uiFunnelChartV2.vue.d.ts +5 -5
  17. package/dist/types/components/Organisms/uiGallery/uiGallery.vue.d.ts +1 -1
  18. package/dist/types/components/Organisms/uiLoadingScreen/uiLoadingScreen.vue.d.ts +1 -1
  19. package/dist/types/components/Organisms/uiNoResults/uiNoResults.vue.d.ts +3 -3
  20. package/dist/types/components/Organisms/uiPagination/uiPagination.vue.d.ts +1 -1
  21. package/dist/types/components/Organisms/uiPriceCalendar/uiPriceCalendar.vue.d.ts +16 -147
  22. package/dist/types/components/Organisms/uiRightSidebar/uiRightSidebar.vue.d.ts +1 -1
  23. package/dist/types/components/Organisms/uiSidebar/uiSidebar.vue.d.ts +4 -4
  24. package/dist/types/components/Organisms/uiSidebar/uiSidebarV2.vue.d.ts +5 -5
  25. package/dist/types/components/Organisms/uiStats/uiStats.vue.d.ts +1 -1
  26. package/dist/types/components/Organisms/uiStripedCard/uiStripedCard.vue.d.ts +1 -1
  27. package/dist/types/components/Organisms/uiTable/uiTable.vue.d.ts +4 -1
  28. package/dist/types/components/Organisms/uiTabs/uiTabs.vue.d.ts +1 -1
  29. package/dist/types/components/Organisms/uiTimeline/uiTimeline.vue.d.ts +8 -2
  30. package/dist/types/components/Organisms/uiTopbar/uiTopbar.vue.d.ts +1 -1
  31. package/dist/types/types/index.d.ts +447 -38
  32. package/dist/ui.cjs +21 -21
  33. package/dist/ui.es.js +3602 -3647
  34. package/package.json +18 -13
@@ -6,11 +6,13 @@ export declare const AllColors: readonly ["primary", "secondary", "light", "gree
6
6
  export declare const Sizes: readonly ["small", "medium", "big"];
7
7
  export declare const BiggerSizes: readonly ["bigger", "huge", "massive"];
8
8
  export declare const AllSizes: readonly ["small", "medium", "big", "bigger", "huge", "massive"];
9
+ export declare const Types: string[];
9
10
  type Colors = typeof Colors[number];
10
11
  type AllColors = typeof AllColors[number];
11
12
  type InputTypes = typeof UiInputTypes[number];
12
13
  type Sizes = typeof Sizes[number];
13
14
  type AllSizes = typeof AllSizes[number];
15
+ type Types = typeof Types[number];
14
16
  export interface UiButtonInterface {
15
17
  /** Defines if button as block class applied or not */
16
18
  block?: boolean;
@@ -19,7 +21,7 @@ export interface UiButtonInterface {
19
21
  /** Button is enabled or disabled */
20
22
  disabled?: boolean;
21
23
  /** Defines an icon in button´s left side. As you need to import the icon directly from icons library, you must use '@heroicons/vue/24/outline' icon type */
22
- icon?: any;
24
+ icon?: FunctionalComponent;
23
25
  /** Is in skeleton mode or not */
24
26
  loading: boolean;
25
27
  /** Size options (see type Sizes) */
@@ -38,7 +40,7 @@ export interface UiCheckboxInterface {
38
40
  text?: string;
39
41
  }
40
42
  export interface UiCheckboxEventsInterface {
41
- /** On checkbox changed state */
43
+ /** Emitted when click over checkbox */
42
44
  (e: 'checkboxChanged', checkbox: UiCheckboxType): void;
43
45
  }
44
46
  export type UiCheckboxType = {
@@ -267,6 +269,15 @@ export interface UiToggleInterface {
267
269
  /** Is loading or not */
268
270
  loading: boolean;
269
271
  }
272
+ export interface UiToggleEventsInterface {
273
+ /** emitted when toggle is changed */
274
+ (e: 'toggleChanged', T: {
275
+ item: UiToggleInterface["item"];
276
+ active: boolean;
277
+ }): void;
278
+ /** emitted when right action is clicked */
279
+ (e: 'actionClicked', item: UiToggleInterface["item"]): void;
280
+ }
270
281
  export interface UiAlertInterface {
271
282
  /** List of possible actions that are at the bottom of the notification */
272
283
  actions?: {
@@ -281,78 +292,160 @@ export interface UiAlertInterface {
281
292
  loading?: boolean;
282
293
  }
283
294
  export interface UiAlertEventsInterface {
284
- /** When an alert action is clicked */
295
+ /** When an alert action is clicked emits UiAlertInterface["actions"]["event"] */
285
296
  (e: 'alertEvent', T: string): void;
286
297
  }
287
298
  export interface UiBreadcrumbsInterface {
299
+ /** pages array */
288
300
  pages: {
301
+ /** string literal */
289
302
  name: string;
303
+ /** route link */
290
304
  routeName: string;
305
+ /** it´s current route or not */
291
306
  current?: boolean;
292
307
  }[];
308
+ /** shows skeletons */
293
309
  loading?: boolean;
294
310
  }
311
+ export interface UiBreadcrumbsEventInterface {
312
+ /** emits UiBreadcrumbsInterface["pages"]["routeName"] when a breadcrumb is clicked */
313
+ (e: 'breadCrumbClicked', T: string): void;
314
+ }
295
315
  export interface UiCardInterface {
316
+ /** card id */
296
317
  id: string;
318
+ /** card title */
297
319
  name: string;
320
+ /** card subtitle */
298
321
  type: string;
322
+ /** array of tags */
299
323
  tags?: UiTagInterface[];
324
+ /** logo url string */
300
325
  logo: string;
326
+ /** show skeleton */
301
327
  loading: boolean;
302
328
  }
329
+ export interface UiCardEventsInterface {
330
+ /** Emits when card is clicked */
331
+ (e: 'cardSelected', T: {
332
+ id: UiCardInterface["id"];
333
+ name: UiCardInterface["name"];
334
+ type: UiCardInterface["type"];
335
+ tags: UiCardInterface["tags"];
336
+ }): void;
337
+ }
303
338
  export interface UiDeviceStatusInterface {
339
+ /** device id */
304
340
  id: string;
341
+ /** device name */
305
342
  name: string;
343
+ /** icon component from Heroicons */
306
344
  icon: any;
345
+ /** icon background color */
307
346
  color: AllColors;
347
+ /** device quantity */
308
348
  qty: number;
349
+ /** tags array */
309
350
  tags?: UiTagInterface[];
351
+ /** show skeleton */
310
352
  loading: boolean;
311
353
  }
354
+ export interface UiDeviceStatusEventsInterface {
355
+ /** emitted when a tag is clicked*/
356
+ (e: 'deviceStatusTagClicked', T: UiTagInterface["event"]): void;
357
+ /** emitted when the link in the device status is clicked */
358
+ (e: 'deviceStatusQtyClicked', T: UiDeviceStatusInterface["id"]): void;
359
+ }
312
360
  export interface UiFilterInterface {
313
- type?: string;
361
+ /** items array */
314
362
  items: {
363
+ /** literal string */
315
364
  name: string;
365
+ /** internal value */
316
366
  value: string;
367
+ /** is active or not */
317
368
  active?: boolean;
318
369
  }[];
370
+ /** float position of dropdown */
319
371
  position?: "left" | "right";
372
+ /** label literal above filter */
320
373
  label?: string;
374
+ /** show skeleton */
321
375
  loading?: boolean;
322
376
  }
377
+ export interface UiFilterEventsInterface {
378
+ /** emits UiFilterInterface["items"]["value"] when filter is selected */
379
+ (e: 'filterSelected', T: string): void;
380
+ }
323
381
  export interface UiModalInterface {
382
+ /** modal title */
324
383
  title: string;
384
+ /** actions array */
325
385
  actions: {
386
+ /** value of the action */
326
387
  value: string;
388
+ /** action literal */
327
389
  name: string;
328
390
  }[];
391
+ /** modal name */
329
392
  modalName: string;
393
+ /** show modal or not */
330
394
  open: boolean;
331
- type?: string;
395
+ /** modal type */
396
+ type?: Types;
397
+ /** show skeleton */
332
398
  loading?: boolean;
333
399
  }
400
+ export interface UiModalEventsInterface {
401
+ /** emitted when a modal action is clicked, action emits: UiModalInterface["actions"]["value"] */
402
+ (e: 'modalAction', T: {
403
+ modal: UiModalInterface["modalName"];
404
+ action: string;
405
+ }): void;
406
+ }
334
407
  export interface UiNotificationInterface {
335
- type?: string;
408
+ /** notification type */
409
+ type?: Types;
410
+ /** notification title */
336
411
  title: string;
412
+ /** notification message */
337
413
  message?: string;
414
+ /** not in use, only for DS purposes */
338
415
  fixed: boolean;
416
+ /** show or not */
339
417
  show: boolean;
340
418
  }
419
+ export interface UiNotificationEventsInterface {
420
+ /** emitted when X icon is clicked */
421
+ (e: 'closeNotification'): void;
422
+ }
341
423
  export interface UiSectionTitleInterface {
424
+ /** section title */
342
425
  title: string;
426
+ /** section description */
343
427
  description?: string;
344
428
  }
345
429
  export type TaskType = {
430
+ /** internal id of task*/
346
431
  id: number;
432
+ /** name of task */
347
433
  name: string;
434
+ /** task action string */
348
435
  action: string;
436
+ /** task action href */
349
437
  href: string;
350
- status: string;
438
+ /** task action status */
439
+ status: "Complete" | "In progress" | "Incomplete";
440
+ /** task status literal string */
351
441
  statusLiteral: string;
442
+ /** task description */
352
443
  description: string;
353
444
  };
354
445
  export interface UiTaskList {
446
+ /** list of tasks */
355
447
  tasks: TaskType[];
448
+ /** show skeleton */
356
449
  loading?: boolean;
357
450
  }
358
451
  export type chartOptionsType = {
@@ -415,20 +508,29 @@ export type chartOptionsType = {
415
508
  };
416
509
  };
417
510
  export interface UiChartInterface {
511
+ /** uiCircleChart sections labels */
512
+ labels?: string[];
513
+ /** chart title */
418
514
  title: string;
515
+ /** chart is Net promoter score */
419
516
  isNps?: boolean;
517
+ /** nps string literals */
420
518
  npsLiterals?: {
421
519
  unhappy: string;
422
520
  neutral: string;
423
521
  happy: string;
424
522
  };
523
+ /** chart id */
425
524
  id: string;
525
+ /** chart type (NOT USED in uiCircleChart && uiFunnelChartV2) */
426
526
  type?: "area" | "line" | "bar" | "scatter";
527
+ /** chart series and if different type, type */
427
528
  series: {
428
529
  name: string;
429
530
  type?: "area" | "line" | "bar" | "scatter";
430
531
  data: number[];
431
532
  }[];
533
+ /** chart options (NOT USED in uiCircleChart) */
432
534
  options?: {
433
535
  xaxis: {
434
536
  type: string;
@@ -436,242 +538,479 @@ export interface UiChartInterface {
436
538
  categories: string[];
437
539
  };
438
540
  };
541
+ /** show skeleton */
439
542
  loading?: boolean;
543
+ /** if chart has no data */
440
544
  empty?: boolean;
545
+ /** show data in this range */
441
546
  range?: "24h" | "7d" | "1m" | "3m" | "all";
547
+ /** horizontal or vertical (for columns) (NOT USED in uiCircleChart && uiFunnelChartV2) */
442
548
  horizontal?: boolean;
549
+ /** columns are stacked (NOT USED in uiCircleChart && uiFunnelChartV2) */
443
550
  stacked?: boolean;
551
+ /** if charts needs a custom height */
444
552
  height?: number;
553
+ /** draw a line (check score objetive) (NOT USED in uiCircleChart && uiFunnelChartV2) */
445
554
  annotations?: {
446
555
  text: string;
447
556
  high: number;
448
557
  };
449
558
  }
559
+ export interface UiChartEventsInterface {
560
+ /** emitted when user clicks on range buttons */
561
+ (e: "selectedRange", T: {
562
+ range?: "24h" | "7d" | "1m" | "3m" | "all";
563
+ chartId: UiChartInterface["id"];
564
+ }): void;
565
+ /** emitted when chart updated */
566
+ (e: "chartUpdated"): void;
567
+ /** emitted when a point inside chart is clicked */
568
+ (e: "dataPointSelection", T: any): void;
569
+ }
450
570
  export interface UiDateRangeInterface {
571
+ /** unique identifier */
451
572
  id: string;
573
+ /** show skeleton */
452
574
  loading?: boolean;
575
+ /** date range literal strings */
453
576
  literals: {
454
577
  from: string;
455
578
  to: string;
456
579
  search: string;
457
580
  };
581
+ /** date range dates */
458
582
  values?: {
459
- from?: Date;
460
- to?: Date;
583
+ from?: string;
584
+ to?: string;
461
585
  };
586
+ /** date range field colors */
462
587
  color?: AllColors;
588
+ /** show error message below field */
463
589
  error?: string;
590
+ /** is date range disabled */
464
591
  disabled?: boolean;
592
+ /** show label above date range */
465
593
  label?: string;
594
+ /** fields placeholder */
466
595
  placeholder?: string;
467
596
  }
597
+ export interface UiDateRangeEventsInterface {
598
+ /** emitted when date range button is clicked */
599
+ (e: 'uiDateRangeButtonClicked', t: UiDateRangeInterface["values"]): void;
600
+ }
468
601
  export interface UiDragAndDropInterface {
602
+ /** drag and drop array of elements */
469
603
  elements: {
470
604
  id: number;
471
605
  name: string;
472
606
  description: string;
473
607
  }[];
608
+ /** show skeleton */
474
609
  loading?: boolean;
475
610
  }
611
+ export interface UiDragAndDropEventsInterface {
612
+ /** emitted when drag and drop elements are updated (dragged)*/
613
+ (e: "dragAndDropUpdated", T: any): void;
614
+ }
476
615
  export interface UiGalleryInterface {
616
+ /** unique id gallery */
477
617
  galleryId: string;
618
+ /** images gallery array */
478
619
  gallery: {
620
+ /** image title or file name */
479
621
  title: string;
622
+ /** image size reference */
480
623
  size: string;
624
+ /** image url */
481
625
  source: string;
482
626
  }[];
627
+ /** show skeleton */
483
628
  loading?: boolean;
629
+ /** image gallery string literals */
484
630
  literals: {
631
+ /** delete button string literal */
485
632
  deleteAllImages: string;
633
+ /** doble opt in modal title */
486
634
  modalTitle: string;
635
+ /** doble opt in modal text */
487
636
  modalText: string;
637
+ /** close action string literal */
488
638
  closeAction: string;
639
+ /** delete action string literal */
489
640
  deleteAction: string;
490
641
  };
491
642
  }
643
+ export interface UiGalleryEventsInterface {
644
+ /** emitted when a modal action is clicked, emits modal action */
645
+ (e: "modalAction", T: any): void;
646
+ /** emitted when delete image bin icon is clicked, emits image */
647
+ (e: "deleteImage", T: any): void;
648
+ /** emitted when an image is clicked, emits image */
649
+ (e: "imgClicked", T: any): void;
650
+ }
492
651
  export interface UiLoadScreenInterface {
652
+ /** title string */
493
653
  title?: string;
654
+ /** message string */
494
655
  message?: string;
656
+ /** not in use, only for DS purposes */
495
657
  fixed?: boolean;
496
658
  }
497
659
  export interface UiNoResultsInterface {
660
+ /** title string literal */
498
661
  title: string;
662
+ /** message string literal */
499
663
  message: string;
664
+ /** uiButtons array */
500
665
  actions: {
666
+ /** action to emit when clicked */
501
667
  action: string;
668
+ /** string literal */
502
669
  text: string;
503
670
  }[];
671
+ /** want to add more options, add items */
504
672
  items: UiDropdownItemType[];
673
+ /** default selected item */
505
674
  select: UiDropdownItemType;
506
675
  }
676
+ export interface UiNoResultsEventsInterface {
677
+ /** action button clicked */
678
+ (e: "action", T: string): void;
679
+ /** dropdown option selected */
680
+ (e: "noResultsOptionSelected", T: UiDropdownItemType): void;
681
+ }
507
682
  export interface UiPaginationInterface {
683
+ /** current page number */
508
684
  current: number;
685
+ /** total number of pages */
509
686
  total: number;
687
+ /** show skeleton */
510
688
  loading?: boolean;
511
689
  }
690
+ export interface UiPaginationEventsInterface {
691
+ /** emits when a button is clicked, emits a page number */
692
+ (e: "changePage", T: number): void;
693
+ }
512
694
  export interface UiRightSidebarInterface {
695
+ /** Sidebar title */
513
696
  title?: string;
697
+ /** sidebar description or secondary text */
514
698
  description?: string;
699
+ /** is sidebar open? */
515
700
  open: boolean;
516
701
  }
702
+ export interface UiRightSidebarEventsInterface {
703
+ /** emits when click outside bar or X icon */
704
+ (e: "closeRightBar"): void;
705
+ }
517
706
  export interface UiSidebarInterface {
707
+ /** navigation array */
518
708
  navigation?: {
709
+ /** name string literal */
519
710
  name: string;
711
+ /** icon component from Heroicons */
520
712
  icon?: any;
713
+ /** is current sidebar item */
521
714
  current?: boolean;
522
- id?: string;
715
+ /** unique id */
716
+ id: string;
717
+ /** If item is parent, has children items */
523
718
  children?: {
719
+ /** name string literal */
524
720
  name: string;
721
+ /** unique id */
525
722
  id: string;
723
+ /** is current sidebar item */
526
724
  current?: boolean;
527
725
  }[];
528
- }[];
726
+ };
727
+ /** instead, can be a filters sidebar */
529
728
  filterNavigation?: {
729
+ /** has search input on top */
530
730
  hasSearch?: boolean;
731
+ /** search props */
531
732
  search?: UiInputInterface;
733
+ /** check groups */
532
734
  items?: {
735
+ /** check groups title */
533
736
  label: string;
737
+ /** checkbox array */
534
738
  filters: UiCheckboxInterface[];
535
739
  }[];
536
740
  };
741
+ /** is filter sidebar or navigation sidebar */
537
742
  isFilterNavigation?: boolean;
743
+ /** show skeleton */
538
744
  loading?: boolean;
745
+ /** sidebar brand logo */
539
746
  logo?: string;
540
747
  }
748
+ export interface UiSidebarEventsInterface {
749
+ /** emitted when a link is clicked, emits item id */
750
+ (e: 'sideBarClick', t: string): any;
751
+ }
541
752
  export interface UiSidebarV2Interface {
753
+ /** navigation array */
542
754
  navigation?: {
755
+ /** name string literal */
543
756
  name: string;
757
+ /** icon component from Heroicons */
544
758
  icon?: any;
759
+ /** is current sidebar item */
545
760
  current?: boolean;
546
- id?: string;
761
+ /** unique id */
762
+ id: string;
763
+ /** If item is parent, has children items */
547
764
  children?: {
765
+ /** name string literal */
548
766
  name: string;
767
+ /** unique id */
549
768
  id: string;
769
+ /** is current sidebar item */
550
770
  current?: boolean;
551
771
  }[];
552
- }[];
772
+ };
773
+ /** instead, can be a filters sidebar */
553
774
  filterNavigation?: {
775
+ /** has search input on top */
554
776
  hasSearch?: boolean;
777
+ /** search props */
555
778
  search?: UiInputInterface;
779
+ /** check groups */
556
780
  items?: {
781
+ /** check groups title */
557
782
  label: string;
783
+ /** checkbox array */
558
784
  filters: UiCheckboxInterface[];
559
785
  }[];
560
786
  };
787
+ /** is filter sidebar or navigation sidebar */
561
788
  isFilterNavigation?: boolean;
789
+ /** show skeleton */
562
790
  loading?: boolean;
791
+ /** sidebar brand logo */
563
792
  logo?: string;
793
+ /** left sidebar with product logos */
564
794
  productsSidebar: {
565
795
  name: string;
566
796
  icon: any;
567
797
  active?: boolean;
568
798
  }[];
569
799
  }
800
+ export interface uiSidebarV2EventsInterface {
801
+ /** emits product name when clicked */
802
+ (e: 'productBarClick', t: string): void;
803
+ /** emitted when a link is clicked, emits item id */
804
+ (e: 'sideBarClick', t: string): any;
805
+ }
570
806
  export interface UiStatsInterface {
571
807
  item: {
808
+ /** stat icon */
572
809
  icon: any;
810
+ /** increase o decrease value ej: 122% */
573
811
  change?: string;
574
- changeType?: string;
812
+ /** change direction */
813
+ changeType?: "increase" | "decrease" | "neutral";
814
+ /** footer action link */
575
815
  actionText?: string;
816
+ /** unique id */
576
817
  id: string;
818
+ /** stats name */
577
819
  name: string;
820
+ /** stat value */
578
821
  stat: string | number;
822
+ /** helper text */
579
823
  explanation?: string;
824
+ /** icon background color */
580
825
  color?: AllColors;
826
+ /** show footer with action */
581
827
  showFooter?: boolean;
582
828
  };
829
+ /** show skeleton */
583
830
  loading?: boolean;
584
831
  }
832
+ export interface UiStatsEventsInterface {
833
+ /** emits when actionText is clicked, emits item.id */
834
+ (e: "statClick", T: string): void;
835
+ }
585
836
  export interface UiStripedCardInterface {
837
+ /** card title */
586
838
  title: string;
839
+ /** card subtitle */
587
840
  subtitle: string;
841
+ /** array of card rows */
588
842
  items: {
589
- color: AllColors;
843
+ /** row title */
590
844
  title: string;
845
+ /** row text */
591
846
  text: string;
847
+ /** if link, when click, emits: */
592
848
  emits: string;
593
- type?: "link" | "tags" | "tag";
849
+ /** row content, if undefined, the content is text */
850
+ type?: "link" | "tags";
851
+ /** if type tags, tags array */
594
852
  tags?: UiTagInterface[];
595
853
  }[];
854
+ /** show skeleton */
596
855
  loading?: boolean;
597
856
  }
857
+ export interface UiStripedCardEventsInterface {
858
+ /** emits when link is clicked, emits item emits */
859
+ (e: "itemClicked", T: string): void;
860
+ }
598
861
  export type TableItemType = {
862
+ /** co unique id */
599
863
  id: string | number;
864
+ /** when a row is emitted, if additional info is needed, can be put here */
600
865
  emitWith?: any;
866
+ /** content, can be string, link, tag */
601
867
  row: Array<string | {
868
+ /** string literal */
602
869
  content: string;
870
+ /** if tag, backgroun color of tag */
603
871
  color: AllColors;
604
- type: string;
872
+ /** tag, link that emits, or href link */
873
+ type?: 'tag' | 'link' | 'href';
874
+ /** content emitted if clicked on link type */
605
875
  emits?: any;
876
+ /** target url of href type */
606
877
  href?: string;
607
878
  }>;
608
879
  };
609
880
  export interface UiTableInterface {
881
+ /** if you send this prop to the table with true it will reset all checked rows */
882
+ resetSelected: boolean;
883
+ /** header value the table is ordered */
610
884
  orderedBy: string;
885
+ /** order direction */
611
886
  orderDirection?: "asc" | "desc";
887
+ /** show skeleton */
612
888
  loading?: boolean;
889
+ /** table header */
613
890
  header: {
891
+ /** table column header name */
614
892
  name: string;
893
+ /** table column header value, used for orders */
615
894
  value: string;
895
+ /** tooltip string literal if needed */
616
896
  tooltip?: string;
617
897
  }[];
898
+ /** rows */
618
899
  items: TableItemType[] | [];
900
+ /** when row is checked, available actions shows */
619
901
  actions: {
902
+ /** action string literal */
620
903
  name: string;
904
+ /** action id */
621
905
  id: string;
622
906
  }[];
623
907
  }
908
+ export interface UiTableEventsInterface {
909
+ /** if table action is clicked, emits selected rows ids */
910
+ (e: "tableAction", T: {
911
+ action: string;
912
+ items: Array<string | number>;
913
+ }): void;
914
+ /** emits header value and asc desc */
915
+ (e: "orderBy", T: {
916
+ value: string;
917
+ orderDirection: "desc" | "asc";
918
+ }): void;
919
+ /** if colum is link and has custom info */
920
+ (e: "customEmit", T: {
921
+ data: {
922
+ content: string;
923
+ type: string;
924
+ emits: any;
925
+ };
926
+ }): void;
927
+ /** emitted when resetSelected prop is sent with true, use it to rollback resetSelected to false */
928
+ (e: "selectedItemsDeleted"): void;
929
+ }
624
930
  export interface UiTabInterface {
931
+ /** tabs array */
625
932
  tabs: {
933
+ /** tab string literal */
626
934
  name: string;
935
+ /** tab unique id */
627
936
  id: string;
937
+ /** tab count tag */
628
938
  count?: number;
939
+ /** is current tag */
629
940
  current?: boolean;
630
941
  }[];
631
942
  }
943
+ export interface UiTabEventsInterface {
944
+ /** emits when a tab is clicked, emits tab id */
945
+ (e: "tabClicked", T: string): void;
946
+ }
632
947
  export interface UiTimelineInterface {
948
+ /** timeline title */
633
949
  name: string;
950
+ /** items */
634
951
  timeline: {
952
+ /** timeline unique id */
635
953
  id: string;
954
+ /** timeline footer literal */
636
955
  footerText: string;
956
+ /** items array */
637
957
  items: {
958
+ /** row id */
638
959
  id: number | string;
960
+ /** link id */
639
961
  linkId: number | string;
962
+ /** row text */
640
963
  content: string;
964
+ /** item name, reference.. */
641
965
  target: string;
966
+ /** target link */
642
967
  href: string;
968
+ /** event date */
643
969
  date: string;
970
+ /** event formatted date */
644
971
  datetime: string;
972
+ /** event icon */
645
973
  icon: any;
974
+ /** event icon background color */
646
975
  iconBackground: string;
647
976
  }[];
648
977
  };
978
+ /** if custom height in px */
649
979
  height?: number;
980
+ /** is timeline empty */
650
981
  empty?: boolean;
982
+ /** show skeleton */
651
983
  loading?: boolean;
652
984
  }
985
+ export interface UiTimelineEventsInterface {
986
+ /** when a timeline event is clicked, emits item id */
987
+ (e: 'timelineEventClicked', t: string | number): void;
988
+ /** emits when footer link is clicked */
989
+ (e: 'timelineFooterClicked', t: string): void;
990
+ }
653
991
  export interface UiTopbarInterface {
992
+ /** brand logo */
654
993
  logo: string;
994
+ /** show alert icon */
655
995
  alerted: boolean;
996
+ /** sub brand logo */
656
997
  accountLogo: string;
998
+ /** profile menu of sub brand */
657
999
  profileMenu?: {
658
1000
  name: string;
659
1001
  id: string;
660
1002
  }[];
1003
+ /** brand name and description */
661
1004
  brand?: {
662
1005
  title: string;
663
1006
  subtitle: string;
664
1007
  };
665
- navigation?: {
666
- id: string;
667
- name: string;
668
- icon: string;
669
- current: boolean;
670
- children?: {
671
- name: string;
672
- id: string;
673
- }[];
674
- }[];
1008
+ /** when mobile, this is the sidebar navigation menu */
1009
+ navigation?: UiSidebarV2Interface["navigation"];
1010
+ }
1011
+ export interface UiTopbarEventsInterface {
1012
+ /** when clicked in any menu item */
1013
+ (e: "topBarClick", T: string): void;
675
1014
  }
676
1015
  export interface UiWrapperInterface {
677
1016
  topbar: {
@@ -689,18 +1028,88 @@ export interface UiWrapperInterface {
689
1028
  sidebar: UiSidebarV2Interface;
690
1029
  }
691
1030
  export interface UiDynamicStatsInterface {
692
- dynamicStats: {
693
- icon: any;
694
- change?: string;
695
- changeType?: string;
696
- actionText?: string;
697
- id: string;
1031
+ /** uiStat Array */
1032
+ dynamicStats: UiStatsInterface["item"][];
1033
+ /** show skeleton */
1034
+ loading: boolean;
1035
+ }
1036
+ export interface UiPriceCalendarInterface {
1037
+ /** show skeleton */
1038
+ loading: boolean;
1039
+ /** Is a prices table or a discounts table */
1040
+ type: "prices" | "discounts";
1041
+ /** currency information */
1042
+ currency: {
1043
+ /** currency name: ej "EUR" */
698
1044
  name: string;
699
- stat: string | number;
700
- explanation?: string;
701
- color?: AllColors;
702
- showFooter?: boolean;
1045
+ /** currency symbol: ej "€" */
1046
+ symbol: string;
1047
+ };
1048
+ /** listed default selection prices and upgrade prices for this category */
1049
+ category: {
1050
+ /** category name */
1051
+ name: string;
1052
+ /** array of selection prices based on date */
1053
+ selectionPrices: {
1054
+ date: Date;
1055
+ price: number;
1056
+ }[];
1057
+ /** array of upgrade prices based on date */
1058
+ upgradePrices: {
1059
+ date: Date;
1060
+ price: number;
1061
+ }[];
1062
+ };
1063
+ /** listed rooms for this category with selection prices by date */
1064
+ rooms: UiPriceCalendarRoomType[];
1065
+ /** table actions based on row selections */
1066
+ actions: {
1067
+ /** action string literal */
1068
+ name: string;
1069
+ /** actino id */
1070
+ id: string;
703
1071
  }[];
704
- loading: boolean;
1072
+ /** table literals check storybook */
1073
+ literals: {
1074
+ category: string;
1075
+ changeInBulk: string;
1076
+ pricesSelection: string;
1077
+ pricesUpgrade: string;
1078
+ room: string;
1079
+ building: string;
1080
+ floor: string;
1081
+ pricesDiscount: string;
1082
+ };
1083
+ }
1084
+ export type UiPriceCalendarRoomType = {
1085
+ /** room id */
1086
+ id: string;
1087
+ /** room name */
1088
+ name: string;
1089
+ /** building the room is in */
1090
+ building: string;
1091
+ /** the floor the room is in */
1092
+ floor: string;
1093
+ /** selection prices for this room based on dates */
1094
+ selectionPrices: UiRoomTypeSelectionPriceType[];
1095
+ };
1096
+ /** selection prices for this room based on dates */
1097
+ export type UiRoomTypeSelectionPriceType = {
1098
+ date: Date;
1099
+ price: number;
1100
+ };
1101
+ export interface UiPricesCalendarEventsInterface {
1102
+ /** when a date button is clicked */
1103
+ (e: 'dateChanged', t: Date): void;
1104
+ /** click change category prices in bulk button */
1105
+ (e: 'changeCategoryBulkPrices'): void;
1106
+ /** click on category price */
1107
+ (e: 'changeCategorySelectionPrice', t: UiRoomTypeSelectionPriceType): void;
1108
+ /** click on category upgrade price */
1109
+ (e: 'changeCategoryUpgradePrice', t: UiRoomTypeSelectionPriceType): void;
1110
+ /** click on room price */
1111
+ (e: 'changeRoomPrice', t: UiRoomTypeSelectionPriceType): void;
1112
+ /** click on table action */
1113
+ (e: 'tableAction', t: any): void;
705
1114
  }
706
1115
  export {};