@quandis/qbo4.ui 4.0.1-CI-20241107-011209 → 4.0.1-CI-20241108-002603

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 (64) hide show
  1. package/package.json +2 -1
  2. package/scss/qbo.scss +466 -24
  3. package/src/qbo/qbo-api.js +5 -7
  4. package/src/qbo/qbo-api.ts +2 -1
  5. package/src/qbo/qbo-card.js +5 -7
  6. package/src/qbo/qbo-card.ts +4 -2
  7. package/src/qbo/qbo-contextmenu.js +5 -7
  8. package/src/qbo/qbo-contextmenu.ts +3 -1
  9. package/src/qbo/qbo-datalist.js +5 -7
  10. package/src/qbo/qbo-datalist.ts +4 -2
  11. package/src/qbo/qbo-docviewer.js +5 -7
  12. package/src/qbo/qbo-docviewer.ts +3 -1
  13. package/src/qbo/qbo-fetch.js +4 -0
  14. package/src/qbo/qbo-fetch.ts +3 -0
  15. package/src/qbo/qbo-form-edit.js +5 -7
  16. package/src/qbo/qbo-form-edit.ts +3 -1
  17. package/src/qbo/qbo-form-element.js +7 -12
  18. package/src/qbo/qbo-form-element.ts +2 -1
  19. package/src/qbo/qbo-icon.js +7 -11
  20. package/src/qbo/qbo-icon.ts +3 -1
  21. package/src/qbo/qbo-menu.d.ts +17 -15
  22. package/src/qbo/qbo-menu.js +88 -115
  23. package/src/qbo/qbo-menu.ts +95 -120
  24. package/src/qbo/qbo-microphone.js +7 -11
  25. package/src/qbo/qbo-microphone.ts +3 -1
  26. package/src/qbo/qbo-paginate.js +5 -7
  27. package/src/qbo/qbo-paginate.ts +3 -1
  28. package/src/qbo/qbo-popover.d.ts +13 -17
  29. package/src/qbo/qbo-popover.js +67 -80
  30. package/src/qbo/qbo-popover.ts +82 -54
  31. package/src/qbo/qbo-popup-listener.js +5 -7
  32. package/src/qbo/qbo-popup-listener.ts +3 -1
  33. package/src/qbo/qbo-popup.js +5 -7
  34. package/src/qbo/qbo-popup.ts +3 -1
  35. package/src/qbo/qbo-resize.js +5 -7
  36. package/src/qbo/qbo-resize.ts +3 -2
  37. package/src/qbo/qbo-select.js +5 -7
  38. package/src/qbo/qbo-select.ts +3 -1
  39. package/src/qbo/qbo-selectable.js +5 -7
  40. package/src/qbo/qbo-selectable.ts +3 -1
  41. package/src/qbo/qbo-table.js +5 -7
  42. package/src/qbo/qbo-table.ts +2 -1
  43. package/src/qbo/qbo-user-preferences.js +5 -8
  44. package/src/qbo/qbo-user-preferences.ts +3 -1
  45. package/src/qbo/qbo-validate.js +5 -8
  46. package/src/qbo/qbo-validate.ts +3 -1
  47. package/src/qbo/styles.js +2 -2
  48. package/src/qbo/styles.ts +2 -2
  49. package/wwwroot/css/qbo.css +448 -21
  50. package/wwwroot/css/qbo.css.map +1 -1
  51. package/wwwroot/css/qbo.min.css +1 -1
  52. package/wwwroot/css/qboui.css +450 -21
  53. package/wwwroot/css/qboui.css.map +1 -1
  54. package/wwwroot/css/qboui.min.css +1 -1
  55. package/wwwroot/favicon.ico +0 -0
  56. package/wwwroot/images/qbo-logo-new.svg +25 -0
  57. package/wwwroot/js/esm/qbo4.ui.js +2672 -7986
  58. package/wwwroot/js/esm/qbo4.ui.min.js +35 -48
  59. package/wwwroot/js/esm/qbo4.ui.min.js.LICENSE.txt +0 -6
  60. package/wwwroot/js/esm/qbo4.ui.min.js.map +1 -1
  61. package/wwwroot/js/qbo4.ui.js +2679 -8047
  62. package/wwwroot/js/qbo4.ui.min.js +43 -56
  63. package/wwwroot/js/qbo4.ui.min.js.LICENSE.txt +0 -6
  64. package/wwwroot/js/qbo4.ui.min.js.map +1 -1
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "author": "Quandis, Inc.",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
- "version": "4.0.1-CI-20241107-011209",
6
+ "version": "4.0.1-CI-20241108-002603",
7
7
  "workspaces": [
8
8
  "code"
9
9
  ],
@@ -31,6 +31,7 @@
31
31
  "@codemirror/lang-javascript": "^6.2.2",
32
32
  "@codemirror/lang-sql": "^6.8.0",
33
33
  "@codemirror/lang-xml": "^6.1.0",
34
+ "@floating-ui/dom": "^1.6.12",
34
35
  "@joint/core": "^4.0.4",
35
36
  "bootstrap": "^5.3.3",
36
37
  "bootstrap-icons": "^1.11.3",
package/scss/qbo.scss CHANGED
@@ -1,11 +1,11 @@
1
1
  :root {
2
2
  --qbo-font: Arial, sans-serif;
3
3
  --qbo-color: #333;
4
- --qbo-border-color: #dee2e6;
4
+ --qbo-border-color: #999;
5
5
  --qbo-border-radius: 4px;
6
6
  --qbo-background-color: #ffffff;
7
- --qbo-padding-horizontal: 0.75rem;
8
- --qbo-padding-vertical: 0.375rem;
7
+ --qbo-padding-horizontal: 0rem;
8
+ --qbo-padding-vertical: 0rem;
9
9
  --qbo-padding: var(--qbo-padding-vertical) var(--qbo-padding-horizontal);
10
10
  --qbo-margin: 0.5rem;
11
11
  --qbo-margin-horizontal: 0.5rem;
@@ -19,8 +19,10 @@
19
19
  --qbo-button-color: #ffffff;
20
20
  --qbo-button-padding: var(--qbo-padding); //0.375rem 0.75rem;
21
21
  --qbo-button-border-radius: var(--qbo-border-radius);
22
- --qbo-nav-color: #ffffff;
23
- --qbo-nav-background-color: #000;
22
+ --qbo-nav-color: #333;
23
+ --qbo-nav-background-color: #999;
24
+ --qbo-nav-background-hover: #81181d;
25
+ --qbo-nav-background-hover-color: #999;
24
26
  /* Primary */
25
27
  --qbo-primary-bg: #007bff;
26
28
  --qbo-primary-color: #ffffff;
@@ -63,9 +65,17 @@
63
65
  --qbo-dark-border: #343a40;
64
66
  --qbo-dark-hover-bg: #23272b;
65
67
  --qbo-dark-hover-border: #1d2124;
68
+ /* Button */
69
+ --qbo-button-bg: #007bff;
70
+ --qbo-button-color: #ffffff;
71
+ --qbo-button-border: #007bff;
72
+ --qbo-button-bg-hover: #0056b3;
73
+ --qbo-button-border-hover: #004085;
74
+ --qbo-button-padding: var(--qbo-padding); //0.375rem 0.75rem;
75
+ --qbo-button-border-radius: var(--qbo-border-radius);
66
76
  }
67
77
 
68
- .qbo-dark {
78
+ .qbo-theme-dark {
69
79
  --qbo-color: #e0e0e0;
70
80
  --qbo-border-color: grey;
71
81
  --qbo-background-color: #121212;
@@ -75,12 +85,10 @@
75
85
  }
76
86
 
77
87
  /* Use variables in a class */
78
- .qbo {
88
+ .qbo-theme-light {
79
89
  font-family: var(--qbo-font);
80
90
  color: var(--qbo-color);
81
- border: 1px solid var(--qbo-border-color);
82
- padding: var(--qbo-padding);
83
- border-radius: var(--qbo-border-radius);
91
+ margin: 0;
84
92
  background-color: var(--qbo-background-color);
85
93
  }
86
94
 
@@ -92,10 +100,22 @@
92
100
 
93
101
  /* Default column styling */
94
102
  .qbo-col {
95
- flex: 1 0 0;
96
103
  border: 1px solid var(--qbo-border-color);
97
- max-width: 100%;
104
+ border-radius: .5em;
105
+ box-shadow: 2px 2px 3px var(--qbo-border-color);
98
106
  box-sizing: border-box;
107
+ flex: 1 0 0;
108
+ min-width: 15rem;
109
+ max-width: 100%;
110
+ padding: .5em;
111
+ }
112
+
113
+ .qbo-col-left {
114
+ margin-left: .5em;
115
+ }
116
+
117
+ .qbo-col-right {
118
+ margin-right: .5em;
99
119
  }
100
120
 
101
121
  .qbo-row {
@@ -169,17 +189,6 @@ svg {
169
189
  width: 1rem;
170
190
  }
171
191
 
172
- .icon {
173
- height: 1rem;
174
- width: 1rem;
175
-
176
- use {
177
- display: block;
178
- }
179
-
180
- filter: var(--qbo-svg-filter);
181
- }
182
-
183
192
  .qbo-row {
184
193
  display: flex;
185
194
  flex-wrap: wrap;
@@ -260,7 +269,7 @@ svg {
260
269
  max-width: calc(100% - (var(--qbo-margin) / 2));
261
270
  }
262
271
 
263
-
272
+ /* Form */
264
273
  .qbo-form {
265
274
  margin: 0 auto;
266
275
  padding: var(--qbo-padding);
@@ -380,3 +389,436 @@ svg {
380
389
  font-weight: 400;
381
390
  color: var(--qbo-color);
382
391
  }
392
+
393
+ /* Button */
394
+ button,
395
+ .qbo-button {
396
+ display: inline-block;
397
+ font-weight: 400;
398
+ color: var(--qbo-color);
399
+ background-color: var(--qbo-background-color);
400
+ border: 1px solid var(--qbo-border-color);
401
+ border-radius: var(--qbo-border-radius);
402
+ padding: var(--qbo-padding);
403
+ font-size: 1rem;
404
+ line-height: 1.5;
405
+ text-align: center;
406
+ vertical-align: middle;
407
+ cursor: pointer;
408
+ margin-right: var(--qbo-margin);
409
+ text-decoration: none;
410
+ transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
411
+ }
412
+
413
+ /* Hover and Focus states */
414
+ button:hover,
415
+ button:focus,
416
+ .qbo-button:hover,
417
+ .qbo-button:focus {
418
+ background-color: var(--qbo-border-color);
419
+ text-decoration: none;
420
+ line-height: 1.5;
421
+ border-radius: var(--qbo-border-radius);
422
+ transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
423
+ }
424
+
425
+ /* Disabled state */
426
+ button:disabled,
427
+ .qbo-button:disabled {
428
+ opacity: 0.65;
429
+ cursor: not-allowed;
430
+ background-color: var(--qbo-button-bg);
431
+ border-color: var(--qbo-button-border);
432
+ color: var(--qbo-button-color);
433
+ }
434
+
435
+ .primary {
436
+ background-color: var(--qbo-primary-bg);
437
+ border: 1px solid var(--qbo-primary-border);
438
+ color: var(--qbo-primary-color);
439
+ }
440
+
441
+ .primary:hover,
442
+ .primary:focus {
443
+ background-color: var(--qbo-primary-hover-bg);
444
+ border: 1px solid var(--qbo-primary-hover-border);
445
+ }
446
+
447
+ .secondary {
448
+ background-color: var(--qbo-secondary-bg);
449
+ border: 1px solid var(--qbo-secondary-border);
450
+ color: var(--qbo-secondary-color);
451
+ }
452
+
453
+ .secondary:hover,
454
+ .secondary:focus {
455
+ background-color: var(--qbo-secondary-hover-bg);
456
+ border: 1px solid var(--qbo-secondary-hover-border);
457
+ }
458
+
459
+ .icon {
460
+ height: 1rem;
461
+ width: 1rem;
462
+
463
+ use {
464
+ display: block;
465
+ }
466
+
467
+ filter: var(--qbo-svg-filter);
468
+ }
469
+
470
+ .icon.right {
471
+ position: relative;
472
+ padding-left: 1.25rem;
473
+ background-image: url("https://devqmp.quandis.io/core/ui/images/qbo-icons.svg#i-arrow-down-circle");
474
+ background-repeat: no-repeat;
475
+ background-position: left center;
476
+ }
477
+
478
+ /* Grid */
479
+ .qbo-row {
480
+ display: flex;
481
+ flex-wrap: wrap;
482
+ gap: var(--qbo-margin);
483
+ }
484
+
485
+ /* Default column styling */
486
+ .qbo-col {
487
+ flex: 1 0 0;
488
+ xborder: 1px solid var(--qbo-border-color);
489
+ max-width: 100%;
490
+ box-sizing: border-box;
491
+ }
492
+
493
+ .qbo-row {
494
+ display: flex;
495
+ flex-wrap: wrap;
496
+ gap: var(--qbo-margin); /* Use --qbo-margin as the gap */
497
+ }
498
+
499
+ .qbo-col-1 {
500
+ flex: 0 0 calc(8.33% - (var(--qbo-margin) / 2));
501
+ max-width: calc(8.33% - (var(--qbo-margin) / 2));
502
+ }
503
+
504
+ .qbo-col-2 {
505
+ flex: 0 0 calc(16.66% - (var(--qbo-margin) / 2));
506
+ max-width: calc(16.66% - (var(--qbo-margin) / 2));
507
+ }
508
+
509
+ .qbo-col-3 {
510
+ flex: 0 0 calc(25% - (var(--qbo-margin) / 2));
511
+ max-width: calc(25% - (var(--qbo-margin) / 2));
512
+ }
513
+
514
+ .qbo-col-4 {
515
+ flex: 0 0 calc(33.33% - (var(--qbo-margin) / 2));
516
+ max-width: calc(33.33% - (var(--qbo-margin) / 2));
517
+ }
518
+
519
+ .qbo-col-5 {
520
+ flex: 0 0 calc(41.66% - (var(--qbo-margin) / 2));
521
+ max-width: calc(41.66% - (var(--qbo-margin) / 2));
522
+ }
523
+
524
+ .qbo-col-6 {
525
+ flex: 0 0 calc(50% - (var(--qbo-margin) / 2));
526
+ max-width: calc(50% - (var(--qbo-margin) / 2));
527
+ }
528
+
529
+ .qbo-col-7 {
530
+ flex: 0 0 calc(58.33% - (var(--qbo-margin) / 2));
531
+ max-width: calc(58.33% - (var(--qbo-margin) / 2));
532
+ }
533
+
534
+ .qbo-col-8 {
535
+ flex: 0 0 calc(66.66% - (var(--qbo-margin) / 2));
536
+ max-width: calc(66.66% - (var(--qbo-margin) / 2));
537
+ }
538
+
539
+ .qbo-col-9 {
540
+ flex: 0 0 calc(75% - (var(--qbo-margin) / 2));
541
+ max-width: calc(75% - (var(--qbo-margin) / 2));
542
+ }
543
+
544
+ .qbo-col-10 {
545
+ flex: 0 0 calc(83.33% - (var(--qbo-margin) / 2));
546
+ max-width: calc(83.33% - (var(--qbo-margin) / 2));
547
+ }
548
+
549
+ .qbo-col-11 {
550
+ flex: 0 0 calc(91.66% - (var(--qbo-margin) / 2));
551
+ max-width: calc(91.66% - (var(--qbo-margin) / 2));
552
+ }
553
+
554
+ .qbo-col-12 {
555
+ flex: 0 0 calc(100% - (var(--qbo-margin) / 2));
556
+ max-width: calc(100% - (var(--qbo-margin) / 2));
557
+ }
558
+
559
+ /* Menu */
560
+ nav {
561
+ --qbo-background-color: var(--qbo-nav-background-color, black);
562
+ --qbo-color: var(--qbo-nav-color, white);
563
+ --qbo-svg-filter: brightness(0) invert(1);
564
+ display: flex;
565
+ flex-direction: row;
566
+ color: var(--qbo-nav-color, white);
567
+ background-color: var(--qbo-nav-background-color, black);
568
+
569
+ & menu {
570
+ list-style-type: none;
571
+ padding-inline-start: 20px;
572
+ margin-block-start: .5em;
573
+ margin-block-end: .5em;
574
+
575
+ & li {
576
+ border: 1px solid var(--qbo-nav-background-color, black);
577
+ cursor: pointer;
578
+ display: inline-block;
579
+ line-height: 1.5;
580
+ padding: 5px;
581
+
582
+ & svg {
583
+ filter: invert(0) !important;
584
+ }
585
+ }
586
+
587
+ & li:hover,
588
+ & li:focus {
589
+ background-color: var(--qbo-nav-background-hover, grey);
590
+ border: 1px solid var(--qbo-nav-background-hover);
591
+ border-radius: .5em;
592
+ color: #fff;
593
+ text-decoration: none;
594
+
595
+ > svg,
596
+ span > svg {
597
+ filter: var(--qbo-svg-filter) !important;
598
+ }
599
+ }
600
+ }
601
+
602
+ > img {
603
+ padding-inline-start: 8px;
604
+ }
605
+
606
+ > span {
607
+ font-weight: bold;
608
+ margin-top: 17px;
609
+ padding-inline-start: 10px;
610
+ }
611
+
612
+ a {
613
+ color: var(--qbo-color);
614
+ }
615
+
616
+ svg.label {
617
+ vertical-align: text-top;
618
+ }
619
+
620
+ svg.toggle {
621
+ vertical-align: text-bottom;
622
+ }
623
+ }
624
+
625
+ menu.qbo-toolbar {
626
+ list-style-type: none;
627
+ padding-left: 0;
628
+ display: flex;
629
+ flex-direction: row;
630
+ margin-right: var(--qbo-margin);
631
+
632
+ li {
633
+ display: inline-block;
634
+ margin-right: 0;
635
+ color: var(--qbo-color);
636
+ background-color: var(--qbo-background-color);
637
+ border: 1px solid var(--qbo-border-color);
638
+ padding: var(--qbo-padding);
639
+ line-height: 1.5;
640
+ cursor: pointer;
641
+ border-radius: 0;
642
+ transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
643
+ text-decoration: none;
644
+ }
645
+
646
+ li:first-child {
647
+ border-top-left-radius: var(--qbo-border-radius);
648
+ border-bottom-left-radius: var(--qbo-border-radius);
649
+ }
650
+
651
+ li:last-child {
652
+ border-top-right-radius: var(--qbo-border-radius);
653
+ border-bottom-right-radius: var(--qbo-border-radius);
654
+ }
655
+
656
+ li:hover,
657
+ li:focus {
658
+ background-color: var(--qbo-border-color);
659
+ text-decoration: none;
660
+ line-height: 1.5;
661
+ xborder-radius: 0; //var(--qbo-border-radius);
662
+ transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
663
+ }
664
+ }
665
+
666
+ menu.qbo-toolbar.vertical {
667
+ flex-direction: column;
668
+ align-items: flex-start;
669
+ }
670
+
671
+ menu.qbo-toolbar.vertical li:first-child {
672
+ border-top-right-radius: var(--qbo-border-radius);
673
+ border-top-left-radius: var(--qbo-border-radius);
674
+ border-bottom-left-radius: 0;
675
+ }
676
+
677
+ menu.qbo-toolbar.vertical li:last-child {
678
+ border-bottom-right-radius: var(--qbo-border-radius);
679
+ border-bottom-left-radius: var(--qbo-border-radius);
680
+ border-top-right-radius: 0;
681
+ }
682
+
683
+ qbo-menu {
684
+ *[data-mega],
685
+ aside,
686
+ menu {
687
+ background-color: var(--qbo-background-color);
688
+ border: 1px solid var(--qbo-border-color);
689
+ border-radius: var(--qbo-border-radius);
690
+ box-sizing: border-box;
691
+ height: 0;
692
+ list-style-type: none;
693
+ margin: 0;
694
+ padding-left: 0;
695
+ position: absolute;
696
+ visibility: hidden;
697
+ }
698
+
699
+ *[data-mega].open,
700
+ aside.open,
701
+ menu.open {
702
+ background-color: #f0f0f0;
703
+ border: 0;
704
+ border-radius: 0;
705
+ border-bottom-left-radius: .7em;
706
+ border-bottom-right-radius: .7em;
707
+ color: var(--qbo-nav-color, white);
708
+ height: auto;
709
+ left: 0px;
710
+ margin: 0;
711
+ overflow-y: auto;
712
+ top: 53px !important;
713
+ visibility: visible;
714
+ width: 100%;
715
+
716
+ > h1 {
717
+ color: var(--qbo-color);
718
+ margin-block-end: 0;
719
+ margin-left: 1em;
720
+ }
721
+
722
+ > p {
723
+ color: var(--qbo-color);
724
+ margin-block-start: 0;
725
+ margin-left: 1.2em;
726
+ }
727
+ }
728
+
729
+ *[data-mega],
730
+ aside {
731
+ width: 0;
732
+ margin: var(--qbo-margin);
733
+ padding: var(--qbo-padding-vertical) var(--qbo-padding-horizontal);
734
+ padding-bottom: .6em;
735
+ overflow-y: scroll;
736
+ }
737
+ /* Dropdown item styling for each li element */
738
+ li {
739
+ display: list-item !important;
740
+ padding: var(--qbo-padding, 0.5rem 1rem);
741
+ line-height: 1.5;
742
+ text-align: left;
743
+ white-space: nowrap;
744
+ cursor: pointer;
745
+ text-decoration: none;
746
+ }
747
+ /* Hover effect on dropdown items */
748
+ li:hover {
749
+ background-color: var(--qbo-border-color);
750
+ }
751
+ /* Disabled dropdown item styling */
752
+ menu li.disabled {
753
+ color: #6c757d;
754
+ pointer-events: none;
755
+ background-color: transparent;
756
+ }
757
+ /* Divider style between dropdown items */
758
+ menu .dropdown-divider {
759
+ height: 1px;
760
+ margin: 0.5rem 0;
761
+ overflow: hidden;
762
+ background-color: #e9ecef;
763
+ }
764
+ /* Header style for grouped dropdown items */
765
+ menu .dropdown-header {
766
+ padding: 0.5rem 1rem;
767
+ margin-bottom: 0;
768
+ font-size: 0.875rem;
769
+ color: #6c757d;
770
+ white-space: nowrap;
771
+ }
772
+ }
773
+
774
+ /* Popover */
775
+ qbo-popover {
776
+ background-color: #f0f0f0;
777
+ border: 1px solid #81181d;
778
+ border-radius: var(--qbo-border-radius);
779
+ color: var(--qbo-color);
780
+ margin: .6em 0 0 0;
781
+ padding: 0 1em 0 1em;
782
+ position: absolute;
783
+ visibility: hidden;
784
+
785
+ h3 {
786
+ margin-block-end: .5em;
787
+ margin-block-start: .5em;
788
+ }
789
+
790
+ p {
791
+ margin-block-start: 0;
792
+ }
793
+ }
794
+
795
+ qbo-popover.open {
796
+ visibility: visible;
797
+ }
798
+
799
+ /* Details */
800
+ details > a {
801
+ margin-left: 1.5em;
802
+ }
803
+
804
+ /* Mega Menu */
805
+ div.qbo-row-subsequent {
806
+ margin-top: .5em;
807
+ }
808
+
809
+ h3.title {
810
+ margin-block-end: 0;
811
+ margin-block-start: .5em;
812
+ margin-left: .5em;
813
+ }
814
+
815
+ p.detail {
816
+ margin-block-end: .5em;
817
+ margin-block-start: 0;
818
+ margin-left: .5em;
819
+ }
820
+
821
+ div.qbo-col-noborder {
822
+ border: 0 !important;
823
+ box-shadow: initial;
824
+ }
@@ -8,9 +8,9 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { LitElement, html } from 'lit';
11
- import { customElement, property } from 'lit/decorators.js';
11
+ import { property } from 'lit/decorators.js';
12
12
  import { registerRestApi } from './RestApiService.js';
13
- let QboApiElement = class QboApiElement extends LitElement {
13
+ export class QboApiElement extends LitElement {
14
14
  constructor() {
15
15
  super(...arguments);
16
16
  this.name = null;
@@ -46,7 +46,7 @@ let QboApiElement = class QboApiElement extends LitElement {
46
46
  // Render nothing, as this component is for configuration purposes only
47
47
  return html ``;
48
48
  }
49
- };
49
+ }
50
50
  __decorate([
51
51
  property({ type: String }),
52
52
  __metadata("design:type", Object)
@@ -59,7 +59,5 @@ __decorate([
59
59
  property(),
60
60
  __metadata("design:type", Object)
61
61
  ], QboApiElement.prototype, "method", void 0);
62
- QboApiElement = __decorate([
63
- customElement('qbo-api')
64
- ], QboApiElement);
65
- export { QboApiElement };
62
+ if (!customElements.get('qbo-api'))
63
+ customElements.define('qbo-api', QboApiElement);
@@ -2,7 +2,6 @@
2
2
  import { customElement, property } from 'lit/decorators.js';
3
3
  import { registerRestApi } from './RestApiService.js';
4
4
 
5
- @customElement('qbo-api')
6
5
  export class QboApiElement extends LitElement {
7
6
  @property({ type: String })
8
7
  name: string | null = null;
@@ -52,3 +51,5 @@ export class QboApiElement extends LitElement {
52
51
  }
53
52
  }
54
53
 
54
+ if (!customElements.get('qbo-api'))
55
+ customElements.define('qbo-api', QboApiElement)
@@ -8,8 +8,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { LitElement, css, html } from "lit";
11
- import { customElement, property } from "lit/decorators.js";
12
- let QboCard = class QboCard extends LitElement {
11
+ import { property } from "lit/decorators.js";
12
+ export class QboCard extends LitElement {
13
13
  constructor() {
14
14
  super(...arguments);
15
15
  this.display = 'normal';
@@ -95,7 +95,7 @@ let QboCard = class QboCard extends LitElement {
95
95
  render() {
96
96
  return html `<slot></slot>`;
97
97
  }
98
- };
98
+ }
99
99
  __decorate([
100
100
  property({ reflect: true }),
101
101
  __metadata("design:type", String)
@@ -112,7 +112,5 @@ __decorate([
112
112
  property(),
113
113
  __metadata("design:type", Object)
114
114
  ], QboCard.prototype, "columns", void 0);
115
- QboCard = __decorate([
116
- customElement('qbo-card')
117
- ], QboCard);
118
- export { QboCard };
115
+ if (!customElements.get('qbo-card'))
116
+ customElements.define('qbo-card', QboCard);
@@ -4,7 +4,6 @@ import { QboIcon } from "./qbo-icon.js";
4
4
 
5
5
  export type DisplayState = 'normal' | 'minimize' | 'maximize';
6
6
 
7
- @customElement('qbo-card')
8
7
  export class QboCard extends LitElement {
9
8
 
10
9
  static styles = [
@@ -112,4 +111,7 @@ export class QboCard extends LitElement {
112
111
  render() {
113
112
  return html`<slot></slot>`;
114
113
  }
115
- }
114
+ }
115
+
116
+ if (!customElements.get('qbo-card'))
117
+ customElements.define('qbo-card', QboCard)
@@ -8,9 +8,9 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { LitElement, html } from 'lit';
11
- import { customElement, property, state } from 'lit/decorators.js';
11
+ import { property, state } from 'lit/decorators.js';
12
12
  import { qboui } from './styles.js';
13
- let ContextMenu = class ContextMenu extends LitElement {
13
+ export class ContextMenu extends LitElement {
14
14
  constructor() {
15
15
  super(...arguments);
16
16
  this._open = false;
@@ -85,7 +85,7 @@ let ContextMenu = class ContextMenu extends LitElement {
85
85
  render() {
86
86
  return html `${this._open ? html `<slot></slot>` : ''}`;
87
87
  }
88
- };
88
+ }
89
89
  __decorate([
90
90
  state(),
91
91
  __metadata("design:type", Object)
@@ -94,7 +94,5 @@ __decorate([
94
94
  property({ type: String }),
95
95
  __metadata("design:type", Object)
96
96
  ], ContextMenu.prototype, "target", void 0);
97
- ContextMenu = __decorate([
98
- customElement('qbo-contextmenu')
99
- ], ContextMenu);
100
- export { ContextMenu };
97
+ if (!customElements.get('qbo-contextmenu'))
98
+ customElements.define('qbo-contextmenu', ContextMenu);
@@ -2,7 +2,6 @@
2
2
  import { customElement, property, state } from 'lit/decorators.js';
3
3
  import { qboui } from './styles.js';
4
4
 
5
- @customElement('qbo-contextmenu')
6
5
  export class ContextMenu extends LitElement {
7
6
  static styles = [
8
7
  qboui
@@ -98,3 +97,6 @@ export class ContextMenu extends LitElement {
98
97
  return html`${this._open ? html`<slot></slot>` : ''}`;
99
98
  }
100
99
  }
100
+
101
+ if (!customElements.get('qbo-contextmenu'))
102
+ customElements.define('qbo-contextmenu', ContextMenu)