@infineon/infineon-design-system-stencil 35.0.0--canary.1896.f36a40bc0d982c4500e7faefcf706a95e2eb4507.0 → 35.0.0--canary.1896.a0fde65a56b2511818a95f80cc4c83352aa3cfc3.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/dist/cjs/ifx-icon.cjs.entry.js +3 -8
- package/dist/cjs/ifx-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/ifx-overview-table.cjs.entry.js +1 -1
- package/dist/cjs/ifx-overview-table.cjs.entry.js.map +1 -1
- package/dist/collection/components/icon/infineonIconStencil.js +3 -8
- package/dist/collection/components/icon/infineonIconStencil.js.map +1 -1
- package/dist/collection/components/modal/modal.stories.js +1 -1
- package/dist/collection/components/modal/modal.stories.js.map +1 -1
- package/dist/collection/components/overview-table/overview-table.js +1 -1
- package/dist/collection/components/overview-table/overview-table.js.map +1 -1
- package/dist/components/ifx-accordion-item.js +1 -1
- package/dist/components/ifx-alert.js +1 -1
- package/dist/components/ifx-breadcrumb-item-label.js +1 -1
- package/dist/components/ifx-checkbox-group.js +1 -1
- package/dist/components/ifx-checkbox.js +1 -1
- package/dist/components/ifx-chip-item.js +1 -1
- package/dist/components/ifx-chip.js +1 -1
- package/dist/components/ifx-date-picker.js +1 -1
- package/dist/components/ifx-dropdown-item.js +1 -1
- package/dist/components/ifx-dropdown-trigger-button.js +1 -1
- package/dist/components/ifx-faq.js +2 -2
- package/dist/components/ifx-file-upload.js +2 -2
- package/dist/components/ifx-filter-accordion.js +1 -1
- package/dist/components/ifx-filter-bar.js +1 -1
- package/dist/components/ifx-filter-search.js +2 -2
- package/dist/components/ifx-icon-button.js +1 -1
- package/dist/components/ifx-icon.js +1 -1
- package/dist/components/ifx-icons-preview.js +3 -3
- package/dist/components/ifx-list-entry.js +2 -2
- package/dist/components/ifx-list.js +1 -1
- package/dist/components/ifx-modal.js +2 -2
- package/dist/components/ifx-multiselect.js +1 -1
- package/dist/components/ifx-navbar-item.js +1 -1
- package/dist/components/ifx-navbar.js +1 -1
- package/dist/components/ifx-notification.js +1 -1
- package/dist/components/ifx-overview-table.js +2 -2
- package/dist/components/ifx-overview-table.js.map +1 -1
- package/dist/components/ifx-pagination.js +1 -1
- package/dist/components/ifx-radio-button-group.js +1 -1
- package/dist/components/ifx-search-bar.js +2 -2
- package/dist/components/ifx-search-field.js +1 -1
- package/dist/components/ifx-segment.js +1 -1
- package/dist/components/ifx-segmented-control.js +1 -1
- package/dist/components/ifx-select.js +1 -1
- package/dist/components/ifx-set-filter.js +5 -5
- package/dist/components/ifx-sidebar-item.js +1 -1
- package/dist/components/ifx-slider.js +1 -1
- package/dist/components/ifx-step.js +1 -1
- package/dist/components/ifx-table.js +7 -7
- package/dist/components/ifx-tabs.js +1 -1
- package/dist/components/ifx-tag.js +1 -1
- package/dist/components/ifx-template.js +1 -1
- package/dist/components/ifx-templates-ui.js +5 -5
- package/dist/components/ifx-text-field.js +1 -1
- package/dist/components/ifx-tooltip.js +1 -1
- package/dist/components/ifx-tree-view-item.js +2 -2
- package/dist/components/{p-47544912.js → p-046895f8.js} +2 -2
- package/dist/components/{p-47544912.js.map → p-046895f8.js.map} +1 -1
- package/dist/components/{p-bde5bd73.js → p-078e9c76.js} +2 -2
- package/dist/components/{p-bde5bd73.js.map → p-078e9c76.js.map} +1 -1
- package/dist/components/{p-468cd13e.js → p-0f7cb0c7.js} +2 -2
- package/dist/components/{p-468cd13e.js.map → p-0f7cb0c7.js.map} +1 -1
- package/dist/components/{p-508bb93f.js → p-367b840b.js} +3 -3
- package/dist/components/{p-508bb93f.js.map → p-367b840b.js.map} +1 -1
- package/dist/components/{p-d4b96419.js → p-4a26513a.js} +2 -2
- package/dist/components/{p-d4b96419.js.map → p-4a26513a.js.map} +1 -1
- package/dist/components/{p-1233e88f.js → p-6085f742.js} +4 -4
- package/dist/components/{p-1233e88f.js.map → p-6085f742.js.map} +1 -1
- package/dist/components/{p-bceac2ab.js → p-658f16f9.js} +2 -2
- package/dist/components/{p-bceac2ab.js.map → p-658f16f9.js.map} +1 -1
- package/dist/components/{p-8fe694c7.js → p-a7202d3b.js} +2 -2
- package/dist/components/{p-8fe694c7.js.map → p-a7202d3b.js.map} +1 -1
- package/dist/components/{p-99a6b7fb.js → p-b4bfd8c5.js} +3 -3
- package/dist/components/{p-99a6b7fb.js.map → p-b4bfd8c5.js.map} +1 -1
- package/dist/components/{p-814c54f0.js → p-c7ea7b19.js} +3 -3
- package/dist/components/{p-814c54f0.js.map → p-c7ea7b19.js.map} +1 -1
- package/dist/components/{p-bacfbd70.js → p-d3594393.js} +2 -2
- package/dist/components/{p-bacfbd70.js.map → p-d3594393.js.map} +1 -1
- package/dist/components/{p-3f3bff46.js → p-d829ac98.js} +2 -2
- package/dist/components/{p-3f3bff46.js.map → p-d829ac98.js.map} +1 -1
- package/dist/components/{p-e25cf775.js → p-d8afbc9e.js} +2 -2
- package/dist/components/{p-e25cf775.js.map → p-d8afbc9e.js.map} +1 -1
- package/dist/components/{p-67213226.js → p-eb6ca49a.js} +4 -9
- package/dist/components/p-eb6ca49a.js.map +1 -0
- package/dist/esm/ifx-icon.entry.js +3 -8
- package/dist/esm/ifx-icon.entry.js.map +1 -1
- package/dist/esm/ifx-overview-table.entry.js +1 -1
- package/dist/esm/ifx-overview-table.entry.js.map +1 -1
- package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
- package/dist/infineon-design-system-stencil/p-aef44361.entry.js +2 -0
- package/dist/infineon-design-system-stencil/p-aef44361.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/{p-813f56d7.entry.js → p-d63456d5.entry.js} +2 -2
- package/dist/infineon-design-system-stencil/{p-813f56d7.entry.js.map → p-d63456d5.entry.js.map} +1 -1
- package/package.json +1 -1
- package/dist/components/p-67213226.js.map +0 -1
- package/dist/infineon-design-system-stencil/p-84ec2ff5.entry.js +0 -2
- package/dist/infineon-design-system-stencil/p-84ec2ff5.entry.js.map +0 -1
@@ -35,16 +35,11 @@ export class InfineonIconStencil {
|
|
35
35
|
return svgPaths;
|
36
36
|
}
|
37
37
|
getSVG(svgPath) {
|
38
|
-
|
39
|
-
const width = htmlPath.getAttribute('width');
|
40
|
-
const height = htmlPath.getAttribute('height');
|
41
|
-
const fill = htmlPath.getAttribute('fill');
|
42
|
-
const viewBox = htmlPath.getAttribute('viewBox');
|
43
|
-
return h("svg", { class: "inline-svg", width: width, height: height, xmlns: "http://www.w3.org/2000/svg", fill: fill, viewBox: viewBox }, ...svgPath);
|
38
|
+
return h("svg", { class: "inline-svg", width: this.ifxIcon.width, height: this.ifxIcon.height, xmlns: "http://www.w3.org/2000/svg", fill: this.ifxIcon.fill, viewBox: this.ifxIcon.viewBox }, ...svgPath);
|
44
39
|
}
|
45
40
|
constructIcon() {
|
46
41
|
if (this.ifxIcon) {
|
47
|
-
const htmlPath = this.convertStringToHtml(this.ifxIcon);
|
42
|
+
const htmlPath = this.convertStringToHtml(this.ifxIcon.svgContent);
|
48
43
|
const svgPath = this.convertPathsToVnode(htmlPath);
|
49
44
|
const SVG = this.getSVG(svgPath);
|
50
45
|
return SVG;
|
@@ -63,7 +58,7 @@ export class InfineonIconStencil {
|
|
63
58
|
this.ifxIcon = getIcon(removeHyphen(this.icon));
|
64
59
|
}
|
65
60
|
render() {
|
66
|
-
return (h(Host, { key: '
|
61
|
+
return (h(Host, { key: '0bea5330247eadec614b8cb15f2918ae4af32b1a' }, this.constructIcon()));
|
67
62
|
}
|
68
63
|
static get is() { return "ifx-icon"; }
|
69
64
|
static get originalStyleUrls() {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"infineonIconStencil.js","sourceRoot":"","sources":["../../../src/components/icon/infineonIconStencil.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AASlD,MAAM,OAAO,mBAAmB;IALhC;QAM2B,SAAI,GAAW,EAAE,CAAA;
|
1
|
+
{"version":3,"file":"infineonIconStencil.js","sourceRoot":"","sources":["../../../src/components/icon/infineonIconStencil.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AASlD,MAAM,OAAO,mBAAmB;IALhC;QAM2B,SAAI,GAAW,EAAE,CAAA;KAqE3C;IAjEC,mBAAmB,CAAC,UAAU;QAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QACzC,GAAG,CAAC,SAAS,GAAG,UAAU,CAAA;QAC1B,OAAO,GAAG,CAAC,UAAU,CAAA;IACvB,CAAC;IAED,mBAAmB,CAAC,WAAW;QAC7B,IAAI,YAAY,GAAG,KAAK;aACrB,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;aACpE,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;YACvB,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAA;YACjC,OAAO,GAAG,CAAA;QACZ,CAAC,EAAE,EAAE,CAAC,CAAA;QAER,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,mBAAmB,CAAC,QAAQ;QAC1B,IAAI,QAAQ,GAAG,EAAE,CAAA;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAChD,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAChC,IAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAChD,MAAM,UAAU,GAAG,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;YAC5D,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,IAAI,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACrD,IAAI,UAAU,GAAG,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;gBACxC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEA,MAAM,CAAC,OAAO;QACb,OAAO,WAAK,KAAK,EAAC,YAAY,EAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,OAAM,OAAO,CAAO,CAAA;IACtM,CAAC;IAED,aAAa;QACX,IAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAClE,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;YAClD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAChC,OAAO,GAAG,CAAC;QACb,CAAC;aAAM,IAAG,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;YAChC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC5B,OAAO;QACT,CAAC;aAAO,CAAC;YACP,OAAO;QACT,CAAC;IACH,CAAC;IAED,iBAAiB;QACf,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QAC/F,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,uDACJ,IAAI,CAAC,aAAa,EAAE,CACd,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, Host, Event, EventEmitter } from '@stencil/core';\nimport { getIcon } from '@infineon/infineon-icons'\n \n\n\n@Component({\n tag: 'ifx-icon',\n styleUrl: './infineonIconStencil.scss'\n})\n\nexport class InfineonIconStencil {\n @Prop({ mutable: true }) icon: string = \"\"\n @Prop({ mutable: true }) ifxIcon: any;\n @Event() consoleError: EventEmitter<boolean>;\n \n convertStringToHtml(htmlString) { \n const div = document.createElement('div')\n div.innerHTML = htmlString\n return div.firstChild\n }\n\n convertHtmlToObject(htmlElement) { \n let pathToObject = Array\n .from(htmlElement.attributes, ({ name, value }) => ({ name, value }))\n .reduce((acc, current) => {\n acc[current.name] = current.value\n return acc\n }, {})\n\n return pathToObject\n }\n\n convertPathsToVnode(htmlPath) { \n let svgPaths = []\n const parentPath = this.convertHtmlToObject(htmlPath);\n const parentPathToVnode = h(\"path\", parentPath);\n svgPaths.push(parentPathToVnode)\n if(htmlPath.firstChild) { \n const paths = htmlPath.querySelectorAll('path');\n const pathLength = htmlPath.querySelectorAll('path').length;\n for(let i = 0; i < pathLength; i++) { \n let pathToObject = this.convertHtmlToObject(paths[i])\n let objToVnode = h(\"path\", pathToObject)\n svgPaths.push(objToVnode)\n } \n }\n return svgPaths\n }\n\n getSVG(svgPath) {\n return <svg class=\"inline-svg\" width={this.ifxIcon.width} height={this.ifxIcon.height} xmlns=\"http://www.w3.org/2000/svg\" fill={this.ifxIcon.fill} viewBox={this.ifxIcon.viewBox}>{...svgPath}</svg>\n }\n\n constructIcon() {\n if(this.ifxIcon) {\n const htmlPath = this.convertStringToHtml(this.ifxIcon.svgContent)\n const svgPath = this.convertPathsToVnode(htmlPath)\n const SVG = this.getSVG(svgPath)\n return SVG;\n } else if(this.icon !== \"\") {\n console.error('Icon not found!')\n this.consoleError.emit(true)\n return;\n } else { \n return;\n }\n }\n\n componentWillLoad() {\n const removeHyphen = (str) => str.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, (_m, chr) => chr);\n this.ifxIcon = getIcon(removeHyphen(this.icon));\n }\n\n render() {\n return (\n <Host>\n {this.constructIcon()}\n </Host>\n );\n }\n}"]}
|
@@ -204,7 +204,7 @@ export const Alert = Template.bind({});
|
|
204
204
|
Alert.args = {
|
205
205
|
caption: 'Alert-Brand Modal Title',
|
206
206
|
closeOnOverlayClick: true,
|
207
|
-
alertIcon: '
|
207
|
+
alertIcon: 'arrowdoen16',
|
208
208
|
size: 's',
|
209
209
|
variant: 'alert-brand',
|
210
210
|
cancelButtonLabel: 'Cancel',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"modal.stories.js","sourceRoot":"","sources":["../../../src/components/modal/modal.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\nimport { icons } from '@infineon/infineon-icons';\n\nexport default {\n title: 'Components/Modal',\n component: 'ifx-modal',\n // tags: ['autodocs'],\n\n args: {\n opened: false,\n cancelButtonLabel: 'Cancel',\n okButtonLabel: 'OK',\n },\n argTypes: {\n caption: {\n control: 'text',\n description: 'Title for the modal.',\n table: {\n category: 'ifx-modal props',\n },\n },\n opened: {\n control: {\n disable: true,\n },\n description: 'Default state of the modal.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'false',\n },\n type: {\n summary: 'Example (in VanillaJs)',\n detail:\n \"const modal = document.getElementById('modal'); \\nconst openButton = document.getElementById('open'); \\n//add DOM event listeners (e.g. click and/or keypress)\\n\\nfunction openModal() { \\nmodal.opened=true;\\n\\nfunction closeModal() { \\nmodal.opened = false; \\n}\",\n },\n },\n },\n closeOnOverlayClick: {\n control: 'boolean',\n description: 'Close the modal when clicking outside the window.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'false',\n }\n }\n },\n showCloseButton: {\n control: 'boolean',\n description: \"Show or hide close button in the modal's header.\",\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'true',\n },\n },\n },\n alertIcon: {\n options: Object.keys(icons),\n control: { type: 'select' },\n description: 'Icon to be displayed in the alert modal.',\n table: {\n category: 'ifx-modal props',\n type: {\n summary: 'string',\n },\n },\n },\n size: {\n options: ['s', 'm', 'l'],\n control: { type: 'radio' },\n description: 'Usable only when screen width is more than 1024px.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 's',\n },\n type: {\n summary: 's | m | l',\n }\n }\n },\n variant: {\n options: ['default', 'alert-brand', 'alert-danger'],\n control: { type: 'radio' },\n description: 'Variant of the modal.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'default',\n },\n type: {\n summary: 'default | alert-brand | alert-danger',\n },\n },\n },\n cancelButtonLabel: {\n control: 'text',\n description: 'Label for the cancel button.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'Cancel',\n },\n type: {\n summary: 'string',\n },\n },\n },\n okButtonLabel: {\n control: 'text',\n description: 'Label for the OK button.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'OK',\n },\n type: {\n summary: 'string',\n },\n },\n },\n\n ifxOpen: {\n action: 'ifxOpen',\n description: 'Custom event emitted when modal opens.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxOpen={handleChange}\\nVue:@ifxOpen=\"handleChange\"\\nAngular:(ifxOpen)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxOpen\", (event) => {//handle change});',\n },\n },\n },\n ifxClose: {\n action: 'ifxClose',\n description: 'Custom event emitted when modal closes.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxClose={handleChange}\\nVue:@ifxClose=\"handleChange\"\\nAngular:(ifxClose)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxClose\", (event) => {//handle change});',\n },\n },\n },\n },\n};\n\nconst Template = ({ caption, showCloseButton, closeOnOverlayClick, variant, size, alertIcon, cancelButtonLabel, okButtonLabel }) => {\n const modal = document.createElement('ifx-modal');\n modal.setAttribute('caption', caption);\n modal.setAttribute('variant', variant);\n\n if (alertIcon) {\n modal.setAttribute('alert-icon', alertIcon);\n }\n modal.setAttribute('close-on-overlay-click', closeOnOverlayClick);\n modal.setAttribute('show-close-button', showCloseButton);\n modal.setAttribute('size', size)\n\n modal.addEventListener('ifxOpen', action('ifxOpen'));\n modal.addEventListener('ifxClose', action('ifxClose'));\n\n const content = document.createElement('div');\n content.setAttribute('slot', 'content');\n content.innerHTML = `\n <span>Modal content</span>\n `;\n modal.appendChild(content);\n const buttons = document.createElement('div');\n buttons.setAttribute('slot', 'buttons');\n\n const cancelButton = document.createElement('ifx-button');\n cancelButton.setAttribute('variant', 'secondary');\n cancelButton.textContent = cancelButtonLabel;\n cancelButton.addEventListener('click', () => {\n console.log('Button 1 clicked');\n });\n\n const primaryButton = document.createElement('ifx-button');\n primaryButton.textContent = okButtonLabel;\n primaryButton.addEventListener('click', () => {\n console.log('Button 2 clicked');\n });\n\n buttons.appendChild(cancelButton);\n buttons.appendChild(primaryButton);\n modal.appendChild(buttons);\n\n const openButton = document.createElement('ifx-button');\n openButton.id = 'open';\n openButton.textContent = 'Open Modal';\n openButton.addEventListener('click', () => {\n modal.opened = true;\n });\n openButton.addEventListener('keydown', event => {\n if (event.key === 'Enter') {\n modal.opened = true;\n }\n });\n\n const storyElement = document.createElement('div');\n storyElement.appendChild(modal);\n storyElement.appendChild(openButton);\n\n return storyElement;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n caption: 'Modal Title',\n showCloseButton: true,\n closeOnOverlayClick: false,\n size: 's',\n variant: 'default',\n};\n\nexport const Alert = Template.bind({});\nAlert.args = {\n caption: 'Alert-Brand Modal Title',\n closeOnOverlayClick: true,\n alertIcon: 'arrowdoen24',\n size: 's',\n variant: 'alert-brand',\n cancelButtonLabel: 'Cancel',\n okButtonLabel: 'OK',\n showCloseButton: false,\n};\n"]}
|
1
|
+
{"version":3,"file":"modal.stories.js","sourceRoot":"","sources":["../../../src/components/modal/modal.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\nimport { icons } from '@infineon/infineon-icons';\n\nexport default {\n title: 'Components/Modal',\n component: 'ifx-modal',\n // tags: ['autodocs'],\n\n args: {\n opened: false,\n cancelButtonLabel: 'Cancel',\n okButtonLabel: 'OK',\n },\n argTypes: {\n caption: {\n control: 'text',\n description: 'Title for the modal.',\n table: {\n category: 'ifx-modal props',\n },\n },\n opened: {\n control: {\n disable: true,\n },\n description: 'Default state of the modal.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'false',\n },\n type: {\n summary: 'Example (in VanillaJs)',\n detail:\n \"const modal = document.getElementById('modal'); \\nconst openButton = document.getElementById('open'); \\n//add DOM event listeners (e.g. click and/or keypress)\\n\\nfunction openModal() { \\nmodal.opened=true;\\n\\nfunction closeModal() { \\nmodal.opened = false; \\n}\",\n },\n },\n },\n closeOnOverlayClick: {\n control: 'boolean',\n description: 'Close the modal when clicking outside the window.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'false',\n }\n }\n },\n showCloseButton: {\n control: 'boolean',\n description: \"Show or hide close button in the modal's header.\",\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'true',\n },\n },\n },\n alertIcon: {\n options: Object.keys(icons),\n control: { type: 'select' },\n description: 'Icon to be displayed in the alert modal.',\n table: {\n category: 'ifx-modal props',\n type: {\n summary: 'string',\n },\n },\n },\n size: {\n options: ['s', 'm', 'l'],\n control: { type: 'radio' },\n description: 'Usable only when screen width is more than 1024px.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 's',\n },\n type: {\n summary: 's | m | l',\n }\n }\n },\n variant: {\n options: ['default', 'alert-brand', 'alert-danger'],\n control: { type: 'radio' },\n description: 'Variant of the modal.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'default',\n },\n type: {\n summary: 'default | alert-brand | alert-danger',\n },\n },\n },\n cancelButtonLabel: {\n control: 'text',\n description: 'Label for the cancel button.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'Cancel',\n },\n type: {\n summary: 'string',\n },\n },\n },\n okButtonLabel: {\n control: 'text',\n description: 'Label for the OK button.',\n table: {\n category: 'ifx-modal props',\n defaultValue: {\n summary: 'OK',\n },\n type: {\n summary: 'string',\n },\n },\n },\n\n ifxOpen: {\n action: 'ifxOpen',\n description: 'Custom event emitted when modal opens.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxOpen={handleChange}\\nVue:@ifxOpen=\"handleChange\"\\nAngular:(ifxOpen)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxOpen\", (event) => {//handle change});',\n },\n },\n },\n ifxClose: {\n action: 'ifxClose',\n description: 'Custom event emitted when modal closes.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxClose={handleChange}\\nVue:@ifxClose=\"handleChange\"\\nAngular:(ifxClose)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxClose\", (event) => {//handle change});',\n },\n },\n },\n },\n};\n\nconst Template = ({ caption, showCloseButton, closeOnOverlayClick, variant, size, alertIcon, cancelButtonLabel, okButtonLabel }) => {\n const modal = document.createElement('ifx-modal');\n modal.setAttribute('caption', caption);\n modal.setAttribute('variant', variant);\n\n if (alertIcon) {\n modal.setAttribute('alert-icon', alertIcon);\n }\n modal.setAttribute('close-on-overlay-click', closeOnOverlayClick);\n modal.setAttribute('show-close-button', showCloseButton);\n modal.setAttribute('size', size)\n\n modal.addEventListener('ifxOpen', action('ifxOpen'));\n modal.addEventListener('ifxClose', action('ifxClose'));\n\n const content = document.createElement('div');\n content.setAttribute('slot', 'content');\n content.innerHTML = `\n <span>Modal content</span>\n `;\n modal.appendChild(content);\n const buttons = document.createElement('div');\n buttons.setAttribute('slot', 'buttons');\n\n const cancelButton = document.createElement('ifx-button');\n cancelButton.setAttribute('variant', 'secondary');\n cancelButton.textContent = cancelButtonLabel;\n cancelButton.addEventListener('click', () => {\n console.log('Button 1 clicked');\n });\n\n const primaryButton = document.createElement('ifx-button');\n primaryButton.textContent = okButtonLabel;\n primaryButton.addEventListener('click', () => {\n console.log('Button 2 clicked');\n });\n\n buttons.appendChild(cancelButton);\n buttons.appendChild(primaryButton);\n modal.appendChild(buttons);\n\n const openButton = document.createElement('ifx-button');\n openButton.id = 'open';\n openButton.textContent = 'Open Modal';\n openButton.addEventListener('click', () => {\n modal.opened = true;\n });\n openButton.addEventListener('keydown', event => {\n if (event.key === 'Enter') {\n modal.opened = true;\n }\n });\n\n const storyElement = document.createElement('div');\n storyElement.appendChild(modal);\n storyElement.appendChild(openButton);\n\n return storyElement;\n};\n\nexport const Default = Template.bind({});\nDefault.args = {\n caption: 'Modal Title',\n showCloseButton: true,\n closeOnOverlayClick: false,\n size: 's',\n variant: 'default',\n};\n\nexport const Alert = Template.bind({});\nAlert.args = {\n caption: 'Alert-Brand Modal Title',\n closeOnOverlayClick: true,\n alertIcon: 'arrowdoen16',\n size: 's',\n variant: 'alert-brand',\n cancelButtonLabel: 'Cancel',\n okButtonLabel: 'OK',\n showCloseButton: false,\n};\n"]}
|