fleet/website/assets/js/components/logo-carousel.component.js
Eric c4a411b6d6
Website: create <logo-carousel> component (#17846)
Closes: #17755

Changes:
- Created a new component: `<logo-carousel>`
- Added the logo-carousel component to the /start, /login, and /register
pages.
- Updated the /register and /login pages to match the latest wireframes.
2024-03-28 09:10:24 +09:00

92 lines
4.1 KiB
JavaScript
Vendored

/**
* <logo-carousel>
* -----------------------------------------------------------------------------
* A row of logos that scroll infinitly to the left.
*
* @type {Component}
*
* -----------------------------------------------------------------------------
*/
parasails.registerComponent('logoCarousel', {
// ╔═╗╦═╗╔═╗╔═╗╔═╗
// ╠═╝╠╦╝║ ║╠═╝╚═╗
// ╩ ╩╚═╚═╝╩ ╚═╝
props: [],
// ╦╔╗╔╦╔╦╗╦╔═╗╦ ╔═╗╔╦╗╔═╗╔╦╗╔═╗
// ║║║║║ ║ ║╠═╣║ ╚═╗ ║ ╠═╣ ║ ║╣
// ╩╝╚╝╩ ╩ ╩╩ ╩╩═╝ ╚═╝ ╩ ╩ ╩ ╩ ╚═╝
data: function (){
return {
//…
};
},
// ╦ ╦╔╦╗╔╦╗╦
// ╠═╣ ║ ║║║║
// ╩ ╩ ╩ ╩ ╩╩═╝
template: `
<div purpose="logos" class="mx-auto d-flex flex-row align-items-center">
<div purpose="logo-carousel">
<div purpose="logo-row" class="d-flex flex-row align-items-center">
<img alt="Notion logo" src="/images/[email protected]">
<img alt="Pinterest logo" src="/images/[email protected]">
<img alt="Gusto logo" src="/images/[email protected]">
<img alt="Epic Games logo" style="height: 32px" src="/images/[email protected]">
<img alt="Rivian logo" src="/images/[email protected]">
<img alt="Deloitte logo" src="/images/[email protected]">
<img alt="Flywire logo" src="/images/[email protected]">
<img alt="Snowflake logo" src="/images/[email protected]">
<img alt="Uber logo" src="/images/[email protected]">
<img alt="Atlassian logo" src="/images/[email protected]">
<img alt="Toast logo" src="/images/[email protected]">
<img alt="Fastly logo" src="/images/[email protected]">
<img alt="Hashicorp logo" src="/images/[email protected]">
<img alt="Dropbox logo" src="/images/[email protected]">
<img alt="Reddit logo" src="/images/[email protected]">
</div>
<div purpose="logo-row" class="d-flex flex-row align-items-center">
<img alt="Notion logo" src="/images/[email protected]">
<img alt="Pinterest logo" src="/images/[email protected]">
<img alt="Gusto logo" src="/images/[email protected]">
<img alt="Epic Games logo" style="height: 32px" src="/images/[email protected]">
<img alt="Rivian logo" src="/images/[email protected]">
<img alt="Deloitte logo" src="/images/[email protected]">
<img alt="Flywire logo" src="/images/[email protected]">
<img alt="Snowflake logo" src="/images/[email protected]">
<img alt="Uber logo" src="/images/[email protected]">
<img alt="Atlassian logo" src="/images/[email protected]">
<img alt="Toast logo" src="/images/[email protected]">
<img alt="Fastly logo" src="/images/[email protected]">
<img alt="Hashicorp logo" src="/images/[email protected]">
<img alt="Dropbox logo" src="/images/[email protected]">
<img alt="Reddit logo" src="/images/[email protected]">
</div>
<div purpose="fade-left"></div>
<div purpose="fade-right"></div>
</div>
</div>
`,
// ╦ ╦╔═╗╔═╗╔═╗╦ ╦╔═╗╦ ╔═╗
// ║ ║╠╣ ║╣ ║ ╚╦╝║ ║ ║╣
// ╩═╝╩╚ ╚═╝╚═╝ ╩ ╚═╝╩═╝╚═╝
beforeMount: function() {
//…
},
mounted: async function(){
//…
},
beforeDestroy: function() {
//…
},
// ╦╔╗╔╔╦╗╔═╗╦═╗╔═╗╔═╗╔╦╗╦╔═╗╔╗╔╔═╗
// ║║║║ ║ ║╣ ╠╦╝╠═╣║ ║ ║║ ║║║║╚═╗
// ╩╝╚╝ ╩ ╚═╝╩╚═╩ ╩╚═╝ ╩ ╩╚═╝╝╚╝╚═╝
methods: {
//…
}
});