Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
e498c99
feat: warped grid using svg and warpjs
svvimming Jan 16, 2023
9947081
feat: warped grid doubled and overflow hidden beneath wrapper div
svvimming Jan 16, 2023
f8c9463
chore: fixed an npm package installation being in the wrong place
justanothersynth Jan 23, 2023
00777ba
chore: merged stable and fixed conflicts
justanothersynth Mar 29, 2023
a8afe29
chore: moved warpjs installation to repoRoot
justanothersynth Mar 29, 2023
413cea9
feat: canvas implementation of warped grid animation
svvimming Mar 30, 2023
ffb86b3
chore: remove old warped grid files
svvimming Mar 30, 2023
8c86f3b
feat: add warped grid canvases to fill page height and animate when i…
svvimming Mar 31, 2023
4f70bbc
chore: uninstall warpjs
svvimming Mar 31, 2023
80c8ced
Merge branch 'feat-warped-grid-canvas-implementation' into feat-warpe…
svvimming Mar 31, 2023
1c796ca
feat: add customizations to animation speed and direction
svvimming Mar 31, 2023
a940ed3
feat: add animation params as props to warped grid component
svvimming Apr 4, 2023
875a5ff
Merge branch 'stable' into feat-warped-grid
svvimming Apr 4, 2023
52b9169
fix: misnamed import
svvimming Apr 4, 2023
ee5392e
feat: updated warped grid physics
justanothersynth Apr 25, 2023
15e9c2c
Merge branch 'develop' of github.com:data-preservation-programs/filpl…
justanothersynth Apr 25, 2023
f944adc
feat: added warped grid canvas components to all pages with warped grids
svvimming Apr 25, 2023
7477a96
feat: warped grids adjusted in each instance across site
svvimming Apr 27, 2023
0e60187
Merge branch 'develop' of github.com:data-preservation-programs/filpl…
justanothersynth Apr 28, 2023
7053ef8
feat: add warped grid animation to home page
svvimming Apr 28, 2023
5305eb5
feat: minor tweaks to range slider and removed test console statement
justanothersynth May 4, 2023
319c3cb
Merge branch 'feat-warped-grid' of github.com:data-preservation-progr…
justanothersynth May 4, 2023
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
12 changes: 12 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions packages/fe/assets/scss/main.scss
Original file line number Diff line number Diff line change
Expand Up @@ -493,8 +493,8 @@ span.error {
}
}

.warp-image-double {
margin-top: -3px;
.warped-grid-column {
transform: translateY(-3px);
}

.z-index-100 {
Expand Down
18 changes: 18 additions & 0 deletions packages/fe/components/form/fields/range.vue
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,24 @@ $borderWidth: 2px;
}

// /////////////////////////////////////////////////////////////////////// Thumb
@mixin thumb {
&:active {
background-color: $mandysPink;
}
}

:deep(.range) {
&::-webkit-slider-thumb {
@include thumb;
}
&::-moz-range-thumb {
@include thumb;
}
&::-ms-thumb {
@include thumb;
}
}

.thumb {
position: relative;
left: calc(#{math.div($trackHeight, 2)} - #{math.div($thumbWidth, 2)});
Expand Down
20 changes: 6 additions & 14 deletions packages/fe/components/hero-b.vue
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@

<div class="col-4_sm-3_mi-2">
<div class="panel-right">
<div class="warp-image-double" />
<WarpedGridColumn />
</div>
</div>

Expand All @@ -46,14 +46,16 @@ import ButtonX from '@/components/buttons/button-x'
import Chevron from '@/components/icons/chevron'

// import IconQuestionMark from '@/components/icons/question-mark'
import WarpedGridColumn from '@/components/warped-grid-column'

// ====================================================================== Export
export default {
name: 'HeroB',

components: {
ButtonX,
Chevron
Chevron,
WarpedGridColumn
// IconQuestionMark
},

Expand Down Expand Up @@ -192,17 +194,7 @@ export default {
}
}

.warp-image-double {
position: absolute;
top: 0;
left: 0;
width: 45rem;
height: 500rem;
background-image: url('~assets/images/warp-image-double.png');
background-position: top left;
background-size: 45rem;
@include tiny {
width: calc(100% + 100vw * 0.041665 + 2rem);
}
::v-deep .warped-grid-column {
overflow: visible;
}
</style>
18 changes: 9 additions & 9 deletions packages/fe/components/notaries-table.vue
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,13 @@
root-html-tag="tbody"
class="table-body">
<tr
v-for="notary in filteredNotaries"
:key="notary.sp_id"
v-for="(notary, i) in filteredNotaries"
:key="`${notary.sp_id}-${i}`"
class="row row-body">

<td
v-for="cell in columns"
:key="cell.slug"
v-for="(cell, j) in columns"
:key="`${cell.slug}-${j}`"
:class="['cell cell-body', cell.slug]">
<div :class="['cell-inner-wrapper', `cell-${cell.slug}`]">

Expand All @@ -50,14 +50,14 @@
</div>
<div class="github-handles">
<ButtonX
v-for="(handle, index) in notary.github_user"
:key="handle"
v-for="(handle, k) in notary.github_user"
:key="`${handle}-${k}`"
:to="`https://github.com/${handle}`"
:data-tooltip="`https://github.com/${handle}`"
tag="a"
target="_blank"
class="github-handle">
{{ handle }}<template v-if="index !== notary.github_user.length - 1">,</template>
{{ handle }}<template v-if="k !== notary.github_user.length - 1">,</template>
</ButtonX>
</div>
</div>
Expand Down Expand Up @@ -88,8 +88,8 @@
</ButtonX>
<template v-if="notary.email.length > 0">
<ButtonX
v-for="email in notary.email"
:key="email"
v-for="(email, l) in notary.email"
:key="`${email}-${l}`"
:to="`mailto:${email}`"
:data-tooltip="`mailto:${email}`"
tag="a"
Expand Down
1 change: 0 additions & 1 deletion packages/fe/components/page-index/roadmap.vue
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,6 @@ export default {
const entry = roadmap[i]
const date = entry.date
const parsedDate = this.$moment(date)
console.log(parsedDate)
entry.date = {
original: date,
quarter: `Q${parsedDate.format('Q YYYY')}`
Expand Down
106 changes: 106 additions & 0 deletions packages/fe/components/warped-grid-column.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
<template>
<div
ref="column"
class="warped-grid-column">
<WarpedGrid
v-for="(grid, i) in grids"
ref="canvases"
:key="`warped-grid-canvas-${i}`"
:animation-active="activeGrids.includes(i)"
v-bind="params"
:style="{ top: `${i * gridHeight}px` }"
class="warp-animation" />
</div>
</template>

<script>
// ====================================================================== Import
import WarpedGrid from '@/components/warped-grid'

// =================================================================== Functions
const calculateColumnHeight = (instance) => {
const column = instance.$refs.column
const grids = Math.ceil(column.clientHeight / instance.gridHeight)
if (instance.grids !== grids) {
instance.grids = grids
}
const canvases = instance.$refs.canvases
const active = instance.activeGrids
if (Array.isArray(canvases)) {
const len = instance.grids || 0
for (let i = 0; i < len; i++) {
const canvas = canvases[i]
if (canvas) {
const rect = canvas.$el.getBoundingClientRect()
const top = rect.top
const bottom = top + rect.height
if (bottom > 0 && top < window.innerHeight) {
if (!active.includes(i)) {
active.push(i)
instance.activeGrids = active
}
} else {
if (active.includes(i)) {
instance.activeGrids = active.filter(n => n !== i)
}
}
}
}
}
}

// ====================================================================== Export
export default {
name: 'WarpedGridColumn',

components: {
WarpedGrid
},

props: {
params: {
type: Object,
required: false,
default: () => ({})
}
},

data () {
return {
scroll: false,
gridHeight: 1121,
grids: false,
activeGrids: [0]
}
},

mounted () {
this.$nextTick(() => {
calculateColumnHeight(this)
this.scroll = this.$throttle(() => { calculateColumnHeight(this) }, 50)
window.addEventListener('scroll', this.scroll)
})
},

beforeDestroy () {
if (this.scroll) { window.removeEventListener('scroll', this.scroll) }
}
}

</script>

<style lang="scss" scoped>
// ///////////////////////////////////////////////////////////////////// General
.warped-grid-column {
position: relative;
height: calc(100% + 1rem + 3px);
width: 1121px;
overflow: hidden;
}

.warp-animation {
position: absolute;
left: 0;
top: 0;
}
</style>
Loading