Skip to content

Commit cf64122

Browse files
Merge pull request #1944 from maufcost/issue/1775-settings-dialog
Adopted the new settings dialog component for obo nodes
2 parents 4a182ab + 6682126 commit cf64122

9 files changed

Lines changed: 70 additions & 62 deletions

File tree

packages/app/obojobo-document-engine/src/scripts/common/components/modal/settings-dialog.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
.obojobo-draft--components--modal--settings-dialog {
44
text-align: left;
55
min-width: 20em;
6-
width: 40vw;
76
display: flex;
87
flex-flow: column wrap;
98

packages/obonode/obojobo-chunks-figure/__snapshots__/choose-image-modal.test.js.snap

Lines changed: 12 additions & 12 deletions
Large diffs are not rendered by default.

packages/obonode/obojobo-chunks-figure/__snapshots__/image-properties-modal.test.js.snap

Lines changed: 8 additions & 8 deletions
Large diffs are not rendered by default.

packages/obonode/obojobo-chunks-figure/choose-image-modal.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ import './choose-image-modal.scss'
33
import React from 'react'
44

55
import API from 'obojobo-document-engine/src/scripts/viewer/util/api'
6-
import Common from 'obojobo-document-engine/src/scripts/common'
76

8-
const { SimpleDialog } = Common.components.modal
7+
import SettingsDialog from 'obojobo-document-engine/src/scripts/common/components/modal/settings-dialog'
8+
import SettingsDialogRow from 'obojobo-document-engine/src/scripts/common/components/modal/settings-dialog-row'
99
import { uploadFileViaImageNode } from './utils'
1010
const IMAGE_BATCH_SIZE = 11 // load 11 images at a time
1111

@@ -78,15 +78,14 @@ class ChooseImageModal extends React.Component {
7878
: `${this.state.media.length} Recent Images loaded${this.state.hasMore ? ' with more' : ''}`
7979

8080
return (
81-
<SimpleDialog
82-
cancelOk
81+
<SettingsDialog
8382
title="Upload or Choose an Image"
8483
onConfirm={() => this.props.onCloseChooseImageModal(this.state.url)}
8584
onCancel={() => this.props.onCloseChooseImageModal(null)}
8685
focusOnFirstElement={this.focusOnFirstElement}
8786
>
8887
<div className="choose-image">
89-
<div className="choose-image--image-controls">
88+
<SettingsDialogRow className="choose-image--image-controls">
9089
<div className="choose-image--image-controls--upload">
9190
<input
9291
type="file"
@@ -117,7 +116,7 @@ class ChooseImageModal extends React.Component {
117116
tabIndex="0"
118117
aria-label="Enter image URL"
119118
/>
120-
</div>
119+
</SettingsDialogRow>
121120
<div className="choose-image--divider" />
122121
<small>Your Recently Uploaded Images</small>
123122
<div
@@ -157,7 +156,7 @@ class ChooseImageModal extends React.Component {
157156
) : null}
158157
</div>
159158
</div>
160-
</SimpleDialog>
159+
</SettingsDialog>
161160
)
162161
}
163162
}

packages/obonode/obojobo-chunks-figure/choose-image-modal.scss

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@
44
$color-button-bg: lighten($color-action, 9%);
55

66
text-align: center;
7-
width: 27rem;
7+
max-width: 27rem;
88
background-color: $color-bg2;
99
padding: 1rem;
10+
margin: 0 auto;
1011

1112
.choose-image--image-controls {
1213
display: flex;

packages/obonode/obojobo-chunks-figure/image-properties-modal.js

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ import ImageCaptionWidthTypes from './image-caption-width-types'
88
import Image from './image'
99
import { isUUID } from './utils'
1010

11-
const { SimpleDialog } = Common.components.modal
11+
import SettingsDialog from 'obojobo-document-engine/src/scripts/common/components/modal/settings-dialog'
12+
import SettingsDialogRow from 'obojobo-document-engine/src/scripts/common/components/modal/settings-dialog-row'
1213
const { Button } = Common.components
1314

1415
class ImageProperties extends React.Component {
@@ -119,15 +120,15 @@ class ImageProperties extends React.Component {
119120
this.state.size === 'small' || this.state.size === 'custom'
120121

121122
return (
122-
<SimpleDialog
123+
<SettingsDialog
123124
cancelOk
124125
title="Image Properties"
125126
onConfirm={() => this.props.onConfirm(this.state)}
126127
focusOnFirstElement={this.focusOnFirstElement}
127128
>
128129
<div className={`image-properties is-size-${size}`}>
129130
<div>
130-
<div className="flex-container image-container">
131+
<SettingsDialogRow className="flex-container image-container">
131132
<Image
132133
key={this.state.url}
133134
chunk={{
@@ -147,7 +148,7 @@ class ImageProperties extends React.Component {
147148
>
148149
Change Image...
149150
</Button>
150-
</div>
151+
</SettingsDialogRow>
151152

152153
<label htmlFor="obojobo-draft--chunks--figure--alt">Alt Text:</label>
153154
<input
@@ -186,7 +187,7 @@ class ImageProperties extends React.Component {
186187
</select>
187188

188189
<label htmlFor="obojobo-draft--chunks--figure--size">Size:</label>
189-
<div
190+
<SettingsDialogRow
190191
id="obojobo-draft--chunks--figure--size"
191192
role="radiogroup"
192193
aria-label="Select size for image"
@@ -265,10 +266,10 @@ class ImageProperties extends React.Component {
265266
</div>
266267
) : null}
267268
</div>
268-
</div>
269+
</SettingsDialogRow>
269270
</div>
270271
</div>
271-
</SimpleDialog>
272+
</SettingsDialog>
272273
)
273274
}
274275
}

packages/obonode/obojobo-chunks-figure/image-properties-modal.scss

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
11
@import '~styles/includes';
22

3+
.obojobo-draft--components--modal--settings-dialog .image-properties .row {
4+
margin-bottom: 0;
5+
}
6+
37
.image-properties {
48
text-align: left;
59
display: flex;
610
width: 22em;
11+
margin: 0 auto;
712

813
&.is-size-large,
914
&.is-size-medium {
@@ -49,21 +54,26 @@
4954
}
5055

5156
.size-input {
52-
display: block;
57+
display: flex;
58+
align-items: center;
5359

5460
.custom-size-inputs {
55-
display: inline;
61+
display: flex;
62+
align-items: center;
5663
padding-left: 0.5em;
5764
}
5865

59-
input[type='radio'] {
60-
vertical-align: middle;
66+
input {
67+
margin-left: 0;
68+
}
69+
70+
span {
71+
padding-right: 0.3em;
6172
}
6273

6374
label {
64-
display: inline;
65-
vertical-align: middle;
6675
padding-left: 0.3em;
76+
margin: 0;
6777
}
6878
}
6979

packages/obonode/obojobo-chunks-youtube/__snapshots__/youtube-properties-modal.test.js.snap

Lines changed: 15 additions & 15 deletions
Large diffs are not rendered by default.

packages/obonode/obojobo-chunks-youtube/youtube-properties-modal.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import './youtube-properties-modal.scss'
22

33
import React from 'react'
4-
import Common from 'obojobo-document-engine/src/scripts/common'
54
import { parseYouTubeURL, getStandardizedURLFromVideoId } from './parse-youtube-url'
65
import Button from 'obojobo-document-engine/src/scripts/common/components/button'
76

8-
const { SimpleDialog } = Common.components.modal
7+
import SettingsDialog from 'obojobo-document-engine/src/scripts/common/components/modal/settings-dialog'
98

109
class YouTubeProperties extends React.Component {
1110
constructor(props) {
@@ -172,12 +171,11 @@ class YouTubeProperties extends React.Component {
172171

173172
render() {
174173
return (
175-
<SimpleDialog
174+
<SettingsDialog
176175
cancelOk
177176
title="YouTube Video"
178177
focusOnFirstElement={this.focusOnFirstElement}
179178
onConfirm={this.onConfirm}
180-
width={'30rem'}
181179
>
182180
<form
183181
ref={this.formRef}
@@ -232,7 +230,7 @@ class YouTubeProperties extends React.Component {
232230
</Button>
233231
)}
234232
</form>
235-
</SimpleDialog>
233+
</SettingsDialog>
236234
)
237235
}
238236
}

0 commit comments

Comments
 (0)