@brightspace-ui/core 3.227.4 → 3.227.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.
- package/components/button/button.js +8 -8
- package/components/demo/test/demo-page-settings.test.js +25 -0
- package/components/demo/test/demo-page.test.js +17 -0
- package/package.json +1 -1
- package/components/alert/demo/alert-toast.html +0 -106
- package/components/alert/demo/alert.html +0 -82
- package/components/backdrop/demo/backdrop-loading.html +0 -166
- package/components/backdrop/demo/backdrop.html +0 -57
- package/components/breadcrumbs/demo/breadcrumbs.html +0 -53
- package/components/button/demo/button-add.html +0 -55
- package/components/button/demo/button-copy.html +0 -122
- package/components/button/demo/button-icon.html +0 -174
- package/components/button/demo/button-move.html +0 -38
- package/components/button/demo/button-split.html +0 -76
- package/components/button/demo/button-subtle.html +0 -132
- package/components/button/demo/button-toggle.html +0 -80
- package/components/button/demo/button.html +0 -67
- package/components/button/demo/floating-buttons-in-frame.html +0 -44
- package/components/button/demo/floating-buttons-in-tabs.html +0 -244
- package/components/button/demo/floating-buttons-page.html +0 -100
- package/components/button/demo/floating-buttons.html +0 -101
- package/components/calendar/demo/calendar.html +0 -76
- package/components/card/demo/card.html +0 -304
- package/components/collapsible-panel/demo/collapsible-panel.html +0 -218
- package/components/colors/demo/color-swatch.js +0 -240
- package/components/colors/demo/colors.html +0 -139
- package/components/count-badge/demo/count-badge-icon.html +0 -48
- package/components/count-badge/demo/count-badge.html +0 -73
- package/components/demo/demo/demo-snippet.html +0 -71
- package/components/description-list/demo/description-list-test.js +0 -142
- package/components/description-list/demo/description-list.html +0 -48
- package/components/dialog/demo/dialog-async-content-until.js +0 -89
- package/components/dialog/demo/dialog-async-content.js +0 -72
- package/components/dialog/demo/dialog-confirm.html +0 -102
- package/components/dialog/demo/dialog-container.js +0 -40
- package/components/dialog/demo/dialog-fullscreen.html +0 -273
- package/components/dialog/demo/dialog-nested.html +0 -94
- package/components/dialog/demo/dialog.html +0 -398
- package/components/dropdown/demo/dropdown-button.html +0 -102
- package/components/dropdown/demo/dropdown-context-menu.html +0 -129
- package/components/dropdown/demo/dropdown-flicker-inner.html +0 -70
- package/components/dropdown/demo/dropdown-flicker.html +0 -142
- package/components/dropdown/demo/dropdown-menu-demo-view.js +0 -37
- package/components/dropdown/demo/dropdown-menu.html +0 -227
- package/components/dropdown/demo/dropdown-more.html +0 -160
- package/components/dropdown/demo/dropdown-positioning.html +0 -127
- package/components/dropdown/demo/dropdown-tabs.html +0 -87
- package/components/dropdown/demo/dropdown.html +0 -217
- package/components/empty-state/demo/empty-state.html +0 -94
- package/components/expand-collapse/demo/expand-collapse-content.html +0 -58
- package/components/filter/demo/filter-load-more-demo.js +0 -182
- package/components/filter/demo/filter-overflow-group.html +0 -246
- package/components/filter/demo/filter-search-demo.js +0 -135
- package/components/filter/demo/filter-tags.html +0 -115
- package/components/filter/demo/filter.html +0 -230
- package/components/focus-trap/demo/focus-trap.html +0 -75
- package/components/form/demo/form-demo.js +0 -105
- package/components/form/demo/form-dialog-demo.js +0 -94
- package/components/form/demo/form-panel-demo.js +0 -89
- package/components/form/demo/form.html +0 -37
- package/components/hierarchical-view/demo/hierarchical-view.html +0 -221
- package/components/html-block/demo/html-block-code.html +0 -55
- package/components/html-block/demo/html-block.html +0 -696
- package/components/icons/demo/icon-color-override.js +0 -23
- package/components/icons/demo/icon-custom.html +0 -112
- package/components/icons/demo/icon-size-override.js +0 -24
- package/components/icons/demo/icon.html +0 -52
- package/components/inputs/demo/input-checkbox.html +0 -118
- package/components/inputs/demo/input-color-palette.js +0 -67
- package/components/inputs/demo/input-color.html +0 -110
- package/components/inputs/demo/input-date-range.html +0 -114
- package/components/inputs/demo/input-date-time-range.html +0 -128
- package/components/inputs/demo/input-date-time.html +0 -100
- package/components/inputs/demo/input-date.html +0 -81
- package/components/inputs/demo/input-group.html +0 -56
- package/components/inputs/demo/input-number.html +0 -136
- package/components/inputs/demo/input-percent.html +0 -99
- package/components/inputs/demo/input-radio-label-test.js +0 -45
- package/components/inputs/demo/input-radio-solo-test.js +0 -47
- package/components/inputs/demo/input-radio.html +0 -119
- package/components/inputs/demo/input-search.html +0 -75
- package/components/inputs/demo/input-select-test.js +0 -60
- package/components/inputs/demo/input-select.html +0 -45
- package/components/inputs/demo/input-text.html +0 -163
- package/components/inputs/demo/input-textarea.html +0 -124
- package/components/inputs/demo/input-time-range.html +0 -121
- package/components/inputs/demo/input-time.html +0 -95
- package/components/link/demo/link.html +0 -111
- package/components/list/demo/demo-list-nav.js +0 -170
- package/components/list/demo/demo-list-nested-iterations-helper.js +0 -168
- package/components/list/demo/demo-list-nested-lazy-load.js +0 -133
- package/components/list/demo/demo-list-nested.js +0 -291
- package/components/list/demo/demo-list.js +0 -241
- package/components/list/demo/list-color.html +0 -423
- package/components/list/demo/list-demo-scenarios.js +0 -380
- package/components/list/demo/list-drag-and-drop-position.js +0 -102
- package/components/list/demo/list-drag-and-drop.html +0 -82
- package/components/list/demo/list-expand-collapse.html +0 -136
- package/components/list/demo/list-item-actions.html +0 -371
- package/components/list/demo/list-item-custom.js +0 -204
- package/components/list/demo/list-item-layouts.html +0 -331
- package/components/list/demo/list-item-scroll.html +0 -122
- package/components/list/demo/list-layout.html +0 -575
- package/components/list/demo/list-nav.html +0 -110
- package/components/list/demo/list-nested.html +0 -270
- package/components/list/demo/list-selection.html +0 -301
- package/components/list/demo/list.html +0 -319
- package/components/loading-spinner/demo/loading-spinner-override.js +0 -34
- package/components/loading-spinner/demo/loading-spinner.html +0 -63
- package/components/menu/demo/checkbox-menu.html +0 -52
- package/components/menu/demo/custom-menu-item.js +0 -37
- package/components/menu/demo/custom-view.js +0 -63
- package/components/menu/demo/menu.html +0 -211
- package/components/menu/demo/radio-menu.html +0 -52
- package/components/meter/demo/meter.html +0 -115
- package/components/more-less/demo/more-less-test.js +0 -67
- package/components/more-less/demo/more-less.html +0 -71
- package/components/object-property-list/demo/object-property-list.html +0 -99
- package/components/offscreen/demo/offscreen-demo.js +0 -16
- package/components/offscreen/demo/offscreen.html +0 -44
- package/components/overflow-group/demo/demo-overflow-group.js +0 -29
- package/components/overflow-group/demo/overflow-group.html +0 -110
- package/components/paging/demo/pager-load-more.html +0 -120
- package/components/popover/demo/popover.html +0 -309
- package/components/progress/demo/progress.html +0 -104
- package/components/scroll-wrapper/demo/scroll-wrapper-test.js +0 -108
- package/components/scroll-wrapper/demo/scroll-wrapper.html +0 -52
- package/components/selection/demo/demo-selection.js +0 -35
- package/components/selection/demo/selection.html +0 -198
- package/components/skeleton/demo/skeleton-group-nested-test.js +0 -71
- package/components/skeleton/demo/skeleton-group-test-wrapper.js +0 -18
- package/components/skeleton/demo/skeleton-group-test.js +0 -91
- package/components/skeleton/demo/skeleton-mixin.html +0 -78
- package/components/skeleton/demo/skeleton-test-box.js +0 -34
- package/components/skeleton/demo/skeleton-test-container.js +0 -45
- package/components/skeleton/demo/skeleton-test-heading.js +0 -44
- package/components/skeleton/demo/skeleton-test-link.js +0 -47
- package/components/skeleton/demo/skeleton-test-paragraph.js +0 -54
- package/components/skeleton/demo/skeleton-test-stack.js +0 -38
- package/components/skeleton/demo/skeleton-test-width.js +0 -20
- package/components/sorting/demo/sort.html +0 -37
- package/components/status-indicator/demo/status-indicator.html +0 -99
- package/components/switch/demo/switch.html +0 -95
- package/components/table/demo/table-test.js +0 -271
- package/components/table/demo/table.html +0 -107
- package/components/tabs/demo/tab-custom.js +0 -39
- package/components/tabs/demo/tabs-array.js +0 -43
- package/components/tabs/demo/tabs.html +0 -558
- package/components/tag-list/demo/tag-list.html +0 -117
- package/components/tooltip/demo/tooltip.html +0 -275
- package/components/typography/demo/typography.html +0 -93
- package/components/view-switcher/demo/demo-table-view.js +0 -41
- package/components/view-switcher/demo/view-switcher.html +0 -71
- package/directives/animate/demo/animate-test.js +0 -98
- package/directives/animate/demo/index.html +0 -23
- package/helpers/demo/announce-test.js +0 -37
- package/helpers/demo/announce.html +0 -19
- package/helpers/demo/dismissible-test.js +0 -66
- package/helpers/demo/dismissible.html +0 -38
- package/helpers/demo/gestures.html +0 -58
- package/helpers/demo/prism.html +0 -694
- package/helpers/demo/template-tags.html +0 -118
- package/mixins/arrow-keys/demo/arrow-keys-mixin.html +0 -29
- package/mixins/arrow-keys/demo/arrow-keys-test.js +0 -38
- package/mixins/async-container/demo/async-container.html +0 -109
- package/mixins/async-container/demo/async-container.js +0 -27
- package/mixins/async-container/demo/async-item.js +0 -80
- package/mixins/labelled/demo/labelled-mixin.html +0 -90
- package/mixins/localize/demo/localize-mixin-greeting.js +0 -39
- package/mixins/localize/demo/localize-mixin-mission.js +0 -25
- package/mixins/localize/demo/localize-mixin.html +0 -28
- package/templates/primary-secondary/demo/form.html +0 -55
- package/templates/primary-secondary/demo/index.html +0 -27
- package/templates/primary-secondary/demo/integration.html +0 -457
- package/templates/primary-secondary/demo/overflow-hidden.html +0 -22
- package/templates/primary-secondary/demo/width-type-normal.html +0 -26
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { html, LitElement } from 'lit';
|
|
2
|
-
import { radioStyles } from '../input-radio-styles.js';
|
|
3
|
-
|
|
4
|
-
class TestInputRadioSolo extends LitElement {
|
|
5
|
-
|
|
6
|
-
static get properties() {
|
|
7
|
-
return {
|
|
8
|
-
/**
|
|
9
|
-
* Selection state
|
|
10
|
-
*/
|
|
11
|
-
checked: { type: Boolean },
|
|
12
|
-
/**
|
|
13
|
-
* Disables the input
|
|
14
|
-
*/
|
|
15
|
-
disabled: { type: Boolean },
|
|
16
|
-
/**
|
|
17
|
-
* Marks the input as invalid, which is shown in style and also is reflected in `aria-invalid`
|
|
18
|
-
*/
|
|
19
|
-
invalid: { type: Boolean }
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
static get styles() {
|
|
24
|
-
return radioStyles;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
render() {
|
|
28
|
-
const invalid = this.invalid ? 'true' : 'false';
|
|
29
|
-
return html`
|
|
30
|
-
<input
|
|
31
|
-
aria-invalid="${invalid}"
|
|
32
|
-
aria-label="Option 1"
|
|
33
|
-
?checked="${this.checked}"
|
|
34
|
-
class="d2l-input-radio"
|
|
35
|
-
?disabled="${this.disabled}"
|
|
36
|
-
type="radio">
|
|
37
|
-
`;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
focus() {
|
|
41
|
-
const elem = this.shadowRoot && this.shadowRoot.querySelector('input');
|
|
42
|
-
if (elem) elem.focus();
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
customElements.define('d2l-test-input-radio-solo', TestInputRadioSolo);
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
5
|
-
<meta charset="UTF-8">
|
|
6
|
-
<link rel="stylesheet" href="../../demo/styles.css" type="text/css">
|
|
7
|
-
<script type="module">
|
|
8
|
-
import '../../demo/demo-page.js';
|
|
9
|
-
import '../../form/form.js';
|
|
10
|
-
import '../input-group.js';
|
|
11
|
-
import '../input-radio.js';
|
|
12
|
-
import '../input-radio-group.js';
|
|
13
|
-
import '../../inputs/input-text.js';
|
|
14
|
-
import './input-radio-label-test.js';
|
|
15
|
-
</script>
|
|
16
|
-
</head>
|
|
17
|
-
<body unresolved>
|
|
18
|
-
<d2l-demo-page page-title="d2l-input-radio">
|
|
19
|
-
|
|
20
|
-
<h2>Simple radio group with labels</h2>
|
|
21
|
-
<d2l-demo-snippet>
|
|
22
|
-
<d2l-input-radio-group label="Bread">
|
|
23
|
-
<d2l-input-radio label="Whole wheat" value="whole-wheat"></d2l-input-radio>
|
|
24
|
-
<d2l-input-radio label="Baguette" value="baguette" checked></d2l-input-radio>
|
|
25
|
-
<d2l-input-radio label="Marble Rye" value="marble-rye"></d2l-input-radio>
|
|
26
|
-
</d2l-input-radio-group>
|
|
27
|
-
</d2l-demo-snippet>
|
|
28
|
-
|
|
29
|
-
<h2>Required radio group in a form</h2>
|
|
30
|
-
<d2l-demo-snippet>
|
|
31
|
-
<d2l-form>
|
|
32
|
-
<d2l-input-group>
|
|
33
|
-
<d2l-input-radio-group name="bread" label="Bread" required>
|
|
34
|
-
<d2l-input-radio label="Whole wheat" value="whole-wheat"></d2l-input-radio>
|
|
35
|
-
<d2l-input-radio label="Baguette" value="baguette"></d2l-input-radio>
|
|
36
|
-
<d2l-input-radio label="Marble Rye" value="marble-rye"></d2l-input-radio>
|
|
37
|
-
</d2l-input-radio-group>
|
|
38
|
-
</d2l-input-group>
|
|
39
|
-
<button style="margin-top: 20px;">Save</button>
|
|
40
|
-
</d2l-form>
|
|
41
|
-
<script>
|
|
42
|
-
(demo => {
|
|
43
|
-
const form = demo.querySelector('d2l-form');
|
|
44
|
-
form.addEventListener('d2l-form-submit', (e) => {
|
|
45
|
-
console.log(`form submitted, value: "${e.detail.formData['bread']}"`);
|
|
46
|
-
});
|
|
47
|
-
const button = demo.querySelector('button');
|
|
48
|
-
button.addEventListener('click', () => form.submit());
|
|
49
|
-
})(document.currentScript.parentNode);
|
|
50
|
-
</script>
|
|
51
|
-
</d2l-demo-snippet>
|
|
52
|
-
|
|
53
|
-
<h2>Group with disabled item</h2>
|
|
54
|
-
<d2l-demo-snippet>
|
|
55
|
-
<d2l-input-radio-group label="Bread">
|
|
56
|
-
<d2l-input-radio label="Whole wheat" checked></d2l-input-radio>
|
|
57
|
-
<d2l-input-radio label="Baguette" disabled></d2l-input-radio>
|
|
58
|
-
<d2l-input-radio label="Marble Rye"></d2l-input-radio>
|
|
59
|
-
</d2l-input-radio-group>
|
|
60
|
-
</d2l-demo-snippet>
|
|
61
|
-
|
|
62
|
-
<h2>Group with disabled item(with disabled tooltip)</h2>
|
|
63
|
-
<d2l-demo-snippet>
|
|
64
|
-
<d2l-input-radio-group label="Bread">
|
|
65
|
-
<d2l-input-radio label="Whole wheat" checked></d2l-input-radio>
|
|
66
|
-
<d2l-input-radio label="Baguette" disabled disabled-tooltip="This option is currently unavailable."></d2l-input-radio>
|
|
67
|
-
<d2l-input-radio label="Marble Rye"></d2l-input-radio>
|
|
68
|
-
</d2l-input-radio-group>
|
|
69
|
-
</d2l-demo-snippet>
|
|
70
|
-
|
|
71
|
-
<h2>Inline help</h2>
|
|
72
|
-
<d2l-demo-snippet>
|
|
73
|
-
<d2l-input-radio-group label="Bread">
|
|
74
|
-
<d2l-input-radio label="Whole wheat">
|
|
75
|
-
<div slot="inline-help">A healthy option, rich in fiber and nutrients.</div>
|
|
76
|
-
</d2l-input-radio>
|
|
77
|
-
<d2l-input-radio label="Baguette" checked>
|
|
78
|
-
<div slot="inline-help">A symbol of French culture and cuisine, with millions baked and consumed daily.</div>
|
|
79
|
-
</d2l-input-radio>
|
|
80
|
-
<d2l-input-radio label="Marble Rye">
|
|
81
|
-
<div slot="inline-help">Characterized by its distinctive appearance, achieved by weaving together light and dark rye dough.</div>
|
|
82
|
-
</d2l-input-radio>
|
|
83
|
-
</d2l-input-radio-group>
|
|
84
|
-
</d2l-demo-snippet>
|
|
85
|
-
|
|
86
|
-
<h2>Supporting slot</h2>
|
|
87
|
-
<d2l-demo-snippet>
|
|
88
|
-
<d2l-input-radio-group label="Bread">
|
|
89
|
-
<d2l-input-radio label="Whole wheat"></d2l-input-radio>
|
|
90
|
-
<d2l-input-radio label="Baguette"></d2l-input-radio>
|
|
91
|
-
<d2l-input-radio label="Marble Rye"></d2l-input-radio>
|
|
92
|
-
<d2l-input-radio label="Other" checked supporting-hidden-when-unchecked>
|
|
93
|
-
<d2l-input-text label="Other" label-hidden value="Sourdough" slot="supporting"></d2l-input-text>
|
|
94
|
-
</d2l-input-radio>
|
|
95
|
-
</d2l-input-radio-group>
|
|
96
|
-
</d2l-demo-snippet>
|
|
97
|
-
|
|
98
|
-
<h2>Standard radios with styles</h2>
|
|
99
|
-
<d2l-demo-snippet>
|
|
100
|
-
<d2l-test-input-radio-label></d2l-test-input-radio-label>
|
|
101
|
-
</d2l-demo-snippet>
|
|
102
|
-
|
|
103
|
-
<h2>Horizontal Layout</h2>
|
|
104
|
-
<d2l-demo-snippet>
|
|
105
|
-
<d2l-input-radio-group horizontal label="Bread">
|
|
106
|
-
<d2l-input-radio label="Super long label that extends and forces wrapping"></d2l-input-radio>
|
|
107
|
-
<d2l-input-radio style="max-width: 200px;" label="Super long label that extends and forces wrapping with max width"></d2l-input-radio>
|
|
108
|
-
<d2l-input-radio label="Whole wheat"></d2l-input-radio>
|
|
109
|
-
<d2l-input-radio label="Baguette"></d2l-input-radio>
|
|
110
|
-
<d2l-input-radio label="Marble Rye"></d2l-input-radio>
|
|
111
|
-
<d2l-input-radio label="Other" checked supporting-hidden-when-unchecked>
|
|
112
|
-
<d2l-input-text label="Other" label-hidden value="Sourdough" slot="supporting"></d2l-input-text>
|
|
113
|
-
</d2l-input-radio>
|
|
114
|
-
</d2l-input-radio-group>
|
|
115
|
-
</d2l-demo-snippet>
|
|
116
|
-
|
|
117
|
-
</d2l-demo-page>
|
|
118
|
-
</body>
|
|
119
|
-
</html>
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
5
|
-
<meta charset="UTF-8">
|
|
6
|
-
<link rel="stylesheet" href="../../demo/styles.css" type="text/css">
|
|
7
|
-
<script type="module">
|
|
8
|
-
import '../../demo/demo-page.js';
|
|
9
|
-
import '../input-search.js';
|
|
10
|
-
</script>
|
|
11
|
-
</head>
|
|
12
|
-
<body unresolved>
|
|
13
|
-
<d2l-demo-page page-title="d2l-input-search">
|
|
14
|
-
|
|
15
|
-
<h2>Search Input</h2>
|
|
16
|
-
<d2l-demo-snippet>
|
|
17
|
-
<template>
|
|
18
|
-
<d2l-input-search label="Search" value="apples" placeholder="Search...">
|
|
19
|
-
</d2l-input-search>
|
|
20
|
-
</template>
|
|
21
|
-
</d2l-demo-snippet>
|
|
22
|
-
|
|
23
|
-
<h2>Search Input (No Clear)</h2>
|
|
24
|
-
<d2l-demo-snippet>
|
|
25
|
-
<template>
|
|
26
|
-
<d2l-input-search label="Search" value="Clear button will never appear" placeholder="Search..." no-clear>
|
|
27
|
-
</d2l-input-search>
|
|
28
|
-
</template>
|
|
29
|
-
</d2l-demo-snippet>
|
|
30
|
-
|
|
31
|
-
<h2>Search Input (Search on Input)</h2>
|
|
32
|
-
<d2l-demo-snippet>
|
|
33
|
-
<template>
|
|
34
|
-
<d2l-input-search label="Search" value="Will dispatch search after every input" placeholder="Search..." search-on-input>
|
|
35
|
-
</d2l-input-search>
|
|
36
|
-
</template>
|
|
37
|
-
</d2l-demo-snippet>
|
|
38
|
-
|
|
39
|
-
<h2>Search Input with Inline Help</h2>
|
|
40
|
-
<d2l-demo-snippet>
|
|
41
|
-
<template>
|
|
42
|
-
<d2l-input-search label="Search" value="apples" placeholder="Search...">
|
|
43
|
-
<div slot="inline-help">
|
|
44
|
-
Help text <b>right here</b>!
|
|
45
|
-
</div>
|
|
46
|
-
</d2l-input-search>
|
|
47
|
-
</template>
|
|
48
|
-
</d2l-demo-snippet>
|
|
49
|
-
|
|
50
|
-
<h2>Search Input with Inline Help (multiline)</h2>
|
|
51
|
-
<d2l-demo-snippet>
|
|
52
|
-
<template>
|
|
53
|
-
<d2l-input-search label="Search" value="apples" placeholder="Search...">
|
|
54
|
-
<div slot="inline-help">
|
|
55
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
|
|
56
|
-
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
|
|
57
|
-
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris
|
|
58
|
-
nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
|
|
59
|
-
reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
60
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa
|
|
61
|
-
qui officia deserunt mollit anim id est laborum.
|
|
62
|
-
</div>
|
|
63
|
-
</d2l-input-search>
|
|
64
|
-
</template>
|
|
65
|
-
</d2l-demo-snippet>
|
|
66
|
-
|
|
67
|
-
<script>
|
|
68
|
-
document.body.addEventListener('d2l-input-search-searched', (e) => {
|
|
69
|
-
console.log(e);
|
|
70
|
-
});
|
|
71
|
-
</script>
|
|
72
|
-
|
|
73
|
-
</d2l-demo-page>
|
|
74
|
-
</body>
|
|
75
|
-
</html>
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { css, html, LitElement } from 'lit';
|
|
2
|
-
import { selectStyles } from '../input-select-styles.js';
|
|
3
|
-
import { SkeletonMixin } from '../../../components/skeleton/skeleton-mixin.js';
|
|
4
|
-
|
|
5
|
-
class TestInputSelect extends SkeletonMixin(LitElement) {
|
|
6
|
-
|
|
7
|
-
static get properties() {
|
|
8
|
-
return {
|
|
9
|
-
/**
|
|
10
|
-
* Disables the input
|
|
11
|
-
*/
|
|
12
|
-
disabled: { type: Boolean },
|
|
13
|
-
/**
|
|
14
|
-
* Marks the input as invalid, which is shown in style and also is reflected in `aria-invalid`
|
|
15
|
-
*/
|
|
16
|
-
invalid: { type: Boolean },
|
|
17
|
-
/**
|
|
18
|
-
* Sets a max-width on the select element in order to show overflow styles
|
|
19
|
-
*/
|
|
20
|
-
overflow: { type: Boolean }
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
static get styles() {
|
|
25
|
-
return [super.styles, selectStyles,
|
|
26
|
-
css`
|
|
27
|
-
:host {
|
|
28
|
-
display: inline-block;
|
|
29
|
-
}
|
|
30
|
-
:host([overflow]) select {
|
|
31
|
-
max-width: 130px;
|
|
32
|
-
}
|
|
33
|
-
`
|
|
34
|
-
];
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
render() {
|
|
38
|
-
const invalid = this.invalid ? 'true' : 'false';
|
|
39
|
-
return html`
|
|
40
|
-
<div class="d2l-skeletize">
|
|
41
|
-
<select
|
|
42
|
-
aria-label="Choose a dinosaur:"
|
|
43
|
-
aria-invalid="${invalid}"
|
|
44
|
-
class="d2l-input-select"
|
|
45
|
-
?disabled="${this.disabled}">
|
|
46
|
-
<option>Tyrannosaurus</option>
|
|
47
|
-
<option>Velociraptor</option>
|
|
48
|
-
<option>Deinonychus</option>
|
|
49
|
-
</select>
|
|
50
|
-
</div>
|
|
51
|
-
`;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
focus() {
|
|
55
|
-
const elem = this.shadowRoot && this.shadowRoot.querySelector('select');
|
|
56
|
-
if (elem) elem.focus();
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
customElements.define('d2l-test-input-select', TestInputSelect);
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
5
|
-
<meta charset="UTF-8">
|
|
6
|
-
<link rel="stylesheet" href="../../demo/styles.css" type="text/css">
|
|
7
|
-
<script type="module">
|
|
8
|
-
import '../../demo/demo-page.js';
|
|
9
|
-
import './input-select-test.js';
|
|
10
|
-
</script>
|
|
11
|
-
</head>
|
|
12
|
-
<body unresolved>
|
|
13
|
-
<d2l-demo-page page-title="Select Lists">
|
|
14
|
-
|
|
15
|
-
<h2>Default</h2>
|
|
16
|
-
<d2l-demo-snippet>
|
|
17
|
-
<template>
|
|
18
|
-
<d2l-test-input-select></d2l-test-input-select>
|
|
19
|
-
</template>
|
|
20
|
-
</d2l-demo-snippet>
|
|
21
|
-
|
|
22
|
-
<h2>Disabled</h2>
|
|
23
|
-
<d2l-demo-snippet>
|
|
24
|
-
<template>
|
|
25
|
-
<d2l-test-input-select disabled></d2l-test-input-select>
|
|
26
|
-
</template>
|
|
27
|
-
</d2l-demo-snippet>
|
|
28
|
-
|
|
29
|
-
<h2>Invalid</h2>
|
|
30
|
-
<d2l-demo-snippet>
|
|
31
|
-
<template>
|
|
32
|
-
<d2l-test-input-select invalid></d2l-test-input-select>
|
|
33
|
-
</template>
|
|
34
|
-
</d2l-demo-snippet>
|
|
35
|
-
|
|
36
|
-
<h2>Overflowing</h2>
|
|
37
|
-
<d2l-demo-snippet>
|
|
38
|
-
<template>
|
|
39
|
-
<d2l-test-input-select overflow></d2l-test-input-select>
|
|
40
|
-
</template>
|
|
41
|
-
</d2l-demo-snippet>
|
|
42
|
-
|
|
43
|
-
</d2l-demo-page>
|
|
44
|
-
</body>
|
|
45
|
-
</html>
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
5
|
-
<meta charset="UTF-8">
|
|
6
|
-
<link rel="stylesheet" href="../../demo/styles.css" type="text/css">
|
|
7
|
-
<script type="module">
|
|
8
|
-
import '../../demo/demo-page.js';
|
|
9
|
-
import '../../button/button-icon.js';
|
|
10
|
-
import '../../icons/icon.js';
|
|
11
|
-
import '../input-text.js';
|
|
12
|
-
</script>
|
|
13
|
-
<style>
|
|
14
|
-
d2l-button-icon[slot="left"], d2l-button-icon[slot="right"] {
|
|
15
|
-
--d2l-button-icon-min-height: 1.8rem;
|
|
16
|
-
--d2l-button-icon-min-width: 1.8rem;
|
|
17
|
-
--d2l-button-icon-border-radius: 4px;
|
|
18
|
-
--d2l-button-icon-focus-color: var(--d2l-color-celestine);
|
|
19
|
-
--d2l-button-icon-focus-offset: 1px;
|
|
20
|
-
}
|
|
21
|
-
d2l-icon[slot="left"], d2l-icon[slot="right"] {
|
|
22
|
-
margin-left: 0.55rem;
|
|
23
|
-
margin-right: 0.55rem;
|
|
24
|
-
}
|
|
25
|
-
d2l-button-icon[slot="left"], [dir="rtl"] d2l-button-icon[slot="right"] {
|
|
26
|
-
margin-left: 3px;
|
|
27
|
-
margin-right: 15px;
|
|
28
|
-
}
|
|
29
|
-
d2l-button-icon[slot="right"], [dir="rtl"] d2l-button-icon[slot="left"] {
|
|
30
|
-
margin-left: 15px;
|
|
31
|
-
margin-right: 3px;
|
|
32
|
-
}
|
|
33
|
-
</style>
|
|
34
|
-
</head>
|
|
35
|
-
<body unresolved>
|
|
36
|
-
<d2l-demo-page page-title="d2l-input-text">
|
|
37
|
-
|
|
38
|
-
<h2>Simple</h2>
|
|
39
|
-
<d2l-demo-snippet>
|
|
40
|
-
<template>
|
|
41
|
-
<d2l-input-text label="Name"></d2l-input-text>
|
|
42
|
-
</template>
|
|
43
|
-
</d2l-demo-snippet>
|
|
44
|
-
|
|
45
|
-
<h2>Hidden Label</h2>
|
|
46
|
-
<d2l-demo-snippet>
|
|
47
|
-
<template>
|
|
48
|
-
<d2l-input-text label="Name" label-hidden></d2l-input-text>
|
|
49
|
-
</template>
|
|
50
|
-
</d2l-demo-snippet>
|
|
51
|
-
|
|
52
|
-
<h2>Required</h2>
|
|
53
|
-
<d2l-demo-snippet>
|
|
54
|
-
<template>
|
|
55
|
-
<d2l-input-text label="Name" required></d2l-input-text>
|
|
56
|
-
</template>
|
|
57
|
-
</d2l-demo-snippet>
|
|
58
|
-
|
|
59
|
-
<h2>Disabled</h2>
|
|
60
|
-
<d2l-demo-snippet>
|
|
61
|
-
<template>
|
|
62
|
-
<d2l-input-text label="Name (disabled)" disabled></d2l-input-text>
|
|
63
|
-
</template>
|
|
64
|
-
</d2l-demo-snippet>
|
|
65
|
-
|
|
66
|
-
<h2>Instructions</h2>
|
|
67
|
-
<d2l-demo-snippet>
|
|
68
|
-
<template>
|
|
69
|
-
<d2l-input-text label="Name" instructions="Use the keyboard to enter some sweet stuff... :)"></d2l-input-text>
|
|
70
|
-
</template>
|
|
71
|
-
</d2l-demo-snippet>
|
|
72
|
-
|
|
73
|
-
<h3>Invalid</h3>
|
|
74
|
-
<d2l-demo-snippet>
|
|
75
|
-
<template>
|
|
76
|
-
<d2l-input-text label="Automatic" type="email" value="foo@"></d2l-input-text>
|
|
77
|
-
<br><br>
|
|
78
|
-
<d2l-input-text label="Manual" type="text" aria-invalid="true"></d2l-input-text>
|
|
79
|
-
</template>
|
|
80
|
-
</d2l-demo-snippet>
|
|
81
|
-
|
|
82
|
-
<h2>Unit</h2>
|
|
83
|
-
<d2l-demo-snippet>
|
|
84
|
-
<template>
|
|
85
|
-
<d2l-input-text label="Label" required unit="%"></d2l-input-text>
|
|
86
|
-
</template>
|
|
87
|
-
</d2l-demo-snippet>
|
|
88
|
-
|
|
89
|
-
<h2>Icon on Left and Label</h2>
|
|
90
|
-
<d2l-demo-snippet>
|
|
91
|
-
<template>
|
|
92
|
-
<d2l-input-text label="Name">
|
|
93
|
-
<d2l-icon icon="tier1:calendar" slot="left"></d2l-icon>
|
|
94
|
-
</d2l-input-text>
|
|
95
|
-
</template>
|
|
96
|
-
</d2l-demo-snippet>
|
|
97
|
-
|
|
98
|
-
<h2>Icon Button on Right</h2>
|
|
99
|
-
<d2l-demo-snippet>
|
|
100
|
-
<template>
|
|
101
|
-
<d2l-input-text label="Icon on right" label-hidden>
|
|
102
|
-
<d2l-button-icon icon="tier1:search" slot="right" text="search"></d2l-button-icon>
|
|
103
|
-
</d2l-input-text>
|
|
104
|
-
</template>
|
|
105
|
-
</d2l-demo-snippet>
|
|
106
|
-
|
|
107
|
-
<h2>Icons on Left and Right</h2>
|
|
108
|
-
<d2l-demo-snippet>
|
|
109
|
-
<template>
|
|
110
|
-
<d2l-input-text label="Two Icons" label-hidden>
|
|
111
|
-
<d2l-icon icon="tier1:search" slot="left"></d2l-icon>
|
|
112
|
-
<d2l-icon icon="tier1:search" slot="right"></d2l-icon>
|
|
113
|
-
</d2l-input-text>
|
|
114
|
-
</template>
|
|
115
|
-
</d2l-demo-snippet>
|
|
116
|
-
|
|
117
|
-
<h2>After Slot</h2>
|
|
118
|
-
<d2l-demo-snippet>
|
|
119
|
-
<template>
|
|
120
|
-
<d2l-input-text label="Help Text">
|
|
121
|
-
<d2l-button-icon icon="tier1:help" text="help" slot="after"></d2l-button-icon>
|
|
122
|
-
</d2l-input-text>
|
|
123
|
-
</template>
|
|
124
|
-
</d2l-demo-snippet>
|
|
125
|
-
|
|
126
|
-
<h2>Custom Width</h2>
|
|
127
|
-
<d2l-demo-snippet>
|
|
128
|
-
<template>
|
|
129
|
-
<d2l-input-text label="Name" input-width="400px"></d2l-input-text>
|
|
130
|
-
</template>
|
|
131
|
-
</d2l-demo-snippet>
|
|
132
|
-
|
|
133
|
-
<h2>Inline Help</h2>
|
|
134
|
-
<d2l-demo-snippet>
|
|
135
|
-
<template>
|
|
136
|
-
<d2l-input-text label="Alphabet" pattern="[a-z]*" pattern-failure-text="Must be a lowercase letter from a to z">
|
|
137
|
-
<div slot="inline-help">
|
|
138
|
-
Enter only lowercase letters from the alphabet.
|
|
139
|
-
</div>
|
|
140
|
-
</d2l-input-text>
|
|
141
|
-
</template>
|
|
142
|
-
</d2l-demo-snippet>
|
|
143
|
-
|
|
144
|
-
<h2>Inline help (multiline) checkbox</h2>
|
|
145
|
-
<d2l-demo-snippet>
|
|
146
|
-
<template>
|
|
147
|
-
<d2l-input-text label="Name">
|
|
148
|
-
<div slot="inline-help">
|
|
149
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
|
|
150
|
-
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
|
|
151
|
-
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris
|
|
152
|
-
nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
|
|
153
|
-
reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
154
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa
|
|
155
|
-
qui officia deserunt mollit anim id est laborum.
|
|
156
|
-
</div>
|
|
157
|
-
</d2l-input-text>
|
|
158
|
-
</template>
|
|
159
|
-
</d2l-demo-snippet>
|
|
160
|
-
|
|
161
|
-
</d2l-demo-page>
|
|
162
|
-
</body>
|
|
163
|
-
</html>
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
5
|
-
<meta charset="UTF-8">
|
|
6
|
-
<link rel="stylesheet" href="../../demo/styles.css" type="text/css">
|
|
7
|
-
<script type="module">
|
|
8
|
-
import '../../demo/demo-page.js';
|
|
9
|
-
import '../input-textarea.js';
|
|
10
|
-
</script>
|
|
11
|
-
</head>
|
|
12
|
-
<body unresolved>
|
|
13
|
-
<d2l-demo-page page-title="d2l-input-textarea">
|
|
14
|
-
|
|
15
|
-
<h2>Default (show min 5 lines, max 11 lines)</h2>
|
|
16
|
-
<d2l-demo-snippet>
|
|
17
|
-
<template>
|
|
18
|
-
<d2l-input-textarea label="Description"></d2l-input-textarea>
|
|
19
|
-
</template>
|
|
20
|
-
</d2l-demo-snippet>
|
|
21
|
-
|
|
22
|
-
<h2>No Min/Max-Lines</h2>
|
|
23
|
-
<d2l-demo-snippet>
|
|
24
|
-
<template>
|
|
25
|
-
<d2l-input-textarea label="Description" rows="1" max-rows="-1"></d2l-input-textarea>
|
|
26
|
-
</template>
|
|
27
|
-
</d2l-demo-snippet>
|
|
28
|
-
|
|
29
|
-
<h2>Hidden Label</h2>
|
|
30
|
-
<d2l-demo-snippet>
|
|
31
|
-
<template>
|
|
32
|
-
<d2l-input-textarea label="Description" label-hidden></d2l-input-textarea>
|
|
33
|
-
</template>
|
|
34
|
-
</d2l-demo-snippet>
|
|
35
|
-
|
|
36
|
-
<h2>Required</h2>
|
|
37
|
-
<d2l-demo-snippet>
|
|
38
|
-
<template>
|
|
39
|
-
<d2l-input-textarea label="Description" required></d2l-input-textarea>
|
|
40
|
-
</template>
|
|
41
|
-
</d2l-demo-snippet>
|
|
42
|
-
|
|
43
|
-
<h2>Disabled</h2>
|
|
44
|
-
<d2l-demo-snippet>
|
|
45
|
-
<template>
|
|
46
|
-
<d2l-input-textarea label="Description (disabled)" disabled></d2l-input-textarea>
|
|
47
|
-
</template>
|
|
48
|
-
</d2l-demo-snippet>
|
|
49
|
-
|
|
50
|
-
<h2>Long Label</h2>
|
|
51
|
-
<d2l-demo-snippet>
|
|
52
|
-
<template>
|
|
53
|
-
<d2l-input-textarea label="Enter a description of your favorite cartoon character. It must be between 30 and 60 characters in length."></d2l-input-textarea>
|
|
54
|
-
</template>
|
|
55
|
-
</d2l-demo-snippet>
|
|
56
|
-
|
|
57
|
-
<h3>Invalid</h3>
|
|
58
|
-
<d2l-demo-snippet>
|
|
59
|
-
<template>
|
|
60
|
-
<d2l-input-textarea label="Description" aria-invalid="true"></d2l-input-textarea>
|
|
61
|
-
</template>
|
|
62
|
-
</d2l-demo-snippet>
|
|
63
|
-
|
|
64
|
-
<h3>Min/Max-Length</h3>
|
|
65
|
-
<d2l-demo-snippet>
|
|
66
|
-
<template>
|
|
67
|
-
<d2l-input-textarea label="Description" minlength="10" maxlength="30"></d2l-input-textarea>
|
|
68
|
-
</template>
|
|
69
|
-
</d2l-demo-snippet>
|
|
70
|
-
|
|
71
|
-
<h3>No Border, No Padding</h3>
|
|
72
|
-
<d2l-demo-snippet>
|
|
73
|
-
<template>
|
|
74
|
-
<d2l-input-textarea label="Description" no-border no-padding></d2l-input-textarea>
|
|
75
|
-
</template>
|
|
76
|
-
</d2l-demo-snippet>
|
|
77
|
-
|
|
78
|
-
<h2>Custom Width</h2>
|
|
79
|
-
<d2l-demo-snippet>
|
|
80
|
-
<template>
|
|
81
|
-
<d2l-input-textarea label="Label" value="text" skeleton></d2l-input-textarea>
|
|
82
|
-
<d2l-input-textarea label="Name" input-width="400px"></d2l-input-textarea>
|
|
83
|
-
</template>
|
|
84
|
-
</d2l-demo-snippet>
|
|
85
|
-
|
|
86
|
-
<h3>Inline Help</h3>
|
|
87
|
-
<d2l-demo-snippet>
|
|
88
|
-
<template>
|
|
89
|
-
<d2l-input-textarea label="Description">
|
|
90
|
-
<div slot="inline-help">
|
|
91
|
-
Help text <b>right here</b>!
|
|
92
|
-
</div>
|
|
93
|
-
</d2l-input-textarea>
|
|
94
|
-
</template>
|
|
95
|
-
</d2l-demo-snippet>
|
|
96
|
-
|
|
97
|
-
<h3>Inline Help (multiline)</h3>
|
|
98
|
-
<d2l-demo-snippet>
|
|
99
|
-
<template>
|
|
100
|
-
<d2l-input-textarea label="Description">
|
|
101
|
-
<div slot="inline-help">
|
|
102
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
|
|
103
|
-
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
|
|
104
|
-
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris
|
|
105
|
-
nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
|
|
106
|
-
reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
|
|
107
|
-
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa
|
|
108
|
-
qui officia deserunt mollit anim id est laborum.
|
|
109
|
-
</div>
|
|
110
|
-
</d2l-input-textarea>
|
|
111
|
-
</template>
|
|
112
|
-
</d2l-demo-snippet>
|
|
113
|
-
|
|
114
|
-
</d2l-demo-page>
|
|
115
|
-
<script>
|
|
116
|
-
document.body.addEventListener('input', e => {
|
|
117
|
-
console.log('input', e.target);
|
|
118
|
-
});
|
|
119
|
-
document.body.addEventListener('change', e => {
|
|
120
|
-
console.log('change', e.target);
|
|
121
|
-
});
|
|
122
|
-
</script>
|
|
123
|
-
</body>
|
|
124
|
-
</html>
|