Skip to content

Commit b546c21

Browse files
feat: template content justified bottom
1 parent 9777a9c commit b546c21

File tree

17 files changed

+60
-34
lines changed

17 files changed

+60
-34
lines changed

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@
1212
- core: v8.1.2 ([CHANGELOG](https://github.com/deckgo/deckdeckgo/blob/master/webcomponents/core/CHANGELOG.md))
1313
- highlight-code: v2.3.2 ([CHANGELOG](https://github.com/deckgo/deckdeckgo/blob/master/webcomponents/highlight-code/CHANGELOG.md))
1414

15+
### Web Components: Templates
16+
17+
- slide-content: v2.3.0 ([CHANGELOG](https://github.com/deckgo/deckdeckgo/blob/master/webcomponents/slides/content/CHANGELOG.md))
18+
1519
### Others
1620

1721
- cli: v2.1.1 ([CHANGELOG](https://github.com/deckgo/deckdeckgo/blob/master/cli/CHANGELOG.md))

docs/docs/slides/app-slide-content/app-slide-content.md

+10-9
Original file line numberDiff line numberDiff line change
@@ -117,14 +117,15 @@ This component offers the following options which could be set using attributes:
117117

118118
The following theming options will affect this component if set on its host or parent.
119119

120-
| CSS4 variable | Default | Note |
121-
| ---------------------- | ------- | ------------------------------- |
122-
| --background | | |
123-
| --color | | |
124-
| --slide-padding-top | 16px | Padding top of the all slide |
125-
| --slide-padding-end | 32px | Padding right of the all slide |
126-
| --slide-padding-bottom | 16px | Padding bottom of the all slide |
127-
| --slide-padding-start | 32px | Padding left of the all slide |
128-
| --zIndex | 1 | The z-index of the slide |
120+
| CSS4 variable | Default | Note |
121+
| ------------------------------- | ---------- | -------------------------------- |
122+
| --background | | |
123+
| --color | | |
124+
| --slide-padding-top | 16px | Padding top of the all slide |
125+
| --slide-padding-end | 32px | Padding right of the all slide |
126+
| --slide-padding-bottom | 16px | Padding bottom of the all slide |
127+
| --slide-padding-start | 32px | Padding left of the all slide |
128+
| --slide-content-justify-content | flex-start | Justify the content of the slide |
129+
| --zIndex | 1 | The z-index of the slide |
129130

130131
[deckdeckgo]: https://deckdeckgo.com

docs/package-lock.json

+3-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"@deckdeckgo/slide-big-img": "^2.2.2",
3333
"@deckdeckgo/slide-chart": "^2.2.2",
3434
"@deckdeckgo/slide-code": "^3.1.2",
35-
"@deckdeckgo/slide-content": "^2.2.2",
35+
"@deckdeckgo/slide-content": "^2.3.0",
3636
"@deckdeckgo/slide-countdown": "^2.2.2",
3737
"@deckdeckgo/slide-gif": "^3.2.2",
3838
"@deckdeckgo/slide-playground": "^2.2.2",

remote/package-lock.json

+3-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

remote/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"@deckdeckgo/slide-big-img": "^2.2.2",
3333
"@deckdeckgo/slide-chart": "^2.2.2",
3434
"@deckdeckgo/slide-code": "^3.1.2",
35-
"@deckdeckgo/slide-content": "^2.2.2",
35+
"@deckdeckgo/slide-content": "^2.3.0",
3636
"@deckdeckgo/slide-countdown": "^2.2.2",
3737
"@deckdeckgo/slide-gif": "^3.2.2",
3838
"@deckdeckgo/slide-playground": "^2.2.2",

studio/package-lock.json

+3-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

studio/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
"@deckdeckgo/slide-aspect-ratio": "^3.2.2",
3636
"@deckdeckgo/slide-author": "^2.2.2",
3737
"@deckdeckgo/slide-chart": "^2.2.2",
38-
"@deckdeckgo/slide-content": "^2.2.2",
38+
"@deckdeckgo/slide-content": "^2.3.0",
3939
"@deckdeckgo/slide-gif": "^3.2.2",
4040
"@deckdeckgo/slide-playground": "^2.2.2",
4141
"@deckdeckgo/slide-poll": "^2.2.3",

studio/src/app/components/editor/templates/platform/app-templates-default/app-templates-default.tsx

+12-1
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ export class AppTemplatesDefault {
9292
return (
9393
<Fragment>
9494
{this.renderTitle()}
95+
9596
{this.renderContent()}
9697

9798
{this.renderSplit()}
@@ -120,7 +121,17 @@ export class AppTemplatesDefault {
120121
}
121122

122123
private renderContent() {
123-
return <app-templates-content custom-tappable onClick={() => this.composeTemplate.emit({template: SlideTemplate.CONTENT})}></app-templates-content>;
124+
const flexEndStyle = {'--slide-content-justify-content': 'flex-end'};
125+
126+
return (
127+
<Fragment>
128+
<app-templates-content custom-tappable onClick={() => this.composeTemplate.emit({template: SlideTemplate.CONTENT})}></app-templates-content>
129+
<app-templates-content
130+
custom-tappable
131+
onClick={() => this.composeTemplate.emit({template: SlideTemplate.CONTENT, style: flexEndStyle})}
132+
style={flexEndStyle}></app-templates-content>
133+
</Fragment>
134+
);
124135
}
125136

126137
private renderSplit() {

studio/src/app/popovers/editor/app-create-slide/app-create-slide.scss

+1-2
Original file line numberDiff line numberDiff line change
@@ -44,15 +44,14 @@ app-create-slide {
4444
}
4545

4646
div.item {
47-
min-height: 7rem;
48-
height: fit-content;
4947
overflow: hidden;
5048

5149
background: white;
5250

5351
@include editor.panel;
5452

5553
--slide-width: 100%;
54+
--slide-height: 7rem;
5655

5756
deckgo-slide-title,
5857
deckgo-slide-content,

studio/src/app/popovers/editor/app-create-slide/app-create-slide.tsx

+6-4
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ export class AppCreateSlide {
3333

3434
@Event() signIn: EventEmitter<void>;
3535

36-
private async addSlide(template: SlideTemplate, deck?: Deck, elements?: SlotType[]) {
37-
const slide: JSX.IntrinsicElements = await CreateSlidesUtils.createSlide({template, elements}, deck);
36+
private async addSlide(template: SlideTemplate, deck?: Deck, elements?: SlotType[], style?: {[key: string]: string}) {
37+
const slide: JSX.IntrinsicElements = await CreateSlidesUtils.createSlide({template, elements, style}, deck);
3838
await this.closePopover(template, slide);
3939
}
4040

@@ -137,7 +137,7 @@ export class AppCreateSlide {
137137
if (this.composeTemplate.template === SlideTemplate.SPLIT) {
138138
await this.addSlideSplit(SlideTemplate.SPLIT, this.composeTemplate.attributes, elements);
139139
} else if (this.composeTemplate.template === SlideTemplate.CONTENT) {
140-
await this.addSlide(SlideTemplate.CONTENT, undefined, elements);
140+
await this.addSlide(SlideTemplate.CONTENT, undefined, elements, this.composeTemplate.style);
141141
} else if (this.composeTemplate.scope === SlideScope.USER) {
142142
await this.addRestrictedSlide(this.composeTemplate.template, SlideScope.USER, elements);
143143
} else if (this.composeTemplate.scope === SlideScope.COMMUNITY) {
@@ -315,7 +315,9 @@ export class AppCreateSlide {
315315
};
316316

317317
if (slideTemplate === SlideTemplate.CONTENT) {
318-
return <app-templates-content highlight={true} highlightIndex={this.elements?.length} {...attr}></app-templates-content>;
318+
return (
319+
<app-templates-content highlight={true} highlightIndex={this.elements?.length} {...attr} style={this.composeTemplate.style}></app-templates-content>
320+
);
319321
} else if (slideTemplate === SlideTemplate.SPLIT) {
320322
return <app-templates-split vertical={this.composeTemplate.attributes !== undefined} {...attr}></app-templates-split>;
321323
} else if (SlideUtils.isSlideTemplate(this.composeTemplate.scope)) {

studio/src/app/utils/editor/create-slides.utils.tsx

+4-3
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ export interface InitTemplate {
2626
scope?: SlideScope;
2727
elements?: SlotType[];
2828
attributes?: SlideAttributes;
29+
style?: {[key: string]: string};
2930
}
3031

3132
export class CreateSlidesUtils {
@@ -39,7 +40,7 @@ export class CreateSlidesUtils {
3940

4041
private static async createSlideDefault(template: InitTemplate, deck?: Deck): Promise<JSX.IntrinsicElements> {
4142
if (template.template === SlideTemplate.CONTENT) {
42-
return this.createSlideContent(template.elements);
43+
return this.createSlideContent(template.elements, template.style);
4344
} else if (template.template === SlideTemplate.SPLIT) {
4445
return this.createSlideSplit(template.elements);
4546
} else if (template.template === SlideTemplate.GIF) {
@@ -81,15 +82,15 @@ export class CreateSlidesUtils {
8182
});
8283
}
8384

84-
private static createSlideContent(elements: SlotType[]): Promise<JSX.IntrinsicElements | undefined> {
85+
private static createSlideContent(elements: SlotType[], style?: {[key: string]: string}): Promise<JSX.IntrinsicElements | undefined> {
8586
return new Promise<JSX.IntrinsicElements>((resolve) => {
8687
if (!elements || elements.length < 1) {
8788
resolve(undefined);
8889
return;
8990
}
9091

9192
const slide: JSX.IntrinsicElements = (
92-
<deckgo-slide-content key={uuid()}>
93+
<deckgo-slide-content key={uuid()} style={style}>
9394
{this.createElement(elements[0], 'title')}
9495
{elements.length >= 2 ? this.createElement(elements[1], 'content') : undefined}
9596
</deckgo-slide-content>

webcomponents/slides/content/CHANGELOG.md

+6
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
# 2.3.0 (2021-02-05)
2+
3+
### Style
4+
5+
- new style `--slide-content-justify-content` to align content to bottom
6+
17
# 2.2.2 (2020-11-14)
28

39
### Fix

webcomponents/slides/content/package-lock.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

webcomponents/slides/content/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@deckdeckgo/slide-content",
3-
"version": "2.2.2",
3+
"version": "2.3.0",
44
"description": "The Content template is a simple slide which display a title and content aligned to the start of the page of the presentation",
55
"main": "dist/index.cjs.js",
66
"module": "dist/index.js",

webcomponents/slides/content/src/components/slide/deckdeckgo-slide-content.scss

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
div.deckgo-slide {
55
flex-direction: column;
66
align-items: flex-start;
7-
justify-content: flex-start;
7+
justify-content: var(--slide-content-justify-content, flex-start);
88
}
99

1010
::slotted([slot="title"]),

webcomponents/slides/content/src/index.html

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111

1212
<script type="module" src="https://unpkg.com/@deckdeckgo/core@latest/dist/deckdeckgo/deckdeckgo.esm.js"></script>
1313

14+
<script type="module" src="https://unpkg.com/@deckdeckgo/reveal@latest/dist/deckdeckgo-reveal/deckdeckgo-reveal.esm.js"></script>
15+
1416
<style>
1517
* {
1618
box-sizing: border-box;

0 commit comments

Comments
 (0)