@ui5/webcomponents-ai 2.16.0-rc.2 → 2.16.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.
Files changed (69) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +3 -2
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/Assets-fetch.js +1 -1
  5. package/dist/Assets-fetch.js.map +1 -1
  6. package/dist/Assets-node.js +1 -1
  7. package/dist/Assets-node.js.map +1 -1
  8. package/dist/Input.d.ts +139 -0
  9. package/dist/Input.js +290 -0
  10. package/dist/Input.js.map +1 -0
  11. package/dist/InputTemplate.d.ts +10 -0
  12. package/dist/InputTemplate.js +28 -0
  13. package/dist/InputTemplate.js.map +1 -0
  14. package/dist/TextArea.d.ts +20 -19
  15. package/dist/TextArea.js +33 -38
  16. package/dist/TextArea.js.map +1 -1
  17. package/dist/TextAreaTemplate.d.ts +2 -2
  18. package/dist/TextAreaTemplate.js +2 -2
  19. package/dist/TextAreaTemplate.js.map +1 -1
  20. package/dist/Versioning.js +2 -2
  21. package/dist/Versioning.js.map +1 -1
  22. package/dist/WritingAssistant.d.ts +9 -7
  23. package/dist/WritingAssistant.js +18 -11
  24. package/dist/WritingAssistant.js.map +1 -1
  25. package/dist/WritingAssistantTemplate.js +2 -2
  26. package/dist/WritingAssistantTemplate.js.map +1 -1
  27. package/dist/bundle.esm.js +2 -1
  28. package/dist/bundle.esm.js.map +1 -1
  29. package/dist/css/themes/Button.css +1 -1
  30. package/dist/css/themes/Input.css +1 -0
  31. package/dist/css/themes/TextArea.css +1 -0
  32. package/dist/css/themes/WritingAssistant.css +1 -1
  33. package/dist/custom-elements-internal.json +177 -21
  34. package/dist/custom-elements.json +147 -21
  35. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  36. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  37. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  38. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  39. package/dist/generated/i18n/i18n-defaults.d.ts +5 -1
  40. package/dist/generated/i18n/i18n-defaults.js +5 -1
  41. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  42. package/dist/generated/themes/Button.css.d.ts +1 -1
  43. package/dist/generated/themes/Button.css.js +1 -1
  44. package/dist/generated/themes/Button.css.js.map +1 -1
  45. package/dist/generated/themes/Input.css.d.ts +2 -0
  46. package/dist/generated/themes/Input.css.js +8 -0
  47. package/dist/generated/themes/Input.css.js.map +1 -0
  48. package/dist/generated/themes/TextArea.css.d.ts +2 -0
  49. package/dist/generated/themes/{AITextArea.css.js → TextArea.css.js} +2 -2
  50. package/dist/generated/themes/TextArea.css.js.map +1 -0
  51. package/dist/generated/themes/WritingAssistant.css.d.ts +1 -1
  52. package/dist/generated/themes/WritingAssistant.css.js +1 -1
  53. package/dist/generated/themes/WritingAssistant.css.js.map +1 -1
  54. package/dist/vscode.html-custom-data.json +28 -6
  55. package/dist/web-types.json +89 -14
  56. package/package.json +7 -7
  57. package/src/InputTemplate.tsx +197 -0
  58. package/src/TextAreaTemplate.tsx +5 -5
  59. package/src/WritingAssistantTemplate.tsx +5 -5
  60. package/src/i18n/messagebundle.properties +20 -8
  61. package/src/i18n/messagebundle_en_GB.properties +4 -4
  62. package/src/i18n/messagebundle_en_US_sappsd.properties +4 -4
  63. package/src/i18n/messagebundle_en_US_saprigi.properties +4 -4
  64. package/src/i18n/messagebundle_en_US_saptrc.properties +4 -4
  65. package/src/themes/Input.css +83 -0
  66. package/dist/css/themes/AITextArea.css +0 -1
  67. package/dist/generated/themes/AITextArea.css.d.ts +0 -2
  68. package/dist/generated/themes/AITextArea.css.js.map +0 -1
  69. /package/src/themes/{AITextArea.css → TextArea.css} +0 -0
@@ -6,7 +6,7 @@ import ToolbarSpacer from "@ui5/webcomponents/dist/ToolbarSpacer.js";
6
6
  import ToolbarButton from "@ui5/webcomponents/dist/ToolbarButton.js";
7
7
  export default function WritingAssistantTemplate() {
8
8
  const isMultiResults = this.totalVersions > 1;
9
- const hasResults = (this.totalVersions > 0 && this.actionText) || this.loading;
10
- return (_jsxs(Toolbar, { accessibleName: this._toolbarAccessibleName, "aria-roledescription": "toolbar", class: `ui5-ai-writing-assistant-footer-bar${hasResults ? "--with-border" : ""}`, children: [isMultiResults && !this.loading && (_jsx(Versioning, { currentStep: this.currentVersionIndex, totalSteps: this.totalVersions, "onVersion-change": this.handleVersionChange })), hasResults && this.actionText && (_jsx(ToolbarLabel, { text: this.actionText, class: "ui5-ai-writing-assistant-action-label" })), _jsx(ToolbarSpacer, {}), _jsx(ToolbarButton, { id: "ai-menu-btn", design: "Transparent", icon: this.loading ? "stop" : "ai", "data-state": this.loading ? "generating" : "generate", onClick: this.handleButtonClick, tooltip: this._buttonTooltip, accessibilityAttributes: { hasPopup: this.loading ? "false" : "menu" }, accessibleName: this._buttonAccessibleName, overflowPriority: "NeverOverflow" })] }));
9
+ const hasResults = (this.totalVersions > 0 && this.promptDescription) || this.loading;
10
+ return (_jsxs(Toolbar, { accessibleName: this._toolbarAccessibleName, "aria-roledescription": "toolbar", class: `ui5-ai-writing-assistant-footer-bar${hasResults ? "--with-border" : ""}`, children: [isMultiResults && !this.loading && (_jsx(Versioning, { currentStep: this.currentVersion + 1, totalSteps: this.totalVersions, "onVersion-change": this.handleVersionChange })), hasResults && this.promptDescription && (_jsx(ToolbarLabel, { text: this.promptDescription, class: "ui5-ai-writing-assistant-action-label" })), _jsx(ToolbarSpacer, {}), _jsx(ToolbarButton, { id: "ai-menu-btn", design: "Transparent", icon: this.loading ? "stop" : "ai", "data-state": this.loading ? "generating" : "generate", onClick: this.handleButtonClick, tooltip: this.loading ? this._stopTooltip : this._buttonTooltip, accessibilityAttributes: { hasPopup: this.loading ? "false" : "menu" }, accessibleName: this._buttonAccessibleName, overflowPriority: "NeverOverflow" })] }));
11
11
  }
12
12
  //# sourceMappingURL=WritingAssistantTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WritingAssistantTemplate.js","sourceRoot":"","sources":["../src/WritingAssistantTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,OAAO,MAAM,oCAAoC,CAAC;AACzD,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,aAAa,MAAM,0CAA0C,CAAC;AAErE,MAAM,CAAC,OAAO,UAAU,wBAAwB;IAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC;IAE/E,OAAO,CACN,MAAC,OAAO,IACP,cAAc,EAAE,IAAI,CAAC,sBAAsB,0BACtB,SAAS,EAC9B,KAAK,EAAE,sCAAsC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,aAE/E,cAAc,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CACnC,KAAC,UAAU,IACV,WAAW,EAAE,IAAI,CAAC,mBAAmB,EACrC,UAAU,EAAE,IAAI,CAAC,aAAa,sBACZ,IAAI,CAAC,mBAAmB,GACzC,CACF,EAEA,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,CACjC,KAAC,YAAY,IACZ,IAAI,EAAE,IAAI,CAAC,UAAU,EACrB,KAAK,EAAC,uCAAuC,GAC5C,CACF,EAED,KAAC,aAAa,KAAG,EAEjB,KAAC,aAAa,IACb,EAAE,EAAC,aAAa,EAChB,MAAM,EAAC,aAAa,EACpB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,gBACtB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,EACpD,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,OAAO,EAAE,IAAI,CAAC,cAAc,EAC5B,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,EACtE,cAAc,EAAE,IAAI,CAAC,qBAAqB,EAC1C,gBAAgB,EAAC,eAAe,GAC/B,IACO,CACV,CAAC;AACH,CAAC","sourcesContent":["import type WritingAssistant from \"./WritingAssistant.js\";\nimport Versioning from \"./Versioning.js\";\nimport ToolbarLabel from \"./ToolbarLabel.js\";\n\nimport Toolbar from \"@ui5/webcomponents/dist/Toolbar.js\";\nimport ToolbarSpacer from \"@ui5/webcomponents/dist/ToolbarSpacer.js\";\nimport ToolbarButton from \"@ui5/webcomponents/dist/ToolbarButton.js\";\n\nexport default function WritingAssistantTemplate(this: WritingAssistant) {\n\tconst isMultiResults = this.totalVersions > 1;\n\tconst hasResults = (this.totalVersions > 0 && this.actionText) || this.loading;\n\n\treturn (\n\t\t<Toolbar\n\t\t\taccessibleName={this._toolbarAccessibleName}\n\t\t\taria-roledescription=\"toolbar\"\n\t\t\tclass={`ui5-ai-writing-assistant-footer-bar${hasResults ? \"--with-border\" : \"\"}`}\n\t\t>\n\t\t\t{isMultiResults && !this.loading && (\n\t\t\t\t<Versioning\n\t\t\t\t\tcurrentStep={this.currentVersionIndex}\n\t\t\t\t\ttotalSteps={this.totalVersions}\n\t\t\t\t\tonVersion-change={this.handleVersionChange}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t{hasResults && this.actionText && (\n\t\t\t\t<ToolbarLabel\n\t\t\t\t\ttext={this.actionText}\n\t\t\t\t\tclass=\"ui5-ai-writing-assistant-action-label\"\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t<ToolbarSpacer />\n\n\t\t\t<ToolbarButton\n\t\t\t\tid=\"ai-menu-btn\"\n\t\t\t\tdesign=\"Transparent\"\n\t\t\t\ticon={this.loading ? \"stop\" : \"ai\"}\n\t\t\t\tdata-state={this.loading ? \"generating\" : \"generate\"}\n\t\t\t\tonClick={this.handleButtonClick}\n\t\t\t\ttooltip={this._buttonTooltip}\n\t\t\t\taccessibilityAttributes={{ hasPopup: this.loading ? \"false\" : \"menu\" }}\n\t\t\t\taccessibleName={this._buttonAccessibleName}\n\t\t\t\toverflowPriority=\"NeverOverflow\"\n\t\t\t/>\n\t\t</Toolbar>\n\t);\n}\n"]}
1
+ {"version":3,"file":"WritingAssistantTemplate.js","sourceRoot":"","sources":["../src/WritingAssistantTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,OAAO,MAAM,oCAAoC,CAAC;AACzD,OAAO,aAAa,MAAM,0CAA0C,CAAC;AACrE,OAAO,aAAa,MAAM,0CAA0C,CAAC;AAErE,MAAM,CAAC,OAAO,UAAU,wBAAwB;IAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC;IAEtF,OAAO,CACN,MAAC,OAAO,IACP,cAAc,EAAE,IAAI,CAAC,sBAAsB,0BACtB,SAAS,EAC9B,KAAK,EAAE,sCAAsC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,aAE/E,cAAc,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CACnC,KAAC,UAAU,IACV,WAAW,EAAE,IAAI,CAAC,cAAc,GAAG,CAAC,EACpC,UAAU,EAAE,IAAI,CAAC,aAAa,sBACZ,IAAI,CAAC,mBAAmB,GACzC,CACF,EAEA,UAAU,IAAI,IAAI,CAAC,iBAAiB,IAAI,CACxC,KAAC,YAAY,IACZ,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAC5B,KAAK,EAAC,uCAAuC,GAC5C,CACF,EAED,KAAC,aAAa,KAAG,EAEjB,KAAC,aAAa,IACb,EAAE,EAAC,aAAa,EAChB,MAAM,EAAC,aAAa,EACpB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,gBACtB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,EACpD,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAC/D,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,EACtE,cAAc,EAAE,IAAI,CAAC,qBAAqB,EAC1C,gBAAgB,EAAC,eAAe,GAC/B,IACO,CACV,CAAC;AACH,CAAC","sourcesContent":["import type WritingAssistant from \"./WritingAssistant.js\";\nimport Versioning from \"./Versioning.js\";\nimport ToolbarLabel from \"./ToolbarLabel.js\";\n\nimport Toolbar from \"@ui5/webcomponents/dist/Toolbar.js\";\nimport ToolbarSpacer from \"@ui5/webcomponents/dist/ToolbarSpacer.js\";\nimport ToolbarButton from \"@ui5/webcomponents/dist/ToolbarButton.js\";\n\nexport default function WritingAssistantTemplate(this: WritingAssistant) {\n\tconst isMultiResults = this.totalVersions > 1;\n\tconst hasResults = (this.totalVersions > 0 && this.promptDescription) || this.loading;\n\n\treturn (\n\t\t<Toolbar\n\t\t\taccessibleName={this._toolbarAccessibleName}\n\t\t\taria-roledescription=\"toolbar\"\n\t\t\tclass={`ui5-ai-writing-assistant-footer-bar${hasResults ? \"--with-border\" : \"\"}`}\n\t\t>\n\t\t\t{isMultiResults && !this.loading && (\n\t\t\t\t<Versioning\n\t\t\t\t\tcurrentStep={this.currentVersion + 1}\n\t\t\t\t\ttotalSteps={this.totalVersions}\n\t\t\t\t\tonVersion-change={this.handleVersionChange}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t{hasResults && this.promptDescription && (\n\t\t\t\t<ToolbarLabel\n\t\t\t\t\ttext={this.promptDescription}\n\t\t\t\t\tclass=\"ui5-ai-writing-assistant-action-label\"\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t<ToolbarSpacer />\n\n\t\t\t<ToolbarButton\n\t\t\t\tid=\"ai-menu-btn\"\n\t\t\t\tdesign=\"Transparent\"\n\t\t\t\ticon={this.loading ? \"stop\" : \"ai\"}\n\t\t\t\tdata-state={this.loading ? \"generating\" : \"generate\"}\n\t\t\t\tonClick={this.handleButtonClick}\n\t\t\t\ttooltip={this.loading ? this._stopTooltip : this._buttonTooltip}\n\t\t\t\taccessibilityAttributes={{ hasPopup: this.loading ? \"false\" : \"menu\" }}\n\t\t\t\taccessibleName={this._buttonAccessibleName}\n\t\t\t\toverflowPriority=\"NeverOverflow\"\n\t\t\t/>\n\t\t</Toolbar>\n\t);\n}\n"]}
@@ -5,6 +5,7 @@ import "./Assets.js";
5
5
  import Button from "./Button.js";
6
6
  import ButtonState from "./ButtonState.js";
7
7
  import PromptInput from "./PromptInput.js";
8
- import AITextArea from "./TextArea.js";
8
+ import TextArea from "./TextArea.js";
9
+ import Input from "./Input.js";
9
10
  export default testAssets;
10
11
  //# sourceMappingURL=bundle.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.esm.js","sourceRoot":"","sources":["../src/bundle.esm.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,UAAU,MAAM,uCAAuC,CAAC;AAE/D,YAAY;AACZ,OAAO,aAAa,CAAC;AAErB,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,UAAU,MAAM,eAAe,CAAC;AAEvC,eAAe,UAAU,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\nimport testAssets from \"@ui5/webcomponents/dist/bundle.esm.js\";\n\n// AI assets\nimport \"./Assets.js\";\n\nimport Button from \"./Button.js\";\nimport ButtonState from \"./ButtonState.js\";\nimport PromptInput from \"./PromptInput.js\";\nimport AITextArea from \"./TextArea.js\";\n\nexport default testAssets;\n"]}
1
+ {"version":3,"file":"bundle.esm.js","sourceRoot":"","sources":["../src/bundle.esm.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,UAAU,MAAM,uCAAuC,CAAC;AAE/D,YAAY;AACZ,OAAO,aAAa,CAAC;AAErB,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,eAAe,UAAU,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\nimport testAssets from \"@ui5/webcomponents/dist/bundle.esm.js\";\n\n// AI assets\nimport \"./Assets.js\";\n\nimport Button from \"./Button.js\";\nimport ButtonState from \"./ButtonState.js\";\nimport PromptInput from \"./PromptInput.js\";\nimport TextArea from \"./TextArea.js\";\nimport Input from \"./Input.js\";\n\nexport default testAssets;\n"]}
@@ -1 +1 @@
1
- :host{display:inline-block}:host([disabled]){pointer-events:none}.ui5-ai-button-text{display:inline-block}:host([icon-only]) .ui5-ai-button-text{min-width:0;margin-inline-start:0}.ui5-ai-button-hidden{position:absolute;top:-10000px;left:-10000px;visibility:hidden;display:block;width:fit-content}:host .ui5-ai-button-inner{width:100%}:host{width:auto;position:relative;transition:width .18s cubic-bezier(.67,1,.95,1.3) .12s}:host([icon-only]) .ui5-ai-button-inner[_end-icon=""]::part(textButton),:host(.ui5-ai-button-menu-to-button[icon-only]) .ui5-ai-button-inner::part(textButton){min-width:var(--_ui5-v2-16-0-rc-2_button_base_min_width)!important;max-width:var(--_ui5-v2-16-0-rc-2_button_base_min_width)!important}:host(.ui5-ai-button-menu-to-button) .ui5-ai-button-inner::part(button),:host(.ui5-ai-button-fade-out:not([icon-only])) .ui5-ai-button-inner::part(button){justify-content:flex-start}:host([icon-only]) .ui5-ai-button-inner[_end-icon]:not([_end-icon=""])::part(button),:host([icon-only]) .ui5-ai-button-inner[_hide-arrow-button]::part(button){justify-content:flex-start;padding-inline-start:var(--_ui5-v2-16-0-rc-2_button_base_padding)}:host(.ui5-ai-button-fade-in[icon-only]) .ui5-ai-button-inner[_end-icon=""]::part(button){max-width:var(--_ui5-v2-16-0-rc-2_button_base_min_width)}:host([icon-only]) .ui5-ai-button-inner[_end-icon=""]::part(textButton),:host(.ui5-ai-button-menu-to-button[icon-only]) .ui5-ai-button-inner::part(textButton){min-width:var(--_ui5-v2-16-0-rc-2_button_base_min_width);max-width:var(--_ui5-v2-16-0-rc-2_button_base_min_width)}:host(:not(.ui5-ai-button-fade-out):not(.ui5-ai-button-fade-mid):not(.ui5-ai-button-fade-in)) .ui5-ai-button-text,:host(:not(.ui5-ai-button-fade-out):not(.ui5-ai-button-fade-mid):not(.ui5-ai-button-fade-in)) ::part(endIcon),:host(:not(.ui5-ai-button-fade-out):not(.ui5-ai-button-fade-mid):not(.ui5-ai-button-fade-in)) ::part(arrowButton){opacity:1;transform:translateY(0)}:host(.ui5-ai-button-button-to-menu) .ui5-ai-button-inner::part(endIcon),:host(.ui5-ai-button-button-to-menu) .ui5-ai-button-inner::part(arrowButton){display:none;transform:translateY(0);opacity:0}:host(.ui5-ai-button-fade-out) .ui5-ai-button-text{opacity:0;transform:translateY(-1rem);transition:opacity .06s ease-in-out .12s,transform .08s ease-in-out .12s}:host(.ui5-ai-button-fade-out) ::part(icon){opacity:0;transform:translateY(-1rem);transition:opacity .05s ease-in-out 25ms,transform .1s ease-in-out 0s}:host(.ui5-ai-button-fade-out) ::part(endIcon){opacity:0;transform:translateY(-1rem);transition:opacity .06s ease-in-out .12s,transform .08s ease-in-out .12s}:host(.ui5-ai-button-fade-mid) .ui5-ai-button-text,:host(.ui5-ai-button-fade-mid) ::part(icon),:host(.ui5-ai-button-fade-mid) ::part(endIcon),:host(.ui5-ai-button-fade-mid) ::part(arrowButton){opacity:0;transform:translateY(1rem);transition:none}:host(.ui5-ai-button-fade-in) .ui5-ai-button-text{opacity:1;transform:translateY(0);transition:opacity .06s ease-in-out .12s,transform .08s ease-in-out .12s}:host(.ui5-ai-button-fade-in) ::part(icon){opacity:1;transform:translateY(0);transition:opacity .05s ease-in-out 25ms,transform .1s ease-in-out 0s}:host(.ui5-ai-button-fade-in) ::part(endIcon){opacity:1;transform:translateY(0);transition:opacity .06s ease-in-out .12s,transform .08s ease-in-out .12s}
1
+ :host{display:inline-block}:host([disabled]){pointer-events:none}.ui5-ai-button-text{display:inline-block}:host([icon-only]) .ui5-ai-button-text{min-width:0;margin-inline-start:0}.ui5-ai-button-hidden{position:absolute;top:-10000px;left:-10000px;visibility:hidden;display:block;width:fit-content}:host .ui5-ai-button-inner{width:100%}:host{width:auto;position:relative;transition:width .18s cubic-bezier(.67,1,.95,1.3) .12s}:host([icon-only]) .ui5-ai-button-inner[_end-icon=""]::part(textButton),:host(.ui5-ai-button-menu-to-button[icon-only]) .ui5-ai-button-inner::part(textButton){min-width:var(--_ui5-v2-16-0_button_base_min_width)!important;max-width:var(--_ui5-v2-16-0_button_base_min_width)!important}:host(.ui5-ai-button-menu-to-button) .ui5-ai-button-inner::part(button),:host(.ui5-ai-button-fade-out:not([icon-only])) .ui5-ai-button-inner::part(button){justify-content:flex-start}:host([icon-only]) .ui5-ai-button-inner[_end-icon]:not([_end-icon=""])::part(button),:host([icon-only]) .ui5-ai-button-inner[_hide-arrow-button]::part(button){justify-content:flex-start;padding-inline-start:var(--_ui5-v2-16-0_button_base_padding)}:host(.ui5-ai-button-fade-in[icon-only]) .ui5-ai-button-inner[_end-icon=""]::part(button){max-width:var(--_ui5-v2-16-0_button_base_min_width)}:host([icon-only]) .ui5-ai-button-inner[_end-icon=""]::part(textButton),:host(.ui5-ai-button-menu-to-button[icon-only]) .ui5-ai-button-inner::part(textButton){min-width:var(--_ui5-v2-16-0_button_base_min_width);max-width:var(--_ui5-v2-16-0_button_base_min_width)}:host(:not(.ui5-ai-button-fade-out):not(.ui5-ai-button-fade-mid):not(.ui5-ai-button-fade-in)) .ui5-ai-button-text,:host(:not(.ui5-ai-button-fade-out):not(.ui5-ai-button-fade-mid):not(.ui5-ai-button-fade-in)) ::part(endIcon),:host(:not(.ui5-ai-button-fade-out):not(.ui5-ai-button-fade-mid):not(.ui5-ai-button-fade-in)) ::part(arrowButton){opacity:1;transform:translateY(0)}:host(.ui5-ai-button-button-to-menu) .ui5-ai-button-inner::part(endIcon),:host(.ui5-ai-button-button-to-menu) .ui5-ai-button-inner::part(arrowButton){display:none;transform:translateY(0);opacity:0}:host(.ui5-ai-button-fade-out) .ui5-ai-button-text{opacity:0;transform:translateY(-1rem);transition:opacity .06s ease-in-out .12s,transform .08s ease-in-out .12s}:host(.ui5-ai-button-fade-out) ::part(icon){opacity:0;transform:translateY(-1rem);transition:opacity .05s ease-in-out 25ms,transform .1s ease-in-out 0s}:host(.ui5-ai-button-fade-out) ::part(endIcon){opacity:0;transform:translateY(-1rem);transition:opacity .06s ease-in-out .12s,transform .08s ease-in-out .12s}:host(.ui5-ai-button-fade-mid) .ui5-ai-button-text,:host(.ui5-ai-button-fade-mid) ::part(icon),:host(.ui5-ai-button-fade-mid) ::part(endIcon),:host(.ui5-ai-button-fade-mid) ::part(arrowButton){opacity:0;transform:translateY(1rem);transition:none}:host(.ui5-ai-button-fade-in) .ui5-ai-button-text{opacity:1;transform:translateY(0);transition:opacity .06s ease-in-out .12s,transform .08s ease-in-out .12s}:host(.ui5-ai-button-fade-in) ::part(icon){opacity:1;transform:translateY(0);transition:opacity .05s ease-in-out 25ms,transform .1s ease-in-out 0s}:host(.ui5-ai-button-fade-in) ::part(endIcon){opacity:1;transform:translateY(0);transition:opacity .06s ease-in-out .12s,transform .08s ease-in-out .12s}
@@ -0,0 +1 @@
1
+ .ui5-ai-input-root{width:100%;height:100%;border-right:none}:host([focused]:not([opened])[_is-menu-open]) .ui5-ai-input-root:hover{border-radius:var(--_ui5-v2-16-0_input_border_radius);box-shadow:var(--sapField_Hover_Shadow)}:host([focused]:not([opened])[_is-menu-open]) .ui5-input-focusable-element:after{border:var(--_ui5-v2-16-0-input-border)}.ui5-input-busy-indicator{flex:1;width:100%;height:100%;position:relative;box-sizing:border-box;display:block}.ui5-ai-input-busy .ui5-ai-input-button-wrapper{background-color:inherit;border:none}.ui5-ai-input-button-wrapper{display:flex;justify-content:center;align-items:center;width:var(--_ui5-v2-16-0_input_icon_width);min-width:var(--_ui5-v2-16-0_input_icon_width);height:var(--_ui5-v2-16-0_input_icon_wrapper_height);padding:0;box-sizing:border-box;border-radius:var(--_ui5-v2-16-0_input_border_radius);cursor:pointer;border:none}.ui5-input-ai-button[hidden]{display:none}.ui5-ai-input-button-wrapper.ui5-input-button-menu-open,.ui5-ai-input-button-wrapper:active{background-color:var(--sapButton_Selected_Background);box-shadow:var(--sapField_Hover_Shadow);color:var(--sapButton_Selected_TextColor)}.ui5-ai-input-button-wrapper:not(.ui5-input-button-menu-open):not(.ui5-ai-input-loading):not(:active):hover,.ui5-ai-input-button-wrapper.ui5-ai-input-loading:hover{background-color:var(--sapButton_Hover_Background);border:1px solid var(--sapButton_Hover_BorderColor);box-shadow:inset 0 0 0 .0625rem var(--sapContent_Neutral_Shadow)}.ui5-input-button-menu-open{background-color:var(--sapButton_Selected_Background);box-shadow:var(--sapField_Hover_Shadow)}[ui5-menu-item].ui5-ai-versioning-menu-footer:hover{background-color:inherit}.ui5-ai-versioning-menu-footer::part(native-li){padding-right:.25rem}#ai-menu-btn{--_ui5-v2-16-0_button_focused_border: none}
@@ -0,0 +1 @@
1
+ .ui5-ai-textarea-root{position:relative;display:flex;flex-direction:column;width:100%;height:100%}.ui5-ai-textarea-root .ui5-textarea-wrapper{display:flex;flex-direction:column;flex:1;position:relative}.ui5-ai-textarea-root [part=footer]{position:relative;width:100%;margin-top:auto;flex-shrink:0}.ui5-ai-writing-assistant-footer-bar{background:var(--_ui5-v2-16-0_texteditor_toolbar_background, var(--sapPageFooter_Background));width:100%;box-sizing:border-box;box-shadow:none;border-bottom:none;border-top:none}.ui5-ai-writing-assistant-footer-bar--with-border{border-top:1px solid var(--sapPageFooter_BorderColor)}.ui5-ai-writing-assistant-action-label{margin-left:.5rem;color:var(--sapContent_LabelColor);font-size:var(--sapFontSmallSize)}#ai-menu-wrapper{position:relative;z-index:1000}
@@ -1 +1 @@
1
- .ui5-ai-textarea-root{position:relative;display:flex;flex-direction:column;width:100%;height:100%}.ui5-ai-textarea-root .ui5-textarea-wrapper{display:flex;flex-direction:column;flex:1;position:relative}.ui5-ai-textarea-root [part=footer]{width:100%;margin-top:auto;flex-shrink:0}.ui5-ai-writing-assistant-footer-bar{background:var(--_ui5-v2-16-0-rc-2_texteditor_toolbar_background, var(--sapPageFooter_Background));width:100%;box-sizing:border-box;box-shadow:none;border-bottom:none;border-top:none;padding:.5rem;min-height:2.75rem;display:flex;align-items:center;justify-content:flex-start}.ui5-ai-writing-assistant-footer-bar--with-border{border-top:1px solid var(--sapPageFooter_BorderColor)}.ui5-ai-writing-assistant-action-label{color:var(--sapContent_LabelColor);font-size:var(--sapFontSize);font-family:"72override",var(--sapFontFamily);margin-left:.25rem}
1
+ .ui5-ai-textarea-root{position:relative;display:flex;flex-direction:column;width:100%;height:100%}.ui5-ai-textarea-root .ui5-textarea-wrapper{display:flex;flex-direction:column;flex:1;position:relative}.ui5-ai-textarea-root [part=footer]{width:100%;margin-top:auto;flex-shrink:0}.ui5-ai-writing-assistant-footer-bar{background:var(--_ui5-v2-16-0_texteditor_toolbar_background, var(--sapPageFooter_Background));width:100%;box-sizing:border-box;box-shadow:none;border-bottom:none;border-top:none;padding:.5rem;min-height:2.75rem;display:flex;align-items:center;justify-content:flex-start}.ui5-ai-writing-assistant-footer-bar--with-border{border-top:1px solid var(--sapPageFooter_BorderColor)}.ui5-ai-writing-assistant-action-label{color:var(--sapContent_LabelColor);font-size:var(--sapFontSize);font-family:"72override",var(--sapFontFamily);margin-left:.25rem}
@@ -357,6 +357,161 @@
357
357
  }
358
358
  ]
359
359
  },
360
+ {
361
+ "kind": "javascript-module",
362
+ "path": "dist/Input.js",
363
+ "declarations": [
364
+ {
365
+ "kind": "class",
366
+ "description": "### Overview\n\nThe `ui5-ai-input` component extends the standard `ui5-input` with **AI Writing Assistant** capabilities.\n\n### Structure\n\nThe `ui5-ai-input` consists of the following main parts:\n\n- **Input Field** – Inherits all standard Input behaviors.\n- **AI Action Button** – Appears when focused or loading, providing access to AI-related actions or stopping generation.\n\nThe component automatically determines which elements to render based on its internal state:\n- The AI Button is only shown when there are available `actions`.\n- The version navigation appears only when `totalVersions > 1`.\n\n### Keyboard Support\n\n- **Shift + F4** — Opens the AI menu.\n- **Ctrl + Shift + Z / Y** — Navigates backward/forward between AI-generated versions.\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents-ai/dist/Input.js\";`",
367
+ "name": "Input",
368
+ "slots": [
369
+ {
370
+ "name": "actions",
371
+ "description": "Defines the items of the menu for the component.",
372
+ "_ui5type": {
373
+ "text": "Array<HTMLElement>"
374
+ },
375
+ "_ui5privacy": "public"
376
+ }
377
+ ],
378
+ "members": [
379
+ {
380
+ "kind": "field",
381
+ "name": "currentVersion",
382
+ "type": {
383
+ "text": "number"
384
+ },
385
+ "default": "0",
386
+ "description": "Indicates the index of the currently displayed version.",
387
+ "privacy": "public"
388
+ },
389
+ {
390
+ "kind": "field",
391
+ "name": "totalVersions",
392
+ "type": {
393
+ "text": "number"
394
+ },
395
+ "default": "0",
396
+ "description": "Indicates the total number of result versions available.\n\nWhen not set or set to 0, the versioning will be hidden.",
397
+ "privacy": "public"
398
+ },
399
+ {
400
+ "kind": "field",
401
+ "name": "loading",
402
+ "type": {
403
+ "text": "boolean"
404
+ },
405
+ "default": "false",
406
+ "description": "Defines whether the AI Writing Assistant is currently loading.\n\nWhen `true`, indicates that an AI action is in progress.",
407
+ "privacy": "public"
408
+ }
409
+ ],
410
+ "events": [
411
+ {
412
+ "name": "button-click",
413
+ "_ui5privacy": "public",
414
+ "type": {
415
+ "text": "CustomEvent"
416
+ },
417
+ "description": "Fired when the user selects the AI button.",
418
+ "_ui5Cancelable": true,
419
+ "_ui5allowPreventDefault": true,
420
+ "_ui5Bubbles": false
421
+ },
422
+ {
423
+ "name": "stop-generation",
424
+ "_ui5privacy": "public",
425
+ "type": {
426
+ "text": "CustomEvent"
427
+ },
428
+ "description": "Fired when the user selects the \"Stop\" button to stop ongoing AI text generation.",
429
+ "_ui5Cancelable": false,
430
+ "_ui5allowPreventDefault": false,
431
+ "_ui5Bubbles": false
432
+ },
433
+ {
434
+ "name": "version-change",
435
+ "_ui5privacy": "public",
436
+ "type": {
437
+ "text": "CustomEvent<undefined>"
438
+ },
439
+ "description": "Fired when the user selects the version navigation buttons.",
440
+ "_ui5Cancelable": false,
441
+ "_ui5allowPreventDefault": false,
442
+ "_ui5Bubbles": false,
443
+ "_ui5parameters": [
444
+ {
445
+ "type": {
446
+ "text": "boolean"
447
+ },
448
+ "name": "backwards",
449
+ "_ui5privacy": "public",
450
+ "description": "Indicates if navigation is backwards (true) or forwards (false, default)"
451
+ }
452
+ ]
453
+ }
454
+ ],
455
+ "attributes": [
456
+ {
457
+ "description": "Indicates the index of the currently displayed version.",
458
+ "name": "current-version",
459
+ "default": "0",
460
+ "fieldName": "currentVersion",
461
+ "type": {
462
+ "text": "number"
463
+ }
464
+ },
465
+ {
466
+ "description": "Indicates the total number of result versions available.\n\nWhen not set or set to 0, the versioning will be hidden.",
467
+ "name": "total-versions",
468
+ "default": "0",
469
+ "fieldName": "totalVersions",
470
+ "type": {
471
+ "text": "number"
472
+ }
473
+ },
474
+ {
475
+ "description": "Defines whether the AI Writing Assistant is currently loading.\n\nWhen `true`, indicates that an AI action is in progress.",
476
+ "name": "loading",
477
+ "default": "false",
478
+ "fieldName": "loading",
479
+ "type": {
480
+ "text": "boolean"
481
+ }
482
+ }
483
+ ],
484
+ "superclass": {
485
+ "name": "BaseInput",
486
+ "package": "@ui5/webcomponents",
487
+ "module": "dist/Input.js"
488
+ },
489
+ "tagName": "ui5-ai-input",
490
+ "customElement": true,
491
+ "_ui5experimental": "The **@ui5/webcomponents-ai** package is under active development and considered experimental. Component APIs are subject to change.",
492
+ "_ui5since": "2.16.0",
493
+ "_ui5privacy": "public"
494
+ }
495
+ ],
496
+ "exports": [
497
+ {
498
+ "kind": "js",
499
+ "name": "default",
500
+ "declaration": {
501
+ "name": "Input",
502
+ "module": "dist/Input.js"
503
+ }
504
+ },
505
+ {
506
+ "kind": "custom-element-definition",
507
+ "name": "ui5-ai-input",
508
+ "declaration": {
509
+ "name": "Input",
510
+ "module": "dist/Input.js"
511
+ }
512
+ }
513
+ ]
514
+ },
360
515
  {
361
516
  "kind": "javascript-module",
362
517
  "path": "dist/PromptInput.js",
@@ -676,8 +831,8 @@
676
831
  "declarations": [
677
832
  {
678
833
  "kind": "class",
679
- "description": "### Overview\n\nThe `ui5-ai-textarea` component extends the standard TextArea with AI Writing Assistant capabilities.\nIt provides AI-powered text generation, editing suggestions, and version management functionality.\n\n### Structure\nThe `ui5-ai-textarea` consists of the following elements:\n- TextArea: The main text input area with all standard textarea functionality\n- AI Toolbar: Specialized toolbar with AI generation controls\n- Version Navigation: Controls for navigating between AI-generated versions\n- Menu Integration: Support for AI action menu\n\nSingle vs multiple result display is determined internally based on totalVersions count.\n\n### ES6 Module Import\n\n`import \"@sap-webcomponents/ai/dist/TextArea.js\";`",
680
- "name": "AITextArea",
834
+ "description": "### Overview\n\nThe `ui5-ai-textarea` component extends the standard TextArea with Writing Assistant capabilities.\nIt provides AI-powered text generation, editing suggestions, and version management functionality.\n\n### Structure\nThe `ui5-ai-textarea` consists of the following elements:\n- TextArea: The main text input area with all standard textarea functionality\n- WritingAssistant: Dedicated toolbar containing:\n - Versioning: A component with left/right navigation buttons and a label for browsing AI-generated versions\n - AI Button: Opens a menu that can be extended with custom AI generation options through slotting\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents-ai/dist/TextArea.js\";`",
835
+ "name": "TextArea",
681
836
  "slots": [
682
837
  {
683
838
  "description": "Defines a slot for `ui5-menu` integration. This slot allows you to pass a `ui5-menu` instance that will be associated with the assistant.",
@@ -701,22 +856,22 @@
701
856
  },
702
857
  {
703
858
  "kind": "field",
704
- "name": "actionText",
859
+ "name": "promptDescription",
705
860
  "type": {
706
861
  "text": "string"
707
862
  },
708
863
  "default": "\"\"",
709
- "description": "Defines the action text of the AI Writing Assistant.",
864
+ "description": "Defines the prompt description of the current action.",
710
865
  "privacy": "public"
711
866
  },
712
867
  {
713
868
  "kind": "field",
714
- "name": "currentVersionIndex",
869
+ "name": "currentVersion",
715
870
  "type": {
716
871
  "text": "number"
717
872
  },
718
- "default": "1",
719
- "description": "Indicates the index of the currently displayed result version.\n\nThe index is **1-based** (i.e. `1` represents the first result).",
873
+ "default": "0",
874
+ "description": "Indicates the index of the currently displayed version.",
720
875
  "privacy": "public"
721
876
  },
722
877
  {
@@ -725,8 +880,8 @@
725
880
  "type": {
726
881
  "text": "number"
727
882
  },
728
- "default": "1",
729
- "description": "Indicates the total number of result versions available.",
883
+ "default": "0",
884
+ "description": "Indicates the total number of result versions available.\n\nNotes:\nVersioning is hidden if the value is `0`",
730
885
  "privacy": "public"
731
886
  }
732
887
  ],
@@ -765,27 +920,27 @@
765
920
  }
766
921
  },
767
922
  {
768
- "description": "Defines the action text of the AI Writing Assistant.",
769
- "name": "action-text",
923
+ "description": "Defines the prompt description of the current action.",
924
+ "name": "prompt-description",
770
925
  "default": "\"\"",
771
- "fieldName": "actionText",
926
+ "fieldName": "promptDescription",
772
927
  "type": {
773
928
  "text": "string"
774
929
  }
775
930
  },
776
931
  {
777
- "description": "Indicates the index of the currently displayed result version.\n\nThe index is **1-based** (i.e. `1` represents the first result).",
778
- "name": "current-version-index",
779
- "default": "1",
780
- "fieldName": "currentVersionIndex",
932
+ "description": "Indicates the index of the currently displayed version.",
933
+ "name": "current-version",
934
+ "default": "0",
935
+ "fieldName": "currentVersion",
781
936
  "type": {
782
937
  "text": "number"
783
938
  }
784
939
  },
785
940
  {
786
- "description": "Indicates the total number of result versions available.",
941
+ "description": "Indicates the total number of result versions available.\n\nNotes:\nVersioning is hidden if the value is `0`",
787
942
  "name": "total-versions",
788
- "default": "1",
943
+ "default": "0",
789
944
  "fieldName": "totalVersions",
790
945
  "type": {
791
946
  "text": "number"
@@ -793,12 +948,13 @@
793
948
  }
794
949
  ],
795
950
  "superclass": {
796
- "name": "TextArea",
951
+ "name": "BaseTextArea",
797
952
  "package": "@ui5/webcomponents",
798
953
  "module": "dist/TextArea.js"
799
954
  },
800
955
  "tagName": "ui5-ai-textarea",
801
956
  "customElement": true,
957
+ "_ui5experimental": "The **@ui5/webcomponents-ai** package is under development and considered experimental - components' APIs are subject to change.",
802
958
  "_ui5since": "2.16.0",
803
959
  "_ui5privacy": "public"
804
960
  }
@@ -808,7 +964,7 @@
808
964
  "kind": "js",
809
965
  "name": "default",
810
966
  "declaration": {
811
- "name": "AITextArea",
967
+ "name": "TextArea",
812
968
  "module": "dist/TextArea.js"
813
969
  }
814
970
  },
@@ -816,7 +972,7 @@
816
972
  "kind": "custom-element-definition",
817
973
  "name": "ui5-ai-textarea",
818
974
  "declaration": {
819
- "name": "AITextArea",
975
+ "name": "TextArea",
820
976
  "module": "dist/TextArea.js"
821
977
  }
822
978
  }
@@ -326,6 +326,132 @@
326
326
  }
327
327
  ]
328
328
  },
329
+ {
330
+ "kind": "javascript-module",
331
+ "path": "dist/Input.js",
332
+ "declarations": [
333
+ {
334
+ "kind": "class",
335
+ "description": "### Overview\n\nThe `ui5-ai-input` component extends the standard `ui5-input` with **AI Writing Assistant** capabilities.\n\n### Structure\n\nThe `ui5-ai-input` consists of the following main parts:\n\n- **Input Field** – Inherits all standard Input behaviors.\n- **AI Action Button** – Appears when focused or loading, providing access to AI-related actions or stopping generation.\n\nThe component automatically determines which elements to render based on its internal state:\n- The AI Button is only shown when there are available `actions`.\n- The version navigation appears only when `totalVersions > 1`.\n\n### Keyboard Support\n\n- **Shift + F4** — Opens the AI menu.\n- **Ctrl + Shift + Z / Y** — Navigates backward/forward between AI-generated versions.\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents-ai/dist/Input.js\";`",
336
+ "name": "Input",
337
+ "slots": [
338
+ {
339
+ "name": "actions",
340
+ "description": "Defines the items of the menu for the component."
341
+ }
342
+ ],
343
+ "members": [
344
+ {
345
+ "kind": "field",
346
+ "name": "currentVersion",
347
+ "type": {
348
+ "text": "number"
349
+ },
350
+ "default": "0",
351
+ "description": "Indicates the index of the currently displayed version.",
352
+ "privacy": "public"
353
+ },
354
+ {
355
+ "kind": "field",
356
+ "name": "totalVersions",
357
+ "type": {
358
+ "text": "number"
359
+ },
360
+ "default": "0",
361
+ "description": "Indicates the total number of result versions available.\n\nWhen not set or set to 0, the versioning will be hidden.",
362
+ "privacy": "public"
363
+ },
364
+ {
365
+ "kind": "field",
366
+ "name": "loading",
367
+ "type": {
368
+ "text": "boolean"
369
+ },
370
+ "default": "false",
371
+ "description": "Defines whether the AI Writing Assistant is currently loading.\n\nWhen `true`, indicates that an AI action is in progress.",
372
+ "privacy": "public"
373
+ }
374
+ ],
375
+ "events": [
376
+ {
377
+ "name": "button-click",
378
+ "type": {
379
+ "text": "CustomEvent"
380
+ },
381
+ "description": "Fired when the user selects the AI button."
382
+ },
383
+ {
384
+ "name": "stop-generation",
385
+ "type": {
386
+ "text": "CustomEvent"
387
+ },
388
+ "description": "Fired when the user selects the \"Stop\" button to stop ongoing AI text generation."
389
+ },
390
+ {
391
+ "name": "version-change",
392
+ "type": {
393
+ "text": "CustomEvent<undefined>"
394
+ },
395
+ "description": "Fired when the user selects the version navigation buttons."
396
+ }
397
+ ],
398
+ "attributes": [
399
+ {
400
+ "description": "Indicates the index of the currently displayed version.",
401
+ "name": "current-version",
402
+ "default": "0",
403
+ "fieldName": "currentVersion",
404
+ "type": {
405
+ "text": "number"
406
+ }
407
+ },
408
+ {
409
+ "description": "Indicates the total number of result versions available.\n\nWhen not set or set to 0, the versioning will be hidden.",
410
+ "name": "total-versions",
411
+ "default": "0",
412
+ "fieldName": "totalVersions",
413
+ "type": {
414
+ "text": "number"
415
+ }
416
+ },
417
+ {
418
+ "description": "Defines whether the AI Writing Assistant is currently loading.\n\nWhen `true`, indicates that an AI action is in progress.",
419
+ "name": "loading",
420
+ "default": "false",
421
+ "fieldName": "loading",
422
+ "type": {
423
+ "text": "boolean"
424
+ }
425
+ }
426
+ ],
427
+ "superclass": {
428
+ "name": "BaseInput",
429
+ "package": "@ui5/webcomponents",
430
+ "module": "dist/Input.js"
431
+ },
432
+ "tagName": "ui5-ai-input",
433
+ "customElement": true
434
+ }
435
+ ],
436
+ "exports": [
437
+ {
438
+ "kind": "js",
439
+ "name": "default",
440
+ "declaration": {
441
+ "name": "Input",
442
+ "module": "dist/Input.js"
443
+ }
444
+ },
445
+ {
446
+ "kind": "custom-element-definition",
447
+ "name": "ui5-ai-input",
448
+ "declaration": {
449
+ "name": "Input",
450
+ "module": "dist/Input.js"
451
+ }
452
+ }
453
+ ]
454
+ },
329
455
  {
330
456
  "kind": "javascript-module",
331
457
  "path": "dist/PromptInput.js",
@@ -602,8 +728,8 @@
602
728
  "declarations": [
603
729
  {
604
730
  "kind": "class",
605
- "description": "### Overview\n\nThe `ui5-ai-textarea` component extends the standard TextArea with AI Writing Assistant capabilities.\nIt provides AI-powered text generation, editing suggestions, and version management functionality.\n\n### Structure\nThe `ui5-ai-textarea` consists of the following elements:\n- TextArea: The main text input area with all standard textarea functionality\n- AI Toolbar: Specialized toolbar with AI generation controls\n- Version Navigation: Controls for navigating between AI-generated versions\n- Menu Integration: Support for AI action menu\n\nSingle vs multiple result display is determined internally based on totalVersions count.\n\n### ES6 Module Import\n\n`import \"@sap-webcomponents/ai/dist/TextArea.js\";`",
606
- "name": "AITextArea",
731
+ "description": "### Overview\n\nThe `ui5-ai-textarea` component extends the standard TextArea with Writing Assistant capabilities.\nIt provides AI-powered text generation, editing suggestions, and version management functionality.\n\n### Structure\nThe `ui5-ai-textarea` consists of the following elements:\n- TextArea: The main text input area with all standard textarea functionality\n- WritingAssistant: Dedicated toolbar containing:\n - Versioning: A component with left/right navigation buttons and a label for browsing AI-generated versions\n - AI Button: Opens a menu that can be extended with custom AI generation options through slotting\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents-ai/dist/TextArea.js\";`",
732
+ "name": "TextArea",
607
733
  "slots": [
608
734
  {
609
735
  "description": "Defines a slot for `ui5-menu` integration. This slot allows you to pass a `ui5-menu` instance that will be associated with the assistant.",
@@ -623,22 +749,22 @@
623
749
  },
624
750
  {
625
751
  "kind": "field",
626
- "name": "actionText",
752
+ "name": "promptDescription",
627
753
  "type": {
628
754
  "text": "string"
629
755
  },
630
756
  "default": "\"\"",
631
- "description": "Defines the action text of the AI Writing Assistant.",
757
+ "description": "Defines the prompt description of the current action.",
632
758
  "privacy": "public"
633
759
  },
634
760
  {
635
761
  "kind": "field",
636
- "name": "currentVersionIndex",
762
+ "name": "currentVersion",
637
763
  "type": {
638
764
  "text": "number"
639
765
  },
640
- "default": "1",
641
- "description": "Indicates the index of the currently displayed result version.\n\nThe index is **1-based** (i.e. `1` represents the first result).",
766
+ "default": "0",
767
+ "description": "Indicates the index of the currently displayed version.",
642
768
  "privacy": "public"
643
769
  },
644
770
  {
@@ -647,8 +773,8 @@
647
773
  "type": {
648
774
  "text": "number"
649
775
  },
650
- "default": "1",
651
- "description": "Indicates the total number of result versions available.",
776
+ "default": "0",
777
+ "description": "Indicates the total number of result versions available.\n\nNotes:\nVersioning is hidden if the value is `0`",
652
778
  "privacy": "public"
653
779
  }
654
780
  ],
@@ -679,27 +805,27 @@
679
805
  }
680
806
  },
681
807
  {
682
- "description": "Defines the action text of the AI Writing Assistant.",
683
- "name": "action-text",
808
+ "description": "Defines the prompt description of the current action.",
809
+ "name": "prompt-description",
684
810
  "default": "\"\"",
685
- "fieldName": "actionText",
811
+ "fieldName": "promptDescription",
686
812
  "type": {
687
813
  "text": "string"
688
814
  }
689
815
  },
690
816
  {
691
- "description": "Indicates the index of the currently displayed result version.\n\nThe index is **1-based** (i.e. `1` represents the first result).",
692
- "name": "current-version-index",
693
- "default": "1",
694
- "fieldName": "currentVersionIndex",
817
+ "description": "Indicates the index of the currently displayed version.",
818
+ "name": "current-version",
819
+ "default": "0",
820
+ "fieldName": "currentVersion",
695
821
  "type": {
696
822
  "text": "number"
697
823
  }
698
824
  },
699
825
  {
700
- "description": "Indicates the total number of result versions available.",
826
+ "description": "Indicates the total number of result versions available.\n\nNotes:\nVersioning is hidden if the value is `0`",
701
827
  "name": "total-versions",
702
- "default": "1",
828
+ "default": "0",
703
829
  "fieldName": "totalVersions",
704
830
  "type": {
705
831
  "text": "number"
@@ -707,7 +833,7 @@
707
833
  }
708
834
  ],
709
835
  "superclass": {
710
- "name": "TextArea",
836
+ "name": "BaseTextArea",
711
837
  "package": "@ui5/webcomponents",
712
838
  "module": "dist/TextArea.js"
713
839
  },
@@ -720,7 +846,7 @@
720
846
  "kind": "js",
721
847
  "name": "default",
722
848
  "declaration": {
723
- "name": "AITextArea",
849
+ "name": "TextArea",
724
850
  "module": "dist/TextArea.js"
725
851
  }
726
852
  },
@@ -728,7 +854,7 @@
728
854
  "kind": "custom-element-definition",
729
855
  "name": "ui5-ai-textarea",
730
856
  "declaration": {
731
- "name": "AITextArea",
857
+ "name": "TextArea",
732
858
  "module": "dist/TextArea.js"
733
859
  }
734
860
  }
@@ -1 +1 @@
1
- {"PROMPT_INPUT_CHARACTERS_LEFT":"{0} characters remaining","PROMPT_INPUT_CHARACTERS_EXCEEDED":"{0} characters over limit","BUTTON_TOOLTIP_TEXT":"{0} with Artificial Intelligence","WRITING_ASSISTANT_LABEL":"AI Writing Assistant Toolbar Shift + F4","VERSIONING_PREVIOUS_BUTTON_TEXT":"Previous Version","VERSIONING_NEXT_BUTTON_TEXT":"Next Version","WRITING_ASSISTANT_GENERATING_ANNOUNCEMENT":"Stop generating (ESC)","WRITING_ASSISTANT_TOOLBAR_ACCESSIBLE_NAME":"AI Writing Assistant Toolbar","WRITING_ASSISTANT_BUTTON_ACCESSIBLE_NAME":"AI Writing Assistant","WRITING_ASSISTANT_BUTTON_TOOLTIP":"AI Writing Assistant (Shift + F4)","VERSIONING_PREVIOUS_BUTTON_TOOLTIP":"Previous Version","VERSIONING_NEXT_BUTTON_TOOLTIP":"Next Version"}
1
+ {"PROMPT_INPUT_CHARACTERS_LEFT":"{0} characters remaining","PROMPT_INPUT_CHARACTERS_EXCEEDED":"{0} characters over limit","BUTTON_TOOLTIP_TEXT":"{0} with Artificial Intelligence","WRITING_ASSISTANT_LABEL":"Writing Assistant Toolbar Shift + F4","VERSIONING_PREVIOUS_BUTTON_TEXT":"Previous Version","VERSIONING_NEXT_BUTTON_TEXT":"Next Version","WRITING_ASSISTANT_GENERATING_ANNOUNCEMENT":"Stop generating (ESC)","WRITING_ASSISTANT_TOOLBAR_ACCESSIBLE_NAME":"Writing Assistant Toolbar","WRITING_ASSISTANT_BUTTON_ACCESSIBLE_NAME":"Writing Assistant","WRITING_ASSISTANT_BUTTON_TOOLTIP":"Writing Assistant (Shift + F4)","VERSIONING_PREVIOUS_BUTTON_TOOLTIP":"Previous Version","VERSIONING_NEXT_BUTTON_TOOLTIP":"Next Version"}
@@ -1 +1 @@
1
- {"PROMPT_INPUT_CHARACTERS_LEFT":"[[[{0} ċĥąŗąċţēŗş ŗēɱąįŋįŋğ]]]","PROMPT_INPUT_CHARACTERS_EXCEEDED":"[[[{0} ċĥąŗąċţēŗş ŏʋēŗ ĺįɱįţ]]]","BUTTON_TOOLTIP_TEXT":"[[[{0} ŵįţĥ Āŗţįƒįċįąĺ Ĭŋţēĺĺįğēŋċē]]]","WRITING_ASSISTANT_LABEL":"[[[ĀĬ Ŵŗįţįŋğ Āşşįşţąŋţ Ţŏŏĺƃąŗ Ŝĥįƒţ + Ƒ4∙∙∙∙∙∙∙∙∙∙∙∙∙∙]]]","VERSIONING_PREVIOUS_BUTTON_TEXT":"[[[Ƥŗēʋįŏűş Ʋēŗşįŏŋ∙∙∙∙∙∙∙∙]]]","VERSIONING_NEXT_BUTTON_TEXT":"[[[Ńēχţ Ʋēŗşįŏŋ∙∙∙∙∙∙∙]]]","WRITING_ASSISTANT_GENERATING_ANNOUNCEMENT":"[[[Ŝţŏρ ğēŋēŗąţįŋğ (ĔŜĈ)∙∙∙∙∙]]]","WRITING_ASSISTANT_TOOLBAR_ACCESSIBLE_NAME":"[[[ĀĬ Ŵŗįţįŋğ Āşşįşţąŋţ Ţŏŏĺƃąŗ∙∙∙∙∙∙∙∙]]]","WRITING_ASSISTANT_BUTTON_ACCESSIBLE_NAME":"[[[ĀĬ Ŵŗįţįŋğ Āşşįşţąŋţ∙∙∙∙]]]","WRITING_ASSISTANT_BUTTON_TOOLTIP":"[[[ĀĬ Ŵŗįţįŋğ Āşşįşţąŋţ (Ŝĥįƒţ + Ƒ4)∙∙∙∙∙∙∙∙∙∙∙]]]","VERSIONING_PREVIOUS_BUTTON_TOOLTIP":"[[[Ƥŗēʋįŏűş Ʋēŗşįŏŋ∙∙∙∙∙∙∙∙]]]","VERSIONING_NEXT_BUTTON_TOOLTIP":"[[[Ńēχţ Ʋēŗşįŏŋ∙∙∙∙∙∙∙]]]"}
1
+ {"PROMPT_INPUT_CHARACTERS_LEFT":"[[[{0} ċĥąŗąċţēŗş ŗēɱąįŋįŋğ]]]","PROMPT_INPUT_CHARACTERS_EXCEEDED":"[[[{0} ċĥąŗąċţēŗş ŏʋēŗ ĺįɱįţ]]]","BUTTON_TOOLTIP_TEXT":"[[[{0} ŵįţĥ Āŗţįƒįċįąĺ Ĭŋţēĺĺįğēŋċē]]]","WRITING_ASSISTANT_LABEL":"[[[Ŵŗįţįŋğ Āşşįşţąŋţ Ţŏŏĺƃąŗ Ŝĥįƒţ + Ƒ4∙∙∙∙∙∙∙∙∙∙∙∙]]]","VERSIONING_PREVIOUS_BUTTON_TEXT":"[[[Ƥŗēʋįŏűş Ʋēŗşįŏŋ∙∙∙∙∙∙∙∙]]]","VERSIONING_NEXT_BUTTON_TEXT":"[[[Ńēχţ Ʋēŗşįŏŋ∙∙∙∙∙∙∙]]]","WRITING_ASSISTANT_GENERATING_ANNOUNCEMENT":"[[[Ŝţŏρ ğēŋēŗąţįŋğ (ĔŜĈ)∙∙∙∙∙]]]","WRITING_ASSISTANT_TOOLBAR_ACCESSIBLE_NAME":"[[[Ŵŗįţįŋğ Āşşįşţąŋţ Ţŏŏĺƃąŗ∙∙∙∙∙∙∙]]]","WRITING_ASSISTANT_BUTTON_ACCESSIBLE_NAME":"[[[Ŵŗįţįŋğ Āşşįşţąŋţ∙∙∙∙∙∙∙]]]","WRITING_ASSISTANT_BUTTON_TOOLTIP":"[[[Ŵŗįţįŋğ Āşşįşţąŋţ (Ŝĥįƒţ + Ƒ4)∙∙∙∙∙∙∙∙∙]]]","VERSIONING_PREVIOUS_BUTTON_TOOLTIP":"[[[Ƥŗēʋįŏűş Ʋēŗşįŏŋ∙∙∙∙∙∙∙∙]]]","VERSIONING_NEXT_BUTTON_TOOLTIP":"[[[Ńēχţ Ʋēŗşįŏŋ∙∙∙∙∙∙∙]]]"}