@postnord/pn-marketweb-components 4.1.2 → 4.2.1
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/cjs/pn-chat-message_2.cjs.entry.js +5 -5
- package/cjs/pn-chat-message_2.cjs.entry.js.map +1 -1
- package/cjs/pn-chat.cjs.entry.js +18 -6
- package/cjs/pn-chat.cjs.entry.js.map +1 -1
- package/cjs/pn-language-selector_9.cjs.entry.js +2 -2
- package/cjs/pn-language-selector_9.cjs.entry.js.map +1 -1
- package/cjs/pn-marketweb-siteheader-login-linklist.cjs.entry.js +1 -1
- package/cjs/pn-marketweb-siteheader-login-linklist.cjs.entry.js.map +1 -1
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-linklist.js +1 -1
- package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-linklist.js.map +1 -1
- package/collection/components/navigation/pn-language-selector/pn-language-selector.js +1 -1
- package/collection/components/navigation/pn-language-selector/pn-language-selector.js.map +1 -1
- package/collection/components/navigation/pn-site-selector/pn-site-selector.js +1 -1
- package/collection/components/navigation/pn-site-selector/pn-site-selector.js.map +1 -1
- package/collection/components/widgets/pn-chat/pn-chat-message/pn-chat-message.css +27 -10
- package/collection/components/widgets/pn-chat/pn-chat-message/pn-chat-message.js +3 -3
- package/collection/components/widgets/pn-chat/pn-chat-message/pn-chat-message.js.map +1 -1
- package/collection/components/widgets/pn-chat/pn-chat-stories-constants.js +18 -0
- package/collection/components/widgets/pn-chat/pn-chat-stories-constants.js.map +1 -1
- package/collection/components/widgets/pn-chat/pn-chat.css +24 -13
- package/collection/components/widgets/pn-chat/pn-chat.js +17 -5
- package/collection/components/widgets/pn-chat/pn-chat.js.map +1 -1
- package/collection/components/widgets/pn-chat/pn-chat.stories.js +43 -0
- package/collection/components/widgets/pn-chat/pn-chat.stories.js.map +1 -1
- package/components/pn-chat-message2.js +5 -5
- package/components/pn-chat-message2.js.map +1 -1
- package/components/pn-chat.js +18 -6
- package/components/pn-chat.js.map +1 -1
- package/components/pn-language-selector2.js +1 -1
- package/components/pn-language-selector2.js.map +1 -1
- package/components/pn-marketweb-siteheader-login-linklist2.js +1 -1
- package/components/pn-marketweb-siteheader-login-linklist2.js.map +1 -1
- package/components/pn-site-selector2.js +1 -1
- package/components/pn-site-selector2.js.map +1 -1
- package/esm/pn-chat-message_2.entry.js +5 -5
- package/esm/pn-chat-message_2.entry.js.map +1 -1
- package/esm/pn-chat.entry.js +18 -6
- package/esm/pn-chat.entry.js.map +1 -1
- package/esm/pn-language-selector_9.entry.js +2 -2
- package/esm/pn-language-selector_9.entry.js.map +1 -1
- package/esm/pn-marketweb-siteheader-login-linklist.entry.js +1 -1
- package/esm/pn-marketweb-siteheader-login-linklist.entry.js.map +1 -1
- package/package.json +14 -17
- package/pn-market-web-components/{p-ab291285.entry.js → p-08c96012.entry.js} +2 -2
- package/pn-market-web-components/{p-ab291285.entry.js.map → p-08c96012.entry.js.map} +1 -1
- package/pn-market-web-components/p-4a8ef165.entry.js +2 -0
- package/pn-market-web-components/p-4a8ef165.entry.js.map +1 -0
- package/pn-market-web-components/{p-d5d1098a.entry.js → p-4c8bda8f.entry.js} +2 -2
- package/pn-market-web-components/{p-d5d1098a.entry.js.map → p-4c8bda8f.entry.js.map} +1 -1
- package/pn-market-web-components/p-6f6ed930.entry.js +2 -0
- package/pn-market-web-components/p-6f6ed930.entry.js.map +1 -0
- package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
- package/types/components/widgets/pn-chat/pn-chat-stories-constants.d.ts +18 -0
- package/types/components/widgets/pn-chat/pn-chat.stories.d.ts +1 -0
- package/umd/modules/@postnord/web-components/cjs/pn-date-picker.cjs.entry.js +2 -2
- package/umd/modules/@postnord/web-components/collection/components/input/pn-date-picker/pn-date-picker.js +2 -2
- package/umd/modules/@postnord/web-components/components/pn-date-picker.js +1 -1
- package/umd/modules/@postnord/web-components/esm/pn-date-picker.entry.js +2 -2
- package/umd/modules/@postnord/web-components/hydrate/index.js +2 -2
- package/umd/modules/@postnord/web-components/hydrate/index.mjs +2 -2
- package/umd/modules/@postnord/web-components/package.json +1 -1
- package/umd/modules/@postnord/web-components/postnord-web-components/{p-c3e851f9.entry.js → p-153311c8.entry.js} +1 -1
- package/umd/modules/@postnord/web-components/postnord-web-components/postnord-web-components.esm.js +1 -1
- package/umd/pn-marketweb-init.js +1 -1
- package/umd/pn-marketweb-salesforce.js +1 -1
- package/collection/components/data-visualization/pn-stats-info/pn-stats-info-data/animationHelper.test.js +0 -95
- package/collection/components/data-visualization/pn-stats-info/pn-stats-info-data/animationHelper.test.js.map +0 -1
- package/pn-market-web-components/p-8afc2d30.entry.js +0 -2
- package/pn-market-web-components/p-8afc2d30.entry.js.map +0 -1
- package/pn-market-web-components/p-f97e58b8.entry.js +0 -2
- package/pn-market-web-components/p-f97e58b8.entry.js.map +0 -1
- package/types/components/data-visualization/pn-stats-info/pn-stats-info-data/animationHelper.test.d.ts +0 -1
|
@@ -65,7 +65,7 @@ export class PnMarketwebSiteheaderLoginLinklist {
|
|
|
65
65
|
if (!this.links || this.links.length === 0) {
|
|
66
66
|
return;
|
|
67
67
|
}
|
|
68
|
-
return (h(Host, null, this.heading ? h("
|
|
68
|
+
return (h(Host, null, this.heading ? h("p", { class: "pn-marketweb-siteheader-login-linklist-heading" }, this.heading) : null, h("ul", null, this.links.map(link => {
|
|
69
69
|
{
|
|
70
70
|
return this.showUnifiedLogin ? this.renderListAsLinks(link) : this.renderListAsButtons(link);
|
|
71
71
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pn-marketweb-siteheader-login-linklist.js","sourceRoot":"","sources":["../../../../src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-linklist.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"pn-marketweb-siteheader-login-linklist.js","sourceRoot":"","sources":["../../../../src/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-linklist.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, h, Host, Prop } from '@stencil/core';\n\nimport { state as headerState } from './pn-marketweb-siteheader-store';\nimport { LoginDialogLink } from './pn-marketweb-siteheader-types';\nimport { arrow_right, transfer } from 'pn-design-assets/pn-assets/icons.js';\n\n@Component({\n tag: 'pn-marketweb-siteheader-login-linklist',\n styleUrl: 'pn-marketweb-siteheader-login-linklist.scss',\n})\nexport class PnMarketwebSiteheaderLoginLinklist {\n @Element() hostElement: HTMLElement;\n\n @Prop() heading: string = null;\n @Prop() links: LoginDialogLink[] = [];\n @Prop() idNamespace: string = '';\n @Prop() showUnifiedLogin: boolean = false;\n\n componentWillLoad() {}\n\n uniqueId(text: string) {\n return 'loginlink-' + text.replace(/[^A-Za-z0-9.\\\\\\/]/gim, '') + '-' + this.idNamespace;\n }\n\n linkAppearanceAttributes(link) {\n let attributes = {};\n if (link.linkType) {\n switch (link.linkType) {\n case 'primary':\n attributes = {\n appearance: '',\n variant: '',\n };\n break;\n case 'secondary':\n attributes = {\n appearance: 'light',\n variant: 'outlined',\n };\n break;\n case 'regularlink':\n default:\n attributes = {\n appearance: 'light',\n variant: 'borderless',\n icon: arrow_right,\n };\n break;\n }\n return attributes;\n }\n if (!link.linkType) {\n attributes = {\n appearance: link.primaryLinkApperance ? 'dark' : 'light',\n };\n }\n return attributes;\n }\n\n renderListAsButtons(link) {\n return (\n <li>\n <pn-button\n href={link.href}\n id={this.uniqueId(link.linkText)}\n {...(link.openInNewWindow && { target: '_blank' })}\n {...this.linkAppearanceAttributes(link)}\n onClick={() => {\n if (link.isLogoutLink) {\n headerState.loginManager.clearUserData();\n }\n }}\n >\n {link.linkText}\n </pn-button>\n </li>\n );\n }\n\n renderListAsLinks(link) {\n return (\n <li>\n <a\n href={link.href}\n id={this.uniqueId(link.linkText)}\n {...(link.openInNewWindow && { target: '_blank' })}\n onClick={() => {\n if (link.isLogoutLink) {\n headerState.loginManager.clearUserData();\n }\n }}\n >\n {link.linkText}\n {link.isLogoutLink ? <pn-icon icon={transfer}></pn-icon> : <pn-icon icon={arrow_right}></pn-icon>}\n </a>\n </li>\n );\n }\n\n render() {\n if (!this.links || this.links.length === 0) {\n return;\n }\n return (\n <Host>\n {this.heading ? <p class=\"pn-marketweb-siteheader-login-linklist-heading\">{this.heading}</p> : null}\n <ul>\n {this.links.map(link => {\n {\n return this.showUnifiedLogin ? this.renderListAsLinks(link) : this.renderListAsButtons(link);\n }\n })}\n </ul>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -80,7 +80,7 @@ export class PnlanguageSelector {
|
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
82
|
render() {
|
|
83
|
-
return (h(Host, { key: '51c58ba4d9b206480d1439d4dd9fcf12803e299d', value: this.value }, h("pn-button-dropdown", { key: '
|
|
83
|
+
return (h(Host, { key: '51c58ba4d9b206480d1439d4dd9fcf12803e299d', value: this.value }, h("pn-button-dropdown", { key: 'd025c43d4db63bc312c6d17c97ef9997eebb97cd', label: this.selectedLanguageName, icon: globe, appearance: "light", variant: "borderless", "aria-label": this.i18n.heading }, h("div", { key: 'af8dd3ee81a4b74320025efe5979567341300080', class: "languageselector-nav" }, h("strong", { key: '5c8ea21f8fa63c88e65fb64a1de4b9958c6f498f', class: "languageselector-title" }, this.i18n.heading), h("div", { key: '8308aa54e0201a82ec522e8a55c79aae253ca0d4', class: "languageselector-list", role: "list" }, h("slot", { key: 'ec1c726288ca9098f270ab743e716ef75cdeee47' }))))));
|
|
84
84
|
}
|
|
85
85
|
static get is() { return "pn-language-selector"; }
|
|
86
86
|
static get originalStyleUrls() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pn-language-selector.js","sourceRoot":"","sources":["../../../../src/components/navigation/pn-language-selector/pn-language-selector.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"pn-language-selector.js","sourceRoot":"","sources":["../../../../src/components/navigation/pn-language-selector/pn-language-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, h, State, Host, Watch, Element, Event, EventEmitter } from '@stencil/core';\nimport { LanguageSelectori18n, LanguageSelectorOption } from './pn-language-selector-types';\nimport { translations } from './translations';\nimport { globe } from 'pn-design-assets/pn-assets/icons.js';\n\n@Component({\n tag: 'pn-language-selector',\n styleUrl: 'pn-language-selector.scss',\n})\nexport class PnlanguageSelector {\n @Element() hostElement: HTMLElement;\n /* Current language code */\n @Prop({ reflect: true, mutable: true }) value: string = '';\n\n @State() selectedLanguageName = '';\n @State() options: LanguageSelectorOption[] = [];\n @State() i18n: LanguageSelectori18n;\n\n // Events\n @Event() setLanguage: EventEmitter;\n\n componentWillLoad() {\n this.setInitialSelectedLanguageName();\n this.setTranslations();\n }\n\n componentDidLoad() {\n this.initialize();\n }\n\n initialize() {\n this.setSelectedLanguageName();\n this.addEventBindingsToOptions();\n }\n\n setInitialSelectedLanguageName() {\n if (!window.Intl || !this.value) {\n return;\n }\n const langs = new (Intl as any).DisplayNames([this.value], { type: 'language' });\n if (!langs) {\n return;\n }\n const languageName = langs.of(this.value);\n if (!languageName) {\n return;\n }\n this.selectedLanguageName = languageName.charAt(0).toUpperCase() + languageName.slice(1);\n }\n\n addEventBindingsToOptions() {\n const options = [].slice.apply(this.hostElement.querySelectorAll('pn-language-selector-option')) as HTMLElement[];\n options.map((option: HTMLElement) => {\n option.removeEventListener('setCurrentLanguage', (event: CustomEvent) => {\n this.onSetCurrentLanguage(event.detail as LanguageSelectorOption);\n });\n // Bind event listener for when a user change language\n option.addEventListener('setCurrentLanguage', (event: CustomEvent) => {\n this.onSetCurrentLanguage(event.detail as LanguageSelectorOption);\n });\n });\n }\n\n @Watch('value')\n setSelectedLanguageName() {\n const options = [].slice.apply(this.hostElement.querySelectorAll('pn-language-selector-option')) as HTMLElement[];\n options.map((option: HTMLElement) => {\n // Set current label of language selector\n if (option.getAttribute('code') == this.value) {\n // || option.getAttribute(\"selected\") == \"true\"\n this.selectedLanguageName = option.getAttribute('name');\n }\n });\n }\n\n onSetCurrentLanguage(option: LanguageSelectorOption) {\n this.value = option.code;\n this.selectedLanguageName = option.name;\n this.setLanguage.emit(this.value);\n }\n\n @Watch('value')\n setTranslations() {\n if (translations[this.value]) {\n this.i18n = translations[this.value] as LanguageSelectori18n;\n }\n }\n\n @Watch('value')\n onValueChange() {\n const components = this.hostElement.querySelectorAll('pn-language-selector-option') ?? [];\n components.forEach(component => {\n // Pass values as props into slotted components\n // component.setAttribute(\"current-language\", this.value);\n const isSelected = (component.getAttribute('code') === this.value) + '';\n if (component.getAttribute('selected') + '' !== isSelected) {\n component.setAttribute('selected', isSelected);\n }\n });\n }\n\n render() {\n return (\n <Host value={this.value}>\n <pn-button-dropdown label={this.selectedLanguageName} icon={globe} appearance=\"light\" variant=\"borderless\" aria-label={this.i18n.heading}>\n <div class=\"languageselector-nav\">\n <strong class=\"languageselector-title\">{this.i18n.heading}</strong>\n <div class=\"languageselector-list\" role=\"list\">\n <slot />\n </div>\n </div>\n </pn-button-dropdown>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -18,7 +18,7 @@ export class PnSiteSelector {
|
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
render() {
|
|
21
|
-
return (h(Host, { key: 'ac59e2962f921acb6e7439517a5344992c33d539' }, h("pn-button-dropdown", { key: '
|
|
21
|
+
return (h(Host, { key: 'ac59e2962f921acb6e7439517a5344992c33d539' }, h("pn-button-dropdown", { key: '717d4412cc16fa75cc075df49b89e86b0b29cbc2', label: this.buttontext, icon: angle_small_down, appearance: "light", variant: "borderless", "aria-label": this.i18n.navlabel }, h("div", { key: '3bec2e29f0ff717506c74d036477a31a01ee4ac8', class: "siteselector-nav" }, this.heading ? h("strong", { class: "siteselector-heading" }, this.heading) : null, h("div", { key: '9a0f90ac531974293f687830e35fe3b61eb51cde', role: "menu", class: "siteselector-list" }, h("slot", { key: 'e7c49e2ceaa9c59559b7e43eee5ec0572ec3f8c0' }))))));
|
|
22
22
|
}
|
|
23
23
|
static get is() { return "pn-site-selector"; }
|
|
24
24
|
static get originalStyleUrls() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pn-site-selector.js","sourceRoot":"","sources":["../../../../src/components/navigation/pn-site-selector/pn-site-selector.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAKvE,MAAM,OAAO,cAAc;;0BAIoC,UAAU;uBAEb,UAAU;wBAET,IAAI;oBAC7B,EAAE,QAAQ,EAAE,eAAe,EAAE;;IARpD,WAAW,CAAc;IAUpC,iBAAiB;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,WAAW;QACT,IAAI,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAqB,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,2EAAoB,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,YAAY
|
|
1
|
+
{"version":3,"file":"pn-site-selector.js","sourceRoot":"","sources":["../../../../src/components/navigation/pn-site-selector/pn-site-selector.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAKvE,MAAM,OAAO,cAAc;;0BAIoC,UAAU;uBAEb,UAAU;wBAET,IAAI;oBAC7B,EAAE,QAAQ,EAAE,eAAe,EAAE;;IARpD,WAAW,CAAc;IAUpC,iBAAiB;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,WAAW;QACT,IAAI,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAqB,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,2EAAoB,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAC,OAAO,EAAC,OAAO,EAAC,YAAY,gBAAa,IAAI,CAAC,IAAI,CAAC,QAAQ;gBACxI,4DAAK,KAAK,EAAC,kBAAkB;oBAC1B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAQ,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,OAAO,CAAU,CAAC,CAAC,CAAC,IAAI;oBACnF,4DAAK,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,mBAAmB;wBACxC,8DAAQ,CACJ,CACF,CACa,CAChB,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h, State, Element, Host } from '@stencil/core';\nimport { SiteSelectori18n } from './pn-site-selector-types';\nimport languageData from './pn-site-selector-i18n';\nimport { angle_small_down } from 'pn-design-assets/pn-assets/icons.js';\n@Component({\n tag: 'pn-site-selector',\n styleUrl: 'pn-site-selector.scss',\n})\nexport class PnSiteSelector {\n @Element() hostElement: HTMLElement;\n\n /* Site selector Button text */\n @Prop({ mutable: true, reflect: true }) buttontext: string = 'postnord';\n /* Site selector flyout title */\n @Prop({ mutable: true, reflect: true }) heading: string = 'PostNord';\n /** Specifies which language we want to show navigation in (sv,da,fi,no,en) */\n @Prop({ mutable: true, reflect: true }) language: string = 'sv';\n @State() i18n: SiteSelectori18n = { navlabel: 'Site selector' };\n\n componentWillLoad() {\n this.setLanguage();\n }\n\n setLanguage() {\n if (languageData[this.language]) {\n this.i18n = languageData[this.language] as SiteSelectori18n;\n }\n }\n\n render() {\n return (\n <Host>\n <pn-button-dropdown label={this.buttontext} icon={angle_small_down} appearance=\"light\" variant=\"borderless\" aria-label={this.i18n.navlabel}>\n <div class=\"siteselector-nav\">\n {this.heading ? <strong class=\"siteselector-heading\">{this.heading}</strong> : null}\n <div role=\"menu\" class=\"siteselector-list\">\n <slot />\n </div>\n </div>\n </pn-button-dropdown>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -42,33 +42,40 @@ pn-chat-message .message-container {
|
|
|
42
42
|
border-radius: 0.8rem;
|
|
43
43
|
display: flex;
|
|
44
44
|
gap: 1rem;
|
|
45
|
-
max-width:
|
|
45
|
+
max-width: 85%;
|
|
46
46
|
overflow-x: hidden;
|
|
47
47
|
}
|
|
48
48
|
pn-chat-message .message-container .category {
|
|
49
49
|
width: 2.6rem;
|
|
50
50
|
}
|
|
51
|
-
pn-chat-message .message-container.
|
|
51
|
+
pn-chat-message .message-container.user {
|
|
52
|
+
max-width: 75%;
|
|
53
|
+
}
|
|
54
|
+
pn-chat-message .message-container.bot .message, pn-chat-message .message-container.agent .message, pn-chat-message .message-container.link .message {
|
|
52
55
|
background-color: #f3f2f2;
|
|
53
56
|
}
|
|
57
|
+
pn-chat-message .message-container.bot .category, pn-chat-message .message-container.agent .category, pn-chat-message .message-container.link .category {
|
|
58
|
+
align-self: flex-end;
|
|
59
|
+
}
|
|
54
60
|
pn-chat-message .message-container.link {
|
|
55
61
|
flex-basis: 100%;
|
|
56
62
|
}
|
|
63
|
+
pn-chat-message .message-container.link .category {
|
|
64
|
+
align-self: center;
|
|
65
|
+
}
|
|
66
|
+
pn-chat-message .message-container.link .content {
|
|
67
|
+
line-height: 1.5;
|
|
68
|
+
}
|
|
57
69
|
pn-chat-message .message-container.link .message {
|
|
58
|
-
background-color: #effbff;
|
|
59
|
-
box-shadow: 0px 0.6px 1.8px 0px rgba(0, 0, 0, 0.1), 0px 3.2px 7.2px 0px rgba(0, 0, 0, 0.13);
|
|
60
|
-
transition: box-shadow ease-in-out 0.5s;
|
|
61
70
|
padding: 0;
|
|
62
71
|
}
|
|
63
|
-
pn-chat-message .message-container.link .message:hover {
|
|
64
|
-
box-shadow: 0px 0.6px 1.8px 0px rgba(0, 0, 0, 0.2), 0px 3.2px 7.2px 0px rgba(0, 0, 0, 0.23);
|
|
65
|
-
}
|
|
66
72
|
pn-chat-message .message-container.link .message a {
|
|
67
|
-
color: #
|
|
73
|
+
color: #005d92;
|
|
74
|
+
font-weight: 500;
|
|
68
75
|
display: flex;
|
|
69
76
|
justify-content: space-between;
|
|
70
77
|
padding: 1rem 1.6rem;
|
|
71
|
-
text-decoration:
|
|
78
|
+
text-decoration: underline;
|
|
72
79
|
}
|
|
73
80
|
pn-chat-message .message-container.link .business.message {
|
|
74
81
|
background-color: #fdefee;
|
|
@@ -81,6 +88,16 @@ pn-chat-message .message-container.button {
|
|
|
81
88
|
pn-chat-message .message-container.button .message {
|
|
82
89
|
padding: 0;
|
|
83
90
|
}
|
|
91
|
+
pn-chat-message .message-container.button .pn-button {
|
|
92
|
+
min-width: 18rem;
|
|
93
|
+
}
|
|
94
|
+
pn-chat-message .message-container.button .pn-button:disabled {
|
|
95
|
+
color: #969087;
|
|
96
|
+
}
|
|
97
|
+
pn-chat-message .message-container.button .pn-button:disabled .pn-button-bg {
|
|
98
|
+
border-color: #f3f2f2;
|
|
99
|
+
background-color: #f3f2f2;
|
|
100
|
+
}
|
|
84
101
|
pn-chat-message .message-container.card {
|
|
85
102
|
border: solid 1px #d3cecb;
|
|
86
103
|
border-radius: 1.6rem;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Host, h } from "@stencil/core";
|
|
2
|
-
import {
|
|
2
|
+
import { link } from "pn-design-assets/pn-assets/icons.js";
|
|
3
3
|
export class PnChatMessage {
|
|
4
4
|
constructor() {
|
|
5
5
|
this.category = undefined;
|
|
@@ -16,7 +16,7 @@ export class PnChatMessage {
|
|
|
16
16
|
case 'Agent':
|
|
17
17
|
return this.agentName;
|
|
18
18
|
case 'Link':
|
|
19
|
-
return
|
|
19
|
+
return link;
|
|
20
20
|
}
|
|
21
21
|
return icon;
|
|
22
22
|
}
|
|
@@ -35,7 +35,7 @@ export class PnChatMessage {
|
|
|
35
35
|
render() {
|
|
36
36
|
const segmentClass = this.customerSegment?.toLowerCase() || '';
|
|
37
37
|
const categoryClass = this.category?.toLowerCase() || '';
|
|
38
|
-
return (h(Host, { key: '
|
|
38
|
+
return (h(Host, { key: 'ecf8acc954eed04ff21f75c0a371f3014c3f157e', class: this.getMessageClass() }, h("div", { key: '116ef983feb42adec2ab216af8d91301308216a8', class: `message-container ${categoryClass}` }, this.getIcon() && (h("span", { key: 'aa873a62b005f0290d9c7b8f8b7194a29582d5a8', class: "category" }, h("pn-icon", { key: 'd0ffed7af74c0729cad09ec2a74feff48be31718', icon: this.getIcon(), color: this.blue700, "aria-hidden": "true", role: "presentation" }))), h("span", { key: '61c88e4e7febf6b3da957006c5409e927aad768d', class: `message ${segmentClass}` }, h("slot", { key: '95e479cc6a6b4940ac01275affc27cc99585b8eb' })))));
|
|
39
39
|
}
|
|
40
40
|
static get is() { return "pn-chat-message"; }
|
|
41
41
|
static get originalStyleUrls() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pn-chat-message.js","sourceRoot":"","sources":["../../../../../src/components/widgets/pn-chat/pn-chat-message/pn-chat-message.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"pn-chat-message.js","sourceRoot":"","sources":["../../../../../src/components/widgets/pn-chat/pn-chat-message/pn-chat-message.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,IAAI,EAAQ,MAAM,qCAAqC,CAAC;AAQjE,MAAM,OAAO,aAAa;;;;;;IAKhB,SAAS,GAAW,uwDAAuwD,CAAC;IAC5xD,OAAO,GAAG,SAAS,CAAC;IAE5B,OAAO;QACL,IAAI,IAAI,GAAG,IAAI,CAAC;QAEhB,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,SAAS,CAAC;YACxB,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,SAAS,CAAC;YACxB,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe;QACb,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,KAAK,gBAAgB;gBACnB,OAAO,gBAAgB,CAAC;YAC1B,KAAK,MAAM;gBACT,OAAO,MAAM,CAAC;YAChB,KAAK,QAAQ;gBACX,OAAO,gBAAgB,CAAC;YAC1B;gBACE,OAAO,SAAS,CAAC;QACrB,CAAC;IACH,CAAC;IAED,MAAM;QACJ,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACzD,OAAO,CACL,EAAC,IAAI,qDAAC,KAAK,EAAG,IAAI,CAAC,eAAe,EAAE;YAClC,4DAAK,KAAK,EAAE,qBAAqB,aAAa,EAAE;gBAC7C,IAAI,CAAC,OAAO,EAAE,IAAI,CACjB,6DAAM,KAAK,EAAC,UAAU;oBACpB,gEAAS,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,iBAAc,MAAM,EAAC,IAAI,EAAC,cAAc,GAAW,CAChG,CACR;gBACD,6DAAM,KAAK,EAAE,WAAW,YAAY,EAAE;oBACpC,8DAAa,CACR,CACH,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, Prop, h } from '@stencil/core';\nimport { link, user } from 'pn-design-assets/pn-assets/icons.js';\n\nimport { AgentMessage, CustomerSegment, MessageCategory } from '../types';\n\n@Component({\n tag: 'pn-chat-message',\n styleUrl: 'pn-chat-message.scss',\n})\nexport class PnChatMessage {\n @Prop() category!: MessageCategory;\n @Prop() customerSegment!: CustomerSegment;\n @Prop() agentName: string;\n\n private robotIcon: string = '<?xml version=\"1.0\" encoding=\"UTF-8\"?> <svg id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.1\" viewBox=\"0 0 20 20\"> <!-- Generator: Adobe Illustrator 29.5.1, SVG Export Plug-In . SVG Version: 2.1.0 Build 141) --> <defs> <style> .st0 { fill: none; } .st1 { fill: #8eddf9; } .st2 { fill: #f3f2f2; } .st3 { fill: #0d234b; } .st4 { fill: #f06365; } .st5 { clip-path: url(#clippath); } .st6 { fill: #005d92; } </style> <clipPath id=\"clippath\"> <rect class=\"st0\" width=\"20\" height=\"20\"/> </clipPath> </defs> <g class=\"st5\"> <g> <path class=\"st2\" d=\"M10,20c5.5,0,10-4.5,10-10S15.5,0,10,0,0,4.5,0,10s4.5,10,10,10Z\"/> <path class=\"st3\" d=\"M10.5,4h-.5v2.8h.5v-2.8Z\"/> <path class=\"st3\" d=\"M10.2,4.3c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z\"/> <path class=\"st3\" d=\"M9,5h2.4c1,0,1.8.8,1.8,1.8h-6c0-1,.8-1.8,1.8-1.8Z\"/> <path class=\"st4\" d=\"M17,10.3v-.8c0-1.9-1.5-3.5-3.5-3.5h-7.1c-1.9,0-3.5,1.6-3.5,3.5v.8h14.1Z\"/> <path d=\"M13.9,16.1l-3.7.4v-.4s3.6-.4,3.6-.4c.8,0,1.6-.4,2.1-1s.7-2.9.7-3.7h.4c0,.9-.2,3.3-.8,3.9-.6.7-1.4,1.1-2.3,1.2Z\"/> <path class=\"st4\" d=\"M16.3,12.1v-3.6h.2c1,0,1.8.8,1.8,1.8s-.8,1.8-1.8,1.8h-.2Z\"/> <path class=\"st4\" d=\"M3.7,8.5v3.6h-.2c-1,0-1.8-.8-1.8-1.8s.8-1.8,1.8-1.8h.2Z\"/> <path class=\"st3\" d=\"M13.1,6.6h-6.2c-1.8,0-3.3,1.5-3.3,3.3v2.1c0,1.8,1.5,3.3,3.3,3.3h6.2c1.8,0,3.3-1.5,3.3-3.3v-2.1c0-1.8-1.5-3.3-3.3-3.3Z\"/> <path class=\"st6\" d=\"M12.8,7.8h-5.6c-1.4,0-2.5,1.1-2.5,2.5v1.4c0,1.4,1.1,2.4,2.5,2.4h5.6c1.4,0,2.4-1.1,2.4-2.4v-1.4c0-1.4-1.1-2.5-2.4-2.5Z\"/> <path class=\"st1\" d=\"M12.3,11.9c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z\"/> <path class=\"st1\" d=\"M7.7,11.9c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z\"/> <path d=\"M11,15.8h-1.5c-.3,0-.5.2-.5.5h0c0,.3.2.5.5.5h1.5c.3,0,.5-.2.5-.5h0c0-.3-.2-.5-.5-.5Z\"/> </g> </g> </svg>';\n private blue700 = 'blue700';\n\n getIcon() {\n let icon = null;\n \n switch (this.category) {\n case 'Bot':\n return this.robotIcon;\n case 'Agent':\n return this.agentName;\n case 'Link':\n return link;\n }\n\n return icon;\n }\n\n getMessageClass(): string {\n switch (this.category) {\n case 'ButtonResponse':\n return 'buttonresponse';\n case 'User':\n return 'user';\n case 'System':\n return 'system-message';\n default: \n return undefined;\n }\n }\n\n render() {\n const segmentClass = this.customerSegment?.toLowerCase() || '';\n const categoryClass = this.category?.toLowerCase() || '';\n return (\n <Host class={ this.getMessageClass() }>\n <div class={`message-container ${categoryClass}`}>\n {this.getIcon() && (\n <span class=\"category\">\n <pn-icon icon={this.getIcon()} color={this.blue700} aria-hidden=\"true\" role=\"presentation\"></pn-icon>\n </span>\n )}\n <span class={`message ${segmentClass}`}>\n <slot></slot>\n </span>\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -33,6 +33,24 @@ export const hardcodedMessages = {
|
|
|
33
33
|
"category": "Bot",
|
|
34
34
|
"content": "Om du har ett kollinummer som berör din fråga, skriv gärna det här.",
|
|
35
35
|
"messageId": "90845d71-2a8e-4b1a-bd45-20de7a2dbe5f"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"category": "Link",
|
|
39
|
+
"content": "Postnord.se",
|
|
40
|
+
"href": "https://www.postnord.se/",
|
|
41
|
+
"messageId": "90845d71-2a8e-4b1a-bd45-20de7a2dbe5t"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"category": "Button",
|
|
45
|
+
"content": "Click me",
|
|
46
|
+
"messageId": "90845d71-2a8e-4b1a-bd45-20de7a2dbe5l",
|
|
47
|
+
"props": "{\"appearance\": \"light\", \"variant\": \"outlined\", \"data-option-choice\": \"\", \"data-action\": \"choice\"}"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"category": "Button",
|
|
51
|
+
"content": "Click me 2",
|
|
52
|
+
"messageId": "90845d71-2a8e-4b1a-bd45-20de7a2dbe5l3",
|
|
53
|
+
"props": "{\"appearance\": \"light\", \"variant\": \"outlined\", \"data-option-choice\": \"\", \"data-action\": \"choice\"}"
|
|
36
54
|
}
|
|
37
55
|
]
|
|
38
56
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pn-chat-stories-constants.js","sourceRoot":"","sources":["../../../../src/components/widgets/pn-chat/pn-chat-stories-constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;;;IAGvB,CAAC;AAEL,MAAM,CAAC,MAAM,iBAAiB,GAC9B;IACE,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,IAAI;KACf;IACD,UAAU,EAAE;QACV;YACE,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,gDAAgD;YAC3D,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,wJAAwJ;YACnK,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,yBAAyB;YACpC,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,MAAM;YAClB,SAAS,EAAE,4BAA4B;YACvC,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,qEAAqE;YAChF,WAAW,EAAE,sCAAsC;SACpD;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,MAAM,EAAE;QACN,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI;KACb;IACD,QAAQ,EAAE;QACR;YACE,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,sCAAsC;YAC7C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,sCAAsC;YAC7C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,sFAAsF;YAC/F,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,sCAAsC;YAC7C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,sCAAsC;YAC7C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,sFAAsF;YAC/F,SAAS,EAAE,sCAAsC;SAClD;KACF;CACF,CAAC","sourcesContent":["export const styleSample = `\n .sb-story,.sb-show-main { border: solid 1px #333; height: 500px; width: 800px; padding:40px; position: relative;}\n .pn-chat { position:absolute; right:50px ;bottom:50px; transform-origin: bottom right }\n }`;\n\nexport const hardcodedMessages = \n{\n \"header\": {\n \"body\": null,\n \"button\": null\n },\n \"messages\": [\n {\n \"category\": \"System\",\n \"content\": \"A customer service agent has entered the chat.\",\n \"messageId\": \"14584740-7784-4749-9b39-bce31455ea55\"\n },\n {\n \"category\": \"Bot\",\n \"content\": \"Varmt välkommen till PostNords virtuella assistent. Jag kan hjälpa dig med frågor gällande brev och paket samt skicka dig vidare till vår kundservice.\",\n \"messageId\": \"967ddba6-ba1c-44d1-9725-386b32dc3498\"\n },\n {\n \"category\": \"Bot\",\n \"content\": \"Hur kan jag hjälpa dig?\",\n \"messageId\": \"b26624af-852b-49cf-a3e6-77cc046be71f\"\n },\n {\n \"class\": null,\n \"category\": \"User\",\n \"content\": \"hejsan vart är mitt paket?\",\n \"messageId\": \"74cadc59-86ad-4f11-b4b6-a263aa9dbad9\"\n },\n {\n \"category\": \"Bot\",\n \"content\": \"Om du har ett kollinummer som berör din fråga, skriv gärna det här.\",\n \"messageId\": \"90845d71-2a8e-4b1a-bd45-20de7a2dbe5f\"\n }\n ]\n};\n\nexport const messageObjectReal = {\n header: {\n body: null,\n button: null\n },\n messages: [\n {\n class: null,\n category: \"User\",\n content: \"test\",\n messageId: \"4a703929-4f6c-47df-bfc1-5a4ca6e31531\"\n },\n {\n class: null,\n category: \"User\",\n content: \"test\",\n messageId: \"00000000-0000-0000-0000-000000000000\"\n },\n {\n class: null,\n category: \"User\",\n content: \"m\",\n messageId: \"55d2851f-66d5-47d8-a4f7-1114a22d3d16\"\n },\n {\n class: \"\",\n props: \"1ef8d9da-316b-45de-b56a-ec595b8baef3\",\n category: \"Button\",\n content: \"End Chat\",\n messageId: \"4cd676a7-5e8f-4781-b263-45a5ab1bc0e1\"\n },\n {\n class: \"\",\n props: \"9290fec2-bf1f-4713-9060-5f88ff8a7420\",\n category: \"Button\",\n content: \"Chat with Agent\",\n messageId: \"4cd676a7-5e8f-4781-b263-45a5ab1bc0e1\"\n },\n {\n category: \"Bot\",\n content: \"Welcome! I am the PN bot. How can I help you today?\\nPlease select an option below :\",\n messageId: \"4cd676a7-5e8f-4781-b263-45a5ab1bc0e1\"\n },\n {\n class: \"\",\n props: \"fb0b3b50-97a0-40f7-872a-fc6d7ed0d379\",\n category: \"Button\",\n content: \"End Chat\",\n messageId: \"2ecd1b25-8790-40a4-a596-efe0881f7519\"\n },\n {\n class: \"\",\n props: \"598e284a-4480-4e09-8f69-6c7046fea704\",\n category: \"Button\",\n content: \"Chat with Agent\",\n messageId: \"2ecd1b25-8790-40a4-a596-efe0881f7519\"\n },\n {\n category: \"Bot\",\n content: \"Welcome! I am the PN bot. How can I help you today?\\nPlease select an option below :\",\n messageId: \"2ecd1b25-8790-40a4-a596-efe0881f7519\"\n }\n ]\n};\n\n"]}
|
|
1
|
+
{"version":3,"file":"pn-chat-stories-constants.js","sourceRoot":"","sources":["../../../../src/components/widgets/pn-chat/pn-chat-stories-constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;;;IAGvB,CAAC;AAEL,MAAM,CAAC,MAAM,iBAAiB,GAC9B;IACE,QAAQ,EAAE;QACR,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,IAAI;KACf;IACD,UAAU,EAAE;QACV;YACE,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,gDAAgD;YAC3D,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,wJAAwJ;YACnK,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,yBAAyB;YACpC,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,MAAM;YAClB,SAAS,EAAE,4BAA4B;YACvC,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,qEAAqE;YAChF,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,UAAU,EAAE,MAAM;YAClB,SAAS,EAAE,aAAa;YACxB,MAAM,EAAE,0BAA0B;YAClC,WAAW,EAAE,sCAAsC;SACpD;QACD;YACE,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,sCAAsC;YACnD,OAAO,EAAE,mHAAmH;SAC7H;QACD;YACE,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,YAAY;YACvB,WAAW,EAAE,uCAAuC;YACpD,OAAO,EAAE,mHAAmH;SAC7H;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,MAAM,EAAE;QACN,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI;KACb;IACD,QAAQ,EAAE;QACR;YACE,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,sCAAsC;YAC7C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,sCAAsC;YAC7C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,sFAAsF;YAC/F,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,sCAAsC;YAC7C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,sCAAsC;YAC7C,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,sCAAsC;SAClD;QACD;YACE,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,sFAAsF;YAC/F,SAAS,EAAE,sCAAsC;SAClD;KACF;CACF,CAAC","sourcesContent":["export const styleSample = `\n .sb-story,.sb-show-main { border: solid 1px #333; height: 500px; width: 800px; padding:40px; position: relative;}\n .pn-chat { position:absolute; right:50px ;bottom:50px; transform-origin: bottom right }\n }`;\n\nexport const hardcodedMessages = \n{\n \"header\": {\n \"body\": null,\n \"button\": null\n },\n \"messages\": [\n {\n \"category\": \"System\",\n \"content\": \"A customer service agent has entered the chat.\",\n \"messageId\": \"14584740-7784-4749-9b39-bce31455ea55\"\n },\n {\n \"category\": \"Bot\",\n \"content\": \"Varmt välkommen till PostNords virtuella assistent. Jag kan hjälpa dig med frågor gällande brev och paket samt skicka dig vidare till vår kundservice.\",\n \"messageId\": \"967ddba6-ba1c-44d1-9725-386b32dc3498\"\n },\n {\n \"category\": \"Bot\",\n \"content\": \"Hur kan jag hjälpa dig?\",\n \"messageId\": \"b26624af-852b-49cf-a3e6-77cc046be71f\"\n },\n {\n \"class\": null,\n \"category\": \"User\",\n \"content\": \"hejsan vart är mitt paket?\",\n \"messageId\": \"74cadc59-86ad-4f11-b4b6-a263aa9dbad9\"\n },\n {\n \"category\": \"Bot\",\n \"content\": \"Om du har ett kollinummer som berör din fråga, skriv gärna det här.\",\n \"messageId\": \"90845d71-2a8e-4b1a-bd45-20de7a2dbe5f\"\n },\n {\n \"category\": \"Link\",\n \"content\": \"Postnord.se\",\n \"href\": \"https://www.postnord.se/\",\n \"messageId\": \"90845d71-2a8e-4b1a-bd45-20de7a2dbe5t\"\n },\n {\n \"category\": \"Button\",\n \"content\": \"Click me\",\n \"messageId\": \"90845d71-2a8e-4b1a-bd45-20de7a2dbe5l\",\n \"props\": \"{\\\"appearance\\\": \\\"light\\\", \\\"variant\\\": \\\"outlined\\\", \\\"data-option-choice\\\": \\\"\\\", \\\"data-action\\\": \\\"choice\\\"}\"\n },\n {\n \"category\": \"Button\",\n \"content\": \"Click me 2\",\n \"messageId\": \"90845d71-2a8e-4b1a-bd45-20de7a2dbe5l3\",\n \"props\": \"{\\\"appearance\\\": \\\"light\\\", \\\"variant\\\": \\\"outlined\\\", \\\"data-option-choice\\\": \\\"\\\", \\\"data-action\\\": \\\"choice\\\"}\"\n }\n ]\n};\n\nexport const messageObjectReal = {\n header: {\n body: null,\n button: null\n },\n messages: [\n {\n class: null,\n category: \"User\",\n content: \"test\",\n messageId: \"4a703929-4f6c-47df-bfc1-5a4ca6e31531\"\n },\n {\n class: null,\n category: \"User\",\n content: \"test\",\n messageId: \"00000000-0000-0000-0000-000000000000\"\n },\n {\n class: null,\n category: \"User\",\n content: \"m\",\n messageId: \"55d2851f-66d5-47d8-a4f7-1114a22d3d16\"\n },\n {\n class: \"\",\n props: \"1ef8d9da-316b-45de-b56a-ec595b8baef3\",\n category: \"Button\",\n content: \"End Chat\",\n messageId: \"4cd676a7-5e8f-4781-b263-45a5ab1bc0e1\"\n },\n {\n class: \"\",\n props: \"9290fec2-bf1f-4713-9060-5f88ff8a7420\",\n category: \"Button\",\n content: \"Chat with Agent\",\n messageId: \"4cd676a7-5e8f-4781-b263-45a5ab1bc0e1\"\n },\n {\n category: \"Bot\",\n content: \"Welcome! I am the PN bot. How can I help you today?\\nPlease select an option below :\",\n messageId: \"4cd676a7-5e8f-4781-b263-45a5ab1bc0e1\"\n },\n {\n class: \"\",\n props: \"fb0b3b50-97a0-40f7-872a-fc6d7ed0d379\",\n category: \"Button\",\n content: \"End Chat\",\n messageId: \"2ecd1b25-8790-40a4-a596-efe0881f7519\"\n },\n {\n class: \"\",\n props: \"598e284a-4480-4e09-8f69-6c7046fea704\",\n category: \"Button\",\n content: \"Chat with Agent\",\n messageId: \"2ecd1b25-8790-40a4-a596-efe0881f7519\"\n },\n {\n category: \"Bot\",\n content: \"Welcome! I am the PN bot. How can I help you today?\\nPlease select an option below :\",\n messageId: \"2ecd1b25-8790-40a4-a596-efe0881f7519\"\n }\n ]\n};\n\n"]}
|
|
@@ -31,9 +31,9 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
31
31
|
display: flex;
|
|
32
32
|
flex-direction: column;
|
|
33
33
|
height: 600px;
|
|
34
|
-
width:
|
|
34
|
+
width: 400px;
|
|
35
35
|
max-width: 400px;
|
|
36
|
-
box-shadow: 0 4px
|
|
36
|
+
box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25), 0 -2px 4px 0 rgba(240, 240, 240, 0.55);
|
|
37
37
|
border-radius: 1.6rem;
|
|
38
38
|
}
|
|
39
39
|
@media (max-width: 768px) {
|
|
@@ -56,13 +56,13 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
.pn-chat .chat-header {
|
|
59
|
-
background-color: #
|
|
60
|
-
color: #ffffff;
|
|
59
|
+
background-color: #ffffff;
|
|
61
60
|
padding: 0.8rem;
|
|
62
61
|
padding-left: 1.6rem;
|
|
63
62
|
display: flex;
|
|
64
63
|
justify-content: space-between;
|
|
65
64
|
align-items: center;
|
|
65
|
+
border-bottom: 1px solid #f3f2f2;
|
|
66
66
|
}
|
|
67
67
|
@media (min-width: 768px) {
|
|
68
68
|
.pn-chat .chat-header {
|
|
@@ -74,15 +74,20 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
74
74
|
}
|
|
75
75
|
.pn-chat .chat-header pn-button.minimize-btn button.pn-button {
|
|
76
76
|
padding-bottom: 0;
|
|
77
|
+
margin-right: 1rem;
|
|
77
78
|
}
|
|
78
79
|
.pn-chat .chat-header pn-button.minimize-btn button.pn-button .pn-button-content {
|
|
79
80
|
align-items: flex-end;
|
|
81
|
+
position: absolute;
|
|
82
|
+
bottom: 0px;
|
|
80
83
|
}
|
|
81
84
|
.pn-chat .chat-header #chat-title {
|
|
82
85
|
margin: 0;
|
|
83
|
-
font-size:
|
|
84
|
-
font-weight:
|
|
85
|
-
line-height: 1
|
|
86
|
+
font-size: 1.6rem;
|
|
87
|
+
font-weight: 500;
|
|
88
|
+
line-height: 1;
|
|
89
|
+
height: 100%;
|
|
90
|
+
align-content: center;
|
|
86
91
|
}
|
|
87
92
|
.pn-chat .chat-main {
|
|
88
93
|
display: flex;
|
|
@@ -92,15 +97,12 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
92
97
|
gap: 1.6rem;
|
|
93
98
|
padding: 1.6rem;
|
|
94
99
|
padding-bottom: 3.2rem;
|
|
95
|
-
border-left: 1px solid #d3cecb;
|
|
96
|
-
border-right: 1px solid #d3cecb;
|
|
97
100
|
background-color: #ffffff;
|
|
98
101
|
}
|
|
99
102
|
.pn-chat .chat-main.loading-chat-main {
|
|
100
103
|
display: flex;
|
|
101
104
|
justify-content: center;
|
|
102
105
|
align-items: center;
|
|
103
|
-
padding-bottom: 1.6rem;
|
|
104
106
|
}
|
|
105
107
|
.pn-chat .chat-loading-spinner {
|
|
106
108
|
background-color: #005d92;
|
|
@@ -147,8 +149,8 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
147
149
|
}
|
|
148
150
|
.pn-chat .chat-footer {
|
|
149
151
|
background: #ffffff;
|
|
150
|
-
border: 1px solid #
|
|
151
|
-
border-
|
|
152
|
+
border-top: 1px solid #f3f2f2;
|
|
153
|
+
border-radius: 0 0 1.6rem 1.6rem;
|
|
152
154
|
}
|
|
153
155
|
.pn-chat .chat-footer .form {
|
|
154
156
|
display: flex;
|
|
@@ -164,12 +166,12 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
164
166
|
border-radius: 6.4rem;
|
|
165
167
|
}
|
|
166
168
|
.pn-chat .chat-input-container .chat-text-input {
|
|
167
|
-
text-indent: 0.8rem;
|
|
168
169
|
border: none;
|
|
169
170
|
background: transparent;
|
|
170
171
|
width: 100%;
|
|
171
172
|
outline: 0.2rem solid transparent;
|
|
172
173
|
outline-offset: 0.2rem;
|
|
174
|
+
padding-left: 1.6rem;
|
|
173
175
|
}
|
|
174
176
|
.pn-chat .chat-input-container .chat-text-input:focus {
|
|
175
177
|
border-radius: 6.4rem;
|
|
@@ -177,6 +179,11 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
177
179
|
.pn-chat .chat-input-container .chat-text-input:focus-visible {
|
|
178
180
|
outline-color: #005d92;
|
|
179
181
|
}
|
|
182
|
+
.pn-chat .chat-input-container .chat-text-input::placeholder {
|
|
183
|
+
top: 2px;
|
|
184
|
+
position: relative;
|
|
185
|
+
color: #969087;
|
|
186
|
+
}
|
|
180
187
|
.pn-chat .chat-input-container .chat-disabled-button {
|
|
181
188
|
display: flex;
|
|
182
189
|
width: 3.5em;
|
|
@@ -230,6 +237,10 @@ pn-button-dropdown .pn-button-dropdown > pn-button > .pn-button {
|
|
|
230
237
|
margin-bottom: 2rem;
|
|
231
238
|
visibility: hidden;
|
|
232
239
|
}
|
|
240
|
+
.pn-chat .minimize-btn .pn-button pn-icon .pn-icon-svg path,
|
|
241
|
+
.pn-chat .close-btn .pn-button pn-icon .pn-icon-svg path {
|
|
242
|
+
fill: #005d92;
|
|
243
|
+
}
|
|
233
244
|
|
|
234
245
|
@media (max-width: 768px) {
|
|
235
246
|
body.chat-open {
|
|
@@ -319,16 +319,28 @@ export class PnChat {
|
|
|
319
319
|
}
|
|
320
320
|
catch (error) {
|
|
321
321
|
console.error('Error parsing button props', error instanceof Error ? error.message : 'Unknown error');
|
|
322
|
+
return;
|
|
322
323
|
}
|
|
323
324
|
}
|
|
324
|
-
const handleClick = () => {
|
|
325
|
+
const handleClick = (event) => {
|
|
326
|
+
const button = event.target.closest('button');
|
|
327
|
+
if (button === null || button?.hasAttribute('disabled')) {
|
|
328
|
+
event.preventDefault();
|
|
329
|
+
event.stopPropagation();
|
|
330
|
+
return;
|
|
331
|
+
}
|
|
325
332
|
if (props['data-action'] === 'minimize') {
|
|
326
333
|
this.toggleChat();
|
|
327
334
|
}
|
|
328
|
-
if (props['
|
|
335
|
+
if (props['data-action'] === 'choice') {
|
|
329
336
|
(async () => {
|
|
330
|
-
await this.handleSendChoice(props['
|
|
337
|
+
await this.handleSendChoice(props['data-option-choice'], message.content);
|
|
331
338
|
})();
|
|
339
|
+
const choiceButtons = document.querySelectorAll('[data-action="choice"]');
|
|
340
|
+
choiceButtons.forEach(pnButton => {
|
|
341
|
+
const buttonInner = pnButton.querySelector('button');
|
|
342
|
+
buttonInner?.setAttribute('disabled', 'true');
|
|
343
|
+
});
|
|
332
344
|
}
|
|
333
345
|
};
|
|
334
346
|
return (h("pn-chat-message", { customerSegment: this.customerSegment, category: message.category }, h("pn-button", { class: message.class, role: "button", ...props, onClick: handleClick, onKeyDown: e => this.handleButtonKeyDown(e) }, message.content)));
|
|
@@ -361,9 +373,9 @@ export class PnChat {
|
|
|
361
373
|
const mainId = 'chat-main';
|
|
362
374
|
const inputId = 'chat-input';
|
|
363
375
|
const headerButton = this.messagesData?.header.button;
|
|
364
|
-
return (h(Host, { key: '
|
|
376
|
+
return (h(Host, { key: 'd1b6d427a15513a46277479ece1bce7e20a1044b', class: this.customerSegment }, !this.isClosed && this.messagesData && (h("div", { key: 'ecee6b29d3730789fd4994d7a59d32166b68653e', class: `pn-chat ${this.isMinimized ? 'minimized' : ''} ${this.isClosed ? 'closed' : ''}`, ref: el => (this.chatRef = el), role: "region", "aria-label": this.mainHeading }, !this.isMinimized && (h(Fragment, { key: '5a4fe8af5e224b59dfb53fc4c24f84041c3f8742' }, h("header", { key: 'dad77c1594f447014fcfa02dd672eb7f55d8b0d4', class: "chat-header", role: "banner" }, h("h1", { key: '2db55d9cf2e638655d5b9eb8dba92e383b81699d', id: "chat-title" }, this.mainHeading), h("div", { key: 'd5a0b03b057e16af35fc9ea61cc4e278cb3d2068', class: "chat-controls", role: "toolbar", "aria-label": this.getTranslation('chatControlsAriaLabel') }, h("pn-button", { key: '992249d07b8f6f19d6fcdf9eb4fc11efe8f63e1f', icon: minus, "icon-only": "true", class: "minimize-btn", onClick: this.toggleChat, "aria-expanded": !this.isMinimized, "aria-controls": mainId, "aria-label": this.getTranslation('minimizeChatAriaLabel'), appearance: "light", tooltip: this.getTranslation('minimizeChatAriaLabel'), small: "true" }), h("pn-button", { key: 'eeed9e762baf7ecb315e43300001f3279f14e563', icon: close, "icon-only": "true", class: "close-btn", onClick: this.closeChat, "aria-expanded": !this.isMinimized, "aria-label": this.getTranslation('closeChatAriaLabel'), appearance: "light", tooltip: this.getTranslation('closeChatAriaLabel'), small: "true" }))), (this.messagesData?.messages?.length ?? 0) > 0 ?
|
|
365
377
|
(h("main", { id: mainId, class: "chat-main", role: "main", "aria-labelledby": "chat-title" }, this.messagesData.header && (h("div", { class: "chat-overview" }, h("div", { class: "body" }, this.messagesData.header.body), headerButton && (h("pn-button", { href: headerButton.href, class: headerButton.class, appearance: headerButton.appearance, variant: headerButton.variant, small: headerButton.small, role: "button", onKeyDown: e => this.handleButtonKeyDown(e) }, headerButton.content)))), h("div", { ref: el => (this.chatMessagesContainer = el), class: "chat-messages", role: "log", "aria-live": "polite", "aria-label": this.getTranslation('chatMessagesAriaLabel') }, this.groupMessages()), h("pn-icon", { class: "indicator-icon", "aria-label": this.getTranslation('waitingForAnswerLabel'), role: "presentation" })))
|
|
366
|
-
: (h("main", { id: mainId, class: "chat-main loading-chat-main", role: "main", "aria-labelledby": "chat-title" }, h("div", { class: "chat-loading-spinner" }, h("pn-spinner", { light: "true", size: "1.5" })), h("span", { class: "chat-loading-content" }, this.getTranslation('loadingText')))), h("footer", { key: '
|
|
378
|
+
: (h("main", { id: mainId, class: "chat-main loading-chat-main", role: "main", "aria-labelledby": "chat-title" }, h("div", { class: "chat-loading-spinner" }, h("pn-spinner", { light: "true", size: "1.5" })), h("span", { class: "chat-loading-content" }, this.getTranslation('loadingText')))), h("footer", { key: '151b8cb74adc00cc941c68c14e94236e458e5b93', class: "chat-footer", role: "contentinfo" }, h("div", { key: 'f9cae25c7fdb38877a0010d01e6845e778f4658c', class: "form", role: "form", "aria-labelledby": inputId }, h("label", { key: 'b34656f59997b0e9b24f3c1e4de6df6340b260e5', htmlFor: inputId, class: "sr-only" }, this.getTranslation('writeChatMessagePlaceholder')), h("div", { key: '8c63bca6b7d0f9e9e801b7b40dff4a8d9b26e49d', class: "chat-input-container" }, h("input", { key: 'e5882f25731916a0800f4efde9a2daea72fba76d', id: inputId, class: "chat-text-input", ref: el => (this.inputRef = el), type: "text", placeholder: this.getTranslation('writeChatMessagePlaceholder'), value: this.message, onInput: (e) => (this.message = e.target.value), onKeyPress: this.handleKeyPress, maxLength: 3990 }), !this.message.trim() ? (h("div", { class: "chat-disabled-button", role: "button", "aria-label": this.getTranslation('sendButtonText'), "aria-disabled": "true", tabIndex: -1 }, h("pn-icon", { color: "gray400", icon: submit }))) : (h("pn-button", { "icon-only": "true", variant: "borderless", appearance: "light", icon: submit, onClick: this.handleSendMessage, disabled: !this.message.trim(), "aria-label": this.getTranslation('sendButtonText'), tooltip: this.getTranslation('sendButtonText') }))))))), this.isMinimized && (h("pn-button", { key: '4022adb25d86961ba4f20efd52fa8d4938f81b76', icon: talk_bubble, "icon-only": "true", class: "open-chat-btn", onClick: this.toggleChat, tooltip: this.getTranslation('openChatAriaLabel'), "aria-label": this.getTranslation('openChatAriaLabel'), "aria-expanded": !this.isMinimized }))))));
|
|
367
379
|
}
|
|
368
380
|
static get is() { return "pn-chat"; }
|
|
369
381
|
static get originalStyleUrls() {
|