@necrolab/dashboard 0.5.14 → 0.5.16
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/backend/api.js +2 -3
- package/eslint.config.js +46 -0
- package/index.html +2 -1
- package/package.json +5 -2
- package/src/App.vue +140 -170
- package/src/assets/css/base/mixins.scss +72 -0
- package/src/assets/css/base/reset.scss +0 -2
- package/src/assets/css/base/scroll.scss +43 -36
- package/src/assets/css/base/typography.scss +9 -10
- package/src/assets/css/base/variables.scss +43 -0
- package/src/assets/css/components/accessibility.scss +37 -0
- package/src/assets/css/components/buttons.scss +58 -15
- package/src/assets/css/components/forms.scss +31 -32
- package/src/assets/css/components/headers.scss +119 -0
- package/src/assets/css/components/modals.scss +2 -2
- package/src/assets/css/components/search-groups.scss +28 -19
- package/src/assets/css/components/tables.scss +5 -7
- package/src/assets/css/components/toasts.scss +7 -7
- package/src/assets/css/components/utilities.scss +220 -0
- package/src/assets/css/main.scss +72 -75
- package/src/components/Auth/LoginForm.vue +5 -84
- package/src/components/Editors/Account/Account.vue +8 -10
- package/src/components/Editors/Account/AccountCreator.vue +28 -59
- package/src/components/Editors/Account/AccountView.vue +38 -86
- package/src/components/Editors/Account/CreateAccount.vue +8 -50
- package/src/components/Editors/Profile/CreateProfile.vue +74 -131
- package/src/components/Editors/Profile/Profile.vue +15 -17
- package/src/components/Editors/Profile/ProfileCountryChooser.vue +16 -60
- package/src/components/Editors/Profile/ProfileView.vue +46 -96
- package/src/components/Editors/TagLabel.vue +16 -55
- package/src/components/Editors/TagToggle.vue +20 -8
- package/src/components/Filter/Filter.vue +62 -75
- package/src/components/Filter/FilterPreview.vue +161 -135
- package/src/components/Filter/PriceSortToggle.vue +36 -43
- package/src/components/Table/Header.vue +1 -1
- package/src/components/Table/Table.vue +61 -12
- package/src/components/Tasks/CheckStock.vue +7 -16
- package/src/components/Tasks/Controls/DesktopControls.vue +15 -60
- package/src/components/Tasks/Controls/MobileControls.vue +5 -20
- package/src/components/Tasks/CreateTaskAXS.vue +20 -118
- package/src/components/Tasks/CreateTaskTM.vue +33 -189
- package/src/components/Tasks/EventDetailRow.vue +21 -0
- package/src/components/Tasks/MassEdit.vue +6 -16
- package/src/components/Tasks/QuickSettings.vue +140 -216
- package/src/components/Tasks/ScrapeVenue.vue +4 -13
- package/src/components/Tasks/Stats.vue +19 -38
- package/src/components/Tasks/Task.vue +65 -268
- package/src/components/Tasks/TaskLabel.vue +9 -3
- package/src/components/Tasks/TaskView.vue +43 -63
- package/src/components/Tasks/Utilities.vue +10 -42
- package/src/components/Tasks/ViewTask.vue +23 -107
- package/src/components/icons/Close.vue +2 -8
- package/src/components/icons/Gear.vue +8 -8
- package/src/components/icons/Hash.vue +5 -0
- package/src/components/icons/Key.vue +2 -8
- package/src/components/icons/Pencil.vue +2 -8
- package/src/components/icons/Profile.vue +2 -8
- package/src/components/icons/Sell.vue +2 -8
- package/src/components/icons/Spinner.vue +4 -7
- package/src/components/icons/SquareCheck.vue +2 -8
- package/src/components/icons/SquareUncheck.vue +2 -8
- package/src/components/icons/Wildcard.vue +2 -8
- package/src/components/icons/index.js +3 -1
- package/src/components/ui/ActionButtonGroup.vue +113 -52
- package/src/components/ui/BalanceIndicator.vue +60 -0
- package/src/components/ui/EmptyState.vue +24 -0
- package/src/components/ui/EnableDisableToggle.vue +23 -0
- package/src/components/ui/FormField.vue +48 -48
- package/src/components/ui/IconLabel.vue +23 -0
- package/src/components/ui/InfoRow.vue +21 -54
- package/src/components/ui/Modal.vue +78 -37
- package/src/components/ui/Navbar.vue +60 -41
- package/src/components/ui/ReadonlyFieldsSection.vue +31 -0
- package/src/components/ui/ReconnectIndicator.vue +111 -124
- package/src/components/ui/SectionCard.vue +6 -14
- package/src/components/ui/Splash.vue +2 -10
- package/src/components/ui/StatusBadge.vue +26 -28
- package/src/components/ui/TaskToggle.vue +54 -0
- package/src/components/ui/controls/CountryChooser.vue +27 -64
- package/src/components/ui/controls/EyeToggle.vue +1 -1
- package/src/components/ui/controls/atomic/Checkbox.vue +40 -121
- package/src/components/ui/controls/atomic/Dropdown.vue +102 -95
- package/src/components/ui/controls/atomic/MultiDropdown.vue +72 -94
- package/src/components/ui/controls/atomic/Switch.vue +21 -84
- package/src/composables/useColorMapping.js +15 -0
- package/src/composables/useCopyToClipboard.js +1 -1
- package/src/composables/useDateFormatting.js +21 -0
- package/src/composables/useDeviceDetection.js +14 -0
- package/src/composables/useDropdownPosition.js +5 -6
- package/src/composables/useDynamicTableHeight.js +31 -0
- package/src/composables/useRowSelection.js +0 -3
- package/src/composables/useTicketPricing.js +16 -0
- package/src/composables/useWindowDimensions.js +21 -0
- package/src/libs/Filter.js +14 -20
- package/src/libs/panzoom.js +1 -5
- package/src/libs/utils/array.js +60 -0
- package/src/{stores/utils.js → libs/utils/dataGeneration.js} +2 -250
- package/src/libs/utils/eventUrl.js +40 -0
- package/src/libs/utils/string.js +28 -0
- package/src/libs/utils/time.js +20 -0
- package/src/libs/utils/validation.js +88 -0
- package/src/main.js +0 -2
- package/src/stores/connection.js +1 -4
- package/src/stores/logger.js +6 -12
- package/src/stores/sampleData.js +1 -2
- package/src/stores/ui.js +59 -36
- package/src/views/Accounts.vue +17 -31
- package/src/views/Console.vue +76 -176
- package/src/views/Editor.vue +217 -383
- package/src/views/FilterBuilder.vue +190 -373
- package/src/views/Login.vue +3 -28
- package/src/views/Profiles.vue +12 -22
- package/src/views/Tasks.vue +51 -38
- package/tailwind.config.js +82 -71
- package/workbox-config.cjs +47 -5
- package/docs/plans/2026-02-08-tailwind-consolidation.md +0 -2416
- package/exit +0 -209
- package/run +0 -177
- package/switch-branch.sh +0 -41
- /package/public/{reconnect-logo.png → img/reconnect-logo.png} +0 -0
package/workbox-config.cjs
CHANGED
|
@@ -1,13 +1,39 @@
|
|
|
1
1
|
module.exports = {
|
|
2
|
-
globDirectory: "
|
|
3
|
-
globPatterns: [
|
|
4
|
-
|
|
2
|
+
globDirectory: "dist/",
|
|
3
|
+
globPatterns: [
|
|
4
|
+
// HTML files
|
|
5
|
+
"**/*.html",
|
|
6
|
+
// All built assets (JS, CSS)
|
|
7
|
+
"assets/**/*.{js,css}",
|
|
8
|
+
// All images (including bundled ones)
|
|
9
|
+
"**/*.{png,ico,svg,jpg,jpeg,webp,gif}",
|
|
10
|
+
// Manifest and other static files
|
|
11
|
+
"manifest.json",
|
|
12
|
+
"*.{png,ico,webp}"
|
|
13
|
+
],
|
|
14
|
+
swDest: "dist/sw.js",
|
|
5
15
|
sourcemap: false,
|
|
6
16
|
skipWaiting: true,
|
|
7
17
|
clientsClaim: true,
|
|
8
18
|
ignoreURLParametersMatching: [/^utm_/, /^fbclid$/],
|
|
9
19
|
cleanupOutdatedCaches: true,
|
|
20
|
+
// Increase max size to handle larger bundles
|
|
21
|
+
maximumFileSizeToCacheInBytes: 5 * 1024 * 1024, // 5MB
|
|
10
22
|
runtimeCaching: [
|
|
23
|
+
// HTML files - Network first, fallback to cache
|
|
24
|
+
{
|
|
25
|
+
urlPattern: /\.html$/,
|
|
26
|
+
handler: "NetworkFirst",
|
|
27
|
+
options: {
|
|
28
|
+
cacheName: "html-cache",
|
|
29
|
+
networkTimeoutSeconds: 3,
|
|
30
|
+
expiration: {
|
|
31
|
+
maxEntries: 10,
|
|
32
|
+
maxAgeSeconds: 60 * 60 * 24 * 7 // 1 week
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
// Images - Cache first for best performance
|
|
11
37
|
{
|
|
12
38
|
urlPattern: /\.(?:png|jpg|jpeg|svg|gif|webp|ico)$/,
|
|
13
39
|
handler: "CacheFirst",
|
|
@@ -19,17 +45,19 @@ module.exports = {
|
|
|
19
45
|
}
|
|
20
46
|
}
|
|
21
47
|
},
|
|
48
|
+
// JS and CSS - Stale while revalidate for balance
|
|
22
49
|
{
|
|
23
50
|
urlPattern: /\.(?:js|css)$/,
|
|
24
51
|
handler: "StaleWhileRevalidate",
|
|
25
52
|
options: {
|
|
26
53
|
cacheName: "static-resources",
|
|
27
54
|
expiration: {
|
|
28
|
-
maxEntries:
|
|
29
|
-
maxAgeSeconds: 60 * 60 * 24 *
|
|
55
|
+
maxEntries: 100, // Increased for more assets
|
|
56
|
+
maxAgeSeconds: 60 * 60 * 24 * 30 // 30 days (longer)
|
|
30
57
|
}
|
|
31
58
|
}
|
|
32
59
|
},
|
|
60
|
+
// Google Fonts stylesheets
|
|
33
61
|
{
|
|
34
62
|
urlPattern: /^https:\/\/fonts\.googleapis\.com\//,
|
|
35
63
|
handler: "StaleWhileRevalidate",
|
|
@@ -37,6 +65,7 @@ module.exports = {
|
|
|
37
65
|
cacheName: "google-fonts-stylesheets"
|
|
38
66
|
}
|
|
39
67
|
},
|
|
68
|
+
// Google Fonts webfonts
|
|
40
69
|
{
|
|
41
70
|
urlPattern: /^https:\/\/fonts\.gstatic\.com\//,
|
|
42
71
|
handler: "CacheFirst",
|
|
@@ -48,6 +77,7 @@ module.exports = {
|
|
|
48
77
|
}
|
|
49
78
|
}
|
|
50
79
|
},
|
|
80
|
+
// Country flags
|
|
51
81
|
{
|
|
52
82
|
urlPattern: /\/flags\//,
|
|
53
83
|
handler: "CacheFirst",
|
|
@@ -58,6 +88,18 @@ module.exports = {
|
|
|
58
88
|
maxAgeSeconds: 60 * 60 * 24 * 90 // 90 days
|
|
59
89
|
}
|
|
60
90
|
}
|
|
91
|
+
},
|
|
92
|
+
// Prism.js CDN resources
|
|
93
|
+
{
|
|
94
|
+
urlPattern: /^https:\/\/cdnjs\.cloudflare\.com\/ajax\/libs\/prism\//,
|
|
95
|
+
handler: "CacheFirst",
|
|
96
|
+
options: {
|
|
97
|
+
cacheName: "prism-cdn",
|
|
98
|
+
expiration: {
|
|
99
|
+
maxEntries: 10,
|
|
100
|
+
maxAgeSeconds: 60 * 60 * 24 * 365 // 1 year
|
|
101
|
+
}
|
|
102
|
+
}
|
|
61
103
|
}
|
|
62
104
|
]
|
|
63
105
|
};
|