Skip to content

Commit 37ab865

Browse files
authored
Merge branch 'dev' into post-export
2 parents 26df5fb + db6edf6 commit 37ab865

29 files changed

+361
-207
lines changed

package.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,10 @@
1111
"test:unit": "vue-cli-service test:unit"
1212
},
1313
"dependencies": {
14+
"@vue/eslint-config-airbnb": "^4.0.1",
1415
"core-js": "^2.6.5",
15-
"portal-vue": "2.1.6",
16+
"eslint-config-airbnb-base": "^14.0.0",
17+
"portal-vue": "^2.1.6",
1618
"postcss-import": "12.0.1",
1719
"prosemirror-example-setup": "1.0.1",
1820
"prosemirror-model": "1.7.2",
@@ -33,13 +35,12 @@
3335
"@vue/cli-plugin-eslint": "^3.11.0",
3436
"@vue/cli-plugin-unit-jest": "^3.11.0",
3537
"@vue/cli-service": "^3.11.0",
36-
"@vue/eslint-config-airbnb": "^4.0.0",
3738
"@vue/test-utils": "1.0.0-beta.29",
3839
"babel-core": "7.0.0-bridge.0",
3940
"babel-eslint": "^10.0.1",
4041
"babel-jest": "^23.6.0",
41-
"eslint": "^5.16.0",
42-
"eslint-plugin-vue": "^5.0.0",
42+
"eslint": "^6.5.1",
43+
"eslint-plugin-vue": "^5.2.3",
4344
"lint-staged": "^8.1.5",
4445
"vue-template-compiler": "^2.6.10"
4546
},

src/App.vue

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
11
<template>
22
<div id="app">
3-
<!-- <nav id="nav" class="container max-w-3xl Block-md-t Block-sm-b">
4-
<router-link to="/" class="font-title">Corvid Writing</router-link>
5-
</nav> -->
63
<NavBar></NavBar>
74
<vue-page-transition :name="transitionName">
85
<router-view />
96
</vue-page-transition>
10-
11-
<portal-target name="modals" multiple />
7+
<portal-target name="modals" multiple></portal-target>
128
</div>
139
</template>
1410

src/assets/css/layout/layout-block.css

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,20 @@
55
66
*/
77

8+
:root {
9+
--block-size-ratio: theme(responsiveScale.blockXs);
10+
}
11+
@screen sm {
12+
:root {
13+
--block-size-ratio: theme(responsiveScale.blockSm);
14+
}
15+
}
16+
@screen lg {
17+
:root {
18+
--block-size-ratio: theme(responsiveScale.blockMd);
19+
}
20+
}
21+
822
/* LG */
923

1024
.Block {
@@ -52,19 +66,3 @@
5266
margin-top: calc(theme(spacing.12) * var(--block-size-ratio));
5367
}
5468

55-
56-
/* SCALE */
57-
58-
:root {
59-
--block-size-ratio: theme(responsiveScale.blockXs);
60-
}
61-
@screen sm {
62-
:root {
63-
--block-size-ratio: theme(responsiveScale.blockSm);
64-
}
65-
}
66-
@screen lg {
67-
:root {
68-
--block-size-ratio: theme(responsiveScale.blockMd);
69-
}
70-
}

src/assets/css/typography/typography-spacing.css

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,18 +27,18 @@
2727
*/
2828

2929
.s-block-p:not(:last-child) {
30-
margin-bottom: calc(theme(spacing.5) * var(--space-ratio));
30+
margin-bottom: calc(theme(spacing.3) * var(--space-ratio));
3131
}
3232

3333
.s-p {
34-
margin-bottom: calc(theme(spacing.6) * var(--space-ratio));
34+
margin-bottom: calc(theme(spacing.3) * var(--space-ratio));
3535
}
3636
.st-p {
37-
margin-top: calc(theme(spacing.6) * var(--space-ratio));
37+
margin-top: calc(theme(spacing.3) * var(--space-ratio));
3838
}
3939
.sy-p {
40-
margin-top: calc(theme(spacing.6) * var(--space-ratio));
41-
margin-bottom: calc(theme(spacing.6) * var(--space-ratio));
40+
margin-top: calc(theme(spacing.3) * var(--space-ratio));
41+
margin-bottom: calc(theme(spacing.3) * var(--space-ratio));
4242
}
4343

4444
/*
@@ -49,14 +49,14 @@
4949

5050
.s-block-h:not(:last-child),
5151
.s-h {
52-
margin-bottom: calc(theme(spacing.4) * var(--space-ratio));
52+
margin-bottom: calc(theme(spacing.6) * var(--space-ratio));
5353
}
5454
.st-h {
55-
margin-top: calc(theme(spacing.4) * var(--space-ratio));
55+
margin-top: calc(theme(spacing.6) * var(--space-ratio));
5656
}
5757
.sy-h {
58-
margin-top: calc(theme(spacing.4) * var(--space-ratio));
59-
margin-bottom: calc(theme(spacing.4) * var(--space-ratio));
58+
margin-top: calc(theme(spacing.6) * var(--space-ratio));
59+
margin-bottom: calc(theme(spacing.6) * var(--space-ratio));
6060
}
6161

6262
.s-2xh {

src/assets/css/typography/typography-text.css

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,11 @@ body,
4343
font-size: calc(theme(fontSize.xl) * var(--text-ratio));
4444
}
4545

46+
ol {
47+
list-style-type: decimal;
48+
padding-left: calc(theme(spacing.6) * var(--text-ratio));
49+
}
50+
4651
/*
4752
4853
Color schema

src/assets/fonts/SFMono-Bold.otf

91.6 KB
Binary file not shown.
88.4 KB
Binary file not shown.

src/assets/fonts/SFMono-Heavy.otf

85.4 KB
Binary file not shown.
79.7 KB
Binary file not shown.

src/assets/fonts/SFMono-Light.otf

84.8 KB
Binary file not shown.
80.5 KB
Binary file not shown.

src/assets/fonts/SFMono-Medium.otf

92 KB
Binary file not shown.
88.7 KB
Binary file not shown.

src/assets/fonts/SFMono-Regular.otf

91.7 KB
Binary file not shown.
89.2 KB
Binary file not shown.

src/assets/fonts/SFMono-Semibold.otf

91.7 KB
Binary file not shown.
89.6 KB
Binary file not shown.

src/assets/icons/close.svg

Lines changed: 1 addition & 0 deletions
Loading

src/components/Editor.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ export default {
160160

161161
<style lang="postcss">
162162
.Placeholder {
163-
@apply font-title text-brand-primary pl-6;
163+
@apply font-title text-brand-primary pl-6 mt-1;
164164
@apply absolute;
165165
margin-left: 3px;
166166
}

src/components/Info.vue

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
<template>
2+
<div class="container max-w-3xl Block">
3+
<div class="px-6 pt-2">
4+
<h1
5+
class="Text-lg font-title font-bold text-brand-primary s-p"
6+
>{{ thisTitle }}</h1>
7+
<p class="s-p">{{ thisOne }}</p>
8+
<!-- <p class="s-p">{{ thisTwo }}</p> -->
9+
<p class="s-p">{{ thisThree }}</p>
10+
<h1
11+
class="Text-lg font-title font-bold text-brand-primary s-p st-2xh"
12+
>{{ howTitle }}</h1>
13+
<ol>
14+
<li class="s-p">{{ howOne }}</li>
15+
<li class="s-p">{{ howTwo }}</li>
16+
<li class="s-2xh">{{ howThree }}</li>
17+
</ol>
18+
<p class="Text-xs text-gray-mid">{{ version }}</p>
19+
</div>
20+
</div>
21+
</template>
22+
23+
<script>
24+
// import Modal from '@/components/Modal.vue';
25+
26+
export default {
27+
components: {},
28+
props: [],
29+
data() {
30+
return {
31+
thisTitle: 'What is this?',
32+
thisOne:
33+
"Corvid Reply helps you reply to your project collaborators by choosing only what's most important in the conversation. It removes the superfluous and helps avoid important info falling through the cracks.",
34+
thisTwo:
35+
'It removes the superfluous and helps avoid important info falling through the cracks.',
36+
thisThree:
37+
"We also give you custom formatted responses to paste into for your favourite project mangement apps. So it's clear who said what.",
38+
howTitle: 'How does it work?',
39+
howOne: 'Click on the line you wish to reply to.',
40+
howTwo:
41+
'Select multiple sentences by holding `command` while you click.',
42+
howThree:
43+
'Choose to export to Gmail, Slack or Basecamp.',
44+
version: 'Version 0.0.1 2019-10-01',
45+
};
46+
},
47+
};
48+
</script>
49+
50+
<style lang="postcss" scoped>
51+
.Block {
52+
margin-top: calc(theme(spacing.40) * var(--block-size-ratio));
53+
margin-bottom: calc(theme(spacing.24) * var(--block-size-ratio));
54+
}
55+
</style>

src/components/Modal.vue

Lines changed: 33 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,17 @@
11
<template>
22
<transition name="Modal">
3-
<div class="Modal-backdrop z-100" v-show="show" @click="dismiss">
4-
<div class="Modal" @click="stopPropagation">
5-
<slot />
3+
<div v-show="show" class="Modal-backdrop">
4+
<div class="Modal">
5+
<slot></slot>
66
</div>
77
</div>
88
</transition>
99
</template>
1010

1111
<script>
12-
// import IconBase from "@/components/IconBase";
13-
// import IconUIClose from "@/components/icons/IconUIClose";
14-
1512
/* https://learn.adamwathan.com/advanced-vue/encapsulating-external-behavior-background-scrolling */
1613
1714
export default {
18-
components: {},
1915
props: {
2016
show: { required: true },
2117
preventBackgroundScrolling: { default: true },
@@ -28,8 +24,10 @@ export default {
2824
if (this.preventBackgroundScrolling) {
2925
if (show) {
3026
document.body.style.setProperty('overflow', 'hidden');
27+
document.body.classList.add('modal-is-active');
3128
} else {
3229
document.body.style.removeProperty('overflow');
30+
document.body.classList.remove('modal-is-active');
3331
}
3432
}
3533
},
@@ -47,84 +45,49 @@ export default {
4745
});
4846
},
4947
methods: {
50-
stopPropagation(event) {
51-
event.stopPropagation();
48+
closeVideo() {
49+
// eslint-disable-next-line
50+
const video = document.getElementsByTag("video");
51+
this.video.pause();
52+
this.video.currentTime = 0;
5253
},
5354
dismiss() {
5455
this.$emit('close');
55-
document.body.style.removeProperty('overflow');
5656
},
5757
},
5858
};
5959
</script>
6060

61-
<style scoped>
62-
.Modal-backdrop {
63-
position: fixed;
64-
top: 0;
65-
right: 0;
66-
bottom: 0;
67-
left: 0;
68-
overflow: auto;
69-
display: flex;
70-
align-items: center;
71-
justify-content: center;
72-
width: auto;
73-
}
74-
75-
@keyframes headerIn {
76-
from {
77-
opacity: 0;
78-
}
79-
to {
80-
opacity: 1;
61+
<style lang="postcss" scoped>
62+
.Modal-backdrop {
63+
@apply fixed inset-0 overflow-auto;
64+
background-color: rgba(255, 255, 255, 0.96);
65+
z-index: 99; /* below vue-headroom */
8166
}
82-
}
8367
84-
.Modal {
85-
@apply py-5 px-7;
86-
animation: headerIn 750ms cubic-bezier(0.19, 1, 0.22, 1);
87-
background-color: #fff;
88-
89-
@media (max-width: 768px) and (orientation: landscape) {
90-
height: auto;
68+
.Modal {
69+
/* @apply h-full; */
70+
/* @apply bg-white; */
9171
}
92-
}
93-
94-
.Modal-close {
95-
cursor: pointer;
96-
padding: calc(1.75 * var(--rs-space));
97-
position: absolute;
98-
right: 0;
99-
top: 0;
100-
z-index: 1;
10172
102-
&:focus,
103-
&:active {
104-
outline: none;
73+
.Modal-close {
74+
@apply absolute inset-0 p-4 z-10 cursor-pointer;
10575
}
10676
107-
& >>> svg {
108-
height: 2.5em;
109-
width: 2.5em;
110-
111-
@media (--sm) {
112-
height: 3em;
113-
width: 3em;
114-
}
77+
.Modal-close:focus,
78+
.Modal-close:active {
79+
@apply outline-none;
11580
}
116-
}
117-
118-
/*
119-
* Transitions auto-applied to elements with
120-
* transition="modal" when their visibility is toggled by Vue.
121-
*/
12281
123-
.Modal-enter-active, .Modal-leave-active {
124-
transition: opacity .2s;
125-
}
82+
/* Transition */
83+
.Modal-enter-active,
84+
.Modal-leave-active {
85+
transition: opacity 500ms cubic-bezier(0.19, 1, 0.22, 1);
86+
}
12687
127-
.Modal-enter, .Modal-leave-to /* .Modal-leave-active below version 2.1.8 */ {
128-
opacity: 0;
129-
}
88+
.Modal-enter,
89+
.Modal-leave-to {
90+
@apply opacity-0;
91+
/* transform: scale(1.05); */
92+
}
13093
</style>

0 commit comments

Comments
 (0)