diff --git a/assets/css/inputs.css b/assets/css/inputs.css index 1f72837..3fcd27a 100644 --- a/assets/css/inputs.css +++ b/assets/css/inputs.css @@ -22,6 +22,9 @@ } .button { + display: inline-flex; + align-items: center; + box-sizing: border-box; padding: .5rem 1rem; border: none; border-radius: .25rem; @@ -29,10 +32,18 @@ font-size: 1rem; font-weight: bold; + .icon { + padding: .5rem; + } + &:hover { cursor: pointer; background: var(--primary); color: var(--text-light); + + .icon { + fill: var(--text-light); + } } &:focus { @@ -54,6 +65,34 @@ } } +.button-inline { + border: none; + background: none; + color: var(--grey-dark-20); + padding: 0 0 .5rem 0; + font-size: 1rem; + font-weight: bold; + + .icon { + fill: var(--grey-dark-20); + padding-left: none; + } + + &:hover { + cursor: pointer; + background: none; + color: var(--primary); + + .icon { + fill: var(--primary); + } + } + + &:focus { + outline: none; + } +} + .button-cancel { background: none; color: var(--shadow-strong-10); @@ -80,6 +119,7 @@ } .label-values { + flex-shrink: 0; font-weight: normal; } diff --git a/assets/css/theme.css b/assets/css/theme.css index ed097e6..42b2d5c 100644 --- a/assets/css/theme.css +++ b/assets/css/theme.css @@ -25,6 +25,7 @@ --background-level-10: #fff; --background-level-20: #eee; --background-level-30: #eee; + --background-dim: var(--shadow-weak-10); --shadow-weak-40: rgba(0, 0, 0, .05); --shadow-weak-30: rgba(0, 0, 0, .1); diff --git a/components/actors/tile.vue b/components/actors/tile.vue index 7b2d7e8..5406010 100644 --- a/components/actors/tile.vue +++ b/components/actors/tile.vue @@ -80,6 +80,7 @@ defineProps({ } .name { + flex-shrink: 0; padding: .25rem .5rem; font-weight: bold; font-size: .9rem; diff --git a/components/filters/birthdate.vue b/components/filters/birthdate.vue new file mode 100644 index 0000000..a63ee70 --- /dev/null +++ b/components/filters/birthdate.vue @@ -0,0 +1,89 @@ + + + + + diff --git a/components/filters/boobs.vue b/components/filters/boobs.vue new file mode 100644 index 0000000..c410f7a --- /dev/null +++ b/components/filters/boobs.vue @@ -0,0 +1,60 @@ + + + diff --git a/components/filters/countries.vue b/components/filters/countries.vue index 2f6dc43..9e9de0e 100755 --- a/components/filters/countries.vue +++ b/components/filters/countries.vue @@ -6,7 +6,7 @@ :title="country.name" :class="{ selected: selectedCountry === country.alpha2 }" class="country" - @click="updateValue('country', country.alpha2, true)" + @click="emit('country', country.alpha2)" > @@ -34,11 +34,9 @@ defineProps({ type: String, default: null, }, - updateValue: { - type: Function, - default: null, - }, }); + +const emit = defineEmits(['country']); diff --git a/components/filters/filters.vue b/components/filters/filters.vue new file mode 100644 index 0000000..c8f5727 --- /dev/null +++ b/components/filters/filters.vue @@ -0,0 +1,99 @@ + + + + + diff --git a/components/filters/gender.vue b/components/filters/gender.vue new file mode 100644 index 0000000..7e6859a --- /dev/null +++ b/components/filters/gender.vue @@ -0,0 +1,113 @@ + + + + + diff --git a/components/filters/physique.vue b/components/filters/physique.vue new file mode 100644 index 0000000..9bf1404 --- /dev/null +++ b/components/filters/physique.vue @@ -0,0 +1,46 @@ + + + diff --git a/components/header/header.vue b/components/header/header.vue index 400d865..f66a2a8 100644 --- a/components/header/header.vue +++ b/components/header/header.vue @@ -58,6 +58,7 @@ import logo from '../../assets/img/logo.svg?raw'; // eslint-disable-line import/ .header { display: flex; align-items: center; + z-index: 1000; /* make sure shadow shows up above content */ box-shadow: 0 0 3px var(--shadow-weak-10); } diff --git a/components/pagination/pagination.vue b/components/pagination/pagination.vue index 9da1377..7530d87 100644 --- a/components/pagination/pagination.vue +++ b/components/pagination/pagination.vue @@ -138,9 +138,7 @@ const nextPages = computed(() => Array.from({ length: 4 }, (value, index) => { function go(page, event) { if (!props.redirect) { event.preventDefault(); - history.pushState({}, '', event.target.href); // eslint-disable-line no-restricted-globals - currentPage.value = page; } emit('navigation', { diff --git a/pages/actors/+Page.vue b/pages/actors/+Page.vue index d3e4717..4cbbd2e 100644 --- a/pages/actors/+Page.vue +++ b/pages/actors/+Page.vue @@ -1,10 +1,6 @@ diff --git a/pages/actors/+onBeforeRender.js b/pages/actors/+onBeforeRender.js index 53edc9a..f1ad2ad 100644 --- a/pages/actors/+onBeforeRender.js +++ b/pages/actors/+onBeforeRender.js @@ -10,6 +10,7 @@ export async function onBeforeRender(pageContext) { } = await fetchActors(curateActorsQuery(pageContext.urlQuery), { page: Number(pageContext.routeParams.page) || 1, limit: Number(pageContext.urlParsed.search.limit) || 120, + order: pageContext.urlParsed.search.order?.split('.') || ['likes', 'desc'], }); return { diff --git a/renderer/container.vue b/renderer/container.vue index f75e624..da572c0 100644 --- a/renderer/container.vue +++ b/renderer/container.vue @@ -5,20 +5,31 @@ >
-
- +
+