@windward/core 0.26.0 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +66 -0
- package/components/Content/Blocks/Accordion.vue +9 -15
- package/components/Content/Blocks/BlockQuote.vue +29 -4
- package/components/Content/Blocks/ClickableIcons.vue +22 -9
- package/components/Content/Blocks/Email.vue +11 -4
- package/components/Content/Blocks/Feedback/FeedbackAnalytics.vue +179 -0
- package/components/Content/Blocks/Feedback.vue +115 -111
- package/components/Content/Blocks/FileDownload.vue +2 -2
- package/components/Content/Blocks/Image.vue +144 -0
- package/components/Content/Blocks/OpenResponse.vue +419 -5
- package/components/Content/Blocks/ScenarioChoice.vue +11 -2
- package/components/Content/Blocks/Tab.vue +16 -29
- package/components/Content/Blocks/UserUpload.vue +66 -38
- package/components/Content/Blocks/Video.vue +377 -28
- package/components/Settings/AccordionSettings.vue +3 -15
- package/components/Settings/BlockQuoteSettings.vue +6 -4
- package/components/Settings/ClickableIconsSettings.vue +24 -10
- package/components/Settings/EmailSettings.vue +3 -11
- package/components/Settings/FileDownloadSettings.vue +8 -2
- package/components/Settings/ImageSettings.vue +26 -0
- package/components/Settings/OpenResponseCollateSettings.vue +10 -0
- package/components/Settings/OpenResponseSettings.vue +67 -7
- package/components/Settings/ScenarioChoiceSettings.vue +11 -5
- package/components/Settings/TabSettings.vue +3 -18
- package/components/Settings/UserUploadSettings.vue +16 -8
- package/components/Settings/VideoSettings/SourcePicker.vue +55 -21
- package/components/Settings/VideoSettings.vue +18 -2
- package/components/utils/ContentViewer.vue +180 -1
- package/components/utils/glossary/GlossaryToolTip.vue +4 -23
- package/helpers/GlossaryHelper.ts +4 -7
- package/i18n/en-US/components/content/blocks/accordion.ts +3 -0
- package/i18n/en-US/components/content/blocks/block_quote.ts +3 -1
- package/i18n/en-US/components/content/blocks/feedback.ts +2 -0
- package/i18n/en-US/components/content/blocks/file_download.ts +2 -1
- package/i18n/en-US/components/content/blocks/index.ts +2 -0
- package/i18n/en-US/components/content/blocks/open_response.ts +19 -1
- package/i18n/en-US/components/content/blocks/open_response_collate.ts +1 -1
- package/i18n/en-US/components/content/blocks/scenario_choice.ts +2 -0
- package/i18n/en-US/components/content/blocks/user_upload.ts +2 -1
- package/i18n/en-US/components/settings/accordion.ts +2 -1
- package/i18n/en-US/components/settings/block_quote.ts +1 -1
- package/i18n/en-US/components/settings/clickable_icon.ts +5 -0
- package/i18n/en-US/components/settings/email.ts +2 -1
- package/i18n/en-US/components/settings/file_download.ts +2 -2
- package/i18n/en-US/components/settings/image.ts +1 -0
- package/i18n/en-US/components/settings/open_response.ts +8 -0
- package/i18n/en-US/components/settings/open_response_collate.ts +3 -0
- package/i18n/en-US/components/settings/scenario_choice.ts +3 -1
- package/i18n/en-US/components/settings/tab.ts +4 -3
- package/i18n/en-US/components/settings/user_upload.ts +1 -0
- package/i18n/en-US/components/settings/video.ts +3 -1
- package/i18n/en-US/shared/content_blocks.ts +1 -1
- package/i18n/es-ES/components/content/blocks/accordion.ts +3 -0
- package/i18n/es-ES/components/content/blocks/block_quote.ts +3 -1
- package/i18n/es-ES/components/content/blocks/feedback.ts +2 -0
- package/i18n/es-ES/components/content/blocks/file_download.ts +2 -1
- package/i18n/es-ES/components/content/blocks/index.ts +2 -0
- package/i18n/es-ES/components/content/blocks/open_response.ts +19 -2
- package/i18n/es-ES/components/content/blocks/open_response_collate.ts +1 -1
- package/i18n/es-ES/components/content/blocks/scenario_choice.ts +2 -0
- package/i18n/es-ES/components/content/blocks/user_upload.ts +2 -1
- package/i18n/es-ES/components/settings/accordion.ts +4 -2
- package/i18n/es-ES/components/settings/block_quote.ts +1 -1
- package/i18n/es-ES/components/settings/clickable_icon.ts +7 -0
- package/i18n/es-ES/components/settings/email.ts +2 -1
- package/i18n/es-ES/components/settings/image.ts +1 -0
- package/i18n/es-ES/components/settings/open_response.ts +8 -0
- package/i18n/es-ES/components/settings/open_response_collate.ts +3 -0
- package/i18n/es-ES/components/settings/scenario_choice.ts +3 -1
- package/i18n/es-ES/components/settings/tab.ts +3 -2
- package/i18n/es-ES/components/settings/user_upload.ts +1 -0
- package/i18n/es-ES/components/settings/video.ts +3 -1
- package/i18n/es-ES/shared/content_blocks.ts +1 -1
- package/i18n/sv-SE/components/content/blocks/accordion.ts +3 -0
- package/i18n/sv-SE/components/content/blocks/block_quote.ts +3 -1
- package/i18n/sv-SE/components/content/blocks/feedback.ts +2 -0
- package/i18n/sv-SE/components/content/blocks/file_download.ts +2 -1
- package/i18n/sv-SE/components/content/blocks/index.ts +2 -0
- package/i18n/sv-SE/components/content/blocks/open_response.ts +19 -2
- package/i18n/sv-SE/components/content/blocks/open_response_collate.ts +1 -1
- package/i18n/sv-SE/components/content/blocks/scenario_choice.ts +2 -0
- package/i18n/sv-SE/components/content/blocks/user_upload.ts +2 -1
- package/i18n/sv-SE/components/settings/accordion.ts +2 -1
- package/i18n/sv-SE/components/settings/block_quote.ts +1 -1
- package/i18n/sv-SE/components/settings/clickable_icon.ts +6 -0
- package/i18n/sv-SE/components/settings/email.ts +2 -1
- package/i18n/sv-SE/components/settings/image.ts +1 -0
- package/i18n/sv-SE/components/settings/open_response.ts +8 -0
- package/i18n/sv-SE/components/settings/open_response_collate.ts +3 -0
- package/i18n/sv-SE/components/settings/scenario_choice.ts +3 -1
- package/i18n/sv-SE/components/settings/tab.ts +5 -3
- package/i18n/sv-SE/components/settings/user_upload.ts +1 -0
- package/i18n/sv-SE/components/settings/video.ts +3 -1
- package/i18n/sv-SE/shared/content_blocks.ts +1 -1
- package/models/SurveyResultMetric.ts +8 -0
- package/package.json +2 -2
- package/plugin.js +8 -0
- package/test/Components/Content/Blocks/Feedback/FeedbackTemplates/FeedbackAnalytics.spec.js +23 -0
- package/test/Components/Content/Blocks/{FeedbackTemplates → Feedback/FeedbackTemplates}/FeedbackQuestionLikert.spec.js +1 -1
- package/test/Components/Content/Blocks/{FeedbackTemplates → Feedback/FeedbackTemplates}/FeedbackQuestionOpenResponse.spec.js +1 -1
- package/test/Components/Content/Blocks/{FeedbackTemplates → Feedback/FeedbackTemplates}/FeedbackQuestionTrueFalse.spec.js +1 -1
- package/test/Components/Settings/AccordionSettings.spec.js +0 -13
- package/test/Components/Settings/ClickableIconsSettings.spec.js +1 -12
- package/test/Components/Settings/EmailSettings.spec.js +0 -9
- package/test/Components/Settings/TabSettings.spec.js +0 -13
- package/test/helpers/GlossaryHelper.spec.js +8 -8
- package/components/Content/Blocks/{FeedbackTemplates → Feedback/FeedbackTemplates}/FeedbackQuestionLikert.vue +1 -1
- package/components/Content/Blocks/{FeedbackTemplates → Feedback/FeedbackTemplates}/FeedbackQuestionOpenResponse.vue +1 -1
- /package/components/Content/Blocks/{FeedbackTemplates → Feedback/FeedbackTemplates}/FeedbackQuestionTrueFalse.vue +0 -0
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
<component
|
|
3
3
|
:is="convertedContent"
|
|
4
4
|
v-show="value"
|
|
5
|
-
:class="
|
|
5
|
+
:class="contentClasses"
|
|
6
|
+
:dir="textDirection"
|
|
6
7
|
></component>
|
|
7
8
|
</template>
|
|
8
9
|
|
|
@@ -28,7 +29,28 @@ export default {
|
|
|
28
29
|
...mapGetters({
|
|
29
30
|
course: 'course/get',
|
|
30
31
|
glossaryTerms: 'glossary/getTerms',
|
|
32
|
+
isRtl: 'course/isRtl',
|
|
33
|
+
courseTextDirection: 'course/textDirection',
|
|
31
34
|
}),
|
|
35
|
+
/**
|
|
36
|
+
* Get the text direction based on course locale
|
|
37
|
+
* @returns {string} 'rtl' or 'ltr'
|
|
38
|
+
*/
|
|
39
|
+
textDirection() {
|
|
40
|
+
return this.courseTextDirection || 'ltr'
|
|
41
|
+
},
|
|
42
|
+
/**
|
|
43
|
+
* Generate CSS classes for the content container
|
|
44
|
+
* Includes RTL-specific classes when course is RTL
|
|
45
|
+
* @returns {Object} Object of CSS class names
|
|
46
|
+
*/
|
|
47
|
+
contentClasses() {
|
|
48
|
+
return {
|
|
49
|
+
'text-viewer': this.textViewer,
|
|
50
|
+
'rtl-content': this.isRtl,
|
|
51
|
+
'ltr-content': !this.isRtl,
|
|
52
|
+
}
|
|
53
|
+
},
|
|
32
54
|
convertedContent() {
|
|
33
55
|
let content = ''
|
|
34
56
|
if (this.value) {
|
|
@@ -96,4 +118,161 @@ caption {
|
|
|
96
118
|
color: var(--v-primary-base);
|
|
97
119
|
text-align: left;
|
|
98
120
|
}
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* RTL (Right-to-Left) Language Support Styles
|
|
124
|
+
* Applied when content is in RTL languages (Arabic, Hebrew, Persian, Urdu)
|
|
125
|
+
*
|
|
126
|
+
* Uses unicode-bidi: isolate to create a directional isolation boundary.
|
|
127
|
+
* This ensures RTL content displays correctly even when system UI is LTR.
|
|
128
|
+
*/
|
|
129
|
+
.rtl-content {
|
|
130
|
+
/* Base RTL text properties */
|
|
131
|
+
direction: rtl;
|
|
132
|
+
text-align: right;
|
|
133
|
+
unicode-bidi: isolate;
|
|
134
|
+
|
|
135
|
+
/* Paragraph and text alignment */
|
|
136
|
+
p,
|
|
137
|
+
h1,
|
|
138
|
+
h2,
|
|
139
|
+
h3,
|
|
140
|
+
h4,
|
|
141
|
+
h5,
|
|
142
|
+
h6,
|
|
143
|
+
li,
|
|
144
|
+
td,
|
|
145
|
+
th,
|
|
146
|
+
label,
|
|
147
|
+
span,
|
|
148
|
+
div {
|
|
149
|
+
text-align: right;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/* Lists - reverse bullet/number position */
|
|
153
|
+
ul,
|
|
154
|
+
ol {
|
|
155
|
+
padding-right: 40px;
|
|
156
|
+
padding-left: 0;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
li {
|
|
160
|
+
text-align: right;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/* Table alignment */
|
|
164
|
+
table {
|
|
165
|
+
direction: rtl;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
th,
|
|
169
|
+
td {
|
|
170
|
+
text-align: right;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/* Caption alignment for RTL */
|
|
174
|
+
caption {
|
|
175
|
+
text-align: right;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/* Blockquote RTL styling */
|
|
179
|
+
blockquote {
|
|
180
|
+
border-right: 4px solid var(--v-primary-base);
|
|
181
|
+
border-left: none;
|
|
182
|
+
padding-right: 16px;
|
|
183
|
+
padding-left: 0;
|
|
184
|
+
margin-right: 0;
|
|
185
|
+
margin-left: 0;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
/* Handle mixed LTR content within RTL */
|
|
189
|
+
/* Use explicit dir="ltr" on elements that need left-to-right */
|
|
190
|
+
[dir='ltr'] {
|
|
191
|
+
direction: ltr;
|
|
192
|
+
text-align: left;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/* Code blocks should remain LTR */
|
|
196
|
+
pre,
|
|
197
|
+
code {
|
|
198
|
+
direction: ltr;
|
|
199
|
+
text-align: left;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
/* Images - keep centered or as specified */
|
|
203
|
+
img {
|
|
204
|
+
/* Images are typically direction-neutral */
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/* Form elements */
|
|
208
|
+
input,
|
|
209
|
+
textarea,
|
|
210
|
+
select {
|
|
211
|
+
direction: rtl;
|
|
212
|
+
text-align: right;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* LTR (Left-to-Right) Language Support Styles
|
|
218
|
+
* Applied when content is in LTR languages (English, Spanish, French, etc.)
|
|
219
|
+
*
|
|
220
|
+
* Uses unicode-bidi: isolate to create a directional isolation boundary.
|
|
221
|
+
* This ensures LTR content displays correctly even when system UI is RTL.
|
|
222
|
+
*/
|
|
223
|
+
.ltr-content {
|
|
224
|
+
direction: ltr;
|
|
225
|
+
text-align: left;
|
|
226
|
+
unicode-bidi: isolate;
|
|
227
|
+
|
|
228
|
+
/* Paragraph and text alignment */
|
|
229
|
+
p,
|
|
230
|
+
h1,
|
|
231
|
+
h2,
|
|
232
|
+
h3,
|
|
233
|
+
h4,
|
|
234
|
+
h5,
|
|
235
|
+
h6,
|
|
236
|
+
li,
|
|
237
|
+
td,
|
|
238
|
+
th,
|
|
239
|
+
label,
|
|
240
|
+
span,
|
|
241
|
+
div {
|
|
242
|
+
text-align: left;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
/* Lists - standard bullet/number position */
|
|
246
|
+
ul,
|
|
247
|
+
ol {
|
|
248
|
+
padding-left: 40px;
|
|
249
|
+
padding-right: 0;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
caption {
|
|
253
|
+
text-align: left;
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
/* Handle mixed RTL content within LTR */
|
|
257
|
+
[dir='rtl'] {
|
|
258
|
+
direction: rtl;
|
|
259
|
+
text-align: right;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
/**
|
|
264
|
+
* RTL-aware responsive styles
|
|
265
|
+
*/
|
|
266
|
+
@media (max-width: 600px) {
|
|
267
|
+
.rtl-content {
|
|
268
|
+
/* Maintain RTL on mobile */
|
|
269
|
+
text-align: right;
|
|
270
|
+
|
|
271
|
+
ul,
|
|
272
|
+
ol {
|
|
273
|
+
padding-right: 20px;
|
|
274
|
+
padding-left: 0;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}
|
|
99
278
|
</style>
|
|
@@ -16,40 +16,21 @@
|
|
|
16
16
|
<v-card>
|
|
17
17
|
<v-card-text>
|
|
18
18
|
<div v-if="$slots['definition']">
|
|
19
|
-
<h6
|
|
20
|
-
<slot name="term"></slot
|
|
21
|
-
{{
|
|
22
|
-
$t(
|
|
23
|
-
'windward.core.components.utils.tiny_mce_wrapper.definition'
|
|
24
|
-
)
|
|
25
|
-
}}
|
|
26
|
-
:
|
|
19
|
+
<h6>
|
|
20
|
+
<slot name="term"></slot>:
|
|
27
21
|
</h6>
|
|
28
22
|
<p>
|
|
29
23
|
<slot name="definition"></slot>
|
|
30
24
|
</p>
|
|
31
25
|
</div>
|
|
32
|
-
<div v-if="$slots['alternate_forms']">
|
|
33
|
-
<h6 class="text-capitalize">
|
|
34
|
-
<slot name="term"></slot>
|
|
35
|
-
{{
|
|
36
|
-
$t(
|
|
37
|
-
'windward.core.components.utils.tiny_mce_wrapper.alternate_forms'
|
|
38
|
-
)
|
|
39
|
-
}}
|
|
40
|
-
:
|
|
41
|
-
</h6>
|
|
42
|
-
<p><slot name="alternate_forms"></slot></p>
|
|
43
|
-
</div>
|
|
44
26
|
|
|
45
27
|
<div v-if="$slots['related_terms']">
|
|
46
|
-
<h6
|
|
28
|
+
<h6>
|
|
47
29
|
{{
|
|
48
30
|
$t(
|
|
49
31
|
'windward.core.components.utils.tiny_mce_wrapper.related_terms'
|
|
50
32
|
)
|
|
51
|
-
}}
|
|
52
|
-
:
|
|
33
|
+
}}:
|
|
53
34
|
</h6>
|
|
54
35
|
<p><slot name="related_terms"></slot></p>
|
|
55
36
|
</div>
|
|
@@ -10,15 +10,12 @@ export default class GlossaryHelper {
|
|
|
10
10
|
const word = _.isString(term.term)
|
|
11
11
|
? '<template v-slot:term>' + text + '</template>'
|
|
12
12
|
: ''
|
|
13
|
+
const main_term = _.isString(term.term)
|
|
14
|
+
? '<template v-slot:main_term>' + term.term + '</template>'
|
|
15
|
+
: ''
|
|
13
16
|
const definition = _.isString(term.definition)
|
|
14
17
|
? '<template v-slot:definition>' + term.definition + '</template>'
|
|
15
18
|
: ''
|
|
16
|
-
const alternate_forms =
|
|
17
|
-
_.isArray(term.alternate_forms) && term.alternate_forms.length > 0
|
|
18
|
-
? '<template v-slot:alternate_forms>' +
|
|
19
|
-
term.alternate_forms.join(',') +
|
|
20
|
-
'</template>'
|
|
21
|
-
: ''
|
|
22
19
|
const related_terms =
|
|
23
20
|
_.isArray(term.related_terms) && term.related_terms.length > 0
|
|
24
21
|
? '<template v-slot:related_terms>' +
|
|
@@ -28,8 +25,8 @@ export default class GlossaryHelper {
|
|
|
28
25
|
return (
|
|
29
26
|
'<plugin-core-glossary-tool-tip>' +
|
|
30
27
|
word +
|
|
28
|
+
main_term +
|
|
31
29
|
definition +
|
|
32
|
-
alternate_forms +
|
|
33
30
|
related_terms +
|
|
34
31
|
'</plugin-core-glossary-tool-tip>'
|
|
35
32
|
)
|
|
@@ -10,6 +10,7 @@ import email from './email'
|
|
|
10
10
|
import block_quote from './block_quote'
|
|
11
11
|
import generate_questions from './generate_questions'
|
|
12
12
|
import file_download from './file_download'
|
|
13
|
+
import accordion from './accordion'
|
|
13
14
|
|
|
14
15
|
export default {
|
|
15
16
|
user_upload,
|
|
@@ -24,4 +25,5 @@ export default {
|
|
|
24
25
|
block_quote,
|
|
25
26
|
generate_questions,
|
|
26
27
|
file_download,
|
|
28
|
+
accordion,
|
|
27
29
|
}
|
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
export default {
|
|
2
|
-
initial_setup: '
|
|
2
|
+
initial_setup: 'Add question text to get started.',
|
|
3
3
|
your_response: 'Your Response',
|
|
4
4
|
sample_response: 'Suggested/Sample Response',
|
|
5
|
+
ai_feedback: 'AI Feedback',
|
|
6
|
+
ai_feedback_generating: 'Generating feedback…',
|
|
7
|
+
ai_feedback_retry: 'Retry',
|
|
8
|
+
ai_feedback_sources: 'Suggested pages to review',
|
|
9
|
+
ai_feedback_not_available: 'No AI feedback available yet.',
|
|
10
|
+
ai_feedback_error:
|
|
11
|
+
'We could not generate AI feedback right now. Please try again.',
|
|
12
|
+
ai_feedback_timeout:
|
|
13
|
+
'AI feedback is taking longer than expected. Please try again.',
|
|
14
|
+
untitled_page: 'Untitled page',
|
|
15
|
+
understanding_level: 'Understanding level',
|
|
16
|
+
understanding_levels: {
|
|
17
|
+
strong: 'Strong Understanding',
|
|
18
|
+
clear: 'Clear Understanding',
|
|
19
|
+
developing: 'Developing Understanding',
|
|
20
|
+
emerging: 'Emerging Understanding',
|
|
21
|
+
limited: 'Limited Understanding',
|
|
22
|
+
},
|
|
5
23
|
}
|
|
@@ -2,6 +2,6 @@ export default {
|
|
|
2
2
|
download_document: 'Download Word Document',
|
|
3
3
|
no_response: '[no response]',
|
|
4
4
|
initial_setup:
|
|
5
|
-
'
|
|
5
|
+
'Select open response questions throughout the course to include on this download to get started.',
|
|
6
6
|
generate_error: 'Failed to generate the document',
|
|
7
7
|
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export default {
|
|
2
|
+
title: 'File Submission',
|
|
2
3
|
user_uploads: 'User Uploads',
|
|
3
4
|
dialog_view: 'View Uploads',
|
|
4
5
|
instructions_none: 'None',
|
|
5
|
-
must_save: 'You must save this block before users can make uploads',
|
|
6
|
+
must_save: 'You must save this block before users can make uploads.',
|
|
6
7
|
uploaded: 'Uploaded',
|
|
7
8
|
name: 'Name',
|
|
8
9
|
size: 'Size',
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
items: 'Accordion Items',
|
|
3
|
-
add: 'Add
|
|
3
|
+
add: 'Add Item',
|
|
4
4
|
accordion: 'Accordion',
|
|
5
5
|
label: 'Accordion body text',
|
|
6
6
|
instructions: 'Click on each of the headings below for more information.',
|
|
7
|
+
no_accordion_items: 'Add an accordion item to get started.',
|
|
7
8
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
title: 'Title',
|
|
3
|
+
clickable_icon_title: 'Clickable Icon',
|
|
4
|
+
item_header: 'Clickable Icon Items',
|
|
3
5
|
description: 'Description',
|
|
4
6
|
information: 'Click on each of the list items below for more information.',
|
|
5
7
|
no_icon: 'No Icon',
|
|
@@ -16,4 +18,7 @@ export default {
|
|
|
16
18
|
italic_icon: 'Italic Icons',
|
|
17
19
|
large_icon: 'Large Icons',
|
|
18
20
|
},
|
|
21
|
+
add_item: 'Add Item',
|
|
22
|
+
no_clickable_items: 'Add a clickable icon item to get started.',
|
|
23
|
+
instructions: 'Click on each of the list items below for more information.',
|
|
19
24
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
items: 'Email Items',
|
|
3
|
-
add: 'Add
|
|
3
|
+
add: 'Add Item',
|
|
4
4
|
subject: 'Subject',
|
|
5
5
|
from: 'From',
|
|
6
6
|
to: 'To',
|
|
@@ -10,4 +10,5 @@ export default {
|
|
|
10
10
|
from_required: 'From field is required',
|
|
11
11
|
to_required: 'To field is required',
|
|
12
12
|
subject_required: 'Subject field is required',
|
|
13
|
+
no_emails: 'Add email items to get started.',
|
|
13
14
|
}
|
|
@@ -2,7 +2,7 @@ export default {
|
|
|
2
2
|
file_download: 'File Download',
|
|
3
3
|
no_file_selected: 'No file selected',
|
|
4
4
|
add: 'Add File',
|
|
5
|
-
filename_optional: '
|
|
6
|
-
place_file: '
|
|
5
|
+
filename_optional: 'File Name (Optional)',
|
|
6
|
+
place_file: 'Add File',
|
|
7
7
|
display_detailed: 'Display in detailed view',
|
|
8
8
|
}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
question: 'Question',
|
|
3
3
|
sample_response: 'Suggested/Sample Response',
|
|
4
|
+
ai_mode_for_student: 'AI mode for student',
|
|
4
5
|
starting_text: 'Starting Text',
|
|
6
|
+
title: 'Open Response',
|
|
7
|
+
instructions:
|
|
8
|
+
'Type your answer in the text box and click "Submit" to save your response.',
|
|
9
|
+
validation: {
|
|
10
|
+
sample_response_required_ai_mode:
|
|
11
|
+
'Suggested/Sample Response is required when AI mode for student is enabled.',
|
|
12
|
+
},
|
|
5
13
|
}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
export default {
|
|
2
|
+
title: 'Open Response Download',
|
|
3
|
+
block_instructions:
|
|
4
|
+
'Click on the button below to download a copy of your response.',
|
|
2
5
|
instructions: 'Check off open response items to collate into a document.',
|
|
3
6
|
include_prompts: 'Include Prompts',
|
|
4
7
|
filename: 'Filename (Blank for current page name)',
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
title: 'Title',
|
|
3
|
+
scenario_title: 'Scenario Choice',
|
|
3
4
|
description: 'Description',
|
|
4
5
|
over_item_limit: 'Cannot add more items',
|
|
5
6
|
no_title: 'No Title',
|
|
@@ -16,7 +17,8 @@ export default {
|
|
|
16
17
|
letter: 'Letters',
|
|
17
18
|
number: 'Numbers',
|
|
18
19
|
},
|
|
19
|
-
add_choice: 'Add
|
|
20
|
+
add_choice: 'Add Item',
|
|
20
21
|
generated_successfully: 'Scenarios generated successfully',
|
|
21
22
|
invalid_response: 'Invalid response from scenario generation',
|
|
23
|
+
choices: 'Choices',
|
|
22
24
|
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
tab: 'Tab',
|
|
3
|
-
tabs: '
|
|
3
|
+
tabs: 'Tab Items',
|
|
4
4
|
header: 'Tab Header',
|
|
5
|
-
add_tab: 'Add
|
|
5
|
+
add_tab: 'Add Item',
|
|
6
6
|
delete_tab: 'Delete Tab',
|
|
7
|
-
instructions: 'Click on each of the headings below for more information.'
|
|
7
|
+
instructions: 'Click on each of the headings below for more information.',
|
|
8
|
+
no_tabs: 'Add a tab item to get started.',
|
|
8
9
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export default {
|
|
2
|
-
title: '
|
|
2
|
+
title: 'Title',
|
|
3
|
+
prebuilt_title: 'Video/Audio',
|
|
3
4
|
sources: 'Sources',
|
|
4
5
|
place_source: 'Place Video or Audio',
|
|
5
6
|
playback: 'Playback',
|
|
@@ -65,4 +66,5 @@ export default {
|
|
|
65
66
|
configure_blurb:
|
|
66
67
|
'Upload a postroll video file (.mp4 or .webm), pick one from the file manager, or add via the public URL',
|
|
67
68
|
},
|
|
69
|
+
no_video_alert: 'Place a video or audio file to get started.',
|
|
68
70
|
}
|
|
@@ -10,7 +10,7 @@ export default {
|
|
|
10
10
|
open_response: 'Open Response',
|
|
11
11
|
open_response_collate: 'Open Response Download',
|
|
12
12
|
image: 'Image',
|
|
13
|
-
user_upload: '
|
|
13
|
+
user_upload: 'File Submission',
|
|
14
14
|
clickable_icons: 'Clickable Icons',
|
|
15
15
|
scenario_choice: 'Scenario Choice',
|
|
16
16
|
feedback: 'Feedback',
|
|
@@ -10,6 +10,7 @@ import email from './email'
|
|
|
10
10
|
import block_quote from './block_quote'
|
|
11
11
|
import file_download from './file_download'
|
|
12
12
|
import generate_questions from './generate_questions'
|
|
13
|
+
import accordion from './accordion'
|
|
13
14
|
|
|
14
15
|
export default {
|
|
15
16
|
user_upload,
|
|
@@ -24,4 +25,5 @@ export default {
|
|
|
24
25
|
block_quote,
|
|
25
26
|
file_download,
|
|
26
27
|
generate_questions,
|
|
28
|
+
accordion,
|
|
27
29
|
}
|
|
@@ -1,6 +1,23 @@
|
|
|
1
1
|
export default {
|
|
2
|
-
initial_setup:
|
|
3
|
-
'Ingrese un mensaje para este bloque de respuesta abierto para comenzar',
|
|
2
|
+
initial_setup: 'Agrega el texto de la pregunta para comenzar.',
|
|
4
3
|
your_response: 'Tu respuesta',
|
|
5
4
|
sample_response: 'Respuesta sugerida/de muestra',
|
|
5
|
+
ai_feedback: 'Retroalimentación de IA',
|
|
6
|
+
ai_feedback_generating: 'Generando retroalimentación…',
|
|
7
|
+
ai_feedback_retry: 'Reintentar',
|
|
8
|
+
ai_feedback_sources: 'Páginas sugeridas para revisar',
|
|
9
|
+
ai_feedback_not_available: 'Aún no hay retroalimentación de IA disponible.',
|
|
10
|
+
ai_feedback_error:
|
|
11
|
+
'No pudimos generar la retroalimentación de IA en este momento. Por favor, vuelva a intentarlo.',
|
|
12
|
+
ai_feedback_timeout:
|
|
13
|
+
'La retroalimentación de IA está tardando más de lo esperado. Por favor, vuelva a intentarlo.',
|
|
14
|
+
untitled_page: 'Página sin título',
|
|
15
|
+
understanding_level: 'Nivel de comprensión',
|
|
16
|
+
understanding_levels: {
|
|
17
|
+
strong: 'Comprensión sólida',
|
|
18
|
+
clear: 'Comprensión clara',
|
|
19
|
+
developing: 'Comprensión en desarrollo',
|
|
20
|
+
emerging: 'Comprensión emergente',
|
|
21
|
+
limited: 'Comprensión limitada',
|
|
22
|
+
},
|
|
6
23
|
}
|
|
@@ -2,6 +2,6 @@ export default {
|
|
|
2
2
|
download_document: 'Descargar documento de Word',
|
|
3
3
|
no_response: '[sin respuesta]',
|
|
4
4
|
initial_setup:
|
|
5
|
-
'
|
|
5
|
+
'Seleccione preguntas de respuesta abierta a lo largo del curso para incluirlas en esta descarga para comenzar.',
|
|
6
6
|
generate_error: 'No se pudo generar el documento',
|
|
7
7
|
}
|
|
@@ -3,4 +3,6 @@ export default {
|
|
|
3
3
|
'Haga clic en uno de los elementos siguientes para tomar una decisión.',
|
|
4
4
|
try_again: 'Inténtalo de nuevo',
|
|
5
5
|
selected_choice: 'Tu elección',
|
|
6
|
+
no_scenario:
|
|
7
|
+
'Añade el texto del escenario para empezar. Luego, añade opciones en respuesta al escenario.',
|
|
6
8
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
export default {
|
|
2
|
+
title: 'Envío de archivos',
|
|
2
3
|
user_uploads: 'Cargas de usuarios',
|
|
3
4
|
dialog_view: 'Ver cargas',
|
|
4
5
|
instructions_none: 'Ninguno',
|
|
5
6
|
must_save:
|
|
6
|
-
'Debes guardar este bloque antes de que los usuarios puedan realizar cargas',
|
|
7
|
+
'Debes guardar este bloque antes de que los usuarios puedan realizar cargas.',
|
|
7
8
|
uploaded: 'Subido',
|
|
8
9
|
name: 'Nombre',
|
|
9
10
|
size: 'Tamaño',
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
items: 'Artículos de acordeón',
|
|
3
|
-
add: '
|
|
3
|
+
add: 'Agregar artículo',
|
|
4
4
|
accordion: 'Acordeón',
|
|
5
5
|
label: 'Texto del cuerpo del acordeón',
|
|
6
|
-
instructions:
|
|
6
|
+
instructions:
|
|
7
|
+
'Haga clic en cada uno de los títulos a continuación para obtener más información.',
|
|
8
|
+
no_accordion_items: 'Añade un elemento de acordeón para comenzar.',
|
|
7
9
|
}
|