From d0f89bdefdf2bd674a828cee4f35fb35a5ddf809 Mon Sep 17 00:00:00 2001 From: Wlad Meixner Date: Mon, 18 Sep 2023 17:42:39 +0200 Subject: [PATCH] wip: refactoring tiled query for multi table --- bun.lockb | Bin 0 -> 144178 bytes package.json | 113 +- pnpm-lock.yaml | 7 + src/lib/components/BasicGraph.svelte | 15 +- src/lib/components/Button.svelte | 56 - src/lib/components/Dialog.svelte | 14 +- src/lib/components/Dropdown.svelte | 54 +- src/lib/components/DropdownSelect.svelte | 76 +- src/lib/components/FilterSidebar.svelte | 269 +- src/lib/components/OptionRenderer.svelte | 86 + src/lib/components/QueryEditor.svelte | 2 +- src/lib/components/Slider.svelte | 28 +- src/lib/components/TableSelection.svelte | 29 + src/lib/components/base/Divider.svelte | 1 + src/lib/components/base/Label.svelte | 3 + src/lib/components/base/Tag.svelte | 5 + src/lib/components/button/Button.svelte | 82 + src/lib/components/button/type.ts | 16 + src/lib/components/graph/PlaneGraph.svelte | 9 +- src/lib/rendering/AxisRenderer.ts | 176 +- src/lib/rendering/Minimap.ts | 23 +- src/lib/rendering/PlaneRenderer.ts | 109 +- .../rendering/geometry/DataPlaneGeometry.ts | 14 +- src/lib/store/dataStore/filterActions.ts | 185 +- src/lib/store/dataStore/loadActions.ts | 23 +- src/lib/store/filterStore/FilterStore.ts | 32 +- src/lib/store/filterStore/graphs/plane.ts | 337 +- src/lib/store/filterStore/types.ts | 62 +- src/lib/store/notificationStore.ts | 36 + src/lib/store/urlStorage.ts | 55 +- src/routes/+layout.svelte | 29 +- src/routes/+page.svelte | 7 +- src/routes/graph/+page.svelte | 34 +- .../xor_construct_mt_part_100m.csv | 2753 +++++++++++++++++ .../xor_construct_mt_part_100m.json | 35 + .../xor_construct_mt_part_1m.csv | 2753 +++++++++++++++++ .../xor_construct_mt_part_1m.json | 35 + tailwind.config.js | 2 +- 38 files changed, 6884 insertions(+), 681 deletions(-) create mode 100755 bun.lockb delete mode 100644 src/lib/components/Button.svelte create mode 100644 src/lib/components/OptionRenderer.svelte create mode 100644 src/lib/components/TableSelection.svelte create mode 100644 src/lib/components/base/Divider.svelte create mode 100644 src/lib/components/base/Label.svelte create mode 100644 src/lib/components/base/Tag.svelte create mode 100644 src/lib/components/button/Button.svelte create mode 100644 src/lib/components/button/type.ts create mode 100644 src/lib/store/notificationStore.ts create mode 100755 static/xor_construct/xor_construct_mt_part_100m.csv create mode 100755 static/xor_construct/xor_construct_mt_part_100m.json create mode 100755 static/xor_construct/xor_construct_mt_part_1m.csv create mode 100755 static/xor_construct/xor_construct_mt_part_1m.json diff --git a/bun.lockb b/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..4b6a99a2efc931c2b8d03bdf25327dd8283eb814 GIT binary patch literal 144178 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.0.0} dev: true + /@fontsource/inter@5.0.8: + resolution: {integrity: sha512-28knWH1BfOiRalfLs90U4sge5mpQ8ZH6FS0PTT+IZMKrZ7wNHDHRuKa1kQJg+uHcc6axBppnxll+HXM4c7zo/Q==} + dev: false + /@humanwhocodes/config-array@0.11.10: resolution: {integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==} engines: {node: '>=10.10.0'} diff --git a/src/lib/components/BasicGraph.svelte b/src/lib/components/BasicGraph.svelte index a85a429..6584aee 100644 --- a/src/lib/components/BasicGraph.svelte +++ b/src/lib/components/BasicGraph.svelte @@ -1,6 +1,7 @@ -
+
- import type { Action } from '@sveltejs/kit'; - - export let size: 'sm' | 'md' | 'lg' = 'md'; - export let disabled: boolean = false; - export let color: 'primary' | 'secondary' = 'secondary'; - - let className: string | undefined = undefined; - - export { className as class }; - - function classForSize() { - switch (size) { - case 'sm': - return 'px-2.5 py-1.5 text-xs shadow-sm rounded-md'; - case 'md': - return 'px-4 py-2 text-sm shadow-mg rounded-lg'; - case 'lg': - return 'px-4 py-2 text-base shadow-lg rounded-xl'; - } - } - - function classForColors(): string { - switch (color) { - case 'primary': - return 'text-white bg-primary-600 hover:bg-primary-700 border-primary-700 hover:border-primary-700'; - case 'secondary': - return 'text-secondary-600 dark:text-background-50 bg-white border-secondary-300 dark:border-background-950 dark:bg-background-900 hover:bg-gray-50 dark:hover:bg-background-800 dark:hover:border-background-900'; - } - } - - function classForDisabledState(): string { - if (disabled) { - return 'cursor-not-allowed opacity-50 pointer-events-none'; - } - return ''; - } - - - - - diff --git a/src/lib/components/Dialog.svelte b/src/lib/components/Dialog.svelte index 2e433f5..f4dc6e2 100644 --- a/src/lib/components/Dialog.svelte +++ b/src/lib/components/Dialog.svelte @@ -3,8 +3,9 @@ import { onMount, onDestroy } from 'svelte'; import { fade, fly } from 'svelte/transition'; - export let large = false; + type DialogSize = 'small' | 'medium' | 'large'; + export let size: DialogSize = 'medium'; export let dialogOpen = false; let className: string | undefined = undefined; export { className as class }; @@ -48,8 +49,7 @@ >