@telia-ace/widget-components-area 1.0.24 → 1.0.25-next.3

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.
@@ -1,5 +1,5 @@
1
1
  import { Container } from '@webprovisions/platform';
2
- declare type Symbol = {
2
+ type Symbol = {
3
3
  type: 'Uri' | 'Svg' | 'FontAwesome' | 'Text' | string;
4
4
  content: string;
5
5
  };
@@ -9,7 +9,7 @@ export declare enum AreaMode {
9
9
  Dropdown = "dropdown",
10
10
  Modal = "modal"
11
11
  }
12
- export declare type AreaComponentProps = {
12
+ export type AreaComponentProps = {
13
13
  mode: AreaMode;
14
14
  animation?: string;
15
15
  fullScreen?: boolean;
@@ -26,22 +26,30 @@ import { genericComponentStyling as L, Component as N } from "@telia-ace/widget-
26
26
  import { TransitionComponent as ee, Grid as O, useComponentDescriptor as te, useRenderState as ne, useContext as re, useProperties as ae, useChildren as oe, useContainer as se, useScroll as ie, createEmptyComponent as le, ColumnContext as j, filterCssProps as me, Dropdown as ce, DrawerAnimationType as de, Drawer as ue, Button as pe, filterCssPropsStyle as fe, paddedBorderTabStyle as ge, Text as he, SymbolBadge as ye } from "@telia-ace/widget-ui";
27
27
  import { appendClassNames as v, Logger as Ce } from "@telia-ace/widget-utilities";
28
28
  import a, { forwardRef as be, useCallback as $e } from "react";
29
- import { A as u } from "./index.d68141fc.js";
29
+ import { A as u } from "./index.892b6d04.js";
30
30
  const Ee = be(
31
31
  (x, i) => {
32
32
  var l = x, { children: e, className: t, renderState: n, animation: r } = l, g = d(l, ["children", "className", "renderState", "animation"]);
33
- return n ? /* @__PURE__ */ a.createElement(ee, {
34
- mountOnEnter: n !== p.hidden,
35
- timeout: 200,
36
- in: n === p.open,
37
- transitions: r,
38
- unmountOnExit: n === p.closed
39
- }, (m, h) => /* @__PURE__ */ a.createElement(xe, c(s({}, g), {
40
- animationCss: h,
41
- "data-state": m,
42
- ref: i,
43
- className: v("humany-animated-area", t)
44
- }), e)) : null;
33
+ return n ? /* @__PURE__ */ a.createElement(
34
+ ee,
35
+ {
36
+ mountOnEnter: n !== p.hidden,
37
+ timeout: 200,
38
+ in: n === p.open,
39
+ transitions: r,
40
+ unmountOnExit: n === p.closed
41
+ },
42
+ (m, h) => /* @__PURE__ */ a.createElement(
43
+ xe,
44
+ c(s({}, g), {
45
+ animationCss: h,
46
+ "data-state": m,
47
+ ref: i,
48
+ className: v("humany-animated-area", t)
49
+ }),
50
+ e
51
+ )
52
+ ) : null;
45
53
  }
46
54
  ), ve = Ee, xe = f(O)`
47
55
  ${L}
@@ -98,42 +106,34 @@ const Ee = be(
98
106
  animation: y,
99
107
  hidden: i === p.hidden,
100
108
  ref: V
101
- }), E = (() => y !== "none" ? /* @__PURE__ */ a.createElement(j.Provider, {
102
- value: $
103
- }, /* @__PURE__ */ a.createElement(ve, s({}, A), m.map((o) => /* @__PURE__ */ a.createElement(N, {
104
- key: o.id,
105
- id: o.id,
106
- branch: "default"
107
- })))) : i === p.closed ? null : /* @__PURE__ */ a.createElement(j.Provider, {
108
- value: $
109
- }, /* @__PURE__ */ a.createElement(Te, s({}, A), m.map((o) => /* @__PURE__ */ a.createElement(N, {
110
- key: o.id,
111
- id: o.id,
112
- branch: "default"
113
- })))))();
109
+ }), E = (() => y !== "none" ? /* @__PURE__ */ a.createElement(j.Provider, { value: $ }, /* @__PURE__ */ a.createElement(ve, s({}, A), m.map((o) => /* @__PURE__ */ a.createElement(N, { key: o.id, id: o.id, branch: "default" })))) : i === p.closed ? null : /* @__PURE__ */ a.createElement(j.Provider, { value: $ }, /* @__PURE__ */ a.createElement(Te, s({}, A), m.map((o) => /* @__PURE__ */ a.createElement(N, { key: o.id, id: o.id, branch: "default" })))))();
114
110
  if (C === u.Static)
115
111
  return E;
116
- const T = /* @__PURE__ */ a.createElement(we, s({
117
- className: "humany-area-trigger",
118
- title: J
119
- }, me(K)), S && /* @__PURE__ */ a.createElement(Se, null, S), w && /* @__PURE__ */ a.createElement(Ae, {
120
- symbol: w,
121
- size: I
122
- }));
112
+ const T = /* @__PURE__ */ a.createElement(
113
+ we,
114
+ s({
115
+ className: "humany-area-trigger",
116
+ title: J
117
+ }, me(K)),
118
+ S && /* @__PURE__ */ a.createElement(Se, null, S),
119
+ w && /* @__PURE__ */ a.createElement(Ae, { symbol: w, size: I })
120
+ );
123
121
  if (C === u.Dropdown)
124
- return /* @__PURE__ */ a.createElement(ce, {
125
- trigger: T
126
- }, E);
122
+ return /* @__PURE__ */ a.createElement(ce, { trigger: T }, E);
127
123
  if (C === u.Drawer) {
128
124
  const o = Object.values(de).includes(y) && {
129
125
  type: y
130
126
  } || void 0;
131
- return /* @__PURE__ */ a.createElement(ue, {
132
- header: F,
133
- animation: o,
134
- fullScreen: q,
135
- trigger: T
136
- }, E);
127
+ return /* @__PURE__ */ a.createElement(
128
+ ue,
129
+ {
130
+ header: F,
131
+ animation: o,
132
+ fullScreen: q,
133
+ trigger: T
134
+ },
135
+ E
136
+ );
137
137
  }
138
138
  return C === u.Modal && Ce.warn("modal area not implemented"), null;
139
139
  }, we = f(pe)`
@@ -183,4 +183,4 @@ const Ee = be(
183
183
  export {
184
184
  Oe as default
185
185
  };
186
- //# sourceMappingURL=area.e15136af.js.map
186
+ //# sourceMappingURL=area.c168254b.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"area.e15136af.js","sources":["../src/animated-area.tsx","../src/area.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { WidgetRenderState } from '@telia-ace/widget-core';\nimport { genericComponentStyling } from '@telia-ace/widget-types-grid';\nimport { Grid, TransitionComponent } from '@telia-ace/widget-ui';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React, { forwardRef } from 'react';\nimport { TransitionStatus } from 'react-transition-group/Transition';\n\nconst Area: React.FC<any> = forwardRef(\n ({ children, className, renderState, animation, ...other }, ref) => {\n if (!renderState) {\n return null;\n }\n\n return (\n <TransitionComponent\n mountOnEnter={renderState !== WidgetRenderState.hidden}\n timeout={200}\n in={renderState === WidgetRenderState.open}\n transitions={animation}\n unmountOnExit={renderState === WidgetRenderState.closed}\n >\n {(state: TransitionStatus, css?: string) => (\n <Wrapper\n {...other}\n animationCss={css}\n data-state={state}\n ref={ref}\n className={appendClassNames('humany-animated-area', className)}\n >\n {children}\n </Wrapper>\n )}\n </TransitionComponent>\n );\n }\n);\n\nexport default Area;\n\nconst Wrapper = styled(Grid)<any>`\n ${genericComponentStyling}\n ${(p) => !!p.animationCss && p.animationCss}\n ${(p) => !!p.scrollableCss && p.scrollableCss}\n text-size-adjust: 100%;\n input::-ms-clear {\n display: none;\n }\n ${(p) =>\n p.hidden &&\n p['data-state'] === 'exited' &&\n css`\n visibility: collapse;\n pointer-events: none;\n `};\n`;\n","import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { WidgetRenderState } from '@telia-ace/widget-core';\nimport { Component, genericComponentStyling } from '@telia-ace/widget-types-grid';\nimport {\n Button,\n ColumnContext,\n createEmptyComponent,\n Drawer,\n DrawerAnimationType,\n Dropdown,\n filterCssProps,\n filterCssPropsStyle,\n Grid,\n paddedBorderTabStyle,\n SymbolBadge,\n Text,\n useChildren,\n useComponentDescriptor,\n useContainer,\n useContext,\n useProperties,\n useRenderState,\n useScroll,\n} from '@telia-ace/widget-ui';\nimport { appendClassNames, Logger } from '@telia-ace/widget-utilities';\nimport { Widget } from '@webprovisions/platform';\nimport React, { useCallback } from 'react';\nimport AnimatedArea from './animated-area';\nimport { AreaComponentProps, AreaMode } from './area-component';\n\nconst Area: React.FC<any> = ({ className, ...other }) => {\n const { name } = useComponentDescriptor();\n const renderState = useRenderState();\n const context = useContext();\n const properties = useProperties<AreaComponentProps>();\n const children = useChildren();\n const container = useContainer();\n\n const { gap = '0' } = context;\n const {\n columns = 1,\n animation = 'none',\n scrollable = false,\n mode = AreaMode.Static,\n trigger = {},\n fullScreen,\n header,\n ...areaProperties\n } = properties;\n\n const { size = 24, symbol, label, ariaLabel, ...otherTriggerProps } = trigger;\n\n const [scrollableCss, elem] = useScroll(scrollable);\n\n const setRef = useCallback(\n (node: HTMLDivElement) => {\n const { events } = container.get('$widget') as Widget;\n events.dispatch('widget:area-rendered', {\n name,\n properties,\n element: node,\n });\n\n elem.current = node;\n return node;\n },\n [properties, renderState]\n );\n\n if (!children.length) {\n return createEmptyComponent(container, {\n ...other,\n className: appendClassNames(className, 'humany-area'),\n });\n }\n\n const props = {\n ...other,\n className: appendClassNames(className, 'humany-area', `humany-area-${name}`),\n scrollableCss,\n ...areaProperties,\n columns,\n gap,\n renderState,\n animation,\n hidden: renderState === WidgetRenderState.hidden,\n ref: setRef,\n };\n\n const content = (() => {\n if (animation !== 'none') {\n return (\n <ColumnContext.Provider value={columns}>\n <AnimatedArea {...props}>\n {children.map((child) => (\n <Component key={child.id} id={child.id} branch=\"default\" />\n ))}\n </AnimatedArea>\n </ColumnContext.Provider>\n );\n }\n\n if (renderState === WidgetRenderState.closed) {\n return null;\n }\n\n return (\n <ColumnContext.Provider value={columns}>\n <Wrapper {...props}>\n {children.map((child) => (\n <Component key={child.id} id={child.id} branch=\"default\" />\n ))}\n </Wrapper>\n </ColumnContext.Provider>\n );\n })();\n\n if (mode === AreaMode.Static) {\n return content;\n }\n\n const triggerButton = (\n <Trigger\n className=\"humany-area-trigger\"\n title={ariaLabel}\n {...filterCssProps(otherTriggerProps)}\n >\n {label && <TriggerLabel>{label}</TriggerLabel>}\n {symbol && <TriggerSymbolBadge symbol={symbol} size={size} />}\n </Trigger>\n );\n\n if (mode === AreaMode.Dropdown) {\n return <Dropdown trigger={triggerButton}>{content}</Dropdown>;\n }\n\n if (mode === AreaMode.Drawer) {\n const drawerAnimation =\n (Object.values(DrawerAnimationType).includes(animation as any) && {\n type: animation as DrawerAnimationType,\n }) ||\n undefined;\n return (\n <Drawer\n header={header}\n animation={drawerAnimation}\n fullScreen={fullScreen}\n trigger={triggerButton}\n >\n {content}\n </Drawer>\n );\n }\n\n if (mode === AreaMode.Modal) {\n Logger.warn('modal area not implemented');\n return null;\n }\n\n return null;\n};\n\nexport default Area;\n\nconst Trigger = styled(Button)`\n display: flex;\n align-items: inherit;\n align-self: center;\n width: fit-content;\n height: fit-content;\n ${filterCssPropsStyle}\n\n ${(p) =>\n p.theme.fonts &&\n `\n font-family: ${p.theme.fonts.type};\n font-size: ${p.theme.fonts.normal};\n `}\n\n &:focus-visible {\n ${paddedBorderTabStyle};\n }\n`;\n\nconst TriggerLabel = styled(Text)`\n margin: 0 ${(p) => p.theme.sizes?.small} 0 0;\n color: ${(p) => p.theme.colors?.text};\n`;\n\nconst TriggerSymbolBadge = styled(SymbolBadge)`\n path {\n fill: ${(p) => p.theme.colors?.text};\n }\n`;\n\nconst Wrapper = styled(Grid)<any>`\n ${genericComponentStyling}\n ${(p) => !!p.scrollableCss && p.scrollableCss}\n text-size-adjust: 100%;\n input::-ms-clear {\n display: none;\n }\n ${(p) =>\n p.hidden &&\n css`\n visibility: collapse;\n pointer-events: none;\n `};\n`;\n"],"names":["Area","forwardRef","_a","ref","_b","children","className","renderState","animation","other","__objRest","React","TransitionComponent","WidgetRenderState","state","css","Wrapper","__spreadProps","__spreadValues","appendClassNames","AnimatedArea","styled","Grid","genericComponentStyling","p","name","useComponentDescriptor","useRenderState","context","useContext","properties","useProperties","useChildren","container","useContainer","gap","columns","scrollable","mode","AreaMode","trigger","fullScreen","header","areaProperties","size","symbol","label","ariaLabel","otherTriggerProps","scrollableCss","elem","useScroll","setRef","useCallback","node","events","createEmptyComponent","props","content","ColumnContext","child","Component","triggerButton","Trigger","filterCssProps","TriggerLabel","TriggerSymbolBadge","Dropdown","drawerAnimation","DrawerAnimationType","Drawer","Logger","Button","filterCssPropsStyle","paddedBorderTabStyle","Text","SymbolBadge"],"mappings":"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"}
1
+ {"version":3,"file":"area.c168254b.js","sources":["../src/animated-area.tsx","../src/area.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { WidgetRenderState } from '@telia-ace/widget-core';\nimport { genericComponentStyling } from '@telia-ace/widget-types-grid';\nimport { Grid, TransitionComponent } from '@telia-ace/widget-ui';\nimport { appendClassNames } from '@telia-ace/widget-utilities';\nimport React, { forwardRef } from 'react';\nimport { TransitionStatus } from 'react-transition-group/Transition';\n\nconst Area: React.FC<any> = forwardRef(\n ({ children, className, renderState, animation, ...other }, ref) => {\n if (!renderState) {\n return null;\n }\n\n return (\n <TransitionComponent\n mountOnEnter={renderState !== WidgetRenderState.hidden}\n timeout={200}\n in={renderState === WidgetRenderState.open}\n transitions={animation}\n unmountOnExit={renderState === WidgetRenderState.closed}\n >\n {(state: TransitionStatus, css?: string) => (\n <Wrapper\n {...other}\n animationCss={css}\n data-state={state}\n ref={ref}\n className={appendClassNames('humany-animated-area', className)}\n >\n {children}\n </Wrapper>\n )}\n </TransitionComponent>\n );\n }\n);\n\nexport default Area;\n\nconst Wrapper = styled(Grid)<any>`\n ${genericComponentStyling}\n ${(p) => !!p.animationCss && p.animationCss}\n ${(p) => !!p.scrollableCss && p.scrollableCss}\n text-size-adjust: 100%;\n input::-ms-clear {\n display: none;\n }\n ${(p) =>\n p.hidden &&\n p['data-state'] === 'exited' &&\n css`\n visibility: collapse;\n pointer-events: none;\n `};\n`;\n","import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { WidgetRenderState } from '@telia-ace/widget-core';\nimport { Component, genericComponentStyling } from '@telia-ace/widget-types-grid';\nimport {\n Button,\n ColumnContext,\n createEmptyComponent,\n Drawer,\n DrawerAnimationType,\n Dropdown,\n filterCssProps,\n filterCssPropsStyle,\n Grid,\n paddedBorderTabStyle,\n SymbolBadge,\n Text,\n useChildren,\n useComponentDescriptor,\n useContainer,\n useContext,\n useProperties,\n useRenderState,\n useScroll,\n} from '@telia-ace/widget-ui';\nimport { appendClassNames, Logger } from '@telia-ace/widget-utilities';\nimport { Widget } from '@webprovisions/platform';\nimport React, { useCallback } from 'react';\nimport AnimatedArea from './animated-area';\nimport { AreaComponentProps, AreaMode } from './area-component';\n\nconst Area: React.FC<any> = ({ className, ...other }) => {\n const { name } = useComponentDescriptor();\n const renderState = useRenderState();\n const context = useContext();\n const properties = useProperties<AreaComponentProps>();\n const children = useChildren();\n const container = useContainer();\n\n const { gap = '0' } = context;\n const {\n columns = 1,\n animation = 'none',\n scrollable = false,\n mode = AreaMode.Static,\n trigger = {},\n fullScreen,\n header,\n ...areaProperties\n } = properties;\n\n const { size = 24, symbol, label, ariaLabel, ...otherTriggerProps } = trigger;\n\n const [scrollableCss, elem] = useScroll(scrollable);\n\n const setRef = useCallback(\n (node: HTMLDivElement) => {\n const { events } = container.get('$widget') as Widget;\n events.dispatch('widget:area-rendered', {\n name,\n properties,\n element: node,\n });\n\n elem.current = node;\n return node;\n },\n [properties, renderState]\n );\n\n if (!children.length) {\n return createEmptyComponent(container, {\n ...other,\n className: appendClassNames(className, 'humany-area'),\n });\n }\n\n const props = {\n ...other,\n className: appendClassNames(className, 'humany-area', `humany-area-${name}`),\n scrollableCss,\n ...areaProperties,\n columns,\n gap,\n renderState,\n animation,\n hidden: renderState === WidgetRenderState.hidden,\n ref: setRef,\n };\n\n const content = (() => {\n if (animation !== 'none') {\n return (\n <ColumnContext.Provider value={columns}>\n <AnimatedArea {...props}>\n {children.map((child) => (\n <Component key={child.id} id={child.id} branch=\"default\" />\n ))}\n </AnimatedArea>\n </ColumnContext.Provider>\n );\n }\n\n if (renderState === WidgetRenderState.closed) {\n return null;\n }\n\n return (\n <ColumnContext.Provider value={columns}>\n <Wrapper {...props}>\n {children.map((child) => (\n <Component key={child.id} id={child.id} branch=\"default\" />\n ))}\n </Wrapper>\n </ColumnContext.Provider>\n );\n })();\n\n if (mode === AreaMode.Static) {\n return content;\n }\n\n const triggerButton = (\n <Trigger\n className=\"humany-area-trigger\"\n title={ariaLabel}\n {...filterCssProps(otherTriggerProps)}\n >\n {label && <TriggerLabel>{label}</TriggerLabel>}\n {symbol && <TriggerSymbolBadge symbol={symbol} size={size} />}\n </Trigger>\n );\n\n if (mode === AreaMode.Dropdown) {\n return <Dropdown trigger={triggerButton}>{content}</Dropdown>;\n }\n\n if (mode === AreaMode.Drawer) {\n const drawerAnimation =\n (Object.values(DrawerAnimationType).includes(animation as any) && {\n type: animation as DrawerAnimationType,\n }) ||\n undefined;\n return (\n <Drawer\n header={header}\n animation={drawerAnimation}\n fullScreen={fullScreen}\n trigger={triggerButton}\n >\n {content}\n </Drawer>\n );\n }\n\n if (mode === AreaMode.Modal) {\n Logger.warn('modal area not implemented');\n return null;\n }\n\n return null;\n};\n\nexport default Area;\n\nconst Trigger = styled(Button)`\n display: flex;\n align-items: inherit;\n align-self: center;\n width: fit-content;\n height: fit-content;\n ${filterCssPropsStyle}\n\n ${(p) =>\n p.theme.fonts &&\n `\n font-family: ${p.theme.fonts.type};\n font-size: ${p.theme.fonts.normal};\n `}\n\n &:focus-visible {\n ${paddedBorderTabStyle};\n }\n`;\n\nconst TriggerLabel = styled(Text)`\n margin: 0 ${(p) => p.theme.sizes?.small} 0 0;\n color: ${(p) => p.theme.colors?.text};\n`;\n\nconst TriggerSymbolBadge = styled(SymbolBadge)`\n path {\n fill: ${(p) => p.theme.colors?.text};\n }\n`;\n\nconst Wrapper = styled(Grid)<any>`\n ${genericComponentStyling}\n ${(p) => !!p.scrollableCss && p.scrollableCss}\n text-size-adjust: 100%;\n input::-ms-clear {\n display: none;\n }\n ${(p) =>\n p.hidden &&\n css`\n visibility: collapse;\n pointer-events: none;\n `};\n`;\n"],"names":["Area","forwardRef","_a","ref","_b","children","className","renderState","animation","other","__objRest","React","TransitionComponent","WidgetRenderState","state","css","Wrapper","__spreadProps","__spreadValues","appendClassNames","AnimatedArea","styled","Grid","genericComponentStyling","p","name","useComponentDescriptor","useRenderState","context","useContext","properties","useProperties","useChildren","container","useContainer","gap","columns","scrollable","mode","AreaMode","trigger","fullScreen","header","areaProperties","size","symbol","label","ariaLabel","otherTriggerProps","scrollableCss","elem","useScroll","setRef","useCallback","node","events","createEmptyComponent","props","content","ColumnContext","child","Component","triggerButton","Trigger","filterCssProps","TriggerLabel","TriggerSymbolBadge","Dropdown","drawerAnimation","DrawerAnimationType","Drawer","Logger","Button","filterCssPropsStyle","paddedBorderTabStyle","Text","SymbolBadge"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { createReactComponent as t } from "@telia-ace/widget-ui";
2
2
  var r = /* @__PURE__ */ ((o) => (o.Static = "static", o.Drawer = "drawer", o.Dropdown = "dropdown", o.Modal = "modal", o))(r || {});
3
- const n = (o) => t(o, "area", import("./area.e15136af.js"), (a) => {
3
+ const n = (o) => t(o, "area", import("./area.c168254b.js"), (a) => {
4
4
  }), p = n;
5
5
  export {
6
6
  r as A,
7
7
  p as a
8
8
  };
9
- //# sourceMappingURL=index.d68141fc.js.map
9
+ //# sourceMappingURL=index.892b6d04.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d68141fc.js","sources":["../src/area-component.ts"],"sourcesContent":["import { createReactComponent } from '@telia-ace/widget-ui';\nimport { Container } from '@webprovisions/platform';\n\ntype Symbol = {\n type: 'Uri' | 'Svg' | 'FontAwesome' | 'Text' | string;\n content: string;\n};\n\nexport enum AreaMode {\n Static = 'static',\n Drawer = 'drawer',\n Dropdown = 'dropdown',\n Modal = 'modal',\n}\n\nexport type AreaComponentProps = {\n mode: AreaMode;\n animation?: string;\n fullScreen?: boolean;\n columns?: number;\n scrollable?: boolean;\n header?: string;\n trigger?: {\n symbol?: Symbol;\n label?: string;\n size?: number;\n ariaLabel?: string;\n };\n};\n\nexport const AreaComponent = (container: Container) => {\n return createReactComponent(container, 'area', import('./area'), (component) => {});\n};\n\nexport default AreaComponent;\n"],"names":["AreaMode","AreaComponent","container","createReactComponent","component","AreaComponent$1"],"mappings":";AAQY,IAAAA,sBAAAA,OACRA,EAAA,SAAS,UACTA,EAAA,SAAS,UACTA,EAAA,WAAW,YACXA,EAAA,QAAQ,SAJAA,IAAAA,KAAA,CAAA,CAAA;AAsBC,MAAAC,IAAgB,CAACC,MACnBC,EAAqBD,GAAW,QAAQ,OAAO,uBAAW,CAACE,MAAc;AAAA,CAAE,GAGtFC,IAAeJ;"}
1
+ {"version":3,"file":"index.892b6d04.js","sources":["../src/area-component.ts"],"sourcesContent":["import { createReactComponent } from '@telia-ace/widget-ui';\nimport { Container } from '@webprovisions/platform';\n\ntype Symbol = {\n type: 'Uri' | 'Svg' | 'FontAwesome' | 'Text' | string;\n content: string;\n};\n\nexport enum AreaMode {\n Static = 'static',\n Drawer = 'drawer',\n Dropdown = 'dropdown',\n Modal = 'modal',\n}\n\nexport type AreaComponentProps = {\n mode: AreaMode;\n animation?: string;\n fullScreen?: boolean;\n columns?: number;\n scrollable?: boolean;\n header?: string;\n trigger?: {\n symbol?: Symbol;\n label?: string;\n size?: number;\n ariaLabel?: string;\n };\n};\n\nexport const AreaComponent = (container: Container) => {\n return createReactComponent(container, 'area', import('./area'), (component) => {});\n};\n\nexport default AreaComponent;\n"],"names":["AreaMode","AreaComponent","container","createReactComponent","component","AreaComponent$1"],"mappings":";AAQY,IAAAA,sBAAAA,OACRA,EAAA,SAAS,UACTA,EAAA,SAAS,UACTA,EAAA,WAAW,YACXA,EAAA,QAAQ,SAJAA,IAAAA,KAAA,CAAA,CAAA;AAsBC,MAAAC,IAAgB,CAACC,MACnBC,EAAqBD,GAAW,QAAQ,OAAO,uBAAW,CAACE,MAAc;AAAA,CAAE,GAGtFC,IAAeJ;"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as t } from "./index.d68141fc.js";
1
+ import { a as t } from "./index.892b6d04.js";
2
2
  import "@telia-ace/widget-ui";
3
3
  export {
4
4
  t as default
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telia-ace/widget-components-area",
3
- "version": "1.0.24",
3
+ "version": "1.0.25-next.3",
4
4
  "description": "Area component for ACE Widgets.",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "author": "Telia Company AB",
@@ -21,10 +21,10 @@
21
21
  },
22
22
  "sideEffects": false,
23
23
  "dependencies": {
24
- "@telia-ace/widget-core": "^1.0.19",
25
- "@telia-ace/widget-types-grid": "^1.0.28",
26
- "@telia-ace/widget-ui": "^1.0.26",
27
- "@telia-ace/widget-utilities": "^1.0.8",
24
+ "@telia-ace/widget-core": "1.0.20-next.3",
25
+ "@telia-ace/widget-types-grid": "1.0.29-next.3",
26
+ "@telia-ace/widget-ui": "1.0.27-next.3",
27
+ "@telia-ace/widget-utilities": "1.0.9-next.3",
28
28
  "@webprovisions/platform": "^1.1.2"
29
29
  },
30
30
  "peerDependencies": {
@@ -37,9 +37,9 @@
37
37
  "devDependencies": {
38
38
  "@emotion/react": "^11.10.5",
39
39
  "@emotion/styled": "^11.10.5",
40
- "@telia-ace/widget-developer-tools": "^1.0.14",
41
- "@types/react": "^18.0.25",
42
- "@types/react-dom": "^18.0.8",
40
+ "@telia-ace/widget-developer-tools": "1.0.15-next.3",
41
+ "@types/react": "^18.0.26",
42
+ "@types/react-dom": "^18.0.10",
43
43
  "@types/react-transition-group": "^4.4.5",
44
44
  "react": "^18.2.0",
45
45
  "react-dom": "^18.2.0",