@necrolab/dashboard 0.4.61 → 0.4.208

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 (133) hide show
  1. package/.prettierrc +1 -27
  2. package/.vscode/extensions.json +1 -1
  3. package/README.md +79 -43
  4. package/backend/api.js +48 -40
  5. package/backend/auth.js +3 -3
  6. package/backend/batching.js +1 -1
  7. package/backend/endpoints.js +77 -13
  8. package/backend/index.js +2 -2
  9. package/backend/mock-data.js +38 -29
  10. package/backend/mock-src/classes/logger.js +8 -8
  11. package/backend/mock-src/classes/utils.js +3 -7
  12. package/backend/mock-src/database.js +0 -0
  13. package/backend/mock-src/ticketmaster.js +79 -79
  14. package/backend/validator.js +2 -2
  15. package/config/configs.json +3 -2
  16. package/config/filter.json +3 -2
  17. package/index.html +10 -81
  18. package/index.js +1 -1
  19. package/package.json +25 -40
  20. package/postcss.config.js +1 -1
  21. package/postinstall.js +17 -98
  22. package/public/android-chrome-192x192.png +0 -0
  23. package/public/android-chrome-512x512.png +0 -0
  24. package/public/apple-touch-icon.png +0 -0
  25. package/public/favicon-16x16.png +0 -0
  26. package/public/favicon-32x32.png +0 -0
  27. package/public/favicon.ico +0 -0
  28. package/public/manifest.json +7 -12
  29. package/public/sw.js +2 -0
  30. package/public/workbox-49fdaf31.js +2 -0
  31. package/public/workbox-49fdaf31.js.map +1 -0
  32. package/public/workbox-88575b92.js +2 -0
  33. package/public/workbox-88575b92.js.map +1 -0
  34. package/public/workbox-a67a7b11.js +2 -0
  35. package/public/workbox-a67a7b11.js.map +1 -0
  36. package/public/workbox-d4314735.js +2 -0
  37. package/public/workbox-d4314735.js.map +1 -0
  38. package/public/workbox-e0f89ef3.js +2 -0
  39. package/public/workbox-e0f89ef3.js.map +1 -0
  40. package/run +9 -176
  41. package/src/App.vue +85 -498
  42. package/src/assets/css/_input.scss +99 -144
  43. package/src/assets/css/main.scss +99 -450
  44. package/src/assets/img/background.svg +2 -2
  45. package/src/assets/img/logo_icon.png +0 -0
  46. package/src/components/Auth/LoginForm.vue +11 -62
  47. package/src/components/Editors/Account/Account.vue +40 -116
  48. package/src/components/Editors/Account/AccountCreator.vue +39 -88
  49. package/src/components/Editors/Account/AccountView.vue +34 -102
  50. package/src/components/Editors/Account/CreateAccount.vue +32 -80
  51. package/src/components/Editors/Profile/CreateProfile.vue +83 -269
  52. package/src/components/Editors/Profile/Profile.vue +47 -132
  53. package/src/components/Editors/Profile/ProfileCountryChooser.vue +20 -82
  54. package/src/components/Editors/Profile/ProfileView.vue +34 -91
  55. package/src/components/Editors/TagLabel.vue +6 -67
  56. package/src/components/Filter/Filter.vue +72 -289
  57. package/src/components/Filter/FilterPreview.vue +30 -171
  58. package/src/components/Filter/PriceSortToggle.vue +4 -74
  59. package/src/components/Table/Header.vue +1 -1
  60. package/src/components/Table/Row.vue +1 -1
  61. package/src/components/Table/Table.vue +2 -19
  62. package/src/components/Tasks/CheckStock.vue +13 -28
  63. package/src/components/Tasks/Controls/DesktopControls.vue +17 -17
  64. package/src/components/Tasks/Controls/MobileControls.vue +45 -8
  65. package/src/components/Tasks/CreateTaskAXS.vue +73 -79
  66. package/src/components/Tasks/CreateTaskTM.vue +142 -94
  67. package/src/components/Tasks/MassEdit.vue +7 -9
  68. package/src/components/Tasks/QuickSettings.vue +55 -169
  69. package/src/components/Tasks/ScrapeVenue.vue +4 -7
  70. package/src/components/Tasks/Stats.vue +23 -52
  71. package/src/components/Tasks/Task.vue +136 -378
  72. package/src/components/Tasks/TaskView.vue +47 -107
  73. package/src/components/Tasks/Utilities.vue +6 -5
  74. package/src/components/icons/Bag.vue +1 -1
  75. package/src/components/icons/Loyalty.vue +1 -1
  76. package/src/components/icons/Mail.vue +2 -2
  77. package/src/components/icons/Play.vue +2 -2
  78. package/src/components/icons/Reload.vue +5 -4
  79. package/src/components/icons/Sandclock.vue +2 -2
  80. package/src/components/icons/Stadium.vue +1 -1
  81. package/src/components/icons/index.js +1 -24
  82. package/src/components/ui/Modal.vue +13 -105
  83. package/src/components/ui/Navbar.vue +38 -171
  84. package/src/components/ui/ReconnectIndicator.vue +55 -351
  85. package/src/components/ui/Splash.vue +35 -5
  86. package/src/components/ui/controls/CountryChooser.vue +62 -200
  87. package/src/components/ui/controls/atomic/Checkbox.vue +10 -119
  88. package/src/components/ui/controls/atomic/Dropdown.vue +39 -208
  89. package/src/components/ui/controls/atomic/MultiDropdown.vue +37 -300
  90. package/src/libs/Filter.js +170 -200
  91. package/src/registerServiceWorker.js +1 -1
  92. package/src/stores/connection.js +53 -51
  93. package/src/stores/logger.js +3 -11
  94. package/src/stores/sampleData.js +235 -207
  95. package/src/stores/ui.js +44 -112
  96. package/src/stores/utils.js +6 -90
  97. package/src/views/Accounts.vue +35 -44
  98. package/src/views/Console.vue +90 -341
  99. package/src/views/Editor.vue +123 -1176
  100. package/src/views/FilterBuilder.vue +251 -607
  101. package/src/views/Login.vue +14 -76
  102. package/src/views/Profiles.vue +25 -44
  103. package/src/views/Tasks.vue +100 -187
  104. package/static/offline.html +50 -192
  105. package/tailwind.config.js +26 -104
  106. package/vite.config.js +16 -73
  107. package/vue.config.js +32 -0
  108. package/workbox-config.js +11 -0
  109. package/artwork/image.png +0 -0
  110. package/dev-server.js +0 -136
  111. package/exit +0 -209
  112. package/jsconfig.json +0 -16
  113. package/src/assets/css/_utilities.scss +0 -388
  114. package/src/assets/img/background.svg.backup +0 -11
  115. package/src/components/icons/Check.vue +0 -5
  116. package/src/components/icons/Close.vue +0 -21
  117. package/src/components/icons/CloseX.vue +0 -5
  118. package/src/components/icons/Key.vue +0 -21
  119. package/src/components/icons/Pencil.vue +0 -21
  120. package/src/components/icons/Profile.vue +0 -18
  121. package/src/components/icons/Sell.vue +0 -21
  122. package/src/components/icons/Spinner.vue +0 -42
  123. package/src/components/icons/SquareCheck.vue +0 -18
  124. package/src/components/icons/SquareUncheck.vue +0 -18
  125. package/src/components/icons/Wildcard.vue +0 -18
  126. package/src/components/ui/controls/atomic/LoadingButton.vue +0 -45
  127. package/src/composables/useClickOutside.js +0 -21
  128. package/src/composables/useDropdownPosition.js +0 -174
  129. package/src/types/index.js +0 -41
  130. package/src/utils/debug.js +0 -1
  131. package/switch-branch.sh +0 -41
  132. package/workbox-config.cjs +0 -63
  133. /package/src/assets/img/{logo_icon-old.png → logo_icon_2.png} +0 -0
@@ -1,188 +1,143 @@
1
- /* ==========================================================================
2
- INPUT COMPONENTS STYLING
3
- ========================================================================== */
4
-
5
1
  .input-default {
6
- @apply bg-dark-500 flex items-center bg-clip-padding rounded-lg relative box-border px-3 py-2 border-dark-550 border-2 h-10;
7
- transition: border-color 0.15s ease;
8
-
9
- &:focus-within {
10
- @apply border-dark-700;
11
- }
2
+ @apply h-12 bg-dark-500 flex items-center bg-clip-padding rounded-lg relative box-border;
3
+ $border: 2px;
4
+ @apply border-dark-550 border-2;
5
+ // border: solid $border transparent;
12
6
 
13
7
  input {
14
- @apply h-full w-full focus:outline-none text-sm text-white;
15
- background: transparent;
8
+ @apply h-full w-full px-4 focus:outline-none text-xs text-white;
9
+ background-color: transparent;
16
10
  }
17
11
 
18
- .input-incrementer {
19
- @apply flex flex-col ml-2 gap-0.5;
20
-
21
- button {
22
- @apply w-6 h-4 flex items-center justify-center text-white transition-all duration-200 rounded-sm border border-dark-650;
23
- background: linear-gradient(135deg, #2a2b30 0%, #2e2f34 100%);
24
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
25
-
26
- &:hover {
27
- @apply border-dark-700;
28
- background: linear-gradient(135deg, #2e2f34 0%, #32333a 100%);
29
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
30
- transform: translateY(-0.5px);
31
- }
32
-
33
- &:active {
34
- @apply border-dark-600;
35
- background: linear-gradient(135deg, #26272c 0%, #2a2b30 100%);
36
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
37
- transform: translateY(0);
38
- }
39
-
40
- &:first-child {
41
- border-radius: 4px 4px 2px 2px;
42
- }
43
-
44
- &:last-child {
45
- border-radius: 2px 2px 4px 4px;
46
- }
47
- }
48
-
49
- svg {
50
- @apply w-2.5 h-2.5;
51
- filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.3));
52
- }
53
- }
12
+ // &:before {
13
+ // content: "";
14
+ // @apply absolute top-0 left-0 right-0 bottom-0 opacity-60;
15
+ // z-index: -2;
16
+ // margin: -$border;
17
+ // border-radius: inherit;
18
+ // background: radial-gradient(rgba(96, 66, 255, 0.6), rgba(255, 255, 255, 0));
19
+ // }
54
20
  }
55
-
56
- .input-wrapper label {
57
- @apply text-white font-medium mb-2 block;
58
- font-size: 16px;
21
+ .input-wrapper {
22
+ @apply z-20;
23
+ label {
24
+ @apply text-xs text-light-300 block;
25
+ }
59
26
  }
60
27
 
61
28
  .button-default {
62
- @apply text-white font-medium h-12 rounded-lg duration-150 border border-dark-650 hover:border-dark-700 !important;
29
+ @apply text-white font-medium h-12 rounded-lg duration-150 #{!important};
63
30
  }
64
31
 
65
- /* Remove number input spinners */
66
32
  input[type="number"] {
33
+ -webkit-appearance: textfield;
67
34
  -moz-appearance: textfield;
35
+ appearance: textfield;
68
36
  }
69
-
70
- input[type="number"]::-webkit-outer-spin-button,
71
- input[type="number"]::-webkit-inner-spin-button {
37
+ input[type="number"]::-webkit-inner-spin-button,
38
+ input[type="number"]::-webkit-outer-spin-button {
72
39
  -webkit-appearance: none;
73
- margin: 0;
40
+ }
41
+ .input-incrementer {
42
+ @apply text-white pr-2 #{!important};
43
+ font-size: 8px;
74
44
  }
75
45
 
76
- /* ==========================================================================
77
- ANT DESIGN SELECT STYLING
78
- ========================================================================== */
79
-
46
+ @media (max-width: 810px) {
47
+ .input-default {
48
+ height: 40px !important;
49
+ input {
50
+ font-size: 12px !important;
51
+ }
52
+ }
53
+ .input-wrapper {
54
+ label {
55
+ font-size: 15px;
56
+ }
57
+ }
58
+ .ant-select {
59
+ height: fit-content;
60
+ min-height: 40px !important;
61
+ padding: 0 !important;
62
+ }
63
+ .ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector {
64
+ font-size: 12px;
65
+ }
66
+ .ant-select-multiple .ant-select-selection-item {
67
+ height: 25px !important;
68
+ }
69
+ }
80
70
  .ant-select-dropdown {
81
- z-index: 10000 !important;
71
+ z-index: 20000000000 !important;
82
72
  position: relative;
83
- @apply rounded-lg bg-dark-400 !important;
73
+ @apply rounded-lg #{!important};
84
74
  }
85
75
 
86
76
  .ant-select {
87
- @apply bg-dark-500 flex items-center bg-clip-padding rounded-lg relative box-border px-1 py-1 border-dark-550 border-2 h-10 !important;
77
+ @apply bg-dark-500 flex items-center bg-clip-padding rounded-lg relative box-border px-1 py-1 #{!important};
78
+ min-height: 3.45em;
88
79
  height: fit-content;
80
+ $border: 2px;
81
+ border: solid $border transparent;
89
82
 
90
83
  .ant-select-selector {
91
- @apply h-full w-full focus:outline-none text-xs text-white !important;
84
+ @apply h-full w-full focus:outline-none text-xs text-white #{!important};
92
85
  background: transparent;
93
86
  background-color: transparent !important;
94
87
  border: 0 !important;
95
88
  box-shadow: 0 0 0 !important;
96
-
97
- &:before {
98
- content: "";
99
- position: absolute;
100
- @apply bg-light-400 h-1 w-1 right-1 rounded-full !important;
101
- }
102
89
  }
90
+
91
+ @apply border-dark-550 border-2;
92
+
93
+ // &:before {
94
+ // content: "";
95
+ // @apply absolute top-0 left-0 right-0 bottom-0 opacity-60 #{!important};
96
+ // z-index: -2;
97
+ // margin: -$border;
98
+ // border-radius: inherit;
99
+ // background: radial-gradient(rgba(96, 66, 255, 0.6), rgba(255, 255, 255, 0)) !important;
100
+ // }
103
101
  }
104
102
 
105
103
  .ant-select-multiple .ant-select-selection-item {
106
- @apply bg-dark-400 items-center gap-x-4 !important;
104
+ @apply bg-dark-400 items-center gap-x-4 #{!important};
107
105
  padding-inline-end: 15px;
108
106
  padding-inline-start: 15px;
109
107
  border-radius: 10px;
110
108
  height: 40px;
111
- border: 0;
112
- color: #ffffff;
113
-
114
- &-remove > .anticon {
115
- vertical-align: 0.05rem;
116
- }
109
+ border: 0 !important;
117
110
  }
118
-
119
- .ant-select-selection-item-remove > .anticon svg {
120
- color: #fff;
121
-
122
- path {
123
- fill: currentColor;
124
- }
125
- }
126
-
127
- .ant-select-item-option {
128
- &-selected:not(.ant-select-item-option-disabled) {
129
- @apply bg-dark-500 text-white !important;
130
-
131
- .ant-select-item-option-state {
132
- @apply text-white !important;
133
-
134
- svg {
135
- margin-top: -1.5px;
136
- }
111
+ .ant-select-multiple .ant-select-selection-item-remove > .anticon {
112
+ vertical-align: 0.05rem !important;
113
+ svg {
114
+ path {
115
+ fill: #fff !important;
137
116
  }
138
117
  }
139
-
140
- &-active:not(.ant-select-item-option-disabled) {
141
- background-color: transparent;
142
- }
143
-
144
- &-content {
145
- @apply text-white !important;
146
- }
147
118
  }
148
-
149
- /* ==========================================================================
150
- RESPONSIVE ADJUSTMENTS
151
- ========================================================================== */
152
-
153
- @screen md {
154
- .input-default {
155
- height: 40px;
156
-
157
- input {
158
- font-size: 12px;
159
- }
160
-
161
- .input-incrementer button {
162
- @apply w-5 h-3;
163
-
164
- svg {
165
- @apply w-2 h-2;
166
- }
167
- }
168
- }
169
-
170
- .input-wrapper label {
171
- font-size: 15px;
119
+ .ant-select-item-option-selected:not(.ant-select-item-option-disabled) {
120
+ @apply bg-dark-500 text-white #{!important};
121
+ }
122
+ .ant-select-dropdown {
123
+ @apply bg-dark-400 #{!important};
124
+ }
125
+ .ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state {
126
+ @apply text-white #{!important};
127
+ svg {
128
+ margin-top: -1.5px;
172
129
  }
173
-
174
- .ant-select {
175
- height: fit-content;
176
- min-height: 40px;
177
- padding: 0;
178
-
179
- &-show-search:not(.ant-select-customize-input) .ant-select-selector {
180
- font-size: 12px;
181
- }
182
-
183
- &-multiple .ant-select-selection-item {
184
- height: 25px;
185
- font-size: 10px;
186
- }
130
+ }
131
+ .ant-select-item-option-active:not(.ant-select-item-option-disabled) {
132
+ background-color: transparent;
133
+ }
134
+ .ant-select-item-option-content {
135
+ @apply text-white #{!important};
136
+ }
137
+ .ant-select-selector {
138
+ &:before {
139
+ content: "";
140
+ position: absolute;
141
+ @apply bg-light-400 h-1 w-1 right-1 rounded-full #{!important};
187
142
  }
188
143
  }