@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.
- package/.prettierrc +1 -27
- package/.vscode/extensions.json +1 -1
- package/README.md +79 -43
- package/backend/api.js +48 -40
- package/backend/auth.js +3 -3
- package/backend/batching.js +1 -1
- package/backend/endpoints.js +77 -13
- package/backend/index.js +2 -2
- package/backend/mock-data.js +38 -29
- package/backend/mock-src/classes/logger.js +8 -8
- package/backend/mock-src/classes/utils.js +3 -7
- package/backend/mock-src/database.js +0 -0
- package/backend/mock-src/ticketmaster.js +79 -79
- package/backend/validator.js +2 -2
- package/config/configs.json +3 -2
- package/config/filter.json +3 -2
- package/index.html +10 -81
- package/index.js +1 -1
- package/package.json +25 -40
- package/postcss.config.js +1 -1
- package/postinstall.js +17 -98
- package/public/android-chrome-192x192.png +0 -0
- package/public/android-chrome-512x512.png +0 -0
- package/public/apple-touch-icon.png +0 -0
- package/public/favicon-16x16.png +0 -0
- package/public/favicon-32x32.png +0 -0
- package/public/favicon.ico +0 -0
- package/public/manifest.json +7 -12
- package/public/sw.js +2 -0
- package/public/workbox-49fdaf31.js +2 -0
- package/public/workbox-49fdaf31.js.map +1 -0
- package/public/workbox-88575b92.js +2 -0
- package/public/workbox-88575b92.js.map +1 -0
- package/public/workbox-a67a7b11.js +2 -0
- package/public/workbox-a67a7b11.js.map +1 -0
- package/public/workbox-d4314735.js +2 -0
- package/public/workbox-d4314735.js.map +1 -0
- package/public/workbox-e0f89ef3.js +2 -0
- package/public/workbox-e0f89ef3.js.map +1 -0
- package/run +9 -176
- package/src/App.vue +85 -498
- package/src/assets/css/_input.scss +99 -144
- package/src/assets/css/main.scss +99 -450
- package/src/assets/img/background.svg +2 -2
- package/src/assets/img/logo_icon.png +0 -0
- package/src/components/Auth/LoginForm.vue +11 -62
- package/src/components/Editors/Account/Account.vue +40 -116
- package/src/components/Editors/Account/AccountCreator.vue +39 -88
- package/src/components/Editors/Account/AccountView.vue +34 -102
- package/src/components/Editors/Account/CreateAccount.vue +32 -80
- package/src/components/Editors/Profile/CreateProfile.vue +83 -269
- package/src/components/Editors/Profile/Profile.vue +47 -132
- package/src/components/Editors/Profile/ProfileCountryChooser.vue +20 -82
- package/src/components/Editors/Profile/ProfileView.vue +34 -91
- package/src/components/Editors/TagLabel.vue +6 -67
- package/src/components/Filter/Filter.vue +72 -289
- package/src/components/Filter/FilterPreview.vue +30 -171
- package/src/components/Filter/PriceSortToggle.vue +4 -74
- package/src/components/Table/Header.vue +1 -1
- package/src/components/Table/Row.vue +1 -1
- package/src/components/Table/Table.vue +2 -19
- package/src/components/Tasks/CheckStock.vue +13 -28
- package/src/components/Tasks/Controls/DesktopControls.vue +17 -17
- package/src/components/Tasks/Controls/MobileControls.vue +45 -8
- package/src/components/Tasks/CreateTaskAXS.vue +73 -79
- package/src/components/Tasks/CreateTaskTM.vue +142 -94
- package/src/components/Tasks/MassEdit.vue +7 -9
- package/src/components/Tasks/QuickSettings.vue +55 -169
- package/src/components/Tasks/ScrapeVenue.vue +4 -7
- package/src/components/Tasks/Stats.vue +23 -52
- package/src/components/Tasks/Task.vue +136 -378
- package/src/components/Tasks/TaskView.vue +47 -107
- package/src/components/Tasks/Utilities.vue +6 -5
- package/src/components/icons/Bag.vue +1 -1
- package/src/components/icons/Loyalty.vue +1 -1
- package/src/components/icons/Mail.vue +2 -2
- package/src/components/icons/Play.vue +2 -2
- package/src/components/icons/Reload.vue +5 -4
- package/src/components/icons/Sandclock.vue +2 -2
- package/src/components/icons/Stadium.vue +1 -1
- package/src/components/icons/index.js +1 -24
- package/src/components/ui/Modal.vue +13 -105
- package/src/components/ui/Navbar.vue +38 -171
- package/src/components/ui/ReconnectIndicator.vue +55 -351
- package/src/components/ui/Splash.vue +35 -5
- package/src/components/ui/controls/CountryChooser.vue +62 -200
- package/src/components/ui/controls/atomic/Checkbox.vue +10 -119
- package/src/components/ui/controls/atomic/Dropdown.vue +39 -208
- package/src/components/ui/controls/atomic/MultiDropdown.vue +37 -300
- package/src/libs/Filter.js +170 -200
- package/src/registerServiceWorker.js +1 -1
- package/src/stores/connection.js +53 -51
- package/src/stores/logger.js +3 -11
- package/src/stores/sampleData.js +235 -207
- package/src/stores/ui.js +44 -112
- package/src/stores/utils.js +6 -90
- package/src/views/Accounts.vue +35 -44
- package/src/views/Console.vue +90 -341
- package/src/views/Editor.vue +123 -1176
- package/src/views/FilterBuilder.vue +251 -607
- package/src/views/Login.vue +14 -76
- package/src/views/Profiles.vue +25 -44
- package/src/views/Tasks.vue +100 -187
- package/static/offline.html +50 -192
- package/tailwind.config.js +26 -104
- package/vite.config.js +16 -73
- package/vue.config.js +32 -0
- package/workbox-config.js +11 -0
- package/artwork/image.png +0 -0
- package/dev-server.js +0 -136
- package/exit +0 -209
- package/jsconfig.json +0 -16
- package/src/assets/css/_utilities.scss +0 -388
- package/src/assets/img/background.svg.backup +0 -11
- package/src/components/icons/Check.vue +0 -5
- package/src/components/icons/Close.vue +0 -21
- package/src/components/icons/CloseX.vue +0 -5
- package/src/components/icons/Key.vue +0 -21
- package/src/components/icons/Pencil.vue +0 -21
- package/src/components/icons/Profile.vue +0 -18
- package/src/components/icons/Sell.vue +0 -21
- package/src/components/icons/Spinner.vue +0 -42
- package/src/components/icons/SquareCheck.vue +0 -18
- package/src/components/icons/SquareUncheck.vue +0 -18
- package/src/components/icons/Wildcard.vue +0 -18
- package/src/components/ui/controls/atomic/LoadingButton.vue +0 -45
- package/src/composables/useClickOutside.js +0 -21
- package/src/composables/useDropdownPosition.js +0 -174
- package/src/types/index.js +0 -41
- package/src/utils/debug.js +0 -1
- package/switch-branch.sh +0 -41
- package/workbox-config.cjs +0 -63
- /package/src/assets/img/{logo_icon-old.png → logo_icon_2.png} +0 -0
|
@@ -1,66 +1,79 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<Modal class="max-w-screen
|
|
2
|
+
<Modal class="overflow-y-scroll max-w-screen">
|
|
3
3
|
<template #header>
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
<PencilIcon />
|
|
7
|
-
</div>
|
|
4
|
+
Create Task
|
|
5
|
+
<img src="@/assets/img/pencil.svg" class="ml-4" />
|
|
8
6
|
</template>
|
|
9
7
|
|
|
8
|
+
<!-- <div v-if="displayConfigSelector" class="w-3/12 input-wrapper z-inf2 mt-4">
|
|
9
|
+
<div class="dropdown input-default p-2">
|
|
10
|
+
<span class="flex justify-between items-center z-inf2 text-white">
|
|
11
|
+
<span class="text-sm">Load config</span>
|
|
12
|
+
<DownIcon class="absolute right-5" />
|
|
13
|
+
</span>
|
|
14
|
+
<div class="dropdown-content z-inf2">
|
|
15
|
+
<div
|
|
16
|
+
v-bind:key="opt.name"
|
|
17
|
+
class="py-1 my-1 cursor-pointer"
|
|
18
|
+
v-for="opt in addTaskConfigs"
|
|
19
|
+
@click="useConfig(opt.config)"
|
|
20
|
+
>
|
|
21
|
+
<p>{{ opt.name }}</p>
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
</div>
|
|
25
|
+
</div> -->
|
|
26
|
+
|
|
10
27
|
<!-- Task Form -->
|
|
11
|
-
<div class="grid-
|
|
28
|
+
<div class="grid grid-cols-2 gap-x-4 gap-y-4 mt-4 mb-4">
|
|
12
29
|
<!-- Event ID -->
|
|
13
30
|
<div class="input-wrapper">
|
|
14
|
-
<label class="label-override mb-2"
|
|
15
|
-
Event ID
|
|
31
|
+
<label class="label-override mb-2"
|
|
32
|
+
>Event ID
|
|
16
33
|
<StadiumIcon />
|
|
17
34
|
</label>
|
|
18
|
-
<div class="input-default
|
|
35
|
+
<div class="input-default">
|
|
19
36
|
<input
|
|
20
37
|
:placeholder="!isEU(ui.currentCountry.siteId) ? '102PDA9125510GYU' : '529171'"
|
|
21
38
|
v-model="task.eventId"
|
|
22
|
-
|
|
39
|
+
/>
|
|
40
|
+
<span class="text-red-400 my-auto mr-2 mt-3">* </span>
|
|
23
41
|
</div>
|
|
24
42
|
</div>
|
|
25
43
|
<!-- Email -->
|
|
26
44
|
<div class="input-wrapper">
|
|
27
|
-
<label class="label-override mb-2"
|
|
28
|
-
Email
|
|
45
|
+
<label class="label-override mb-2"
|
|
46
|
+
>Email
|
|
29
47
|
<MailIcon />
|
|
30
48
|
</label>
|
|
31
49
|
<div class="input-default">
|
|
32
|
-
<input
|
|
33
|
-
placeholder="Email"
|
|
34
|
-
v-model="task.email"
|
|
35
|
-
autocomplete="off"
|
|
36
|
-
data-form-type="other"
|
|
37
|
-
name="tm_email_disableautocomplete" />
|
|
50
|
+
<input placeholder="Email" v-model="task.email" />
|
|
38
51
|
</div>
|
|
39
52
|
</div>
|
|
40
53
|
<!-- Proxy -->
|
|
41
54
|
<div class="input-wrapper">
|
|
42
|
-
<label class="label-override mb-2"
|
|
43
|
-
Proxy
|
|
55
|
+
<label class="label-override mb-2"
|
|
56
|
+
>Proxy
|
|
44
57
|
<CameraIcon />
|
|
45
58
|
</label>
|
|
46
59
|
<div class="input-default">
|
|
47
|
-
<input placeholder="Proxy" v-model="task.proxy"
|
|
60
|
+
<input placeholder="Proxy" v-model="task.proxy" />
|
|
48
61
|
</div>
|
|
49
62
|
</div>
|
|
50
63
|
<!-- Presale Code -->
|
|
51
64
|
<div class="input-wrapper">
|
|
52
|
-
<label class="label-override mb-2"
|
|
53
|
-
Presale Code
|
|
65
|
+
<label class="label-override mb-2"
|
|
66
|
+
>Presale Code
|
|
54
67
|
<AwardIcon />
|
|
55
68
|
</label>
|
|
56
69
|
<div class="input-default">
|
|
57
|
-
<input placeholder="Code" v-model="task.presaleCode" maxlength="15"
|
|
70
|
+
<input placeholder="Code" v-model="task.presaleCode" maxlength="15" />
|
|
58
71
|
</div>
|
|
59
72
|
</div>
|
|
60
73
|
<!-- Ticket Quantity -->
|
|
61
74
|
<div class="input-wrapper">
|
|
62
|
-
<label class="label-override mb-2"
|
|
63
|
-
Ticket Quantity
|
|
75
|
+
<label class="label-override mb-2"
|
|
76
|
+
>Ticket Quantity
|
|
64
77
|
<BagIcon />
|
|
65
78
|
</label>
|
|
66
79
|
<div class="input-default">
|
|
@@ -77,10 +90,7 @@
|
|
|
77
90
|
</div>
|
|
78
91
|
<!-- Ticket Quantity -->
|
|
79
92
|
<div class="input-wrapper">
|
|
80
|
-
<label class="label-override mb-2">
|
|
81
|
-
Amount
|
|
82
|
-
<span class="ml-2 h-[18px]">#</span>
|
|
83
|
-
</label>
|
|
93
|
+
<label class="label-override mb-2">Amount <span class="ml-2" style="height: 18px">#</span></label>
|
|
84
94
|
<div class="input-default">
|
|
85
95
|
<input placeholder="20" min="1" type="number" pattern="\d*" v-model="task.taskQuantity" />
|
|
86
96
|
<div class="input-incrementer">
|
|
@@ -95,37 +105,35 @@
|
|
|
95
105
|
</div>
|
|
96
106
|
|
|
97
107
|
<!-- Profile Tag(s) -->
|
|
98
|
-
<div class="input-wrapper
|
|
99
|
-
<label class="label-override mb-2"
|
|
100
|
-
Profile Tag(s)
|
|
108
|
+
<div class="input-wrapper" style="z-index: 50 !important">
|
|
109
|
+
<label class="label-override mb-2"
|
|
110
|
+
>Profile Tag(s)
|
|
101
111
|
<TagIcon />
|
|
102
112
|
</label>
|
|
103
113
|
<MultiDropdown
|
|
104
|
-
class="
|
|
114
|
+
class="w-full will-change-auto input-default"
|
|
105
115
|
:onSelect="(v) => (task.profileTags = v)"
|
|
106
116
|
default="Any"
|
|
107
117
|
:options="
|
|
108
118
|
profileTagsOptions.map((opt) => {
|
|
109
119
|
return { label: opt, value: opt };
|
|
110
120
|
})
|
|
111
|
-
"
|
|
121
|
+
"
|
|
122
|
+
/>
|
|
112
123
|
</div>
|
|
113
124
|
|
|
114
125
|
<!-- CL Origin -->
|
|
115
126
|
<div v-if="isEU(ui.currentCountry.siteId)" class="input-wrapper">
|
|
116
|
-
<label class="label-override mb-2">
|
|
117
|
-
CL Origin
|
|
118
|
-
<AwardIcon />
|
|
119
|
-
</label>
|
|
127
|
+
<label class="label-override mb-2">CL Origin<AwardIcon /></label>
|
|
120
128
|
<div class="input-default">
|
|
121
129
|
<input placeholder="ORIGIN2" type="text" v-model="task.clOrigin" maxlength="15" />
|
|
122
130
|
</div>
|
|
123
131
|
</div>
|
|
124
132
|
|
|
125
133
|
<!-- Account Tag -->
|
|
126
|
-
<div class="input-wrapper
|
|
127
|
-
<label class="label-override mb-2"
|
|
128
|
-
Account Tag
|
|
134
|
+
<div class="input-wrapper">
|
|
135
|
+
<label class="label-override mb-2"
|
|
136
|
+
>Account Tag
|
|
129
137
|
<ScannerIcon />
|
|
130
138
|
</label>
|
|
131
139
|
|
|
@@ -136,14 +144,12 @@
|
|
|
136
144
|
:options="accountTagOptions"
|
|
137
145
|
:allowDefault="false"
|
|
138
146
|
:capitalize="true"
|
|
139
|
-
class="input-default dropdown w-full
|
|
147
|
+
class="input-default dropdown p-4 w-full"
|
|
148
|
+
/>
|
|
140
149
|
</div>
|
|
141
150
|
|
|
142
151
|
<div class="input-wrapper">
|
|
143
|
-
<label class="label-override mb-2">
|
|
144
|
-
Start Offset (Minutes)
|
|
145
|
-
<ShieldIcon />
|
|
146
|
-
</label>
|
|
152
|
+
<label class="label-override mb-2">Start Offset (Minutes)<ShieldIcon /></label>
|
|
147
153
|
<div class="input-default">
|
|
148
154
|
<input placeholder="120" type="number" pattern="\d*" v-model="task.startOffset" />
|
|
149
155
|
</div>
|
|
@@ -151,8 +157,8 @@
|
|
|
151
157
|
|
|
152
158
|
<div v-if="!isEU(ui.currentCountry.siteId)">
|
|
153
159
|
<div class="input-wrapper">
|
|
154
|
-
<label class="label-override mb-2"
|
|
155
|
-
Presale DID
|
|
160
|
+
<label class="label-override mb-2"
|
|
161
|
+
>Presale DID
|
|
156
162
|
<AwardIcon />
|
|
157
163
|
</label>
|
|
158
164
|
<div class="input-default">
|
|
@@ -161,13 +167,12 @@
|
|
|
161
167
|
</div>
|
|
162
168
|
</div>
|
|
163
169
|
</div>
|
|
164
|
-
<div class="
|
|
170
|
+
<div class="border border-light-300 mb-3" />
|
|
165
171
|
<!-- Task Switches -->
|
|
166
|
-
<div v-if="!isEU(ui.currentCountry.siteId)" class="
|
|
167
|
-
<div class="switch-wrapper
|
|
168
|
-
<h4
|
|
169
|
-
Aged
|
|
170
|
-
<span class="hidden xs:block">Account</span>
|
|
172
|
+
<div v-if="!isEU(ui.currentCountry.siteId)" class="grid grid-cols-3 task-switches gap-y-1 justify-between">
|
|
173
|
+
<div class="switch-wrapper flex flex-col mb-2">
|
|
174
|
+
<h4>
|
|
175
|
+
Aged <span class="hidden xs:block">Account</span>
|
|
171
176
|
<SandclockIcon />
|
|
172
177
|
</h4>
|
|
173
178
|
<Switch class="mx-auto" v-model="task.agedAccount" />
|
|
@@ -187,7 +192,7 @@
|
|
|
187
192
|
</h4>
|
|
188
193
|
<Switch class="mx-auto" v-model="task.doNotPay" />
|
|
189
194
|
</div>
|
|
190
|
-
<div class="
|
|
195
|
+
<div class="flex flex-col switch-wrapper">
|
|
191
196
|
<h4>
|
|
192
197
|
<span class="hidden xs:block">Quick Queue</span>
|
|
193
198
|
<span class="block xs:hidden">Quick Q.</span>
|
|
@@ -195,7 +200,7 @@
|
|
|
195
200
|
</h4>
|
|
196
201
|
<Switch class="mx-auto" v-model="task.quickQueue" />
|
|
197
202
|
</div>
|
|
198
|
-
<div class="
|
|
203
|
+
<div class="flex flex-col switch-wrapper">
|
|
199
204
|
<h4>
|
|
200
205
|
<span class="hidden xs:block">Login Later</span>
|
|
201
206
|
<span class="block xs:hidden">Login Lat.</span>
|
|
@@ -204,7 +209,7 @@
|
|
|
204
209
|
</h4>
|
|
205
210
|
<Switch class="mx-auto" v-model="task.loginAfterCart" />
|
|
206
211
|
</div>
|
|
207
|
-
<div class="
|
|
212
|
+
<div class="flex flex-col switch-wrapper">
|
|
208
213
|
<h4>
|
|
209
214
|
<span class="hidden xs:block">Smart Timer</span>
|
|
210
215
|
<span class="block xs:hidden">Timer</span>
|
|
@@ -214,31 +219,28 @@
|
|
|
214
219
|
</div>
|
|
215
220
|
<div class="switch-wrapper flex flex-col">
|
|
216
221
|
<h4>
|
|
217
|
-
<span class="hidden xs:block">Supports</span>
|
|
218
|
-
|
|
219
|
-
<MailIcon class="h-[17px] scale-90" />
|
|
222
|
+
<span class="hidden xs:block">Supports </span> OTP
|
|
223
|
+
<MailIcon class="scale-90" style="height: 17px" />
|
|
220
224
|
</h4>
|
|
221
225
|
<Switch class="mx-auto" v-model="task.otpAccount" />
|
|
222
226
|
</div>
|
|
223
227
|
<div class="switch-wrapper flex flex-col">
|
|
224
228
|
<h4>
|
|
225
|
-
Presale
|
|
226
|
-
<span class="hidden xs:block">Queue</span>
|
|
229
|
+
Presale <span class="hidden xs:block"> Queue</span>
|
|
227
230
|
<AwardIcon class="scale-90" />
|
|
228
231
|
</h4>
|
|
229
232
|
<Switch class="mx-auto" v-model="task.presaleMode" />
|
|
230
233
|
</div>
|
|
231
234
|
<div class="switch-wrapper flex flex-col">
|
|
232
235
|
<h4>
|
|
233
|
-
Strict
|
|
234
|
-
<span class="hidden xs:block">Presale</span>
|
|
236
|
+
Strict <span class="hidden xs:block"> Presale</span>
|
|
235
237
|
<AwardIcon class="scale-90" />
|
|
236
238
|
</h4>
|
|
237
239
|
<Switch class="mx-auto" v-model="task.presaleStrict" />
|
|
238
240
|
</div>
|
|
239
241
|
</div>
|
|
240
242
|
<div v-if="isEU(ui.currentCountry.siteId)">
|
|
241
|
-
<div class="
|
|
243
|
+
<div class="grid grid-cols-4 gap-y-4 mb-4 justify-between task-switches">
|
|
242
244
|
<div class="switch-wrapper flex flex-col">
|
|
243
245
|
<h4 class="text-xs">
|
|
244
246
|
Manual
|
|
@@ -264,20 +266,18 @@
|
|
|
264
266
|
</div>
|
|
265
267
|
<div class="switch-wrapper flex flex-col">
|
|
266
268
|
<h4>
|
|
267
|
-
|
|
268
|
-
<span class="block xs:hidden">Login Lat.</span>
|
|
269
|
+
Autologin
|
|
269
270
|
<GroupIcon class="scale-90" />
|
|
270
271
|
</h4>
|
|
271
272
|
<Switch class="mx-auto" v-model="task.loginAfterCart" />
|
|
272
273
|
</div>
|
|
273
274
|
</div>
|
|
274
275
|
|
|
275
|
-
<div class="
|
|
276
|
+
<div class="grid grid-cols-4 gap-y-4 justify-between task-switches">
|
|
276
277
|
<div class="switch-wrapper flex flex-col">
|
|
277
278
|
<h4>
|
|
278
279
|
<span class="hidden xs:block">Quick Queue</span>
|
|
279
|
-
<span class="block xs:hidden">Quick Q.</span>
|
|
280
|
-
<SkiIcon class="scale-90" />
|
|
280
|
+
<span class="block xs:hidden">Quick Q.</span> <SkiIcon class="scale-90" />
|
|
281
281
|
</h4>
|
|
282
282
|
<Switch class="mx-auto" v-model="task.quickQueue" />
|
|
283
283
|
</div>
|
|
@@ -285,14 +285,13 @@
|
|
|
285
285
|
<div class="switch-wrapper flex flex-col">
|
|
286
286
|
<h4>
|
|
287
287
|
Supports OTP
|
|
288
|
-
<MailIcon class="
|
|
288
|
+
<MailIcon class="scale-90" />
|
|
289
289
|
</h4>
|
|
290
290
|
<Switch class="mx-auto" v-model="task.otpAccount" />
|
|
291
291
|
</div>
|
|
292
292
|
<div class="switch-wrapper flex flex-col">
|
|
293
293
|
<h4>
|
|
294
|
-
Aged
|
|
295
|
-
<span class="hidden xs:block">Account</span>
|
|
294
|
+
Aged <span class="hidden xs:block">Account</span>
|
|
296
295
|
<SandclockIcon />
|
|
297
296
|
</h4>
|
|
298
297
|
<Switch class="mx-auto" v-model="task.agedAccount" />
|
|
@@ -301,8 +300,11 @@
|
|
|
301
300
|
</div>
|
|
302
301
|
|
|
303
302
|
<!-- Task prefab -->
|
|
304
|
-
<div class="
|
|
305
|
-
<button
|
|
303
|
+
<div class="border border-light-300 my-3" />
|
|
304
|
+
<button
|
|
305
|
+
class="button-default hover:opacity-70 active:opacity-50 bg-dark-400 w-48 text-xs mx-auto flex items-center justify-center gap-x-2"
|
|
306
|
+
@click="createTask"
|
|
307
|
+
>
|
|
306
308
|
Create
|
|
307
309
|
<EditIcon />
|
|
308
310
|
</button>
|
|
@@ -331,23 +333,20 @@ import {
|
|
|
331
333
|
UpIcon,
|
|
332
334
|
DownIcon,
|
|
333
335
|
SandclockIcon,
|
|
334
|
-
CartIcon
|
|
335
|
-
PencilIcon
|
|
336
|
+
CartIcon
|
|
336
337
|
} from "@/components/icons";
|
|
337
338
|
import { useUIStore } from "@/stores/ui";
|
|
338
339
|
import { countries } from "@/stores/countries";
|
|
339
340
|
import Dropdown from "@/components/ui/controls/atomic/Dropdown.vue";
|
|
340
341
|
import MultiDropdown from "@/components/ui/controls/atomic/MultiDropdown.vue";
|
|
341
|
-
import { isEU,
|
|
342
|
+
import { isEU, parseEventUrl, removeDuplicates } from "@/stores/utils";
|
|
342
343
|
|
|
343
344
|
const ui = useUIStore();
|
|
344
345
|
|
|
345
|
-
const accountTagOptions = ref(ui.profile.
|
|
346
|
+
const accountTagOptions = ref(ui.profile.accountTags);
|
|
346
347
|
const defaultTags = ["Amex", "Visa", "Master"];
|
|
347
348
|
|
|
348
|
-
const profileTagsOptions = ref(
|
|
349
|
-
removeDuplicates(["Any", ...defaultTags, ...ui.profile.profileTags.map((x) => firstUpper(x))])
|
|
350
|
-
);
|
|
349
|
+
const profileTagsOptions = ref(removeDuplicates(["Any", ...defaultTags, ...ui.profile.profileTags]));
|
|
351
350
|
|
|
352
351
|
const baseTask = ref({
|
|
353
352
|
selected: false,
|
|
@@ -363,6 +362,7 @@ const baseTask = ref({
|
|
|
363
362
|
proxy: "",
|
|
364
363
|
manual: true,
|
|
365
364
|
doNotPay: false,
|
|
365
|
+
incapsulaBypass: false,
|
|
366
366
|
quickQueue: false,
|
|
367
367
|
loginAfterCart: false,
|
|
368
368
|
smartTimer: false,
|
|
@@ -380,7 +380,7 @@ baseTask.value.loginAfterCart = isEU(ui.currentCountry.siteId);
|
|
|
380
380
|
const task = ref(ui.modalData[`task_${ui.currentCountry.siteId}`] || baseTask);
|
|
381
381
|
|
|
382
382
|
function createTask() {
|
|
383
|
-
ui.logger.Info("Created new task", task.value
|
|
383
|
+
ui.logger.Info("Created new task", task.value);
|
|
384
384
|
const eventIds = task.value.eventId.split(",").map((t) => t.trim());
|
|
385
385
|
const presaleCodes = task.value.presaleCode ? task.value.presaleCode.split(",").map((t) => t.trim()) : [undefined];
|
|
386
386
|
eventIds.forEach((eventId) => {
|
|
@@ -403,11 +403,7 @@ watch(
|
|
|
403
403
|
}
|
|
404
404
|
);
|
|
405
405
|
|
|
406
|
-
watch(
|
|
407
|
-
() => task.value,
|
|
408
|
-
() => (ui.modalData[`task_${ui.currentCountry.siteId}`] = task.value),
|
|
409
|
-
{ deep: true }
|
|
410
|
-
);
|
|
406
|
+
watch(() => task.value, (ui.modalData[`task_${ui.currentCountry.siteId}`] = task.value));
|
|
411
407
|
|
|
412
408
|
watch(
|
|
413
409
|
() => task.value.eventId,
|
|
@@ -426,21 +422,73 @@ watch(
|
|
|
426
422
|
const country = countries.TM.find((c) => c.siteId === tmid);
|
|
427
423
|
if (country) ui.setCurrentCountry(country, false, ui.currentModule);
|
|
428
424
|
|
|
429
|
-
const { eventId, eventDid, clOrigin } =
|
|
430
|
-
task.value.eventId = eventId;
|
|
431
|
-
task.value.eventDid = eventDid;
|
|
425
|
+
const { eventId, eventDid, clOrigin } = parseEventUrl(url);
|
|
432
426
|
task.value.clOrigin = clOrigin;
|
|
427
|
+
task.value.eventDid = eventDid;
|
|
428
|
+
task.value.eventId = eventId;
|
|
433
429
|
} catch (ex) {
|
|
434
430
|
ui.logger.Error("Could not parse url (2)", ex);
|
|
435
431
|
}
|
|
436
432
|
}
|
|
437
433
|
);
|
|
434
|
+
|
|
435
|
+
// fetchConfigs();
|
|
438
436
|
</script>
|
|
439
437
|
|
|
440
438
|
<style lang="scss" scoped>
|
|
439
|
+
.label-override {
|
|
440
|
+
@apply flex;
|
|
441
|
+
color: #6e7084 !important;
|
|
442
|
+
|
|
443
|
+
img {
|
|
444
|
+
@apply ml-2;
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
.task-switches {
|
|
449
|
+
h4 {
|
|
450
|
+
color: #6e7084;
|
|
451
|
+
@apply text-xs text-center flex items-center gap-x-2 mx-auto;
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
.switch-wrapper {
|
|
455
|
+
@apply gap-y-2;
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
@media (max-width: 720px) {
|
|
460
|
+
.task-switches {
|
|
461
|
+
h4 {
|
|
462
|
+
font-size: 12px !important;
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
</style>
|
|
467
|
+
<style lang="scss">
|
|
468
|
+
.label-override {
|
|
469
|
+
svg {
|
|
470
|
+
@apply ml-2;
|
|
471
|
+
|
|
472
|
+
path {
|
|
473
|
+
fill: #6e7084 !important;
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
@apply flex items-center;
|
|
477
|
+
}
|
|
478
|
+
|
|
441
479
|
.switch-wrapper {
|
|
442
|
-
svg
|
|
443
|
-
|
|
480
|
+
svg {
|
|
481
|
+
path {
|
|
482
|
+
fill: #6e7084 !important;
|
|
483
|
+
}
|
|
444
484
|
}
|
|
445
485
|
}
|
|
486
|
+
|
|
487
|
+
.z-inf {
|
|
488
|
+
z-index: 1000;
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
.z-inf2 {
|
|
492
|
+
z-index: 2000;
|
|
493
|
+
}
|
|
446
494
|
</style>
|
|
@@ -4,22 +4,21 @@
|
|
|
4
4
|
<!-- Event ID -->
|
|
5
5
|
<div class="input-wrapper mt-7 mb-4">
|
|
6
6
|
<label class="label-override mb-2">Event ID <StadiumIcon /></label>
|
|
7
|
-
<div class="input-default
|
|
8
|
-
<input
|
|
9
|
-
|
|
10
|
-
v-model="eventId"
|
|
11
|
-
/>
|
|
7
|
+
<div class="input-default">
|
|
8
|
+
<input placeholder="102PDA9125510GYU" v-model="eventId" />
|
|
9
|
+
<span class="text-red-400 my-auto mr-2 mt-3">* </span>
|
|
12
10
|
</div>
|
|
13
11
|
</div>
|
|
14
|
-
<!--
|
|
12
|
+
<!-- Ticker Quantity -->
|
|
15
13
|
<div class="input-wrapper mb-8">
|
|
16
14
|
<label class="label-override mb-2">Presale Code <BagIcon /></label>
|
|
17
|
-
<div class="input-default
|
|
15
|
+
<div class="input-default">
|
|
18
16
|
<input placeholder="presale code" v-model="code" />
|
|
17
|
+
<span class="text-red-400 my-auto mr-2 mt-3">* </span>
|
|
19
18
|
</div>
|
|
20
19
|
</div>
|
|
21
20
|
<button
|
|
22
|
-
class="button-default bg-dark-400 w-48 text-xs flex items-center justify-center gap-x-2 ml-auto
|
|
21
|
+
class="button-default hover:opacity-70 active:opacity-50 bg-dark-400 w-48 text-xs flex items-center justify-center gap-x-2 ml-auto"
|
|
23
22
|
@click="done()"
|
|
24
23
|
>
|
|
25
24
|
Edit <EditIcon />
|
|
@@ -38,7 +37,6 @@ import Modal from "@/components/ui/Modal.vue";
|
|
|
38
37
|
import { StadiumIcon, BagIcon, EditIcon } from "@/components/icons";
|
|
39
38
|
import { useUIStore } from "@/stores/ui";
|
|
40
39
|
import { ref } from "vue";
|
|
41
|
-
import { isEU } from "@/stores/utils";
|
|
42
40
|
|
|
43
41
|
const ui = useUIStore();
|
|
44
42
|
const code = ref("");
|