@ui5/create-webcomponents-package 0.0.0-3790e6927 → 0.0.0-38f83ffef

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.
Files changed (43) hide show
  1. package/CHANGELOG.md +1352 -0
  2. package/README.md +9 -14
  3. package/create-package.js +189 -208
  4. package/package.json +3 -1
  5. package/template/.eslintignore +3 -2
  6. package/template/.npsrc.json +3 -0
  7. package/template/cypress/component/MyFirstComponent.cy.tsx +13 -0
  8. package/template/cypress/fixtures/example.json +5 -0
  9. package/template/cypress/support/commands.ts +37 -0
  10. package/template/cypress/support/component-index.html +12 -0
  11. package/template/cypress/support/component.ts +36 -0
  12. package/template/cypress/tsconfig.template.json +19 -0
  13. package/template/cypress.config.ts +10 -0
  14. package/template/env +1 -0
  15. package/template/gitignore +2 -2
  16. package/template/{package-scripts.js → package-scripts.cjs} +0 -1
  17. package/template/package.json +35 -0
  18. package/template/src/Assets.ts +1 -1
  19. package/template/src/MyFirstComponent.ts +21 -27
  20. package/template/src/MyFirstComponentTemplate.tsx +9 -0
  21. package/template/{bundle.esm.js → src/bundle.esm.ts} +4 -5
  22. package/template/src/i18n/messagebundle.properties +1 -1
  23. package/template/src/i18n/messagebundle_de.properties +1 -1
  24. package/template/src/i18n/messagebundle_en.properties +1 -1
  25. package/template/src/i18n/messagebundle_es.properties +1 -1
  26. package/template/src/i18n/messagebundle_fr.properties +1 -1
  27. package/template/src/themes/MyFirstComponent.css +6 -1
  28. package/template/test/pages/css/index.css +66 -13
  29. package/template/test/pages/img/logo.png +0 -0
  30. package/template/test/pages/index.html +35 -39
  31. package/template/tsconfig.template.json +14 -0
  32. package/template/vite.config.js +14 -0
  33. package/template/config/postcss.components/postcss.config.js +0 -1
  34. package/template/config/postcss.themes/postcss.config.js +0 -1
  35. package/template/config/vite.config.js +0 -4
  36. package/template/config/wdio.conf.js +0 -1
  37. package/template/src/Assets.js +0 -5
  38. package/template/src/MyFirstComponent.hbs +0 -1
  39. package/template/src/MyFirstComponent.js +0 -80
  40. package/template/src/themes/sap_fiori_3/parameters-bundle.css +0 -3
  41. package/template/test/specs/Demo.spec.js +0 -13
  42. package/template/tsconfig.json +0 -15
  43. /package/template/{.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -0,0 +1,19 @@
1
+ {
2
+ "include": [
3
+ "./**/*"
4
+ ],
5
+ "compilerOptions": {
6
+ "module": "NodeNext",
7
+ "moduleResolution": "nodenext",
8
+ "jsx": "react-jsx",
9
+ "jsxImportSource": "@ui5/webcomponents-base",
10
+ "types": [
11
+ "cypress"
12
+ ]
13
+ },
14
+ "references": [
15
+ {
16
+ "path": "../"
17
+ }
18
+ ]
19
+ }
@@ -0,0 +1,10 @@
1
+ import { defineConfig } from "cypress";
2
+
3
+ export default defineConfig({
4
+ component: {
5
+ devServer: {
6
+ framework: "@ui5/cypress-ct-ui5-webc" as any,
7
+ bundler: "vite",
8
+ },
9
+ },
10
+ });
package/template/env ADDED
@@ -0,0 +1 @@
1
+ VITE_BUNDLE_PATH="../../dist/bundle.esm.js"
@@ -1,4 +1,4 @@
1
1
  node_modules
2
2
  dist
3
- jsdoc-dist
4
- src/generated
3
+ src/generated
4
+ .dev-server-port
@@ -2,7 +2,6 @@ const getScripts = require("@ui5/webcomponents-tools/components-package/nps.js")
2
2
 
3
3
  const options = {
4
4
  port: 8080,
5
- typescript: INIT_PACKAGE_VAR_TYPESCRIPT,
6
5
  };
7
6
 
8
7
  const scripts = getScripts(options);
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "{{INIT_PACKAGE_VAR_NAME}}",
3
+ "version": "0.0.1",
4
+ "ui5": {
5
+ "webComponentsPackage": true
6
+ },
7
+ "type": "module",
8
+ "scripts": {
9
+ "clean": "wc-dev clean",
10
+ "lint": "wc-dev lint",
11
+ "start": "wc-dev start",
12
+ "watch": "wc-dev watch",
13
+ "build": "wc-dev build",
14
+ {{INIT_PACKAGE_CYPRESS_TEST_COMMANDS}}
15
+ "create-ui5-element": "wc-create-ui5-element",
16
+ "prepublishOnly": "npm run build"
17
+ },
18
+ "exports": {
19
+ "./src/*": "./src/*",
20
+ "./dist/*": "./dist/*",
21
+ "./package.json": "./package.json",
22
+ "./bundle.js": "./bundle.js",
23
+ "./*": "./dist/*"
24
+ },
25
+ "dependencies": {
26
+ "@ui5/webcomponents-base": "{{INIT_PACKAGE_VERSION}}",
27
+ "@ui5/webcomponents-theming": "{{INIT_PACKAGE_VERSION}}"
28
+ },
29
+ "devDependencies": {
30
+ {{INIT_PACKAGE_CYPRESS_DEV_DEPS}}
31
+ "@ui5/webcomponents-tools": "{{INIT_PACKAGE_VERSION}}",
32
+ "chromedriver": "*",
33
+ "typescript": "^5.6.2"
34
+ }
35
+ }
@@ -1,5 +1,5 @@
1
1
  import "@ui5/webcomponents-theming/dist/Assets.js"; // Theming
2
2
 
3
- // own INIT_PACKAGE_VAR_NAME package assets
3
+ // own {{INIT_PACKAGE_VAR_NAME}} package assets
4
4
  import "./generated/json-imports/Themes.js";
5
5
  import "./generated/json-imports/i18n.js";
@@ -1,62 +1,56 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
3
3
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
4
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
5
- import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
4
+ import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
5
+ import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
6
6
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
7
7
 
8
8
  // Template
9
- import INIT_PACKAGE_VAR_CLASS_NAMETemplate from "./generated/templates/INIT_PACKAGE_VAR_CLASS_NAMETemplate.lit.js";
9
+ import {{INIT_PACKAGE_VAR_CLASS_NAME}}Template from "./{{INIT_PACKAGE_VAR_CLASS_NAME}}Template.js";
10
10
 
11
11
  // Styles
12
- import INIT_PACKAGE_VAR_CLASS_NAMECss from "./generated/themes/INIT_PACKAGE_VAR_CLASS_NAME.css.js";
12
+ import {{INIT_PACKAGE_VAR_CLASS_NAME}}Css from "./generated/themes/{{INIT_PACKAGE_VAR_CLASS_NAME}}.css.js";
13
13
 
14
- import { COUNTER } from "./generated/i18n/i18n-defaults.js";
14
+ import { COUNT } from "./generated/i18n/i18n-defaults.js";
15
15
 
16
16
  /**
17
17
  * @class
18
18
  *
19
19
  * <h3 class="comment-api-title">Overview</h3>
20
20
  *
21
- * The <code>INIT_PACKAGE_VAR_TAG</code> component is a demo component that displays some text.
21
+ * The <code>{{INIT_PACKAGE_VAR_TAG}}</code> component is a demo component that displays some text.
22
22
  *
23
23
  * @constructor
24
- * @alias INIT_PACKAGE_VAR_NAMESPACE.INIT_PACKAGE_VAR_CLASS_NAME
25
- * @extends sap.ui.webc.base.UI5Element
26
- * @tagname INIT_PACKAGE_VAR_TAG
24
+ * @extends UI5Element
27
25
  * @public
28
26
  */
29
27
  @customElement({
30
- tag: "INIT_PACKAGE_VAR_TAG",
31
- renderer: litRender,
32
- styles: INIT_PACKAGE_VAR_CLASS_NAMECss,
33
- template: INIT_PACKAGE_VAR_CLASS_NAMETemplate,
28
+ tag: "{{INIT_PACKAGE_VAR_TAG}}",
29
+ renderer: jsxRenderer,
30
+ styles: {{INIT_PACKAGE_VAR_CLASS_NAME}}Css,
31
+ template: {{INIT_PACKAGE_VAR_CLASS_NAME}}Template,
34
32
  })
35
- class INIT_PACKAGE_VAR_CLASS_NAME extends UI5Element {
33
+ class {{INIT_PACKAGE_VAR_CLASS_NAME}} extends UI5Element {
34
+ @i18n("{{INIT_PACKAGE_VAR_NAME}}")
36
35
  static i18nBundle: I18nBundle;
37
36
 
38
- static async onDefine() {
39
- INIT_PACKAGE_VAR_CLASS_NAME.i18nBundle = await getI18nBundle("INIT_PACKAGE_VAR_NAME");
40
- }
41
-
42
37
  /**
43
- * Defines the component counter.
44
- * @name NIT_PACKAGE_VAR_NAMESPACE.INIT_PACKAGE_VAR_CLASS_NAME.prototype.counter
38
+ * Defines the component count.
39
+ * @default 0
45
40
  * @public
46
- * @type { number }
47
41
  */
48
- @property({ defaultValue: 0 })
49
- counter!: number;
42
+ @property({ type: Number })
43
+ count = 0;
50
44
 
51
45
  onClick() {
52
- this.counter++;
46
+ this.count++;
53
47
  }
54
48
 
55
49
  get counterText() {
56
- return INIT_PACKAGE_VAR_CLASS_NAME.i18nBundle.getText(COUNTER);
50
+ return {{INIT_PACKAGE_VAR_CLASS_NAME}}.i18nBundle.getText(COUNT);
57
51
  }
58
52
  }
59
53
 
60
- INIT_PACKAGE_VAR_CLASS_NAME.define();
54
+ {{INIT_PACKAGE_VAR_CLASS_NAME}}.define();
61
55
 
62
- export default INIT_PACKAGE_VAR_CLASS_NAME;
56
+ export default {{INIT_PACKAGE_VAR_CLASS_NAME}};
@@ -0,0 +1,9 @@
1
+ import type {{INIT_PACKAGE_VAR_CLASS_NAME}} from "./{{INIT_PACKAGE_VAR_CLASS_NAME}}.js";
2
+
3
+ export default function {{INIT_PACKAGE_VAR_CLASS_NAME}}Template(this: {{INIT_PACKAGE_VAR_CLASS_NAME}}) {
4
+ return (
5
+ <div class="root" onClick={this.onClick}>
6
+ {this.counterText} :: {this.count}
7
+ </div>
8
+ );
9
+ }
@@ -6,15 +6,15 @@ import { getLanguage } from "@ui5/webcomponents-base/dist/config/Language.js";
6
6
  import { getCalendarType } from "@ui5/webcomponents-base/dist/config/CalendarType.js";
7
7
  import { getTheme, setTheme } from "@ui5/webcomponents-base/dist/config/Theme.js";
8
8
  import { getNoConflict, setNoConflict } from "@ui5/webcomponents-base/dist/config/NoConflict.js";
9
- import { getRTL } from "@ui5/webcomponents-base/dist/config/RTL.js";
10
9
  import { getFirstDayOfWeek } from "@ui5/webcomponents-base/dist/config/FormatSettings.js";
11
10
 
12
11
  // Enable additional themes and i18n texts
13
- import "./dist/Assets.js";
12
+ import "./Assets.js";
14
13
 
15
- // Import your web components here from the dist/ directory
16
- import "./dist/INIT_PACKAGE_VAR_CLASS_NAME.js";
14
+ // Import your web components here from the src/ directory
15
+ import "./{{INIT_PACKAGE_VAR_CLASS_NAME}}.js";
17
16
 
17
+ // @ts-expect-error
18
18
  window["sap-ui-webcomponents-bundle"] = {
19
19
  renderFinished,
20
20
  configuration: {
@@ -25,7 +25,6 @@ window["sap-ui-webcomponents-bundle"] = {
25
25
  getNoConflict,
26
26
  setNoConflict,
27
27
  getCalendarType,
28
- getRTL,
29
28
  getFirstDayOfWeek,
30
29
  },
31
30
  };
@@ -1,3 +1,3 @@
1
1
  # the "counter" text for the sample component
2
- COUNTER=Counter
2
+ COUNT=Count
3
3
 
@@ -1 +1 @@
1
- COUNTER=Schalter
1
+ COUNT=Zählung
@@ -1 +1 @@
1
- COUNTER=Counter
1
+ COUNT=Count
@@ -1 +1 @@
1
- COUNTER=Encimera
1
+ COUNT=Cuenta
@@ -1 +1 @@
1
- COUNTER=Comptoir
1
+ COUNT=Comte
@@ -1,4 +1,8 @@
1
- :host {
1
+ .root {
2
+ display: inline-flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ flex-direction: column;
2
6
  padding: 0 2rem;
3
7
  color: var(--sapAvatar_6_TextColor);
4
8
  background-color: var(--sapAvatar_6_Background);
@@ -9,4 +13,5 @@
9
13
  line-height: 3rem;
10
14
  font-size: 1.25rem;
11
15
  user-select: none;
16
+ cursor: pointer;
12
17
  }
@@ -3,6 +3,7 @@ body {
3
3
  background-color: var(--sapBackgroundColor);
4
4
  font-size: var(--sapFontSize);
5
5
  font-family: var(--sapFontFamily);
6
+ padding: 2rem;
6
7
  }
7
8
 
8
9
  h1 {
@@ -11,26 +12,78 @@ h1 {
11
12
  }
12
13
 
13
14
  h2 {
14
- font-size: var(--sapFontHeader3Size);
15
- margin-bottom: 0.5rem;
15
+ font-size: var(--sapFontHeader4Size);
16
+ }
17
+
18
+ a {
19
+ margin: 0.25rem;
20
+ padding: 0.5rem;
21
+ }
22
+
23
+ a.link {
24
+ color: var(--sapLinkColor);
16
25
  }
17
26
 
18
- .app, .app-first-component, .app-settings, .app-docs {
27
+ a.theme-link {
28
+ color: var(--sapButton_Emphasized_TextColor);
29
+ background-color: var(--sapButton_Emphasized_Background);
30
+ text-decoration: none;
31
+ border-radius: 0.25rem;
32
+ }
33
+
34
+ a.lang-link {
35
+ color: var(--sapButton_Attention_TextColor);
36
+ background-color: var(--sapButton_Attention_Background);
37
+ text-decoration: none;
38
+ border-radius: 0.25rem;
39
+ }
40
+
41
+ .app {
19
42
  display: flex;
20
- align-items: center;
21
- justify-content: center;
22
43
  flex-direction: column;
44
+ align-items: center;
23
45
  }
24
46
 
25
- .app-first-component {
26
- margin-bottom: 3rem;
47
+ .app-nav {
48
+ display: flex;
49
+ width: 100%;
50
+ flex-direction: row;
51
+ justify-content: flex-end;
27
52
  }
28
53
 
29
- .app-docs {
30
- margin-top: 3rem;
54
+ .app-logo {
55
+ height: 5rem;
56
+ width: 5rem;
31
57
  }
32
58
 
33
- a {
34
- margin: 0.25rem;
35
- color: var(--sapLinkColor);
36
- }
59
+ .app-header {
60
+ display: flex;
61
+ flex-direction: row;
62
+ align-items: center;
63
+ }
64
+
65
+ .app-main {
66
+ display: flex;
67
+ flex-direction: row;
68
+ align-items: flex-start;
69
+ padding-top: 2rem;
70
+ }
71
+
72
+ .app-main-demo {
73
+ padding: 2rem;
74
+ border-radius: 0.5rem;
75
+ box-sizing: border-box;
76
+ background-color: var(--sapTile_Background);
77
+ }
78
+
79
+ .app-main-settings {
80
+ display: flex;
81
+ flex-direction: column;
82
+ padding: 0 2rem;
83
+ }
84
+
85
+ @media (max-width: 768px) {
86
+ .app-main {
87
+ flex-direction: column;
88
+ }
89
+ }
Binary file
@@ -1,57 +1,53 @@
1
1
  <!DOCTYPE html>
2
- <html>
2
+ <html lang="en">
3
3
 
4
4
  <head>
5
5
  <meta charset="utf-8">
6
-
7
- <title>INIT_PACKAGE_VAR_TAG</title>
6
+ <title>UI5 Web Components</title>
8
7
  <meta name="viewport" content="width=device-width, initial-scale=1">
9
8
  <meta charset="utf-8">
10
-
11
- <script data-ui5-config type="application/json">
12
- {
13
- "theme": "sap_horizon_dark",
14
- "language": "EN"
15
- }
16
- </script>
17
-
18
9
  <link rel="stylesheet" type="text/css" href="./css/index.css">
19
- <script src="../../bundle.esm.js" type="module"></script>
10
+ <script src="%VITE_BUNDLE_PATH%" type="module"></script>
20
11
  </head>
21
12
 
22
13
  <body>
23
14
  <div class="app">
24
- <a href="https://sap.github.io/ui5-webcomponents/playground/getting-started" target="_blank"><img src="./img/logo.png" alt="logo"/></a>
25
-
26
- <div class="app-first-component">
27
- <h1>Hooray! It's Your First Web Component!</h1>
28
- <div> <pre>&lt;INIT_PACKAGE_VAR_TAG>&lt;/INIT_PACKAGE_VAR_TAG> </pre></div>
29
- <INIT_PACKAGE_VAR_TAG id="myFirstComponent"></INIT_PACKAGE_VAR_TAG>
30
- </div>
31
-
32
- <div class="app-settings">
15
+ <nav class="app-nav">
16
+ <a class="link" href="https://sap.github.io/ui5-webcomponents/">Website</a>
17
+ <a class="link" href="https://sap.github.io/ui5-webcomponents/components/">Components</a>
18
+ <a class="link" href="https://sap.github.io/ui5-webcomponents/docs/development/package/">Development</a>
19
+ </nav>
33
20
 
34
- <h2>Switch themes</h2>
35
- <div style="display: flex; flex-direction: row;">
36
- <a class="link" href="?sap-ui-theme=sap_horizon">Horizon</a>
37
- <a class="link" href="?sap-ui-theme=sap_horizon_dark">Horizon Dark</a>
38
- <a class="link" href="?sap-ui-theme=sap_horizon_hcb">Horizon High Contrast Black</a>
39
- <a class="link" href="?sap-ui-theme=sap_horizon_hcw">Horizon High Contrast White</a>
40
- </div>
21
+ <header class="app-header">
22
+ <a href="https://sap.github.io/ui5-webcomponents/" target="_blank"><img src="./img/logo.png" class="app-logo" alt="logo"/></a>
23
+ <h1>UI5 Web Components</h1>
24
+ </header>
41
25
 
42
- <h2>Switch language</h2>
43
- <div>
44
- <a class="link" href="?sap-ui-language=en">English</a>
45
- <a class="link" href="?sap-ui-language=de">German</a>
46
- <a class="link" href="?sap-ui-language=es">Spanish</a>
47
- <a class="link" href="?sap-ui-language=fr">French</a>
26
+ <main class="app-main">
27
+ <div class="app-main-demo">
28
+ <h2>Congrats! It's your First Web Component 🎉</h2>
29
+ <div> <pre>&lt;{{INIT_PACKAGE_VAR_TAG}}>&lt;/{{INIT_PACKAGE_VAR_TAG}}> </pre></div>
30
+ <{{INIT_PACKAGE_VAR_TAG}} id="myFirstComponent"></{{INIT_PACKAGE_VAR_TAG}}>
48
31
  </div>
49
- </div>
50
32
 
51
- <div class="app-docs">
52
- <h2>Documentation</h2>
53
- <a class="link" href="https://sap.github.io/ui5-webcomponents/playground/development">Custom Component Development</a>
54
- </div>
33
+ <div class="app-main-settings">
34
+ <h3>Switch theme</h3>
35
+ <div style="display: grid; grid-template-columns: 1fr 1fr;">
36
+ <a class="link theme-link" href="?sap-ui-theme=sap_horizon">Horizon Morning</a>
37
+ <a class="link theme-link" href="?sap-ui-theme=sap_horizon_dark">Horizon Evening</a>
38
+ <a class="link theme-link" href="?sap-ui-theme=sap_horizon_hcb">High Contrast Black</a>
39
+ <a class="link theme-link" href="?sap-ui-theme=sap_horizon_hcw">High Contrast White</a>
40
+ </div>
41
+
42
+ <h3>Switch language</h3>
43
+ <div style="display: grid; grid-template-columns: 1fr 1fr;">
44
+ <a class="link lang-link" href="?sap-ui-language=en">English</a>
45
+ <a class="link lang-link" href="?sap-ui-language=de">German</a>
46
+ <a class="link lang-link" href="?sap-ui-language=es">Spanish</a>
47
+ <a class="link lang-link" href="?sap-ui-language=fr">French</a>
48
+ </div>
49
+ </div>
50
+ </main>
55
51
  </div>
56
52
  </body>
57
53
  </html>
@@ -0,0 +1,14 @@
1
+ {
2
+ "extends": "@ui5/webcomponents-tools/tsconfig.json",
3
+ "include": [
4
+ "src/**/*",
5
+ "global.d.ts"
6
+ ],
7
+ "compilerOptions": {
8
+ {{INIT_PACKAGE_CYPRESS_ROOT_TSCONFIG}}
9
+ "outDir": "dist",
10
+ "experimentalDecorators": true,
11
+ "module": "NodeNext",
12
+ "moduleResolution": "NodeNext"
13
+ },
14
+ }
@@ -0,0 +1,14 @@
1
+ import viteConfig from "@ui5/webcomponents-tools/components-package/vite.config.js"; //eslint-disable-line
2
+
3
+ // Modifying the default Vite configuration provided by the @ui5/webcomponents-tools package.
4
+ // You can directly access and update the properties you need to change.
5
+ // Ensure that the property exists before modifying it to avoid unintended errors.
6
+ // For available configuration options, refer to: https://vite.dev/config/#configuring-vite
7
+ //
8
+ // Ensure the plugins array exists
9
+ // viteConfig.plugins = viteConfig.plugins || [];
10
+ //
11
+ // Push a new fake plugin
12
+ // viteConfig.plugins.push({ name: 'my-custom-plugin' });
13
+
14
+ export default viteConfig;
@@ -1 +0,0 @@
1
- module.exports = require("@ui5/webcomponents-tools/components-package/postcss.components.js"); // eslint-disable-line
@@ -1 +0,0 @@
1
- module.exports = require("@ui5/webcomponents-tools/components-package/postcss.themes.js"); // eslint-disable-line
@@ -1,4 +0,0 @@
1
- // vite.config.js
2
- const config = require("@ui5/webcomponents-tools/components-package/vite.config.js"); // eslint-disable-line
3
- config.server = { open: "/test/pages/index.html" };
4
- module.exports = config;
@@ -1 +0,0 @@
1
- module.exports = require("@ui5/webcomponents-tools/components-package/wdio.js"); // eslint-disable-line
@@ -1,5 +0,0 @@
1
- import "@ui5/webcomponents-theming/dist/Assets.js"; // Theming
2
-
3
- // own INIT_PACKAGE_VAR_NAME package assets
4
- import "./generated/json-imports/Themes.js";
5
- import "./generated/json-imports/i18n.js";
@@ -1 +0,0 @@
1
- <div @click="{{onClick}}">{{counterText}} :: {{counter}}</div>
@@ -1,80 +0,0 @@
1
- import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
- import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
4
-
5
- // Template
6
- import INIT_PACKAGE_VAR_CLASS_NAMETemplate from "./generated/templates/INIT_PACKAGE_VAR_CLASS_NAMETemplate.lit.js";
7
-
8
- // Styles
9
- import INIT_PACKAGE_VAR_CLASS_NAMECss from "./generated/themes/INIT_PACKAGE_VAR_CLASS_NAME.css.js";
10
-
11
- import { COUNTER } from "./generated/i18n/i18n-defaults.js";
12
-
13
- /**
14
- * @public
15
- */
16
- const metadata = {
17
- tag: "INIT_PACKAGE_VAR_TAG",
18
- properties: /** @lends INIT_PACKAGE_VAR_NAMESPACE.INIT_PACKAGE_VAR_CLASS_NAME.prototype */ {
19
- /**
20
- * Defines the counter of the component.
21
- * @type { number }
22
- * @defaultvalue 0
23
- * @public
24
- */
25
- counter: {
26
- defaultValue: 0,
27
- },
28
- },
29
- slots: {
30
- },
31
- events: {
32
- },
33
- };
34
-
35
- /**
36
- * @class
37
- *
38
- * <h3 class="comment-api-title">Overview</h3>
39
- *
40
- * The <code>INIT_PACKAGE_VAR_TAG</code> component is a demo component that displays some text.
41
- *
42
- * @constructor
43
- * @alias INIT_PACKAGE_VAR_NAMESPACE.INIT_PACKAGE_VAR_CLASS_NAME
44
- * @extends sap.ui.webc.base.UI5Element
45
- * @tagname INIT_PACKAGE_VAR_TAG
46
- * @public
47
- */
48
- class INIT_PACKAGE_VAR_CLASS_NAME extends UI5Element {
49
- static get metadata() {
50
- return metadata;
51
- }
52
-
53
- static get render() {
54
- return litRender;
55
- }
56
-
57
- static get template() {
58
- return INIT_PACKAGE_VAR_CLASS_NAMETemplate;
59
- }
60
-
61
- static get styles() {
62
- return INIT_PACKAGE_VAR_CLASS_NAMECss;
63
- }
64
-
65
- static async onDefine() {
66
- INIT_PACKAGE_VAR_CLASS_NAME.i18nBundle = await getI18nBundle("INIT_PACKAGE_VAR_NAME");
67
- }
68
-
69
- onClick() {
70
- this.counter++;
71
- }
72
-
73
- get counterText() {
74
- return INIT_PACKAGE_VAR_CLASS_NAME.i18nBundle.getText(COUNTER);
75
- }
76
- }
77
-
78
- INIT_PACKAGE_VAR_CLASS_NAME.define();
79
-
80
- export default INIT_PACKAGE_VAR_CLASS_NAME;
@@ -1,3 +0,0 @@
1
- :root {
2
- --my-component-border-color: blue;
3
- }
@@ -1,13 +0,0 @@
1
- const assert = require("assert");
2
-
3
- describe("INIT_PACKAGE_VAR_TAG rendering", async () => {
4
- before(async () => {
5
- await browser.url("test/pages/index.html");
6
- });
7
-
8
- it("tests if web component is correctly rendered", async () => {
9
- const innerContent = await browser.$("#myFirstComponent").shadow$("div");
10
-
11
- assert.ok(innerContent, "content rendered");
12
- });
13
- });
@@ -1,15 +0,0 @@
1
- {
2
- "include": ["src/**/*", "global.d.ts"],
3
- "compilerOptions": {
4
- "target": "ES2021",
5
- // Generate d.ts files
6
- "declaration": true,
7
- "outDir": "dist",
8
- "skipLibCheck": true,
9
- "sourceMap": true,
10
- "inlineSources": true,
11
- "strict": true,
12
- "moduleResolution": "node",
13
- "experimentalDecorators": true,
14
- },
15
- }
File without changes