Commit Graph

41 Commits

Author SHA1 Message Date
Mario Zechner
c8a1e41abb Setting to show only available items. On by default. 2023-06-21 21:39:33 +02:00
Mario Zechner
1b9505d9cc Mario is an idiot. 2023-06-21 18:38:09 +02:00
Mario Zechner
807c6e90e2 Fix import. 2023-06-21 18:25:21 +02:00
Mario Zechner
60ecb68924 Mark unavailable items in data and with 💀 in ui, add emojis to category names, hide filter groups if ! query, 2023-06-21 17:07:45 +02:00
Mario Zechner
d9ed69f578 Fix Penny URLs, invert category filter checkbox logic. 2023-06-21 16:15:05 +02:00
Mario Zechner
f2ef75e5c4 Remove old entries for discount only stores. Closes #102 2023-06-21 16:00:59 +02:00
Mario Zechner
303d25ccb5 Categories for Billa & Spar, infra to add catgories for other stores.
Billa maps directly to the canonical categories. Spar uses a mapping file stores/spar-categories.json.

Each store has a generateCategoryMapping() function which is called once in analysis.js:updateData() and analysis.js:replay(). The function is responsible for

* Fetching the latest categories
* Merging them with already mapped categories
* Report new categories that haven't been mapped yet
* Report categories that have been mapped but are no longer part of the latest set of categories
* Save the merged mappings to disk

This schema might not work for all stores, in which case updateData() and replay() will use a knn approach to figure out the category for an item. See #81
2023-06-21 01:29:00 +02:00
Mario Zechner
6569b17da2 Remove binary encoding, web worker, clean-up. 2023-06-18 23:23:02 +02:00
Mario Zechner
be552fcd9e Hard code JSON data usage. 2023-06-18 22:52:32 +02:00
Mario Zechner
f315d03829 Remove sparSi, use getters instead of precalculated values in item. See #99 145mb - 92mb 2023-06-18 22:35:48 +02:00
Mario Zechner
a93c581ef9 Intern strings. See #99. 2023-06-18 20:29:03 +02:00
Mario Zechner
d636362acc Don't precalculate item url. See #99 166 -> 159mb 2023-06-18 20:14:36 +02:00
Mario Zechner
be0516fca6 Fix log message. 2023-06-18 17:36:46 +02:00
Mario Zechner
916f7af5ec Add web worker support for loading items. It's much slower than just blocking on the main thread. 2023-06-18 16:16:01 +02:00
Mario Zechner
d13a0e2d55 Final answer. 2023-06-18 14:55:57 +02:00
Mario Zechner
e065057f81 Sigh #2... 2023-06-18 14:53:56 +02:00
Mario Zechner
538bf08d0b Sigh. 2023-06-18 14:51:37 +02:00
Mario Zechner
36d7ce59f0 Settings useJSON isn't what's expected. 2023-06-18 14:50:08 +02:00
Mario Zechner
d01d984706 Fix binary encoding of unit. 2023-06-18 14:45:35 +02:00
Mario Zechner
c578a7e5bc Default to JSON, don't make it an option for now. 2023-06-18 14:42:47 +02:00
Mario Zechner
c7537c341e Binary format optimization 4.4mb -> 3.9mb, don't store urls were not needed, use product-id instead of code-internal for spar items, 2023-06-17 01:11:21 +02:00
Mario Zechner
c9740b8660 Improved compression, 4.8mb -> 4.4mb and faster decoding. 2023-06-16 23:12:37 +02:00
Mario Zechner
d63d42d623 Write store info as part of binary serialization. 2023-06-16 20:38:39 +02:00
Mario Zechner
222720365c Improve binary decoding, make binary default. 2023-06-16 20:03:08 +02:00
Mario Zechner
ea5c133003 Binary compression (it's worse), unit prices in charts, small improvements. 2023-06-16 16:01:13 +02:00
Mario Zechner
bd1fa721e4 Settings page and settings for default selected stores, chart start date, and chart type. 2023-06-15 21:12:01 +02:00
Mario Zechner
024da0328b Don't fetch and show lidl. We still fetch the data in the server. 2023-06-15 19:37:07 +02:00
Mario Zechner
6281e66dc7 Various improvements, perf, style, live-reload. 2023-06-15 19:25:35 +02:00
Mario Zechner
7e0b6ac1f6 Improved compression 2023-06-14 00:11:34 +02:00
Mario Zechner
1d2eb5315e Fix some Hofer unit/quantity mistakes, add price per unit to frontend. 2023-06-13 10:09:52 +02:00
Mario Zechner
031114ebca The great refactor. 2023-06-13 01:16:27 +02:00
Mario Zechner
fce2f928c7 Spar SI fixes 2023-06-12 15:31:46 +02:00
Mario Zechner
599207ea4c Disable non-Austrian stores by default. 2023-06-12 14:19:49 +02:00
Mario Zechner
5c65236f6c Spar Slovenia. 2023-06-12 13:08:51 +02:00
Mario Zechner
d7426bc395 Use new changes.js 2023-06-12 10:32:42 +02:00
Mario Zechner
833dd632fa Fix alaquery filtering. 2023-06-12 10:02:20 +02:00
Mario Zechner
75367c6852 New index.html/index.js using the new framework. State serialization fixes. 2023-06-11 23:49:18 +02:00
Mario Zechner
5964cc5de2 Finished items-filter component, changes-new and index-new. items-list incomplete, no charting yet. 2023-06-10 22:34:28 +02:00
Mario Zechner
12ef72feae New changes.html/.js WIP 2023-06-09 02:03:57 +02:00
Mario Zechner
2e2df3db38 First iteration of new front end structure. 2023-06-09 00:37:29 +02:00
Mario Zechner
ec3c8f4ed3 WIP esbuild, bundling, components. 2023-06-08 13:48:08 +02:00