@brightspace-ui/core 1.233.1 → 1.233.5

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.
@@ -197,7 +197,7 @@ export const DialogMixin = superclass => class extends RtlMixin(superclass) {
197
197
  let preferredHeight = 0;
198
198
 
199
199
  const header = this.shadowRoot.querySelector('.d2l-dialog-header');
200
- if (header) preferredHeight += header.scrollHeight;
200
+ if (header) preferredHeight += Math.ceil(header.getBoundingClientRect().height);
201
201
 
202
202
  const contentOuter = this.shadowRoot.querySelector('.d2l-dialog-content');
203
203
  const content = this.shadowRoot.querySelector('.d2l-dialog-content > div');
@@ -210,7 +210,7 @@ export const DialogMixin = superclass => class extends RtlMixin(superclass) {
210
210
  }
211
211
 
212
212
  const footer = this.shadowRoot.querySelector('.d2l-dialog-footer');
213
- if (footer) preferredHeight += footer.scrollHeight;
213
+ if (footer) preferredHeight += Math.ceil(footer.getBoundingClientRect().height);
214
214
 
215
215
  const height = (preferredHeight < availableHeight ? preferredHeight : availableHeight);
216
216
  return height;
@@ -1,20 +1,11 @@
1
1
  # Dropdowns
2
2
  A Dropdown is a button that opens a floating container to offer menu items or other content.
3
3
 
4
- <!-- docs: demo align:flex-start autoSize:false size:medium -->
4
+ <!-- docs: demo align:flex-start autoOpen:true autoSize:false size:medium -->
5
5
  ```html
6
6
  <script type="module">
7
7
  import '@brightspace-ui/core/components/dropdown/dropdown-button.js';
8
8
  import '@brightspace-ui/core/components/dropdown/dropdown-content.js';
9
-
10
- window.addEventListener('load', function () {
11
- var demoElem = document.querySelector('#demo-element');
12
- if (!demoElem.hasAttribute('data-first-load')) return;
13
- setTimeout(() => {
14
- var dropdown = document.querySelector('d2l-dropdown-button');
15
- dropdown.toggleOpen();
16
- }, 1000);
17
- });
18
9
  </script>
19
10
  <d2l-dropdown-button text="Open!">
20
11
  <d2l-dropdown-content>
@@ -37,6 +37,7 @@ class DropdownMenu extends ThemeMixin(DropdownContentMixin(LitElement)) {
37
37
  this.addEventListener('d2l-dropdown-close', this._onClose);
38
38
  this.addEventListener('d2l-menu-resize', this._onMenuResize);
39
39
  this.addEventListener('d2l-menu-item-select', this._onSelect);
40
+ this.addEventListener('d2l-selection-action-click', this._onSelect);
40
41
  this.addEventListener('d2l-menu-item-change', this._onChange);
41
42
  this.addEventListener('focus', this._onFocus);
42
43
  }
@@ -117,7 +118,7 @@ class DropdownMenu extends ThemeMixin(DropdownContentMixin(LitElement)) {
117
118
  }
118
119
 
119
120
  _onSelect(e) {
120
- if (['D2L-MENU-ITEM', 'D2L-MENU-ITEM-LINK'].indexOf(e.target.tagName) < 0) {
121
+ if (['D2L-MENU-ITEM', 'D2L-MENU-ITEM-LINK', 'D2L-SELECTION-ACTION-MENU-ITEM'].indexOf(e.target.tagName) < 0) {
121
122
  return;
122
123
  }
123
124
  this.close();
@@ -2,21 +2,11 @@
2
2
 
3
3
  Use date and time inputs to set dates and times in forms. They are available as separate inputs (date or time) or as a combined date & time input, and each of them is also available as a range.
4
4
 
5
- <!-- docs: demo align:flex-start autoSize:false size:xlarge -->
5
+ <!-- docs: demo align:flex-start autoOpen:true autoSize:false size:xlarge -->
6
6
  ```html
7
7
  <script type="module">
8
8
  import '@brightspace-ui/core/components/inputs/input-date.js';
9
9
  import '@brightspace-ui/core/components/inputs/input-time.js';
10
-
11
- window.addEventListener('load', function () {
12
- var demoElem = document.querySelector('#demo-element');
13
- if (!demoElem.hasAttribute('data-first-load')) return;
14
-
15
- setTimeout(function() {
16
- var input = document.querySelector('d2l-input-date');
17
- input.opened = true;
18
- }, 1000);
19
- });
20
10
  </script>
21
11
  <d2l-input-date label="Date Input"></d2l-input-date>
22
12
  <d2l-input-time label="Time Input"></d2l-input-time>
@@ -45,7 +35,7 @@ Note: All `*value` properties should be in ISO 8601 calendar date format (`YYYY-
45
35
  ![example screenshot of date input](../screenshots/date.gif?raw=true)
46
36
  <!-- docs: end hidden content -->
47
37
 
48
- <!-- docs: demo live name:d2l-input-date align:flex-start autoOpen:true autoSize:false size:xlarge -->
38
+ <!-- docs: demo live name:d2l-input-date align:flex-start autoSize:false size:xlarge -->
49
39
  ```html
50
40
  <script type="module">
51
41
  import '@brightspace-ui/core/components/inputs/input-date.js';
@@ -95,7 +85,7 @@ Note: All `*value` properties should be in ISO 8601 calendar date format (`YYYY-
95
85
  ![example screenshot of date range input](../screenshots/date-range.gif?raw=true)
96
86
  <!-- docs: end hidden content -->
97
87
 
98
- <!-- docs: demo live name:d2l-input-date-range align:flex-start autoOpen:true autoSize:false size:xlarge -->
88
+ <!-- docs: demo live name:d2l-input-date-range align:flex-start autoSize:false size:xlarge -->
99
89
  ```html
100
90
  <script type="module">
101
91
  import '@brightspace-ui/core/components/inputs/input-date-range.js';
@@ -151,7 +141,7 @@ Note: All `*value` properties should be in ISO 8601 time format (`hh:mm:ss`) and
151
141
  ![example screenshot of time input](../screenshots/time.gif?raw=true)
152
142
  <!-- docs: end hidden content -->
153
143
 
154
- <!-- docs: demo live name:d2l-input-time align:flex-start autoOpen:true autoSize:false size:large -->
144
+ <!-- docs: demo live name:d2l-input-time align:flex-start autoSize:false size:large -->
155
145
  ```html
156
146
  <script type="module">
157
147
  import '@brightspace-ui/core/components/inputs/input-time.js';
@@ -201,7 +191,7 @@ Note: All `*value` properties should be in ISO 8601 time format (`hh:mm:ss`) and
201
191
  ![example screenshot of time range input](../screenshots/time-range.gif?raw=true)
202
192
  <!-- docs: end hidden content -->
203
193
 
204
- <!-- docs: demo live name:d2l-input-time-range align:flex-start autoOpen:true autoSize:false size:large -->
194
+ <!-- docs: demo live name:d2l-input-time-range align:flex-start autoSize:false size:large -->
205
195
  ```html
206
196
  <script type="module">
207
197
  import '@brightspace-ui/core/components/inputs/input-time-range.js';
@@ -253,7 +243,7 @@ Note: All `*value` properties should be in ISO 8601 combined date and time forma
253
243
  ![example screenshot of date input](../screenshots/date-time.gif?raw=true)
254
244
  <!-- docs: end hidden content -->
255
245
 
256
- <!-- docs: demo live name:d2l-input-date-time align:flex-start autoOpen:true autoSize:false size:xlarge -->
246
+ <!-- docs: demo live name:d2l-input-date-time align:flex-start autoSize:false size:xlarge -->
257
247
  ```html
258
248
  <script type="module">
259
249
  import '@brightspace-ui/core/components/inputs/input-date-time.js';
@@ -304,7 +294,7 @@ Note: All `*value` properties should be in ISO 8601 combined date and time forma
304
294
  ![example screenshot of date-time range input](../screenshots/date-time-range.gif?raw=true)
305
295
  <!-- docs: end hidden content -->
306
296
 
307
- <!-- docs: demo live name:d2l-input-date-time-range align:flex-start autoOpen:true autoSize:false size:xlarge -->
297
+ <!-- docs: demo live name:d2l-input-date-time-range align:flex-start autoSize:false size:xlarge -->
308
298
  ```html
309
299
  <script type="module">
310
300
  import '@brightspace-ui/core/components/inputs/input-date-time-range.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brightspace-ui/core",
3
- "version": "1.233.1",
3
+ "version": "1.233.5",
4
4
  "description": "A collection of accessible, free, open-source web components for building Brightspace applications",
5
5
  "type": "module",
6
6
  "repository": "https://github.com/BrightspaceUI/core.git",
@@ -7,6 +7,8 @@
7
7
  <script type="module">
8
8
  import '../../../components/demo/demo-page.js';
9
9
  import '../primary-secondary.js';
10
+ import '../../../components/button/button.js';
11
+ import '../../../components/dialog/dialog-fullscreen.js';
10
12
  </script>
11
13
  </head>
12
14
  <body>
@@ -17,8 +19,28 @@
17
19
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam tincidunt, velit quis vulputate condimentum, erat nibh accumsan augue, sed rutrum nibh elit et augue. Cras sed purus sit amet tellus gravida cursus eget ac nulla. Sed volutpat volutpat sodales. Mauris sed sodales odio. Aenean sem tortor, aliquam in leo eget, commodo condimentum odio. Pellentesque eu efficitur ante. Cras non diam vitae nibh condimentum egestas. Proin malesuada dapibus dapibus. Nam congue a risus id viverra. Phasellus hendrerit ex diam, eget semper nunc efficitur id. Nullam feugiat libero urna, quis bibendum urna dignissim ac. Donec convallis nulla eu nulla tempor, molestie elementum elit blandit. Ut eget ipsum eget odio elementum commodo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam tincidunt, velit quis vulputate condimentum, erat nibh accumsan augue, sed rutrum nibh elit et augue. Cras sed purus sit amet tellus gravida cursus eget ac nulla. Sed volutpat volutpat sodales. Mauris sed sodales odio. Aenean sem tortor, aliquam in leo eget, commodo condimentum odio. Pellentesque eu efficitur ante. Cras non diam vitae nibh condimentum egestas. Proin malesuada dapibus dapibus. Nam congue a risus id viverra. Phasellus hendrerit ex diam, eget semper nunc efficitur id. Nullam feugiat libero urna, quis bibendum urna dignissim ac. Donec convallis nulla eu nulla tempor, molestie elementum elit blandit. Ut eget ipsum eget odio elementum commodo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam tincidunt, velit quis vulputate condimentum, erat nibh accumsan augue, sed rutrum nibh elit et augue. Cras sed purus sit amet tellus gravida cursus eget ac nulla. Sed volutpat volutpat sodales. Mauris sed sodales odio. Aenean sem tortor, aliquam in leo eget, commodo condimentum odio. Pellentesque eu efficitur ante. Cras non diam vitae nibh condimentum egestas. Proin malesuada dapibus dapibus. Nam congue a risus id viverra. Phasellus hendrerit ex diam, eget semper nunc efficitur id. Nullam feugiat libero urna, quis bibendum urna dignissim ac. Donec convallis nulla eu nulla tempor, molestie elementum elit blandit. Ut eget ipsum eget odio elementum commodo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam tincidunt, velit quis vulputate condimentum, erat nibh accumsan augue, sed rutrum nibh elit et augue. Cras sed purus sit amet tellus gravida cursus eget ac nulla. Sed volutpat volutpat sodales. Mauris sed sodales odio. Aenean sem tortor, aliquam in leo eget, commodo condimentum odio. Pellentesque eu efficitur ante. Cras non diam vitae nibh condimentum egestas. Proin malesuada dapibus dapibus. Nam congue a risus id viverra. Phasellus hendrerit ex diam, eget semper nunc efficitur id. Nullam feugiat libero urna, quis bibendum urna dignissim ac. Donec convallis nulla eu nulla tempor, molestie elementum elit blandit. Ut eget ipsum eget odio elementum commodo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam tincidunt, velit quis vulputate condimentum, erat nibh accumsan augue, sed rutrum nibh elit et augue. Cras sed purus sit amet tellus gravida cursus eget ac nulla. Sed volutpat volutpat sodales. Mauris sed sodales odio. Aenean sem tortor, aliquam in leo eget, commodo condimentum odio. Pellentesque eu efficitur ante. Cras non diam vitae nibh condimentum egestas. Proin malesuada dapibus dapibus. Nam congue a risus id viverra. Phasellus hendrerit ex diam, eget semper nunc efficitur id. Nullam feugiat libero urna, quis bibendum urna dignissim ac. Donec convallis nulla eu nulla tempor, molestie elementum elit blandit. Ut eget ipsum eget odio elementum commodo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam tincidunt, velit quis vulputate condimentum, erat nibh accumsan augue, sed rutrum nibh elit et augue. Cras sed purus sit amet tellus gravida cursus eget ac nulla. Sed volutpat volutpat sodales. Mauris sed sodales odio. Aenean sem tortor, aliquam in leo eget, commodo condimentum odio. Pellentesque eu efficitur ante. Cras non diam vitae nibh condimentum egestas. Proin malesuada dapibus dapibus. Nam congue a risus id viverra. Phasellus hendrerit ex diam, eget semper nunc efficitur id. Nullam feugiat libero urna, quis bibendum urna dignissim ac. Donec convallis nulla eu nulla tempor, molestie elementum elit blandit. Ut eget ipsum eget odio elementum commodo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam tincidunt, velit quis vulputate condimentum, erat nibh accumsan augue, sed rutrum nibh elit et augue. Cras sed purus sit amet tellus gravida cursus eget ac nulla. Sed volutpat volutpat sodales. Mauris sed sodales odio. Aenean sem tortor, aliquam in leo eget, commodo condimentum odio. Pellentesque eu efficitur ante. Cras non diam vitae nibh condimentum egestas. Proin malesuada dapibus dapibus. Nam congue a risus id viverra. Phasellus hendrerit ex diam, eget semper nunc efficitur id. Nullam feugiat libero urna, quis bibendum urna dignissim ac. Donec convallis nulla eu nulla tempor, molestie elementum elit blandit. Ut eget ipsum eget odio elementum commodo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam tincidunt, velit quis vulputate condimentum, erat nibh accumsan augue, sed rutrum nibh elit et augue. Cras sed purus sit amet tellus gravida cursus eget ac nulla. Sed volutpat volutpat sodales. Mauris sed sodales odio. Aenean sem tortor, aliquam in leo eget, commodo condimentum odio. Pellentesque eu efficitur ante. Cras non diam vitae nibh condimentum egestas. Proin malesuada dapibus dapibus. Nam congue a risus id viverra. Phasellus hendrerit ex diam, eget semper nunc efficitur id. Nullam feugiat libero urna, quis bibendum urna dignissim ac. Donec convallis nulla eu nulla tempor, molestie elementum elit blandit. Ut eget ipsum eget odio elementum commodo.
18
20
  </div>
19
21
  <div slot="secondary">
22
+ <d2l-button id="open">Show Dialog</d2l-button>
23
+ <d2l-dialog-fullscreen id="dialogFullscreen" title-text="Fullscreen Title">
24
+ <p>Deadlights jack lad schooner scallywag dance the hempen jig carouser broadside cable strike colors. Bring a spring upon her cable holystone blow the man down spanker</p>
25
+ <p>Shiver me timbers to go on account lookout wherry doubloon chase. Belay yo-ho-ho keelhaul squiffy black spot yardarm spyglass sheet transom heave to.</p>
26
+ <p>Trysail Sail ho Corsair red ensign hulk smartly boom jib rum gangway. Case shot Shiver me timbers gangplank crack Jennys tea cup ballast Blimey lee snow crow's nest rutters. Fluke jib scourge of the seven seas boatswain schooner gaff booty Jack Tar transom spirits.</p>
27
+ <p>Deadlights jack lad schooner scallywag dance the hempen jig carouser broadside cable strike colors. Bring a spring upon her cable holystone blow the man down spanker</p>
28
+ <p>Shiver me timbers to go on account lookout wherry doubloon chase. Belay yo-ho-ho keelhaul squiffy black spot yardarm spyglass sheet transom heave to.</p>
29
+ <p>Trysail Sail ho Corsair red ensign hulk smartly boom jib rum gangway. Case shot Shiver me timbers gangplank crack Jennys tea cup ballast Blimey lee snow crow's nest rutters. Fluke jib scourge of the seven seas boatswain schooner gaff booty Jack Tar transom spirits.</p>
30
+ <d2l-button slot="footer" primary data-dialog-action="save">Save</d2l-button>
31
+ <d2l-button slot="footer" data-dialog-action>Cancel</d2l-button>
32
+ </d2l-dialog-fullscreen>
33
+
34
+ <script>
35
+ document.querySelector('#open').addEventListener('click', () => {
36
+ document.querySelector('#dialogFullscreen').opened = true;
37
+ });
38
+ document.querySelector('#dialogFullscreen').addEventListener('d2l-dialog-close', (e) => {
39
+ console.log('confirm action:', e.detail.action);
40
+ });
41
+ </script>
20
42
  <p>I'm in the <b>secondary</b> slot of the <b>d2l-template-primary-secondary</b> component!</p>
21
- Quisque justo risus, elementum quis condimentum vitae, venenatis sit amet nisl. Vivamus interdum pretium libero dictum eleifend. Donec eros tortor, facilisis eget maximus in, malesuada a magna. Nulla ac felis turpis. Donec pellentesque est in rhoncus tempus. Proin ac purus porttitor, interdum est a, venenatis mi. Maecenas nunc nulla, viverra ut ornare id, luctus eu nulla. Pellentesque massa turpis, porta ut tincidunt ut, ullamcorper vitae urna. Nam congue euismod placerat. Vestibulum aliquet, metus vitae viverra posuere, lacus urna hendrerit turpis, vel laoreet ligula odio et nisl. Mauris id lectus magna. Sed gravida tincidunt sapien quis dapibus.
43
+ Quisque justo risus, elementum quis condimentum vitae, venenatis sit amet nisl. Vivamus interdum pretium libero dictum eleifend. Donec eros tortor, facilisis eget maximus in, malesuada a magna. Nulla ac felis turpis. Donec pellentesque est in rhoncus tempus. Proin ac purus porttitor, interdum est a, venenatis mi. Maecenas nunc nulla, viverra ut ornare id, luctus eu nulla. Pellentesque massa turpis, porta ut tincidunt ut, ullamcorper vitae urna. Nam congue euismod placerat. Vestibulum aliquet, metus vitae viverra posuere, lacus urna hendrerit turpis, vel laoreet ligula odio et nisl. Mauris id lectus magna. Sed gravida tincidunt sapien quis dapibus.Deadlights jack lad schooner scallywag dance the hempen jig carouser broadside cable strike colors. Bring a spring upon her cable holystone blow the man down spankerDeadlights jack lad schooner scallywag dance the hempen jig carouser broadside cable strike colors. Bring a spring upon her cable holystone blow the man down spankerDeadlights jack lad schooner scallywag dance the hempen jig carouser broadside cable strike colors. Bring a spring upon her cable holystone blow the man down spanker
22
44
  </div>
23
45
  <div slot="footer">I'm in the <b>footer</b> slot of the <b>d2l-template-primary-secondary</b> component!</div>
24
46
  </d2l-template-primary-secondary>
@@ -542,7 +542,6 @@ class TemplatePrimarySecondary extends FocusVisiblePolyfillMixin(RtlMixin(Locali
542
542
 
543
543
  main {
544
544
  flex: 2 0 0;
545
- -webkit-overflow-scrolling: touch;
546
545
  overflow-x: hidden;
547
546
  transition: none;
548
547
  }
@@ -570,7 +569,6 @@ class TemplatePrimarySecondary extends FocusVisiblePolyfillMixin(RtlMixin(Locali
570
569
  aside {
571
570
  height: 100%;
572
571
  min-width: ${desktopMinSize}px;
573
- -webkit-overflow-scrolling: touch;
574
572
  overflow-x: hidden;
575
573
  overflow-y: scroll;
576
574
  }