Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
5c98c9e
feat(WIP): use unified ui package
silvester-pari Mar 3, 2025
0fdba16
fix: important css override
silvester-pari Mar 3, 2025
05d8b4c
Merge branch 'main' into all/feat/ui-style
silvester-pari May 26, 2025
8f7cfaa
chore: formatting
silvester-pari May 26, 2025
f43186a
fix: only apply styling to correct story
silvester-pari May 26, 2025
22ac0b3
chore: update tests to fit HTML structure
silvester-pari May 26, 2025
b26ce79
chore(deps): update ui package
silvester-pari May 26, 2025
a5a9679
feat: add ui-styling for eox-geosearch
silvester-pari May 26, 2025
f7c9901
feat: add ui-styling for layercontrol
silvester-pari Jun 3, 2025
9594b05
feat: add ui-styling for jsonform
silvester-pari Jun 3, 2025
bda4e9c
fix(style): form control margin for boolean type
silvester-pari Jun 3, 2025
c9132f8
feat: add ui-styling for itemfilter
silvester-pari Jun 3, 2025
f7d6eb3
chore: update ui package
silvester-pari Jun 3, 2025
8c22ca4
fead: add ui-styling for stacinfo
silvester-pari Jun 3, 2025
9ce780c
chore: typecheck fixes
silvester-pari Jun 3, 2025
3f5444b
feat: add ui-styling for timecontrol
silvester-pari Jun 3, 2025
724e7e9
feat: add ui-styling for map
silvester-pari Jun 3, 2025
a4bc5ed
fix(style): geolocation icon sizing
silvester-pari Jun 3, 2025
5136fa9
feat: add ui-styling for storytelling
silvester-pari Jun 3, 2025
cbd9161
Merge branch 'main' into all/feat/ui-style
silvester-pari Jun 3, 2025
f1b72a7
fix: custom section overlay
silvester-pari Jun 3, 2025
dc17729
feat: harmonized sizing and stylings
silvester-pari Jun 5, 2025
ce4cc45
chore: delete utils/styles directory
silvester-pari Jun 6, 2025
942164a
fix(style): package update, mroe color / dark mode adjustments
silvester-pari Jun 6, 2025
e7e7f0b
Merge branch 'main' into all/feat/ui-style-improved
silvester-pari Jun 11, 2025
67d1985
chore: remove example story content
silvester-pari Jun 11, 2025
ea5d90e
chore: adjust header size
silvester-pari Jun 11, 2025
5b2514a
fix: don't put border on range input
silvester-pari Jun 11, 2025
b688066
fix(style): layer control tools
silvester-pari Jun 11, 2025
4aad281
chore: demo story
silvester-pari Jun 11, 2025
1e247c0
fix(test): adjust for new padding
silvester-pari Jun 12, 2025
69a11ae
fix(test): adapt to new structure
silvester-pari Jun 12, 2025
5193d9c
fix(test): adapt to new structure
silvester-pari Jun 12, 2025
d854aab
fix: itemfilter card display and placeholder
silvester-pari Jun 12, 2025
8d6de4f
fix: sizing of stcinfo shadow fonts
silvester-pari Jun 12, 2025
917dae4
fix: rendering of date inputs etc.
silvester-pari Jun 12, 2025
138b651
chore(style): adjust button styles in properties
silvester-pari Jun 12, 2025
2a06efc
fix(test): adapt to new structure
silvester-pari Jun 12, 2025
0048e48
fix: switch click
silvester-pari Jun 12, 2025
62191f2
fic(style): harmonize drawtools styling
silvester-pari Jun 12, 2025
10c207f
fix(style). chart harmonizations
silvester-pari Jun 12, 2025
39dff85
chore: reset story
silvester-pari Jun 12, 2025
cf3fb14
fix(test): adapt for layout changes
silvester-pari Jun 12, 2025
78380a8
feat: add required common stylesheet automatically to document head
silvester-pari Jun 12, 2025
1891f46
fix: common stylesheet overrides
silvester-pari Jun 12, 2025
467aace
fix(style): look&feel of drawing
silvester-pari Jun 12, 2025
1150192
fix(style): harmonization of hover backgrounds
silvester-pari Jun 12, 2025
943f938
fix(style): harmonize button hover colors
silvester-pari Jun 12, 2025
75601db
fix: chip hover effect
silvester-pari Jun 12, 2025
01a9aa4
Merge pull request #1712 from EOX-A/all/feat/ui-style-improved
silvester-pari Jun 12, 2025
072e588
fix(style): adaptations
silvester-pari Jun 12, 2025
6dc4ad8
chore: add draw default title
silvester-pari Jun 12, 2025
52a10e6
chore: add kitchen sink demo
silvester-pari Jun 12, 2025
b49f6d0
fix: conditional drawinteraction activation
silvester-pari Jun 12, 2025
42cb0f5
chore: fix linting
silvester-pari Jun 12, 2025
6c255e7
chore: move demo story
silvester-pari Jun 12, 2025
d487dbd
Merge branch 'main' into all/feat/ui-style
silvester-pari Jun 16, 2025
593cf84
fix: font-face for checkboxes and radios
silvester-pari Jun 16, 2025
b89fe9a
fix (style): mark highlights
silvester-pari Jun 16, 2025
5f33402
chore: update eoxui package
silvester-pari Jun 16, 2025
b4287e6
chore(deps): update EOxUI package
silvester-pari Jun 16, 2025
36abd8a
chore: update demo stories
silvester-pari Jun 16, 2025
ee0fb2b
fix(style): adapt jsonform styling
silvester-pari Jun 16, 2025
97c4def
fix(style): timecontrol max ticks width
silvester-pari Jun 16, 2025
1343c3a
fix(style): layercontrol tools list and spacings
silvester-pari Jun 16, 2025
8378f84
fix(style): spacings and sizes
silvester-pari Jun 17, 2025
4cb08ea
fix(style): background coloring
silvester-pari Jun 18, 2025
f960025
fix(style): tools button visibility
silvester-pari Jun 18, 2025
36d5ab9
fix: left/right button icons
silvester-pari Jun 18, 2025
68b7cf0
fix: hide drawtools title if embedded in jsonform
silvester-pari Jun 18, 2025
6188b93
fix: css var for selector filter height
silvester-pari Jun 18, 2025
fdcda95
fix: applying of CSS var to selector filter
silvester-pari Jun 19, 2025
3644a40
fix(test): adapt to new structure
silvester-pari Jun 19, 2025
9cb6fd6
chore: formatting
silvester-pari Jun 19, 2025
a335391
fix: scroll to header click after change of UI
lubojr Jun 22, 2025
9b660dd
fix: formatting!
lubojr Jun 22, 2025
71fb78e
fix: third time the charm
lubojr Jun 22, 2025
2ba5163
fix: overflow of filters
silvester-pari Jun 22, 2025
6b98e21
feat: add map compare thumb
silvester-pari Jun 22, 2025
15a02e5
fix: truncate nav entres with 2-line-support on webkit
silvester-pari Jun 23, 2025
6cf2fb6
fix: filter-display
silvester-pari Jun 23, 2025
c132b4b
chore: remove unnecessary imports
silvester-pari Jun 23, 2025
7f1f4c8
fix: flex 1 on nav entries
silvester-pari Jun 23, 2025
b0e19f0
fix: onl auto-hide layer controls on pointer:fine displays
silvester-pari Jun 23, 2025
f2ce823
fix: disable rotation interaction by default
silvester-pari Jun 23, 2025
53dfd51
feat: change button based on draw type
silvester-pari Jun 23, 2025
5cbf507
feat: add --layer-toggle-button-visibility var
silvester-pari Jun 23, 2025
bc5f6de
feat: adjustment of storytelling step sizing and background
silvester-pari Jun 23, 2025
8ebe27c
fix: polygon icon
silvester-pari Jun 23, 2025
fe614c2
chore: remove wrongly committed styling
silvester-pari Jun 24, 2025
5a8c4f6
fix: ab slider thumb background
silvester-pari Jun 24, 2025
658d552
feat(WIP): fade layers
silvester-pari Jun 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 1 addition & 6 deletions .storybook/preview-head.html
Original file line number Diff line number Diff line change
@@ -1,6 +1 @@
<style>
@import url("https://eox.at/fonts/roboto/roboto.css");
* {
font-family: "Roboto", sans-serif;
}
</style>
<style></style>
2 changes: 0 additions & 2 deletions .storybook/preview.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@ import "@eox/map/src/plugins/advancedLayersAndSources";
import "@eox/stacinfo";
import "@eox/storytelling";
import "@eox/timecontrol";
import "@eox/ui";
import "@eox/ui/style.css";

/**
* A custom wrapper for the default setCustomElementsManifest function.
Expand Down
378 changes: 378 additions & 0 deletions demo.stories.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,378 @@
import { html } from "lit";
import eoxStyle from "@eox/ui/style.css?inline";
import "@eox/ui";
import items from "./elements/itemfilter/test/testItems.json";

export default {
title: "Demo",
parameters: {
componentSubtitle: "Automatically fetch & display properties of STAC files",
layout: "fullscreen",
},
};

export const KitchenSink = {
render: () => html`
<nav class="small-padding surface-container">
<div class="max">
<p>EOxElements Demo</p>
</div>
<label class="switch icon small">
<input
type="checkbox"
.checked=${window.ui("mode") === "dark"}
@input=${(e) => {
window.ui("mode", e.target.checked ? "dark" : "light");
}}
/>
<span>
<i class="mdi mdi-brightness-7"></i>
<i class="mdi mdi-brightness-2"></i>
</span>
</label>
</nav>
<eox-layout gap="8" fill-grid row-height="200px" column-width="200px">
<eox-layout-item w="2">
<eox-chart
style="height: 100%"
.spec=${{
$schema: "https://vega.github.io/schema/vega-lite/v5.json",
description:
"A chart visualizing data fetched from a geoDB endpoint",
data: {
url: "https://xcube-geodb.brockmann-consult.de/gtif/f0ad1e25-98fa-4b82-9228-815ab24f5dd1/GTIF_no2_data?and=(date.gte.2022-01-01,date.lte.2022-01-05)&select=no2_ec_station_ppbv,date",
parse: {
no2_ec_station_ppbv: "number",
date: "date",
},
},
encoding: {
x: { field: "date", type: "temporal" },
},
layer: [
{
encoding: {
y: {
field: "no2_ec_station_ppbv",
type: "quantitative",
},
},
layer: [
{ mark: "line" },
{
transform: [{ filter: { param: "hover", empty: false } }],
mark: "point",
},
],
},
{
mark: "rule",
encoding: {
opacity: {
condition: { value: 0.3, param: "hover", empty: false },
value: 0,
},
tooltip: [
{
field: "no2_ec_station_ppbv",
type: "quantitative",
},
],
},
params: [
{
name: "hover",
select: {
type: "point",
fields: ["date"],
nearest: true,
on: "pointerover",
clear: "pointerout",
},
},
],
},
],
}}
></eox-chart>
</eox-layout-item>
<eox-layout-item>
<eox-drawtools multiple-features show-list></eox-drawtools>
</eox-layout-item>
<eox-layout-item>
<eox-geosearch
style="grid-column: 6 / span 3; pointer-events: all"
></eox-geosearch>
<eox-geosearch
small
button
style="grid-column: 6 / span 3; pointer-events: all"
></eox-geosearch>
</eox-layout-item>
<eox-layout-item h="2">
<eox-itemfilter
style="height: 100%; width: 100%; overflow: hidden;"
.titleProperty=${"title"}
.aggregateResults=${"themes"}
.items=${items}
.enableResultAction=${true}
.imageProperty=${"img"}
.enableHighlighting=${true}
.filterProperties=${[
{
keys: ["title", "themes"],
title: "Search",
type: "text",
placeholder: "Type Something...",
expanded: true,
validation: {
pattern: ".{0,10}",
message: "Maximum 10 characters",
},
},
{
key: "completed",
title: "Completed",
type: "multiselect",
filterKeys: [true, false],
},
{
key: "userId",
title: "User ID",
type: "multiselect",
filterKeys: [1, 2, 3],
},
]}
></eox-itemfilter>
</eox-layout-item>
<eox-layout-item h="2">
<eox-layercontrol .toolsAsList=${true}></eox-layercontrol>
</eox-layout-item>
<eox-layout-item w="2" h="2">
<eox-map
.controls=${{
Zoom: {},
Attribution: {},
FullScreen: {},
OverviewMap: {
layers: [
{
type: "Tile",
properties: {
id: "overviewMap",
},
source: {
type: "OSM",
},
},
],
},
}}
.layers=${[
{
type: "Tile",
properties: {
id: "AWS_NO2-VISUALISATION",
},
source: {
type: "TileWMS",
url: "https://services.sentinel-hub.com/ogc/wms/0635c213-17a1-48ee-aef7-9d1731695a54",
params: {
LAYERS: "AWS_NO2-VISUALISATION",
TIME: "2022-12-05",
},
},
},
{
type: "WebGLTile",
style: {
variables: {
vmin: 2,
vmax: 5,
settlementDistance: 0,
},
color: [
"case",
[
"all",
[">", ["band", 1], 1],
[">=", ["band", 2], ["var", "settlementDistance"]],
],
[
"interpolate",
["linear"],
[
"/",
["-", ["band", 1], ["var", "vmin"]],
["-", ["var", "vmax"], ["var", "vmin"]],
],
0,
[68, 1, 84, 1],
0.067,
[70, 23, 103, 1],
0.133,
[71, 44, 122, 1],
0.2,
[65, 63, 131, 1],
0.266,
[59, 81, 139, 1],
0.333,
[52, 97, 141, 1],
0.4,
[44, 113, 142, 1],
0.467,
[39, 129, 142, 1],
0.533,
[33, 144, 141, 1],
0.6,
[39, 173, 129, 1],
0.666,
[66, 187, 114, 1],
0.733,
[92, 200, 99, 1],
0.8,
[131, 210, 75, 1],
0.867,
[170, 220, 50, 1],
0.933,
[212, 226, 44, 1],
1,
[253, 231, 37, 1],
],
["color", 0, 0, 0, 0],
],
},
properties: {
id: Symbol(),
title: "Solar Energy COG Example",
layerConfig: {
type: "style",
legend: {
title: "Global horizontal irradiation",
range: [
"rgba(253, 231, 37, 1)",
"rgba(33, 144, 141, 1)",
"rgba(68, 1, 84, 1)",
],
domainProperties: ["vmin", "vmax"],
},
schema: {
type: "object",
title: "Data configuration",
properties: {
settlementDistance: {
type: "number",
minimum: 0,
maximum: 5000,
format: "range",
default: 0,
},
vminmax: {
title: "Global horizontal irradiation",
description: "[kWh/m²/day]",
type: "object",
properties: {
vmin: {
type: "number",
minimum: 0,
maximum: 5,
format: "range",
default: 2,
},
vmax: {
type: "number",
minimum: 0,
maximum: 5,
format: "range",
default: 5,
},
},
format: "minmax",
},
},
},
},
},
source: {
type: "GeoTIFF",
normalize: false,
sources: [
{
url: "https://eox-gtif-public.s3.eu-central-1.amazonaws.com/DHI/v2/SolarPowerPotential_Annual_COG_clipped_3857_fixed.tif",
},
{
url: "https://eox-gtif-public.s3.eu-central-1.amazonaws.com/DHI/WSF_EucDist_Austria_3857_COG_fix.tif",
},
],
},
},
{
type: "Group",
properties: {
id: "group1",
title: "Background Layers",
},
layers: [
{
type: "Tile",
source: { type: "OSM" },
properties: { title: "OSM" },
},
],
},
]}
style="width: 100%; height: 100%;"
></eox-map>
</eox-layout-item>
<eox-layout-item h="3">
<eox-stacinfo
.for=${`${window.location.href.split("iframe.html")[0]}/collection.json`}
.header=${["title"]}
.tags=${["tags"]}
.body=${["satellite", "sensor", "agency", "extent"]}
.featured=${["description", "providers", "assets", "links"]}
.footer=${["sci:citation"]}
></eox-stacinfo>
</eox-layout-item>
<eox-layout-item w="2">
<eox-timecontrol
.layer=${"AWS_NO2-VISUALISATION"}
.controlProperty=${"TIME"}
.controlValues=${[
"2022-12-05",
"2022-12-12",
"2022-12-19",
"2022-12-26",
"2023-01-16",
"2023-01-23",
"2023-01-30",
"2023-02-06",
"2023-02-13",
"2023-02-27",
"2023-03-06",
"2023-03-13",
"2023-03-20",
"2023-03-27",
"2023-04-03",
"2023-04-10",
"2023-04-17",
"2023-04-24",
]}
.play=${true}
.slider=${true}
></eox-timecontrol>
</eox-layout-item>
</eox-layout>
<style>
${eoxStyle} eox-layout {
padding: 8px !important;
}
eox-layout-item {
border: 1px solid lightgrey;
border-radius: 8px;
background: var(--surface-container-lowest);
overflow-y: auto;
}
</style>
`,
};
Loading
Loading