@watermarkinsights/ripple 5.19.0-alpha.1 → 5.19.0-alpha.10
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/dist/cjs/{app-globals-c7500647.js → app-globals-ed9c9c88.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/priv-navigator-item.cjs.entry.js +1 -1
- package/dist/cjs/priv-option-list.cjs.entry.js +1 -1
- package/dist/cjs/ripple.cjs.js +1 -1
- package/dist/cjs/wm-action-menu_2.cjs.entry.js +1 -1
- package/dist/cjs/wm-file.cjs.entry.js +35 -19
- package/dist/cjs/wm-navigator.cjs.entry.js +12 -5
- package/dist/cjs/wm-nested-select.cjs.entry.js +1 -1
- package/dist/cjs/wm-option_2.cjs.entry.js +1 -1
- package/dist/cjs/wm-uploader.cjs.entry.js +4 -4
- package/dist/collection/components/datepickers/datepicker.css +0 -31
- package/dist/collection/components/selects/priv-option-list/priv-option-list.css +1 -1
- package/dist/collection/components/selects/wm-nested-select/wm-nested-select.css +1 -1
- package/dist/collection/components/selects/wm-option/wm-option.css +8 -3
- package/dist/collection/components/wm-file/wm-file.css +89 -13
- package/dist/collection/components/wm-file/wm-file.js +34 -18
- package/dist/collection/components/wm-menuitem/wm-menuitem.css +16 -43
- package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css +0 -31
- package/dist/collection/components/wm-navigator/priv-navigator-item/priv-navigator-item.css +11 -2
- package/dist/collection/components/wm-navigator/wm-navigator.css +8 -2
- package/dist/collection/components/wm-navigator/wm-navigator.js +11 -4
- package/dist/collection/components/wm-pagination/wm-pagination.css +0 -31
- package/dist/collection/components/wm-search/wm-search.css +0 -31
- package/dist/collection/components/wm-snackbar/wm-snackbar.css +0 -31
- package/dist/collection/components/wm-timepicker/wm-timepicker.css +0 -31
- package/dist/collection/components/wm-uploader/wm-uploader.css +41 -37
- package/dist/collection/components/wm-uploader/wm-uploader.js +3 -3
- package/dist/esm/{app-globals-f089afb3.js → app-globals-2581ac73.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/polyfills/core-js.js +0 -0
- package/dist/esm/polyfills/dom.js +0 -0
- package/dist/esm/polyfills/es5-html-element.js +0 -0
- package/dist/esm/polyfills/index.js +0 -0
- package/dist/esm/polyfills/system.js +0 -0
- package/dist/esm/priv-navigator-item.entry.js +1 -1
- package/dist/esm/priv-option-list.entry.js +1 -1
- package/dist/esm/ripple.js +1 -1
- package/dist/esm/wm-action-menu_2.entry.js +1 -1
- package/dist/esm/wm-file.entry.js +35 -19
- package/dist/esm/wm-navigator.entry.js +12 -5
- package/dist/esm/wm-nested-select.entry.js +1 -1
- package/dist/esm/wm-option_2.entry.js +1 -1
- package/dist/esm/wm-uploader.entry.js +4 -4
- package/dist/esm-es5/app-globals-2581ac73.js +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/priv-navigator-item.entry.js +1 -1
- package/dist/esm-es5/priv-option-list.entry.js +1 -1
- package/dist/esm-es5/ripple.js +1 -1
- package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
- package/dist/esm-es5/wm-file.entry.js +1 -1
- package/dist/esm-es5/wm-navigator.entry.js +1 -1
- package/dist/esm-es5/wm-nested-select.entry.js +1 -1
- package/dist/esm-es5/wm-option_2.entry.js +1 -1
- package/dist/esm-es5/wm-uploader.entry.js +1 -1
- package/dist/ripple/p-02a15884.entry.js +1 -0
- package/dist/ripple/{p-99e4e12d.system.entry.js → p-03759d86.system.entry.js} +1 -1
- package/dist/ripple/{p-7ca13016.system.entry.js → p-138491c8.system.entry.js} +1 -1
- package/dist/ripple/{p-85ac07c7.system.entry.js → p-1841c319.system.entry.js} +1 -1
- package/dist/ripple/{p-5ecdb43e.system.entry.js → p-23e1112c.system.entry.js} +1 -1
- package/dist/ripple/{p-8fb8253e.entry.js → p-57f9c7c3.entry.js} +1 -1
- package/dist/ripple/{p-8a32bd08.system.entry.js → p-65d3f9c4.system.entry.js} +1 -1
- package/dist/ripple/p-69ba61b7.entry.js +1 -0
- package/dist/ripple/p-6af36676.system.js +1 -0
- package/dist/ripple/{p-2d9328dd.system.entry.js → p-6bf103b8.system.entry.js} +1 -1
- package/dist/ripple/{p-386d990c.entry.js → p-6ec4129b.entry.js} +1 -1
- package/dist/ripple/{p-b29393d0.entry.js → p-9e1ea6e2.entry.js} +1 -1
- package/dist/ripple/{p-cf12dd5f.entry.js → p-a9ddfa2c.entry.js} +1 -1
- package/dist/ripple/p-c30337c8.js +1 -0
- package/dist/ripple/{p-6e331d01.system.entry.js → p-c73882de.system.entry.js} +1 -1
- package/dist/ripple/{p-2c112c06.system.entry.js → p-d32a9831.system.entry.js} +1 -1
- package/dist/ripple/{p-00a48988.system.js → p-d92d2bbb.system.js} +1 -1
- package/dist/ripple/p-dbc3a44d.entry.js +1 -0
- package/dist/ripple/{p-2763a193.entry.js → p-ea10c498.entry.js} +1 -1
- package/dist/ripple/ripple.esm.js +1 -1
- package/dist/ripple/ripple.js +1 -1
- package/dist/types/components/wm-file/wm-file.d.ts +4 -1
- package/dist/types/components/wm-navigator/wm-navigator.d.ts +1 -1
- package/package.json +2 -2
- package/dist/esm-es5/app-globals-f089afb3.js +0 -1
- package/dist/ripple/p-39cf240f.entry.js +0 -1
- package/dist/ripple/p-494d52b3.js +0 -1
- package/dist/ripple/p-602ea108.entry.js +0 -1
- package/dist/ripple/p-91c12b65.entry.js +0 -1
- package/dist/ripple/p-eb8461e0.system.js +0 -1
|
@@ -860,37 +860,6 @@
|
|
|
860
860
|
mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z'/%3E%3C/svg%3E%0A");
|
|
861
861
|
}
|
|
862
862
|
|
|
863
|
-
/* --------------------------------------
|
|
864
|
-
1. Box-shadow
|
|
865
|
-
-------------------------------------- */
|
|
866
|
-
/* --------------------------------------
|
|
867
|
-
2. Border-radius
|
|
868
|
-
-------------------------------------- */
|
|
869
|
-
/* --------------------------------------
|
|
870
|
-
3. Transforms
|
|
871
|
-
-------------------------------------- */
|
|
872
|
-
/* --------------------------------------
|
|
873
|
-
4. Button Focus
|
|
874
|
-
-------------------------------------- */
|
|
875
|
-
/* --------------------------------------
|
|
876
|
-
5. Flex
|
|
877
|
-
-------------------------------------- */
|
|
878
|
-
/* --------------------------------------
|
|
879
|
-
7. Screen Reader Only
|
|
880
|
-
-------------------------------------- */
|
|
881
|
-
/* --------------------------------------
|
|
882
|
-
8. Label styles
|
|
883
|
-
this mixin includes all the styles for the label
|
|
884
|
-
+ flex rules on the parent container to switch between top and left position
|
|
885
|
-
+ srOnly when label is hidden
|
|
886
|
-
Assumes the following markup:
|
|
887
|
-
div.wrapper[.label-left.invalid] > div.label-wrapper > label.label > span.required
|
|
888
|
-
.wrapper is for the flex rules
|
|
889
|
-
.label-wrapper is to set the height of the label when positioned left so it's the same height as
|
|
890
|
-
the input. It can't be done directly on .label because of possible line wrapping.
|
|
891
|
-
When the label is on top there's no line wrapping at all to ensure proper alignment of inlined elements
|
|
892
|
-
(they can't be aligned on the baseline because of possible description text and error message)
|
|
893
|
-
-------------------------------------- */
|
|
894
863
|
:host * {
|
|
895
864
|
box-sizing: border-box;
|
|
896
865
|
}
|
|
@@ -1181,7 +1181,7 @@
|
|
|
1181
1181
|
.menu .menuitem:focus-visible {
|
|
1182
1182
|
outline: none;
|
|
1183
1183
|
background: var(--wmcolor-interactive-background-focus);
|
|
1184
|
-
color:
|
|
1184
|
+
color: var(--wmcolor-interactive-text);
|
|
1185
1185
|
}
|
|
1186
1186
|
.menu .menuitem:hover {
|
|
1187
1187
|
background: var(--wmcolor-select-option-background-hover);
|
|
@@ -879,7 +879,7 @@
|
|
|
879
879
|
:host:focus, :host.focus {
|
|
880
880
|
outline: none;
|
|
881
881
|
background: var(--wmcolor-select-option-background-focus);
|
|
882
|
-
color:
|
|
882
|
+
color: var(--wmcolor-interactive-text);
|
|
883
883
|
}
|
|
884
884
|
:host.icon {
|
|
885
885
|
color: var(--wmcolor-interactive);
|
|
@@ -996,15 +996,20 @@
|
|
|
996
996
|
:host(:focus-visible) {
|
|
997
997
|
outline: none;
|
|
998
998
|
background: var(--wmcolor-select-option-background-focus);
|
|
999
|
-
color:
|
|
999
|
+
color: var(--wmcolor-interactive-text);
|
|
1000
1000
|
}
|
|
1001
1001
|
:host(:focus-visible) .checkbox.svg-checkbox-blank,
|
|
1002
1002
|
:host(:focus-visible) .checkbox.svg-checkbox-selected {
|
|
1003
|
-
--icon-fill:
|
|
1003
|
+
--icon-fill: var(--wmcolor-interactive-text);
|
|
1004
1004
|
}
|
|
1005
1005
|
|
|
1006
1006
|
:host(:hover) {
|
|
1007
1007
|
background: var(--wmcolor-select-option-background-hover);
|
|
1008
1008
|
color: var(--wmcolor-select-option-text);
|
|
1009
1009
|
outline: none;
|
|
1010
|
+
}
|
|
1011
|
+
|
|
1012
|
+
:host(:focus-visible:hover) .checkbox.svg-checkbox-blank,
|
|
1013
|
+
:host(:focus-visible:hover) .checkbox.svg-checkbox-selected {
|
|
1014
|
+
--icon-fill: var(--wmcolor-interactive);
|
|
1010
1015
|
}
|
|
@@ -894,47 +894,123 @@
|
|
|
894
894
|
.file-wrapper .file.condensed {
|
|
895
895
|
column-gap: 2.5rem;
|
|
896
896
|
}
|
|
897
|
+
.file-wrapper .file.extra-condensed {
|
|
898
|
+
column-gap: 0.75rem;
|
|
899
|
+
}
|
|
897
900
|
.file-wrapper .file .filename {
|
|
898
|
-
|
|
901
|
+
font-weight: 600;
|
|
902
|
+
display: inline;
|
|
903
|
+
overflow-wrap: break-word;
|
|
904
|
+
}
|
|
905
|
+
.file-wrapper .file .filename.hidden {
|
|
906
|
+
display: none;
|
|
907
|
+
}
|
|
908
|
+
.file-wrapper .file .filename-measure {
|
|
899
909
|
white-space: nowrap;
|
|
910
|
+
visibility: hidden;
|
|
911
|
+
position: absolute;
|
|
912
|
+
pointer-events: none;
|
|
900
913
|
}
|
|
901
914
|
.file-wrapper .file .left-group {
|
|
902
|
-
|
|
903
|
-
min-inline-size: 5.3125rem;
|
|
915
|
+
min-inline-size: 0;
|
|
904
916
|
flex-grow: 1;
|
|
905
917
|
}
|
|
918
|
+
.file-wrapper .file .left-group:has(.-truncated) {
|
|
919
|
+
min-inline-size: fit-content;
|
|
920
|
+
}
|
|
906
921
|
.file-wrapper .file .right-group {
|
|
907
|
-
display:
|
|
908
|
-
|
|
922
|
+
display: grid;
|
|
923
|
+
grid-template-columns: auto min-content;
|
|
909
924
|
align-items: center;
|
|
910
925
|
gap: 1rem;
|
|
911
|
-
min-inline-size: 0;
|
|
912
|
-
max-inline-size: 50%;
|
|
913
926
|
}
|
|
914
927
|
.file-wrapper .file .right-group .file-controls {
|
|
915
928
|
display: flex;
|
|
916
929
|
gap: 1rem;
|
|
917
930
|
}
|
|
931
|
+
.file-wrapper .file .right-group .file-controls wm-button {
|
|
932
|
+
--icon-size: 1.125rem;
|
|
933
|
+
}
|
|
918
934
|
.file-wrapper .file .right-group .file-info {
|
|
935
|
+
min-inline-size: 4.375rem;
|
|
936
|
+
text-align: right;
|
|
937
|
+
align-items: end;
|
|
938
|
+
}
|
|
939
|
+
.file-wrapper .file .file-info {
|
|
919
940
|
display: flex;
|
|
920
941
|
flex-direction: column;
|
|
921
|
-
align-items: end;
|
|
922
942
|
gap: 0.25rem;
|
|
923
|
-
text-align: right;
|
|
924
943
|
max-inline-size: 28.125rem;
|
|
925
944
|
}
|
|
926
|
-
.file-wrapper .file .
|
|
927
|
-
max-inline-size: 100%;
|
|
945
|
+
.file-wrapper .file .file-info * {
|
|
928
946
|
overflow-wrap: break-word;
|
|
947
|
+
}
|
|
948
|
+
.file-wrapper .file .file-info .uploader-name {
|
|
949
|
+
max-inline-size: 100%;
|
|
929
950
|
text-wrap: balance;
|
|
930
951
|
}
|
|
931
|
-
.file-wrapper .file .
|
|
952
|
+
.file-wrapper .file .file-info:empty {
|
|
932
953
|
display: none;
|
|
933
954
|
}
|
|
955
|
+
.file-wrapper .file #file-details summary {
|
|
956
|
+
--icon-size: 24px;
|
|
957
|
+
display: block;
|
|
958
|
+
font-weight: 600;
|
|
959
|
+
color: var(--wmcolor-interactive);
|
|
960
|
+
}
|
|
961
|
+
.file-wrapper .file #file-details summary::before {
|
|
962
|
+
position: absolute;
|
|
963
|
+
transform: translate(0, -12%);
|
|
964
|
+
}
|
|
965
|
+
.file-wrapper .file #file-details summary:focus-visible {
|
|
966
|
+
outline: 3px solid var(--wmcolor-interactive-focus);
|
|
967
|
+
outline-offset: 2px;
|
|
968
|
+
}
|
|
969
|
+
.file-wrapper .file #file-details #summary-filename-trunc,
|
|
970
|
+
.file-wrapper .file #file-details #summary-filename-wrap,
|
|
971
|
+
.file-wrapper .file #file-details .file-info {
|
|
972
|
+
margin-inline-start: 1.5rem;
|
|
973
|
+
}
|
|
974
|
+
.file-wrapper .file #file-details[open] #summary-filename-trunc {
|
|
975
|
+
display: none;
|
|
976
|
+
}
|
|
977
|
+
.file-wrapper .file #file-details[open] summary:before {
|
|
978
|
+
content: "";
|
|
979
|
+
display: block;
|
|
980
|
+
background-color: var(--icon-fill, currentColor);
|
|
981
|
+
width: var(--icon-size, 0.875rem);
|
|
982
|
+
height: var(--icon-size, 0.875rem);
|
|
983
|
+
-webkit-mask-size: 100%;
|
|
984
|
+
mask-size: 100%;
|
|
985
|
+
}
|
|
986
|
+
.file-wrapper .file #file-details[open] summary:before {
|
|
987
|
+
-webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M7,10L12,15L17,10H7Z'/%3E%3C/svg%3E%0A");
|
|
988
|
+
mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M7,10L12,15L17,10H7Z'/%3E%3C/svg%3E%0A");
|
|
989
|
+
}
|
|
990
|
+
.file-wrapper .file #file-details:not([open]) #summary-filename-wrap {
|
|
991
|
+
display: none;
|
|
992
|
+
}
|
|
993
|
+
.file-wrapper .file #file-details:not([open]) summary:before {
|
|
994
|
+
content: "";
|
|
995
|
+
display: block;
|
|
996
|
+
background-color: var(--icon-fill, currentColor);
|
|
997
|
+
width: var(--icon-size, 0.875rem);
|
|
998
|
+
height: var(--icon-size, 0.875rem);
|
|
999
|
+
-webkit-mask-size: 100%;
|
|
1000
|
+
mask-size: 100%;
|
|
1001
|
+
}
|
|
1002
|
+
.file-wrapper .file #file-details:not([open]) summary:before {
|
|
1003
|
+
-webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M10,17L15,12L10,7V17Z'/%3E%3C/svg%3E%0A");
|
|
1004
|
+
mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M10,17L15,12L10,7V17Z'/%3E%3C/svg%3E%0A");
|
|
1005
|
+
}
|
|
1006
|
+
.file-wrapper .file #summary-filename-wrap {
|
|
1007
|
+
display: inline-block;
|
|
1008
|
+
overflow-wrap: anywhere;
|
|
1009
|
+
}
|
|
934
1010
|
.file-wrapper .file.--error {
|
|
935
1011
|
border: 1px solid var(--wmcolor-file-border-error);
|
|
936
1012
|
background-color: var(--wmcolor-file-background-error);
|
|
937
|
-
block-size: 3.75rem;
|
|
1013
|
+
min-block-size: 3.75rem;
|
|
938
1014
|
}
|
|
939
1015
|
.file-wrapper .file.--error .right-group {
|
|
940
1016
|
flex-shrink: 0;
|
|
@@ -17,8 +17,21 @@ export class File {
|
|
|
17
17
|
this.showInfo = "last-updated";
|
|
18
18
|
}
|
|
19
19
|
get isCondensed() {
|
|
20
|
+
// Breakpoint at which file actions are moved into an action menu
|
|
20
21
|
return this.el.clientWidth < 500;
|
|
21
22
|
}
|
|
23
|
+
get isExtraCondensed() {
|
|
24
|
+
// Breakpoint at which file info is moved into a details element
|
|
25
|
+
return this.el.clientWidth < 414;
|
|
26
|
+
}
|
|
27
|
+
get needsTruncation() {
|
|
28
|
+
const boundsEl = this.el.shadowRoot.querySelector(".left-group");
|
|
29
|
+
const measureEl = this.el.shadowRoot.querySelector(".filename-measure");
|
|
30
|
+
if (boundsEl && measureEl && boundsEl.clientWidth < measureEl.clientWidth) {
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
22
35
|
get isUploading() {
|
|
23
36
|
return this.progress !== undefined && this.progress < 100;
|
|
24
37
|
}
|
|
@@ -107,22 +120,20 @@ export class File {
|
|
|
107
120
|
const resizeObserver = new ResizeObserver(() => this.debouncedUpdate());
|
|
108
121
|
resizeObserver.observe(this.el);
|
|
109
122
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
fileNameEl.textContent = truncateText(fileNameEl, this.fullFilename, rightBoundary - leftBoundary, 7);
|
|
122
|
-
});
|
|
123
|
+
truncateFilename() {
|
|
124
|
+
let summaryFilenameEl = this.el.shadowRoot.querySelector("#summary-filename-trunc");
|
|
125
|
+
if (summaryFilenameEl) {
|
|
126
|
+
summaryFilenameEl.textContent = truncateText(summaryFilenameEl, this.fullFilename, summaryFilenameEl.parentElement.clientWidth - 32, 7);
|
|
127
|
+
if (summaryFilenameEl.textContent === this.fullFilename) {
|
|
128
|
+
summaryFilenameEl.classList.remove("-truncated");
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
summaryFilenameEl.classList.add("-truncated");
|
|
132
|
+
}
|
|
133
|
+
}
|
|
123
134
|
}
|
|
124
135
|
componentDidRender() {
|
|
125
|
-
this.
|
|
136
|
+
this.truncateFilename();
|
|
126
137
|
}
|
|
127
138
|
previewFile() {
|
|
128
139
|
this.wmFilePreview.emit();
|
|
@@ -140,10 +151,11 @@ export class File {
|
|
|
140
151
|
}
|
|
141
152
|
}
|
|
142
153
|
renderFileName() {
|
|
143
|
-
|
|
154
|
+
const showDetailsToggle = this.isExtraCondensed && (this.needsTruncation || (this.showInfo !== "none" && !this.errorMessage));
|
|
155
|
+
return (h("div", { class: "left-group" }, h("div", { class: "name-wrapper" }, h("span", { class: "sr-only" }, this.fullFilename), h("span", { "aria-hidden": "true", class: `filename ${showDetailsToggle ? "hidden" : ""}` }, this.fullFilename), this.isUploading && h("span", { class: "sr-only" }, "uploading")), showDetailsToggle && this.renderDetailsToggle()));
|
|
144
156
|
}
|
|
145
157
|
renderFileInfo() {
|
|
146
|
-
return (h("div", { class: "file-info" }, (this.showInfo === "uploaded-by" || this.showInfo === "all") && (h("div", { class: "
|
|
158
|
+
return (h("div", { class: "file-info" }, (this.showInfo === "uploaded-by" || this.showInfo === "all") && (h("div", { class: "uploader-name" }, this.uploadedBy)), (this.showInfo === "last-updated" || this.showInfo === "all") && h("div", null, this.lastUpdated), (this.showInfo === "size" || this.showInfo === "all") && h("div", null, this.size)));
|
|
147
159
|
}
|
|
148
160
|
renderActionMenu() {
|
|
149
161
|
const previewItem = (h("wm-menuitem", { icon: "#show", onClick: () => this.previewFile() }, this.previewActionMessage));
|
|
@@ -167,11 +179,15 @@ export class File {
|
|
|
167
179
|
const showActionMenu = this.isCondensed && !hasSingleFileAction;
|
|
168
180
|
return showActionMenu ? this.renderActionMenu() : this.renderFileActionButtons();
|
|
169
181
|
}
|
|
182
|
+
renderDetailsToggle() {
|
|
183
|
+
return (h("details", { id: "file-details" }, h("summary", null, h("div", { class: "filename-measure", "aria-hidden": "true" }, this.fullFilename), h("span", { id: "summary-filename-trunc", onMouseEnter: (ev) => this.handleFilenameMouseEnter(ev), onMouseLeave: () => hideTooltip() }, this.fullFilename), h("span", { id: "summary-filename-wrap" }, this.fullFilename)), !this.errorMessage && this.renderFileInfo()));
|
|
184
|
+
}
|
|
170
185
|
renderFile() {
|
|
171
|
-
|
|
186
|
+
const showRightGroup = !this.errorMessage && (this.fileActions !== "" || this.showInfo !== "none");
|
|
187
|
+
return (h("div", { class: `file-wrapper` }, h("div", { class: `file ${this.errorMessage ? "--error" : ""} ${this.isCondensed ? "condensed" : ""} ${this.isExtraCondensed ? "extra-condensed" : ""}` }, this.renderFileName(), showRightGroup && (h("div", { class: "right-group" }, !this.isExtraCondensed && this.renderFileInfo(), this.fileActions !== "" && this.renderFileControls())), this.errorMessage && (h("div", { class: "right-group" }, h("wm-button", { "permanently-delete": true, "button-type": "textonly", "label-for-identical-buttons": this.generateClearButtonLabel(this.name), onClick: () => this.wmFileErrorCleared.emit() }, this.clearButtonText))), this.progress == 100 && h("span", { class: "svg-icon svg-success" })), this.errorMessage && h("div", { class: "error-message" }, this.errorMessage)));
|
|
172
188
|
}
|
|
173
189
|
render() {
|
|
174
|
-
return h(Host, { key: '
|
|
190
|
+
return h(Host, { key: '64184891986497ee7159216e7f9ffef22b046c1c', role: "listitem" }, this.isUploading ? this.renderFileInProgress() : this.renderFile());
|
|
175
191
|
}
|
|
176
192
|
static get is() { return "wm-file"; }
|
|
177
193
|
static get encapsulation() { return "shadow"; }
|
|
@@ -860,37 +860,18 @@
|
|
|
860
860
|
mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z'/%3E%3C/svg%3E%0A");
|
|
861
861
|
}
|
|
862
862
|
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
/* --------------------------------------
|
|
876
|
-
5. Flex
|
|
877
|
-
-------------------------------------- */
|
|
878
|
-
/* --------------------------------------
|
|
879
|
-
7. Screen Reader Only
|
|
880
|
-
-------------------------------------- */
|
|
881
|
-
/* --------------------------------------
|
|
882
|
-
8. Label styles
|
|
883
|
-
this mixin includes all the styles for the label
|
|
884
|
-
+ flex rules on the parent container to switch between top and left position
|
|
885
|
-
+ srOnly when label is hidden
|
|
886
|
-
Assumes the following markup:
|
|
887
|
-
div.wrapper[.label-left.invalid] > div.label-wrapper > label.label > span.required
|
|
888
|
-
.wrapper is for the flex rules
|
|
889
|
-
.label-wrapper is to set the height of the label when positioned left so it's the same height as
|
|
890
|
-
the input. It can't be done directly on .label because of possible line wrapping.
|
|
891
|
-
When the label is on top there's no line wrapping at all to ensure proper alignment of inlined elements
|
|
892
|
-
(they can't be aligned on the baseline because of possible description text and error message)
|
|
893
|
-
-------------------------------------- */
|
|
863
|
+
:host(:focus-visible) {
|
|
864
|
+
outline: none;
|
|
865
|
+
}
|
|
866
|
+
:host(:focus-visible) .wrapper {
|
|
867
|
+
outline: none;
|
|
868
|
+
background: var(--wmcolor-actionmenu-item-background-focus);
|
|
869
|
+
color: var(--wmcolor-interactive-text);
|
|
870
|
+
}
|
|
871
|
+
:host(:focus-visible) .wrapper .description {
|
|
872
|
+
color: var(--wmcolor-interactive-text);
|
|
873
|
+
}
|
|
874
|
+
|
|
894
875
|
:host {
|
|
895
876
|
--wmcolor-actionmenu-item-background-hover: var(--wmcolor-option-background-hover);
|
|
896
877
|
--wmcolor-actionmenu-item-background-focus: var(--wmcolor-option-background-focus);
|
|
@@ -920,6 +901,10 @@
|
|
|
920
901
|
:host .wrapper:hover {
|
|
921
902
|
background: var(--wmcolor-actionmenu-item-background-hover);
|
|
922
903
|
outline: none;
|
|
904
|
+
color: var(--wmcolor-actionmenu-item-text);
|
|
905
|
+
}
|
|
906
|
+
:host .wrapper:hover .description {
|
|
907
|
+
color: var(--wmcolor-actionmenu-item-text-description);
|
|
923
908
|
}
|
|
924
909
|
:host .wrapper .description {
|
|
925
910
|
color: var(--wmcolor-actionmenu-item-text-description);
|
|
@@ -954,18 +939,6 @@
|
|
|
954
939
|
font-size: 1.12rem;
|
|
955
940
|
}
|
|
956
941
|
|
|
957
|
-
:host(:focus-visible) {
|
|
958
|
-
outline: none;
|
|
959
|
-
}
|
|
960
|
-
:host(:focus-visible) .wrapper {
|
|
961
|
-
outline: none;
|
|
962
|
-
background: var(--wmcolor-actionmenu-item-background-focus);
|
|
963
|
-
color: #fff;
|
|
964
|
-
}
|
|
965
|
-
:host(:focus-visible) .wrapper .description {
|
|
966
|
-
color: #fff;
|
|
967
|
-
}
|
|
968
|
-
|
|
969
942
|
:host([aria-disabled=true]) {
|
|
970
943
|
pointer-events: none;
|
|
971
944
|
}
|
package/dist/collection/components/wm-navigator/priv-navigator-button/priv-navigator-button.css
CHANGED
|
@@ -860,37 +860,6 @@
|
|
|
860
860
|
mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z'/%3E%3C/svg%3E%0A");
|
|
861
861
|
}
|
|
862
862
|
|
|
863
|
-
/* --------------------------------------
|
|
864
|
-
1. Box-shadow
|
|
865
|
-
-------------------------------------- */
|
|
866
|
-
/* --------------------------------------
|
|
867
|
-
2. Border-radius
|
|
868
|
-
-------------------------------------- */
|
|
869
|
-
/* --------------------------------------
|
|
870
|
-
3. Transforms
|
|
871
|
-
-------------------------------------- */
|
|
872
|
-
/* --------------------------------------
|
|
873
|
-
4. Button Focus
|
|
874
|
-
-------------------------------------- */
|
|
875
|
-
/* --------------------------------------
|
|
876
|
-
5. Flex
|
|
877
|
-
-------------------------------------- */
|
|
878
|
-
/* --------------------------------------
|
|
879
|
-
7. Screen Reader Only
|
|
880
|
-
-------------------------------------- */
|
|
881
|
-
/* --------------------------------------
|
|
882
|
-
8. Label styles
|
|
883
|
-
this mixin includes all the styles for the label
|
|
884
|
-
+ flex rules on the parent container to switch between top and left position
|
|
885
|
-
+ srOnly when label is hidden
|
|
886
|
-
Assumes the following markup:
|
|
887
|
-
div.wrapper[.label-left.invalid] > div.label-wrapper > label.label > span.required
|
|
888
|
-
.wrapper is for the flex rules
|
|
889
|
-
.label-wrapper is to set the height of the label when positioned left so it's the same height as
|
|
890
|
-
the input. It can't be done directly on .label because of possible line wrapping.
|
|
891
|
-
When the label is on top there's no line wrapping at all to ensure proper alignment of inlined elements
|
|
892
|
-
(they can't be aligned on the baseline because of possible description text and error message)
|
|
893
|
-
-------------------------------------- */
|
|
894
863
|
:host * {
|
|
895
864
|
box-sizing: border-box;
|
|
896
865
|
}
|
|
@@ -876,7 +876,16 @@
|
|
|
876
876
|
:host .navoption.selected {
|
|
877
877
|
background: var(--wmcolor-navigator-item-background-selected);
|
|
878
878
|
}
|
|
879
|
-
:host .navoption
|
|
880
|
-
background: var(--wmcolor-navigator-item-background-
|
|
879
|
+
:host .navoption:hover {
|
|
880
|
+
background: var(--wmcolor-navigator-item-background-hover);
|
|
881
881
|
opacity: 1;
|
|
882
|
+
}
|
|
883
|
+
|
|
884
|
+
:host(:focus-visible) .navoption {
|
|
885
|
+
background: var(--wmcolor-navigator-item-background-focus);
|
|
886
|
+
color: var(--wmcolor-interactive-text);
|
|
887
|
+
}
|
|
888
|
+
:host(:focus-visible) .navoption:hover {
|
|
889
|
+
background: var(--wmcolor-navigator-item-background-hover);
|
|
890
|
+
color: var(--wmcolor-navigator-item-text);
|
|
882
891
|
}
|
|
@@ -864,9 +864,9 @@
|
|
|
864
864
|
--wmcolor-navigator-background: var(--wmcolor-background);
|
|
865
865
|
--wmcolor-navigator-header-background: var(--wmcolor-brand-dark);
|
|
866
866
|
--wmcolor-navigator-header-text: var(--wmcolor-text-ondark);
|
|
867
|
-
--wmcolor-navigator-item-background-selected: var(--wmcolor-
|
|
867
|
+
--wmcolor-navigator-item-background-selected: var(--wmcolor-option-background-selected);
|
|
868
868
|
--wmcolor-navigator-item-background-focus: var(--wmcolor-interactive-background-focus);
|
|
869
|
-
--wmcolor-navigator-item-background-hover: var(--wmcolor-
|
|
869
|
+
--wmcolor-navigator-item-background-hover: var(--wmcolor-option-background-hover);
|
|
870
870
|
--wmcolor-navigator-item-background: var(--wmcolor-background);
|
|
871
871
|
--wmcolor-navigator-item-border: var(--wmcolor-border);
|
|
872
872
|
--wmcolor-navigator-item-text: var(--wmcolor-text);
|
|
@@ -949,6 +949,12 @@
|
|
|
949
949
|
text-align: center;
|
|
950
950
|
text-transform: capitalize;
|
|
951
951
|
}
|
|
952
|
+
:host priv-navigator-item:focus-visible img {
|
|
953
|
+
filter: brightness(20);
|
|
954
|
+
}
|
|
955
|
+
:host priv-navigator-item:focus-visible:hover img {
|
|
956
|
+
filter: brightness(1);
|
|
957
|
+
}
|
|
952
958
|
|
|
953
959
|
priv-navigator-item:focus {
|
|
954
960
|
outline: none;
|
|
@@ -158,7 +158,8 @@ export class Navigator {
|
|
|
158
158
|
this.openRight = wrapperWidth > spaceLeft && spaceRight > spaceLeft;
|
|
159
159
|
}
|
|
160
160
|
this.isOpen = true;
|
|
161
|
-
|
|
161
|
+
// delay focus to allow 250ms animation to complete
|
|
162
|
+
this.focusItem(250);
|
|
162
163
|
}
|
|
163
164
|
closeMenu(returnFocus = true) {
|
|
164
165
|
this.isOpen = false;
|
|
@@ -170,12 +171,18 @@ export class Navigator {
|
|
|
170
171
|
}
|
|
171
172
|
});
|
|
172
173
|
}
|
|
173
|
-
focusItem() {
|
|
174
|
+
focusItem(delayMs = 0) {
|
|
174
175
|
const newSelection = this.navigatorItems[this.itemIndexToFocus];
|
|
175
176
|
newSelection.tabIndex = 0;
|
|
176
177
|
newSelection.focused = true;
|
|
177
|
-
|
|
178
|
-
|
|
178
|
+
if (delayMs > 0) {
|
|
179
|
+
// wait for animation to complete before sending focus to option
|
|
180
|
+
setTimeout(() => newSelection.focus(), delayMs);
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
// immediate focus for keyboard navigation
|
|
184
|
+
window.requestAnimationFrame(() => newSelection.focus());
|
|
185
|
+
}
|
|
179
186
|
}
|
|
180
187
|
unfocusItem(index) {
|
|
181
188
|
const oldSelection = this.navigatorItems[index];
|
|
@@ -860,37 +860,6 @@
|
|
|
860
860
|
mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z'/%3E%3C/svg%3E%0A");
|
|
861
861
|
}
|
|
862
862
|
|
|
863
|
-
/* --------------------------------------
|
|
864
|
-
1. Box-shadow
|
|
865
|
-
-------------------------------------- */
|
|
866
|
-
/* --------------------------------------
|
|
867
|
-
2. Border-radius
|
|
868
|
-
-------------------------------------- */
|
|
869
|
-
/* --------------------------------------
|
|
870
|
-
3. Transforms
|
|
871
|
-
-------------------------------------- */
|
|
872
|
-
/* --------------------------------------
|
|
873
|
-
4. Button Focus
|
|
874
|
-
-------------------------------------- */
|
|
875
|
-
/* --------------------------------------
|
|
876
|
-
5. Flex
|
|
877
|
-
-------------------------------------- */
|
|
878
|
-
/* --------------------------------------
|
|
879
|
-
7. Screen Reader Only
|
|
880
|
-
-------------------------------------- */
|
|
881
|
-
/* --------------------------------------
|
|
882
|
-
8. Label styles
|
|
883
|
-
this mixin includes all the styles for the label
|
|
884
|
-
+ flex rules on the parent container to switch between top and left position
|
|
885
|
-
+ srOnly when label is hidden
|
|
886
|
-
Assumes the following markup:
|
|
887
|
-
div.wrapper[.label-left.invalid] > div.label-wrapper > label.label > span.required
|
|
888
|
-
.wrapper is for the flex rules
|
|
889
|
-
.label-wrapper is to set the height of the label when positioned left so it's the same height as
|
|
890
|
-
the input. It can't be done directly on .label because of possible line wrapping.
|
|
891
|
-
When the label is on top there's no line wrapping at all to ensure proper alignment of inlined elements
|
|
892
|
-
(they can't be aligned on the baseline because of possible description text and error message)
|
|
893
|
-
-------------------------------------- */
|
|
894
863
|
:host,
|
|
895
864
|
wm-pagination {
|
|
896
865
|
--wmcolor-pagination-arrow-disabled: var(--wmcolor-interactive-disabled);
|
|
@@ -860,37 +860,6 @@
|
|
|
860
860
|
mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z'/%3E%3C/svg%3E%0A");
|
|
861
861
|
}
|
|
862
862
|
|
|
863
|
-
/* --------------------------------------
|
|
864
|
-
1. Box-shadow
|
|
865
|
-
-------------------------------------- */
|
|
866
|
-
/* --------------------------------------
|
|
867
|
-
2. Border-radius
|
|
868
|
-
-------------------------------------- */
|
|
869
|
-
/* --------------------------------------
|
|
870
|
-
3. Transforms
|
|
871
|
-
-------------------------------------- */
|
|
872
|
-
/* --------------------------------------
|
|
873
|
-
4. Button Focus
|
|
874
|
-
-------------------------------------- */
|
|
875
|
-
/* --------------------------------------
|
|
876
|
-
5. Flex
|
|
877
|
-
-------------------------------------- */
|
|
878
|
-
/* --------------------------------------
|
|
879
|
-
7. Screen Reader Only
|
|
880
|
-
-------------------------------------- */
|
|
881
|
-
/* --------------------------------------
|
|
882
|
-
8. Label styles
|
|
883
|
-
this mixin includes all the styles for the label
|
|
884
|
-
+ flex rules on the parent container to switch between top and left position
|
|
885
|
-
+ srOnly when label is hidden
|
|
886
|
-
Assumes the following markup:
|
|
887
|
-
div.wrapper[.label-left.invalid] > div.label-wrapper > label.label > span.required
|
|
888
|
-
.wrapper is for the flex rules
|
|
889
|
-
.label-wrapper is to set the height of the label when positioned left so it's the same height as
|
|
890
|
-
the input. It can't be done directly on .label because of possible line wrapping.
|
|
891
|
-
When the label is on top there's no line wrapping at all to ensure proper alignment of inlined elements
|
|
892
|
-
(they can't be aligned on the baseline because of possible description text and error message)
|
|
893
|
-
-------------------------------------- */
|
|
894
863
|
:host * {
|
|
895
864
|
box-sizing: border-box;
|
|
896
865
|
}
|
|
@@ -860,37 +860,6 @@
|
|
|
860
860
|
mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath style='fill: var(--icon-fill, currentColor)' d='M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z'/%3E%3C/svg%3E%0A");
|
|
861
861
|
}
|
|
862
862
|
|
|
863
|
-
/* --------------------------------------
|
|
864
|
-
1. Box-shadow
|
|
865
|
-
-------------------------------------- */
|
|
866
|
-
/* --------------------------------------
|
|
867
|
-
2. Border-radius
|
|
868
|
-
-------------------------------------- */
|
|
869
|
-
/* --------------------------------------
|
|
870
|
-
3. Transforms
|
|
871
|
-
-------------------------------------- */
|
|
872
|
-
/* --------------------------------------
|
|
873
|
-
4. Button Focus
|
|
874
|
-
-------------------------------------- */
|
|
875
|
-
/* --------------------------------------
|
|
876
|
-
5. Flex
|
|
877
|
-
-------------------------------------- */
|
|
878
|
-
/* --------------------------------------
|
|
879
|
-
7. Screen Reader Only
|
|
880
|
-
-------------------------------------- */
|
|
881
|
-
/* --------------------------------------
|
|
882
|
-
8. Label styles
|
|
883
|
-
this mixin includes all the styles for the label
|
|
884
|
-
+ flex rules on the parent container to switch between top and left position
|
|
885
|
-
+ srOnly when label is hidden
|
|
886
|
-
Assumes the following markup:
|
|
887
|
-
div.wrapper[.label-left.invalid] > div.label-wrapper > label.label > span.required
|
|
888
|
-
.wrapper is for the flex rules
|
|
889
|
-
.label-wrapper is to set the height of the label when positioned left so it's the same height as
|
|
890
|
-
the input. It can't be done directly on .label because of possible line wrapping.
|
|
891
|
-
When the label is on top there's no line wrapping at all to ensure proper alignment of inlined elements
|
|
892
|
-
(they can't be aligned on the baseline because of possible description text and error message)
|
|
893
|
-
-------------------------------------- */
|
|
894
863
|
:host * {
|
|
895
864
|
box-sizing: border-box;
|
|
896
865
|
margin: unset;
|