@ui5/webcomponents-base 1.10.3 → 1.11.0-rc.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/.eslintignore +1 -0
- package/CHANGELOG.md +19 -0
- package/dist/UI5Element.d.ts +2 -1
- package/dist/UI5Element.js +3 -2
- package/dist/UI5Element.js.map +1 -1
- package/dist/api.json +1 -1
- package/dist/assets/bundle.esm.38c84565.js +56 -0
- package/dist/assets/test/pages/{i18n.html.8d173f63.js → i18n.html.a765def3.js} +1 -1
- package/dist/assets/test/pages/{i18n_texts.html.94b83f3a.js → i18n_texts.html.9a235f8f.js} +1 -1
- package/dist/generated/VersionInfo.js +5 -5
- package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
- package/dist/generated/css/BusyIndicator.css.js +7 -5
- package/dist/generated/css/BusyIndicator.css.js.map +1 -0
- package/dist/generated/css/FontFace.css.d.ts +3 -0
- package/dist/generated/css/FontFace.css.js +7 -5
- package/dist/generated/css/FontFace.css.js.map +1 -0
- package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
- package/dist/generated/css/OverrideFontFace.css.js +7 -5
- package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
- package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
- package/dist/generated/css/SystemCSSVars.css.js +7 -5
- package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
- package/dist/global.d.ts +0 -6
- package/dist/test/pages/AllTestElements.html +1 -1
- package/dist/test/pages/Configuration.html +1 -1
- package/dist/test/pages/ConfigurationScript.html +1 -1
- package/dist/test/pages/WithComplexTemplate.html +1 -1
- package/dist/test/pages/i18n.html +2 -2
- package/dist/test/pages/i18n_texts.html +2 -2
- package/dist/util/FocusableElements.js +11 -2
- package/dist/util/FocusableElements.js.map +1 -1
- package/dist/util/getClassCopy.d.ts +1 -1
- package/lib/generate-styles/index.js +10 -5
- package/package-scripts.js +3 -3
- package/package.json +3 -3
- package/src/UI5Element.ts +3 -2
- package/src/generated/css/BusyIndicator.css.ts +9 -0
- package/src/generated/css/FontFace.css.ts +9 -0
- package/src/generated/css/OverrideFontFace.css.ts +9 -0
- package/src/generated/css/SystemCSSVars.css.ts +9 -0
- package/src/global.d.ts +0 -6
- package/src/util/FocusableElements.ts +12 -2
- package/dist/assets/bundle.esm.12ed72d9.js +0 -56
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
1
|
+
const styleData = {
|
|
2
|
+
packageName: "@ui5/webcomponents-base",
|
|
3
|
+
fileName: "FontFace.css",
|
|
4
|
+
content: `@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local('72-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local('72-Bold-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Bold';font-style:normal;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Boldfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Light';font-style:normal;src:local('72-Light'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Lightfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local('72Black'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2")}`,
|
|
5
|
+
};
|
|
6
|
+
export default styleData;
|
|
7
|
+
//# sourceMappingURL=FontFace.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FontFace.css.js","sourceRoot":"","sources":["../../../src/generated/css/FontFace.css.ts"],"names":[],"mappings":"AAEA,MAAM,SAAS,GAAc;IAC5B,WAAW,EAAE,yBAAyB;IACtC,QAAQ,EAAE,cAAc;IACxB,OAAO,EAAE,8yDAA8yD;CACvzD,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
1
|
+
const styleData = {
|
|
2
|
+
packageName: "@ui5/webcomponents-base",
|
|
3
|
+
fileName: "OverrideFontFace.css",
|
|
4
|
+
content: `@font-face{font-family:'72override';unicode-range:U+0102-0103,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EB7,U+1EB8-1EC7,U+1EC8-1ECB,U+1ECC-1EE3,U+1EE4-1EF1,U+1EF4-1EF7;src:local('Arial'),local('Helvetica'),local('sans-serif')}`,
|
|
5
|
+
};
|
|
6
|
+
export default styleData;
|
|
7
|
+
//# sourceMappingURL=OverrideFontFace.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OverrideFontFace.css.js","sourceRoot":"","sources":["../../../src/generated/css/OverrideFontFace.css.ts"],"names":[],"mappings":"AAEA,MAAM,SAAS,GAAc;IAC5B,WAAW,EAAE,yBAAyB;IACtC,QAAQ,EAAE,sBAAsB;IAChC,OAAO,EAAE,0NAA0N;CACnO,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
1
|
+
const styleData = {
|
|
2
|
+
packageName: "@ui5/webcomponents-base",
|
|
3
|
+
fileName: "SystemCSSVars.css",
|
|
4
|
+
content: `:root{--_ui5_content_density:cozy}.sapUiSizeCompact,.ui5-content-density-compact,[data-ui5-compact-size]{--_ui5_content_density:compact}[dir=rtl]{--_ui5_dir:rtl}[dir=ltr]{--_ui5_dir:ltr}`,
|
|
5
|
+
};
|
|
6
|
+
export default styleData;
|
|
7
|
+
//# sourceMappingURL=SystemCSSVars.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SystemCSSVars.css.js","sourceRoot":"","sources":["../../../src/generated/css/SystemCSSVars.css.ts"],"names":[],"mappings":"AAEA,MAAM,SAAS,GAAc;IAC5B,WAAW,EAAE,yBAAyB;IACtC,QAAQ,EAAE,mBAAmB;IAC7B,OAAO,EAAE,4LAA4L;CACrM,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
package/dist/global.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { StyleData } from "./types.js";
|
|
2
|
-
|
|
3
1
|
export {};
|
|
4
2
|
|
|
5
3
|
declare global {
|
|
@@ -19,10 +17,6 @@ declare global {
|
|
|
19
17
|
chrome: any;
|
|
20
18
|
v8: any;
|
|
21
19
|
}
|
|
22
|
-
module "*.css.js" {
|
|
23
|
-
const content: StyleData;
|
|
24
|
-
export default content;
|
|
25
|
-
}
|
|
26
20
|
|
|
27
21
|
module "*generated/AssetParameters.js" {
|
|
28
22
|
const DEFAULT_THEME: string;
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
<script type="module" crossorigin src="/assets/test/pages/i18n.html.
|
|
11
|
-
<link rel="modulepreload" href="/assets/bundle.esm.
|
|
10
|
+
<script type="module" crossorigin src="/assets/test/pages/i18n.html.a765def3.js"></script>
|
|
11
|
+
<link rel="modulepreload" href="/assets/bundle.esm.38c84565.js">
|
|
12
12
|
</head>
|
|
13
13
|
|
|
14
14
|
<body>
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
<script type="module" crossorigin src="/assets/test/pages/i18n_texts.html.
|
|
12
|
-
<link rel="modulepreload" href="/assets/bundle.esm.
|
|
11
|
+
<script type="module" crossorigin src="/assets/test/pages/i18n_texts.html.9a235f8f.js"></script>
|
|
12
|
+
<link rel="modulepreload" href="/assets/bundle.esm.38c84565.js">
|
|
13
13
|
</head>
|
|
14
14
|
|
|
15
15
|
<body>
|
|
@@ -21,12 +21,15 @@ const isElemFocusable = (el) => {
|
|
|
21
21
|
};
|
|
22
22
|
const findFocusableElement = async (container, forward, startFromContainer) => {
|
|
23
23
|
let child;
|
|
24
|
+
let assignedElements;
|
|
25
|
+
let currentIndex = -1;
|
|
24
26
|
if (container.shadowRoot) {
|
|
25
27
|
child = forward ? container.shadowRoot.firstChild : container.shadowRoot.lastChild;
|
|
26
28
|
}
|
|
27
29
|
else if (container instanceof HTMLSlotElement && container.assignedNodes()) {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
+
assignedElements = container.assignedNodes();
|
|
31
|
+
currentIndex = forward ? 0 : assignedElements.length - 1;
|
|
32
|
+
child = assignedElements[currentIndex];
|
|
30
33
|
}
|
|
31
34
|
else if (startFromContainer) {
|
|
32
35
|
child = container;
|
|
@@ -54,6 +57,12 @@ const findFocusableElement = async (container, forward, startFromContainer) => {
|
|
|
54
57
|
}
|
|
55
58
|
}
|
|
56
59
|
child = forward ? originalChild.nextSibling : originalChild.previousSibling;
|
|
60
|
+
// If the child element is not part of the currently assigned element,
|
|
61
|
+
// we have to check the next element assigned to the slot or continue with the next sibling of the slot,
|
|
62
|
+
// otherwise, the nextSibling is the next element inside the light DOM
|
|
63
|
+
if (assignedElements && !assignedElements[currentIndex].contains(child)) {
|
|
64
|
+
child = assignedElements[++currentIndex];
|
|
65
|
+
}
|
|
57
66
|
}
|
|
58
67
|
/* eslint-enable no-await-in-loop */
|
|
59
68
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FocusableElements.js","sourceRoot":"","sources":["../../src/util/FocusableElements.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAIxD,MAAM,WAAW,GAAG,CAAC,EAAe,EAAE,EAAE;IACvC,OAAO,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,KAAK,EAAE,SAAsB,EAAE,kBAA4B,EAA2B,EAAE;IACxH,IAAI,CAAC,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,EAAE;QAC7C,OAAO,IAAI,CAAC;KACZ;IAED,OAAO,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,KAAK,EAAE,SAAsB,EAAE,kBAA4B,EAA2B,EAAE;IACvH,IAAI,CAAC,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,EAAE;QAC7C,OAAO,IAAI,CAAC;KACZ;IAED,OAAO,oBAAoB,CAAC,SAAS,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;AACnE,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,EAAe,EAAE,EAAE;IAC3C,OAAO,EAAE,CAAC,YAAY,CAAC,yBAAyB,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;AAC3E,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,KAAK,EAAE,SAAsB,EAAE,OAAgB,EAAE,kBAA4B,EAA2B,EAAE;IACtI,IAAI,KAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"FocusableElements.js","sourceRoot":"","sources":["../../src/util/FocusableElements.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,7 +60,7 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
|
|
|
60
60
|
getDomRef(): HTMLElement | undefined;
|
|
61
61
|
getFocusDomRef(): HTMLElement | undefined;
|
|
62
62
|
getFocusDomRefAsync(): Promise<HTMLElement | undefined>;
|
|
63
|
-
focus(): Promise<void>;
|
|
63
|
+
focus(focusOptions?: FocusOptions | undefined): Promise<void>;
|
|
64
64
|
fireEvent<T>(name: string, data?: T | undefined, cancelable?: boolean, bubbles?: boolean): boolean;
|
|
65
65
|
_fireEvent<T_1>(name: string, data?: T_1 | undefined, cancelable?: boolean, bubbles?: boolean): boolean;
|
|
66
66
|
getSlottedNodes(slotName: string): Node[];
|
|
@@ -3,19 +3,24 @@ const path = require('path');
|
|
|
3
3
|
const CleanCSS = require('clean-css');
|
|
4
4
|
|
|
5
5
|
const generate = async () => {
|
|
6
|
-
await fs.mkdir("
|
|
6
|
+
await fs.mkdir("src/generated/css/", {recursive: true});
|
|
7
7
|
|
|
8
8
|
const files = (await fs.readdir("src/css/")).filter(file => file.endsWith(".css"));
|
|
9
9
|
const filesPromises = files.map(async file => {
|
|
10
10
|
let content = await fs.readFile(path.join("src/css/", file));
|
|
11
11
|
const res = new CleanCSS().minify(`${content}`);
|
|
12
|
-
content = `
|
|
12
|
+
content = `import type { StyleData } from "../../types.js";
|
|
13
|
+
|
|
14
|
+
const styleData: StyleData = {
|
|
13
15
|
packageName: "@ui5/webcomponents-base",
|
|
14
16
|
fileName: "${file}",
|
|
15
|
-
content: \`${res.styles}
|
|
16
|
-
}
|
|
17
|
+
content: \`${res.styles}\`,
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export default styleData;
|
|
21
|
+
`;
|
|
17
22
|
|
|
18
|
-
return fs.writeFile(path.join("
|
|
23
|
+
return fs.writeFile(path.join("src/generated/css/", `${file}.ts`), content);
|
|
19
24
|
});
|
|
20
25
|
|
|
21
26
|
return Promise.all(filesPromises);
|
package/package-scripts.js
CHANGED
|
@@ -14,9 +14,9 @@ const viteConfig = `-c "${require.resolve("@ui5/webcomponents-tools/components-p
|
|
|
14
14
|
const eslintConfig = `--config ${require.resolve("@ui5/webcomponents-tools/components-package/eslint.js")}`;
|
|
15
15
|
|
|
16
16
|
const scripts = {
|
|
17
|
-
clean: "rimraf jsdoc-dist && rimraf dist && rimraf .port",
|
|
17
|
+
clean: "rimraf jsdoc-dist && rimraf src/generated && rimraf dist && rimraf .port",
|
|
18
18
|
lint: `eslint . ${eslintConfig}`,
|
|
19
|
-
prepare: "nps clean integrate copy
|
|
19
|
+
prepare: "nps clean integrate copy generateAssetParameters generateVersionInfo generateStyles generateTemplates typescript generateAPI",
|
|
20
20
|
typescript: "tsc",
|
|
21
21
|
integrate: {
|
|
22
22
|
default: "nps integrate.copy-used-modules integrate.replace-amd integrate.amd-to-es6 integrate.esm-abs-to-rel integrate.third-party",
|
|
@@ -31,7 +31,7 @@ const scripts = {
|
|
|
31
31
|
},
|
|
32
32
|
},
|
|
33
33
|
build: {
|
|
34
|
-
default: `nps lint
|
|
34
|
+
default: `nps prepare lint build.bundle`,
|
|
35
35
|
bundle: `vite build ${viteConfig}`,
|
|
36
36
|
},
|
|
37
37
|
copy: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ui5/webcomponents-base",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.11.0-rc.0",
|
|
4
4
|
"description": "UI5 Web Components: webcomponents.base",
|
|
5
5
|
"author": "SAP SE (https://www.sap.com)",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@buxlabs/amd-to-es6": "0.16.1",
|
|
38
38
|
"@openui5/sap.ui.core": "1.109.0",
|
|
39
|
-
"@ui5/webcomponents-tools": "1.
|
|
39
|
+
"@ui5/webcomponents-tools": "1.11.0-rc.0",
|
|
40
40
|
"chromedriver": "109.0.0",
|
|
41
41
|
"clean-css": "^5.2.2",
|
|
42
42
|
"copy-and-watch": "^0.1.5",
|
|
@@ -46,5 +46,5 @@
|
|
|
46
46
|
"replace-in-file": "^6.3.5",
|
|
47
47
|
"resolve": "^1.20.0"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "6464abd79265425ce65232ebeee53cf6585e6ec6"
|
|
50
50
|
}
|
package/src/UI5Element.ts
CHANGED
|
@@ -764,15 +764,16 @@ abstract class UI5Element extends HTMLElement {
|
|
|
764
764
|
|
|
765
765
|
/**
|
|
766
766
|
* Set the focus to the element, returned by "getFocusDomRef()" (marked by "data-sap-focus-ref")
|
|
767
|
+
* @param {FocusOptions} focusOptions additional options for the focus
|
|
767
768
|
* @public
|
|
768
769
|
*/
|
|
769
|
-
async focus() {
|
|
770
|
+
async focus(focusOptions?: FocusOptions) {
|
|
770
771
|
await this._waitForDomRef();
|
|
771
772
|
|
|
772
773
|
const focusDomRef = this.getFocusDomRef();
|
|
773
774
|
|
|
774
775
|
if (focusDomRef && typeof focusDomRef.focus === "function") {
|
|
775
|
-
focusDomRef.focus();
|
|
776
|
+
focusDomRef.focus(focusOptions);
|
|
776
777
|
}
|
|
777
778
|
}
|
|
778
779
|
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { StyleData } from "../../types.js";
|
|
2
|
+
|
|
3
|
+
const styleData: StyleData = {
|
|
4
|
+
packageName: "@ui5/webcomponents-base",
|
|
5
|
+
fileName: "BusyIndicator.css",
|
|
6
|
+
content: `.busy-indicator-wrapper{position:relative;height:100%;width:100%}.busy-indicator-overlay{display:var(--ui5_web_components_busy_indicator_display);position:absolute;inset:0;background:var(--ui5_web_components_busy_indicator_background-color);z-index:99}.busy-indicator-busy-area{display:var(--ui5_web_components_busy_indicator_display);position:absolute;z-index:99;inset:0;justify-content:center;align-items:center;background-color:inherit;flex-direction:column;color:var(--_ui5_busy_indicator_color)}:host([__is-busy]) .busy-indicator-wrapper>:not(.busy-indicator-busy-area):not(.busy-indicator-overlay):not([busy-indicator-before-span]){--ui5_web_components_busy_indicator_display:none}.busy-indicator-busy-area:focus{outline:var(--_ui5_busy_indicator_focus_outline);outline-offset:-.125rem}.busy-indicator-circle{width:1rem;height:1rem;display:inline-block;background-color:currentColor;border-radius:50%}.circle-animation-0{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11)}.circle-animation-1{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11);animation-delay:.2s}.circle-animation-2{animation:grow 1.6s infinite cubic-bezier(.32,.06,.85,1.11);animation-delay:.4s}.sapUiLocalBusy{--ui5_web_components_busy_indicator_display:none}.busy-indicator-wrapper [ui5-busy-indicator]{display:none}@keyframes grow{0%,100%,50%{-webkit-transform:scale(.5);-moz-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}25%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}`,
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export default styleData;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { StyleData } from "../../types.js";
|
|
2
|
+
|
|
3
|
+
const styleData: StyleData = {
|
|
4
|
+
packageName: "@ui5/webcomponents-base",
|
|
5
|
+
fileName: "FontFace.css",
|
|
6
|
+
content: `@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local('72-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local('72-Bold-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Bold';font-style:normal;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Boldfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Light';font-style:normal;src:local('72-Light'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Lightfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local('72Black'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2")}`,
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export default styleData;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { StyleData } from "../../types.js";
|
|
2
|
+
|
|
3
|
+
const styleData: StyleData = {
|
|
4
|
+
packageName: "@ui5/webcomponents-base",
|
|
5
|
+
fileName: "OverrideFontFace.css",
|
|
6
|
+
content: `@font-face{font-family:'72override';unicode-range:U+0102-0103,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EB7,U+1EB8-1EC7,U+1EC8-1ECB,U+1ECC-1EE3,U+1EE4-1EF1,U+1EF4-1EF7;src:local('Arial'),local('Helvetica'),local('sans-serif')}`,
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export default styleData;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { StyleData } from "../../types.js";
|
|
2
|
+
|
|
3
|
+
const styleData: StyleData = {
|
|
4
|
+
packageName: "@ui5/webcomponents-base",
|
|
5
|
+
fileName: "SystemCSSVars.css",
|
|
6
|
+
content: `:root{--_ui5_content_density:cozy}.sapUiSizeCompact,.ui5-content-density-compact,[data-ui5-compact-size]{--_ui5_content_density:compact}[dir=rtl]{--_ui5_dir:rtl}[dir=ltr]{--_ui5_dir:ltr}`,
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export default styleData;
|
package/src/global.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { StyleData } from "./types.js";
|
|
2
|
-
|
|
3
1
|
export {};
|
|
4
2
|
|
|
5
3
|
declare global {
|
|
@@ -19,10 +17,6 @@ declare global {
|
|
|
19
17
|
chrome: any;
|
|
20
18
|
v8: any;
|
|
21
19
|
}
|
|
22
|
-
module "*.css.js" {
|
|
23
|
-
const content: StyleData;
|
|
24
|
-
export default content;
|
|
25
|
-
}
|
|
26
20
|
|
|
27
21
|
module "*generated/AssetParameters.js" {
|
|
28
22
|
const DEFAULT_THEME: string;
|
|
@@ -30,12 +30,15 @@ const isElemFocusable = (el: HTMLElement) => {
|
|
|
30
30
|
|
|
31
31
|
const findFocusableElement = async (container: HTMLElement, forward: boolean, startFromContainer?: boolean): FocusableElementPromise => {
|
|
32
32
|
let child: HTMLElement | undefined;
|
|
33
|
+
let assignedElements;
|
|
34
|
+
let currentIndex = -1;
|
|
33
35
|
|
|
34
36
|
if (container.shadowRoot) {
|
|
35
37
|
child = forward ? container.shadowRoot.firstChild as HTMLElement : container.shadowRoot.lastChild as HTMLElement;
|
|
36
38
|
} else if (container instanceof HTMLSlotElement && container.assignedNodes()) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
+
assignedElements = container.assignedNodes();
|
|
40
|
+
currentIndex = forward ? 0 : assignedElements.length - 1;
|
|
41
|
+
child = assignedElements[currentIndex] as HTMLElement;
|
|
39
42
|
} else if (startFromContainer) {
|
|
40
43
|
child = container;
|
|
41
44
|
} else {
|
|
@@ -69,6 +72,13 @@ const findFocusableElement = async (container: HTMLElement, forward: boolean, st
|
|
|
69
72
|
}
|
|
70
73
|
|
|
71
74
|
child = forward ? originalChild.nextSibling as HTMLElement : originalChild.previousSibling as HTMLElement;
|
|
75
|
+
|
|
76
|
+
// If the child element is not part of the currently assigned element,
|
|
77
|
+
// we have to check the next element assigned to the slot or continue with the next sibling of the slot,
|
|
78
|
+
// otherwise, the nextSibling is the next element inside the light DOM
|
|
79
|
+
if (assignedElements && !assignedElements[currentIndex].contains(child)) {
|
|
80
|
+
child = assignedElements[++currentIndex] as HTMLElement;
|
|
81
|
+
}
|
|
72
82
|
}
|
|
73
83
|
|
|
74
84
|
/* eslint-enable no-await-in-loop */
|