@telia-ace/knowledge-widget-components-notification-list 1.0.38-experimental.9 → 1.0.38

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/index.js CHANGED
@@ -1,12 +1,70 @@
1
- import { createWebComponent as o } from "@telia-ace/widget-ui";
2
- const n = (t) => o(
3
- t,
4
- "notification-list",
5
- import("./notification-list-wrapper.ddc0e46b.js"),
6
- (i) => {
7
- }
8
- ), c = n;
1
+ var m = Object.defineProperty, C = Object.defineProperties;
2
+ var L = Object.getOwnPropertyDescriptors;
3
+ var h = Object.getOwnPropertySymbols;
4
+ var b = Object.prototype.hasOwnProperty, v = Object.prototype.propertyIsEnumerable;
5
+ var d = (t, i, e) => i in t ? m(t, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[i] = e, c = (t, i) => {
6
+ for (var e in i || (i = {}))
7
+ b.call(i, e) && d(t, e, i[e]);
8
+ if (h)
9
+ for (var e of h(i))
10
+ v.call(i, e) && d(t, e, i[e]);
11
+ return t;
12
+ }, n = (t, i) => C(t, L(i));
13
+ import { createEventSubscriber as y, extendComponent as w } from "@telia-ace/knowledge-widget-core";
14
+ import { DataType as D } from "@telia-ace/knowledge-widget-types-grid";
15
+ import { createReactComponent as N } from "@telia-ace/knowledge-widget-ui";
16
+ const P = (t) => {
17
+ const { events: i } = t.get("$widget"), [e, u] = y(i);
18
+ return N(
19
+ t,
20
+ "notification-list",
21
+ import("./notification-list.4eb10bb7.js"),
22
+ (r) => {
23
+ const o = (a) => {
24
+ r.writeProperties(n(c({}, r.properties()), {
25
+ loading: !0,
26
+ error: void 0,
27
+ notificationList: void 0
28
+ })), r.actions.dispatch("fetch", { params: a });
29
+ };
30
+ r.actions.create("fetch", ({ error: a, notificationLists: s }) => {
31
+ if (a)
32
+ return r.actions.dispatch("fetched", {
33
+ error: a,
34
+ loading: !0,
35
+ notificationList: void 0
36
+ });
37
+ const { category: f, notificationList: p } = r.properties(), g = {
38
+ notificationList: s.find((l) => l.id === f) || p
39
+ };
40
+ return r.actions.dispatch("fetched", n(c({}, g), {
41
+ loading: !0
42
+ }));
43
+ }), r.actions.create("fetched", (a) => r.writeProperties(n(c({}, a), { loading: !1 }))), t.getAsync("router").then((a) => {
44
+ const { params: s } = a.getRouteData();
45
+ o(s);
46
+ }), e("router:changed", (a, { current: s }) => {
47
+ o(s.routeData.params);
48
+ });
49
+ }
50
+ ).then(() => w(t, "notification-list", (r) => {
51
+ r.actions.watch("notification-list.fetch", (o, a) => t.getAsync("dataClient").then(
52
+ (s) => s.fetch(D.NotificationLists, {
53
+ categories: [
54
+ o.params.guideCategory,
55
+ o.params.contactCategory
56
+ ].filter((f) => !!f),
57
+ searchPhrase: o.params.phrase
58
+ })
59
+ ).then(a).catch((s) => {
60
+ if (s)
61
+ return a(s);
62
+ }));
63
+ })).then(() => {
64
+ u();
65
+ });
66
+ }, E = P;
9
67
  export {
10
- c as default
68
+ E as default
11
69
  };
12
70
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/notification-list-component.ts"],"sourcesContent":["import { createWebComponent } from '@telia-ace/widget-ui';\nimport { Container } from '@webprovisions/platform';\n\nexport const NotificationListComponent = (container: Container) => {\n return createWebComponent(\n container,\n 'notification-list',\n import('./notification-list-wrapper'),\n (component) => {}\n );\n};\n\nexport default NotificationListComponent;\n\n// import {\n// createEventSubscriber,\n// extendComponent,\n// NotificationList,\n// } from '@telia-ace/knowledge-widget-core';\n// import { DataClient, DataType, NotificationResults } from '@telia-ace/knowledge-widget-types-grid';\n// import { createReactComponent } from '@telia-ace/knowledge-widget-ui';\n// import { Container, Widget } from '@webprovisions/platform';\n\n// export type NotificationListComponentProps = {\n// category?: string;\n// showHeader?: boolean;\n// notificationList?: NotificationList; // internal\n// };\n\n// type FetchResults = NotificationResults & { error: any };\n\n// export const NotificationListComponent = (container: Container) => {\n// const { events }: Widget = container.get('$widget');\n// const [subscribe, unsubscribe] = createEventSubscriber(events);\n\n// return createReactComponent(\n// container,\n// 'notification-list',\n// import('./notification-list'),\n// (component) => {\n// const fetch = (params: { [key: string]: any }) => {\n// component.writeProperties({\n// ...component.properties<NotificationListComponentProps>(),\n// loading: true,\n// error: undefined,\n// notificationList: undefined,\n// });\n// component.actions.dispatch('fetch', { params });\n// };\n\n// component.actions.create('fetch', ({ error, notificationLists }: FetchResults) => {\n// if (error) {\n// return component.actions.dispatch('fetched', {\n// error,\n// loading: true,\n// notificationList: undefined,\n// });\n// }\n\n// const { category, notificationList } =\n// component.properties<NotificationListComponentProps>();\n\n// const properties = {\n// notificationList:\n// notificationLists.find((n) => n.id === category) || notificationList,\n// };\n\n// return component.actions.dispatch('fetched', {\n// ...properties,\n// loading: true,\n// });\n// });\n\n// component.actions.create('fetched', (input) => {\n// return component.writeProperties({ ...input, loading: false });\n// });\n\n// container.getAsync('router').then((router) => {\n// const { params } = router.getRouteData();\n// fetch(params);\n// });\n\n// subscribe('router:changed', (event: any, { current }: any) => {\n// fetch(current.routeData.params);\n// });\n// }\n// )\n// .then(() => {\n// return extendComponent(container, 'notification-list', (component) => {\n// component.actions.watch('notification-list.fetch', (input, next) => {\n// return container\n// .getAsync('dataClient')\n// .then((dataClient: DataClient) =>\n// dataClient.fetch(DataType.NotificationLists, {\n// categories: [\n// input.params.guideCategory,\n// input.params.contactCategory,\n// ].filter((c) => !!c),\n// searchPhrase: input.params.phrase,\n// })\n// )\n// .then(next)\n// .catch((error) => {\n// if (error) {\n// return next(error);\n// }\n// });\n// });\n// });\n// })\n// .then(() => {\n// unsubscribe();\n// });\n// };\n\n// export default NotificationListComponent;\n"],"names":["NotificationListComponent","container","createWebComponent","component","NotificationListComponent$1"],"mappings":";AAGa,MAAAA,IAA4B,CAACC,MAC/BC;AAAA,EACHD;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,CAACE,MAAc;AAAA,EAAC;AAAA,GAIxBC,IAAeJ;"}
1
+ {"version":3,"file":"index.js","sources":["../src/notification-list-component.ts"],"sourcesContent":["import {\n createEventSubscriber,\n extendComponent,\n NotificationList,\n} from '@telia-ace/knowledge-widget-core';\nimport { DataClient, DataType, NotificationResults } from '@telia-ace/knowledge-widget-types-grid';\nimport { createReactComponent } from '@telia-ace/knowledge-widget-ui';\nimport { Container, Widget } from '@webprovisions/platform';\n\nexport type NotificationListComponentProps = {\n category?: string;\n showHeader?: boolean;\n notificationList?: NotificationList; // internal\n};\n\ntype FetchResults = NotificationResults & { error: any };\n\nexport const NotificationListComponent = (container: Container) => {\n const { events }: Widget = container.get('$widget');\n const [subscribe, unsubscribe] = createEventSubscriber(events);\n\n return createReactComponent(\n container,\n 'notification-list',\n import('./notification-list'),\n (component) => {\n const fetch = (params: { [key: string]: any }) => {\n component.writeProperties({\n ...component.properties<NotificationListComponentProps>(),\n loading: true,\n error: undefined,\n notificationList: undefined,\n });\n component.actions.dispatch('fetch', { params });\n };\n\n component.actions.create('fetch', ({ error, notificationLists }: FetchResults) => {\n if (error) {\n return component.actions.dispatch('fetched', {\n error,\n loading: true,\n notificationList: undefined,\n });\n }\n\n const { category, notificationList } =\n component.properties<NotificationListComponentProps>();\n\n const properties = {\n notificationList:\n notificationLists.find((n) => n.id === category) || notificationList,\n };\n\n return component.actions.dispatch('fetched', {\n ...properties,\n loading: true,\n });\n });\n\n component.actions.create('fetched', (input) => {\n return component.writeProperties({ ...input, loading: false });\n });\n\n container.getAsync('router').then((router) => {\n const { params } = router.getRouteData();\n fetch(params);\n });\n\n subscribe('router:changed', (event: any, { current }: any) => {\n fetch(current.routeData.params);\n });\n }\n )\n .then(() => {\n return extendComponent(container, 'notification-list', (component) => {\n component.actions.watch('notification-list.fetch', (input, next) => {\n return container\n .getAsync('dataClient')\n .then((dataClient: DataClient) =>\n dataClient.fetch(DataType.NotificationLists, {\n categories: [\n input.params.guideCategory,\n input.params.contactCategory,\n ].filter((c) => !!c),\n searchPhrase: input.params.phrase,\n })\n )\n .then(next)\n .catch((error) => {\n if (error) {\n return next(error);\n }\n });\n });\n });\n })\n .then(() => {\n unsubscribe();\n });\n};\n\nexport default NotificationListComponent;\n"],"names":["NotificationListComponent","container","events","subscribe","unsubscribe","createEventSubscriber","createReactComponent","component","fetch","params","__spreadProps","__spreadValues","error","notificationLists","category","notificationList","properties","n","input","router","event","current","extendComponent","next","dataClient","DataType","c","NotificationListComponent$1"],"mappings":";;;;;;;;;;;;;;;AAiBa,MAAAA,IAA4B,CAACC,MAAyB;AAC/D,QAAM,EAAE,QAAAC,EAAmB,IAAAD,EAAU,IAAI,SAAS,GAC5C,CAACE,GAAWC,CAAW,IAAIC,EAAsBH,CAAM;AAEtD,SAAAI;AAAA,IACHL;AAAA,IACA;AAAA,IACA,OAAO;AAAA,IACP,CAACM,MAAc;AACL,YAAAC,IAAQ,CAACC,MAAmC;AAC9C,QAAAF,EAAU,gBAAgBG,EAAAC,EAAA,IACnBJ,EAAU,WAA2C,IADlC;AAAA,UAEtB,SAAS;AAAA,UACT,OAAO;AAAA,UACP,kBAAkB;AAAA,QAAA,EACrB,GACDA,EAAU,QAAQ,SAAS,SAAS,EAAE,QAAAE,EAAQ,CAAA;AAAA,MAAA;AAGlD,MAAAF,EAAU,QAAQ,OAAO,SAAS,CAAC,EAAE,OAAAK,GAAO,mBAAAC,QAAsC;AAC9E,YAAID;AACO,iBAAAL,EAAU,QAAQ,SAAS,WAAW;AAAA,YACzC,OAAAK;AAAA,YACA,SAAS;AAAA,YACT,kBAAkB;AAAA,UAAA,CACrB;AAGL,cAAM,EAAE,UAAAE,GAAU,kBAAAC,EAAiB,IAC/BR,EAAU,WAA2C,GAEnDS,IAAa;AAAA,UACf,kBACIH,EAAkB,KAAK,CAACI,MAAMA,EAAE,OAAOH,CAAQ,KAAKC;AAAA,QAAA;AAGrD,eAAAR,EAAU,QAAQ,SAAS,WAAWG,EAAAC,EAAA,IACtCK,IADsC;AAAA,UAEzC,SAAS;AAAA,QAAA,EACZ;AAAA,MAAA,CACJ,GAEDT,EAAU,QAAQ,OAAO,WAAW,CAACW,MAC1BX,EAAU,gBAAgBG,EAAAC,EAAA,IAAKO,IAAL,EAAY,SAAS,KAAO,CAChE,GAEDjB,EAAU,SAAS,QAAQ,EAAE,KAAK,CAACkB,MAAW;AAC1C,cAAM,EAAE,QAAAV,EAAA,IAAWU,EAAO,aAAa;AACvC,QAAAX,EAAMC,CAAM;AAAA,MAAA,CACf,GAEDN,EAAU,kBAAkB,CAACiB,GAAY,EAAE,SAAAC,QAAmB;AACpD,QAAAb,EAAAa,EAAQ,UAAU,MAAM;AAAA,MAAA,CACjC;AAAA,IACL;AAAA,EACJ,EACK,KAAK,MACKC,EAAgBrB,GAAW,qBAAqB,CAACM,MAAc;AAClE,IAAAA,EAAU,QAAQ,MAAM,2BAA2B,CAACW,GAAOK,MAChDtB,EACF,SAAS,YAAY,EACrB;AAAA,MAAK,CAACuB,MACHA,EAAW,MAAMC,EAAS,mBAAmB;AAAA,QACzC,YAAY;AAAA,UACRP,EAAM,OAAO;AAAA,UACbA,EAAM,OAAO;AAAA,UACf,OAAO,CAACQ,MAAM,CAAC,CAACA,CAAC;AAAA,QACnB,cAAcR,EAAM,OAAO;AAAA,MAAA,CAC9B;AAAA,MAEJ,KAAKK,CAAI,EACT,MAAM,CAACX,MAAU;AACd,UAAIA;AACA,eAAOW,EAAKX,CAAK;AAAA,IACrB,CACH,CACR;AAAA,EAAA,CACJ,CACJ,EACA,KAAK,MAAM;AACI,IAAAR;EAAA,CACf;AACT,GAEAuB,IAAe3B;"}
@@ -1,3 +1,9 @@
1
+ import { NotificationList } from '@telia-ace/knowledge-widget-core';
1
2
  import { Container } from '@webprovisions/platform';
3
+ export type NotificationListComponentProps = {
4
+ category?: string;
5
+ showHeader?: boolean;
6
+ notificationList?: NotificationList;
7
+ };
2
8
  export declare const NotificationListComponent: (container: Container) => Promise<void>;
3
9
  export default NotificationListComponent;
@@ -0,0 +1,50 @@
1
+ var N = Object.defineProperty, y = Object.defineProperties;
2
+ var C = Object.getOwnPropertyDescriptors;
3
+ var a = Object.getOwnPropertySymbols;
4
+ var f = Object.prototype.hasOwnProperty, p = Object.prototype.propertyIsEnumerable;
5
+ var m = (t, o, i) => o in t ? N(t, o, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[o] = i, s = (t, o) => {
6
+ for (var i in o || (o = {}))
7
+ f.call(o, i) && m(t, i, o[i]);
8
+ if (a)
9
+ for (var i of a(o))
10
+ p.call(o, i) && m(t, i, o[i]);
11
+ return t;
12
+ }, r = (t, o) => y(t, C(o));
13
+ var l = (t, o) => {
14
+ var i = {};
15
+ for (var e in t)
16
+ f.call(t, e) && o.indexOf(e) < 0 && (i[e] = t[e]);
17
+ if (t != null && a)
18
+ for (var e of a(t))
19
+ o.indexOf(e) < 0 && p.call(t, e) && (i[e] = t[e]);
20
+ return i;
21
+ };
22
+ import L from "@emotion/styled";
23
+ import { useContainer as g, useProperties as h, createEmptyComponent as x, NotificationList as E, contentBox as $ } from "@telia-ace/knowledge-widget-ui";
24
+ import { appendClassNames as w } from "@telia-ace/widget-utilities";
25
+ import B from "react";
26
+ const k = (i) => {
27
+ var e = i, { className: t } = e, o = l(e, ["className"]);
28
+ const d = g(), {
29
+ showHeader: u,
30
+ notificationList: n,
31
+ loading: c = !1
32
+ } = h();
33
+ return !(n != null && n.notifications.length) && !c ? x(d, r(s({}, o), {
34
+ className: w(t, "humany-notification-list")
35
+ })) : /* @__PURE__ */ B.createElement(
36
+ H,
37
+ r(s({}, o), {
38
+ className: t,
39
+ notificationList: n,
40
+ loading: c,
41
+ showHeader: u
42
+ })
43
+ );
44
+ }, H = L(E)`
45
+ ${(t) => $(t)}
46
+ `;
47
+ export {
48
+ k as default
49
+ };
50
+ //# sourceMappingURL=notification-list.4eb10bb7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification-list.4eb10bb7.js","sources":["../src/notification-list.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport {\n contentBox,\n createEmptyComponent,\n NotificationList as NotificationListUi,\n useContainer,\n useProperties,\n} from '@telia-ace/knowledge-widget-ui';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React from 'react';\nimport { NotificationListComponentProps } from './notification-list-component';\n\ntype Props = {\n className: string;\n};\n\nconst NotificationList: React.FC<Props> = ({ className, ...other }) => {\n const container = useContainer();\n const {\n showHeader,\n notificationList,\n loading = false,\n } = useProperties<NotificationListComponentProps>();\n\n if (!notificationList?.notifications.length && !loading) {\n return createEmptyComponent(container, {\n ...other,\n className: appendClassNames(className, 'humany-notification-list'),\n });\n }\n\n return (\n <StyledNotificationList\n {...other}\n className={className}\n notificationList={notificationList}\n loading={loading}\n showHeader={showHeader}\n />\n );\n};\n\nconst StyledNotificationList = styled(NotificationListUi)`\n ${(p) => contentBox(p)}\n`;\n\nexport default NotificationList;\n"],"names":["NotificationList","_a","_b","className","other","__objRest","container","useContainer","showHeader","notificationList","loading","useProperties","createEmptyComponent","__spreadProps","__spreadValues","appendClassNames","React","StyledNotificationList","styled","NotificationListUi","p","contentBox"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAMA,IAAoC,CAACC,MAA4B;AAA5B,MAAAC,IAAAD,GAAE,aAAAE,MAAFD,GAAgBE,IAAAC,EAAhBH,GAAgB,CAAd;AACzC,QAAMI,IAAYC,KACZ;AAAA,IACF,YAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,MACVC,EAA8C;AAElD,SAAI,EAACF,KAAA,QAAAA,EAAkB,cAAc,WAAU,CAACC,IACrCE,EAAqBN,GAAWO,EAAAC,EAAA,IAChCV,IADgC;AAAA,IAEnC,WAAWW,EAAiBZ,GAAW,0BAA0B;AAAA,EAAA,EACpE,IAID,gBAAAa,EAAA;AAAA,IAACC;AAAA,IAAAJ,EAAAC,EAAA,IACOV,IADP;AAAA,MAEG,WAAAD;AAAA,MACA,kBAAAM;AAAA,MACA,SAAAC;AAAA,MACA,YAAAF;AAAA,IAAA;AAAA,EAAA;AAGZ,GAEMS,IAAyBC,EAAOC,CAAkB;AAAA,MAClD,CAACC,MAAMC,EAAWD,CAAC;AAAA;"}
@@ -1,9 +1,6 @@
1
- import { LitElement, nothing } from 'lit';
2
- export default class NotificationList extends LitElement {
3
- static styles: import("lit").CSSResult[];
4
- _items: any[];
5
- _notificationList: any;
6
- expanded: string | null;
7
- private _onExpand;
8
- render(): typeof nothing | import("lit").TemplateResult<1>;
9
- }
1
+ import React from 'react';
2
+ type Props = {
3
+ className: string;
4
+ };
5
+ declare const NotificationList: React.FC<Props>;
6
+ export default NotificationList;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telia-ace/knowledge-widget-components-notification-list",
3
- "version": "1.0.38-experimental.9",
3
+ "version": "1.0.38",
4
4
  "description": "Notification list component for ACE Knowledge Widgets.",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "author": "Telia Company AB",
@@ -21,17 +21,15 @@
21
21
  },
22
22
  "sideEffects": false,
23
23
  "dependencies": {
24
- "@telia-ace/knowledge-widget-core": "1.0.34-experimental.9",
25
- "@telia-ace/knowledge-widget-types-grid": "1.0.45-experimental.9",
26
- "@telia-ace/knowledge-widget-ui": "1.0.40-experimental.9",
27
- "@telia-ace/widget-ui": "^1.0.28-experimental.19",
28
- "@telia-ace/widget-utilities": "^1.0.10-experimental.19",
24
+ "@telia-ace/knowledge-widget-core": "^1.0.34",
25
+ "@telia-ace/knowledge-widget-types-grid": "^1.0.45",
26
+ "@telia-ace/knowledge-widget-ui": "^1.0.40",
27
+ "@telia-ace/widget-utilities": "^1.0.9",
29
28
  "@webprovisions/platform": "^1.1.2"
30
29
  },
31
30
  "peerDependencies": {
32
31
  "@emotion/react": "^11.10.5",
33
32
  "@emotion/styled": "^11.10.5",
34
- "lit": "^2.6.0",
35
33
  "react": "^18.2.0",
36
34
  "react-dom": "^18.2.0"
37
35
  },
@@ -40,7 +38,6 @@
40
38
  "@emotion/styled": "^11.10.5",
41
39
  "@types/react": "^18.0.26",
42
40
  "@types/react-dom": "^18.0.10",
43
- "lit": "^2.6.1",
44
41
  "react": "^18.2.0",
45
42
  "react-dom": "^18.2.0"
46
43
  },
@@ -1,9 +0,0 @@
1
- import { DataProvider } from '@telia-ace/widget-ui';
2
- import { ReactiveControllerHost } from 'lit';
3
- export declare class NotificationListDataProvider extends DataProvider {
4
- host: ReactiveControllerHost;
5
- constructor(host: ReactiveControllerHost);
6
- hostConnected(): void;
7
- initialize(): Promise<void>;
8
- _fetch(): Promise<void>;
9
- }
@@ -1,10 +0,0 @@
1
- import { NodeConnector } from '@telia-ace/widget-ui';
2
- import NotificationList from './notification-list';
3
- import { NotificationListDataProvider } from './notification-list-data-provider';
4
- declare const NotificationListWrapper_base: import("@telia-ace/widget-ui").WidgetComponentConstructor<import("@telia-ace/widget-ui/dist/mixins/widget-component").WidgetComponentInterface> & typeof NotificationList;
5
- export default class NotificationListWrapper extends NotificationListWrapper_base {
6
- connector: NodeConnector;
7
- dataProvider: NotificationListDataProvider;
8
- constructor();
9
- }
10
- export {};
@@ -1,166 +0,0 @@
1
- var w = Object.defineProperty, $ = Object.defineProperties;
2
- var _ = Object.getOwnPropertyDescriptors;
3
- var f = Object.getOwnPropertySymbols, z = Object.getPrototypeOf, C = Object.prototype.hasOwnProperty, L = Object.prototype.propertyIsEnumerable, O = Reflect.get;
4
- var m = (i, a, t) => a in i ? w(i, a, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[a] = t, b = (i, a) => {
5
- for (var t in a || (a = {}))
6
- C.call(a, t) && m(i, t, a[t]);
7
- if (f)
8
- for (var t of f(a))
9
- L.call(a, t) && m(i, t, a[t]);
10
- return i;
11
- }, y = (i, a) => $(i, _(a));
12
- var x = (i, a, t) => O(z(i), t, a);
13
- var d = (i, a, t) => new Promise((n, r) => {
14
- var s = (p) => {
15
- try {
16
- e(t.next(p));
17
- } catch (h) {
18
- r(h);
19
- }
20
- }, o = (p) => {
21
- try {
22
- e(t.throw(p));
23
- } catch (h) {
24
- r(h);
25
- }
26
- }, e = (p) => p.done ? n(p.value) : Promise.resolve(p.value).then(s, o);
27
- e((t = t.apply(i, a)).next());
28
- });
29
- import { DataProvider as P, WidgetComponentMixin as D, NodeConnector as S } from "@telia-ace/widget-ui";
30
- import { LitElement as j, nothing as k, html as l, unsafeCSS as Y } from "lit";
31
- import { property as v, state as E } from "lit/decorators.js";
32
- import { when as M } from "lit/directives/when.js";
33
- const T = `*{box-sizing:border-box}ui-item-list::part(container){display:flex;justify-content:center;flex-direction:column;background:#ffffff;border-radius:var(--borderRadius);border:var(--border);box-shadow:var(--boxShadow, none);overflow:hidden;justify-content:flex-start;padding:var(--size-large)}ul.list{padding:0;margin:0;list-style:none}ul.list>li{margin:0 0 var(--size-normal);white-space:nowrap;text-overflow:ellipsis;min-width:0}ul.list>li:focus{outline-offset:-2px}ul.list>li>a{text-decoration:none}ul.list>li:last-child{margin:0}ui-button{--hover-text-decoration: underline}li[data-expanded=true] ui-paragraph::part(html){display:block}li ui-paragraph::part(html){display:none}li>span{display:block;font-weight:300;color:var(--colors-accent)}ui-paragraph::part(container){font-size:var(--fonts-normal);font-weight:300;line-height:1.5em;color:var(--colors-text)}ui-paragraph::part(container) h1,ui-paragraph::part(container) h2,ui-paragraph::part(container) h3,ui-paragraph::part(container) h4,ui-paragraph::part(container) h5,ui-paragraph::part(container) h6{word-break:break-word}ui-paragraph::part(container) h1:first-child,ui-paragraph::part(container) h2:first-child,ui-paragraph::part(container) h3:first-child,ui-paragraph::part(container) h4:first-child,ui-paragraph::part(container) h5:first-child,ui-paragraph::part(container) h6:first-child{margin-top:0}ui-paragraph::part(container) h1:only-child,ui-paragraph::part(container) h2:only-child,ui-paragraph::part(container) h3:only-child,ui-paragraph::part(container) h4:only-child,ui-paragraph::part(container) h5:only-child,ui-paragraph::part(container) h6:only-child{margin:0}ui-paragraph::part(container) h1:last-child,ui-paragraph::part(container) h2:last-child,ui-paragraph::part(container) h3:last-child,ui-paragraph::part(container) h4:last-child,ui-paragraph::part(container) h5:last-child,ui-paragraph::part(container) h6:last-child{margin-bottom:0}ui-paragraph::part(container) a{color:var(--colors-link)}ui-paragraph::part(container) a:focus-visible{outline:var(--accessibility-border);color:var(--accessibility-colors-inactiveText);border-color:transparent;text-decoration:underline}ui-paragraph::part(container) img{max-width:100%!important;height:auto!important}ui-paragraph::part(container) p{word-break:break-word;margin:var(--size-normal) 0}ui-paragraph::part(container) p:first-child{margin:0 0 var(--size-normal)}ui-paragraph::part(container) p:last-child{margin:var(--size-normal) 0 0}ui-paragraph::part(container) p:only-child{margin:0}
34
- `;
35
- var A = Object.defineProperty, N = Object.getOwnPropertyDescriptor, u = (i, a, t, n) => {
36
- for (var r = n > 1 ? void 0 : n ? N(a, t) : a, s = i.length - 1, o; s >= 0; s--)
37
- (o = i[s]) && (r = (n ? o(a, t, r) : o(r)) || r);
38
- return n && r && A(a, t, r), r;
39
- };
40
- class c extends j {
41
- constructor() {
42
- super(...arguments), this._items = [], this.expanded = null;
43
- }
44
- _onExpand(a) {
45
- this.expanded = this.expanded === a ? null : a;
46
- }
47
- render() {
48
- var o;
49
- if ((((o = this._notificationList) == null ? void 0 : o.notifications) || []).length === 0)
50
- return k;
51
- const {
52
- id: a,
53
- title: t,
54
- symbol: n,
55
- notifications: r = [],
56
- defaultHeaderOptions: s = { visible: !0 }
57
- } = this._notificationList || {};
58
- return l` <ui-item-list
59
- header=${t}
60
- data-notification-category=${a}
61
- exportparts="container: item-list-container"
62
- >
63
- <ul part="ul-list" class="list">
64
- ${r.map((e) => l`
65
- <li
66
- class="notification-list-item"
67
- data-expanded=${this.expanded === e.id}
68
- >
69
- ${M(
70
- e.expandable,
71
- () => l`
72
- <ui-button
73
- title=${e.title}
74
- aria-label=${e.title}
75
- aria-expanded=${this.expanded === a}
76
- @click=${() => this._onExpand(e.id)}
77
- >
78
- <span class="button-label">${e.title}</span>
79
-
80
- ${this.expanded === e.id ? l`<ui-symbol-badge
81
- .symbol=${{
82
- type: "Svg",
83
- content: "caret-up"
84
- }}
85
- .size=${11}
86
- class="caret"
87
- />` : l` <ui-symbol-badge
88
- .symbol=${{
89
- type: "Svg",
90
- content: "caret-down"
91
- }}
92
- .size=${11}
93
- class="caret"
94
- />`}
95
- </ui-button>
96
- <ui-paragraph html=${e.body} />
97
- <!-- {modified && ( TODO: missing
98
- <StyledTimestamp
99
- format={DateFormats.YYYY_MM_DD}
100
- timestamp={modified}
101
- />
102
- )} -->
103
- `,
104
- () => l` <ui-paragraph html=${e.body} />`
105
- )}
106
- </li>
107
- `)}
108
- </ul>
109
- </ui-item-list>`;
110
- }
111
- }
112
- c.styles = [Y(T)];
113
- u([
114
- v({ type: Array })
115
- ], c.prototype, "_items", 2);
116
- u([
117
- v({ type: Object })
118
- ], c.prototype, "_notificationList", 2);
119
- u([
120
- E()
121
- ], c.prototype, "expanded", 2);
122
- class g extends P {
123
- constructor(a) {
124
- super(a), (this.host = a).addController(this);
125
- }
126
- hostConnected() {
127
- this.initialize();
128
- }
129
- initialize() {
130
- return d(this, null, function* () {
131
- yield x(g.prototype, this, "initialize").call(this), this._fetch();
132
- });
133
- }
134
- _fetch() {
135
- return d(this, null, function* () {
136
- var n;
137
- if (!this.node)
138
- return;
139
- this.node.writeProperties(y(b({}, this.node.attributes.properties), {
140
- loading: !0,
141
- error: void 0,
142
- notificationList: void 0
143
- }));
144
- const a = yield (n = this.container) == null ? void 0 : n.getAsync("dataClient");
145
- if (!a)
146
- return;
147
- const t = yield a.fetch("notification-lists", {
148
- categories: [].filter((r) => !!r)
149
- }).then(({ notificationLists: r }) => {
150
- var e;
151
- const { category: s, notificationList: o } = ((e = this.node) == null ? void 0 : e.attributes.properties) || {};
152
- return r.find((p) => p.id === s) || o;
153
- });
154
- this.node.writeProperties({ loading: !1, notificationList: t });
155
- });
156
- }
157
- }
158
- class B extends D(c) {
159
- constructor() {
160
- super(), this.connector = new S(this), this.dataProvider = new g(this);
161
- }
162
- }
163
- export {
164
- B as default
165
- };
166
- //# sourceMappingURL=notification-list-wrapper.ddc0e46b.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notification-list-wrapper.ddc0e46b.js","sources":["../src/notification-list.ts","../src/notification-list-data-provider.ts","../src/notification-list-wrapper.ts"],"sourcesContent":["import { html, LitElement, nothing, unsafeCSS } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { when } from 'lit/directives/when.js';\nimport styles from './notification-list.scss?inline';\n\nexport default class NotificationList extends LitElement {\n static styles = [unsafeCSS(styles)];\n\n @property({ type: Array }) _items: any[] = [];\n @property({ type: Object }) _notificationList: any;\n\n @state() expanded: string | null = null;\n\n private _onExpand(id: string) {\n this.expanded = this.expanded === id ? null : id;\n }\n\n render() {\n if ((this._notificationList?.notifications || []).length === 0) {\n return nothing;\n }\n\n const {\n id,\n title,\n symbol,\n notifications = [],\n defaultHeaderOptions = { visible: true },\n } = this._notificationList || {};\n\n return html` <ui-item-list\n header=${title}\n data-notification-category=${id}\n exportparts=\"container: item-list-container\"\n >\n <ul part=\"ul-list\" class=\"list\">\n ${notifications.map((item: any) => {\n return html`\n <li\n class=\"notification-list-item\"\n data-expanded=${this.expanded === item.id}\n >\n ${when(\n item.expandable,\n () => html`\n <ui-button\n title=${item.title}\n aria-label=${item.title}\n aria-expanded=${this.expanded === id}\n @click=${() => this._onExpand(item.id)}\n >\n <span class=\"button-label\">${item.title}</span>\n\n ${this.expanded === item.id\n ? html`<ui-symbol-badge\n .symbol=${{\n type: 'Svg',\n content: 'caret-up',\n }}\n .size=${11}\n class=\"caret\"\n />`\n : html` <ui-symbol-badge\n .symbol=${{\n type: 'Svg',\n content: 'caret-down',\n }}\n .size=${11}\n class=\"caret\"\n />`}\n </ui-button>\n <ui-paragraph html=${item.body} />\n <!-- {modified && ( TODO: missing\n <StyledTimestamp\n format={DateFormats.YYYY_MM_DD}\n timestamp={modified}\n />\n )} -->\n `,\n () => html` <ui-paragraph html=${item.body} />`\n )}\n </li>\n `;\n })}\n </ul>\n </ui-item-list>`;\n }\n}\n","import { DataProvider } from '@telia-ace/widget-ui';\nimport { ReactiveControllerHost } from 'lit';\n\nexport class NotificationListDataProvider extends DataProvider {\n host;\n\n constructor(host: ReactiveControllerHost) {\n super(host as any);\n (this.host = host).addController(this);\n }\n\n hostConnected() {\n this.initialize();\n }\n\n async initialize() {\n await super.initialize();\n\n this._fetch();\n }\n\n async _fetch() {\n if (!this.node) {\n return;\n }\n\n this.node.writeProperties({\n ...this.node.attributes.properties,\n loading: true,\n error: undefined,\n notificationList: undefined,\n });\n\n const dataClient = await this.container?.getAsync('dataClient');\n\n if (!dataClient) {\n return;\n }\n\n const result = await dataClient\n .fetch('notification-lists' /*DataType.NotificationLists*/, {\n categories: [\n // input.params.guideCategory, // TODO: missing\n // input.params.contactCategory,\n ].filter((c) => !!c),\n // searchPhrase: input.params.phrase,\n })\n .then(({ notificationLists }: any) => {\n const { category, notificationList } = this.node?.attributes.properties || {};\n\n return notificationLists.find((n: any) => n.id === category) || notificationList;\n });\n\n this.node.writeProperties({ loading: false, notificationList: result });\n }\n}\n","import { NodeConnector, WidgetComponentMixin } from '@telia-ace/widget-ui';\nimport NotificationList from './notification-list';\nimport { NotificationListDataProvider } from './notification-list-data-provider';\n\nexport default class NotificationListWrapper extends WidgetComponentMixin(NotificationList) {\n connector = new NodeConnector(this);\n dataProvider = new NotificationListDataProvider(this);\n\n constructor() {\n super();\n }\n}\n"],"names":["NotificationList","LitElement","id","_a","nothing","title","symbol","notifications","defaultHeaderOptions","html","item","when","unsafeCSS","styles","__decorateClass","property","state","NotificationListDataProvider","DataProvider","host","__async","__superGet","__spreadProps","__spreadValues","dataClient","result","c","notificationLists","category","notificationList","n","NotificationListWrapper","WidgetComponentMixin","NodeConnector"],"mappings":"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"}