@windward/integrations 0.12.0 → 0.14.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 CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ### Release [0.14.0] created - 2025-05-22
4
+
5
+
6
+ ### Release [0.13.0] created - 2025-04-29
7
+
8
+
3
9
  ### Release [0.12.0] created - 2025-03-25
4
10
 
5
11
 
@@ -1,7 +1,13 @@
1
1
  <template>
2
2
  <div>
3
3
  <div v-if="!missing && consumer">
4
- <h2 v-if="block.metadata.config.title" tabindex="0">
4
+ <h2
5
+ v-if="
6
+ block.metadata.config.title &&
7
+ block.metadata.config.display_title
8
+ "
9
+ tabindex="0"
10
+ >
5
11
  {{ block.metadata.config.title }}
6
12
  </h2>
7
13
 
@@ -227,6 +233,9 @@ export default {
227
233
  if (_.isEmpty(this.block.metadata.config.title)) {
228
234
  this.block.metadata.config.title = ''
229
235
  }
236
+ if (!_.isBoolean(this.block.metadata.config.display_title)) {
237
+ this.$set(this.block.metadata.config, 'display_title', true)
238
+ }
230
239
  if (_.isEmpty(this.block.metadata.config.instructions)) {
231
240
  this.block.metadata.config.instructions = ''
232
241
  }
@@ -1,31 +1,9 @@
1
1
  <template>
2
2
  <v-container>
3
- <v-text-field
4
- id="block-settings-title"
5
- v-model="block.metadata.config.title"
6
- outlined
7
- :rules="$Validation.getRule('block.title')"
8
- :counter="$Validation.getLimit('block.title')"
9
- :label="
10
- $t(
11
- 'windward.integrations.components.settings.external_integration.lti_consumer.title'
12
- )
13
- "
3
+ <BaseContentBlockSettings
4
+ v-model="block.metadata.config"
14
5
  :disabled="render"
15
- ></v-text-field>
16
- <v-textarea
17
- id="block-settings-instructions"
18
- v-model="block.metadata.config.instructions"
19
- outlined
20
- :rules="$Validation.getRule('block.instructions')"
21
- :counter="$Validation.getLimit('block.instructions')"
22
- :label="
23
- $t(
24
- 'windward.integrations.components.settings.external_integration.lti_consumer.instructions'
25
- )
26
- "
27
- :disabled="render"
28
- ></v-textarea>
6
+ ></BaseContentBlockSettings>
29
7
  <br />
30
8
  <v-divider class="primary"></v-divider>
31
9
  <br />
@@ -92,13 +70,17 @@
92
70
 
93
71
  <script>
94
72
  import { mapGetters } from 'vuex'
95
- import LtiConsumer from '../../../models/ExternalIntegration/LtiConsumer'
96
73
  import BaseContentSettings from '~/components/Content/Settings/BaseContentSettings.js'
97
74
  import Course from '~/models/Course'
98
75
  import Organization from '~/models/Organization'
76
+ import BaseContentBlockSettings from '~/components/Content/Settings/BaseContentBlockSettings.vue'
77
+ import LtiConsumer from '../../../models/ExternalIntegration/LtiConsumer'
99
78
 
100
79
  export default {
101
80
  name: 'ContentBlockExternalIntegrationLti1p1ConsumerSettings',
81
+ components: {
82
+ BaseContentBlockSettings,
83
+ },
102
84
  extends: BaseContentSettings,
103
85
  props: {
104
86
  settings: { type: Object, required: false, default: null },
@@ -176,6 +158,9 @@ export default {
176
158
  if (_.isEmpty(this.block.metadata.config.launch_type)) {
177
159
  this.block.metadata.config.launch_type = 'new_window'
178
160
  }
161
+ if (!_.isBoolean(this.block.metadata.config.display_title)) {
162
+ this.$set(this.block.metadata.config, 'display_title', true)
163
+ }
179
164
  },
180
165
  mounted() {},
181
166
  methods: {},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@windward/integrations",
3
- "version": "0.12.0",
3
+ "version": "0.14.0",
4
4
  "description": "Windward UI Plugin Integrations for 3rd Party Systems",
5
5
  "main": "plugin.js",
6
6
  "scripts": {
@@ -1,23 +1,30 @@
1
1
  <template>
2
- <div>
3
- <h1>
4
- {{
5
- $t(
6
- 'windward.integrations.pages.course.external_integration.title'
7
- )
8
- }}
9
- </h1>
2
+ <v-row>
3
+ <v-col cols="12">
4
+ <Breadcrumbs :items="breadcrumbPath"></Breadcrumbs>
5
+ </v-col>
6
+ <v-col cols="12">
7
+ <h1>
8
+ {{
9
+ $t(
10
+ 'windward.integrations.pages.course.external_integration.title'
11
+ )
12
+ }}
13
+ </h1>
10
14
 
11
- <ManageCourseIntegrationSettings></ManageCourseIntegrationSettings>
12
- </div>
15
+ <ManageCourseIntegrationSettings></ManageCourseIntegrationSettings>
16
+ </v-col>
17
+ </v-row>
13
18
  </template>
14
19
 
15
20
  <script>
21
+ import { mapGetters } from 'vuex'
16
22
  import ManageCourseIntegrationSettings from '../../../components/Settings/ExternalIntegration/ManageCourseIntegrationSettings.vue'
23
+ import Breadcrumbs from '~/components/Core/Breadcrumbs.vue'
17
24
 
18
25
  export default {
19
26
  name: 'PluginIntegrationsExternalIntegrationIndexPage',
20
- components: { ManageCourseIntegrationSettings },
27
+ components: { ManageCourseIntegrationSettings, Breadcrumbs },
21
28
  layout: 'authenticated',
22
29
  meta: {
23
30
  privilege: {
@@ -27,6 +34,32 @@ export default {
27
34
  },
28
35
  },
29
36
  async fetch() {},
30
- computed: {},
37
+ computed: {
38
+ ...mapGetters({
39
+ course: 'course/get',
40
+ enrollment: 'enrollment/get',
41
+ }),
42
+ breadcrumbPath() {
43
+ return [
44
+ {
45
+ href:
46
+ '/course/' +
47
+ this.course.id +
48
+ '/section/' +
49
+ this.enrollment.course_section_id,
50
+ id: '',
51
+ text: this.course.name,
52
+ },
53
+ {
54
+ href:
55
+ '/course/' + this.course.id + '/integrations/external',
56
+ id: '',
57
+ text: this.$t(
58
+ 'windward.integrations.pages.course.external_integration.title'
59
+ ),
60
+ },
61
+ ]
62
+ },
63
+ },
31
64
  }
32
65
  </script>
package/plugin.js CHANGED
@@ -2,7 +2,6 @@ import locales from './i18n'
2
2
 
3
3
  import AdminVendorsPage from './pages/admin/vendors.vue'
4
4
  import AdminImportCoursePage from './pages/admin/importCourse.vue'
5
- import ImportContentPage from './pages/course/importContent.vue'
6
5
  import ExternalIntegrationIndexPage from './pages/course/externalIntegration/index.vue'
7
6
  import LoginLtiErrorPage from './pages/login/lti/error.vue'
8
7
  import IntegrationHelper from './helpers/IntegrationHelper'
@@ -47,14 +46,6 @@ export default {
47
46
  name: 'PluginIntegrationsAdminImportCoursePage',
48
47
  template: AdminImportCoursePage,
49
48
  },
50
- {
51
- page: 'admin-integrations',
52
- path: '/course/:course/integrations/import-content',
53
- i18n: 'windward.integrations.components.navigation.integrations.import_content',
54
- name: 'PluginIntegrationsImportContentPage',
55
- template: ImportContentPage,
56
- },
57
-
58
49
  {
59
50
  page: 'admin-integrations',
60
51
  path: '/course/:course/integrations/external',
@@ -96,16 +87,6 @@ export default {
96
87
  },
97
88
  },
98
89
  },
99
- {
100
- i18n: 'windward.integrations.components.navigation.integrations.import_content',
101
- path: '/course/{course.id}/integrations/import-content',
102
- context: ['course'],
103
- permissions: {
104
- 'plugin.windward.integrations.course': {
105
- writable: true,
106
- },
107
- },
108
- },
109
90
  {
110
91
  i18n: 'windward.integrations.pages.course.external_integration.title',
111
92
  path: '/course/{course.id}/integrations/external',
@@ -117,28 +98,6 @@ export default {
117
98
  },
118
99
  },
119
100
  },
120
- /*
121
- {
122
- i18n: 'windward.integrations.components.navigation.integrations.manage_lti',
123
- path: '/admin/integrations/lti',
124
- context: ['home'],
125
- permissions: {
126
- 'plugin.windward.integrations.organization.integration': {
127
- writable: true,
128
- },
129
- },
130
- },
131
- {
132
- i18n: 'windward.integrations.components.navigation.integrations.manage_lti_links',
133
- path: '/course/{course.id}/integrations/lti',
134
- context: ['course'],
135
- permissions: {
136
- 'plugin.windward.integrations.organization.integration': {
137
- writable: true,
138
- },
139
- },
140
- },
141
- */
142
101
  ],
143
102
  },
144
103
  {
@@ -165,16 +124,6 @@ export default {
165
124
  },
166
125
  },
167
126
  },
168
- {
169
- i18n: 'windward.integrations.components.navigation.integrations.import_content',
170
- path: '/course/{course.id}/integrations/import-content',
171
- context: ['course'],
172
- permissions: {
173
- 'plugin.windward.integrations.course': {
174
- writable: true,
175
- },
176
- },
177
- },
178
127
  {
179
128
  i18n: 'windward.integrations.pages.course.external_integration.title',
180
129
  path: '/course/{course.id}/integrations/external',