[merge] dev and cfpMain
3
.browserslistrc
Normal file
@ -0,0 +1,3 @@
|
||||
> 1%
|
||||
last 2 versions
|
||||
not dead
|
27
.github/workflows/release.yml
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
name: Release
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: master
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@v2.1.2
|
||||
with:
|
||||
node-version: '12.x'
|
||||
|
||||
- run: npm ci
|
||||
- run: npm run build
|
||||
|
||||
- name: Deploy
|
||||
uses: peaceiris/actions-gh-pages@v3
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
publish_dir: ./dist
|
23
.gitignore
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
.DS_Store
|
||||
node_modules
|
||||
/dist
|
||||
|
||||
|
||||
# local env files
|
||||
.env.local
|
||||
.env.*.local
|
||||
|
||||
# Log files
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
pnpm-debug.log*
|
||||
|
||||
# Editor directories and files
|
||||
.idea
|
||||
.vscode
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.sw?
|
24
README.md
Normal file
@ -0,0 +1,24 @@
|
||||
# sitcon-2021
|
||||
|
||||
## Project setup
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
### Compiles and hot-reloads for development
|
||||
```
|
||||
npm run serve
|
||||
```
|
||||
|
||||
### Compiles and minifies for production
|
||||
```
|
||||
npm run build
|
||||
```
|
||||
|
||||
### Lints and fixes files
|
||||
```
|
||||
npm run lint
|
||||
```
|
||||
|
||||
### Customize configuration
|
||||
See [Configuration Reference](https://cli.vuejs.org/config/).
|
5
babel.config.js
Normal file
@ -0,0 +1,5 @@
|
||||
module.exports = {
|
||||
presets: [
|
||||
'@vue/cli-plugin-babel/preset'
|
||||
]
|
||||
}
|
12585
package-lock.json
generated
Normal file
35
package.json
Normal file
@ -0,0 +1,35 @@
|
||||
{
|
||||
"name": "sitcon-2021",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"serve": "vue-cli-service serve",
|
||||
"build": "vue-cli-service build && cd dist && cp index.html news.html && cp index.html cfp.html",
|
||||
"lint": "vue-cli-service lint"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fortawesome/fontawesome-svg-core": "^1.2.34",
|
||||
"@fortawesome/free-brands-svg-icons": "^5.15.2",
|
||||
"@fortawesome/vue-fontawesome": "^2.0.2",
|
||||
"axios": "^0.21.1",
|
||||
"core-js": "^3.6.5",
|
||||
"markdown": "^0.5.0",
|
||||
"vue": "^2.6.11",
|
||||
"vue-class": "^2.0.1",
|
||||
"vue-class-component": "^7.2.3",
|
||||
"vue-property-decorator": "^9.1.2",
|
||||
"vue-router": "^3.2.0",
|
||||
"vuex": "^3.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vue/cli-plugin-babel": "~4.5.0",
|
||||
"@vue/cli-plugin-router": "~4.5.0",
|
||||
"@vue/cli-plugin-typescript": "~4.5.0",
|
||||
"@vue/cli-plugin-vuex": "~4.5.0",
|
||||
"@vue/cli-service": "~4.5.0",
|
||||
"node-sass": "^4.12.0",
|
||||
"sass-loader": "^8.0.2",
|
||||
"typescript": "~3.9.3",
|
||||
"vue-template-compiler": "^2.6.11"
|
||||
}
|
||||
}
|
BIN
public/OG-image.png
Normal file
After Width: | Height: | Size: 108 KiB |
27
public/index.html
Normal file
@ -0,0 +1,27 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||
<meta property="og:title" content="SITCON 2021 學生計算機年會 | Students' Information Technology Conference" />
|
||||
<meta property="og:description" content="算盤的後裔" />
|
||||
<meta property="og:url" content="https://sitcon.org/2021/" />
|
||||
<meta property="og:image" content="<%= BASE_URL %>OG-image.png" />
|
||||
<meta property="og:type" content="website" type="image/x-icon">
|
||||
<meta property="og:site_name" content="SITCON 2021 學生計算機年會 | Students' Information Technology Conference" />
|
||||
<link rel="icon" href="<%= BASE_URL %>sitcon-logo.png">
|
||||
<title>SITCON 學生計算機年會 2021</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<noscript>
|
||||
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled.
|
||||
Please enable it to continue.</strong>
|
||||
</noscript>
|
||||
<div id="app"></div>
|
||||
<!-- built files will be auto injected -->
|
||||
</body>
|
||||
|
||||
</html>
|
BIN
public/sitcon-logo.png
Normal file
After Width: | Height: | Size: 15 KiB |
22
src/App.vue
Normal file
@ -0,0 +1,22 @@
|
||||
<template>
|
||||
<div id="app">
|
||||
<router-view/>
|
||||
<Footer/>
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts">
|
||||
import { Component, Vue } from 'vue-property-decorator';
|
||||
|
||||
// components
|
||||
import Footer from '@/components/Footer.vue';
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
Footer
|
||||
}
|
||||
})
|
||||
export default class App extends Vue {}
|
||||
</script>
|
||||
<style lang="scss">
|
||||
@import "@/assets/scss/main.scss";
|
||||
</style>
|
BIN
src/assets/image/2018.png
Normal file
After Width: | Height: | Size: 198 KiB |
BIN
src/assets/image/2019.png
Normal file
After Width: | Height: | Size: 323 KiB |
BIN
src/assets/image/2020.png
Normal file
After Width: | Height: | Size: 148 KiB |
1
src/assets/image/CFPBackground.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="2010" height="2900" viewBox="0 0 2010 2900"><defs><style>.a{opacity:0.6;}.b{fill:#9ccaef;}.c{fill:#9cc3ef;}.d{fill:#fff;}</style></defs><g class="a" transform="translate(89)"><path class="b" d="M0,0H120L960,540,0,120Z"/><path class="b" d="M240,0H360L960,540h0Z"/><path class="b" d="M480,0H600L960,540h0Z"/><path class="b" d="M720,0H840L960,540h0Z"/><path class="b" d="M960,0h120L960,540h0Z"/><path class="b" d="M1200,0h120L960,540h0Z"/><path class="c" d="M1440,0h120L960,540h0Z"/><path class="c" d="M1680,0h120L960,540h0Z"/><path class="b" d="M960,540l960-420V240L960,540Z"/><path class="b" d="M0,240,960,540h0L0,360Z"/><path class="b" d="M960,540l960-180V480L960,540Z"/><path class="b" d="M0,480l960,60h0L0,600Z"/><path class="b" d="M960,540l960,60V720L960,540Z"/><path class="b" d="M0,720,960,540h0L0,840Z"/><path class="b" d="M960,540l960,300V960L960,540Z"/><path class="b" d="M0,960,960,540,0,1157V960Z"/><path class="b" d="M960,540h0L0,1404V1260Z"/><path class="b" d="M960,540h0L0,1981V1620Z"/><path class="b" d="M960,540h0L436,2900H-89Z"/><path class="b" d="M960,540h0l524,2360H960Z"/><path class="b" d="M960,540h0l960,1440v719Z"/><path class="b" d="M960,540h0l960,864v215Z"/><path class="b" d="M960,540h0l960,617,1,103Z"/><path class="d" d="M120,0H240L960,540h0Z"/><path class="d" d="M360,0H480L960,540h0Z"/><path class="d" d="M600,0H720L960,540h0Z"/><path class="d" d="M840,0H960V540h0Z"/><path class="d" d="M1080,0h120L960,540h0Z"/><path class="d" d="M1320,0h120L960,540h0Z"/><path class="d" d="M1560,0h120L960,540h0Z"/><path class="d" d="M1800,0h120V120L960,540Z"/><path class="d" d="M0,120,960,540h0L0,240Z"/><path class="d" d="M960,540l960-300V360L960,540Z"/><path class="d" d="M0,360,960,540h0L0,480Z"/><path class="d" d="M960,540l960-60V600L960,540Z"/><path class="d" d="M0,600l960-60h0L0,720Z"/><path class="d" d="M960,540l960,180V840L960,540Z"/><path class="d" d="M0,840,960,540h0L0,960Z"/><path class="d" d="M960,540h0L240,1080H120Z"/><path class="d" d="M960,540h0L480,1080H360Z"/><path class="d" d="M960,540h0L720,1080H600Z"/><path class="d" d="M960,540h0v540H840Z"/><path class="d" d="M960,540h0l240,540H1080Z"/><path class="d" d="M960,540h0l480,540H1320Z"/><path class="d" d="M960,540h0l720,540H1560Z"/><path class="d" d="M960,540l960,420v120H1800Z"/><circle class="d" cx="324.5" cy="324.5" r="324.5" transform="translate(637 216)"/></g></svg>
|
After Width: | Height: | Size: 2.4 KiB |
1
src/assets/image/Path 740.svg
Normal file
After Width: | Height: | Size: 21 KiB |
1
src/assets/image/Path 762.svg
Normal file
After Width: | Height: | Size: 14 KiB |
3
src/assets/image/burnfont/2021.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="341.24" height="34.44" viewBox="0 0 341.24 34.44">
|
||||
<path fill="#226bb4" d="M115.46 41.68l4.84-4.8V23.32l-4.04-3.52h-11.04v-2.16h14.2V8.28H97.78l-4.84 4.8V26l4.04 3.52h10.2v2.16H92.9v10zm12.08-33.52v33.56h13.92V8.16zm47.64.2h-26.92v11.56h6.84V41.6h13.24V19.92h6.84zm20.24 21.28V20.6h14.36V8.32h-22.4l-5.52 5.6V36.2l5.52 5.52h22.8V29.64zM221.94 8.2l-4.92 5.32v22.96l4.92 5.28h20.68l4.92-5.28V13.56l-4.92-5.36zm7.68 23.36V18.64h5.32v12.92zm43.32-23.04V19.8h-.88l-6.68-11.28h-10.6v33.04h11.84V30.24h.84l6.88 11.36h10.24V8.52zm60.92-1.04h-23.44v12.04h12.76v1.44l-13.12 13.16v7.68h27.28V31.12h-8.52v-.48l8.04-7.36V11.24zm11.28 29.96l4.64 4.48h19.28l4.68-4.48V12.36l-4.68-4.76h-19.28l-4.64 4.76zM357.1 18.8h4.68v12.16h-4.68zm48.24-11.32H381.9v12.04h12.76v1.44l-13.12 13.16v7.68h27.28V31.12h-8.52v-.48l8.04-7.36V11.24zm16.8.28l-5.84 5.44v7.96h3.28v20.48h14.56V7.76z" transform="translate(-92.9 -7.48)"/>
|
||||
</svg>
|
After Width: | Height: | Size: 954 B |
3
src/assets/image/burnfont/cfp.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="368.34" height="56.46" viewBox="0 0 368.34 56.46">
|
||||
<path fill="#226bb4" d="M91.6 10.62H80.5V8.58H65.86v2.04h-9.42V22.5H91.6zM55.18 38.1v2.88l-1.86-2.22V36.6h2.16V23.46h-2.16v-2.88l1.74-1.2V9.72H36.7v11.64H40v2.1h-3.48V36.6h3.06l-3.54 5.64v17.34h2.28L40 56.52v8.22h13.32V53.4h1.86v11.34H67.6V48.18h11.76v8.94l-1.32 1.14v-8.64h-9.12v12.6h5.82v2.52h17.4V38.1zm35.22-1.38V23.94H57.1v12.78zm-20.7-6.96h7.56v1.8H69.7zm4.86 27.3h-1.92v-2.1h1.92zm83.22-18.6h-7.92v-9.3h7.38V13.38h-7.38v-4.2h-13.5v4.2h-2.4v-3h-8.1l-2.94 5.76v13.02h8.7v9.3h-8.76v16.02h8.76v10.44h18.24V54.48h7.92zM101.8 23.1v20.58h3.3v21.06h16.02V9.6h-12.24zm97.56-3.72h-1.38V8.88h-8.1v10.5h-1.44V9.9h-4.92v17.76h20.64V9.9h-4.8zm22.5 26.52l1.8-3.36V11.4h-7.08V9.06h-7.98l-3.18 4.14v13.5h8.46v6l-2.4-4.26h-6.06V41.7l1.74 3.06-2.22 3.12v17.1h6.84l2.58-4.38 2.34 4.38h7.14V49.8zm-39.72-25.98V9.66h-8.82l-5.7 4.02v15.54h2.7zm-14.52 13.14V46.8h1.74v18.24h12.84V23.7h-2.58zm15.9 4.26h20.58V29.1h-20.58zm.18 9.06h4.14v1.56h-3.96v7.14h3.96v1.62h-4.2v8.16h19.98V56.7h-3.42v-1.62h3.36v-7.14h-3.36v-2.1l3.6-.84v-6.24h-20.1zm104.04-33.42l-.9-3.54h-13.26v3.54h-1.86V8.82h-20.16v4.14h-17.04V26.4h17.94v29.1l-1.62 1.8V43.62H238.9l-4.38 5.4v12.84h13.92v3.06h23.28V26.4h18.36V12.96zm-36.9 29.1V27.84h-15.96v8.88l4.08 5.34zm38.34-14.22h-15.9v14.22h11.82l4.08-5.34zm-15.9 15.78v18.24h16.2V49.02l-4.32-5.4zm82.14-30.42h-16.56V9.06H316.9v4.14h-16.26v42.96h16.26v8.76h21.96v-8.76h16.56zM315.7 27.72h3.6V42.3h-3.6zm24.36 14.58h-3.6V27.72h3.6zm44.22-31.32v34.74h14.52l5.58-7.44v-27.3zm.36 38.28v14.52h18.24V49.26z" transform="translate(-36.04 -8.58)"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
3
src/assets/image/burnfont/date.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="207.322" height="41.63" viewBox="0 0 207.322 41.63">
|
||||
<path fill="#226bb4" d="M2.3 43.056l5.336 5.152h22.172l5.382-5.152V14.214L29.808 8.74H7.636L2.3 14.214zM16.054 21.62h5.382V35.6h-5.382zM48.9 48.07h28.15l4.508-4.324v-16.7L77.05 23H61.962v-2.622H80.73V8.648H48.99v24.564h17.986v2.806H48.9zm46.826-.97v2.3h9.384l12.6-39.33v-2.3h-9.38zM159.16 8.6H132.2v13.848h14.674V24.1L131.79 39.238v8.832h31.372V35.788h-9.8v-.552l9.246-8.464V12.926zm45.678.184h-23.414l-4.784 4.786v16.7l3.542 3.266h15.778V36.2h-18.4v11.96h26.082l5.98-5.612V13.57zm-15.18 15.136v-3.68h6.3v3.68z" transform="translate(-2.3 -7.774)"/>
|
||||
</svg>
|
After Width: | Height: | Size: 660 B |
3
src/assets/image/burnfont/location.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="227.174" height="97.912" viewBox="0 0 227.174 97.912">
|
||||
<path fill="#226bb4" d="M44.022 10.12h-12.7V6.946H14.49v3.174H2.024v32.936H14.49v6.716h16.836v-6.716h12.7zM13.57 21.252h2.76V32.43h-2.76zM32.246 32.43h-2.76V21.252h2.76zm58.282-4.186h-2.392v-18.17H76.774V6.716H61.318v3.358H50v18.17h-2.482v11.224h5.152l-3.772 5.2v4.968h14.95l4.14-9.062h2.576l4.186 9.062h14.9v-4.97l-3.772-5.2h4.646zm-29.486-7.176h2.346v7.176h-2.346zM77 28.244h-2.3v-7.176H77zm59.34-3.312h-1.472v-6.808h1.242V7.544h-25.25v10.58h1.656v6.808h-1.656v10.9h1.656l-1.61 9.246v4.692h10.212l1.334-13.938h1.886v13.894h10.534V35.834h1.472zM94.3 17.618h3.542v.23l-4.554 7.866V40.2h1.472v9.338h15.04V23.276h-3.174v-.184l3.174-5.474V8.05H94.3zm28.152 7.314v-6.808h1.886v6.808zm-19.642 16.56h-1.334V31.97h1.334zm75.118-2.53V30.5h-15.18v-1.658h-4.876l2.346-2.346v-7.452h1.38V26.5l2.714 2.714h17.02v-6.3h-10.58v-3.87h1.38v2.622h10.442V8.6H168.5V6.578h-15.41V8.6h-13.434v13.066h10.074v-2.622h1.38v3.864h-10.3v6.3h7.866V30.5h-7.916v9.29h4.554l-5.382 6.44v3.542h15.64l5.152-9.982h3.91v9.982h18.078v-10.81zm26.358-11.638H226.6v-4.6h1.61V8.51h-7.59V6.578h-11.182V8.51h-6.9v14.306h1.748zm-18.216 22.4h11.27V45.08h4.094V28.75l-1.472-2.3 1.472-3.22V7.728H186.07zm8.556-33.4v7.682h-1.288V16.33zm24.518 1.242V19h-8.05v-1.428zM224.3 38.5l-.828 1.84h-1.012v-3.08h5.75v-8.648h-25.626v8.648h2.208l-2.622 8.05v4.462h9.292l1.38-12.512h1.058v12.512h14.444V38.5zm-29.67-.644h-1.288v-7.22h1.288zM1.17 104.31H9.3l5.19-9.57h1.02l5.34 9.57h8.04v-6.18l-8.7-11.37V76.74H9.51v10.02L1.17 98.13zm49.14-26.28v-1.74H39.63v1.74h-8.49v8.49h27.69v-8.49zm7.53 13.92v-4.68h-9.66l-3.15 3.6-3.18-3.6h-9.66v4.68l3.36 3.18-4.26 3.39v5.88h9.03l4.71-4.59 4.68 4.59h9.03v-5.88l-4.26-3.39zm27.24 3.87v-7.26h3.21v-8.07h-3.21v-4.02h-9v4.02h-3.12v8.07h3.12v7.26h-3.66v8.34h16.47v-8.34zm-14.97-19.2H63v1.53h-1.71v6.72h3.24v.21l-3.48 3.3v10.74h1.32v5.34h8.1v-5.34h1.14v-9.36l-1.14-.96 1.59-1.47v-9.18h-1.95zm49.17 3.18l-8.46-3.54H99.21l-8.43 3.54v6.87h.78v7.17h26.88v-7.17h.84zm-13.35 1.65l1.65.63h-5.13l1.65-.63zm-9.6 3.51l2.73-1.14v.51h11.85v-.54l2.79 1.17zm1.89 3.09h4.29v2.7h-.6v-2.22h-3.09v1.56l.6.66h-1.2zm13.47 2.7h-1.2l.63-.66v-1.56H108v2.22h-.57v-2.7h4.26zm-19.62 13.62h25.89V94.5H92.07zm17.76-6.87v.66h-9.54v-.66zm-9.54 3.75v-.63h9.54v.63zm31.8-18.45l1.8-1.02v-4.92h-12.36v6.33h2.76v1.17h-3v6.63h2.67l-2.88 2.91v8.34h1.8l1.41-1.74v3.87h7.8v-4.05h1.77v-5.88l-1.77-2.07v-1.38h1.83v-6.63h-1.83zm17.01 9.72h-.81V76.86h-7.44v17.46l-.63.21v-6.54l-5.01-2.04h-.6v8.43l3 1.11-3.06 1.11v6.93h1.83l3.06-1.02v1.98h8.85v-4.92l.81-.27zm-8.88-5.49v-7.62l-4.65-1.98h-.96v7.53l4.98 2.07zm24.81-6.18l1.26.72h2.19v-1.98l-.87-.48.87-.45v-1.95h-2.19l-1.26.69-1.26-.69h-2.19v1.95l.87.45-.87.48v1.98h2.19zm12.21 13.05h1.83v-6.27h-.66V76.86h-9.45v4.44h2.82v.6h-2.73v2.31h2.73v.57h-2.73v2.25h2.73v.6h-13.47v-.6h2.76v-2.25h-2.76v-.57h2.76V81.9h-2.76v-.6h.99l1.77-.48v-3.96h-9.36v10.77h-.66v6.33h1.32v2.1h12.03v.15l-1.29.48H151.2v4.71h9.45v.12l-2.28 1.29v1.59h12.18v-3h8.31v-4.71h-4.32l2.7-1.14zm-12.21-7.5l1.26.72h2.19v-1.98l-.9-.48.9-.51v-2.07h-2.19l-1.26.69-1.26-.69h-2.19v2.07l.9.51-.9.48v1.98h2.19zm-7.29 6.18v-.63h14.79v.63zm50.43.99v-6.96h.9v-9.06h-4.44v-1.26h-6.99v1.26h-4.41v7.62h-4.02v-1.32l.93.72h2.46v-5.61l-3.78-2.46h-4.14l-3.78 2.46v5.61h2.52l.96-.75v1.35h-3.09v19.29h6.12l1.11-1.44 1.23 1.41h3.54v-6.72h-5.31v1.11h-.99v-1.83h6.3V86.61h.75v17.79h14.43v-9.99h-8.52v-.84zM187.29 82.5l.96.66h-3.03l.9-.66zm15.69 1.05v.84h-4.02v-.84zm-.69 6.18h-2.34v-1.02h2.34zm-16.05-.81h2.52v.78h-2.52zm0 4.02v-.84h2.52v.84zm16.35 5.34v1.08h-2.64v-1.08z" transform="translate(-1.17 -6.578)"/>
|
||||
</svg>
|
After Width: | Height: | Size: 3.6 KiB |
3
src/assets/image/burnfont/news.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="188.324" height="43.194" viewBox="0 0 188.324 43.194">
|
||||
<path fill="#226bb4" d="M-52.992-29.808v-8.924h-24.15v9.706H-78.2v-6.3h-1.748v-3.4h-11.546v3.4h-1.886v11.04h1.886v6.854l-2.208.368v11.636h2.208v2.944L-93.38-.276V3.68h13.432V-7.406l1.656-.322v-11.684h-1.656v-4.876h1.1v3.68h10.58l2.346-2.024v-6.21h1.334v6.21l2.484 2.024h11.224v-9.2zm.966 23.414V-19.6H-77.05v7.682h13.75v1.656l-1.38 1.15-2.53-1.794H-77v5.474l1.7 1.38-3.5 2.392v5.432h10.95l3.036-2.438 3.4 2.438h9.89v-5.8l-2.944-2.208zM-2.99-37.858h-8.51v-1.564h-11.224v1.564h-7.222v9.108H-2.99zM-30.912-16.79v2.208l-1.426-1.7v-1.658h1.656v-10.074h-1.656v-2.208l1.334-.92v-7.406H-45.08v8.924h2.53v1.61h-2.668v10.074h2.346l-2.714 4.324V-.322h1.748l1.288-2.346v6.3h10.212V-5.06h1.426v8.694h9.522v-12.7h9.016v6.854l-1.012.874v-6.62h-6.992V1.7h4.462v1.934h13.34V-16.79zm27-1.058v-9.8H-29.44v9.8zm-15.87-5.336h5.8v1.38h-5.8zm3.726 20.93h-1.472v-1.61h1.472zm55.66-24.61h2.438l3.036-2.254v-8.924H30.452v-1.288h-9.66l-4.784 3.358v9.108h2.76l3.588-2.392v1.334l-6.3 4.048v3.588h11.36l2.484-2.438h.874l2.53 2.438h12.052v-4zM14.95-38.594H3.174v8.648H14.95zm9.062 8.234l1.426-.966h9.982v.966zm-9.062 1.472H7.084l-3.91 2.76v5.842H14.95zM44.482-1.242v-17.986H4v17.986h2.486l-3.312 2.53v2.438h16.238l2.53-2.9h4.508l2.53 2.9h16.238V1.288l-3.312-2.53zM31.832-13.57v1.058H16.146v-1.058zm0 5.106H16.146v-1.012h15.686zm-15.686 2.9h15.686v1.058H16.146zm48.3-33.488H54.28v1.84h-2.944v10.35H67.39v-10.35h-2.944zm28.29 28.612v-28.108H68.448V-26.5h1.472v5.106h-1.748v10.718h1.748v14.4h9.936v-14.4h2.116v9.89l3.45 4.462h9.2v-14.118zm-12.88-10.95v-5.11h2.116v5.106zm-12.7-4.416H51.52v6.67h15.64zM51.52-11.684h15.64v-6.394H51.52zm-.138 15.272h15.87v-14.122h-15.87zm6.67-7.82H60.4v1.7h-2.348z" transform="translate(93.702 39.422)"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.8 KiB |
3
src/assets/image/burnfont/sitcon.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="244.23" height="28.26" viewBox="0 0 244.23 28.26">
|
||||
<path fill="#226bb4" d="M167.03 8.85l1.26.72h2.19V7.59l-.87-.48.87-.45V4.71h-2.19l-1.26.69-1.26-.69h-2.19v1.95l.87.45-.87.48v1.98h2.19zm12.21 13.05h1.83v-6.27h-.66V4.86h-9.45V9.3h2.82v.6h-2.73v2.31h2.73v.57h-2.73v2.25h2.73v.6h-13.47v-.6h2.76v-2.25h-2.76v-.57h2.76V9.9h-2.76v-.6h.99l1.77-.48V4.86h-9.36v10.77h-.66v6.33h1.32v2.1h12.03v.15l-1.29.48H153.2v4.71h9.45v.12l-2.28 1.29v1.59h12.18v-3h8.31v-4.71h-4.32l2.7-1.14zm-12.21-7.5l1.26.72h2.19v-1.98l-.9-.48.9-.51v-2.07h-2.19l-1.26.69-1.26-.69h-2.19v2.07l.9.51-.9.48v1.98h2.19zm-7.29 6.18v-.63h14.79v.63zm49.02 4.29v-2.22h7.53v-6.51h-7.53v-2.01h7.95V6.87h-7.95V4.29h-9.75v2.58h-1.65V5.22h-5.61l-2.55 3.45v5.46h8.79v2.01h-8.16v6.51h8.16v2.22h-8.7v7.32h27.6v-7.32zM235.4 4.53h-7.77v1.2h-2.4v6.75h12.75V5.73h-2.58zm17.79 7.2h-2.76V4.56h-9.15v7.17h-2.58v9.18h2.58v11.55h9.15V20.91h2.76zm-15.42 1.44h-12.36v4.35h12.36zm-12.36 9.21h12.36v-4.17h-12.36zm-.12 9.96h12.66v-9.21h-12.66zm5.16-5.1h2.25v1.11h-2.25zm36.3-16.26l1.17 1.53h6.18v-1.26l-1.38-1.41h1.68v-4.5h-5.04v-.75h-5.91l-2.37 3.57v4.35h4.71zm14.22-.03l1.2 1.56h6.39v-1.29l-1.35-1.38h1.65v-4.5h-5.34v-.75h-6.15L275 8.16v4.35h4.95zm8.07 14.28h-3.21v-.72h2.61V13.17h-26.76v11.34h3.09v.72h-3.72v4.89h2.67l-.51 1.08v1.17h9.33l.66-2.25h3.6v2.22h9.03v-2.22h3.21zm-8.91-8.94v.63h-10.14v-.63zm0 2.97h-10.14v-.69h10.14zm-10.14 2.34v-.63h10.14v.63zm3.78 3.63v-.72h3.03v.72zm49.98 2.76l.99-1.29v-2.94h-3.9l-.48.57-.78-1.23h5.16v-5.46h-.69l-.15-.66h.63v-3.36h-1.26v-.15l1.26-1.77V9.03h-1.26v-.15l1.26-1.77V4.95h-3.6l-1.8 2.55V4.47h-5.82v13.17h-6.51v8.73l-1.02 2.37v3.66h4.71l.69-1.56.75 1.05h1.23v-5.61l-.69-1.23v-1.44h.81v1.14l1.8 2.79-1.35 1.86v2.97h4.2l.96-1.23.99 1.38h5.1v-2.73zm-17.7-2.22v-8.88l-.96-1.32v-1.11h1.05V6.99h-1.05V4.65h-6.15v2.34h-1.71v7.47h1.59l-1.8 3.51v11.52h1.23l.69-1.56v4.44h6.15v-6.6zm6.66-12.15h-1.26v-.15l1.26-1.77V9.03h-1.26v-.15l1.26-1.77V4.95h-4.02l-1.92 2.79v3.84h1.08v.09l-1.08 1.53v3.78h5.94zm7.32-2.04v.09l-.9 1.26v-1.35zm-.9 5.4h1.05v.66h-1.05zm41.76 5.58h-6.96v-1.59h6.15v-6.51h-6.15v-1.35h6.54V5.94H343.7V4.68h-7.02l-2.91 3.87v4.56h10.35v1.35h-9.42v8.1h-1.59v7.11h11.01v2.79h9.81v-2.79h6.96zm-18.75 0v-1.59h1.98v1.59zM397.28 7.8l-8.46-3.54h-11.61l-8.43 3.54v6.87h.78v7.17h26.88v-7.17h.84zm-13.35 1.65l1.65.63h-5.13l1.65-.63zm-9.6 3.51l2.73-1.14v.51h11.85v-.54l2.79 1.17zm1.89 3.09h4.29v2.7h-.6v-2.22h-3.09v1.56l.6.66h-1.2zm13.47 2.7h-1.2l.63-.66v-1.56H386v2.22h-.57v-2.7h4.26zm-19.62 13.62h25.89V22.5h-25.89zm17.76-6.87v.66h-9.54v-.66zm-9.54 3.75v-.63h9.54v.63z" transform="translate(-153.05 -4.26)"/>
|
||||
</svg>
|
After Width: | Height: | Size: 2.6 KiB |
3
src/assets/image/burnfont/topic.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="515.34" height="84.51" viewBox="0 0 515.34 84.51">
|
||||
<path fill="#226bb4" d="M34.25 32.94l3.51 4.59H56.3v-3.78l-4.14-4.23h5.04v-13.5H42.08v-2.25H24.35l-7.11 10.71v13.05h14.13zm42.66-.09l3.6 4.68h19.17v-3.87l-4.05-4.14h4.95v-13.5H84.56v-2.25H66.11L59 24.48v13.05h14.85zm24.21 42.84h-9.63v-2.16h7.83V39.51H19.04v34.02h9.27v2.16H17.15v14.67h8.01l-1.53 3.24v3.51h27.99l1.98-6.75h10.8v6.66h27.09v-6.66h9.63zM74.39 48.87v1.89H43.97v-1.89zm0 8.91H43.97v-2.07h30.42zM43.97 64.8v-1.89h30.42v1.89zm11.34 10.89v-2.16h9.09v2.16zm72-12.24h15.39V58.5l2.61 2.7h4.32v2.25h17.01V16.47h-12.33v-3.06h-20.07l-6.93 7.65v16.2h-2.16v16.29h2.16zm59.85-31.05v-3.78h1.98v3.78l2.52 3.33h16.74V20.97h-3.42v-7.2h-33.75v6.57h-2.7v15.39h15.84zm-37.53-4.23v3.6l-1.8-2.07h-5.13v-1.53zm0 12.06h-6.93v-4.05l2.34 2.43h4.59zm40.5 8.37l-2.52 1.44-2.43-1.35h-16.29v4.95l2.88 1.71-3.24 1.8v6.21h16.2l3.33-2.79 3.69 2.79h17.1v-6.75l-4.23-2.43 3.06-2.07V37.26h-39.24v9.99h21.69zm-42.3 3.51h-5.13v-1.53h6.93v3.15zm59.04 27.99V65.25H127.4V80.1h-2.34v17.19h84.06V80.1zm-54.36-2.25v5.67h-3.06v-5.67zm16.02 5.67h-3.15v-5.67h3.15zm16.2 0h-3.15v-5.67h3.15zm76.77-69.93h-20.25l-7.83 10.53v72.63h39.69V21.24H261.5zm40.23 4.32v-4.32h-19.26l-6.57 9v19.44h16.92v34.11l-13.32 9v11.97h36.9v-79.2zm-45.72 24.84v9.72h-4.77v-9.72zm34.11 33.12V45h-13.86v24.75l4.68 6.12zm-38.88 2.79V68.58h4.77v10.08zm169.11-.9l3.51-3.96V56.61h-35.01v-1.89h35.55V28.26h-7.74l-11.07 10.26h-2.88l18.36-16.92v-6.21h-17.73l-14.58 13.5h-2.88l10.98-10.17V14.4h-20.43l-8.55 7.92v15.3h6.03l-6.03 5.49v11.61h4.23l-4.23 4.32v23.31h3.06l4.41-4.14 1.8 1.71-9.36 8.73v8.55H392l5.49-6.12 6.48 6.12h20.97V81.81zm-54.63-47.34V14.76h-15.93l-9.36 7.38v26.01h3.69zm-25.29 23.4V74.7h3.24v22.86h22.14V38.79h-7.02zm53.19 16.47h9.09v.36l-4.23 4.23-4.86-4.32zm112.23-53.55v-3.69h-29.7v3.69h-26.82v14.85h8.91l-8.19 4.5v15.75h11.79l5.85-5.31v5.31h30.51l3.96-2.97 3.69 2.97h25.74v-8.19l-5.67-3.6 3.96-3.06v-3.51H497.3l-4.32 3.42v-5.31h39.51V16.74zm-55.89 80.37h23.13V69.3h5.76v1.98h-3.6v6.48h14.67V69.3h2.16v8.46h15.21v-6.48h-3.6V69.3h5.76v15.3l-1.98 1.26v-6.03h-32.22v14.31h25.56v2.97h31.05V53.82h-81.9zm44.73-8.91h-6.66v-2.25h6.66z" transform="translate(-17.15 -13.05)"/>
|
||||
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
BIN
src/assets/image/paper/paper.png
Normal file
After Width: | Height: | Size: 237 KiB |
BIN
src/assets/image/paper/paper@2x.png
Normal file
After Width: | Height: | Size: 784 KiB |
1
src/assets/image/sitcon-icon.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="295.744" height="428.391" viewBox="0 0 295.744 428.391"><defs><style>.a{fill:#9ccaef;}.b{clip-path:url(#a);}</style><clipPath id="a"><rect class="a" width="295.744" height="428.391"/></clipPath></defs><g class="b"><path class="a" d="M63.245,13.293C88.182-5.768,117.8,1.27,117.8,1.27s-4.948,35.411-29.879,54.479S27.52,70.3,27.52,70.3A306.526,306.526,0,0,0,42.954,43.412c4.524-8.882,11.1-23.081,20.29-30.119" transform="translate(141.638 0.002)"/><path class="a" d="M44.93,12.055c-11.648-8.9-25.478-5.618-25.478-5.618s2.311,16.541,13.953,25.441,28.214,6.8,28.214,6.8-3.6-5.464-7.216-12.558c-2.108-4.155-5.182-10.788-9.472-14.07" transform="translate(100.114 30.087)"/><path class="a" d="M33.481,64.818c3.411,0,6.811.148,10.21.375C40.654,47.072,41.256,28.2,50.562,12c-16.3,13.123-24.224,33.217-28.336,53.274,3.743-.27,7.5-.455,11.255-.455" transform="translate(114.391 61.756)"/><path class="a" d="M147.872,21.579A147.875,147.875,0,1,0,295.75,169.451,147.875,147.875,0,0,0,147.872,21.579m60.422,208.294-60.422-41.583L87.456,229.873l41.577-60.422L87.456,109.035l60.416,41.583,60.422-41.583-41.589,60.416Z" transform="translate(0 111.061)"/></g></svg>
|
After Width: | Height: | Size: 1.2 KiB |
BIN
src/assets/images/cfp/2018.png
Normal file
After Width: | Height: | Size: 198 KiB |
BIN
src/assets/images/cfp/2019.png
Normal file
After Width: | Height: | Size: 323 KiB |
BIN
src/assets/images/cfp/2020.png
Normal file
After Width: | Height: | Size: 148 KiB |
1
src/assets/images/cfp/Background.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="2010" height="2900" viewBox="0 0 2010 2900"><defs><style>.a{opacity:0.6;}.b{fill:#9ccaef;}.c{fill:#9cc3ef;}.d{fill:#fff;}</style></defs><g class="a" transform="translate(89)"><path class="b" d="M0,0H120L960,540,0,120Z"/><path class="b" d="M240,0H360L960,540h0Z"/><path class="b" d="M480,0H600L960,540h0Z"/><path class="b" d="M720,0H840L960,540h0Z"/><path class="b" d="M960,0h120L960,540h0Z"/><path class="b" d="M1200,0h120L960,540h0Z"/><path class="c" d="M1440,0h120L960,540h0Z"/><path class="c" d="M1680,0h120L960,540h0Z"/><path class="b" d="M960,540l960-420V240L960,540Z"/><path class="b" d="M0,240,960,540h0L0,360Z"/><path class="b" d="M960,540l960-180V480L960,540Z"/><path class="b" d="M0,480l960,60h0L0,600Z"/><path class="b" d="M960,540l960,60V720L960,540Z"/><path class="b" d="M0,720,960,540h0L0,840Z"/><path class="b" d="M960,540l960,300V960L960,540Z"/><path class="b" d="M0,960,960,540,0,1157V960Z"/><path class="b" d="M960,540h0L0,1404V1260Z"/><path class="b" d="M960,540h0L0,1981V1620Z"/><path class="b" d="M960,540h0L436,2900H-89Z"/><path class="b" d="M960,540h0l524,2360H960Z"/><path class="b" d="M960,540h0l960,1440v719Z"/><path class="b" d="M960,540h0l960,864v215Z"/><path class="b" d="M960,540h0l960,617,1,103Z"/><path class="d" d="M120,0H240L960,540h0Z"/><path class="d" d="M360,0H480L960,540h0Z"/><path class="d" d="M600,0H720L960,540h0Z"/><path class="d" d="M840,0H960V540h0Z"/><path class="d" d="M1080,0h120L960,540h0Z"/><path class="d" d="M1320,0h120L960,540h0Z"/><path class="d" d="M1560,0h120L960,540h0Z"/><path class="d" d="M1800,0h120V120L960,540Z"/><path class="d" d="M0,120,960,540h0L0,240Z"/><path class="d" d="M960,540l960-300V360L960,540Z"/><path class="d" d="M0,360,960,540h0L0,480Z"/><path class="d" d="M960,540l960-60V600L960,540Z"/><path class="d" d="M0,600l960-60h0L0,720Z"/><path class="d" d="M960,540l960,180V840L960,540Z"/><path class="d" d="M0,840,960,540h0L0,960Z"/><path class="d" d="M960,540h0L240,1080H120Z"/><path class="d" d="M960,540h0L480,1080H360Z"/><path class="d" d="M960,540h0L720,1080H600Z"/><path class="d" d="M960,540h0v540H840Z"/><path class="d" d="M960,540h0l240,540H1080Z"/><path class="d" d="M960,540h0l480,540H1320Z"/><path class="d" d="M960,540h0l720,540H1560Z"/><path class="d" d="M960,540l960,420v120H1800Z"/></g></svg>
|
After Width: | Height: | Size: 2.3 KiB |
1
src/assets/images/cfp/Ellipse 5.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="649" height="649" viewBox="0 0 649 649"><defs><style>.a{fill:#fff;}</style></defs><circle class="a" cx="324.5" cy="324.5" r="324.5"/></svg>
|
After Width: | Height: | Size: 186 B |
1
src/assets/images/cfp/Group 10.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="295.744" height="428.391" viewBox="0 0 295.744 428.391"><defs><style>.a{fill:#9ccaef;}.b{clip-path:url(#a);}</style><clipPath id="a"><rect class="a" width="295.744" height="428.391"/></clipPath></defs><g class="b"><path class="a" d="M63.245,13.293C88.182-5.768,117.8,1.27,117.8,1.27s-4.948,35.411-29.879,54.479S27.52,70.3,27.52,70.3A306.526,306.526,0,0,0,42.954,43.412c4.524-8.882,11.1-23.081,20.29-30.119" transform="translate(141.638 0.002)"/><path class="a" d="M44.93,12.055c-11.648-8.9-25.478-5.618-25.478-5.618s2.311,16.541,13.953,25.441,28.214,6.8,28.214,6.8-3.6-5.464-7.216-12.558c-2.108-4.155-5.182-10.788-9.472-14.07" transform="translate(100.114 30.087)"/><path class="a" d="M33.481,64.818c3.411,0,6.811.148,10.21.375C40.654,47.072,41.256,28.2,50.562,12c-16.3,13.123-24.224,33.217-28.336,53.274,3.743-.27,7.5-.455,11.255-.455" transform="translate(114.391 61.756)"/><path class="a" d="M147.872,21.579A147.875,147.875,0,1,0,295.75,169.451,147.875,147.875,0,0,0,147.872,21.579m60.422,208.294-60.422-41.583L87.456,229.873l41.577-60.422L87.456,109.035l60.416,41.583,60.422-41.583-41.589,60.416Z" transform="translate(0 111.061)"/></g></svg>
|
After Width: | Height: | Size: 1.2 KiB |
1
src/assets/images/cfp/Mobile/Group 66.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="111.949" height="162.16" viewBox="0 0 111.949 162.16"><defs><style>.a{fill:#9ccaef;}.b{clip-path:url(#a);}</style><clipPath id="a"><rect class="a" width="111.949" height="162.16"/></clipPath></defs><g transform="translate(-8.473 -200)"><g class="b" transform="translate(8.473 200)"><path class="a" d="M41.043,5.032C50.483-2.183,61.7.481,61.7.481s-1.873,13.4-11.31,20.622-22.865,5.51-22.865,5.51a116.031,116.031,0,0,0,5.842-10.18c1.712-3.362,4.2-8.737,7.681-11.4" transform="translate(36.512 0.001)"/><path class="a" d="M29.1,8.2A12.445,12.445,0,0,0,19.452,6.07s.875,6.261,5.282,9.63,10.68,2.576,10.68,2.576-1.363-2.068-2.732-4.754c-.8-1.573-1.961-4.083-3.586-5.326" transform="translate(25.808 7.756)"/><path class="a" d="M26.486,31.993c1.291,0,2.578.056,3.865.142-1.149-6.859-.921-14,2.6-20.136-6.168,4.968-9.17,12.574-10.726,20.166,1.417-.1,2.839-.172,4.26-.172" transform="translate(29.488 15.92)"/><path class="a" d="M55.975,21.579a55.976,55.976,0,1,0,55.977,55.975A55.975,55.975,0,0,0,55.975,21.579m22.872,78.846L55.975,84.685,33.1,100.425,48.843,77.554,33.1,54.684l22.87,15.74,22.872-15.74L63.1,77.554Z" transform="translate(0 28.63)"/></g></g></svg>
|
After Width: | Height: | Size: 1.2 KiB |
1
src/assets/images/cfp/Mobile/Mobile-background.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="422.57" height="1273.466" viewBox="0 0 422.57 1273.466"><defs><style>.a{opacity:0.6;}.b{fill:#9ccaef;}.c{fill:#fff;}</style></defs><g class="a" transform="translate(17 157.5)"><path class="b" d="M0,279.585V210.5L207.255,486.84,0,331.4Z" transform="translate(-10.475 -226.76)"/><path class="c" d="M135,390.5h51.814L290.441,597.755h0Z" transform="translate(-93.662 -337.675)"/><path class="b" d="M75-.5h89.043l89.427,357.323h0Z" transform="translate(-56.69 -96.743)"/><path class="c" d="M405,390.5h51.814V597.755h0Z" transform="translate(-260.034 -337.675)"/><path class="b" d="M540-.5h89.427L540,356.823h0Z" transform="translate(-343.22 -96.743)"/><path class="c" d="M591.814,390.5h51.814L540,597.755h0Z" transform="translate(-343.22 -337.675)"/><path class="b" d="M748.79-157.5V-18.562L540,260.08h0Z" transform="translate(-343.22)"/><path class="c" d="M695.441,390.5h51.814v51.814L540,597.755Z" transform="translate(-343.22 -337.675)"/><path class="c" d="M0,525.5,207.255,680.941h0L0,577.314Z" transform="translate(-10.475 -420.861)"/><path class="b" d="M540,680.941,747.255,525.5v51.814L540,680.941Z" transform="translate(-343.22 -420.861)"/><path class="b" d="M0,660.5,207.255,764.127h0L0,712.314Z" transform="translate(-10.475 -504.047)"/><path class="c" d="M540,764.127,747.255,660.5v51.814L540,764.127Z" transform="translate(-343.22 -504.047)"/><path class="c" d="M0,795.5l207.255,51.814H0Z" transform="translate(-10.475 -587.234)"/><path class="b" d="M540,847.314,747.255,795.5v51.814Z" transform="translate(-343.22 -587.234)"/><path class="b" d="M0,930.5H207.255L0,982.314Z" transform="translate(-10.475 -670.42)"/><path class="c" d="M540,930.5H747.255v51.814L540,930.5Z" transform="translate(-343.22 -670.42)"/><path class="c" d="M0,982.314,207.255,930.5h0L0,1034.128Z" transform="translate(-10.475 -670.42)"/><path class="b" d="M540,930.5l207.255,51.814v51.814L540,930.5Z" transform="translate(-343.22 -670.42)"/><path class="b" d="M0,1034.128,207.255,930.5h0L0,1085.941Z" transform="translate(-10.475 -670.42)"/><path class="c" d="M540,930.5l207.255,103.628v51.814L540,930.5Z" transform="translate(-343.22 -670.42)"/><path class="c" d="M0,1085.941,207.255,930.5,51.814,1137.755H0Z" transform="translate(-10.475 -670.42)"/><path class="b" d="M207.255,930.5h0L0,1345.01V1206.84Z" transform="translate(-10.475 -670.42)"/><path class="c" d="M373.627,930.5h0l-51.814,207.255H270Z" transform="translate(-176.848 -670.42)"/><path class="b" d="M196.78,930.5h0v855.886H-17Z" transform="translate(0 -670.42)"/><path class="c" d="M540,930.5h0l51.814,207.255H540Z" transform="translate(-343.22 -670.42)"/><path class="b" d="M540,930.5h0l207.255,414.51v414.51Z" transform="translate(-343.22 -670.42)"/><path class="c" d="M540,930.5h0l155.441,207.255H643.627Z" transform="translate(-343.22 -670.42)"/><path class="b" d="M540,930.5l207.255,155.441v120.9Z" transform="translate(-343.22 -670.42)"/></g></svg>
|
After Width: | Height: | Size: 2.9 KiB |
1
src/assets/images/cfp/Mobile/Path 751.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="274.848" height="45.072" viewBox="0 0 274.848 45.072"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M38.1,17.568l1.872,2.448H49.86V18l-2.208-2.256H50.34v-7.2H42.276v-1.2H32.82l-3.792,5.712v6.96h7.536Zm22.752-.048,1.92,2.5H73V17.952l-2.16-2.208h2.64v-7.2H64.932v-1.2h-9.84L51.3,13.056v6.96h7.92ZM73.764,40.368H68.628V39.216H72.8V21.072H29.988V39.216h4.944v1.152H28.98v7.824h4.272l-.816,1.728v1.872H47.364l1.056-3.6h5.76v3.552H68.628V48.192h5.136Zm-14.256-14.3v1.008H43.284V26.064Zm0,4.752H43.284v-1.1H59.508ZM43.284,34.56V33.552H59.508V34.56Zm6.048,5.808V39.216H54.18v1.152Zm38.4-6.528H95.94V31.2l1.392,1.44h2.3v1.2h9.072V8.784h-6.576V7.152h-10.7l-3.7,4.08v8.64H86.58V28.56h1.152Zm31.92-16.56V15.264h1.056V17.28l1.344,1.776h8.928V11.184h-1.824V7.344h-18v3.5h-1.44v8.208h8.448ZM99.636,15.024v1.92l-.96-1.1H95.94v-.816Zm0,6.432h-3.7V19.3l1.248,1.3h2.448Zm21.6,4.464-1.344.768-1.3-.72h-8.688v2.64l1.536.912-1.728.96v3.312h8.64l1.776-1.488,1.968,1.488h9.12v-3.6l-2.256-1.3,1.632-1.1v-7.92H109.668V25.2h11.568Zm-22.56,1.872H95.94v-.816h3.7v1.68ZM130.164,42.72V34.8H87.78v7.92H86.532v9.168h44.832V42.72Zm-28.992-1.2v3.024H99.54V41.52Zm8.544,3.024h-1.68V41.52h1.68Zm8.64,0h-1.68V41.52h1.68ZM159.3,7.248H148.5l-4.176,5.616V51.6h21.168V11.328H159.3Zm21.456,2.3v-2.3H170.484l-3.5,4.8V22.416H176V40.608l-7.1,4.8v6.384h19.68V9.552ZM156.372,22.8v5.184h-2.544V22.8Zm18.192,17.664V24h-7.392V37.2l2.5,3.264Zm-20.736,1.488V36.576h2.544v5.376Zm90.192-.48,1.872-2.112V30.192H227.22V29.184h18.96V15.072h-4.128l-5.9,5.472h-1.536L244.4,11.52V8.208h-9.456l-7.776,7.2h-1.536l5.856-5.424V7.68H220.6l-4.56,4.224v8.16h3.216l-3.216,2.928v6.192h2.256l-2.256,2.3V43.92h1.632l2.352-2.208.96.912-4.992,4.656v4.56H228.9l2.928-3.264,3.456,3.264h11.184V43.632ZM214.884,16.224V7.872h-8.5L201.4,11.808V25.68h1.968ZM201.4,28.7V39.84h1.728V52.032h11.808V20.688h-3.744Zm28.368,8.784h4.848v.192l-2.256,2.256-2.592-2.3ZM289.62,8.928V6.96H273.78V8.928h-14.3v7.92h4.752l-4.368,2.4v8.4h6.288l3.12-2.832v2.832H285.54l2.112-1.584,1.968,1.584h13.728V23.28l-3.024-1.92,2.112-1.632V17.856H285.06l-2.3,1.824V16.848h21.072V8.928ZM259.812,51.792h12.336V36.96h3.072v1.056H273.3v3.456h7.824V36.96h1.152v4.512h8.112V38.016h-1.92V36.96h3.072v8.16l-1.056.672V42.576H273.3v7.632h13.632v1.584h16.56V28.7h-43.68Zm23.856-4.752h-3.552v-1.2h3.552Z" transform="translate(-28.98 -6.96)"/></svg>
|
After Width: | Height: | Size: 2.3 KiB |
1
src/assets/images/cfp/Mobile/Path 752.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="195.384" height="22.608" viewBox="0 0 195.384 22.608"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M17.124,7.08l1.008.576h1.752V6.072l-.7-.384.7-.36V3.768H18.132l-1.008.552-1.008-.552H14.364v1.56l.7.36-.7.384V7.656h1.752Zm9.768,10.44h1.464V12.5h-.528V3.888h-7.56V7.44h2.256v.48H20.34V9.768h2.184v.456H20.34v1.8h2.184v.48H11.748v-.48h2.208v-1.8H11.748V9.768h2.208V7.92H11.748V7.44h.792l1.416-.384V3.888H6.468V12.5H5.94v5.064H7v1.68H16.62v.12l-1.032.384H6.06V23.52h7.56v.1L11.8,24.648V25.92H21.54v-2.4h6.648V19.752H24.732l2.16-.912Zm-9.768-6,1.008.576h1.752V10.512l-.72-.384.72-.408V8.064H18.132l-1.008.552-1.008-.552H14.364V9.72l.72.408-.72.384V12.1h1.752Zm-5.832,4.944v-.5H23.124v.5ZM50.508,19.9V18.12h6.024V12.912H50.508V11.3h6.36V5.5h-6.36V3.432h-7.8V5.5h-1.32V4.176H36.9l-2.04,2.76V11.3h7.032v1.608H35.364V18.12h6.528V19.9h-6.96v5.856h22.08V19.9ZM71.82,3.624H65.6v.96h-1.92v5.4h10.2v-5.4H71.82Zm14.232,5.76H83.844V3.648h-7.32V9.384H74.46v7.344h2.064v9.24h7.32v-9.24h2.208ZM73.716,10.536H63.828v3.48h9.888ZM63.828,17.9h9.888V14.568H63.828Zm-.1,7.968H73.86V18.5H63.732Zm4.128-4.08h1.8v.888h-1.8ZM96.9,8.784l.936,1.224h4.944V9l-1.1-1.128h1.344v-3.6H98.988v-.6H94.26l-1.9,2.856v3.48h3.768Zm11.376-.024.96,1.248h5.112V8.976l-1.08-1.1h1.32v-3.6h-4.272v-.6H105.4l-1.9,2.856v3.48h3.96Zm6.456,11.424h-2.568v-.576h2.088V10.536H92.844v9.072h2.472v.576H92.34V24.1h2.136l-.408.864V25.9h7.464l.528-1.8h2.88v1.776h7.224V24.1h2.568ZM107.6,13.032v.5H99.492v-.5Zm0,2.376H99.492v-.552H107.6ZM99.492,17.28v-.5H107.6v.5Zm3.024,2.9v-.576h2.424v.576ZM142.5,22.392l.792-1.032V19.008h-3.12l-.384.456-.624-.984h4.128V14.112h-.552l-.12-.528h.5V10.9h-1.008v-.12l1.008-1.416V7.224h-1.008V7.1l1.008-1.416V3.96h-2.88L138.8,6V3.576h-4.656V14.112H128.94V21.1l-.816,1.9V25.92h3.768l.552-1.248.6.84h.984V21.024l-.552-.984V18.888h.648V19.8l1.44,2.232-1.08,1.488V25.9h3.36l.768-.984.792,1.1h4.08V23.832Zm-14.16-1.776v-7.1l-.768-1.056v-.888h.84V5.592h-.84V3.72h-4.92V5.592h-1.368v5.976h1.272l-1.44,2.808v9.216h.984l.552-1.248V25.9h4.92v-5.28Zm5.328-9.72H132.66v-.12l1.008-1.416V7.224H132.66V7.1l1.008-1.416V3.96h-3.216l-1.536,2.232V9.264h.864v.072l-.864,1.224v3.024h4.752Zm5.856-1.632v.072l-.72,1.008V9.264Zm-.72,4.32h.84v.528h-.84Zm33.408,4.464h-5.568V16.776h4.92V11.568h-4.92v-1.08h5.232V4.752H158.46V3.744h-5.616l-2.328,3.1v3.648h8.28v1.08H151.26v6.48h-1.272v5.688H158.8v2.232h7.848V23.736h5.568Zm-15,0V16.776H158.8v1.272ZM201.324,6.24l-6.768-2.832h-9.288L178.524,6.24v5.5h.624v5.736h21.5V11.736h.672Zm-10.68,1.32,1.32.5h-4.1l1.32-.5Zm-7.68,2.808,2.184-.912v.408h9.48V9.432l2.232.936Zm1.512,2.472h3.432V15h-.48V13.224h-2.472v1.248l.48.528h-.96ZM195.252,15h-.96l.5-.528V13.224h-2.5V15h-.456V12.84h3.408Zm-15.7,10.9h20.712V18H179.556Zm14.208-5.5v.528h-7.632V20.4Zm-7.632,3v-.5h7.632v.5Z" transform="translate(-5.94 -3.408)"/></svg>
|
After Width: | Height: | Size: 2.8 KiB |
1
src/assets/images/cfp/Mobile/Path 753.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="221.806" height="22.386" viewBox="0 0 221.806 22.386"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M40.949,27.092l3.146-3.12V15.158L41.469,12.87H34.293v-1.4h9.23V5.382H29.457L26.311,8.5v8.4l2.626,2.288h6.63v1.4H26.285v6.5ZM48.8,5.3V27.118h9.048V5.3Zm30.966.13h-17.5v7.514h4.446V27.04h8.606V12.948h4.446ZM92.923,19.266V13.39h9.334V5.408H87.7l-3.588,3.64V23.53L87.7,27.118h14.82V19.266ZM110.161,5.33l-3.2,3.458V23.712l3.2,3.432H123.6l3.2-3.432V8.814L123.6,5.33Zm4.992,15.184v-8.4h3.458v8.4ZM143.311,5.538V12.87h-.572L138.4,5.538h-6.89V27.014h7.7V19.656h.546l4.472,7.384h6.656V5.538Zm39.6-.676H167.673v7.826h8.294v.936l-8.528,8.554V27.17h17.732V20.228h-5.538v-.312l5.226-4.784V7.306Zm7.332,19.474,3.016,2.912h12.532l3.042-2.912V8.034L205.789,4.94H193.257l-3.016,3.094Zm7.774-12.116h3.042v7.9h-3.042Zm31.356-7.358H214.135v7.826h8.294v.936L213.9,22.178V27.17h17.732V20.228H226.1v-.312l5.226-4.784V7.306Zm10.92.182L236.5,8.58v5.174h2.132V27.066h9.464V5.044Z" transform="translate(-26.285 -4.862)"/></svg>
|
After Width: | Height: | Size: 1.0 KiB |
1
src/assets/images/cfp/Mobile/Path 754.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="208.726" height="31.994" viewBox="0 0 208.726 31.994"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M48.64,6.018H42.35V4.862h-8.3V6.018H28.716V12.75H48.64ZM28,21.59v1.632l-1.054-1.258V20.74h1.224V13.294H26.948V11.662l.986-.68V5.508H17.53v6.6H19.4v1.19H17.428V20.74h1.734l-2.006,3.2v9.826h1.292l.952-1.734v4.658h7.548V30.26H28v6.426H35.04V27.3H41.7v5.066l-.748.646v-4.9H35.788v7.14h3.3v1.428h9.86V21.59Zm19.958-.782V13.566H29.09v7.242ZM36.23,16.864h4.284v1.02H36.23Zm2.754,15.47H37.9v-1.19h1.088Zm47.158-10.54H81.654v-5.27h4.182V7.582H81.654V5.2H74v2.38h-1.36v-1.7h-4.59L66.388,9.146v7.378h4.93v5.27H66.354v9.078h4.964v5.916H81.654V30.872h4.488ZM54.42,13.09V24.752h1.87V36.686h9.078V5.44H58.432ZM109.7,10.982h-.782V5.032h-4.59v5.95h-.816V5.61h-2.788V15.674h11.7V5.61H109.7Zm12.75,15.028,1.02-1.9V6.46h-4.012V5.134H114.94l-1.8,2.346v7.65h4.794v3.4l-1.36-2.414h-3.434V23.63l.986,1.734-1.258,1.768v9.69h3.876L118.2,34.34l1.326,2.482h4.046v-8.6ZM99.946,11.288V5.474h-5l-3.23,2.278v8.806h1.53Zm-8.228,7.446V26.52H92.7V36.856H99.98V13.43H98.518Zm9.01,2.414H112.39V16.49H100.728Zm.1,5.134h2.346v.884h-2.244v4.046h2.244v.918H100.8v4.624h11.322V32.13H110.18v-.918h1.9V27.166h-1.9v-1.19l2.04-.476V21.964H100.83ZM159.786,7.344l-.51-2.006h-7.514V7.344h-1.054V5H139.284V7.344h-9.656V14.96h10.166V31.45l-.918,1.02V24.718H132.11l-2.482,3.06v7.276h7.888v1.734h13.192V14.96h10.4V7.344Zm-20.91,16.49V15.776h-9.044v5.032l2.312,3.026ZM160.6,15.776h-9.01v8.058h6.7l2.312-3.026Zm-9.01,8.942V35.054h9.18V27.778l-2.448-3.06ZM198.138,7.48h-9.384V5.134H176.31V7.48H167.1V31.824h9.214v4.964h12.444V31.824h9.384ZM175.63,15.708h2.04V23.97h-2.04Zm13.8,8.262h-2.04V15.708h2.04ZM214.492,6.222V25.908h8.228l3.162-4.216V6.222Zm.2,21.692v8.228h10.336V27.914Z" transform="translate(-17.156 -4.862)"/></svg>
|
After Width: | Height: | Size: 1.8 KiB |
1
src/assets/images/cfp/Mobile/Path 755.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="135.21" height="27.15" viewBox="0 0 135.21 27.15"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M1.5,28.08l3.48,3.36H19.44l3.51-3.36V9.27L19.44,5.7H4.98L1.5,9.27ZM10.47,14.1h3.51v9.12H10.47ZM31.89,31.35H50.25l2.94-2.82V17.64L50.25,15H40.41V13.29H52.65V5.64H31.95V21.66H43.68v1.83H31.89Zm30.54-.63v1.5h6.12L76.77,6.57V5.07H70.65ZM103.8,5.61H86.22v9.03h9.57v1.08l-9.84,9.87v5.76h20.46V23.34h-6.39v-.36l6.03-5.52V8.43Zm29.79.12H118.32L115.2,8.85V19.74l2.31,2.13H127.8v1.74h-12v7.8h17.01l3.9-3.66V8.85Zm-9.9,9.87V13.2h4.11v2.4Z" transform="translate(-1.5 -5.07)"/></svg>
|
After Width: | Height: | Size: 631 B |
1
src/assets/images/cfp/Mobile/Path 756.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="167.918" height="66.964" viewBox="0 0 167.918 66.964"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M32.538,7.48H23.154V5.134H10.71V7.48H1.5V31.824H10.71v4.964H23.154V31.824h9.384ZM10.03,15.708h2.04V23.97H10.03Zm13.8,8.262h-2.04V15.708h2.04Zm43.078-3.094H65.144V7.446h-8.4V4.964H45.322V7.446H36.958v13.43H35.122v8.3H38.93l-2.788,3.842v3.672h11.05l3.06-6.7h1.9l3.094,6.7H66.266V33.014l-2.788-3.842h3.434Zm-21.794-5.3h1.734v5.3H45.118Zm11.8,5.3h-1.7v-5.3h1.7Zm43.86-2.448H99.688V13.4h.918V5.576H81.94V13.4h1.224v5.032H81.94v8.058h1.224l-1.19,6.834v3.468h7.548l.986-10.3H91.9V36.754h7.786V26.486h1.088ZM69.7,13.022h2.618v.17l-3.366,5.814v10.71H70.04v6.9H81.158V17.2H78.812v-.136l2.346-4.046V5.95H69.7Zm20.808,5.406V13.4H91.9v5.032ZM75.99,30.668H75V23.63h.986Zm55.522-1.87V22.542h-11.22V21.318h-3.6l1.734-1.734V14.076h1.02v5.508l2.006,2.006h12.58V16.932h-7.82V14.076h1.02v1.938h7.718V6.358h-10.4v-1.5h-11.39v1.5h-9.928v9.656h7.446V14.076h1.02v2.856h-7.616V21.59h5.814v.952H104.04V29.41h3.366l-3.978,4.76v2.618h11.56L118.8,29.41h2.89v7.378h13.362V28.8Zm19.482-8.6h16.49V16.8h1.19V6.29h-5.61V4.862H154.8V6.29h-5.1V16.864h1.292ZM137.53,36.754h8.33V33.32h3.026V21.25l-1.088-1.7,1.088-2.38V5.712H137.53Zm6.324-24.684v5.678H142.9V12.07Zm18.122.918v1.054h-5.95V12.988Zm3.808,15.47-.612,1.36h-.748V27.54h4.25V21.148H149.736V27.54h1.632l-1.938,5.95v3.3H156.3l1.02-9.248h.782v9.248h10.676v-8.33Zm-21.93-.476H142.9V22.644h.952ZM.858,71.694H6.82l3.806-7.018h.748l3.916,7.018h5.9V67.162l-6.38-8.338V51.476H6.974v7.348L.858,67.162ZM36.894,52.422V51.146H29.062v1.276H22.836v6.226H43.142V52.422ZM42.416,62.63V59.2H35.332l-2.31,2.64L30.69,59.2H23.606V62.63l2.464,2.332-3.124,2.486V71.76h6.622l3.454-3.366,3.432,3.366h6.622V67.448l-3.124-2.486Zm19.976,2.838V60.144h2.354V54.226H62.392V51.278h-6.6v2.948H53.5v5.918h2.288v5.324H53.108v6.116H65.186V65.468ZM51.414,51.388H46.2V52.51H44.946v4.928h2.376v.154l-2.552,2.42v7.876h.968V71.8h5.94V67.888h.836V61.024l-.836-.7,1.166-1.078V52.51h-1.43ZM87.472,53.72l-6.2-2.6H72.754l-6.182,2.6v5.038h.572v5.258H86.856V58.758h.616Zm-9.79,1.21,1.21.462H75.13l1.21-.462ZM70.642,57.5l2-.836v.374h8.69v-.4l2.046.858Zm1.386,2.266h3.146v1.98h-.44V60.122H72.468v1.144l.44.484h-.88Zm9.878,1.98h-.88l.462-.484V60.122H79.2V61.75h-.418V59.77h3.124ZM67.518,71.738H86.5V64.5H67.518ZM80.542,66.7v.484h-7V66.7Zm-7,2.75v-.462h7v.462Zm23.32-13.53,1.32-.748V51.564H89.122v4.642h2.024v.858h-2.2v4.862H90.9L88.792,64.06v6.116h1.32L91.146,68.9v2.838h5.72v-2.97h1.3V64.456l-1.3-1.518V61.926h1.342V57.064H96.866Zm12.474,7.128h-.594V51.564H103.29v12.8l-.462.154v-4.8l-3.674-1.5h-.44v6.182l2.2.814-2.244.814v5.082h1.342l2.244-.748v1.452h6.49V68.218l.594-.2Zm-6.512-4.026V53.434l-3.41-1.452h-.7V57.5l3.652,1.518Zm18.194-4.532.924.528h1.606V53.566l-.638-.352.638-.33v-1.43h-1.606l-.924.506-.924-.506h-1.606v1.43l.638.33-.638.352v1.452H120.1Zm8.954,9.57h1.342v-4.6h-.484v-7.9H123.9V54.82h2.068v.44h-2v1.694h2v.418h-2v1.65h2v.44h-9.878v-.44h2.024v-1.65h-2.024v-.418h2.024V55.26h-2.024v-.44h.726l1.3-.352v-2.9h-6.864v7.9h-.484V64.1h.968v1.54h8.822v.11l-.946.352H110.88V69.56h6.93v.088l-1.672.946V71.76h8.932v-2.2h6.094V66.106H128l1.98-.836Zm-8.954-5.5.924.528h1.606V57.636l-.66-.352.66-.374V55.392h-1.606l-.924.506-.924-.506h-1.606V56.91l.66.374-.66.352v1.452H120.1Zm-5.346,4.532V62.63h10.846v.462Zm36.982.726v-5.1h.66V52.07h-3.256v-.924h-5.126v.924H141.7v5.588h-2.948V56.69l.682.528h1.8V53.1l-2.772-1.8h-3.036l-2.772,1.8v4.114h1.848l.7-.55v.99h-2.266V71.8h4.488l.814-1.056.9,1.034h2.6V66.854h-3.894v.814h-.726V66.326h4.62V58.714h.55V71.76h10.582V64.434H146.63v-.616ZM137.346,55.7l.7.484h-2.222l.66-.484Zm11.506.77v.616H145.9V56.47ZM148.346,61H146.63v-.748h1.716Zm-11.77-.594h1.848v.572h-1.848Zm0,2.948V62.74h1.848v.616Zm11.99,3.916v.792H146.63v-.792Z" transform="translate(-0.858 -4.862)"/></svg>
|
After Width: | Height: | Size: 3.8 KiB |
1
src/assets/images/cfp/Mobile/Path_763.svg
Normal file
After Width: | Height: | Size: 6.3 KiB |
BIN
src/assets/images/cfp/Mobile/paper.png
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
src/assets/images/cfp/Mobile/paper@2x.png
Normal file
After Width: | Height: | Size: 113 KiB |
1
src/assets/images/cfp/Path 733.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="341.24" height="34.44" viewBox="0 0 341.24 34.44"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M115.46,41.68l4.84-4.8V23.32l-4.04-3.52H105.22V17.64h14.2V8.28H97.78l-4.84,4.8V26l4.04,3.52h10.2v2.16H92.9v10ZM127.54,8.16V41.72h13.92V8.16Zm47.64.2H148.26V19.92h6.84V41.6h13.24V19.92h6.84Zm20.24,21.28V20.6h14.36V8.32h-22.4l-5.52,5.6V36.2l5.52,5.52h22.8V29.64ZM221.94,8.2l-4.92,5.32V36.48l4.92,5.28h20.68l4.92-5.28V13.56L242.62,8.2Zm7.68,23.36V18.64h5.32V31.56ZM272.94,8.52V19.8h-.88L265.38,8.52h-10.6V41.56h11.84V30.24h.84l6.88,11.36h10.24V8.52Zm60.92-1.04H310.42V19.52h12.76v1.44L310.06,34.12V41.8h27.28V31.12h-8.52v-.48l8.04-7.36V11.24Zm11.28,29.96,4.64,4.48h19.28l4.68-4.48V12.36L369.06,7.6H349.78l-4.64,4.76ZM357.1,18.8h4.68V30.96H357.1ZM405.34,7.48H381.9V19.52h12.76v1.44L381.54,34.12V41.8h27.28V31.12H400.3v-.48l8.04-7.36V11.24Zm16.8.28L416.3,13.2v7.96h3.28V41.64h14.56V7.76Z" transform="translate(-92.9 -7.48)"/></svg>
|
After Width: | Height: | Size: 987 B |
1
src/assets/images/cfp/Path 734.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="244.23" height="28.26" viewBox="0 0 244.23 28.26"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M167.03,8.85l1.26.72h2.19V7.59l-.87-.48.87-.45V4.71h-2.19l-1.26.69-1.26-.69h-2.19V6.66l.87.45-.87.48V9.57h2.19ZM179.24,21.9h1.83V15.63h-.66V4.86h-9.45V9.3h2.82v.6h-2.73v2.31h2.73v.57h-2.73v2.25h2.73v.6H160.31v-.6h2.76V12.78h-2.76v-.57h2.76V9.9h-2.76V9.3h.99l1.77-.48V4.86h-9.36V15.63h-.66v6.33h1.32v2.1H166.4v.15l-1.29.48H153.2V29.4h9.45v.12l-2.28,1.29V32.4h12.18v-3h8.31V24.69h-4.32l2.7-1.14Zm-12.21-7.5,1.26.72h2.19V13.14l-.9-.48.9-.51V10.08h-2.19l-1.26.69-1.26-.69h-2.19v2.07l.9.51-.9.48v1.98h2.19Zm-7.29,6.18v-.63h14.79v.63Zm49.02,4.29V22.65h7.53V16.14h-7.53V14.13h7.95V6.87h-7.95V4.29h-9.75V6.87h-1.65V5.22h-5.61L189.2,8.67v5.46h8.79v2.01h-8.16v6.51h8.16v2.22h-8.7v7.32h27.6V24.87ZM235.4,4.53h-7.77v1.2h-2.4v6.75h12.75V5.73H235.4Zm17.79,7.2h-2.76V4.56h-9.15v7.17H238.7v9.18h2.58V32.46h9.15V20.91h2.76Zm-15.42,1.44H225.41v4.35h12.36Zm-12.36,9.21h12.36V18.21H225.41Zm-.12,9.96h12.66V23.13H225.29Zm5.16-5.1h2.25v1.11h-2.25Zm36.3-16.26,1.17,1.53h6.18V11.25l-1.38-1.41h1.68V5.34h-5.04V4.59h-5.91l-2.37,3.57v4.35h4.71Zm14.22-.03,1.2,1.56h6.39V11.22l-1.35-1.38h1.65V5.34h-5.34V4.59h-6.15L275,8.16v4.35h4.95Zm8.07,14.28h-3.21v-.72h2.61V13.17H261.68V24.51h3.09v.72h-3.72v4.89h2.67l-.51,1.08v1.17h9.33l.66-2.25h3.6v2.22h9.03V30.12h3.21Zm-8.91-8.94v.63H269.99v-.63Zm0,2.97H269.99v-.69h10.14ZM269.99,21.6v-.63h10.14v.63Zm3.78,3.63v-.72h3.03v.72Zm49.98,2.76.99-1.29V23.76h-3.9l-.48.57-.78-1.23h5.16V17.64h-.69l-.15-.66h.63V13.62h-1.26v-.15l1.26-1.77V9.03h-1.26V8.88l1.26-1.77V4.95h-3.6l-1.8,2.55V4.47h-5.82V17.64H306.8v8.73l-1.02,2.37V32.4h4.71l.69-1.56.75,1.05h1.23V26.28l-.69-1.23V23.61h.81v1.14l1.8,2.79-1.35,1.86v2.97h4.2l.96-1.23.99,1.38h5.1V29.79Zm-17.7-2.22V16.89l-.96-1.32V14.46h1.05V6.99h-1.05V4.65h-6.15V6.99h-1.71v7.47h1.59l-1.8,3.51V29.49h1.23l.69-1.56v4.44h6.15v-6.6Zm6.66-12.15h-1.26v-.15l1.26-1.77V9.03h-1.26V8.88l1.26-1.77V4.95h-4.02l-1.92,2.79v3.84h1.08v.09l-1.08,1.53v3.78h5.94Zm7.32-2.04v.09l-.9,1.26V11.58Zm-.9,5.4h1.05v.66h-1.05Zm41.76,5.58h-6.96V20.97h6.15V14.46h-6.15V13.11h6.54V5.94H343.7V4.68h-7.02l-2.91,3.87v4.56h10.35v1.35H334.7v8.1h-1.59v7.11h11.01v2.79h9.81V29.67h6.96Zm-18.75,0V20.97h1.98v1.59ZM397.28,7.8l-8.46-3.54H377.21L368.78,7.8v6.87h.78v7.17h26.88V14.67h.84ZM383.93,9.45l1.65.63h-5.13l1.65-.63Zm-9.6,3.51,2.73-1.14v.51h11.85v-.54l2.79,1.17Zm1.89,3.09h4.29v2.7h-.6V16.53h-3.09v1.56l.6.66h-1.2Zm13.47,2.7h-1.2l.63-.66V16.53H386v2.22h-.57v-2.7h4.26ZM370.07,32.37h25.89V22.5H370.07Zm17.76-6.87v.66h-9.54V25.5Zm-9.54,3.75v-.63h9.54v.63Z" transform="translate(-153.05 -4.26)"/></svg>
|
After Width: | Height: | Size: 2.6 KiB |
1
src/assets/images/cfp/Path 735.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="515.34" height="84.51" viewBox="0 0 515.34 84.51"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M34.25,32.94l3.51,4.59H56.3V33.75l-4.14-4.23H57.2V16.02H42.08V13.77H24.35L17.24,24.48V37.53H31.37Zm42.66-.09,3.6,4.68H99.68V33.66l-4.05-4.14h4.95V16.02H84.56V13.77H66.11L59,24.48V37.53H73.85Zm24.21,42.84H91.49V73.53h7.83V39.51H19.04V73.53h9.27v2.16H17.15V90.36h8.01L23.63,93.6v3.51H51.62l1.98-6.75H64.4v6.66H91.49V90.36h9.63ZM74.39,48.87v1.89H43.97V48.87Zm0,8.91H43.97V55.71H74.39ZM43.97,64.8V62.91H74.39V64.8ZM55.31,75.69V73.53H64.4v2.16Zm72-12.24H142.7V58.5l2.61,2.7h4.32v2.25h17.01V16.47H154.31V13.41H134.24l-6.93,7.65v16.2h-2.16V53.55h2.16ZM187.16,32.4V28.62h1.98V32.4l2.52,3.33H208.4V20.97h-3.42v-7.2H171.23v6.57h-2.7V35.73h15.84Zm-37.53-4.23v3.6l-1.8-2.07H142.7V28.17Zm0,12.06H142.7V36.18l2.34,2.43h4.59Zm40.5,8.37-2.52,1.44-2.43-1.35H168.89v4.95l2.88,1.71-3.24,1.8v6.21h16.2l3.33-2.79,3.69,2.79h17.1V56.61l-4.23-2.43,3.06-2.07V37.26H168.44v9.99h21.69Zm-42.3,3.51H142.7V50.58h6.93v3.15ZM206.87,80.1V65.25H127.4V80.1h-2.34V97.29h84.06V80.1Zm-54.36-2.25v5.67h-3.06V77.85Zm16.02,5.67h-3.15V77.85h3.15Zm16.2,0h-3.15V77.85h3.15ZM261.5,13.59H241.25l-7.83,10.53V96.75h39.69V21.24H261.5Zm40.23,4.32V13.59H282.47l-6.57,9V42.03h16.92V76.14l-13.32,9V97.11h36.9V17.91ZM256.01,42.75v9.72h-4.77V42.75Zm34.11,33.12V45H276.26V69.75l4.68,6.12Zm-38.88,2.79V68.58h4.77V78.66Zm169.11-.9,3.51-3.96V56.61H388.85V54.72H424.4V28.26h-7.74L405.59,38.52h-2.88L421.07,21.6V15.39H403.34l-14.58,13.5h-2.88l10.98-10.17V14.4H376.43l-8.55,7.92v15.3h6.03l-6.03,5.49V54.72h4.23l-4.23,4.32V82.35h3.06l4.41-4.14,1.8,1.71-9.36,8.73V97.2H392l5.49-6.12,6.48,6.12h20.97V81.81ZM365.72,30.42V14.76H349.79l-9.36,7.38V48.15h3.69Zm-25.29,23.4V74.7h3.24V97.56h22.14V38.79h-7.02Zm53.19,16.47h9.09v.36l-4.23,4.23-4.86-4.32ZM505.85,16.74V13.05h-29.7v3.69H449.33V31.59h8.91l-8.19,4.5V51.84h11.79l5.85-5.31v5.31H498.2l3.96-2.97,3.69,2.97h25.74V43.65l-5.67-3.6,3.96-3.06V33.48H497.3l-4.32,3.42V31.59h39.51V16.74ZM449.96,97.11h23.13V69.3h5.76v1.98h-3.6v6.48h14.67V69.3h2.16v8.46h15.21V71.28h-3.6V69.3h5.76V84.6l-1.98,1.26V79.83H475.25V94.14h25.56v2.97h31.05V53.82h-81.9Zm44.73-8.91h-6.66V85.95h6.66Z" transform="translate(-17.15 -13.05)"/></svg>
|
After Width: | Height: | Size: 2.2 KiB |
1
src/assets/images/cfp/Path 736.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="207.322" height="41.63" viewBox="0 0 207.322 41.63"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M2.3,43.056l5.336,5.152H29.808l5.382-5.152V14.214L29.808,8.74H7.636L2.3,14.214ZM16.054,21.62h5.382V35.6H16.054ZM48.9,48.07H77.05l4.508-4.324v-16.7L77.05,23H61.962V20.378H80.73V8.648H48.99V33.212H66.976v2.806H48.9ZM95.726,47.1v2.3h9.384l12.6-39.33v-2.3H108.33ZM159.16,8.6H132.2V22.448h14.674V24.1L131.79,39.238V48.07h31.372V35.788h-9.8v-.552l9.246-8.464V12.926Zm45.678.184H181.424L176.64,13.57v16.7l3.542,3.266H195.96V36.2h-18.4v11.96h26.082l5.98-5.612V13.57ZM189.658,23.92V20.24h6.3v3.68Z" transform="translate(-2.3 -7.774)"/></svg>
|
After Width: | Height: | Size: 695 B |
1
src/assets/images/cfp/Path 737.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="227.174" height="97.912" viewBox="0 0 227.174 97.912"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M44.022,10.12h-12.7V6.946H14.49V10.12H2.024V43.056H14.49v6.716H31.326V43.056h12.7ZM13.57,21.252h2.76V32.43H13.57ZM32.246,32.43h-2.76V21.252h2.76Zm58.282-4.186H88.136V10.074H76.774V6.716H61.318v3.358H50v18.17H47.518V39.468H52.67l-3.772,5.2v4.968h14.95l4.14-9.062h2.576l4.186,9.062h14.9V44.666l-3.772-5.2h4.646ZM61.042,21.068h2.346v7.176H61.042ZM77,28.244H74.7V21.068H77Zm59.34-3.312h-1.472V18.124h1.242V7.544H110.86v10.58h1.656v6.808H110.86v10.9h1.656l-1.61,9.246v4.692h10.212l1.334-13.938h1.886V49.726h10.534V35.834h1.472ZM94.3,17.618h3.542v.23l-4.554,7.866V40.2H94.76v9.338H109.8V23.276h-3.174v-.184l3.174-5.474V8.05H94.3Zm28.152,7.314V18.124h1.886v6.808ZM102.81,41.492h-1.334V31.97h1.334Zm75.118-2.53V30.5h-15.18V28.842h-4.876l2.346-2.346V19.044h1.38V26.5l2.714,2.714h17.02v-6.3h-10.58V19.044h1.38v2.622h10.442V8.6H168.5V6.578h-15.41V8.6H139.656V21.666H149.73V19.044h1.38v3.864h-10.3v6.3h7.866V30.5H140.76V39.79h4.554l-5.382,6.44v3.542h15.64l5.152-9.982h3.91v9.982h18.078V38.962Zm26.358-11.638H226.6v-4.6h1.61V8.51h-7.59V6.578H209.438V8.51h-6.9V22.816h1.748Zm-18.216,22.4h11.27V45.08h4.094V28.75l-1.472-2.3,1.472-3.22V7.728H186.07Zm8.556-33.4v7.682h-1.288V16.33Zm24.518,1.242V19h-8.05V17.572ZM224.3,38.5l-.828,1.84h-1.012V37.26h5.75V28.612H202.584V37.26h2.208l-2.622,8.05v4.462h9.292l1.38-12.512H213.9V49.772h14.444V38.5Zm-29.67-.644h-1.288V30.636h1.288ZM1.17,104.31H9.3l5.19-9.57h1.02l5.34,9.57h8.04V98.13l-8.7-11.37V76.74H9.51V86.76L1.17,98.13ZM50.31,78.03V76.29H39.63v1.74H31.14v8.49H58.83V78.03Zm7.53,13.92V87.27H48.18l-3.15,3.6-3.18-3.6H32.19v4.68l3.36,3.18-4.26,3.39v5.88h9.03l4.71-4.59,4.68,4.59h9.03V98.52l-4.26-3.39Zm27.24,3.87V88.56h3.21V80.49H85.08V76.47h-9v4.02H72.96v8.07h3.12v7.26H72.42v8.34H88.89V95.82ZM70.11,76.62H63v1.53H61.29v6.72h3.24v.21l-3.48,3.3V99.12h1.32v5.34h8.1V99.12h1.14V89.76l-1.14-.96,1.59-1.47V78.15H70.11Zm49.17,3.18-8.46-3.54H99.21L90.78,79.8v6.87h.78v7.17h26.88V86.67h.84Zm-13.35,1.65,1.65.63h-5.13l1.65-.63Zm-9.6,3.51,2.73-1.14v.51h11.85v-.54l2.79,1.17Zm1.89,3.09h4.29v2.7h-.6V88.53H98.82v1.56l.6.66h-1.2Zm13.47,2.7h-1.2l.63-.66V88.53H108v2.22h-.57v-2.7h4.26ZM92.07,104.37h25.89V94.5H92.07Zm17.76-6.87v.66h-9.54V97.5Zm-9.54,3.75v-.63h9.54v.63Zm31.8-18.45,1.8-1.02V76.86H121.53v6.33h2.76v1.17h-3v6.63h2.67l-2.88,2.91v8.34h1.8l1.41-1.74v3.87h7.8v-4.05h1.77V94.44l-1.77-2.07V90.99h1.83V84.36h-1.83Zm17.01,9.72h-.81V76.86h-7.44V94.32l-.63.21V87.99l-5.01-2.04h-.6v8.43l3,1.11-3.06,1.11v6.93h1.83l3.06-1.02v1.98h8.85V99.57l.81-.27Zm-8.88-5.49V79.41l-4.65-1.98h-.96v7.53l4.98,2.07Zm24.81-6.18,1.26.72h2.19V79.59l-.87-.48.87-.45V76.71h-2.19l-1.26.69-1.26-.69h-2.19v1.95l.87.45-.87.48v1.98h2.19ZM177.24,93.9h1.83V87.63h-.66V76.86h-9.45V81.3h2.82v.6h-2.73v2.31h2.73v.57h-2.73v2.25h2.73v.6H158.31v-.6h2.76V84.78h-2.76v-.57h2.76V81.9h-2.76v-.6h.99l1.77-.48V76.86h-9.36V87.63h-.66v6.33h1.32v2.1H164.4v.15l-1.29.48H151.2v4.71h9.45v.12l-2.28,1.29v1.59h12.18v-3h8.31V96.69h-4.32l2.7-1.14Zm-12.21-7.5,1.26.72h2.19V85.14l-.9-.48.9-.51V82.08h-2.19l-1.26.69-1.26-.69h-2.19v2.07l.9.51-.9.48v1.98h2.19Zm-7.29,6.18v-.63h14.79v.63Zm50.43.99V86.61h.9V77.55h-4.44V76.29h-6.99v1.26h-4.41v7.62h-4.02V83.85l.93.72h2.46V78.96l-3.78-2.46h-4.14l-3.78,2.46v5.61h2.52l.96-.75v1.35h-3.09v19.29h6.12l1.11-1.44,1.23,1.41h3.54V97.71h-5.31v1.11h-.99V96.99h6.3V86.61h.75V104.4h14.43V94.41h-8.52v-.84ZM187.29,82.5l.96.66h-3.03l.9-.66Zm15.69,1.05v.84h-4.02v-.84Zm-.69,6.18h-2.34V88.71h2.34Zm-16.05-.81h2.52v.78h-2.52Zm0,4.02V92.1h2.52v.84Zm16.35,5.34v1.08h-2.64V98.28Z" transform="translate(-1.17 -6.578)"/></svg>
|
After Width: | Height: | Size: 3.6 KiB |
1
src/assets/images/cfp/Path 738.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="368.34" height="56.46" viewBox="0 0 368.34 56.46"><defs><style>.a{fill:#226bb4;}</style></defs><path class="a" d="M91.6,10.62H80.5V8.58H65.86v2.04H56.44V22.5H91.6ZM55.18,38.1v2.88l-1.86-2.22V36.6h2.16V23.46H53.32V20.58l1.74-1.2V9.72H36.7V21.36H40v2.1H36.52V36.6h3.06l-3.54,5.64V59.58h2.28L40,56.52v8.22H53.32V53.4h1.86V64.74H67.6V48.18H79.36v8.94l-1.32,1.14V49.62H68.92v12.6h5.82v2.52h17.4V38.1ZM90.4,36.72V23.94H57.1V36.72ZM69.7,29.76h7.56v1.8H69.7Zm4.86,27.3H72.64v-2.1h1.92Zm83.22-18.6h-7.92v-9.3h7.38V13.38h-7.38V9.18h-13.5v4.2h-2.4v-3h-8.1l-2.94,5.76V29.16h8.7v9.3h-8.76V54.48h8.76V64.92h18.24V54.48h7.92ZM101.8,23.1V43.68h3.3V64.74h16.02V9.6H108.88Zm97.56-3.72h-1.38V8.88h-8.1v10.5h-1.44V9.9h-4.92V27.66h20.64V9.9h-4.8Zm22.5,26.52,1.8-3.36V11.4h-7.08V9.06H208.6l-3.18,4.14V26.7h8.46v6l-2.4-4.26h-6.06V41.7l1.74,3.06-2.22,3.12v17.1h6.84l2.58-4.38,2.34,4.38h7.14V49.8ZM182.14,19.92V9.66h-8.82l-5.7,4.02V29.22h2.7ZM167.62,33.06V46.8h1.74V65.04H182.2V23.7h-2.58Zm15.9,4.26H204.1V29.1H183.52Zm.18,9.06h4.14v1.56h-3.96v7.14h3.96V56.7h-4.2v8.16h19.98V56.7H200.2V55.08h3.36V47.94H200.2v-2.1l3.6-.84V38.76H183.7ZM287.74,12.96l-.9-3.54H273.58v3.54h-1.86V8.82H251.56v4.14H234.52V26.4h17.94V55.5l-1.62,1.8V43.62H238.9l-4.38,5.4V61.86h13.92v3.06h23.28V26.4h18.36V12.96Zm-36.9,29.1V27.84H234.88v8.88l4.08,5.34Zm38.34-14.22h-15.9V42.06H285.1l4.08-5.34Zm-15.9,15.78V61.86h16.2V49.02l-4.32-5.4ZM355.42,13.2H338.86V9.06H316.9V13.2H300.64V56.16H316.9v8.76h21.96V56.16h16.56ZM315.7,27.72h3.6V42.3h-3.6ZM340.06,42.3h-3.6V27.72h3.6Zm44.22-31.32V45.72H398.8l5.58-7.44V10.98Zm.36,38.28V63.78h18.24V49.26Z" transform="translate(-36.04 -8.58)"/></svg>
|
After Width: | Height: | Size: 1.6 KiB |
1
src/assets/images/cfp/Path 740.svg
Normal file
After Width: | Height: | Size: 21 KiB |
1
src/assets/images/cfp/Path_762.svg
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/images/cfp/paper/paper.png
Normal file
After Width: | Height: | Size: 237 KiB |
BIN
src/assets/images/cfp/paper/paper@2x.png
Normal file
After Width: | Height: | Size: 784 KiB |
259
src/assets/scss/CFP/CFP.scss
Normal file
@ -0,0 +1,259 @@
|
||||
@import '../hyperpoint.scss';
|
||||
|
||||
$width-svg-sitcon2021: 341px;
|
||||
$width-svg-sitcon: 244px;
|
||||
$width-svg-topic: 515px;
|
||||
$width-svg-cfp: 368px;
|
||||
$width-svg-date: 207px;
|
||||
$width-svg-location: 227px;
|
||||
$width-svg-news: 188px;
|
||||
|
||||
#cfp-header {
|
||||
padding-left: 20px;
|
||||
padding-right: 20px;
|
||||
padding-top: 126px;
|
||||
|
||||
img.svg {
|
||||
height: auto;
|
||||
}
|
||||
z-index: 1;
|
||||
|
||||
.spot-box {
|
||||
padding-bottom: 260px;
|
||||
|
||||
.spot-box-row:not(:first-child) {
|
||||
margin-top: 32px;
|
||||
}
|
||||
}
|
||||
|
||||
.info-box {
|
||||
.date-location {
|
||||
.date-wrapper {
|
||||
margin-bottom: 48px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.info-box {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
// justify-content: space-around;
|
||||
align-items: flex-end;
|
||||
|
||||
& > * {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.date-location {
|
||||
order: 1;
|
||||
margin-bottom: 72px;
|
||||
flex: 1;
|
||||
}
|
||||
.cfp-title {
|
||||
order: 2;
|
||||
flex: 1;
|
||||
}
|
||||
.cfp-news {
|
||||
order: 3;
|
||||
margin-bottom: 72px;
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Layout for mobile
|
||||
@include md {
|
||||
#cfp-header {
|
||||
.info-box {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: flex-end;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.cfp-title {
|
||||
order: 1;
|
||||
flex: 0 0 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
margin-bottom: 72px;
|
||||
}
|
||||
|
||||
.date-location {
|
||||
order: 2;
|
||||
flex: 0 0 50%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
margin-bottom: 0;
|
||||
.date-wrapper {
|
||||
margin-bottom: 36px;
|
||||
}
|
||||
}
|
||||
|
||||
.cfp-news {
|
||||
order: 3;
|
||||
flex: 0 0 50%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include md {
|
||||
#cfp-header {
|
||||
padding-top: 72px;
|
||||
padding-bottom: 72px;
|
||||
|
||||
.spot-box {
|
||||
padding-bottom: 400px;
|
||||
|
||||
.spot-box-row:not(:first-child) {
|
||||
margin-top: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
.info-box {
|
||||
.cfp-title {
|
||||
margin-bottom: 56px;
|
||||
}
|
||||
.date-location {
|
||||
.date-wrapper {
|
||||
margin-bottom: 36px;
|
||||
}
|
||||
}
|
||||
.cfp-news {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$scale: 0.8;
|
||||
#svg-sitcon2021 {
|
||||
width: $width-svg-sitcon2021 * $scale;
|
||||
}
|
||||
#svg-sitcon {
|
||||
width: $width-svg-sitcon * $scale;
|
||||
}
|
||||
#svg-topic {
|
||||
width: $width-svg-topic * $scale;
|
||||
}
|
||||
#svg-date {
|
||||
width: $width-svg-date * $scale;
|
||||
}
|
||||
#svg-location {
|
||||
width: $width-svg-location * $scale;
|
||||
}
|
||||
#svg-news {
|
||||
width: $width-svg-news * $scale;
|
||||
}
|
||||
#svg-cfp {
|
||||
width: $width-svg-cfp * $scale;
|
||||
}
|
||||
}
|
||||
|
||||
@include sm {
|
||||
#cfp-header {
|
||||
padding-top: 60px;
|
||||
padding-bottom: 60px;
|
||||
|
||||
.spot-box {
|
||||
padding-bottom: 360px;
|
||||
|
||||
.spot-box-row:not(:first-child) {
|
||||
margin-top: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.info-box {
|
||||
.cfp-title {
|
||||
margin-bottom: 56px;
|
||||
}
|
||||
.date-location {
|
||||
.date-wrapper {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
}
|
||||
.cfp-news {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$scale: 0.7;
|
||||
#svg-sitcon2021 {
|
||||
width: $width-svg-sitcon2021 * $scale;
|
||||
}
|
||||
#svg-sitcon {
|
||||
width: $width-svg-sitcon * $scale;
|
||||
}
|
||||
#svg-topic {
|
||||
width: $width-svg-topic * $scale;
|
||||
}
|
||||
#svg-date {
|
||||
width: $width-svg-date * $scale;
|
||||
}
|
||||
#svg-location {
|
||||
width: $width-svg-location * $scale;
|
||||
}
|
||||
#svg-news {
|
||||
width: $width-svg-news * $scale;
|
||||
}
|
||||
#svg-cfp {
|
||||
width: $width-svg-cfp * $scale;
|
||||
}
|
||||
}
|
||||
|
||||
@include xs {
|
||||
#cfp-header {
|
||||
padding-top: 48px;
|
||||
padding-bottom: 48px;
|
||||
|
||||
.spot-box {
|
||||
padding-bottom: 240px;
|
||||
|
||||
.spot-box-row:not(:first-child) {
|
||||
margin-top: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.info-box {
|
||||
.cfp-title {
|
||||
margin-bottom: 32px;
|
||||
}
|
||||
.date-location {
|
||||
.date-wrapper {
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
}
|
||||
.cfp-news {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$scale: 0.45;
|
||||
#svg-sitcon2021 {
|
||||
width: $width-svg-sitcon2021 * $scale;
|
||||
}
|
||||
#svg-sitcon {
|
||||
width: $width-svg-sitcon * $scale;
|
||||
}
|
||||
#svg-topic {
|
||||
width: $width-svg-topic * $scale;
|
||||
}
|
||||
#svg-date {
|
||||
width: $width-svg-date * $scale;
|
||||
}
|
||||
#svg-location {
|
||||
width: $width-svg-location * $scale;
|
||||
}
|
||||
#svg-news {
|
||||
width: $width-svg-news * $scale;
|
||||
}
|
||||
#svg-cfp {
|
||||
width: $width-svg-cfp * $scale;
|
||||
}
|
||||
}
|
34
src/assets/scss/CFP/card.scss
Normal file
@ -0,0 +1,34 @@
|
||||
@import '@/assets/scss/breakpoint.scss';
|
||||
@import '@/assets/scss/color.scss';
|
||||
|
||||
.agenda.card:not(.container) {
|
||||
a.image.container {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
line-height: 0; // prevent background overflow
|
||||
background-color: #ffffff;
|
||||
border-radius: 11px;
|
||||
box-shadow: 0 3px 15px 0 rgba(89, 120, 206, 0.56);
|
||||
|
||||
// smooth transition from hover -> default state
|
||||
will-change: transform;
|
||||
transform: scale(1.0);
|
||||
transition-duration: .25s;
|
||||
|
||||
img {
|
||||
border-radius: 11px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
transform: scale(1.04);
|
||||
transition-duration: .25s;
|
||||
}
|
||||
}
|
||||
|
||||
p.description {
|
||||
line-height: 1.55em;
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
}
|
||||
}
|
16
src/assets/scss/CFP/cfpBackground.scss
Normal file
@ -0,0 +1,16 @@
|
||||
.cfp-background {
|
||||
// image
|
||||
background-image:
|
||||
url('./assets/image/CFPBackground.svg'),
|
||||
url('./assets/image/sitcon-icon.svg');
|
||||
background-position:
|
||||
center center,
|
||||
center 12%;
|
||||
background-repeat: no-repeat,no-repeat;
|
||||
background-size: cover,auto;
|
||||
overflow-y: hidden;
|
||||
height: auto;
|
||||
width: 100vw;
|
||||
|
||||
z-index: -1;
|
||||
}
|
285
src/assets/scss/CFP/cfpSubNew.scss
Normal file
@ -0,0 +1,285 @@
|
||||
//import google font
|
||||
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@500;700;900&display=swap");
|
||||
|
||||
//my variable
|
||||
$color-pale-grey: #f0f7fd;
|
||||
$color-dark-slate-blue: #1f4163;
|
||||
$color-dark-sky-blue: #3d93e9;
|
||||
$color-white: #ffffff;
|
||||
$color-slate-blue: #5f7a95;
|
||||
$color-mid-blue: #226bb4;
|
||||
|
||||
$fontFamily-NotoSansTC: "Noto Sans TC";
|
||||
|
||||
//@mixin
|
||||
@mixin clearFloat() {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
$limitWidth: 80vw;
|
||||
|
||||
//cfp-information <Agenda> component
|
||||
.info {
|
||||
&-container {
|
||||
width: $limitWidth;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
&-section {
|
||||
@include clearFloat();
|
||||
width: $limitWidth;
|
||||
h1 {
|
||||
height: 70px;
|
||||
font-family: $fontFamily-NotoSansTC;
|
||||
font-size: 48px;
|
||||
font-weight: 900;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
line-height: 1.9;
|
||||
letter-spacing: normal;
|
||||
text-align: left;
|
||||
color: $color-mid-blue;
|
||||
margin: 10px 0;
|
||||
}
|
||||
&__content {
|
||||
width: $limitWidth;
|
||||
p {
|
||||
font-size: 18.5px;
|
||||
font-family: $fontFamily-NotoSansTC;
|
||||
font-weight: 500;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
line-height: 2.1;
|
||||
letter-spacing: 0.2px;
|
||||
text-align: left;
|
||||
color: $color-mid-blue;
|
||||
}
|
||||
|
||||
strong {
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
margin: 0;
|
||||
padding: 0 0 0 20px;
|
||||
span {
|
||||
display: inline-block;
|
||||
height: 4px;
|
||||
width: 4px;
|
||||
transform: translate(-200%, -150%);
|
||||
background-color: $color-mid-blue;
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&--sub {
|
||||
width: $limitWidth;
|
||||
h2 {
|
||||
height: 60px;
|
||||
font-family: $fontFamily-NotoSansTC;
|
||||
font-size: 36px;
|
||||
font-weight: 900;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
line-height: 2.2;
|
||||
letter-spacing: normal;
|
||||
text-align: left;
|
||||
color: $color-mid-blue;
|
||||
margin: 10px 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&-kind {
|
||||
//background-color: blueviolet;
|
||||
width: 90vw;
|
||||
margin-top: 45px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-around;
|
||||
@media screen and (max-width: 1200px) {
|
||||
flex-direction: column;
|
||||
}
|
||||
&__itemBox {
|
||||
width: 330px;
|
||||
border-radius: 13px;
|
||||
background-color: $color-mid-blue;
|
||||
padding: 26px 20px 34px 20px;
|
||||
@media screen and (max-width: 1200px) {
|
||||
width: 90%;
|
||||
margin: 20px auto;
|
||||
}
|
||||
&-title {
|
||||
color: $color-white;
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
font-family: $fontFamily-NotoSansTC;
|
||||
font-weight: 900;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
letter-spacing: normal;
|
||||
text-align: center;
|
||||
font-size: 34px;
|
||||
|
||||
}
|
||||
&-text {
|
||||
width: 100%;
|
||||
//height: 172px;
|
||||
margin: 0 auto;
|
||||
text-align: left;
|
||||
|
||||
font-size: 19px;
|
||||
P {
|
||||
color: $color-white;
|
||||
font-family: $fontFamily-NotoSansTC;
|
||||
margin: 15px 0;
|
||||
}
|
||||
strong {
|
||||
font-weight: 900;
|
||||
}
|
||||
}
|
||||
|
||||
// p {
|
||||
// color: $color-white;
|
||||
// font-family: $fontFamily-NotoSansTC;
|
||||
// font-size: 19px;
|
||||
// font-weight: 500;
|
||||
// font-stretch: normal;
|
||||
// font-style: normal;
|
||||
// line-height: 2.1;
|
||||
// letter-spacing: 0.2px;
|
||||
// }
|
||||
//
|
||||
// }
|
||||
}
|
||||
|
||||
|
||||
|
||||
// &__itemBox {
|
||||
// float: left;
|
||||
// padding: 26px 20px 34px 20px;
|
||||
// border-radius: 13px;
|
||||
// background-color: $color-mid-blue;
|
||||
// width: 354px;
|
||||
// height: 230px;
|
||||
// margin: 0 72px 62px 0;
|
||||
|
||||
// &-title {
|
||||
// color: $color-white;
|
||||
// display: inline-block;
|
||||
// text-align: center;
|
||||
// width: 100%;
|
||||
// font-family: $fontFamily-NotoSansTC;
|
||||
// font-weight: 900;
|
||||
// font-stretch: normal;
|
||||
// font-style: normal;
|
||||
// // line-height: 1.94;
|
||||
// letter-spacing: normal;
|
||||
// text-align: center;
|
||||
// //modify
|
||||
// font-size: 34px;
|
||||
// // margin: 0 0px 0px 40px;
|
||||
// }
|
||||
// &-text {
|
||||
// width: 350px;
|
||||
// height: 172px;
|
||||
// margin: 0 auto;
|
||||
|
||||
// text-align: left;
|
||||
|
||||
// p {
|
||||
// color: $color-white;
|
||||
// font-family: $fontFamily-NotoSansTC;
|
||||
// font-size: 19px;
|
||||
// font-weight: 500;
|
||||
// font-stretch: normal;
|
||||
// font-style: normal;
|
||||
// line-height: 2.1;
|
||||
// letter-spacing: 0.2px;
|
||||
// }
|
||||
// strong {
|
||||
// font-weight: 900;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
&-qa {
|
||||
width: 1000px;
|
||||
&__itemBox {
|
||||
border-radius: 29px;
|
||||
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
|
||||
background-color: $color-white;
|
||||
margin: 20px 0;
|
||||
padding: 10px 20px;
|
||||
cursor: pointer;
|
||||
span {
|
||||
font-family: $fontFamily-NotoSansTC;
|
||||
color: $fontColor;
|
||||
font-weight: 900;
|
||||
font-size: 20px;
|
||||
line-height: 42px;
|
||||
}
|
||||
p {
|
||||
display: block;
|
||||
width: 90%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// &-qa {
|
||||
// margin: 30px 0;
|
||||
// padding: 15px 0;
|
||||
// // margin-bottom: 120px;
|
||||
// &__itemBox {
|
||||
// border-radius: 29px;
|
||||
// box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
|
||||
// background-color: $color-white;
|
||||
// margin: 0 0 30px 0;
|
||||
// &-title {
|
||||
// display: inline-block;
|
||||
// width: 1230px;
|
||||
// height: 30px;
|
||||
// padding: 8px 41px 11px 23px;
|
||||
|
||||
// font-family: $fontFamily-NotoSansTC;
|
||||
// font-size: 24px;
|
||||
// font-weight: 900;
|
||||
// font-stretch: normal;
|
||||
// font-style: normal;
|
||||
// line-height: 1.5;
|
||||
// letter-spacing: normal;
|
||||
// text-align: left;
|
||||
// color: $color-mid-blue;
|
||||
// }
|
||||
|
||||
// &-input {
|
||||
// position: absolute;
|
||||
// opacity: 0;
|
||||
// cursor: pointer;
|
||||
// }
|
||||
|
||||
// &-input:checked ~ &-text {
|
||||
// display: block;
|
||||
// width: 94%;
|
||||
// margin: 0 auto;
|
||||
// padding-bottom: 20px;
|
||||
// }
|
||||
|
||||
// &-text {
|
||||
// display: none;
|
||||
// }
|
||||
|
||||
// &-checkmark {
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
}
|
682
src/assets/scss/CFP/cfp_introduction.scss
Normal file
@ -0,0 +1,682 @@
|
||||
// font
|
||||
$fontFamily: 'Noto Sans TC', sans-serif;
|
||||
$fontStyle: normal;
|
||||
$light-blue: #3D93E9;
|
||||
$fontColor: #226bb4;
|
||||
$buttonHoverColor: #ffffff;
|
||||
@mixin Font() {
|
||||
font-family: $fontFamily;
|
||||
}
|
||||
@mixin hyperlinkFont() {
|
||||
text-decoration: underline;
|
||||
}
|
||||
// font size
|
||||
$h1FontSize: 30px;
|
||||
$h2FontSize: 24px;
|
||||
$h3FontSize: 16px;
|
||||
$contextFontSize: 13px;
|
||||
$buttonFontSize: 24px;
|
||||
|
||||
$mh1FontSize: 26px;
|
||||
$mh2FontSize: 20px;
|
||||
$mh3FontSize: 14px;
|
||||
$mcontextFontSize: 14px;
|
||||
$mbuttonFontSize: 18px;
|
||||
$hyperlinkFontSize: 14px;
|
||||
|
||||
$enlargeFontSize: 55px;
|
||||
$subFontSize: 30px;
|
||||
// letter spacing
|
||||
$titleLetterSpace: 0;
|
||||
$contextLetterSpace: 0.2px;
|
||||
$buttonLetterSpace: 0;
|
||||
$hyperlinkLetterSpace: 0;
|
||||
|
||||
// background
|
||||
$buttonHoverBg: #226BB4;
|
||||
|
||||
#cfp {
|
||||
.introduction-container {
|
||||
overflow-x: hidden;
|
||||
overflow-y: hidden;
|
||||
margin: -8px;
|
||||
position:relative;
|
||||
}
|
||||
|
||||
.introduction {
|
||||
// flex
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: left;
|
||||
// font
|
||||
@include Font;
|
||||
color: $fontColor;
|
||||
// size
|
||||
margin-left: 15%;
|
||||
margin-top: 50%;
|
||||
|
||||
@media screen and(max-width: 414px) {
|
||||
width:100%;
|
||||
}
|
||||
}
|
||||
|
||||
.about-section {
|
||||
// font
|
||||
font-size: $contextFontSize;
|
||||
letter-spacing: $contextLetterSpace;
|
||||
line-height: 42px;
|
||||
width:90%;
|
||||
|
||||
@media screen and(max-width: 414px) {
|
||||
font-size: $mcontextFontSize;
|
||||
width:160%;
|
||||
}
|
||||
}
|
||||
|
||||
.discuss-section {
|
||||
font-size: $contextFontSize;
|
||||
letter-spacing: $contextLetterSpace;
|
||||
line-height: 42px;
|
||||
|
||||
@media screen and(max-width: 414px) {
|
||||
font-size: $mcontextFontSize;
|
||||
width:80%;
|
||||
}
|
||||
}
|
||||
|
||||
.topic-intro {
|
||||
// size
|
||||
margin-top: 130px;
|
||||
// font
|
||||
font-size: $contextFontSize;
|
||||
letter-spacing: $contextLetterSpace;
|
||||
line-height: 42px;
|
||||
|
||||
@media screen and(max-width: 414px) {
|
||||
margin-top: 60%;
|
||||
width: 110%;
|
||||
}
|
||||
}
|
||||
|
||||
.last-part {
|
||||
// size
|
||||
margin-top: 70px;
|
||||
height: 325px;
|
||||
// font
|
||||
font-size: $contextFontSize;
|
||||
letter-spacing: $contextLetterSpace;
|
||||
line-height: 42px;
|
||||
|
||||
@media screen and(max-width: 414px) {
|
||||
margin-top: 30%;
|
||||
width: 70%;
|
||||
margin-bottom: 30%;
|
||||
}
|
||||
}
|
||||
|
||||
.buttons {
|
||||
// font
|
||||
color: $fontColor;
|
||||
font-size: $buttonFontSize;
|
||||
font-weight: 900;
|
||||
letter-spacing: $buttonLetterSpace;
|
||||
line-height: 30px;
|
||||
// size
|
||||
margin-right: 37px;
|
||||
padding: 12px 15px 12px 15px;
|
||||
// box
|
||||
background-color: #ffffff;
|
||||
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
|
||||
transition-duration: 0.2s;
|
||||
border: none;
|
||||
border-radius: 8px;
|
||||
// display
|
||||
display: inline-block;
|
||||
|
||||
position: relative;
|
||||
z-index: 5;
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
font-size: $mbuttonFontSize;
|
||||
font-weight: 900;
|
||||
letter-spacing: 0px;
|
||||
color: $fontColor;
|
||||
text-align: center;
|
||||
opacity: 1;
|
||||
border-radius: 6px;
|
||||
padding: 10px 8px 10px 8px;
|
||||
margin-right: 15px;
|
||||
margin-top: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.button-post {
|
||||
// display
|
||||
display: inline;
|
||||
// size
|
||||
margin-left: 40px;
|
||||
margin-top: -20px;
|
||||
|
||||
z-index: 2;
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
width: 414px;
|
||||
margin-left: 0px;
|
||||
}
|
||||
}
|
||||
|
||||
.buttons:hover {
|
||||
// box
|
||||
background-color: $buttonHoverBg;
|
||||
box-shadow: 0 0 15px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.19);
|
||||
// font
|
||||
h3 {
|
||||
color: $buttonHoverColor;
|
||||
}
|
||||
}
|
||||
|
||||
.date {
|
||||
// display
|
||||
display: inline;
|
||||
// size
|
||||
margin-right: 35px;
|
||||
// align
|
||||
vertical-align: bottom;
|
||||
line-height: 30px;
|
||||
|
||||
@media screen and(max-width:414px){
|
||||
font-size: 30px;
|
||||
margin-right: 10px;
|
||||
line-height: 50px;
|
||||
vertical-align:middle;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
h1, h2, h3, p, span {
|
||||
font-family: $fontFamily;
|
||||
color: $fontColor;
|
||||
}
|
||||
|
||||
h1 {
|
||||
// font
|
||||
font-size: $h1FontSize;
|
||||
line-height: 70px;
|
||||
font-weight: 900;
|
||||
letter-spacing: $titleLetterSpace;
|
||||
|
||||
.enlarge {
|
||||
font-size: $enlargeFontSize;
|
||||
@media screen and (max-width: 414px) {
|
||||
line-height: 80px;
|
||||
}
|
||||
}
|
||||
|
||||
.sub {
|
||||
font-size: $subFontSize;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
line-height: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.right {
|
||||
text-align: left;
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
text-align: right;
|
||||
margin-right: 30%;
|
||||
}
|
||||
}
|
||||
|
||||
h2 {
|
||||
// font
|
||||
font-size: $h2FontSize;
|
||||
letter-spacing: $titleLetterSpace;
|
||||
font-weight: 900;
|
||||
line-height: 70px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
// Font
|
||||
font-size: $h3FontSize;
|
||||
letter-spacing: $titleLetterSpace;
|
||||
font-weight: 900;
|
||||
line-height: 15px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
.about-section > .context {
|
||||
margin-right: 50%;
|
||||
}
|
||||
|
||||
.topic-intro > .context {
|
||||
margin-right: 30%;
|
||||
}
|
||||
|
||||
.context {
|
||||
// font
|
||||
font-size: $contextFontSize;
|
||||
line-height: 30px;
|
||||
letter-spacing: $contextLetterSpace;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.detail {
|
||||
// display
|
||||
display: inline;
|
||||
// font
|
||||
font-size: $contextFontSize;
|
||||
line-height: 20px;
|
||||
letter-spacing: $contextLetterSpace;
|
||||
font-weight: normal;
|
||||
// align
|
||||
vertical-align: bottom;
|
||||
// size
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
margin-right: 25%;
|
||||
line-height: 35px;
|
||||
font-size: $mcontextFontSize;
|
||||
}
|
||||
}
|
||||
|
||||
.context-span {
|
||||
// font
|
||||
font-size: $contextFontSize;
|
||||
font-weight: 900;
|
||||
letter-spacing: $contextLetterSpace;
|
||||
line-height: 42px;
|
||||
}
|
||||
|
||||
.context-hyperlink {
|
||||
// font
|
||||
font-size: $hyperlinkFontSize;
|
||||
letter-spacing: $hyperlinkLetterSpace;
|
||||
color: $light-blue;
|
||||
font-weight: normal;
|
||||
line-height: 42px;
|
||||
}
|
||||
|
||||
p.tag {
|
||||
// font
|
||||
font-size: 14px;
|
||||
line-height: 15px;
|
||||
letter-spacing: 0;
|
||||
font-weight: 900;
|
||||
// align
|
||||
text-align: center;
|
||||
margin-top: 0px;
|
||||
margin-bottom: 5px;
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
font-size: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
p.tag.sub {
|
||||
font-size: 12px;
|
||||
line-height: 10px;
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
font-size: 12px;
|
||||
margin-top: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
p.small-tag {
|
||||
margin-block-start: 0em;
|
||||
margin-block-end: 0.5em;
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
line-height:12px;
|
||||
font-size: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
//NOTE: the size should be smaller, this temporary size is provided to support min font size of browser
|
||||
.cfp-img {
|
||||
// box
|
||||
border-radius: 4px;
|
||||
margin-bottom: 12px;
|
||||
// size
|
||||
width: 175px;
|
||||
height: 118px;
|
||||
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
|
||||
|
||||
@media screen and (max-width:414px){
|
||||
border-radius: 2px;
|
||||
margin-bottom: 12px;
|
||||
width: 111px;
|
||||
height: 75px;
|
||||
box-shadow: 0px 1px 6px rgba(89, 120, 206, 0.56);
|
||||
}
|
||||
}
|
||||
|
||||
.thumbnails {
|
||||
// box
|
||||
margin-left: -25.5px;
|
||||
|
||||
@media screen and (max-width:414px){
|
||||
margin-left: -9px;
|
||||
}
|
||||
}
|
||||
|
||||
.img-table {
|
||||
// box
|
||||
border-style: none;
|
||||
border-spacing: 25.5px 0px; //25.5
|
||||
|
||||
@media screen and (max-width: 414px) {
|
||||
width: 87%;
|
||||
align-content: center;
|
||||
border-spacing: 0px 0px;
|
||||
}
|
||||
}
|
||||
|
||||
.td-width {
|
||||
vertical-align: top;
|
||||
|
||||
@media screen and (max-width: 414px){
|
||||
text-align: center;
|
||||
width: 123px;
|
||||
}
|
||||
}
|
||||
|
||||
.tag-table{
|
||||
// box
|
||||
border-style: none;
|
||||
border-spacing: 0px 0px; //25.5
|
||||
// size
|
||||
width: 500px;
|
||||
}
|
||||
|
||||
.first-box {
|
||||
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
|
||||
border-radius: 60px;
|
||||
transform: rotate(15deg);
|
||||
margin-bottom: -900px;
|
||||
margin-left: -200px;
|
||||
margin-top: -300px;
|
||||
z-index: 1;
|
||||
|
||||
@media screen and(max-width: 960px){
|
||||
border-radius: 40px;
|
||||
margin-bottom: -800px;
|
||||
transform: rotate(13deg);
|
||||
}
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
border-radius: 27px;
|
||||
margin-top: 200px;
|
||||
margin-bottom: -870px;
|
||||
margin-left: -150px;
|
||||
transform:scale(1);
|
||||
transform: rotate(12deg);
|
||||
}
|
||||
}
|
||||
|
||||
.second-box {
|
||||
box-shadow: 0 3px 12px 0 rgba(89, 120, 206, 0.56);
|
||||
border-radius: 32px;
|
||||
transform: rotate(15deg);
|
||||
margin-top: 270px;
|
||||
margin-bottom: -1900px;
|
||||
margin-left: -700px;
|
||||
z-index: 1;
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
box-shadow: -10px 30px 30px 0 rgba(135, 152, 199, 0.56);
|
||||
margin-top: 5px;
|
||||
margin-left: -415px;
|
||||
margin-bottom: -1560px;
|
||||
transform: rotate(12deg) scale(0.6);
|
||||
z-index: 2;
|
||||
}
|
||||
}
|
||||
|
||||
.hiden-box {
|
||||
position: absolute;
|
||||
margin-top: 1200px;
|
||||
margin-left:-300px;
|
||||
margin-bottom: 0px;
|
||||
z-index: -1;
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: 1400px;
|
||||
transform: rotate(12deg);
|
||||
z-index: -1;
|
||||
}
|
||||
}
|
||||
|
||||
.box-back {
|
||||
z-index: 2;
|
||||
|
||||
@media screen and(max-width: 960px) {
|
||||
margin-top: -10%;
|
||||
margin-left: -10%;
|
||||
}
|
||||
|
||||
@media screen and(max-width: 414px) {
|
||||
margin-top: -10%;
|
||||
margin-left: -10%;
|
||||
}
|
||||
}
|
||||
|
||||
.box-back2 {
|
||||
z-index: 2;
|
||||
|
||||
@media screen and(max-width: 960px) {
|
||||
margin-top: -10%;
|
||||
margin-left: -10%;
|
||||
}
|
||||
|
||||
@media screen and(max-width: 414px) {
|
||||
margin-top: -10%;
|
||||
margin-left: -10%;
|
||||
}
|
||||
}
|
||||
|
||||
.SITCON-text-path {
|
||||
transform: scale(0.7);
|
||||
padding-left: 300px;
|
||||
margin-right: -550px;
|
||||
margin-bottom: -600px;
|
||||
padding-top: 300px;
|
||||
z-index: 2;
|
||||
@media screen and(max-width: 414px) {
|
||||
z-index: -2;
|
||||
}
|
||||
}
|
||||
|
||||
.des-text-path {
|
||||
//background: url(../../assets/images/cfp/Path_762.svg) no-repeat;
|
||||
transform: scale(0.7);
|
||||
margin-bottom: -565px;
|
||||
padding-top: 65px;
|
||||
margin-left: -350px;
|
||||
z-index: 2;
|
||||
|
||||
@media screen and(max-width: 960px){
|
||||
margin-left: -150px;
|
||||
margin-bottom: -545px;
|
||||
}
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
//background-image: url(../../assets/images/cfp/Mobile/Path_763.svg);
|
||||
margin-top: 40px;
|
||||
margin-left: -80px;
|
||||
transform: scale(0.9);
|
||||
background: url(./assets/images/cfp/Mobile/Path_763.svg) no-repeat;
|
||||
padding-top: -565px;
|
||||
margin-bottom: -665px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.des-blue-bar {
|
||||
transform: rotate(15deg);
|
||||
margin-left: -400px;
|
||||
margin-top: 360px;
|
||||
margin-bottom: -1360px;
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-left: -600px;
|
||||
margin-top: 160px;
|
||||
transform: rotate(12deg) scale(0.6);
|
||||
}
|
||||
}
|
||||
|
||||
.paper-image {
|
||||
transform: scale(0.75);
|
||||
margin-top: -240px;
|
||||
margin-left: 270px;
|
||||
margin-bottom: -710px;
|
||||
z-index: 1;
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
z-index: 3;
|
||||
margin-top: -890px;
|
||||
margin-left: -150px;
|
||||
margin-bottom: -1030px;
|
||||
transform: rotate(-7deg) scale(0.35);
|
||||
}
|
||||
}
|
||||
|
||||
.background {
|
||||
//background: url(../../assets/images/cfp/Background.svg) no-repeat;
|
||||
//content: url("../../assets/images/cfp/Background.svg") no-repeat;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width:200%;
|
||||
//max-height: 2000px;
|
||||
margin-left: -69%;
|
||||
margin-top: -30%;
|
||||
text-align: center;
|
||||
z-index: -2;
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
//content: url() no-repeat;//../../assets/images/cfp/Mobile/Mobile-background.svg
|
||||
//visibility: hidden;
|
||||
background: url(./assets/images/cfp/Mobile/Mobile-background.svg) !important;
|
||||
object-position: -99999px 99999px;
|
||||
overflow: hidden;
|
||||
margin-left: -20%;
|
||||
margin-top: -20%;
|
||||
z-index: -1;
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
.ellipse {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
margin-top: -75%;
|
||||
margin-left: -14%;
|
||||
align-content: center;
|
||||
transform: scale(0.31);
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: -20%;
|
||||
transform: scale(0.60);
|
||||
}
|
||||
}
|
||||
|
||||
.sitcon-icon {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
margin-top: -98%;
|
||||
margin-left: -14%;
|
||||
align-content: center;
|
||||
transform: scale(0.14);
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: -42%;
|
||||
transform: scale(0.3);
|
||||
}
|
||||
}
|
||||
|
||||
.sitcon-pic-2021 {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
margin-top: -49%;
|
||||
margin-left: -14%;
|
||||
align-content: center;
|
||||
transform: scale(0.18);
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: -40%;
|
||||
transform: scale(0.5);
|
||||
}
|
||||
}
|
||||
|
||||
.sitcon-title-zh {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
margin-top: -46%;
|
||||
margin-left: -14%;
|
||||
align-content: center;
|
||||
transform: scale(0.11);
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: -30%;
|
||||
transform: scale(0.4);
|
||||
}
|
||||
}
|
||||
|
||||
.sitcon-topic {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
margin-top: -45%;
|
||||
margin-left: -14%;
|
||||
align-content: center;
|
||||
transform: scale(0.23);
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: -20%;
|
||||
transform: scale(0.65);
|
||||
}
|
||||
}
|
||||
|
||||
.sitcon-date {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
margin-top: -31%;
|
||||
margin-left: -44%;
|
||||
transform: scale(0.13);
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: 65%;
|
||||
transform: scale(0.35);
|
||||
}
|
||||
}
|
||||
|
||||
.sitcon-place {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
margin-top: -36.5%;
|
||||
margin-left: -44%;
|
||||
transform: scale(0.13);
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: 73%;
|
||||
margin-left: -40%;
|
||||
transform: scale(0.45);
|
||||
}
|
||||
}
|
||||
|
||||
.sitcon-qeury {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
margin-top: -18.5%;
|
||||
margin-left: -14%;
|
||||
transform: scale(0.2);
|
||||
|
||||
@media screen and(max-width: 414px){
|
||||
margin-top: 50%;
|
||||
transform: scale(0.6);
|
||||
}
|
||||
}
|
126
src/assets/scss/CFP/schedule.scss
Normal file
@ -0,0 +1,126 @@
|
||||
@import '@/assets/scss/breakpoint.scss';
|
||||
@import '@/assets/scss/color.scss';
|
||||
@import '@/assets/scss/font.scss';
|
||||
|
||||
$fontFamily: Noto Sans CJK TC, monospace;
|
||||
|
||||
#info-schedule {
|
||||
max-width: 80vw;
|
||||
margin: 0 auto;
|
||||
|
||||
font-family: $fontFamily;
|
||||
font-size: 20px;
|
||||
line-height: 2.1em;
|
||||
letter-spacing: 0.2px;
|
||||
color: $mid-blue;
|
||||
|
||||
* {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $mid-blue;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 48px;
|
||||
line-height: 70px;
|
||||
margin: 15px 0;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 36px;
|
||||
line-height: 70px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 24px;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
ul {
|
||||
li {
|
||||
&::before {
|
||||
content: "•";
|
||||
margin: 2px;
|
||||
line-height: 42px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
section:not(:last-of-type), article:not(:last-of-type) {
|
||||
margin-bottom: 55px;
|
||||
}
|
||||
|
||||
#theme-example {
|
||||
> p {
|
||||
padding: 20px 0;
|
||||
}
|
||||
}
|
||||
|
||||
#theme-example ~ p {
|
||||
padding: 20px 0;
|
||||
}
|
||||
|
||||
#presentation-example, #espresso-example {
|
||||
> p {
|
||||
padding-bottom: 40px;
|
||||
}
|
||||
|
||||
.agenda.card.container {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, 1fr);
|
||||
column-gap: 62px;
|
||||
row-gap: 40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#code-of-conduct a {
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
|
||||
@include md {
|
||||
#info-schedule {
|
||||
margin: 0 auto;
|
||||
font-size: 14px;
|
||||
|
||||
h1, h2 {
|
||||
font-size: 26px;
|
||||
line-height: 2.69em;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 20px;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#schedule {
|
||||
margin-bottom: unset;
|
||||
}
|
||||
|
||||
#theme-example ~ p {
|
||||
padding: 15px 0;
|
||||
}
|
||||
|
||||
#presentation-example, #espresso-example {
|
||||
margin-bottom: unset;
|
||||
.agenda.card.container {
|
||||
grid-template-columns: repeat(2, 1fr);
|
||||
column-gap: 42px;
|
||||
row-gap: 30px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
46
src/assets/scss/CFP/topic.scss
Normal file
@ -0,0 +1,46 @@
|
||||
@import '@/assets/scss/breakpoint.scss';
|
||||
@import '@/assets/scss/color.scss';
|
||||
|
||||
.topic {
|
||||
padding: 30px 0;
|
||||
|
||||
display: grid;
|
||||
grid-template-columns: 256px min-content 1fr;
|
||||
|
||||
h3.title {
|
||||
line-height: 1.67em;
|
||||
}
|
||||
|
||||
.divider {
|
||||
width: 0;
|
||||
height: 100%;
|
||||
border-left: 2px $mid-blue solid;
|
||||
margin: 0 37px;
|
||||
}
|
||||
|
||||
.title, .description {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
|
||||
@include md {
|
||||
.topic {
|
||||
grid-template-columns: 1fr;
|
||||
padding: 20px 0;
|
||||
|
||||
h3.title {
|
||||
br[data-delimiter=":"] {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.divider {
|
||||
width: 100%;
|
||||
height: 0;
|
||||
border-bottom: none;
|
||||
border-top: 2px $mid-blue solid;
|
||||
margin: 15px 0;
|
||||
}
|
||||
}
|
||||
}
|
35
src/assets/scss/breakpoint.scss
Normal file
@ -0,0 +1,35 @@
|
||||
$max-width-0: 1225px;
|
||||
$max-width-1: 1175px;
|
||||
$max-width-2: 1030px;
|
||||
$max-width-3: 646px;
|
||||
$max-width-4: 415px;
|
||||
|
||||
@mixin xs {
|
||||
@media (max-width: $max-width-4) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin sm {
|
||||
@media (max-width: $max-width-3) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin md {
|
||||
@media (max-width: $max-width-2) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin lg {
|
||||
@media (max-width: $max-width-1) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin xl {
|
||||
@media (max-width: $max-width-0) {
|
||||
@content;
|
||||
}
|
||||
}
|
2
src/assets/scss/color.scss
Normal file
@ -0,0 +1,2 @@
|
||||
$mid-blue: #226bb4;
|
||||
$white: white;
|
2
src/assets/scss/font.scss
Normal file
@ -0,0 +1,2 @@
|
||||
// import web font
|
||||
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@500;700;900&display=swap');
|
145
src/assets/scss/footer.scss
Normal file
@ -0,0 +1,145 @@
|
||||
@import './breakpoint.scss';
|
||||
|
||||
// varible declare
|
||||
$fontColor: white;
|
||||
$backgroundColor: #1f4163;
|
||||
$fontFamily: Noto Sans CJK TC, monospace;
|
||||
|
||||
@mixin fontSize() {
|
||||
font-size: 14pt;
|
||||
line-height: 2;
|
||||
@include xl {
|
||||
}
|
||||
@include lg {
|
||||
}
|
||||
@include md {
|
||||
}
|
||||
@include sm {
|
||||
font-size: 14pt;
|
||||
}
|
||||
@include xs {
|
||||
font-size: 12pt;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin iconSize() {
|
||||
font-size: 2.2em;
|
||||
margin-right: 36px;
|
||||
@include xl {
|
||||
font-size: 2.1em;
|
||||
margin-right: 20px;
|
||||
}
|
||||
@include lg {
|
||||
}
|
||||
@include md {
|
||||
font-size: 1.8em;
|
||||
}
|
||||
@include sm {
|
||||
}
|
||||
@include xs {
|
||||
font-size: 1.6em;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin footerLayout() {
|
||||
// flex
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
& > .footer-right {
|
||||
margin-left: 100px;
|
||||
}
|
||||
|
||||
@include md {
|
||||
flex-direction: column;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
// height: 320px;
|
||||
& > .footer-right {
|
||||
margin-left: 0;
|
||||
}
|
||||
& > * {
|
||||
margin-left: 0;
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
.footer-left {
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
.footer-right {
|
||||
padding-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@include xs {
|
||||
& > * {
|
||||
width: 90%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.footer-container {
|
||||
background: $backgroundColor;
|
||||
// position
|
||||
// position: absolute;
|
||||
// bottom: 0;
|
||||
// left: 0;
|
||||
margin-top: auto;
|
||||
|
||||
// size
|
||||
width: 100vw;
|
||||
padding-top: 45px;
|
||||
padding-bottom: 45px;
|
||||
|
||||
.footer-left {
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
//margin-left: 100px;
|
||||
|
||||
.footer-brand {
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
}
|
||||
|
||||
.footer-right {
|
||||
display: inline-flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
padding-bottom: 24px;
|
||||
//margin-left: 100px;
|
||||
|
||||
.footer-context {
|
||||
margin-bottom: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
// layout
|
||||
@include footerLayout;
|
||||
}
|
||||
|
||||
.footer-community-icon {
|
||||
.community-icon {
|
||||
@include iconSize;
|
||||
color: $fontColor;
|
||||
}
|
||||
.community-icon:first {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.footer-context {
|
||||
@include fontSize;
|
||||
font-family: $fontFamily;
|
||||
color: $fontColor;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.footer-font-block {
|
||||
// display flex
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
// size
|
||||
width: auto;
|
||||
}
|
29
src/assets/scss/hyperpoint.scss
Normal file
@ -0,0 +1,29 @@
|
||||
// There are breakpoints used by hyperbola
|
||||
$w1366: 1366px;
|
||||
$w1024: 1024px;
|
||||
$w768: 768px;
|
||||
$w414: 414px;
|
||||
|
||||
@mixin lg {
|
||||
@media screen and (max-width: $w1366 - 1px) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin md {
|
||||
@media screen and (max-width: $w1024 - 1px) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin sm {
|
||||
@media screen and (max-width: $w768 - 1px) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin xs {
|
||||
@media screen and (max-width: $w414 - 1px) {
|
||||
@content;
|
||||
}
|
||||
}
|
43
src/assets/scss/main.scss
Normal file
@ -0,0 +1,43 @@
|
||||
// global
|
||||
@import './reset.scss';
|
||||
@import './variable.scss';
|
||||
@import './color.scss';
|
||||
@import './util.scss';
|
||||
|
||||
// components
|
||||
@import './footer.scss';
|
||||
@import './CFP/cfp_introduction.scss';
|
||||
@import './CFP/CFP.scss';
|
||||
@import './CFP/cfpSubNew.scss';
|
||||
@import "./news.scss";
|
||||
|
||||
.sitcon-burnfont {
|
||||
color: $mid-blue;
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
.link {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
body {
|
||||
width: 100vw;
|
||||
position: relative;
|
||||
overflow-x: hidden;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: 100vh;
|
||||
font-size: 14pt;
|
||||
margin:0;
|
||||
}
|
||||
|
||||
#app {
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
overflow-x: hidden;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 0.66em;
|
||||
}
|
316
src/assets/scss/news.scss
Normal file
@ -0,0 +1,316 @@
|
||||
@import './hyperpoint.scss';
|
||||
@import './color.scss';
|
||||
|
||||
// desktop mode
|
||||
#news-header {
|
||||
padding: 72px 280px;
|
||||
|
||||
.top-bar {
|
||||
position: relative;
|
||||
// background: red; // debug
|
||||
height: 60px;
|
||||
|
||||
.return-wrapper {
|
||||
// location
|
||||
position: absolute;
|
||||
left: -30px;
|
||||
bottom: -4px;
|
||||
|
||||
.shape-wrapper {
|
||||
background: $white;
|
||||
border-radius: 12px;
|
||||
-webkit-box-shadow: -18px 18px 0px -6px $mid-blue,
|
||||
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
|
||||
-moz-box-shadow: -18px 18px 0px -6px $mid-blue,
|
||||
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
|
||||
box-shadow: -18px 18px 0px -6px $mid-blue,
|
||||
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
|
||||
|
||||
@keyframes jump {
|
||||
0% {position: relative;bottom: 0px;}
|
||||
50% {position: relative;bottom: 20px;}
|
||||
100% {position: relative;bottom: 0px;}
|
||||
}
|
||||
|
||||
&:hover {
|
||||
animation: jump .6s ease-in 0s infinite reverse;
|
||||
|
||||
}
|
||||
|
||||
.text-wrapper {
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
line-height: 68px;
|
||||
text-align: center;
|
||||
color: $mid-blue;
|
||||
font-weight: bold;
|
||||
font-size: 16pt;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.contribute-wrapper {
|
||||
display: none; // display in mobile
|
||||
}
|
||||
|
||||
.title-wrapper {
|
||||
.svg-cfp-news {
|
||||
height: 60px;
|
||||
width: auto;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.cfp-body {
|
||||
padding: 40px 48px;
|
||||
margin-top: 54px;
|
||||
border-radius: 24px;
|
||||
|
||||
color: $white;
|
||||
background: $mid-blue;
|
||||
|
||||
font-size: 14pt;
|
||||
font-weight: bold;
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
|
||||
.spot-wrapper {
|
||||
margin-bottom: 2.25em;
|
||||
|
||||
h1 {
|
||||
font-size: 26pt;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
.countdown {
|
||||
line-height: 1.5;
|
||||
}
|
||||
}
|
||||
|
||||
.time-wrapper {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: flex-start;
|
||||
|
||||
h2 {
|
||||
height: 24pt;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1.44em;
|
||||
}
|
||||
|
||||
.tilde-wrapper {
|
||||
margin-right: 0.85em;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include lg {
|
||||
#news-header {
|
||||
padding-left: 120px;
|
||||
padding-right: 120px;
|
||||
}
|
||||
}
|
||||
|
||||
// mobile mode
|
||||
@include md {
|
||||
#news-header {
|
||||
font-size: 14pt;
|
||||
padding: 72px 100px;
|
||||
|
||||
.top-bar {
|
||||
position: initial;
|
||||
height: 5em;
|
||||
border-radius: 2.5em;
|
||||
padding-left: 2.5em;
|
||||
padding-right: 2.5em;
|
||||
|
||||
background: $white;
|
||||
-webkit-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
|
||||
-moz-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
|
||||
box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
|
||||
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
|
||||
.return-wrapper {
|
||||
// location
|
||||
position: initial;
|
||||
flex: 1;
|
||||
|
||||
.shape-wrapper {
|
||||
background: $white;
|
||||
border-radius: 12px;
|
||||
-webkit-box-shadow: -13px 13px 0px -6px $mid-blue,
|
||||
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
|
||||
-moz-box-shadow: -13px 13px 0px -6px $mid-blue,
|
||||
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
|
||||
box-shadow: -13px 13px 0px -6px $mid-blue,
|
||||
0px 0px 10px 0px rgba(0, 0, 0, 0.2);
|
||||
|
||||
.text-wrapper {
|
||||
width: 3em;
|
||||
height: 3em;
|
||||
line-height: 3em;
|
||||
text-align: center;
|
||||
color: $mid-blue;
|
||||
font-weight: bold;
|
||||
font-size: 1em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.title-wrapper {
|
||||
flex: 1;
|
||||
.svg-cfp-news {
|
||||
height: 2.25em;
|
||||
width: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.contribute-wrapper {
|
||||
display: initial;
|
||||
flex: 1;
|
||||
text-align: end;
|
||||
|
||||
.btn-contribute {
|
||||
display: inline-block;
|
||||
border-radius: 6px;
|
||||
background: $mid-blue;
|
||||
color: $white;
|
||||
font-weight: 900;
|
||||
padding: 0.5em;
|
||||
font-size: 1.2em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.cfp-body {
|
||||
padding-top: 2em;
|
||||
padding-left: 2em;
|
||||
padding-right: 2em;
|
||||
padding-bottom: 3.5em;
|
||||
margin-top: 54px;
|
||||
border-radius: 24px;
|
||||
|
||||
color: $white;
|
||||
background: $mid-blue;
|
||||
font-weight: bold;
|
||||
font-size: 1em;
|
||||
|
||||
.spot-wrapper {
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
margin-bottom: 2.25em;
|
||||
}
|
||||
|
||||
.time-wrapper {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
h2 {
|
||||
height: initial;
|
||||
}
|
||||
p {
|
||||
font-size: 1.25em;
|
||||
}
|
||||
|
||||
.start-time-wrapper {
|
||||
h2,
|
||||
p {
|
||||
margin-bottom: 1.25em;
|
||||
}
|
||||
}
|
||||
|
||||
.end-time-wrapper {
|
||||
h2 {
|
||||
margin-bottom: 1.25em;
|
||||
}
|
||||
}
|
||||
|
||||
.tilde-wrapper {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@include sm {
|
||||
#news-header {
|
||||
font-size: 12pt;
|
||||
padding: 60px 40px;
|
||||
|
||||
.cfp-body {
|
||||
font-size: 14pt;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// a 540px break point will be better = =
|
||||
@media screen and (max-width: 539px) {
|
||||
#news-header {
|
||||
font-size: 10pt;
|
||||
padding: 36px 18px;
|
||||
|
||||
.top-bar {
|
||||
height: 4em;
|
||||
border-radius: 2em;
|
||||
padding-left: 1.66em;
|
||||
padding-right: 1em;
|
||||
-webkit-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
|
||||
-moz-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
|
||||
box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
|
||||
|
||||
.return-wrapper {
|
||||
.shape-wrapper {
|
||||
.text-wrapper {
|
||||
width: 2.4em;
|
||||
height: 2.4em;
|
||||
line-height: 2.4em;
|
||||
text-align: center;
|
||||
color: $mid-blue;
|
||||
font-weight: bold;
|
||||
font-size: 1em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.title-wrapper {
|
||||
flex: 1;
|
||||
.svg-cfp-news {
|
||||
height: 1.85em;
|
||||
width: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.contribute-wrapper {
|
||||
display: initial;
|
||||
flex: 1;
|
||||
text-align: end;
|
||||
|
||||
.btn-contribute {
|
||||
display: inline-block;
|
||||
border-radius: 6px;
|
||||
background: $mid-blue;
|
||||
color: $white;
|
||||
font-weight: 900;
|
||||
padding: 0.5em;
|
||||
font-size: 1.2em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.cfp-body {
|
||||
font-size: 12pt;
|
||||
}
|
||||
}
|
||||
}
|
111
src/assets/scss/reset.scss
Normal file
@ -0,0 +1,111 @@
|
||||
*,
|
||||
*:before,
|
||||
*:after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html,
|
||||
body,
|
||||
div,
|
||||
span,
|
||||
object,
|
||||
iframe,
|
||||
figure,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
p,
|
||||
blockquote,
|
||||
pre,
|
||||
a,
|
||||
code,
|
||||
em,
|
||||
img,
|
||||
small,
|
||||
strike,
|
||||
strong,
|
||||
sub,
|
||||
sup,
|
||||
tt,
|
||||
b,
|
||||
u,
|
||||
i,
|
||||
ol,
|
||||
ul,
|
||||
li,
|
||||
fieldset,
|
||||
form,
|
||||
label,
|
||||
table,
|
||||
caption,
|
||||
tbody,
|
||||
tfoot,
|
||||
thead,
|
||||
tr,
|
||||
th,
|
||||
td,
|
||||
main,
|
||||
canvas,
|
||||
embed,
|
||||
footer,
|
||||
header,
|
||||
nav,
|
||||
section,
|
||||
video {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
font-size: 100%;
|
||||
font: inherit;
|
||||
vertical-align: baseline;
|
||||
text-rendering: optimizeLegibility;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
text-size-adjust: none;
|
||||
}
|
||||
|
||||
footer,
|
||||
header,
|
||||
nav,
|
||||
section,
|
||||
main {
|
||||
display: block;
|
||||
}
|
||||
|
||||
body {
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
ol,
|
||||
ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
blockquote,
|
||||
q {
|
||||
quotes: none;
|
||||
}
|
||||
|
||||
blockquote:before,
|
||||
blockquote:after,
|
||||
q:before,
|
||||
q:after {
|
||||
content: '';
|
||||
content: none;
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
input {
|
||||
-webkit-appearance: none;
|
||||
border-radius: 0;
|
||||
}
|
35
src/assets/scss/util.scss
Normal file
@ -0,0 +1,35 @@
|
||||
.text-center {
|
||||
text-align: center;
|
||||
.ignore {
|
||||
display: inline-block;
|
||||
width: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.shape-wrapper {
|
||||
display: inline-block;
|
||||
.text-wrapper {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
&.diamond {
|
||||
$angle: 45deg;
|
||||
-moz-transform: rotate($angle);
|
||||
-webkit-transform: rotate($angle);
|
||||
-o-transform: rotate($angle);
|
||||
-ms-transform: rotate($angle);
|
||||
transform: rotate($angle);
|
||||
|
||||
.text-wrapper {
|
||||
-moz-transform: rotate(-$angle);
|
||||
-webkit-transform: rotate(-$angle);
|
||||
-o-transform: rotate(-$angle);
|
||||
-ms-transform: rotate(-$angle);
|
||||
transform: rotate(-$angle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.d-inline-block {
|
||||
display: inline-block;
|
||||
}
|
0
src/assets/scss/variable.scss
Normal file
249
src/components/CFP/Agenda.vue
Normal file
@ -0,0 +1,249 @@
|
||||
<template>
|
||||
<div class="info-container">
|
||||
<!-- 議程種類方塊 -->
|
||||
<div class="info-section">
|
||||
<h1>議程種類</h1>
|
||||
<div class="info-section__content">
|
||||
<div class="info-kind">
|
||||
<div class="info-kind__itemBox">
|
||||
<div class=info-kind__itemBox-title>Presentation</div>
|
||||
<div class="info-kind__itemBox-text">
|
||||
<p>Presentation 包含完整 30 分鐘的議程與 10 分鐘的問答時間,<strong>共 40
|
||||
分鐘</strong>,讓您有充分的時間展示想法、描述經歷、和與會者交流。
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="info-kind__itemBox">
|
||||
<div class="info-kind__itemBox-title">Double Espresso</div>
|
||||
<div class="info-kind__itemBox-text">
|
||||
<p>
|
||||
Double Espresso <strong>為 20 分鐘的議程</strong>,相對於僅 10 分鐘的 Espresso,讓您有餘裕補充想法、和與會者進行問答。
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="info-kind__itemBox">
|
||||
<div class="info-kind__itemBox-title">Espresso</div>
|
||||
<div class="info-kind__itemBox-text">
|
||||
<p>
|
||||
Espresso <strong>僅有 10 分鐘</strong>,挑戰最為濃縮與精華的議程,為與會者帶來短而精緻的知識洗禮。
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 議程種類方塊 -->
|
||||
<!-- 流程 -->
|
||||
<div class="info-section">
|
||||
<h1>流程</h1>
|
||||
<div class="info-section__content">
|
||||
<p>
|
||||
本年度 SITCON
|
||||
年會將分為<strong>二階段投稿與審稿</strong>,第一階段決定是否接受稿件,第二階段安排演講廳。審稿委員於第一階段完成審稿後,將對外公告接受稿件清單,並通知投稿者提供第二階段所需之資料。SITCON
|
||||
議程組於第二階段將依照投稿者提供的資料,以及公開的人氣投票結果,安排年會當日的演講廳與時段。第二階段的資料,不影響稿件接受與否。
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 流程 -->
|
||||
<!-- 投稿方式 -->
|
||||
<div class="info-section">
|
||||
<h1>投稿方式</h1>
|
||||
<div class="info-section__content">
|
||||
<p>
|
||||
稿件均經議程組形式審查,交予該領域之審稿委員審稿;審稿委員由 SITCON 工作人員、業界人士及學界人士組成。
|
||||
</p>
|
||||
<div class="info-section__content--sub">
|
||||
<h2>投稿格式</h2>
|
||||
<p>
|
||||
各議程類型的投稿格式相同,除特別標示之資訊外,其餘僅供審稿委員於審稿時閱讀。
|
||||
<br>
|
||||
<br>
|
||||
<ul>
|
||||
<li><span /><strong>投稿類型:</strong>必填、公開。請寫明所欲投稿為何種議程類型( Presentation 、Double Espresso、Espresso)。
|
||||
</li>
|
||||
<li><span /><strong>題目 Title:</strong>必填、公開。請不要超出 20 字。</li>
|
||||
<li><span /><strong>摘要 Abstract:</strong>必填、公開。建議含標點符號 150–250 字,使用於宣傳與網站公告。</li>
|
||||
<li><span /><strong>演講大綱 Outline:</strong>必填。請說明議程的內容大綱與時間分配。若為多位講者共同分享,請說明各個講者如何分配演講內容。</li>
|
||||
<li><span /><strong>目標受眾 Target
|
||||
Audience:</strong>必填。請說明您期待該議程的目標受眾,為怎麼樣的人。例如:「嚮往成為前端開發者的初學者」、「欲精進某技能的後端工程師」等。</li>
|
||||
<li><span /><strong>先備知識 Prior Knowledge:</strong>必填、公開。請說明該議程的與會者所需具備的先備知識。例如:「能理解 Python
|
||||
基礎語法」、「能熟練運用 Class 與
|
||||
OOP」等。
|
||||
</li>
|
||||
<li><span /><strong>詳細說明
|
||||
Description:</strong>必填。不限字數,請說明這個議程您認爲重要的相關細節,以利審稿委員更瞭解您的作品。我們強烈建議您詳細填寫此項,讓審稿委員全面且深入地了解您的稿件,增加入選機率。
|
||||
</li>
|
||||
<li><span /><strong>關鍵字 Keywords:</strong>選填、公開。請勾選與議程內容相關的關鍵字,或自行新增。</li>
|
||||
<li><span /><strong>附件 Attachment:</strong>選填。可以附上程式碼、投影片草稿或任何您認爲有助於我們瞭解您的議程的附件。</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
<div class="info-section__content--sub">
|
||||
|
||||
<h2>個人資料</h2>
|
||||
<p>
|
||||
除了暱稱/姓名被用於宣傳,其餘資訊僅需提供一人作為代表(當稿件同時有多位講者時),供議程組於聯絡時使用。
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<ul>
|
||||
<li><span /><strong>電子郵件 Email:</strong>能讓大會聯絡的電子信箱。(注意:請您在大會的聯絡過程中,維持使用相同信箱。)</li>
|
||||
<li><span /><strong>暱稱/名字 Name:</strong>公開於講者海報及網站的稱呼。</li>
|
||||
<li><span /><strong>手機號碼 Phone:</strong>用於大會聯絡、確認資訊用的電話號碼。</li>
|
||||
<li><span /><strong>其他聯絡方式 Other contact information:</strong>其他任何我們能聯絡您的方式(如 Telegram、住處電話等)。
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 投稿方式 -->
|
||||
<!-- 審稿方式 -->
|
||||
<div class="info-section">
|
||||
<h1>審稿方式</h1>
|
||||
<div class="info-section__content">
|
||||
<p>
|
||||
審稿委員將針對以下項目進行篩選:
|
||||
<ul>
|
||||
<li><span /><strong>稿件內容:</strong>知識分享、經驗案例、想法觀點是否獨特等。</li>
|
||||
<li><span /><strong>表達能力:</strong>提供的資料是否有條理、文句暢通,以及提供資料之完整度。完整的資料能讓審稿委員更清楚了解演講細節。</li>
|
||||
<li><span /><strong>適合聽眾:</strong>稿件是否適合 SITCON 大多數的與會者。經我們評估比較小眾的議程,將可能安排在較小的演講廳。</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
<!-- 審稿方式 -->
|
||||
<!-- 投稿注意事項 -->
|
||||
</div>
|
||||
<div class="info-section">
|
||||
<h1>投稿注意事項</h1>
|
||||
<div class="info-section__content">
|
||||
<p>
|
||||
<ul>
|
||||
<li><span />SITCON 2021 採用 Google Forms 接收投稿。</li>
|
||||
<li><span />SITCON 2021 將會有 4 軌議程同時進行(不計其他議程相關活動)。</li>
|
||||
<li><span />上述審稿方式不考慮稿件內容的難度。我們以稿件是否能夠吸引人、高品質、適合聽眾(即前述審稿方式)為考量。</li>
|
||||
為鼓勵投稿,大會提供投稿者一組入場票邀請碼
|
||||
(投稿者有多個投稿亦同,即為一人一組,非一稿一組),可優先報名參與本年會。若您的稿件被接受,屆時可使用講者身分入場,不需要另外報名,並可以將入場票邀請碼贈與他人使用,邀請親朋好友共襄盛舉。講者身分入場,每組可獲得一張講者識別證、一份午餐餐盒與一份講者專屬迎賓禮。
|
||||
|
||||
<li><span />在截稿之前,投稿者可以隨時使用投稿系統修改已投的稿件。</li>
|
||||
<li><span />SITCON 議程組得與投稿者討論並經同意後,轉換稿件之投稿類型。</li>
|
||||
<li><span />無論投稿有無入選,仍然歡迎於年會當天報名其他議程相關活動!</li>
|
||||
<li><span />凡稿件經接受者,年會將頒予感謝狀以表彰投稿者之熱情付出與貢獻。</li>
|
||||
<li><span />稿件在第一階段入選後,第二階段補充資料與公開的人氣投票結果,僅作為 SITCON 議程組安排年會當日的演講廳與時段參考,最終結果仍以 SITCON 議程組公告為準。</li>
|
||||
<li><span />「議程題目」、「摘要」與「先備知識」將放置於官方網站與年會前發行的電子報中。</li>
|
||||
</ul>
|
||||
<br />
|
||||
若有任何問題或投稿建議,請 E-mail 至 SITCON 議程組信箱 session[at]sitcon.org。
|
||||
</p>
|
||||
<div class="info-section__content--sub">
|
||||
|
||||
<h2>錄影與紀錄</h2>
|
||||
<p>
|
||||
所有議程皆會錄影,若不希望被錄影與釋出,可以與議程組聯絡。<br />
|
||||
本屆 SITCON
|
||||
提供入選講者試講及彩排的機會。試講除了讓大會工作人員先行對議程內容、演講習慣有初步了解外,也可以讓講者熟悉現場流程、找出能讓簡報更生動精采的模式。彩排則讓講者熟悉現場設備環境、攝影機位置,並且測試
|
||||
Live
|
||||
Demo 情境。希望講者能夠共同參與試講及彩排,一起使年會議程品質更臻完美。
|
||||
</p>
|
||||
</div>
|
||||
<div class="info-section__content--sub">
|
||||
|
||||
|
||||
<h2>授權</h2>
|
||||
<p>
|
||||
議程錄影將在經過您的同意後,一律以 CC - BY 3.0 授權在 YouTube 釋出。
|
||||
議程相關素材,例如投影片等,將由您自行決定在何處、以何種方式釋出,或選擇不釋出,我們不會干涉。年會後,我們將向您蒐集素材連結,若您選擇釋出,我們會將連結放置在年會官方網站的議程表上。
|
||||
</p>
|
||||
</div>
|
||||
<div class="info-section__content--sub">
|
||||
|
||||
<h2>試講</h2>
|
||||
<p>
|
||||
試講提供講者在演講前有練習的機會,比照年會時間安排供講者講完整場演講,並有議程組人員提供建議(如簡報、台風等),講者可以自由參加,並自行選擇最合適的場次。若您的稿件確認入選,議程組將與您協調精確時間。
|
||||
</p>
|
||||
<p>
|
||||
所有場次將依報名情況舉辦,預計舉辦北部、中部、南部、東部場等,時間約為四月份,地點另行通知。
|
||||
補助:依照客運價格標準,補助講者至最近試講場地的全額或部分車馬費。
|
||||
</p>
|
||||
</div>
|
||||
<div class="info-section__content--sub">
|
||||
|
||||
<h2>彩排</h2>
|
||||
<p>
|
||||
<ul>
|
||||
<li><span />日期:2021/05/28(五)。</li>
|
||||
<li><span />場地:使用場地與正式年會相同,細節將於稿件接受後通知。</li>
|
||||
<li><span />時間:一人約 5–10 分鐘。若有 Live Demo 或特殊需求,可提前與議程組安排時間。</li>
|
||||
<li><span />流程:講者操作設備,測試 Live Demo 連結及切換方式,也可以演練部分簡報內容。</li>
|
||||
<li><span />提供設備:與年會當天場地的設備相同,有麥克風、倒數計時器等。</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
<div class="info-section__content--sub">
|
||||
|
||||
<h2>注意</h2>
|
||||
<p>
|
||||
<ul>
|
||||
<li><span />除非內容明顯偏離講題、違反 CoC 或不符事實,我們不會強制要求講者對演講內容進行修正。</li>
|
||||
<li><span />為了維護所有講者的權利,試講時間恕不接受更改,請各位講者準時參與。</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
<div class="info-section__content--sub">
|
||||
<h2>Q&A</h2>
|
||||
<div class="info-qa">
|
||||
<div class="info-qa__itemBox" v-for="item,index in QA" :key="index" @click="e=>fade(index)">
|
||||
<span>Q: {{item.Q}}</span>
|
||||
<p v-if="item.v">{{item.A}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 投稿注意事項 -->
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
@Component({})
|
||||
export default class Agenda extends Vue {
|
||||
private QA = [
|
||||
{
|
||||
Q: '先備知識與目標受眾有何不同?',
|
||||
A: '「目標受眾」表示您預期何種人將會前來參與該場議程,此欄位可能表示為與會者的興趣、生活環境抑或年齡層。「先備知識」表示對該議程有興趣者,您建議須先備哪些基礎技術、能力或經驗,有助於了解與吸收該場議程的知識精華。舉例而言,若一講題為「在營隊中使用虛擬貨幣」,則先備知識可能是「沒有」,目標受眾可能是「有想要辦營隊的人」。而如果是有關Julia 程式語言的演講,則先備知識可能是「知道平行運算是什麼」,目標受眾可能是「想用 Julia 做資料科學的人」。',
|
||||
v: false
|
||||
},
|
||||
{
|
||||
Q: '投稿主題是否有必要切合年會主題(算盤的後裔)?',
|
||||
A: '不用。審稿時僅會依照上文所述方式審查,不會因為切合主題就拿到比較高分,或因為與 主題無關就被扣分。',
|
||||
v: false
|
||||
},
|
||||
{
|
||||
Q: '先備知識與目標受眾有何不同?',
|
||||
A: '若我們認為您的稿件很優秀,但可能比較適合另一種形式,或者該形式的名額已經額滿、無法再增額時,我們會向您充分說明與溝通,並經您的同意後,轉換稿件類型。',
|
||||
v: false
|
||||
},
|
||||
{
|
||||
Q: '如果我的稿件預計會有多個講者,投稿時需要注意什麼?',
|
||||
A: '請在「暱稱/名字」欄位標示所有講者的稱呼,並在「演講大綱」詳細說明各個講者如何分配演講內容。稿件經接受者,無論講者人數,皆只提供一組可轉贈的入場票邀請碼、一張講者識別證、一份午餐餐盒與一份講者專屬迎賓禮。未佩戴識別證的講者,僅能在自己的演講時,於該議程時段進入議程所在的會議廳。',
|
||||
v: false
|
||||
},
|
||||
{
|
||||
Q: '如果我入選第二階段,可以提供哪些補充資料?',
|
||||
A: '您可以提供簡報檔案、講稿、演講錄音搭配簡報畫面製成影片,或是實際錄影,您可以自行決定是否提供上述的任何一項,作為補充資料。',
|
||||
v: false
|
||||
},
|
||||
{
|
||||
Q: '還有疑問怎麼辦?',
|
||||
A: '歡迎來投稿者小聚與我們聊聊,或寄信至 session[at]sitcon.org 詢問,我們會儘速回應。',
|
||||
v: false
|
||||
}
|
||||
];
|
||||
|
||||
private fade = (index: number) => {
|
||||
this.QA[index].v = !this.QA[index].v;
|
||||
}
|
||||
|
||||
}
|
||||
</script>
|
24
src/components/CFP/AgendaCard.vue
Normal file
@ -0,0 +1,24 @@
|
||||
<template>
|
||||
<div class="agenda card">
|
||||
<a class="image container" :href="ytLink" target="_blank" rel="noopener">
|
||||
<img :src="img">
|
||||
</a>
|
||||
<p class="description">{{ title }} <span v-if="introdLink != ''">(<a :href="introdLink" target="_blank" rel="noopener">簡介</a>)</span></p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
|
||||
@Component
|
||||
export default class AgendaCard extends Vue {
|
||||
@Prop({ required: true }) private ytLink!: string;
|
||||
@Prop({ required: true }) private introdLink!: string;
|
||||
@Prop({ required: true }) private title!: string;
|
||||
@Prop({ required: true }) private img!: string;
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/CFP/card.scss';
|
||||
</style>
|
79
src/components/CFP/Header.vue
Normal file
@ -0,0 +1,79 @@
|
||||
<template>
|
||||
<header class="sitcon-burnfont">
|
||||
<div class="spot-box">
|
||||
<div class="sitcon-2021 text-center spot-box-row">
|
||||
<img
|
||||
alt="SITCON2021"
|
||||
src="~@/assets/image/burnfont/2021.svg"
|
||||
class="svg"
|
||||
id="svg-sitcon2021"
|
||||
/>
|
||||
</div>
|
||||
<div class="sitcon-name text-center spot-box-row">
|
||||
<img
|
||||
alt="學生計算機年會"
|
||||
src="~@/assets/image/burnfont/sitcon.svg"
|
||||
class="svg"
|
||||
id="svg-sitcon"
|
||||
/>
|
||||
</div>
|
||||
<h1 class="sitcon-topic text-center spot-box-row">
|
||||
<img
|
||||
alt="算盤的後裔"
|
||||
src="~@/assets/image/burnfont/topic.svg"
|
||||
class="svg"
|
||||
id="svg-topic"
|
||||
/>
|
||||
</h1>
|
||||
</div>
|
||||
<div class="info-box">
|
||||
<div class="cfp-title">
|
||||
<div class="cfp-svg-wrapper text-center">
|
||||
<img
|
||||
src="~@/assets/image/burnfont/cfp.svg"
|
||||
class="svg"
|
||||
id="svg-cfp"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="date-location">
|
||||
<div class="date-location-wrapper">
|
||||
<div class="date-wrapper">
|
||||
<img
|
||||
src="~@/assets/image/burnfont/date.svg"
|
||||
class="svg"
|
||||
id="svg-date"
|
||||
/>
|
||||
</div>
|
||||
<div class="location-wrapper">
|
||||
<img
|
||||
src="~@/assets/image/burnfont/location.svg"
|
||||
class="svg"
|
||||
id="svg-location"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cfp-news">
|
||||
<div class="cfp-news-wrapper">
|
||||
<div class="hexagon">
|
||||
<a href="/news" rel="noopener" class="btn">
|
||||
<img
|
||||
src="~@/assets/image/burnfont/news.svg"
|
||||
class="svg"
|
||||
id="svg-news"
|
||||
/>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
|
||||
@Component
|
||||
export default class CfpHeader extends Vue {}
|
||||
</script>
|
139
src/components/CFP/IntrodContainer.vue
Normal file
@ -0,0 +1,139 @@
|
||||
<template>
|
||||
<main class="introduction-container">
|
||||
|
||||
<div class="introduction">
|
||||
|
||||
<img src="@/assets/images/cfp/Ellipse 5.svg" class="ellipse"/>
|
||||
<img src="@/assets/images/cfp/Group 10.svg" class="sitcon-icon"/>
|
||||
<img src="@/assets/images/cfp/Path 733.svg" class="sitcon-pic-2021"/>
|
||||
<img src="@/assets/images/cfp/Path 734.svg" class="sitcon-title-zh"/>
|
||||
<img src="@/assets/images/cfp/Path 735.svg" class="sitcon-topic"/>
|
||||
<img src="@/assets/images/cfp/Path 736.svg" class="sitcon-date"/>
|
||||
<img src="@/assets/images/cfp/Path 737.svg" class="sitcon-place"/>
|
||||
<img src="@/assets/images/cfp/Path 738.svg" class="sitcon-qeury"/>
|
||||
<!-- ../../assets/images/cfp/Mobile/Mobile-background.svg -->
|
||||
<img src="@/assets/images/cfp/Background.svg" class="background"/>
|
||||
<!-- src="@/assets/images/cfp/Background.svg" -->
|
||||
<!-- first part -->
|
||||
<img src="@/assets/images/cfp/Path 740.svg" class="SITCON-text-path"/>
|
||||
<svg width="890" height="900" class="first-box">
|
||||
<rect width="1000" height="1000" style="fill:#ffffff;" />
|
||||
</svg>
|
||||
<div class="box-back">
|
||||
<h1>關於 SITCON</h1>
|
||||
<div class="about-section">
|
||||
<p class="context">
|
||||
學生計算機年會(SITCON)自 2013
|
||||
年發起,以學生為本、由學生自發舉辦,長期投身學生資訊教育與推廣開源精神,希望引領更多學子踏入資訊的殿堂,更冀望所有對資訊有興趣的學生,能夠在年會裏齊聚一堂,彼此激盪、傳承、啟發,達到「學以致用、教學相長」的實際展現。
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<h2>歷屆年會網站</h2>
|
||||
<div class="thumbnails">
|
||||
<table class="img-table">
|
||||
<tr>
|
||||
<td class="td-width">
|
||||
<img class="cfp-img" src="@/assets/images/cfp/2020.png" />
|
||||
<p class="tag">SITCON 2020<br /></p>
|
||||
<p class="tag sub">#define</p>
|
||||
</td>
|
||||
<td class="td-width">
|
||||
<img class="cfp-img" src="@/assets/images/cfp/2019.png" />
|
||||
<p class="tag">SITCON 2019<br /></p>
|
||||
<p class="tag sub">開箱演算法</p>
|
||||
</td>
|
||||
<td class="td-width">
|
||||
<img class="cfp-img" src="@/assets/images/cfp/2018.png" />
|
||||
<p class="tag">SITCON 2018<br /></p>
|
||||
<p class="small-tag">POPULAR COMPUTER SCIENCE</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<h2>參與討論!</h2>
|
||||
<div class="discuss-section">
|
||||
<p class="context">
|
||||
SITCON 是個開放的社群,許多籌備的相關事項都會在公開的 Mailing list
|
||||
上進行<br />
|
||||
討論,如果有興趣參與,歡迎訂閱 SITCON 的 Mailing list
|
||||
並貢獻你的想法!
|
||||
</p>
|
||||
<p class="context" style="margin-top: 22px; margin-bottom: 22px">
|
||||
若你想進一步了解過往討論的內容,也歡迎在 HackMD 上查看 SITCON 2021
|
||||
的會議記錄。
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<button class="buttons"><h3>SITCON 論壇</h3></button>
|
||||
<button class="buttons"><h3>會議記錄</h3></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- first part -->
|
||||
<!-- second part -->
|
||||
<img src="@/assets/images/cfp/Path_762.svg" class="des-text-path"/> <!---->
|
||||
<svg width="1500" height="1500" class="second-box">
|
||||
<rect width="1500" height="1500" style="fill:#ffffff;" />
|
||||
</svg>
|
||||
<svg width="2000" height="350" class="des-blue-bar">
|
||||
<rect width="2000" height="350" style="fill:#226BB4;" />
|
||||
</svg>
|
||||
<svg width="1500" height="900" class="hiden-box">
|
||||
<rect width="1500" height="900" style="fill:#ffffff;" />
|
||||
</svg>
|
||||
<div class="box-back2" style="margin-top: 1000px;">
|
||||
<div class="topic-intro">
|
||||
<h1 class="right">2021 年會主題</h1>
|
||||
<h1 class="right">
|
||||
<span class="enlarge">算盤的後裔</span>
|
||||
</h1>
|
||||
<p class="context">
|
||||
千年以前的人類,發明了各式各樣輔助算術的工具,在世界各地的文明中,皆能找到廣義上的「算盤」。隨著時代演進,那些原始的工具,逐步進化成為現代的計算機與電腦,更進一步發展為隨處可見的智慧型裝置。俗話說「站在巨人的肩膀上」,前人的智慧成果成為墊腳石,讓站在其之上的後人可以看得更高、更遠。科技層層疊疊、承先啟後,文明才能跨越時空持續成長。
|
||||
</p>
|
||||
<p class="context">
|
||||
人們不再需要重新發明輪子,只要善用前人的成果,就能造出更有效率的工具,並擁有更好的生活。生於現代的我們,每天寫著電腦程式、把玩著智慧型手機、徜徉在網際網路上沒有邊際的資訊大海。奠基於科技的現有成果,對科技的未來持續做出貢獻的我們,都是「算盤的後裔」。
|
||||
</p>
|
||||
<img src="@/assets/images/cfp/paper/paper.png" class="paper-image" />
|
||||
<h2>徵稿時間</h2>
|
||||
<div>
|
||||
<h2 class="date">01/15 ~ 02/22</h2>
|
||||
<p class="detail">
|
||||
詳細時程請見
|
||||
</p>
|
||||
<div class="button-post">
|
||||
<button class="buttons"><h3>投稿資訊</h3></button>
|
||||
<!-- NOTE: this button's hover won't work because paper.png is too big -->
|
||||
<button class="buttons"><h3>不用說了,快讓我投稿!</h3></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="last-part">
|
||||
<h3>最後...</h3>
|
||||
<h1>SITCON 贊助徵求</h1>
|
||||
<!--style="margin-top:-30px;"-->
|
||||
<p class="context">
|
||||
SITCON 的舉辦,除了有賴眾多志工的努力,也需要金錢的支持。<br />
|
||||
如果您認同 SITCON 的理念,歡迎以行動支持 SITCON
|
||||
的運作,讓更多交流產生!
|
||||
</p>
|
||||
<p class="context">
|
||||
企業合作歡迎聯繫
|
||||
<a class="context-hyperlink" href="mailto:contact@sitcon.org">contact@sitcon.org</a>
|
||||
</p>
|
||||
<div>
|
||||
<button class="buttons"><h3>個人贊助方案</h3></button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- second part -->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</main>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
@Component
|
||||
export default class IntrodContainer extends Vue {}
|
||||
</script>
|
81
src/components/CFP/Schedule.vue
Normal file
@ -0,0 +1,81 @@
|
||||
<template>
|
||||
<div id="info-schedule">
|
||||
<!-- 重要時程 -->
|
||||
<section id="schedule">
|
||||
<h1>重要時程</h1>
|
||||
<ul>
|
||||
<li>3 月上旬第一階段審稿結束,公告入選結果並開始收取第二階段補充資料</li>
|
||||
<li>3 月下旬第二階段補充資料截止收取</li>
|
||||
<li>4 月中旬第二階段審稿結束,隨後公佈完整議程</li>
|
||||
<li>2021/05/29(六)SITCON 2021</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- 重要時程 -->
|
||||
<!-- 投稿主題範例 -->
|
||||
<section id="example">
|
||||
<article id="theme-example">
|
||||
<h1>投稿主題範例</h1>
|
||||
<p>SITCON 作為學生展現自己的舞台,我們特別期待以學生為主體的稿件,例如:從學生角度出發的經驗分享、技術分享,專題研究成果、獨立研究甘苦談,或探討學生相關議題等等。</p>
|
||||
<p>除此之外,任何與資訊科技、電腦技術相關的講題,也都歡迎投稿!以下為幾個我們最近覺得有趣、和時事相關的主題範疇,可作為主題發想的靈感來源,提供給您參考:</p>
|
||||
<!-- there is a object arr named 'themeExample', each object have two value ie. title and content -->
|
||||
<div class="theme container">
|
||||
<Topic v-for="theme in themeExample" :topic="theme.title" :description="theme.context" :key="theme.title" />
|
||||
</div>
|
||||
</article>
|
||||
<p>
|
||||
除此之外,您也可以透過參與投稿者小聚或前往 SITCON 歷年網站(<a href="https://sitcon.org/2013" rel="noopener">2013</a>、<a href="https://sitcon.org/2014" rel="noopener">2014</a>、<a href="https://sitcon.org/2015" rel="noopener">2015</a>、<a href="https://sitcon.org/2016" rel="noopener">2016</a>、<a href="https://sitcon.org/2017" rel="noopener">2017</a>、<a href="https://sitcon.org/2018" rel="noopener">2018</a>、<a href="https://sitcon.org/2019" rel="noopener">2019</a>、<a href="https://sitcon.org/2020" rel="noopener">2020</a>)查看過去的議程。
|
||||
<br>以下是我們以往的熱門議程,提供給您參考:
|
||||
</p>
|
||||
<article id="presentation-example">
|
||||
<h2>Presentation</h2>
|
||||
<p>Presentation 包含完整 30 分鐘的議程與 10 分鐘的問答時間,共 40 分鐘,讓您有充分的時間展示想法、描述經歷、和與會者交流。</p>
|
||||
<!-- there is a object arr name 'presentation', each object have 'title' 'ytLink' 'introdLink' 'img' -->
|
||||
<div class="agenda card container">
|
||||
<AgendaCard v-for="agenda in presentation" v-bind="agenda" :key="agenda.title" />
|
||||
</div>
|
||||
</article>
|
||||
<article id="espresso-example">
|
||||
<h2>Espresso</h2>
|
||||
<p>Espresso 僅有 10 分鐘,挑戰最為濃縮與精華的議程,為與會者帶來短而精緻的知識洗禮。</p>
|
||||
<!-- there is a object arr name 'espresso', each object have 'title' 'ytLink' 'introdLink' 'img' -->
|
||||
<div class="agenda card container">
|
||||
<AgendaCard v-for="agenda in espresso" v-bind="agenda" :key="agenda.title" />
|
||||
</div>
|
||||
</article>
|
||||
</section>
|
||||
<!-- 投稿主題範例 -->
|
||||
<!-- Code of Conduct -->
|
||||
<section id="code-of-conduct">
|
||||
<h1>Code of Conduct</h1>
|
||||
<p>SITCON 歡迎不同身分、來自不同背景的與會者,也非常鼓勵女性、性少數與多元背景的參與者。為了讓大家都能愉快的參加 SITCON,我們要求所有參與者閱讀年會的<a href="https://sitcon.org/code-of-conduct/" target="_blank" rel="noopener"><u>行為守則(Code of Conduct)</u></a>,共同創造一個友善的環境。</p>
|
||||
</section>
|
||||
<!-- Code of Conduct -->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
import AgendaCard from './AgendaCard.vue';
|
||||
import Topic from './Topic.vue';
|
||||
|
||||
// import data
|
||||
import themeExample from '../../../template/themeExample.cfp';
|
||||
import espresso from '../../../template/espresso.cfp';
|
||||
import presentation from '../../../template/presentation.cfp';
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
AgendaCard,
|
||||
Topic
|
||||
}
|
||||
})
|
||||
export default class Schedule extends Vue {
|
||||
private themeExample = themeExample;
|
||||
private espresso = espresso;
|
||||
private presentation = presentation;
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/CFP/schedule.scss';
|
||||
</style>
|
25
src/components/CFP/Topic.vue
Normal file
@ -0,0 +1,25 @@
|
||||
<template>
|
||||
<div class="topic">
|
||||
<h3 class="title" v-html="title"></h3>
|
||||
<div class="divider"></div>
|
||||
<p class="description">{{ description }}</p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
|
||||
@Component
|
||||
export default class Topic extends Vue {
|
||||
@Prop({ required: true }) private topic!: string;
|
||||
@Prop({ required: true }) private description!: string;
|
||||
|
||||
get title () {
|
||||
return this.topic.replace(/(:|?)/, '$1<br data-delimiter="$1">');
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
@import '@/assets/scss/CFP/topic.scss';
|
||||
</style>
|
71
src/components/Footer.vue
Normal file
@ -0,0 +1,71 @@
|
||||
<template>
|
||||
<footer class="footer-container">
|
||||
<div class="footer-left">
|
||||
<p class="footer-brand footer-font-block">
|
||||
<span class="footer-context">學生計算機年會</span>
|
||||
<span class="footer-context"
|
||||
>Students' Information Technology Conference</span
|
||||
>
|
||||
</p>
|
||||
<p class="footer-contact footer-font-block">
|
||||
<span class="footer-context">聯絡我們</span>
|
||||
<span class="footer-context">contact@sitcon.org</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="footer-right">
|
||||
<div class="footer-community">
|
||||
<p class="footer-context">社群媒體</p>
|
||||
<p class="footer-community-icon-container">
|
||||
<span class="footer-community-icon">
|
||||
<a
|
||||
target="_blank"
|
||||
rel="noopener"
|
||||
v-for="community in communityLink"
|
||||
:href="community.link"
|
||||
:key="community.title"
|
||||
>
|
||||
<FontawesomeIcon
|
||||
class="community-icon"
|
||||
:icon="['fab', community.icon]"
|
||||
/>
|
||||
</a>
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
@Component
|
||||
export default class CFP extends Vue {
|
||||
private communityLink = [
|
||||
{
|
||||
title: 'facebook',
|
||||
icon: 'facebook-f',
|
||||
link: '#'
|
||||
},
|
||||
{
|
||||
title: 'flickr',
|
||||
icon: 'flickr',
|
||||
link: '#'
|
||||
},
|
||||
{
|
||||
title: 'telegram',
|
||||
icon: 'telegram-plane',
|
||||
link: '#'
|
||||
},
|
||||
{
|
||||
title: 'twitter',
|
||||
icon: 'twitter',
|
||||
link: '#'
|
||||
},
|
||||
{
|
||||
title: 'youtube',
|
||||
icon: 'youtube',
|
||||
link: '#'
|
||||
}
|
||||
];
|
||||
}
|
||||
</script>
|
116
src/components/NewsHeader.vue
Normal file
@ -0,0 +1,116 @@
|
||||
<template>
|
||||
<header>
|
||||
<div class="top-bar">
|
||||
<div class="return-wrapper">
|
||||
<a class="shape-wrapper diamond" href="/cfp"
|
||||
><span class="text-wrapper">返回</span></a
|
||||
>
|
||||
</div>
|
||||
<div class="title-wrapper text-center">
|
||||
<img src="~@/assets/image/burnfont/news.svg" class="svg svg-cfp-news" />
|
||||
</div>
|
||||
<div class="contribute-wrapper">
|
||||
<a class="btn-contribute" href="#">我要投稿</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cfp-body">
|
||||
<div class="spot-wrapper">
|
||||
<h1 class="text-center">現正徵稿中<span class="ignore">!</span></h1>
|
||||
<!-- TODO counter -->
|
||||
<p class="text-center countdown">
|
||||
距離投稿截止還有
|
||||
<span class="d-inline-block">
|
||||
{{ countdown.d }} 天 {{ countdown.h }} 小時 {{ countdown.m }} 分
|
||||
{{ countdown.s }} 秒</span
|
||||
>
|
||||
</p>
|
||||
</div>
|
||||
<div class="time-wrapper">
|
||||
<div class="start-time-wrapper">
|
||||
<h2>投稿開始</h2>
|
||||
<p>2021/01/15(五)</p>
|
||||
</div>
|
||||
<div class="tilde-wrapper">
|
||||
<h2><!-- pseudo element --></h2>
|
||||
<p>~</p>
|
||||
<p></p>
|
||||
</div>
|
||||
|
||||
<div class="end-time-wrapper">
|
||||
<h2>投稿結束</h2>
|
||||
<p>
|
||||
2021/02/22(一)日出<small class="d-inline-block"
|
||||
>(清晨 06:23)</small
|
||||
>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
|
||||
const DEAD_LINE = Math.floor(
|
||||
new Date('22 Feb 2021 06:24:00 GMT+8').getTime() / 1000
|
||||
);
|
||||
|
||||
interface Countdown {
|
||||
s: number;
|
||||
m: number;
|
||||
h: number;
|
||||
d: number;
|
||||
}
|
||||
|
||||
@Component
|
||||
export default class CfpHeader extends Vue {
|
||||
private timerId!: number;
|
||||
private countdown: Countdown = {
|
||||
s: 0,
|
||||
m: 0,
|
||||
h: 0,
|
||||
d: 0
|
||||
};
|
||||
|
||||
public beforeMount () {
|
||||
this.registerTimer();
|
||||
}
|
||||
|
||||
public unmouted () {
|
||||
this.unregisterTimer();
|
||||
}
|
||||
|
||||
public async createTimer (f: (t: number) => void): Promise<number> {
|
||||
const d = new Date();
|
||||
let t = d.getTime();
|
||||
const rem = 1000 - (t % 1000);
|
||||
|
||||
t = Math.floor(t / 1000);
|
||||
let downcount = DEAD_LINE - t - 1;
|
||||
this.onTick(downcount);
|
||||
const id = setInterval(() => {
|
||||
f(--downcount);
|
||||
}, 1000);
|
||||
return id;
|
||||
}
|
||||
|
||||
private async onTick (t: number) {
|
||||
this.countdown.s = t % 60;
|
||||
t = Math.floor(t / 60);
|
||||
this.countdown.m = t % 60;
|
||||
t = Math.floor(t / 60);
|
||||
this.countdown.h = t % 24;
|
||||
t = Math.floor(t / 24);
|
||||
this.countdown.d = t;
|
||||
}
|
||||
|
||||
private async registerTimer () {
|
||||
this.timerId = await this.createTimer(this.onTick);
|
||||
}
|
||||
|
||||
private unregisterTimer () {
|
||||
clearInterval(this.timerId);
|
||||
}
|
||||
}
|
||||
</script>
|
20
src/main.ts
Normal file
@ -0,0 +1,20 @@
|
||||
import Vue from 'vue';
|
||||
import App from './App.vue';
|
||||
import router from './router';
|
||||
import store from './store';
|
||||
|
||||
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';
|
||||
import { library } from '@fortawesome/fontawesome-svg-core';
|
||||
import { fab } from '@fortawesome/free-brands-svg-icons';
|
||||
|
||||
library.add(fab);
|
||||
Vue.component('FontawesomeIcon', FontAwesomeIcon);
|
||||
|
||||
|
||||
Vue.config.productionTip = false;
|
||||
|
||||
new Vue({
|
||||
router,
|
||||
store,
|
||||
render: (h) => h(App)
|
||||
}).$mount('#app');
|
29
src/pages/CFP.vue
Normal file
@ -0,0 +1,29 @@
|
||||
<template>
|
||||
<div id="cfp" class="cfp cfp-background">
|
||||
<!-- CfpHeader id="cfp-header"/ -->
|
||||
<IntrodContainer></IntrodContainer>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
// components
|
||||
import CfpHeader from '@/components/CFP/Header.vue';
|
||||
import IntrodContainer from '@/components/CFP/IntrodContainer.vue';
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
CfpHeader,
|
||||
IntrodContainer
|
||||
}
|
||||
})
|
||||
export default class CFP extends Vue {
|
||||
@Prop() private msg!: string;
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
||||
|
29
src/pages/News.vue
Normal file
@ -0,0 +1,29 @@
|
||||
<template>
|
||||
<div class="news">
|
||||
<NewsHeader id="news-header" />
|
||||
<Schedule/>
|
||||
<Agenda/>
|
||||
<!-- <Footer></Footer> should be put at App.vue (?) -->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { Component, Prop, Vue } from 'vue-property-decorator';
|
||||
import NewsHeader from '@/components/NewsHeader.vue';
|
||||
import Schedule from '../components/CFP/Schedule.vue';
|
||||
import Agenda from '../components/CFP/Agenda.vue';
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
NewsHeader,
|
||||
Schedule,
|
||||
Agenda
|
||||
}
|
||||
})
|
||||
export default class News extends Vue {
|
||||
@Prop() private msg!: string;
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
</style>
|
44
src/router/index.ts
Normal file
@ -0,0 +1,44 @@
|
||||
import Vue from 'vue';
|
||||
import VueRouter, { RouteConfig } from 'vue-router';
|
||||
// components
|
||||
import CFP from '../pages/CFP.vue';
|
||||
import News from '../pages/News.vue';
|
||||
|
||||
Vue.use(VueRouter);
|
||||
|
||||
export const routes: RouteConfig[] = [
|
||||
{
|
||||
path: '/',
|
||||
name: 'Home',
|
||||
redirect: '/cfp',
|
||||
meta: {
|
||||
index: 0,
|
||||
label: 'SITCON 2021',
|
||||
menuItem: true
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/cfp',
|
||||
name: 'CFP',
|
||||
component: CFP,
|
||||
meta: {
|
||||
menuItem: false
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/news',
|
||||
name: 'news',
|
||||
component: News,
|
||||
meta: {
|
||||
menuItem: false
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
const router = new VueRouter({
|
||||
mode: 'history',
|
||||
base: '/2021',
|
||||
routes
|
||||
});
|
||||
|
||||
export default router;
|
13
src/shims-tsx.d.ts
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
import Vue, { VNode } from 'vue';
|
||||
|
||||
declare global {
|
||||
namespace JSX {
|
||||
// tslint:disable no-empty-interface
|
||||
interface Element extends VNode {}
|
||||
// tslint:disable no-empty-interface
|
||||
interface ElementClass extends Vue {}
|
||||
interface IntrinsicElements {
|
||||
[elem: string]: any;
|
||||
}
|
||||
}
|
||||
}
|
4
src/shims-vue.d.ts
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
declare module '*.vue' {
|
||||
import Vue from 'vue';
|
||||
export default Vue;
|
||||
}
|
17
src/store/index.ts
Normal file
@ -0,0 +1,17 @@
|
||||
import Vue from 'vue';
|
||||
import Vuex from 'vuex';
|
||||
|
||||
import { app } from './modules/app';
|
||||
import { menu } from './modules/menu';
|
||||
|
||||
Vue.use(Vuex);
|
||||
|
||||
export default new Vuex.Store({
|
||||
state: {
|
||||
version: ''
|
||||
},
|
||||
modules: {
|
||||
app,
|
||||
menu
|
||||
}
|
||||
});
|
106
src/store/modules/app.ts
Normal file
@ -0,0 +1,106 @@
|
||||
import { ActionTree, GetterTree, MutationTree, Module } from 'vuex';
|
||||
|
||||
import { AppState, ThemeType, DeviceType, AppMode } from '../types/app';
|
||||
import { RootState } from '../types/root';
|
||||
import * as mutationTypes from '../mutation-types';
|
||||
|
||||
const namespaced: boolean = true;
|
||||
|
||||
const state: AppState = {
|
||||
mode: AppMode.WEB,
|
||||
device: DeviceType.DESKTOP,
|
||||
sight: {
|
||||
offset: 0,
|
||||
containerWidth: 0,
|
||||
containerHeight: 0,
|
||||
width: 0,
|
||||
height: 0,
|
||||
cols: 0,
|
||||
rows: 0,
|
||||
gap: 0
|
||||
},
|
||||
theme: ThemeType.LIGHT,
|
||||
isPopup: false,
|
||||
popupContent: '',
|
||||
popupOffsetTop: 0,
|
||||
validPopupTypes: ['SUBMIT_INFO', 'OPEN_SUBMIT', 'LOUDLY']
|
||||
};
|
||||
|
||||
const getters: GetterTree<AppState, RootState> = {
|
||||
mode: (state): AppState['mode'] => state.mode,
|
||||
device: (state): AppState['device'] => state.device,
|
||||
sight: (state): AppState['sight'] => state.sight,
|
||||
theme: (state): AppState['theme'] => state.theme,
|
||||
isPopup: (state): AppState['isPopup'] => state.isPopup,
|
||||
popupContent: (state): AppState['popupContent'] => state.popupContent,
|
||||
popupOffsetTop: (state): AppState['popupOffsetTop'] => state.popupOffsetTop,
|
||||
validPopupTypes: (state): AppState['validPopupTypes'] => state.validPopupTypes
|
||||
};
|
||||
|
||||
const actions: ActionTree<AppState, RootState> = {
|
||||
toggleMode ({ commit }, mode: AppState['mode']): void {
|
||||
commit(mutationTypes.APP_MODE, mode);
|
||||
},
|
||||
|
||||
toggleDevice ({ commit }, device: AppState['device']): void {
|
||||
commit(mutationTypes.APP_DEVICE, device);
|
||||
},
|
||||
|
||||
toggleTheme ({ commit }, theme: AppState['theme']): void {
|
||||
commit(mutationTypes.APP_THEME, theme);
|
||||
},
|
||||
|
||||
togglePopup ({ commit }, status: AppState['isPopup']): void {
|
||||
commit(mutationTypes.APP_POPUP, status);
|
||||
},
|
||||
|
||||
togglePopupContent ({ commit }, data: AppState['popupContent']): void {
|
||||
commit(mutationTypes.APP_POPUP_CONTENT, data);
|
||||
},
|
||||
|
||||
setPopupOffsetTop ({ commit }, offset: AppState['popupOffsetTop']): void {
|
||||
commit(mutationTypes.APP_POPUP_OFFSET_TOP, offset);
|
||||
},
|
||||
|
||||
setSightMeasure ({ commit }, sight: AppState['sight']): void {
|
||||
commit(mutationTypes.APP_SIGHT, sight);
|
||||
}
|
||||
};
|
||||
|
||||
const mutations: MutationTree<AppState> = {
|
||||
[mutationTypes.APP_MODE] (state, mode: AppState['mode']) {
|
||||
state.mode = mode;
|
||||
},
|
||||
|
||||
[mutationTypes.APP_DEVICE] (state, device: AppState['device']) {
|
||||
state.device = device;
|
||||
},
|
||||
|
||||
[mutationTypes.APP_THEME] (state, theme: AppState['theme']) {
|
||||
state.theme = theme;
|
||||
},
|
||||
|
||||
[mutationTypes.APP_POPUP] (state, status: AppState['isPopup']) {
|
||||
state.isPopup = status;
|
||||
},
|
||||
|
||||
[mutationTypes.APP_POPUP_CONTENT] (state, data: AppState['popupContent']) {
|
||||
state.popupContent = data;
|
||||
},
|
||||
|
||||
[mutationTypes.APP_POPUP_OFFSET_TOP] (state, offset: AppState['popupOffsetTop']) {
|
||||
state.popupOffsetTop = offset;
|
||||
},
|
||||
|
||||
[mutationTypes.APP_SIGHT] (state, sight: AppState['sight']) {
|
||||
state.sight = sight;
|
||||
}
|
||||
};
|
||||
|
||||
export const app: Module<AppState, RootState> = {
|
||||
namespaced,
|
||||
state,
|
||||
getters,
|
||||
actions,
|
||||
mutations
|
||||
};
|
39
src/store/modules/menu.ts
Normal file
@ -0,0 +1,39 @@
|
||||
import { ActionTree, GetterTree, MutationTree, Module } from 'vuex';
|
||||
|
||||
import { MenuState, MenuItem } from '../types/menu';
|
||||
import { RootState } from '../types/root';
|
||||
import * as mutationTypes from '../mutation-types';
|
||||
|
||||
import { routes } from '../../router';
|
||||
|
||||
const namespaced: boolean = true;
|
||||
|
||||
const state: MenuState = {
|
||||
menu: routes.filter((route) => route.meta.menuItem === true) as any,
|
||||
toggle: false
|
||||
};
|
||||
|
||||
const getters: GetterTree<MenuState, RootState> = {
|
||||
menu: (state): MenuItem[] => state.menu,
|
||||
toggle: (state): boolean => state.toggle
|
||||
};
|
||||
|
||||
const actions: ActionTree<MenuState, RootState> = {
|
||||
toggleMenu ({ commit }, status): void {
|
||||
commit(mutationTypes.TOGGLE_MENU, status);
|
||||
}
|
||||
};
|
||||
|
||||
const mutations: MutationTree<MenuState> = {
|
||||
[mutationTypes.TOGGLE_MENU] (state, status: boolean) {
|
||||
state.toggle = status;
|
||||
}
|
||||
};
|
||||
|
||||
export const menu: Module<MenuState, RootState> = {
|
||||
namespaced,
|
||||
state,
|
||||
getters,
|
||||
actions,
|
||||
mutations
|
||||
};
|
17
src/store/mutation-types.ts
Normal file
@ -0,0 +1,17 @@
|
||||
export const APP_MODE = 'APP_MODE';
|
||||
|
||||
export const APP_DEVICE = 'APP_DEVICE';
|
||||
|
||||
export const APP_THEME = 'APP_THEME';
|
||||
|
||||
export const APP_SIGHT = 'APP_SIGHT';
|
||||
|
||||
export const APP_POPUP = 'APP_POPUP';
|
||||
|
||||
export const APP_POPUP_CONTENT = 'APP_POPUP_CONTENT';
|
||||
|
||||
export const APP_POPUP_OFFSET_TOP = 'APP_POPUP_OFFSET_TOP';
|
||||
|
||||
export const SUNRISE_SUNSET = 'SUNRISE_SUNSET';
|
||||
|
||||
export const TOGGLE_MENU = 'TOGGLE_MENU';
|
36
src/store/types/app.ts
Normal file
@ -0,0 +1,36 @@
|
||||
import { SightState } from './sight';
|
||||
|
||||
export interface AppState {
|
||||
mode: AppMode;
|
||||
device: DeviceType;
|
||||
sight: SightState;
|
||||
theme: ThemeType;
|
||||
isPopup: boolean;
|
||||
popupContent: string;
|
||||
popupOffsetTop: number;
|
||||
validPopupTypes: Array<keyof typeof PopupType>;
|
||||
}
|
||||
|
||||
export enum AppMode {
|
||||
WEB = 'web',
|
||||
APP = 'app'
|
||||
}
|
||||
|
||||
export enum DeviceType {
|
||||
DESKTOP = 'desktop',
|
||||
MOBILE = 'mobile'
|
||||
}
|
||||
|
||||
export enum ThemeType {
|
||||
LIGHT = 'light',
|
||||
DARK = 'dark',
|
||||
RAINBOW_LIGHT = 'rainbow-light',
|
||||
RAINBOW_DARK = 'rainbow-dark'
|
||||
}
|
||||
|
||||
export enum PopupType {
|
||||
ANNOUNCEMENT = 'announcement',
|
||||
SUBMIT_INFO = 'submitInfo',
|
||||
OPEN_SUBMIT = 'openSubmit',
|
||||
LOUDLY = 'loudly'
|
||||
}
|
19
src/store/types/menu.ts
Normal file
@ -0,0 +1,19 @@
|
||||
import Vue, { VueConstructor } from 'vue';
|
||||
|
||||
export interface MenuState {
|
||||
menu: MenuItem[];
|
||||
toggle: boolean;
|
||||
}
|
||||
|
||||
export interface MenuItem {
|
||||
name: string;
|
||||
path: string;
|
||||
redirect?: string;
|
||||
component?: VueConstructor<Vue>;
|
||||
children?: MenuItem[];
|
||||
meta: {
|
||||
index?: number;
|
||||
label?: string;
|
||||
menuItem: boolean;
|
||||
};
|
||||
}
|
3
src/store/types/root.ts
Normal file
@ -0,0 +1,3 @@
|
||||
export interface RootState {
|
||||
version: string;
|
||||
}
|
10
src/store/types/sight.ts
Normal file
@ -0,0 +1,10 @@
|
||||
export interface SightState {
|
||||
offset: number;
|
||||
containerWidth: number;
|
||||
containerHeight: number;
|
||||
width: number;
|
||||
height: number;
|
||||
cols: number;
|
||||
rows: number;
|
||||
gap: number;
|
||||
}
|
20
src/store/types/sunRiseSunSet.ts
Normal file
@ -0,0 +1,20 @@
|
||||
export interface SunRiseSunSetState {
|
||||
sunrise: Date;
|
||||
sunset: Date;
|
||||
}
|
||||
|
||||
export interface SunRiseSunSetAPIResponsePayload {
|
||||
results: {
|
||||
sunrise: Date;
|
||||
sunset: Date;
|
||||
solar_noon: Date;
|
||||
day_length: number;
|
||||
civil_twilight_begin: Date;
|
||||
civil_twilight_end: Date;
|
||||
nautical_twilight_begin: Date;
|
||||
nautical_twilight_end: Date;
|
||||
astronomical_twilight_begin: Date;
|
||||
astronomical_twilight_end: Date;
|
||||
};
|
||||
status: string;
|
||||
}
|
6
src/store/types/template.ts
Normal file
@ -0,0 +1,6 @@
|
||||
export interface TemplateState {
|
||||
announcement: string;
|
||||
submitInfo: string;
|
||||
openSubmit: string;
|
||||
loudly: string;
|
||||
}
|
62
template/espresso.cfp.ts
Normal file
@ -0,0 +1,62 @@
|
||||
export default [
|
||||
{
|
||||
title: '我也能讓 Python 幫忙操控電腦嗎?',
|
||||
ytLink: 'https://www.youtube.com/watch?v=MfiKAOBrPpk',
|
||||
introdLink: 'https://sitcon.org/2020/agenda/32ba951d-3cfb-4461-ae6a-5ddbab693b8b',
|
||||
img: 'https://img.youtube.com/vi/MfiKAOBrPpk/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '我只是個學生,架個網站不想花錢',
|
||||
ytLink: 'https://www.youtube.com/watch?v=NGqXSCFvZ3M',
|
||||
introdLink: 'https://sitcon.org/2020/agenda/0fe7e40c-4a84-4363-9e60-4188d81ccecc',
|
||||
img: 'https://img.youtube.com/vi/NGqXSCFvZ3M/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '校園資安實務 - DNS',
|
||||
ytLink: 'https://www.youtube.com/watch?v=CEPVFcZMeQg',
|
||||
introdLink: 'https://sitcon.org/2020/agenda/58ec7c4a-ede5-44c5-8b46-e33471543fa1',
|
||||
img: 'https://img.youtube.com/vi/CEPVFcZMeQg/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '淺談社會網路分析',
|
||||
ytLink: 'https://youtu.be/GFfaD-kVe_A',
|
||||
introdLink: 'https://sitcon.org/2019/agenda/f60637a1-0ccb-4c02-b1b0-be7a6a393d87',
|
||||
img: 'https://img.youtube.com/vi/GFfaD-kVe_A/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '你所不知道的維基 - Wikidata',
|
||||
ytLink: 'https://youtu.be/kD-jGfDZGGo',
|
||||
introdLink: 'https://sitcon.org/2019/agenda/7959ab0b-cdfa-40bc-8566-099477abb195',
|
||||
img: 'https://img.youtube.com/vi/kD-jGfDZGGo/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: 'AI for the Art in a Box',
|
||||
ytLink: 'https://youtu.be/iZz5au-vVHk',
|
||||
introdLink: 'https://sitcon.org/2019/agenda/0b49bfce-a147-4702-a5b9-87eb2dfa5135',
|
||||
img: 'https://img.youtube.com/vi/iZz5au-vVHk/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '校園駭客-看你學號() return 你家住址;',
|
||||
ytLink: 'https://www.youtube.com/watch?v=yahEwM88q-Q',
|
||||
introdLink: 'https://sitcon.org/2018/#/agenda/sub/b8998705-c6e2-4c48-ae76-984f23b54719',
|
||||
img: 'https://img.youtube.com/vi/yahEwM88q-Q/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '600 秒學會 UI 設計',
|
||||
ytLink: 'https://www.youtube.com/watch?v=hqhmwt7SCJc',
|
||||
introdLink: 'https://sitcon.org/2018/#/agenda/sub/d6daa14b-39ef-410b-883c-0b1c3ae02a60',
|
||||
img: 'https://img.youtube.com/vi/hqhmwt7SCJc/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '深度學習如何深度學習',
|
||||
ytLink: 'https://www.youtube.com/watch?v=H5o5Oa_nbqs',
|
||||
introdLink: 'https://sitcon.org/2018/#/agenda/sub/f3c6853d-2b0e-464c-8837-9411455961d8',
|
||||
img: 'https://img.youtube.com/vi/H5o5Oa_nbqs/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '格鬥遊戲 AI 開發經驗談',
|
||||
ytLink: 'https://www.youtube.com/watch?v=ryLLzSwQ54w',
|
||||
introdLink: '',
|
||||
img: 'https://img.youtube.com/vi/ryLLzSwQ54w/mqdefault.jpg'
|
||||
}
|
||||
];
|
67
template/presentation.cfp.ts
Normal file
@ -0,0 +1,67 @@
|
||||
export default [
|
||||
{
|
||||
title: 'CDN 網站攻擊 - 這次換駭客當鬼來抓你了',
|
||||
ytLink: 'https://www.youtube.com/watch?v=aomXTCTlIW4',
|
||||
introdLink: 'https://sitcon.org/2020/agenda/14e76dd3-d03b-4a67-843c-f0fe9beae35c',
|
||||
img: 'https://img.youtube.com/vi/aomXTCTlIW4/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '第一次做密室逃脫就上手',
|
||||
ytLink: 'https://www.youtube.com/watch?v=1gFBx16AlMc',
|
||||
introdLink: 'https://sitcon.org/2020/agenda/bdcf60d1-4ea7-4485-bc64-a6252eabc19f',
|
||||
img: 'https://img.youtube.com/vi/1gFBx16AlMc/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: 'Playing Win32 Like a K!NG ;)',
|
||||
ytLink: 'https://www.youtube.com/watch?v=TkC19ukBBxk',
|
||||
introdLink: 'https://sitcon.org/2020/agenda/d1cab966-02ee-4cfa-9cac-404f885048fb',
|
||||
img: 'https://img.youtube.com/vi/TkC19ukBBxk/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '從學校到業界,工程師作為職業的現實',
|
||||
ytLink: 'https://youtu.be/qYxdomoMEf8',
|
||||
introdLink: 'https://sitcon.org/2019/agenda/7a67f4fb-b6f4-4595-b9af-527b3024c8f8',
|
||||
img: 'https://img.youtube.com/vi/qYxdomoMEf8/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: 'TMML 真相靠自己─You are Fake News!',
|
||||
ytLink: 'https://youtu.be/9PFZ0_C2Sxo',
|
||||
introdLink: 'https://sitcon.org/2019/agenda/f5d28cd1-5165-4388-9dc2-5d2257a5b5bc',
|
||||
img: 'https://img.youtube.com/vi/9PFZ0_C2Sxo/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '黑客、社團、資訊魔法學習大總匯',
|
||||
ytLink: 'https://youtu.be/SkUuK731XGY',
|
||||
introdLink: 'https://sitcon.org/2019/agenda/64ed212c-f1a9-40df-a84e-5f7411d4c887',
|
||||
img: 'https://img.youtube.com/vi/SkUuK731XGY/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '奔跑吧!台北:遊戲開發經驗分享',
|
||||
ytLink: 'https://www.youtube.com/watch?v=85bW97XI4i0',
|
||||
introdLink: 'https://sitcon.org/2018/#/agenda/sub/d946b6e1-d826-4c64-86a4-bf013bcc0c06',
|
||||
img: 'https://img.youtube.com/vi/85bW97XI4i0/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: ' Club Mate 與德國駭客精神:34C3 大會實錄',
|
||||
ytLink: 'https://www.youtube.com/watch?v=8xrYLc4num8',
|
||||
introdLink: 'https://sitcon.org/2018/#/agenda/sub/35598abf-4efe-48fc-93a4-3d539e6f6c47',
|
||||
img: 'https://img.youtube.com/vi/8xrYLc4num8/mqdefault.jpg'
|
||||
}, {
|
||||
title: '由淺入坑區塊鏈~從認識架構到應用智能合約!',
|
||||
ytLink: 'https://www.youtube.com/watch?v=B3fXXElzc9Q',
|
||||
introdLink: 'https://sitcon.org/2018/#/agenda/sub/08c2816d-ea25-4169-89e6-dc0e0bc7b9a4',
|
||||
img: 'https://img.youtube.com/vi/B3fXXElzc9Q/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: '開發學校雲端服務的奇技淫巧',
|
||||
ytLink: 'https://www.youtube.com/watch?v=msrsjX8mddE',
|
||||
introdLink: '',
|
||||
img: 'https://img.youtube.com/vi/msrsjX8mddE/mqdefault.jpg'
|
||||
},
|
||||
{
|
||||
title: 'cjdns: 重新發明網路',
|
||||
ytLink: 'https://www.youtube.com/watch?v=l75ArFBCMlM',
|
||||
introdLink: '',
|
||||
img: 'https://img.youtube.com/vi/l75ArFBCMlM/mqdefault.jpg'
|
||||
}
|
||||
];
|
22
template/themeExample.cfp.ts
Normal file
@ -0,0 +1,22 @@
|
||||
export default [
|
||||
{
|
||||
title: 'Fact Checking:資訊的虛與實',
|
||||
context: '近年來隨著社交媒體的普及,假消息、錯誤消息、不實消息也變得更容易流竄在其中,因此如何辨識消息、使正確消息傳播、消息類型的分辨,都是可以進行的方向。'
|
||||
},
|
||||
{
|
||||
title: 'I DUNNO 我唔知道:學習經驗分享',
|
||||
context: '「不知道為什麼,但是它成功運作了。」坦然接受自己無知的精神,才能持續進步。'
|
||||
},
|
||||
{
|
||||
title: 'IT×Anything:跨界不設限',
|
||||
context: '除了同或反方向,在 a × b 都能夠在另一個方向呈現不一樣的風貌,對應到「人類的進步需要許多的開發」或「專案都需要跨領域人才」這件事情。'
|
||||
},
|
||||
{
|
||||
title: '開源了,然後呢?Open Source 奇聞軼事',
|
||||
context: '各大企業紛紛投向開放原始碼的懷抱,但在免費、人人都能自由使用的表象下,開源社群面臨的挑戰才正要開始:產業巨頭挾帶優勢資源,夷平了原本多元發展的專案生態圈;程式碼是開放了、社群協作和影響產業的空間卻少了。知名套件開發者因為無法獲利而轉向閉源,甚至去中心化的開源貨幣協定被開發團隊以外的人搶先部署套利⋯⋯「後開源時代」裡,有哪些你關注的奇聞軼事?我們又該怎麼走出屬於社群的路?'
|
||||
},
|
||||
{
|
||||
title: '技術是中立的嗎?老大哥沒有輸',
|
||||
context: '為了防治疫情,我們可以利用技術製作口罩地圖,也可以建設「電子圍籬」追蹤居家隔離的手機確保他們沒有外出,甚至可以利用健保卡連接出入境資料庫確保患者沒有感染風險。這些看似合理的技術手段,確實達到了目的,但技術是中立的嗎?還是國家機器其實動得很厲害,只是大家沒有注意到呢?我們邀請你一同來回答這個問題。(關鍵字:口罩地圖、電子圍籬、健保卡、手機定位追蹤、eID、科技偵查法、或其他有關主題)'
|
||||
}
|
||||
];
|
40
tsconfig.json
Normal file
@ -0,0 +1,40 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "esnext",
|
||||
"module": "esnext",
|
||||
"strict": true,
|
||||
"jsx": "preserve",
|
||||
"importHelpers": true,
|
||||
"moduleResolution": "node",
|
||||
"experimentalDecorators": true,
|
||||
"skipLibCheck": true,
|
||||
"esModuleInterop": true,
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"sourceMap": true,
|
||||
"baseUrl": ".",
|
||||
"types": [
|
||||
"webpack-env"
|
||||
],
|
||||
"paths": {
|
||||
"@/*": [
|
||||
"src/*"
|
||||
]
|
||||
},
|
||||
"lib": [
|
||||
"esnext",
|
||||
"dom",
|
||||
"dom.iterable",
|
||||
"scripthost"
|
||||
]
|
||||
},
|
||||
"include": [
|
||||
"src/**/*.ts",
|
||||
"src/**/*.tsx",
|
||||
"src/**/*.vue",
|
||||
"tests/**/*.ts",
|
||||
"tests/**/*.tsx"
|
||||
],
|
||||
"exclude": [
|
||||
"node_modules"
|
||||
]
|
||||
}
|