@telia-ace/knowledge-widget-components-contact-list 1.0.47 → 1.1.1-rc.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/index.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";const e=require("./index-0264775f.js");require("react/jsx-runtime");require("react");require("react-dom");module.exports=e.ContactListComponent;
package/index.mjs ADDED
@@ -0,0 +1,7 @@
1
+ import { X as i } from "./index-6a1b7325.mjs";
2
+ import "react/jsx-runtime";
3
+ import "react";
4
+ import "react-dom";
5
+ export {
6
+ i as default
7
+ };
package/package.json CHANGED
@@ -1,52 +1,28 @@
1
1
  {
2
2
  "name": "@telia-ace/knowledge-widget-components-contact-list",
3
- "version": "1.0.47",
4
- "description": "Contact list component for ACE Knowledge Widgets.",
5
- "license": "SEE LICENSE IN LICENSE.txt",
6
- "author": "Telia Company AB",
7
- "keywords": [
8
- "telia"
9
- ],
10
- "main": "dist/index.js",
11
- "sourceMain": "src/index.ts",
12
- "type": "module",
13
- "types": "dist/index.d.ts",
14
- "files": [
15
- "LICENSE.txt",
16
- "README.md",
17
- "dist/"
18
- ],
19
- "publishConfig": {
20
- "access": "public"
3
+ "version": "1.1.1-rc.0",
4
+ "main": "./index.js",
5
+ "types": "./index.d.ts",
6
+ "exports": {
7
+ ".": {
8
+ "import": "./index.mjs",
9
+ "require": "./index.js"
10
+ }
21
11
  },
22
- "sideEffects": false,
23
12
  "dependencies": {
24
- "@telia-ace/knowledge-data-client": "1.0.10",
25
- "@telia-ace/knowledge-widget-adapters": "1.0.53",
26
- "@telia-ace/knowledge-widget-component-utilities": "1.0.47",
27
- "@telia-ace/knowledge-widget-core": "1.0.43",
28
- "@telia-ace/knowledge-widget-ui": "1.0.49",
29
- "@telia-ace/widget-forms": "^1.0.35",
30
- "@telia-ace/widget-types-grid": "^1.0.37",
31
- "@telia-ace/widget-utilities": "^1.0.17",
13
+ "@telia-ace/knowledge-widget-adapters": "^1.1.1-rc.0",
14
+ "@telia-ace/knowledge-widget-component-utilities": "^1.1.1-rc.0",
15
+ "@telia-ace/knowledge-widget-core": "^1.1.1-rc.0",
16
+ "@telia-ace/knowledge-widget-ui": "^1.1.1-rc.0",
17
+ "@telia-ace/widget-forms": "^1.1.1-rc.0",
18
+ "@telia-ace/widget-utilities": "^1.1.1-rc.0",
19
+ "@telia-ace/widget-types-grid": "^1.1.1-rc.0",
20
+ "@telia-ace/knowledge-data-client": "^1.1.1-rc.0",
32
21
  "@webprovisions/platform": "^1.1.4"
33
22
  },
34
23
  "peerDependencies": {
35
- "@emotion/react": "^11.10.5",
36
- "@emotion/styled": "^11.10.5",
37
- "react": "^18.2.0",
38
- "react-dom": "^18.2.0"
39
- },
40
- "devDependencies": {
41
- "@emotion/react": "^11.11.1",
42
- "@emotion/styled": "^11.11.0",
43
- "@types/react": "^18.2.22",
44
- "@types/react-dom": "^18.2.7",
45
- "react": "^18.2.0",
46
- "react-dom": "^18.2.0"
47
- },
48
- "scripts": {
49
- "clean": "rimraf ./dist",
50
- "build": "rimraf ./dist && tsc -emitDeclarationOnly && vite build"
24
+ "@emotion/styled": "11.11.0",
25
+ "react": "18.2.0",
26
+ "@emotion/react": "11.11.1"
51
27
  }
52
28
  }
package/LICENSE.txt DELETED
@@ -1,6 +0,0 @@
1
- Copyright © 2021, Telia Company AB. All rights reserved.
2
-
3
- THIS PACKAGE AND CONTAINING SOFTWARE IS PART OF
4
- THE HUMANY SERVICE. BY USING THIS SOFTWARE YOU
5
- AGREE TO THE FOLLOWING TERMS AND CONDITIONS:
6
- http://www.humany.com/legal
package/README.md DELETED
@@ -1,3 +0,0 @@
1
- # `@telia-ace/knowledge-widget-components-contact-list`
2
-
3
- Contact list component for ACE Knowledge Widgets.
@@ -1,197 +0,0 @@
1
- var J = Object.defineProperty, K = Object.defineProperties;
2
- var Q = Object.getOwnPropertyDescriptors;
3
- var x = Object.getOwnPropertySymbols;
4
- var R = Object.prototype.hasOwnProperty, T = Object.prototype.propertyIsEnumerable;
5
- var P = (e, t, o) => t in e ? J(e, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[t] = o, f = (e, t) => {
6
- for (var o in t || (t = {}))
7
- R.call(t, o) && P(e, o, t[o]);
8
- if (x)
9
- for (var o of x(t))
10
- T.call(t, o) && P(e, o, t[o]);
11
- return e;
12
- }, C = (e, t) => K(e, Q(t));
13
- var B = (e, t) => {
14
- var o = {};
15
- for (var n in e)
16
- R.call(e, n) && t.indexOf(n) < 0 && (o[n] = e[n]);
17
- if (e != null && x)
18
- for (var n of x(e))
19
- t.indexOf(n) < 0 && T.call(e, n) && (o[n] = e[n]);
20
- return o;
21
- };
22
- import u from "@emotion/styled";
23
- import { ContactList as V, contactItemList as W, contactLink as X } from "@telia-ace/knowledge-widget-adapters";
24
- import { useRouteData as U, useComponentDescriptor as Y, useContainer as F, useChildren as Z, useDispatch as O, AccordionListItem as _, createEmptyComponent as j, Loader as G, GuideList as ee, contentBox as A, loadingOpacity as H, ItemList as te, Link as ne, borderTabStyle as ae, StyledText as w, useProperties as oe, SymbolBadge as ce } from "@telia-ace/knowledge-widget-ui";
25
- import { formatUrl as z, appendClassNames as b, createParams as q, findCategoryById as re } from "@telia-ace/widget-utilities";
26
- import a, { useCallback as le } from "react";
27
- import { Component as ie } from "@telia-ace/widget-types-grid";
28
- const se = (M) => {
29
- var s = M, {
30
- className: e,
31
- guides: t,
32
- header: o,
33
- accordion: n,
34
- loading: d,
35
- route: k = "guide",
36
- categoryTitle: h
37
- } = s, E = B(s, [
38
- "className",
39
- "guides",
40
- "header",
41
- "accordion",
42
- "loading",
43
- "route",
44
- "categoryTitle"
45
- ]);
46
- const {
47
- name: g,
48
- params: { contactCategory: S = 0, guide: L }
49
- } = U(), { name: r } = Y(), D = F(), $ = Z(), N = O(), v = le(
50
- (c, l, y, m) => {
51
- const { id: p, title: I } = c;
52
- return n && L === p ? /* @__PURE__ */ a.createElement(
53
- _,
54
- {
55
- key: p,
56
- id: p,
57
- title: I,
58
- route: g,
59
- collapseUri: h && z(h)
60
- },
61
- $.map((i) => /* @__PURE__ */ a.createElement(
62
- ie,
63
- {
64
- key: i.id,
65
- id: i.id,
66
- branch: "default",
67
- accordion: n
68
- }
69
- ))
70
- ) : m ? m(c, l, y, m) : null;
71
- },
72
- [n, $, L]
73
- );
74
- return !t.length && !d ? j(D, C(f({}, E), {
75
- className: b(e, "humany-deflection-list")
76
- })) : /* @__PURE__ */ a.createElement(
77
- me,
78
- C(f({}, E), {
79
- "data-loading": d,
80
- className: b(e, "humany-deflection-list"),
81
- items: t,
82
- header: o,
83
- expandable: !!n,
84
- renderItem: v,
85
- dispatch: N,
86
- routing: {
87
- guide: k
88
- },
89
- paramMappers: {
90
- guide: ({ id: c, title: l }) => q({
91
- contactCategory: S,
92
- guide: c,
93
- accordion: n ? r : void 0,
94
- uriName: z(l)
95
- })
96
- }
97
- }),
98
- /* @__PURE__ */ a.createElement(G, { loading: d })
99
- );
100
- }, me = u(ee)`
101
- ${A}
102
- ${H}
103
- `, ue = se, de = u(V)`
104
- ${H}
105
- ${A}
106
- `, ge = u(te)`
107
- ${(e) => H(e)}
108
- ${A}
109
- ${W}
110
-
111
- && {
112
- i {
113
- font-size: 25px;
114
- width: 1.28571429em;
115
- text-align: center;
116
- }
117
- }
118
- `, ye = u(ne)`
119
- &:focus-visible {
120
- ${ae};
121
- }
122
-
123
- ${X}
124
- `, pe = u.div`
125
- display: flex;
126
- flex-direction: column;
127
- gap: ${(e) => {
128
- var t;
129
- return (t = e.theme.sizes) == null ? void 0 : t.normal;
130
- }};
131
- `, fe = u(w)`
132
- font-weight: bold;
133
- `, be = (o) => {
134
- var n = o, { className: e } = n, t = B(n, ["className"]);
135
- const d = O(), k = F(), h = U(), {
136
- deflectionHeader: E = "",
137
- routes: M = {},
138
- contactMethods: s = [],
139
- categories: g = [],
140
- guides: S = [],
141
- deflectionAccordion: L = !1,
142
- loading: r = !1
143
- } = oe(), { contactCategory: D, guide: $ = "guide" } = M;
144
- if (!g.length && !s.length && !r)
145
- return j(k, C(f({}, t), {
146
- className: b(e, "humany-contact-category-list")
147
- }));
148
- const {
149
- name: N,
150
- params: { contactCategory: v }
151
- } = h, c = re(v, g);
152
- return s.length ? /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(
153
- ue,
154
- {
155
- className: e,
156
- guides: S,
157
- categoryTitle: c && c.title,
158
- header: E,
159
- route: $,
160
- accordion: L,
161
- loading: r
162
- }
163
- ), /* @__PURE__ */ a.createElement(
164
- de,
165
- {
166
- "data-loading": r,
167
- className: e,
168
- contactMethods: s,
169
- dispatch: d
170
- },
171
- /* @__PURE__ */ a.createElement(G, { loading: r })
172
- )) : /* @__PURE__ */ a.createElement(
173
- ge,
174
- C(f({}, t), {
175
- "data-loading": r,
176
- className: b(e, "humany-contact-category-list"),
177
- items: c && c.items || g,
178
- renderItem: ({ id: l, title: y, symbol: m, matches: p, items: I, description: i }) => !!p || I && !!I.length ? /* @__PURE__ */ a.createElement("li", { key: l, "data-contact-category": l }, /* @__PURE__ */ a.createElement(
179
- ye,
180
- {
181
- routeName: D || N,
182
- params: q({
183
- contactCategory: l,
184
- uriName: z(y)
185
- })
186
- },
187
- m && /* @__PURE__ */ a.createElement(ce, { symbol: m }),
188
- i != null && i.length ? /* @__PURE__ */ a.createElement(pe, null, /* @__PURE__ */ a.createElement(fe, null, y), /* @__PURE__ */ a.createElement(w, null, i)) : /* @__PURE__ */ a.createElement(w, null, y)
189
- )) : null
190
- }),
191
- /* @__PURE__ */ a.createElement(G, { loading: r })
192
- );
193
- };
194
- export {
195
- be as default
196
- };
197
- //# sourceMappingURL=contact-list.782f8714.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"contact-list.782f8714.js","sources":["../src/deflection-list.tsx","../src/contact-list.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { Guide } from '@telia-ace/knowledge-widget-core';\nimport {\n AccordionListItem,\n contentBox,\n createEmptyComponent,\n GuideList,\n ItemRenderer,\n Loader,\n loadingOpacity,\n useChildren,\n useComponentDescriptor,\n useContainer,\n useDispatch,\n useRouteData,\n} from '@telia-ace/knowledge-widget-ui';\nimport { Component } from '@telia-ace/widget-types-grid';\nimport { appendClassNames, createParams, formatUrl } from '@telia-ace/widget-utilities';\nimport React, { useCallback } from 'react';\n\ntype Props = {\n className: string;\n guides: Guide[];\n header: string;\n accordion?: boolean;\n route?: string;\n loading: boolean;\n categoryTitle?: string;\n};\n\nconst DeflectionList: React.FC<Props> = ({\n className,\n guides,\n header,\n accordion,\n loading,\n route = 'guide',\n categoryTitle,\n ...other\n}) => {\n const {\n name: routeName,\n params: { contactCategory = 0, guide: currentGuideId },\n } = useRouteData();\n const { name: componentName } = useComponentDescriptor();\n const container = useContainer();\n const children = useChildren();\n const dispatch = useDispatch();\n\n const renderItem: ItemRenderer = useCallback(\n (guide, index, items, defaultRenderer) => {\n const { id, title } = guide;\n if (accordion && currentGuideId === id) {\n return (\n <AccordionListItem\n key={id}\n id={id}\n title={title}\n route={routeName}\n collapseUri={categoryTitle && formatUrl(categoryTitle)}\n >\n {children.map((child) => (\n <Component\n key={child.id}\n id={child.id}\n branch=\"default\"\n {...{ accordion }}\n />\n ))}\n </AccordionListItem>\n );\n }\n\n return defaultRenderer ? defaultRenderer(guide, index, items, defaultRenderer) : null;\n },\n [accordion, children, currentGuideId]\n );\n\n if (!guides.length && !loading) {\n return createEmptyComponent(container, {\n ...other,\n className: appendClassNames(className, 'humany-deflection-list'),\n });\n }\n\n return (\n <StyledGuideList\n {...other}\n data-loading={loading}\n className={appendClassNames(className, 'humany-deflection-list')}\n items={guides}\n header={header}\n expandable={!!accordion}\n renderItem={renderItem}\n dispatch={dispatch}\n routing={{\n guide: route,\n }}\n paramMappers={{\n guide: ({ id, title }: Guide) =>\n createParams({\n contactCategory,\n guide: id,\n accordion: accordion ? componentName : undefined,\n uriName: formatUrl(title),\n }),\n }}\n >\n <Loader loading={loading} />\n </StyledGuideList>\n );\n};\n\nconst StyledGuideList = styled(GuideList)<{ 'data-loading': boolean } & any>`\n ${contentBox}\n ${loadingOpacity}\n`;\n\nexport default DeflectionList;\n","import styled from '@emotion/styled';\nimport {\n contactItemList,\n contactLink,\n ContactList as ContactListUi,\n} from '@telia-ace/knowledge-widget-adapters';\nimport { Category } from '@telia-ace/knowledge-widget-core';\nimport {\n borderTabStyle,\n contentBox,\n createEmptyComponent,\n ItemList,\n Link,\n Loader,\n loadingOpacity,\n StyledText,\n SymbolBadge,\n useContainer,\n useDispatch,\n useProperties,\n useRouteData,\n} from '@telia-ace/knowledge-widget-ui';\nimport {\n appendClassNames,\n createParams,\n findCategoryById,\n formatUrl,\n} from '@telia-ace/widget-utilities';\nimport React from 'react';\nimport { ContactListComponentProps } from './contact-list-component';\nimport DeflectionList from './deflection-list';\n\nconst StyledContactList = styled(ContactListUi)<any>`\n ${loadingOpacity}\n ${contentBox}\n`;\n\nconst StyledItemList = styled(ItemList)<any>`\n ${(p) => loadingOpacity(p)}\n ${contentBox}\n ${contactItemList}\n\n && {\n i {\n font-size: 25px;\n width: 1.28571429em;\n text-align: center;\n }\n }\n`;\n\nconst StyledLink = styled(Link)<any>`\n &:focus-visible {\n ${borderTabStyle};\n }\n\n ${contactLink}\n`;\n\nconst ItemContent = styled.div`\n display: flex;\n flex-direction: column;\n gap: ${(p) => p.theme.sizes?.normal};\n`;\n\nconst ItemHeader = styled(StyledText)`\n font-weight: bold;\n`;\n\ntype Props = {\n className: string;\n};\n\nconst ContactList: React.FC<Props> = ({ className, ...other }) => {\n const dispatch = useDispatch();\n const container = useContainer();\n const routeData = useRouteData();\n const {\n deflectionHeader = '',\n routes = {},\n contactMethods = [],\n categories = [],\n guides = [],\n deflectionAccordion = false,\n loading = false,\n } = useProperties<ContactListComponentProps>();\n\n const { contactCategory: contactCategoryRoute, guide: guideRoute = 'guide' } = routes;\n\n if (!categories.length && !contactMethods.length && !loading) {\n return createEmptyComponent(container, {\n ...other,\n className: appendClassNames(className, 'humany-contact-category-list'),\n });\n }\n\n const {\n name,\n params: { contactCategory },\n } = routeData;\n\n const selectedCategory: Category = findCategoryById(contactCategory, categories);\n\n return !contactMethods.length ? (\n <StyledItemList\n {...other}\n data-loading={loading}\n className={appendClassNames(className, 'humany-contact-category-list')}\n items={(selectedCategory && selectedCategory.items) || categories}\n renderItem={({ id, title, symbol, matches, items, description }: Category) =>\n !!matches || (items && !!items.length) ? (\n <li key={id} data-contact-category={id}>\n <StyledLink\n routeName={contactCategoryRoute || name}\n params={createParams({\n contactCategory: id,\n uriName: formatUrl(title),\n })}\n >\n {symbol && <SymbolBadge symbol={symbol} />}\n\n {!!description?.length ? (\n <ItemContent>\n <ItemHeader>{title}</ItemHeader>\n <StyledText>{description}</StyledText>\n </ItemContent>\n ) : (\n <StyledText>{title}</StyledText>\n )}\n </StyledLink>\n </li>\n ) : null\n }\n >\n <Loader loading={loading} />\n </StyledItemList>\n ) : (\n <>\n <DeflectionList\n className={className}\n guides={guides}\n categoryTitle={selectedCategory && selectedCategory.title}\n header={deflectionHeader}\n route={guideRoute}\n accordion={deflectionAccordion}\n loading={loading}\n />\n <StyledContactList\n data-loading={loading}\n className={className}\n contactMethods={contactMethods}\n dispatch={dispatch}\n >\n <Loader loading={loading} />\n </StyledContactList>\n </>\n );\n};\n\nexport default ContactList;\n"],"names":["DeflectionList","_a","_b","className","guides","header","accordion","loading","route","categoryTitle","other","__objRest","routeName","contactCategory","currentGuideId","useRouteData","componentName","useComponentDescriptor","container","useContainer","children","useChildren","dispatch","useDispatch","renderItem","useCallback","guide","index","items","defaultRenderer","id","title","React","AccordionListItem","formatUrl","child","Component","createEmptyComponent","__spreadProps","__spreadValues","appendClassNames","StyledGuideList","createParams","Loader","styled","GuideList","contentBox","loadingOpacity","DeflectionList$1","StyledContactList","ContactListUi","StyledItemList","ItemList","p","contactItemList","StyledLink","Link","borderTabStyle","contactLink","ItemContent","ItemHeader","StyledText","ContactList","routeData","deflectionHeader","routes","contactMethods","categories","deflectionAccordion","useProperties","contactCategoryRoute","guideRoute","name","selectedCategory","findCategoryById","symbol","matches","description","SymbolBadge"],"mappings":"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"}
package/dist/index.js DELETED
@@ -1,80 +0,0 @@
1
- var L = Object.defineProperty, S = Object.defineProperties;
2
- var k = Object.getOwnPropertyDescriptors;
3
- var P = Object.getOwnPropertySymbols;
4
- var x = Object.prototype.hasOwnProperty, E = Object.prototype.propertyIsEnumerable;
5
- var w = (t, e, s) => e in t ? L(t, e, { enumerable: !0, configurable: !0, writable: !0, value: s }) : t[e] = s, u = (t, e) => {
6
- for (var s in e || (e = {}))
7
- x.call(e, s) && w(t, s, e[s]);
8
- if (P)
9
- for (var s of P(e))
10
- E.call(e, s) && w(t, s, e[s]);
11
- return t;
12
- }, d = (t, e) => S(t, k(e));
13
- import { DataClient as F, DataType as M } from "@telia-ace/knowledge-data-client";
14
- import { updateForm as G, useForm as R, useExpand as $, fetchAccordionGuideIfMissing as j } from "@telia-ace/knowledge-widget-component-utilities";
15
- import { createEventSubscriber as z, extendComponent as B } from "@telia-ace/knowledge-widget-core";
16
- import { createReactComponent as K } from "@telia-ace/knowledge-widget-ui";
17
- const O = (t) => {
18
- const { events: e } = t.get("$widget"), [s, D] = z(e);
19
- return K(
20
- t,
21
- "contact-list",
22
- import("./contact-list.782f8714.js"),
23
- (r) => {
24
- const a = (o) => {
25
- r.writeProperties({ loading: !0, contactMethods: [], categories: [] }), r.actions.dispatch("fetch", { params: o });
26
- };
27
- r.actions.create("fetch", (o) => {
28
- const { submitButtonLabel: c = "Submit" } = r.properties(), h = (o.contactMethods || []).map((n) => d(u({}, n), {
29
- body: G(n, { submit: c })
30
- }));
31
- return r.actions.dispatch("fetched", d(u({}, o), {
32
- contactMethods: h,
33
- loading: !0
34
- }));
35
- }), r.actions.create("fetched", (o) => r.writeProperties(d(u({}, o), {
36
- guides: o.guides || [],
37
- loading: !1
38
- }))), t.getAsync("router").then((o) => {
39
- const { params: c } = o.getRouteData();
40
- a(c);
41
- }), s("router:changed", (o, { current: c }) => {
42
- a(c.routeData.params);
43
- }), R(t, r), $(r);
44
- }
45
- ).then(() => B(t, "contact-list", (r) => {
46
- r.actions.watch("contact-list.fetch", (a, o) => {
47
- const {
48
- deflection: c = {},
49
- deflectionPageSize: h = 5,
50
- deflectionAccordion: n
51
- } = r.properties(), { params: v = {} } = a, {
52
- contactCategory: g,
53
- guide: m,
54
- accordion: A
55
- } = v;
56
- return F.getInstance(t).then((f) => f.fetch(M.ContactMethodCategories, {
57
- contactMethodCategoryId: g
58
- }).then(({ contactMethods: l, categories: p }) => {
59
- var y;
60
- const b = Object.keys(c), C = b.length === 1 && !g ? b[0] : g;
61
- return (y = c[C]) != null && y.length ? f.fetch(M.Guides, {
62
- categories: c[C],
63
- take: h
64
- }).then((i) => n && m && A === r.node.name ? j(
65
- i,
66
- f,
67
- { guide: m }
68
- ) : new Promise(
69
- (I) => I(i)
70
- )).then(({ guides: i }) => o({ guides: i, contactMethods: l, categories: p })) : o({ contactMethods: l, categories: p });
71
- }));
72
- });
73
- })).then(() => {
74
- D();
75
- });
76
- }, Q = O;
77
- export {
78
- Q as default
79
- };
80
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../src/contact-list-component.ts"],"sourcesContent":["import {\n ContactsResult,\n DataClient,\n DataType,\n MatchResult,\n} from '@telia-ace/knowledge-data-client';\nimport { ContactMethodType } from '@telia-ace/knowledge-widget-adapters';\nimport {\n fetchAccordionGuideIfMissing,\n updateForm,\n useExpand,\n useForm,\n} from '@telia-ace/knowledge-widget-component-utilities';\nimport {\n Category,\n createEventSubscriber,\n extendComponent,\n Guide,\n} from '@telia-ace/knowledge-widget-core';\nimport { createReactComponent } from '@telia-ace/knowledge-widget-ui';\nimport { FormComponentInstanceProperties } from '@telia-ace/widget-forms';\nimport { Container } from '@webprovisions/platform';\n\nexport type ContactListComponentProps = {\n deflectionHeader?: string;\n deflection?: { [contactCategoryId: string]: string[] };\n deflectionPageSize?: number;\n routes?: {\n contactCategory?: string;\n guide?: string;\n };\n categories?: Category[]; // internal\n contactMethods?: ContactMethodType[]; // internal\n guides?: Guide[]; // internal\n deflectionAccordion?: boolean;\n} & FormComponentInstanceProperties;\n\nexport const ContactListComponent = (container: Container) => {\n const { events } = container.get('$widget');\n const [subscribe, unsubscribe] = createEventSubscriber(events);\n\n return createReactComponent(\n container,\n 'contact-list',\n import('./contact-list'),\n (component) => {\n const fetch = (params: { [key: string]: any }) => {\n component.writeProperties({ loading: true, contactMethods: [], categories: [] });\n component.actions.dispatch('fetch', { params });\n };\n\n component.actions.create('fetch', (data) => {\n const { submitButtonLabel = 'Submit' } =\n component.properties<ContactListComponentProps>();\n\n const contactMethods = (data.contactMethods || []).map((cm: ContactMethodType) => ({\n ...cm,\n body: updateForm(cm, { submit: submitButtonLabel }),\n }));\n\n return component.actions.dispatch('fetched', {\n ...data,\n contactMethods,\n loading: true,\n });\n });\n\n component.actions.create('fetched', (input) => {\n return component.writeProperties({\n ...input,\n guides: input.guides || [],\n loading: false,\n });\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 useForm(container, component);\n useExpand(component);\n }\n )\n .then(() => {\n return extendComponent(container, 'contact-list', (component) => {\n component.actions.watch('contact-list.fetch', (input, next) => {\n const {\n deflection = {},\n deflectionPageSize = 5,\n deflectionAccordion,\n } = component.properties<ContactListComponentProps>();\n const { params = {} } = input;\n const {\n contactCategory,\n guide: guideParam,\n accordion: accordionParam,\n } = params;\n return DataClient.getInstance(container).then((dataClient: DataClient) => {\n return dataClient\n .fetch(DataType.ContactMethodCategories, {\n contactMethodCategoryId: contactCategory,\n })\n .then(({ contactMethods, categories }: ContactsResult) => {\n const deflectionKeys = Object.keys(deflection);\n const currentCategory =\n deflectionKeys.length === 1 && !contactCategory\n ? deflectionKeys[0]\n : contactCategory;\n\n if (deflection[currentCategory]?.length) {\n return dataClient\n .fetch(DataType.Guides, {\n categories: deflection[currentCategory],\n take: deflectionPageSize,\n })\n .then((data: MatchResult) => {\n if (\n deflectionAccordion &&\n guideParam &&\n accordionParam === component.node.name\n ) {\n return fetchAccordionGuideIfMissing(\n data,\n dataClient,\n { guide: guideParam }\n );\n }\n return new Promise<MatchResult>((resolve) =>\n resolve(data)\n );\n })\n .then(({ guides }: MatchResult) => {\n return next({ guides, contactMethods, categories });\n });\n }\n\n return next({ contactMethods, categories });\n });\n });\n });\n });\n })\n .then(() => {\n unsubscribe();\n });\n};\n\nexport default ContactListComponent;\n"],"names":["ContactListComponent","container","events","subscribe","unsubscribe","createEventSubscriber","createReactComponent","component","fetch","params","data","submitButtonLabel","contactMethods","cm","__spreadProps","__spreadValues","updateForm","input","router","event","current","useForm","useExpand","extendComponent","next","deflection","deflectionPageSize","deflectionAccordion","contactCategory","guideParam","accordionParam","DataClient","dataClient","DataType","categories","deflectionKeys","currentCategory","_a","fetchAccordionGuideIfMissing","resolve","guides","ContactListComponent$1"],"mappings":"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"}
File without changes
File without changes