linear-react-components-ui 1.1.26-beta.16 → 1.1.26-beta.17
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/lib/alerts/index.d.ts +3 -3
- package/lib/alerts/index.js +2 -1
- package/lib/buttons/DefaultButton.js +1 -1
- package/lib/buttons/index.d.ts +1 -1
- package/lib/buttons/index.js +1 -0
- package/lib/calendar/base/helpers.js +27 -84
- package/lib/calendar/base/helpers.js.map +1 -1
- package/lib/calendar/base/index.js +29 -33
- package/lib/calendar/base/index.js.map +1 -1
- package/lib/checkbox/index.js +31 -44
- package/lib/checkbox/index.js.map +1 -1
- package/lib/dialog/Alert.js +10 -12
- package/lib/dialog/Alert.js.map +1 -1
- package/lib/dialog/Custom.js +2 -3
- package/lib/dialog/Custom.js.map +1 -1
- package/lib/dialog/Error.js +9 -11
- package/lib/dialog/Error.js.map +1 -1
- package/lib/dialog/Information.js +8 -10
- package/lib/dialog/Information.js.map +1 -1
- package/lib/dialog/Question.js +4 -4
- package/lib/dialog/Warning.js +11 -13
- package/lib/dialog/Warning.js.map +1 -1
- package/lib/dialog/base/index.d.ts +4 -0
- package/lib/dialog/base/index.js +78 -72
- package/lib/dialog/base/index.js.map +1 -1
- package/lib/dialog/form/index.js +3 -7
- package/lib/dialog/form/index.js.map +1 -1
- package/lib/drawer/Drawer.js +4 -5
- package/lib/drawer/Drawer.js.map +1 -1
- package/lib/dropdown/Popup.js.map +1 -1
- package/lib/dropdown/index.d.ts +3 -0
- package/lib/dropdown/index.js +6 -0
- package/lib/dropdown/index.js.map +1 -0
- package/lib/dropdown/withDropdown.js +1 -1
- package/lib/fieldset/index.js +17 -18
- package/lib/fieldset/index.js.map +1 -1
- package/lib/form/FieldArray.js +18 -20
- package/lib/form/FieldArray.js.map +1 -1
- package/lib/form/helpers.js +16 -17
- package/lib/form/helpers.js.map +1 -1
- package/lib/form/index.js +46 -52
- package/lib/form/index.js.map +1 -1
- package/lib/index.js +20 -23
- package/lib/index.js.map +1 -1
- package/lib/inputs/base/InputTextBase.js +1 -1
- package/lib/inputs/color/index.js +22 -25
- package/lib/inputs/color/index.js.map +1 -1
- package/lib/inputs/date/index.js +15 -19
- package/lib/inputs/date/index.js.map +1 -1
- package/lib/inputs/file/DefaultFile.js +1 -1
- package/lib/inputs/file/DragDropFile.js +3 -4
- package/lib/inputs/file/DragDropFile.js.map +1 -1
- package/lib/inputs/file/File.js +9 -11
- package/lib/inputs/file/File.js.map +1 -1
- package/lib/inputs/file/FileButtonSettings.js +1 -1
- package/lib/inputs/index.d.ts +14 -0
- package/lib/inputs/index.js +40 -0
- package/lib/inputs/index.js.map +1 -0
- package/lib/inputs/inputHOC.js +0 -1
- package/lib/inputs/inputHOC.js.map +1 -1
- package/lib/inputs/multiSelect/ActionButtons.js +16 -19
- package/lib/inputs/multiSelect/ActionButtons.js.map +1 -1
- package/lib/inputs/number/format_number.js +6 -7
- package/lib/inputs/number/format_number.js.map +1 -1
- package/lib/inputs/period/helper.js +19 -27
- package/lib/inputs/period/helper.js.map +1 -1
- package/lib/inputs/period/index.js +4 -5
- package/lib/inputs/period/index.js.map +1 -1
- package/lib/inputs/search/index.js +1 -1
- package/lib/inputs/select/helper.js +22 -23
- package/lib/inputs/select/helper.js.map +1 -1
- package/lib/inputs/select/index.js +7 -8
- package/lib/inputs/select/index.js.map +1 -1
- package/lib/inputs2/checkboxfield/index.js +1 -2
- package/lib/inputs2/checkboxfield/index.js.map +1 -1
- package/lib/inputs2/colorfield/index.js +1 -4
- package/lib/inputs2/colorfield/index.js.map +1 -1
- package/lib/inputs2/date/datefield/calendarbox.js +1 -4
- package/lib/inputs2/date/datefield/calendarbox.js.map +1 -1
- package/lib/inputs2/date/datefield/index.js +0 -1
- package/lib/inputs2/date/datefield/index.js.map +1 -1
- package/lib/inputs2/date/dateperiodfield/calendarbox.js +16 -19
- package/lib/inputs2/date/dateperiodfield/calendarbox.js.map +1 -1
- package/lib/inputs2/date/dateperiodfield/index.js +0 -1
- package/lib/inputs2/date/dateperiodfield/index.js.map +1 -1
- package/lib/inputs2/date/dateperiodfield/triggers.js +14 -18
- package/lib/inputs2/date/dateperiodfield/triggers.js.map +1 -1
- package/lib/inputs2/date/helpers.js +19 -30
- package/lib/inputs2/date/helpers.js.map +1 -1
- package/lib/inputs2/filefield/index.js +17 -20
- package/lib/inputs2/filefield/index.js.map +1 -1
- package/lib/inputs2/index.js +18 -18
- package/lib/inputs2/numberfield/currency.js +6 -11
- package/lib/inputs2/numberfield/currency.js.map +1 -1
- package/lib/inputs2/numberfield/decimal.js +9 -14
- package/lib/inputs2/numberfield/decimal.js.map +1 -1
- package/lib/inputs2/numberfield/index.js +12 -17
- package/lib/inputs2/numberfield/index.js.map +1 -1
- package/lib/inputs2/radiofield/index.js +1 -2
- package/lib/inputs2/radiofield/index.js.map +1 -1
- package/lib/inputs2/selectfield/index.js +4 -5
- package/lib/inputs2/selectfield/index.js.map +1 -1
- package/lib/inputs2/textareafield/index.js +4 -5
- package/lib/inputs2/textareafield/index.js.map +1 -1
- package/lib/inputs2/textfield/index.js +4 -5
- package/lib/inputs2/textfield/index.js.map +1 -1
- package/lib/internals/constants.js +3 -4
- package/lib/internals/constants.js.map +1 -1
- package/lib/labels/DefaultLabel.js +1 -1
- package/lib/labels/index.d.ts +1 -1
- package/lib/labels/index.js +5 -4
- package/lib/list/helpers.js +4 -6
- package/lib/list/helpers.js.map +1 -1
- package/lib/menus/float/index.js +1 -1
- package/lib/menus/sidenav/NavMenuItem.js +1 -1
- package/lib/menus/sidenav/NavSubMenuItem.js +1 -1
- package/lib/panel/Default.js +14 -15
- package/lib/panel/Default.js.map +1 -1
- package/lib/popover/index.js +1 -1
- package/lib/radio/index.js +1 -1
- package/lib/skeleton/index.js +13 -14
- package/lib/skeleton/index.js.map +1 -1
- package/lib/spinner/index.d.ts +2 -0
- package/lib/spinner/index.js +1 -0
- package/lib/spinner/index.js.map +1 -1
- package/lib/table/Body.js +23 -26
- package/lib/table/Body.js.map +1 -1
- package/lib/tabs/DropdownTabs.js +31 -40
- package/lib/tabs/DropdownTabs.js.map +1 -1
- package/lib/tabs/MenuTabs.js +16 -19
- package/lib/tabs/MenuTabs.js.map +1 -1
- package/lib/tabs/context.js +3 -3
- package/lib/treetable/Body.js +18 -24
- package/lib/treetable/Body.js.map +1 -1
- package/lib/treetable/Header.js +9 -12
- package/lib/treetable/Header.js.map +1 -1
- package/lib/treetable/Row.js +37 -40
- package/lib/treetable/Row.js.map +1 -1
- package/lib/uitour/index.js +3 -5
- package/lib/uitour/index.js.map +1 -1
- package/package.json +277 -34
- package/lib/buttons/ButtonGroups.js +0 -13
- package/lib/buttons/ButtonGroups.js.map +0 -1
- package/lib/dropdown/helper.js +0 -9
- package/lib/dropdown/helper.js.map +0 -1
- package/lib/panel/ToolBar.js +0 -20
- package/lib/panel/ToolBar.js.map +0 -1
package/lib/tabs/context.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as G } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { useState as p, useRef as H, useMemo as v, useCallback as b, useEffect as C, createContext as J } from "react";
|
|
3
3
|
import D from "../_virtual/lodash.js";
|
|
4
4
|
import { getTabs as M } from "./tabHelpers.js";
|
|
5
|
-
const K =
|
|
5
|
+
const K = J({});
|
|
6
6
|
function V({
|
|
7
7
|
children: O,
|
|
8
8
|
tabs: x,
|
|
@@ -15,7 +15,7 @@ function V({
|
|
|
15
15
|
keepPanelsInOrder: j,
|
|
16
16
|
keepTabOriginalPosition: k = !0
|
|
17
17
|
}) {
|
|
18
|
-
const [o, l] = p(f), [I, R] = p(() => d.current?.clientWidth ?? 0), [n, a] = p(M(x)), h =
|
|
18
|
+
const [o, l] = p(f), [I, R] = p(() => d.current?.clientWidth ?? 0), [n, a] = p(M(x)), h = H(null), z = (h.current?.clientWidth ?? 0) - 38 - (W ? 15 : 0), E = v(() => typeof c == "string" ? c === "auto" ? 100 : parseInt(c) || 100 : c, [c]), m = Math.round(z / E);
|
|
19
19
|
f && f !== o && l(f), n.length > 0 && o === null && l(n[0]?.id);
|
|
20
20
|
const u = v(() => z === 0 ? [] : n.slice(m), [n, m, I]), g = v(() => n.slice(0, m), [n, m, I]), q = n.length, y = b((e) => {
|
|
21
21
|
const t = u.findIndex((s) => s.id === e);
|
package/lib/treetable/Body.js
CHANGED
|
@@ -2,36 +2,30 @@ import { jsx as c } from "react/jsx-runtime";
|
|
|
2
2
|
import { c as d } from "../_virtual/compiler-runtime.js";
|
|
3
3
|
import { useContext as w, useState as u, useEffect as R } from "react";
|
|
4
4
|
import "../_virtual/lodash.js";
|
|
5
|
-
import "../table/helpers.js";
|
|
6
5
|
import T from "../table/Body.js";
|
|
7
|
-
import '../assets/styles/table.css'
|
|
8
|
-
import "react-dom";
|
|
9
|
-
/* empty css */
|
|
10
|
-
/* empty css */
|
|
11
|
-
/* empty css */
|
|
12
|
-
/* empty css */
|
|
6
|
+
import '../assets/styles/table.css';/* empty css */
|
|
13
7
|
import { TreeTableContext as x, searchRootElements as E } from "./helpers.js";
|
|
14
8
|
import y from "./Row.js";
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
data:
|
|
18
|
-
rootPropName:
|
|
19
|
-
stylesForRow:
|
|
9
|
+
const $ = () => {
|
|
10
|
+
const e = d.c(11), {
|
|
11
|
+
data: t,
|
|
12
|
+
rootPropName: s,
|
|
13
|
+
stylesForRow: p,
|
|
20
14
|
parentPropName: f
|
|
21
|
-
} = w(x), [
|
|
22
|
-
let
|
|
23
|
-
|
|
24
|
-
const
|
|
25
|
-
n(
|
|
26
|
-
},
|
|
27
|
-
let
|
|
28
|
-
|
|
15
|
+
} = w(x), [l, n] = u();
|
|
16
|
+
let m;
|
|
17
|
+
e[0] !== t || e[1] !== f ? (m = () => {
|
|
18
|
+
const o = E(t, f, 0);
|
|
19
|
+
n(o);
|
|
20
|
+
}, e[0] = t, e[1] = f, e[2] = m) : m = e[2];
|
|
21
|
+
let a;
|
|
22
|
+
e[3] !== t ? (a = [t], e[3] = t, e[4] = a) : a = e[4], R(m, a);
|
|
29
23
|
let r;
|
|
30
|
-
|
|
31
|
-
let
|
|
32
|
-
return
|
|
24
|
+
e[5] !== l || e[6] !== s || e[7] !== p ? (r = l && l.map((o) => /* @__PURE__ */ c(y, { dataRow: o, rowLevel: o.rowLevel ? o.rowLevel + 1 : 0, rowId: `${o[s]}`, style: p }, o[s])), e[5] = l, e[6] = s, e[7] = p, e[8] = r) : r = e[8];
|
|
25
|
+
let i;
|
|
26
|
+
return e[9] !== r ? (i = /* @__PURE__ */ c(T, { children: r }), e[9] = r, e[10] = i) : i = e[10], i;
|
|
33
27
|
};
|
|
34
28
|
export {
|
|
35
|
-
|
|
29
|
+
$ as default
|
|
36
30
|
};
|
|
37
31
|
//# sourceMappingURL=Body.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Body.js","sources":["../../src/lib/treetable/Body.tsx"],"sourcesContent":["import { useContext, useEffect, useState } from 'react';\nimport { TBody } from '../table';\nimport { searchRootElements, TreeTableContext } from './helpers';\nimport TreeRow from './Row';\n\nconst TreeTableBody = () => {\n const {\n data,\n rootPropName,\n stylesForRow,\n parentPropName,\n } = useContext(TreeTableContext);\n\n const [rootElements, setRootElements] = useState<Array<{ [key: string]: any }>>();\n\n useEffect(() => {\n const elements = searchRootElements(data, parentPropName, 0);\n setRootElements(elements);\n }, [data]);\n\n return (\n <TBody>\n {rootElements && rootElements.map(element => (\n <TreeRow\n dataRow={element}\n rowLevel={element.rowLevel ? element.rowLevel + 1 : 0}\n key={element[rootPropName]}\n rowId={`${element[rootPropName]}`}\n style={stylesForRow} />\n ))}\n </TBody>\n );\n};\n\nexport default TreeTableBody;\n"],"names":["TreeTableBody","$","_c","data","rootPropName","stylesForRow","parentPropName","useContext","TreeTableContext","rootElements","setRootElements","useState","t0","elements","searchRootElements","t1","useEffect","t2","map","element","jsx","TreeRow","rowLevel","t3","TBody"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Body.js","sources":["../../src/lib/treetable/Body.tsx"],"sourcesContent":["import { useContext, useEffect, useState } from 'react';\nimport { TBody } from '../table';\nimport { searchRootElements, TreeTableContext } from './helpers';\nimport TreeRow from './Row';\n\nconst TreeTableBody = () => {\n const {\n data,\n rootPropName,\n stylesForRow,\n parentPropName,\n } = useContext(TreeTableContext);\n\n const [rootElements, setRootElements] = useState<Array<{ [key: string]: any }>>();\n\n useEffect(() => {\n const elements = searchRootElements(data, parentPropName, 0);\n setRootElements(elements);\n }, [data]);\n\n return (\n <TBody>\n {rootElements && rootElements.map(element => (\n <TreeRow\n dataRow={element}\n rowLevel={element.rowLevel ? element.rowLevel + 1 : 0}\n key={element[rootPropName]}\n rowId={`${element[rootPropName]}`}\n style={stylesForRow} />\n ))}\n </TBody>\n );\n};\n\nexport default TreeTableBody;\n"],"names":["TreeTableBody","$","_c","data","rootPropName","stylesForRow","parentPropName","useContext","TreeTableContext","rootElements","setRootElements","useState","t0","elements","searchRootElements","t1","useEffect","t2","map","element","jsx","TreeRow","rowLevel","t3","TBody"],"mappings":";;;;;;;;AAKA,MAAMA,IAAgBA,MAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,EAAA,GACpB;AAAA,IAAAC,MAAAA;AAAAA,IAAAC,cAAAA;AAAAA,IAAAC,cAAAA;AAAAA,IAAAC,gBAAAA;AAAAA,EAAAA,IAKIC,EAAWC,CAAgB,GAE/B,CAAAC,GAAAC,CAAA,IAAwCC,EAAAA;AAA0C,MAAAC;AAAA,EAAAX,EAAA,CAAA,MAAAE,KAAAF,SAAAK,KAExEM,IAAAA,MAAA;AACR,UAAAC,IAAiBC,EAAmBX,GAAMG,GAAgB,CAAC;AAC3DI,IAAAA,EAAgBG,CAAQ;AAAA,EAAC,GAC1BZ,OAAAE,GAAAF,OAAAK,GAAAL,OAAAW,KAAAA,IAAAX,EAAA,CAAA;AAAA,MAAAc;AAAA,EAAAd,SAAAE,KAAEY,IAAA,CAACZ,CAAI,GAACF,OAAAE,GAAAF,OAAAc,KAAAA,IAAAd,EAAA,CAAA,GAHTe,EAAUJ,GAGPG,CAAM;AAAC,MAAAE;AAAA,EAAAhB,EAAA,CAAA,MAAAQ,KAAAR,SAAAG,KAAAH,EAAA,CAAA,MAAAI,KAILY,IAAAR,KAAgBA,EAAYS,IAAKC,CAAAA,MAChC,gBAAAC,EAACC,GAAA,EACUF,SAAAA,GACC,UAAAA,EAAOG,WAAYH,EAAOG,WAAY,IAAtC,GAEH,UAAGH,EAAQf,CAAY,CAAC,IACxBC,OAAAA,EAAAA,GAFFc,EAAQf,CAAY,CAEN,CACtB,GAACH,OAAAQ,GAAAR,OAAAG,GAAAH,OAAAI,GAAAJ,OAAAgB,KAAAA,IAAAhB,EAAA,CAAA;AAAA,MAAAsB;AAAA,SAAAtB,SAAAgB,KARJM,IAAA,gBAAAH,EAACI,KACEP,UAAAA,EAAAA,CAQH,GAAQhB,OAAAgB,GAAAhB,QAAAsB,KAAAA,IAAAtB,EAAA,EAAA,GATRsB;AASQ;"}
|
package/lib/treetable/Header.js
CHANGED
|
@@ -1,31 +1,28 @@
|
|
|
1
1
|
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
-
import { c as
|
|
3
|
-
import { useContext as
|
|
2
|
+
import { c as n } from "../_virtual/compiler-runtime.js";
|
|
3
|
+
import { useContext as a } from "react";
|
|
4
4
|
import "../_virtual/lodash.js";
|
|
5
|
-
import
|
|
5
|
+
import p from "../table/Header.js";
|
|
6
6
|
import s from "../table/Row.js";
|
|
7
|
-
import "../table/helpers.js";
|
|
8
|
-
import '../assets/styles/table.css';import '../assets/styles/skeleton.css';import '../assets/styles/gridlayout.css';/* empty css */
|
|
9
|
-
/* empty css */
|
|
10
7
|
import f from "../table/HeaderColumn.js";
|
|
11
|
-
|
|
8
|
+
import '../assets/styles/table.css';/* empty css */
|
|
12
9
|
import { TreeTableContext as c } from "./helpers.js";
|
|
13
10
|
import l from "../node_modules/uuid/dist/v1.js";
|
|
14
|
-
const
|
|
15
|
-
const e =
|
|
11
|
+
const R = () => {
|
|
12
|
+
const e = n.c(5), {
|
|
16
13
|
dataColumns: m
|
|
17
|
-
} =
|
|
14
|
+
} = a(c);
|
|
18
15
|
let r;
|
|
19
16
|
e[0] === Symbol.for("react.memo_cache_sentinel") ? (r = l(), e[0] = r) : r = e[0];
|
|
20
17
|
let t;
|
|
21
18
|
e[1] !== m ? (t = m.map(d), e[1] = m, e[2] = t) : t = e[2];
|
|
22
19
|
let o;
|
|
23
|
-
return e[3] !== t ? (o = /* @__PURE__ */ i(
|
|
20
|
+
return e[3] !== t ? (o = /* @__PURE__ */ i(p, { children: /* @__PURE__ */ i(s, { children: t }, `tr-header-${r}`) }), e[3] = t, e[4] = o) : o = e[4], o;
|
|
24
21
|
};
|
|
25
22
|
function d(e) {
|
|
26
23
|
return /* @__PURE__ */ i(f, { style: e.style, children: e.title }, `th-${e.name}-${l()}`);
|
|
27
24
|
}
|
|
28
25
|
export {
|
|
29
|
-
|
|
26
|
+
R as default
|
|
30
27
|
};
|
|
31
28
|
//# sourceMappingURL=Header.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sources":["../../src/lib/treetable/Header.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { v1 as uuid } from 'uuid';\nimport { THeader, Th, TRow as Tr } from '../table';\nimport { TreeTableContext } from './helpers';\n\nconst TreeTableHeader = () => {\n const { dataColumns } = useContext(TreeTableContext);\n\n return (\n <THeader>\n <Tr key={`tr-header-${uuid()}`}>\n {dataColumns.map(column => (\n <Th\n key={`th-${column.name}-${uuid()}`}\n style={column.style}>\n {column.title}\n </Th>\n ))}\n </Tr>\n </THeader>\n );\n};\n\nexport default TreeTableHeader;\n"],"names":["TreeTableHeader","$","_c","dataColumns","useContext","TreeTableContext","t0","Symbol","for","uuid","t1","map","_temp","t2","jsx","THeader","Tr","column","Th","style","title","name"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Header.js","sources":["../../src/lib/treetable/Header.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { v1 as uuid } from 'uuid';\nimport { THeader, Th, TRow as Tr } from '../table';\nimport { TreeTableContext } from './helpers';\n\nconst TreeTableHeader = () => {\n const { dataColumns } = useContext(TreeTableContext);\n\n return (\n <THeader>\n <Tr key={`tr-header-${uuid()}`}>\n {dataColumns.map(column => (\n <Th\n key={`th-${column.name}-${uuid()}`}\n style={column.style}>\n {column.title}\n </Th>\n ))}\n </Tr>\n </THeader>\n );\n};\n\nexport default TreeTableHeader;\n"],"names":["TreeTableHeader","$","_c","dataColumns","useContext","TreeTableContext","t0","Symbol","for","uuid","t1","map","_temp","t2","jsx","THeader","Tr","column","Th","style","title","name"],"mappings":";;;;;;;;;;AAKA,MAAMA,IAAkBA,MAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,CAAA,GACtB;AAAA,IAAAC,aAAAA;AAAAA,EAAAA,IAAwBC,EAAWC,CAAgB;AAAE,MAAAC;AAAA,EAAAL,EAAA,CAAA,MAAAM,OAAAC,IAAA,2BAAA,KAI3BF,IAAAG,EAAAA,GAAMR,OAAAK,KAAAA,IAAAL,EAAA,CAAA;AAAA,MAAAS;AAAA,EAAAT,SAAAE,KACzBO,IAAAP,EAAWQ,IAAKC,CAMhB,GAACX,OAAAE,GAAAF,OAAAS,KAAAA,IAAAT,EAAA,CAAA;AAAA,MAAAY;AAAA,SAAAZ,SAAAS,KARNG,IAAA,gBAAAC,EAACC,KACC,UAAA,gBAAAD,EAACE,GAAA,EACEN,eADM,aAAaJ,CAAM,EAQ5B,EAAA,CACF,GAAUL,OAAAS,GAAAT,OAAAY,KAAAA,IAAAZ,EAAA,CAAA,GAVVY;AAUU;AAdU,SAAAD,EAAAK,GAAA;AAAA,SAOd,gBAAAH,EAACI,GAAA,EAEQ,OAAAD,EAAME,OACZF,UAAAA,EAAMG,MAAAA,GAFF,MAAMH,EAAMI,IAAK,IAAIZ,EAAAA,CAAM,EAGlC;AAAK;"}
|
package/lib/treetable/Row.js
CHANGED
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
import { jsxs as j, jsx as t } from "react/jsx-runtime";
|
|
2
2
|
import { c as Ve } from "../_virtual/compiler-runtime.js";
|
|
3
|
-
import { useContext as We, useState as A, useRef as Xe, useEffect as
|
|
3
|
+
import { useContext as We, useState as A, useRef as Xe, useEffect as me, Fragment as $e, Children as Ye, isValidElement as qe, createElement as He } from "react";
|
|
4
4
|
import Je from "../_virtual/lodash.js";
|
|
5
5
|
import Qe from "../icons/index.js";
|
|
6
6
|
import ze from "../spinner/SpinnerLoading.js";
|
|
7
|
-
import "../table/helpers.js";
|
|
8
7
|
import ke from "../table/Row.js";
|
|
9
|
-
import '../assets/styles/table.css';import '../assets/styles/skeleton.css';import '../assets/styles/gridlayout.css';/* empty css */
|
|
10
|
-
/* empty css */
|
|
11
8
|
import Be from "../table/RowColumn.js";
|
|
12
|
-
|
|
9
|
+
import '../assets/styles/table.css';/* empty css */
|
|
13
10
|
import Oe from "../toolbar/index.js";
|
|
14
11
|
import { TreeTableContext as Ue, searchChildrensPerRow as Ze } from "./helpers.js";
|
|
15
12
|
import he from "../node_modules/uuid/dist/v1.js";
|
|
16
13
|
import Me from "../toolbar/ToolBarGroup.js";
|
|
17
|
-
const et = (
|
|
14
|
+
const et = (m) => {
|
|
18
15
|
const e = Ve.c(103), {
|
|
19
16
|
data: h,
|
|
20
17
|
dataColumns: i,
|
|
21
18
|
rootPropName: D,
|
|
22
|
-
stylesForRow:
|
|
23
|
-
parentPropName:
|
|
19
|
+
stylesForRow: ue,
|
|
20
|
+
parentPropName: pe,
|
|
24
21
|
styleForLeftToolbar: be,
|
|
25
22
|
onClickFirstColumn: G,
|
|
26
23
|
onClickGetChildrens: B,
|
|
@@ -28,24 +25,24 @@ const et = (f) => {
|
|
|
28
25
|
rightToolbarElements: V,
|
|
29
26
|
styleForRightToolbar: ge,
|
|
30
27
|
toolbarElementsValidations: c,
|
|
31
|
-
openNodeId:
|
|
28
|
+
openNodeId: u
|
|
32
29
|
} = We(Ue), {
|
|
33
30
|
rowId: n,
|
|
34
31
|
dataRow: o,
|
|
35
32
|
rowLevel: O
|
|
36
|
-
} =
|
|
33
|
+
} = m, [d, we] = A(!1), [s, je] = A(), [W, Ce] = A(!1), [f, Pe] = A(!1), [ve, Ae] = A(!1), ye = Xe(null);
|
|
37
34
|
let X;
|
|
38
|
-
e[0] !== h || e[1] !==
|
|
39
|
-
const l = Ze(h,
|
|
35
|
+
e[0] !== h || e[1] !== pe || e[2] !== n || e[3] !== O ? (X = () => {
|
|
36
|
+
const l = Ze(h, pe, n, O);
|
|
40
37
|
je(l), Ce(!1);
|
|
41
|
-
}, e[0] = h, e[1] =
|
|
42
|
-
const
|
|
38
|
+
}, e[0] = h, e[1] = pe, e[2] = n, e[3] = O, e[4] = X) : X = e[4];
|
|
39
|
+
const p = X;
|
|
43
40
|
let Y;
|
|
44
|
-
e[5] !== ve || e[6] !== B || e[7] !== d || e[8] !== n || e[9] !==
|
|
41
|
+
e[5] !== ve || e[6] !== B || e[7] !== d || e[8] !== n || e[9] !== p ? (Y = () => {
|
|
45
42
|
!ve && !d ? (we(!0), Ce(!0), B?.(n) && typeof B(n).finally == "function" && B(n).then(tt).catch(lt).finally(() => {
|
|
46
|
-
|
|
43
|
+
p();
|
|
47
44
|
}), Ae(!0)) : we(ot);
|
|
48
|
-
}, e[5] = ve, e[6] = B, e[7] = d, e[8] = n, e[9] =
|
|
45
|
+
}, e[5] = ve, e[6] = B, e[7] = d, e[8] = n, e[9] = p, e[10] = Y) : Y = e[10];
|
|
49
46
|
const Ee = Y;
|
|
50
47
|
let q;
|
|
51
48
|
e[11] !== o || e[12] !== c ? (q = (l) => {
|
|
@@ -60,10 +57,10 @@ const et = (f) => {
|
|
|
60
57
|
let z = {};
|
|
61
58
|
return r && r.forEach((de) => {
|
|
62
59
|
const {
|
|
63
|
-
validator:
|
|
60
|
+
validator: fe,
|
|
64
61
|
onDenied: M
|
|
65
62
|
} = de;
|
|
66
|
-
Je.isEmpty(z) &&
|
|
63
|
+
Je.isEmpty(z) && fe && fe(o) && M && (z = a[M] || a.unvisible);
|
|
67
64
|
}), z;
|
|
68
65
|
}, e[11] = o, e[12] = c, e[13] = q) : q = e[13];
|
|
69
66
|
const _e = q;
|
|
@@ -75,7 +72,7 @@ const et = (f) => {
|
|
|
75
72
|
const {
|
|
76
73
|
validationKey: z,
|
|
77
74
|
onNodeElementClick: de,
|
|
78
|
-
...
|
|
75
|
+
...fe
|
|
79
76
|
} = a.props;
|
|
80
77
|
let M, Ie = {};
|
|
81
78
|
return c && z && (M = _e(z)), de && (Ie = {
|
|
@@ -84,7 +81,7 @@ const et = (f) => {
|
|
|
84
81
|
de(o), Fe.stopPropagation && Fe.stopPropagation();
|
|
85
82
|
}
|
|
86
83
|
}), He(a.type, {
|
|
87
|
-
...
|
|
84
|
+
...fe,
|
|
88
85
|
...Ie,
|
|
89
86
|
...M
|
|
90
87
|
});
|
|
@@ -105,27 +102,27 @@ const et = (f) => {
|
|
|
105
102
|
}, e[19] = Q) : Q = e[19];
|
|
106
103
|
const Ne = Q;
|
|
107
104
|
let U;
|
|
108
|
-
e[20] !==
|
|
109
|
-
|
|
110
|
-
}, e[20] =
|
|
105
|
+
e[20] !== p ? (U = () => {
|
|
106
|
+
p();
|
|
107
|
+
}, e[20] = p, e[21] = U) : U = e[21];
|
|
111
108
|
let Z;
|
|
112
|
-
e[22] !== h ? (Z = [h], e[22] = h, e[23] = Z) : Z = e[23],
|
|
109
|
+
e[22] !== h ? (Z = [h], e[22] = h, e[23] = Z) : Z = e[23], me(U, Z);
|
|
113
110
|
let ee;
|
|
114
111
|
e[24] === Symbol.for("react.memo_cache_sentinel") ? (ee = () => {
|
|
115
112
|
Ce(!1);
|
|
116
113
|
}, e[24] = ee) : ee = e[24];
|
|
117
114
|
let te;
|
|
118
|
-
e[25] !== s ? (te = [s], e[25] = s, e[26] = te) : te = e[26],
|
|
115
|
+
e[25] !== s ? (te = [s], e[25] = s, e[26] = te) : te = e[26], me(ee, te);
|
|
119
116
|
let le, oe;
|
|
120
|
-
e[27] !==
|
|
117
|
+
e[27] !== f ? (le = () => (f ? window.addEventListener("mousemove", Ne) : window.removeEventListener("mousemove", Ne), () => {
|
|
121
118
|
window.removeEventListener("mousemove", Ne);
|
|
122
|
-
}), oe = [
|
|
119
|
+
}), oe = [f], e[27] = f, e[28] = le, e[29] = oe) : (le = e[28], oe = e[29]), me(le, oe);
|
|
123
120
|
let ne;
|
|
124
|
-
e[30] !== o.id || e[31] !==
|
|
125
|
-
|
|
126
|
-
}, e[30] = o.id, e[31] =
|
|
121
|
+
e[30] !== o.id || e[31] !== u ? (ne = () => {
|
|
122
|
+
u === Number(o.id) && we(!0);
|
|
123
|
+
}, e[30] = o.id, e[31] = u, e[32] = ne) : ne = e[32];
|
|
127
124
|
let ie;
|
|
128
|
-
e[33] !==
|
|
125
|
+
e[33] !== u ? (ie = [u], e[33] = u, e[34] = ie) : ie = e[34], me(ne, ie);
|
|
129
126
|
const Ge = i[0].name;
|
|
130
127
|
let se;
|
|
131
128
|
e[35] === Symbol.for("react.memo_cache_sentinel") ? (se = he(), e[35] = se) : se = e[35];
|
|
@@ -155,7 +152,7 @@ const et = (f) => {
|
|
|
155
152
|
...be
|
|
156
153
|
}, e[52] = be, e[53] = _) : _ = e[53];
|
|
157
154
|
let N;
|
|
158
|
-
e[54] !== b || e[55] !== K || e[56] !==
|
|
155
|
+
e[54] !== b || e[55] !== K || e[56] !== f ? (N = f && K && b(K), e[54] = b, e[55] = K, e[56] = f, e[57] = N) : N = e[57];
|
|
159
156
|
let R;
|
|
160
157
|
e[58] !== _ || e[59] !== N ? (R = /* @__PURE__ */ t("span", { className: "container-toolbar-buttons", children: /* @__PURE__ */ t(Oe, { size: "small", customClass: "row-toolbar", children: /* @__PURE__ */ t(Me, { style: _, children: N }, `left-toolbar-${re}`) }) }), e[58] = _, e[59] = N, e[60] = R) : R = e[60];
|
|
161
158
|
let T;
|
|
@@ -193,15 +190,15 @@ const et = (f) => {
|
|
|
193
190
|
} else
|
|
194
191
|
k = e[85];
|
|
195
192
|
let P;
|
|
196
|
-
e[88] !==
|
|
193
|
+
e[88] !== m || e[89] !== n || e[90] !== $ || e[91] !== k ? (P = /* @__PURE__ */ j(ke, { ...m, dataId: n, customClass: "tree-row-element", children: [
|
|
197
194
|
$,
|
|
198
195
|
k
|
|
199
|
-
] }), e[88] =
|
|
196
|
+
] }), e[88] = m, e[89] = n, e[90] = $, e[91] = k, e[92] = P) : P = e[92];
|
|
200
197
|
let F;
|
|
201
|
-
e[93] !== s || e[94] !== i.length || e[95] !== W || e[96] !== d || e[97] !== D || e[98] !==
|
|
202
|
-
s && s.map((l) => /* @__PURE__ */ t(et, { dataRow: l, rowLevel: l.rowLevel ? l.rowLevel + 1 : 1, rowId: `${l[D]}`, style:
|
|
198
|
+
e[93] !== s || e[94] !== i.length || e[95] !== W || e[96] !== d || e[97] !== D || e[98] !== ue ? (F = d && /* @__PURE__ */ t($e, { children: s && s.length === 0 && W ? /* @__PURE__ */ t(ke, { children: /* @__PURE__ */ t("td", { colSpan: i.length, className: "td-loading-childrens", children: /* @__PURE__ */ t("div", { className: "td-loading-childrens-container", children: /* @__PURE__ */ t(ze, { size: "48px" }, "loading-childrens") }) }) }, "tr-loading-childrens") : /* @__PURE__ */ j($e, { children: [
|
|
199
|
+
s && s.map((l) => /* @__PURE__ */ t(et, { dataRow: l, rowLevel: l.rowLevel ? l.rowLevel + 1 : 1, rowId: `${l[D]}`, style: ue }, l[D])),
|
|
203
200
|
s && s.length !== 0 && W && /* @__PURE__ */ t(ke, { children: /* @__PURE__ */ t("td", { colSpan: i.length, className: "td-loading-childrens", children: /* @__PURE__ */ t("div", { className: "td-loading-childrens-container", children: /* @__PURE__ */ t(ze, { size: "48px" }, "loading-childrens") }) }) }, "tr-loading-childrens")
|
|
204
|
-
] }) }), e[93] = s, e[94] = i.length, e[95] = W, e[96] = d, e[97] = D, e[98] =
|
|
201
|
+
] }) }), e[93] = s, e[94] = i.length, e[95] = W, e[96] = d, e[97] = D, e[98] = ue, e[99] = F) : F = e[99];
|
|
205
202
|
let ce;
|
|
206
203
|
return e[100] !== P || e[101] !== F ? (ce = /* @__PURE__ */ j($e, { children: [
|
|
207
204
|
P,
|
|
@@ -212,8 +209,8 @@ function tt() {
|
|
|
212
209
|
}
|
|
213
210
|
function lt() {
|
|
214
211
|
}
|
|
215
|
-
function ot(
|
|
216
|
-
return !
|
|
212
|
+
function ot(m) {
|
|
213
|
+
return !m;
|
|
217
214
|
}
|
|
218
215
|
export {
|
|
219
216
|
et as default
|
package/lib/treetable/Row.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Row.js","sources":["../../src/lib/treetable/Row.tsx"],"sourcesContent":["import React, {\n Fragment,\n useState,\n useEffect,\n useContext,\n ReactElement,\n createElement,\n useRef,\n Children,\n isValidElement,\n} from 'react';\nimport _ from 'lodash';\nimport { v1 as uuid } from 'uuid';\nimport Icon from '../icons';\nimport SpinnerLoading from '../spinner/SpinnerLoading';\nimport { Td, TRow as Tr } from '../table';\nimport Toolbar, { ToolBarGroup } from '../toolbar';\nimport { searchChildrensPerRow, TreeTableContext } from './helpers';\nimport { IRowValidationProps, ITreeTableRow, IValidatorElements } from './types';\n\nconst TreeRow = (props: ITreeTableRow) => {\n const {\n data,\n dataColumns,\n rootPropName,\n stylesForRow,\n parentPropName,\n styleForLeftToolbar,\n onClickFirstColumn,\n onClickGetChildrens,\n leftToolbarElements,\n rightToolbarElements,\n styleForRightToolbar,\n toolbarElementsValidations,\n openNodeId,\n } = useContext(TreeTableContext);\n\n const { rowId, dataRow, rowLevel } = props;\n const [open, setOpen] = useState(false);\n const [childrens, setChildrens] = useState<Array<{ [key: string]: any }>>();\n const [isLoadingChildrens, setIsLoadingChildrens] = useState(false);\n const [showToolbarElements, setShowToolbarElements] = useState(false);\n const [firstRenderingOfChildrens, setFirstRenderingOfChildrens] = useState(false);\n const divContainerRef = useRef<HTMLDivElement | null>(null);\n\n const searchChildrensAndInsertState = () => {\n const dataChildrens = searchChildrensPerRow(data, parentPropName, rowId, rowLevel);\n setChildrens(dataChildrens);\n setIsLoadingChildrens(false);\n };\n\n const handlerShowChildrens = () => {\n if (!firstRenderingOfChildrens && !open) {\n setOpen(true);\n setIsLoadingChildrens(true);\n if ( onClickGetChildrens?.(rowId) && typeof onClickGetChildrens(rowId).finally === 'function')\n onClickGetChildrens(rowId)\n .then(() => { })\n .catch(() => { })\n .finally(() => {\n searchChildrensAndInsertState();\n });\n setFirstRenderingOfChildrens(true);\n } else {\n setOpen(prevState => !prevState);\n }\n };\n\n const validateRowElement = (validationKey: string) => {\n const validations = toolbarElementsValidations && toolbarElementsValidations[validationKey];\n const options = {\n disabled: { disabled: true },\n unvisible: { visible: false },\n };\n\n let elementBehavior = {};\n if (validations) {\n validations.forEach((validation: IValidatorElements<any>) => {\n const { validator, onDenied } = validation;\n if (_.isEmpty(elementBehavior) && validator && validator(dataRow) && onDenied) {\n elementBehavior = options[onDenied] || options.unvisible;\n }\n });\n }\n return elementBehavior;\n };\n\n const buildToolbarElements = (elements?: Array<ReactElement<IRowValidationProps>>) => {\n let newElementsWithNewProps: Array<ReactElement<IRowValidationProps>> = [];\n if (elements) {\n newElementsWithNewProps = Children.map(elements, (element) => {\n if (isValidElement(element) && element.props) {\n const { validationKey, onNodeElementClick, ...restProps } = element.props;\n let elementBehavior;\n let newProps = {};\n if (toolbarElementsValidations && validationKey) {\n elementBehavior = validateRowElement(validationKey);\n }\n if (onNodeElementClick) {\n newProps = {\n ...newProps,\n onClick: (e: MouseEvent) => {\n onNodeElementClick(dataRow);\n if (e.stopPropagation) e.stopPropagation();\n },\n };\n }\n return createElement(\n element.type,\n { ...restProps, ...newProps, ...elementBehavior },\n );\n }\n return element;\n });\n }\n return newElementsWithNewProps;\n };\n\n const handleOnMouseEnter = () => {\n setShowToolbarElements(true);\n };\n\n const handlerMouseInsideDivContainer = (event: MouseEvent) => {\n const elementoAtual = document.elementFromPoint(event.clientX, event.clientY);\n if (divContainerRef.current && !divContainerRef.current.contains(elementoAtual)) {\n setShowToolbarElements(false);\n }\n };\n\n useEffect(() => {\n searchChildrensAndInsertState();\n }, [data]);\n\n useEffect(() => {\n setIsLoadingChildrens(false);\n }, [childrens]);\n\n useEffect(() => {\n if (showToolbarElements) {\n window.addEventListener('mousemove', handlerMouseInsideDivContainer);\n } else {\n window.removeEventListener('mousemove', handlerMouseInsideDivContainer);\n }\n\n return () => {\n window.removeEventListener('mousemove', handlerMouseInsideDivContainer);\n };\n }, [showToolbarElements]);\n\n useEffect(() => {\n if (openNodeId === Number(dataRow.id)) setOpen(true);\n }, [openNodeId]);\n\n return (\n <Fragment>\n <Tr {...props} dataId={rowId} customClass=\"tree-row-element\">\n <Td\n ignoreTableColClick\n key={`td-${dataColumns[0].name}-${uuid()}`}\n style={dataColumns[0].style}>\n <div ref={divContainerRef} className=\"column-container\" onMouseEnter={handleOnMouseEnter}>\n <span\n className={`column-more-childrens ${rowLevel && 'line-path-decoration'}`}\n style={{ marginLeft: `${rowLevel}rem` }}>\n <button\n tabIndex={-1}\n className=\"open-close-children\"\n onClick={() => handlerShowChildrens()}>\n <Icon name={open ? 'down' : 'arrow_right'} size={10} />\n </button>\n <span\n tabIndex={-1}\n role=\"button\"\n className=\"value-button\"\n onClick={() => (onClickFirstColumn ? onClickFirstColumn(rowId) : {})}>\n {dataRow[dataColumns[0].name]}\n </span>\n <span className=\"container-toolbar-buttons\">\n <Toolbar size=\"small\" customClass=\"row-toolbar\">\n <ToolBarGroup\n key={`left-toolbar-${uuid()}`}\n style={{ float: 'left', height: 'fit-content', ...styleForLeftToolbar }}>\n {showToolbarElements &&\n leftToolbarElements &&\n buildToolbarElements(leftToolbarElements as any)}\n </ToolBarGroup>\n </Toolbar>\n </span>\n </span>\n <span className=\"container-toolbar-info\">\n <Toolbar size=\"small\" customClass=\"row-toolbar\">\n <ToolBarGroup\n key={`right-toolbar-${uuid()}`}\n style={{ float: 'right', height: 'fit-content', gap: '4px', ...styleForRightToolbar }}>\n {rightToolbarElements && buildToolbarElements(rightToolbarElements as any)}\n </ToolBarGroup>\n </Toolbar>\n </span>\n </div>\n </Td>\n {dataColumns.slice(1).map(column => (\n <Td key={`key-${column.name}-${uuid()}`} style={{ ...column.style }} ignoreTableColClick>\n {dataRow[column.name]}\n </Td>\n ))}\n </Tr>\n {\n open && (\n <Fragment>\n {childrens && childrens.length === 0 && isLoadingChildrens\n ? (\n <Tr key=\"tr-loading-childrens\">\n <td colSpan={dataColumns.length} className=\"td-loading-childrens\">\n <div className=\"td-loading-childrens-container\">\n <SpinnerLoading size=\"48px\" key=\"loading-childrens\" />\n </div>\n </td>\n </Tr>\n )\n : (\n <Fragment>\n {childrens && childrens.map(item => (\n <TreeRow\n dataRow={item}\n rowLevel={item.rowLevel ? item.rowLevel + 1 : 1}\n key={item[rootPropName]}\n rowId={`${item[rootPropName]}`}\n style={stylesForRow} />\n ))}\n {childrens && childrens.length !== 0 && isLoadingChildrens && (\n <Tr key=\"tr-loading-childrens\">\n <td colSpan={dataColumns.length} className=\"td-loading-childrens\">\n <div className=\"td-loading-childrens-container\">\n <SpinnerLoading size=\"48px\" key=\"loading-childrens\" />\n </div>\n </td>\n </Tr>\n )}\n </Fragment>\n )}\n </Fragment>\n )\n }\n </Fragment >\n );\n};\n\nexport default TreeRow;\n"],"names":["TreeRow","props","$","_c","data","dataColumns","rootPropName","stylesForRow","parentPropName","styleForLeftToolbar","onClickFirstColumn","onClickGetChildrens","leftToolbarElements","rightToolbarElements","styleForRightToolbar","toolbarElementsValidations","openNodeId","useContext","TreeTableContext","rowId","dataRow","rowLevel","open","setOpen","useState","childrens","setChildrens","isLoadingChildrens","setIsLoadingChildrens","showToolbarElements","setShowToolbarElements","firstRenderingOfChildrens","setFirstRenderingOfChildrens","divContainerRef","useRef","t0","dataChildrens","searchChildrensPerRow","searchChildrensAndInsertState","t1","finally","then","_temp","catch","_temp2","_temp3","handlerShowChildrens","t2","validationKey","validations","options","disabled","unvisible","visible","elementBehavior","forEach","validation","validator","onDenied","_","isEmpty","validateRowElement","t3","elements","newElementsWithNewProps","Children","map","element","isValidElement","validationKey_0","onNodeElementClick","restProps","newProps","onClick","e","stopPropagation","createElement","type","buildToolbarElements","t4","Symbol","for","handleOnMouseEnter","t5","event","elementoAtual","document","elementFromPoint","clientX","clientY","current","contains","handlerMouseInsideDivContainer","t6","t7","useEffect","t8","t9","t10","t11","window","addEventListener","removeEventListener","t12","id","Number","t13","t14","name","t15","uuid","t16","t17","style","t18","t19","t20","marginLeft","t21","t22","t23","jsx","Icon","t24","t25","t26","t27","t28","t29","float","height","t30","t31","Toolbar","ToolBarGroup","t32","jsxs","t33","t34","gap","t35","t36","t37","t38","Td","t39","t40","column","slice","Tr","t41","length","Fragment","SpinnerLoading","item","t42","prevState"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Row.js","sources":["../../src/lib/treetable/Row.tsx"],"sourcesContent":["import React, {\n Fragment,\n useState,\n useEffect,\n useContext,\n ReactElement,\n createElement,\n useRef,\n Children,\n isValidElement,\n} from 'react';\nimport _ from 'lodash';\nimport { v1 as uuid } from 'uuid';\nimport Icon from '../icons';\nimport SpinnerLoading from '../spinner/SpinnerLoading';\nimport { Td, TRow as Tr } from '../table';\nimport Toolbar, { ToolBarGroup } from '../toolbar';\nimport { searchChildrensPerRow, TreeTableContext } from './helpers';\nimport { IRowValidationProps, ITreeTableRow, IValidatorElements } from './types';\n\nconst TreeRow = (props: ITreeTableRow) => {\n const {\n data,\n dataColumns,\n rootPropName,\n stylesForRow,\n parentPropName,\n styleForLeftToolbar,\n onClickFirstColumn,\n onClickGetChildrens,\n leftToolbarElements,\n rightToolbarElements,\n styleForRightToolbar,\n toolbarElementsValidations,\n openNodeId,\n } = useContext(TreeTableContext);\n\n const { rowId, dataRow, rowLevel } = props;\n const [open, setOpen] = useState(false);\n const [childrens, setChildrens] = useState<Array<{ [key: string]: any }>>();\n const [isLoadingChildrens, setIsLoadingChildrens] = useState(false);\n const [showToolbarElements, setShowToolbarElements] = useState(false);\n const [firstRenderingOfChildrens, setFirstRenderingOfChildrens] = useState(false);\n const divContainerRef = useRef<HTMLDivElement | null>(null);\n\n const searchChildrensAndInsertState = () => {\n const dataChildrens = searchChildrensPerRow(data, parentPropName, rowId, rowLevel);\n setChildrens(dataChildrens);\n setIsLoadingChildrens(false);\n };\n\n const handlerShowChildrens = () => {\n if (!firstRenderingOfChildrens && !open) {\n setOpen(true);\n setIsLoadingChildrens(true);\n if ( onClickGetChildrens?.(rowId) && typeof onClickGetChildrens(rowId).finally === 'function')\n onClickGetChildrens(rowId)\n .then(() => { })\n .catch(() => { })\n .finally(() => {\n searchChildrensAndInsertState();\n });\n setFirstRenderingOfChildrens(true);\n } else {\n setOpen(prevState => !prevState);\n }\n };\n\n const validateRowElement = (validationKey: string) => {\n const validations = toolbarElementsValidations && toolbarElementsValidations[validationKey];\n const options = {\n disabled: { disabled: true },\n unvisible: { visible: false },\n };\n\n let elementBehavior = {};\n if (validations) {\n validations.forEach((validation: IValidatorElements<any>) => {\n const { validator, onDenied } = validation;\n if (_.isEmpty(elementBehavior) && validator && validator(dataRow) && onDenied) {\n elementBehavior = options[onDenied] || options.unvisible;\n }\n });\n }\n return elementBehavior;\n };\n\n const buildToolbarElements = (elements?: Array<ReactElement<IRowValidationProps>>) => {\n let newElementsWithNewProps: Array<ReactElement<IRowValidationProps>> = [];\n if (elements) {\n newElementsWithNewProps = Children.map(elements, (element) => {\n if (isValidElement(element) && element.props) {\n const { validationKey, onNodeElementClick, ...restProps } = element.props;\n let elementBehavior;\n let newProps = {};\n if (toolbarElementsValidations && validationKey) {\n elementBehavior = validateRowElement(validationKey);\n }\n if (onNodeElementClick) {\n newProps = {\n ...newProps,\n onClick: (e: MouseEvent) => {\n onNodeElementClick(dataRow);\n if (e.stopPropagation) e.stopPropagation();\n },\n };\n }\n return createElement(\n element.type,\n { ...restProps, ...newProps, ...elementBehavior },\n );\n }\n return element;\n });\n }\n return newElementsWithNewProps;\n };\n\n const handleOnMouseEnter = () => {\n setShowToolbarElements(true);\n };\n\n const handlerMouseInsideDivContainer = (event: MouseEvent) => {\n const elementoAtual = document.elementFromPoint(event.clientX, event.clientY);\n if (divContainerRef.current && !divContainerRef.current.contains(elementoAtual)) {\n setShowToolbarElements(false);\n }\n };\n\n useEffect(() => {\n searchChildrensAndInsertState();\n }, [data]);\n\n useEffect(() => {\n setIsLoadingChildrens(false);\n }, [childrens]);\n\n useEffect(() => {\n if (showToolbarElements) {\n window.addEventListener('mousemove', handlerMouseInsideDivContainer);\n } else {\n window.removeEventListener('mousemove', handlerMouseInsideDivContainer);\n }\n\n return () => {\n window.removeEventListener('mousemove', handlerMouseInsideDivContainer);\n };\n }, [showToolbarElements]);\n\n useEffect(() => {\n if (openNodeId === Number(dataRow.id)) setOpen(true);\n }, [openNodeId]);\n\n return (\n <Fragment>\n <Tr {...props} dataId={rowId} customClass=\"tree-row-element\">\n <Td\n ignoreTableColClick\n key={`td-${dataColumns[0].name}-${uuid()}`}\n style={dataColumns[0].style}>\n <div ref={divContainerRef} className=\"column-container\" onMouseEnter={handleOnMouseEnter}>\n <span\n className={`column-more-childrens ${rowLevel && 'line-path-decoration'}`}\n style={{ marginLeft: `${rowLevel}rem` }}>\n <button\n tabIndex={-1}\n className=\"open-close-children\"\n onClick={() => handlerShowChildrens()}>\n <Icon name={open ? 'down' : 'arrow_right'} size={10} />\n </button>\n <span\n tabIndex={-1}\n role=\"button\"\n className=\"value-button\"\n onClick={() => (onClickFirstColumn ? onClickFirstColumn(rowId) : {})}>\n {dataRow[dataColumns[0].name]}\n </span>\n <span className=\"container-toolbar-buttons\">\n <Toolbar size=\"small\" customClass=\"row-toolbar\">\n <ToolBarGroup\n key={`left-toolbar-${uuid()}`}\n style={{ float: 'left', height: 'fit-content', ...styleForLeftToolbar }}>\n {showToolbarElements &&\n leftToolbarElements &&\n buildToolbarElements(leftToolbarElements as any)}\n </ToolBarGroup>\n </Toolbar>\n </span>\n </span>\n <span className=\"container-toolbar-info\">\n <Toolbar size=\"small\" customClass=\"row-toolbar\">\n <ToolBarGroup\n key={`right-toolbar-${uuid()}`}\n style={{ float: 'right', height: 'fit-content', gap: '4px', ...styleForRightToolbar }}>\n {rightToolbarElements && buildToolbarElements(rightToolbarElements as any)}\n </ToolBarGroup>\n </Toolbar>\n </span>\n </div>\n </Td>\n {dataColumns.slice(1).map(column => (\n <Td key={`key-${column.name}-${uuid()}`} style={{ ...column.style }} ignoreTableColClick>\n {dataRow[column.name]}\n </Td>\n ))}\n </Tr>\n {\n open && (\n <Fragment>\n {childrens && childrens.length === 0 && isLoadingChildrens\n ? (\n <Tr key=\"tr-loading-childrens\">\n <td colSpan={dataColumns.length} className=\"td-loading-childrens\">\n <div className=\"td-loading-childrens-container\">\n <SpinnerLoading size=\"48px\" key=\"loading-childrens\" />\n </div>\n </td>\n </Tr>\n )\n : (\n <Fragment>\n {childrens && childrens.map(item => (\n <TreeRow\n dataRow={item}\n rowLevel={item.rowLevel ? item.rowLevel + 1 : 1}\n key={item[rootPropName]}\n rowId={`${item[rootPropName]}`}\n style={stylesForRow} />\n ))}\n {childrens && childrens.length !== 0 && isLoadingChildrens && (\n <Tr key=\"tr-loading-childrens\">\n <td colSpan={dataColumns.length} className=\"td-loading-childrens\">\n <div className=\"td-loading-childrens-container\">\n <SpinnerLoading size=\"48px\" key=\"loading-childrens\" />\n </div>\n </td>\n </Tr>\n )}\n </Fragment>\n )}\n </Fragment>\n )\n }\n </Fragment >\n );\n};\n\nexport default TreeRow;\n"],"names":["TreeRow","props","$","_c","data","dataColumns","rootPropName","stylesForRow","parentPropName","styleForLeftToolbar","onClickFirstColumn","onClickGetChildrens","leftToolbarElements","rightToolbarElements","styleForRightToolbar","toolbarElementsValidations","openNodeId","useContext","TreeTableContext","rowId","dataRow","rowLevel","open","setOpen","useState","childrens","setChildrens","isLoadingChildrens","setIsLoadingChildrens","showToolbarElements","setShowToolbarElements","firstRenderingOfChildrens","setFirstRenderingOfChildrens","divContainerRef","useRef","t0","dataChildrens","searchChildrensPerRow","searchChildrensAndInsertState","t1","finally","then","_temp","catch","_temp2","_temp3","handlerShowChildrens","t2","validationKey","validations","options","disabled","unvisible","visible","elementBehavior","forEach","validation","validator","onDenied","_","isEmpty","validateRowElement","t3","elements","newElementsWithNewProps","Children","map","element","isValidElement","validationKey_0","onNodeElementClick","restProps","newProps","onClick","e","stopPropagation","createElement","type","buildToolbarElements","t4","Symbol","for","handleOnMouseEnter","t5","event","elementoAtual","document","elementFromPoint","clientX","clientY","current","contains","handlerMouseInsideDivContainer","t6","t7","useEffect","t8","t9","t10","t11","window","addEventListener","removeEventListener","t12","id","Number","t13","t14","name","t15","uuid","t16","t17","style","t18","t19","t20","marginLeft","t21","t22","t23","jsx","Icon","t24","t25","t26","t27","t28","t29","float","height","t30","t31","Toolbar","ToolBarGroup","t32","jsxs","t33","t34","gap","t35","t36","t37","t38","Td","t39","t40","column","slice","Tr","t41","length","Fragment","SpinnerLoading","item","t42","prevState"],"mappings":";;;;;;;;;;;;;AAoBA,MAAMA,KAAUC,CAAAA,MAAA;AAAA,QAAAC,IAAAC,GAAAA,EAAA,GAAA,GACd;AAAA,IAAAC,MAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC,cAAAA;AAAAA,IAAAC,cAAAA;AAAAA,IAAAC,gBAAAA;AAAAA,IAAAC,qBAAAA;AAAAA,IAAAC,oBAAAA;AAAAA,IAAAC,qBAAAA;AAAAA,IAAAC,qBAAAA;AAAAA,IAAAC,sBAAAA;AAAAA,IAAAC,sBAAAA;AAAAA,IAAAC,4BAAAA;AAAAA,IAAAC,YAAAA;AAAAA,EAAAA,IAcIC,GAAWC,EAAgB,GAE/B;AAAA,IAAAC,OAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,UAAAA;AAAAA,EAAAA,IAAqCpB,GACrC,CAAAqB,GAAAC,EAAA,IAAwBC,EAAS,EAAK,GACtC,CAAAC,GAAAC,EAAA,IAAkCF,EAAAA,GAClC,CAAAG,GAAAC,EAAA,IAAoDJ,EAAS,EAAK,GAClE,CAAAK,GAAAC,EAAA,IAAsDN,EAAS,EAAK,GACpE,CAAAO,IAAAC,EAAA,IAAkER,EAAS,EAAK,GAChFS,KAAwBC,GAA8B,IAAI;AAAE,MAAAC;AAAA,EAAAjC,EAAA,CAAA,MAAAE,KAAAF,EAAA,CAAA,MAAAM,MAAAN,EAAA,CAAA,MAAAiB,KAAAjB,SAAAmB,KAEtBc,IAAAA,MAAA;AACpC,UAAAC,IAAsBC,GAAsBjC,GAAMI,IAAgBW,GAAOE,CAAQ;AACjFK,IAAAA,GAAaU,CAAa,GAC1BR,GAAsB,EAAK;AAAA,EAAC,GAC7B1B,OAAAE,GAAAF,OAAAM,IAAAN,OAAAiB,GAAAjB,OAAAmB,GAAAnB,OAAAiC,KAAAA,IAAAjC,EAAA,CAAA;AAJD,QAAAoC,IAAsCH;AAIpC,MAAAI;AAAA,EAAArC,EAAA,CAAA,MAAA6B,MAAA7B,EAAA,CAAA,MAAAS,KAAAT,EAAA,CAAA,MAAAoB,KAAApB,EAAA,CAAA,MAAAiB,KAAAjB,SAAAoC,KAE4BC,IAAAA,MAAA;AAC5B,IAAI,CAACR,MAAD,CAA+BT,KACjCC,GAAQ,EAAI,GACZK,GAAsB,EAAI,GACrBjB,IAAsBQ,CAAiE,KAAvD,OAAOR,EAAoBQ,CAAK,EAACqB,WAAa,cACjF7B,EAAoBQ,CAAK,EAACsB,KAClBC,EAAS,EAACC,MACTC,EAAS,EAACJ,QACR,MAAA;AACPF,MAAAA,EAAAA;AAAAA,IAA+B,CAChC,GACLN,GAA6B,EAAI,KAEjCT,GAAQsB,EAAuB;AAAA,EAChC,GACF3C,OAAA6B,IAAA7B,OAAAS,GAAAT,OAAAoB,GAAApB,OAAAiB,GAAAjB,OAAAoC,GAAApC,QAAAqC,KAAAA,IAAArC,EAAA,EAAA;AAfD,QAAA4C,KAA8BP;AAe5B,MAAAQ;AAAA,EAAA7C,EAAA,EAAA,MAAAkB,KAAAlB,UAAAa,KAEyBgC,IAAAC,CAAAA,MAAA;AACzB,UAAAC,IAAoBlC,KAA8BA,EAA2BiC,CAAa,GAC1FE,IAAgB;AAAA,MAAAC,UACJ;AAAA,QAAAA,UAAY;AAAA,MAAA;AAAA,MAAMC,WACjB;AAAA,QAAAC,SAAW;AAAA,MAAA;AAAA,IAAM;AAG9B,QAAAC,IAAsB,CAAA;AACtB,WAAIL,KACFA,EAAWM,QAASC,CAAAA,OAAA;AAClB,YAAA;AAAA,QAAAC,WAAAA;AAAAA,QAAAC,UAAAA;AAAAA,MAAAA,IAAgCF;AAChC,MAAIG,GAACC,QAASN,CAA4B,KAAtCG,MAA2CA,GAAUrC,CAAO,KAA5DsC,MACFJ,IAAkBJ,EAAQQ,CAAQ,KAAKR,EAAOE;AAAAA,IAC/C,CACF,GAEIE;AAAAA,EAAe,GACvBpD,QAAAkB,GAAAlB,QAAAa,GAAAb,QAAA6C,KAAAA,IAAA7C,EAAA,EAAA;AAjBD,QAAA2D,KAA2Bd;AAiBzB,MAAAe;AAAA,EAAA5D,EAAA,EAAA,MAAAkB,KAAAlB,UAAAa,KAAAb,EAAA,EAAA,MAAA2D,MAE2BC,IAAAC,CAAAA,MAAA;AAC3B,QAAAC,IAAwE,CAAA;AACxE,WAAID,MACFC,IAA0BC,GAAQC,IAAKH,GAAUI,CAAAA,MAAA;AAC/C,UAAIC,GAAeD,CAAwB,KAAZA,EAAOlE,OAAM;AAC1C,cAAA;AAAA,UAAA+C,eAAAqB;AAAAA,UAAAC,oBAAAA;AAAAA,UAAA,GAAAC;AAAAA,QAAAA,IAA4DJ,EAAOlE;AAC/DqD,YAAAA,GACJkB,KAAe,CAAA;AACf,eAAIzD,KAAAsD,MACFf,IAAkBO,GAAmBb,CAAa,IAEhDsB,OACFE,KAAWA;AAAAA,UAAAA,GACNA;AAAAA,UAAQC,SACFC,CAAAA,OAAA;AACPJ,YAAAA,GAAmBlD,CAAO,GACtBsD,GAACC,mBAAkBD,GAACC,gBAAAA;AAAAA,UAAmB;AAAA,QAAA,IAI1CC,GACLT,EAAOU,MACP;AAAA,UAAA,GAAKN;AAAAA,UAAS,GAAKC;AAAAA,UAAQ,GAAKlB;AAAAA,QAAAA,CAClC;AAAA,MAAC;AACF,aACMa;AAAAA,IAAO,CACf,IAEIH;AAAAA,EAAuB,GAC/B9D,QAAAkB,GAAAlB,QAAAa,GAAAb,QAAA2D,IAAA3D,QAAA4D,KAAAA,IAAA5D,EAAA,EAAA;AA7BD,QAAA4E,IAA6BhB;AA6B3B,MAAAiB;AAAA,EAAA7E,EAAA,EAAA,MAAA8E,OAAAC,IAAA,2BAAA,KAEyBF,IAAAA,MAAA;AACzBjD,IAAAA,GAAuB,EAAI;AAAA,EAAC,GAC7B5B,QAAA6E,KAAAA,IAAA7E,EAAA,EAAA;AAFD,QAAAgF,KAA2BH;AAEzB,MAAAI;AAAA,EAAAjF,EAAA,EAAA,MAAA8E,OAAAC,IAAA,2BAAA,KAEqCE,IAAAC,CAAAA,MAAA;AACrC,UAAAC,IAAsBC,SAAQC,iBAAkBH,EAAKI,SAAUJ,EAAKK,OAAQ;AAC5E,IAAIxD,GAAeyD,WAAf,CAA4BzD,GAAeyD,QAAQC,SAAUN,CAAa,KAC5EvD,GAAuB,EAAK;AAAA,EAC7B,GACF5B,QAAAiF,KAAAA,IAAAjF,EAAA,EAAA;AALD,QAAA0F,KAAuCT;AAKrC,MAAAU;AAAA,EAAA3F,UAAAoC,KAEQuD,IAAAA,MAAA;AACRvD,IAAAA,EAAAA;AAAAA,EAA+B,GAChCpC,QAAAoC,GAAApC,QAAA2F,KAAAA,IAAA3F,EAAA,EAAA;AAAA,MAAA4F;AAAA,EAAA5F,UAAAE,KAAE0F,IAAA,CAAC1F,CAAI,GAACF,QAAAE,GAAAF,QAAA4F,KAAAA,IAAA5F,EAAA,EAAA,GAFT6F,GAAUF,GAEPC,CAAM;AAAC,MAAAE;AAAA,EAAA9F,EAAA,EAAA,MAAA8E,OAAAC,IAAA,2BAAA,KAEAe,KAAAA,MAAA;AACRpE,IAAAA,GAAsB,EAAK;AAAA,EAAC,GAC7B1B,QAAA8F,MAAAA,KAAA9F,EAAA,EAAA;AAAA,MAAA+F;AAAA,EAAA/F,UAAAuB,KAAEwE,KAAA,CAACxE,CAAS,GAACvB,QAAAuB,GAAAvB,QAAA+F,MAAAA,KAAA/F,EAAA,EAAA,GAFd6F,GAAUC,IAEPC,EAAW;AAAC,MAAAC,IAAAC;AAAA,EAAAjG,UAAA2B,KAELqE,KAAAA,OACJrE,IACFuE,OAAMC,iBAAkB,aAAaT,EAA8B,IAEnEQ,OAAME,oBAAqB,aAAaV,EAA8B,GAGjE,MAAA;AACLQ,WAAME,oBAAqB,aAAaV,EAA8B;AAAA,EAAC,IAExEO,KAAA,CAACtE,CAAmB,GAAC3B,QAAA2B,GAAA3B,QAAAgG,IAAAhG,QAAAiG,OAAAD,KAAAhG,EAAA,EAAA,GAAAiG,KAAAjG,EAAA,EAAA,IAVxB6F,GAAUG,IAUPC,EAAqB;AAAC,MAAAI;AAAA,EAAArG,UAAAkB,EAAAoF,MAAAtG,UAAAc,KAEfuF,KAAAA,MAAA;AACR,IAAIvF,MAAeyF,OAAOrF,EAAOoF,EAAG,KAAGjF,GAAQ,EAAI;AAAA,EAAE,GACtDrB,EAAA,EAAA,IAAAkB,EAAAoF,IAAAtG,QAAAc,GAAAd,QAAAqG,MAAAA,KAAArG,EAAA,EAAA;AAAA,MAAAwG;AAAA,EAAAxG,UAAAc,KAAE0F,KAAA,CAAC1F,CAAU,GAACd,QAAAc,GAAAd,QAAAwG,MAAAA,KAAAxG,EAAA,EAAA,GAFf6F,GAAUQ,IAEPG,EAAY;AAOI,QAAAC,KAAAtG,EAAW,CAAA,EAAGuG;AAAK,MAAAC;AAAA,EAAA3G,EAAA,EAAA,MAAA8E,OAAAC,IAAA,2BAAA,KAAI4B,KAAAC,GAAAA,GAAM5G,QAAA2G,MAAAA,KAAA3G,EAAA,EAAA;AAAnC,QAAA6G,KAAA,MAAMJ,EAAmB,IAAIE,EAAM,IACjCG,KAAA3G,EAAW,CAAA,EAAG4G,OAGNC,KAAA,yBAAyB7F,KAAA,sBAAkC,IACjD8F,KAAA,GAAG9F,CAAQ;AAAK,MAAA+F;AAAA,EAAAlH,UAAAiH,MAA9BC,IAAA;AAAA,IAAAC,YAAcF;AAAAA,EAAAA,GAAkBjH,QAAAiH,IAAAjH,QAAAkH,KAAAA,IAAAlH,EAAA,EAAA;AAAA,MAAAoH;AAAA,EAAApH,UAAA4C,MAI5BwE,IAAAA,MAAMxE,GAAAA,GAAsB5C,QAAA4C,IAAA5C,QAAAoH,KAAAA,IAAApH,EAAA,EAAA;AACzB,QAAAqH,KAAAjG,IAAA,SAAA;AAA6B,MAAAkG;AAAA,EAAAtH,UAAAqH,MAAzCC,IAAA,gBAAAC,EAACC,IAAA,EAAW,MAAAH,IAAqC,MAAA,IAAE,GAAIrH,QAAAqH,IAAArH,QAAAsH,KAAAA,IAAAtH,EAAA,EAAA;AAAA,MAAAyH;AAAA,EAAAzH,EAAA,EAAA,MAAAoH,KAAApH,UAAAsH,KAJzDG,IAAA,gBAAAF,EAAA,YACY,cACA,WAAA,uBACD,SAAAH,GACTE,UAAAA,EAAAA,CACF,GAAStH,QAAAoH,GAAApH,QAAAsH,GAAAtH,QAAAyH,KAAAA,IAAAzH,EAAA,EAAA;AAAA,MAAA0H;AAAA,EAAA1H,EAAA,EAAA,MAAAQ,KAAAR,UAAAiB,KAKEyG,IAAAA,MAAOlH,IAAqBA,EAAmBS,CAAU,IAAlD,CAAA,GAAoDjB,QAAAQ,GAAAR,QAAAiB,GAAAjB,QAAA0H,KAAAA,IAAA1H,EAAA,EAAA;AACnE,QAAA2H,KAAAzG,EAAQf,EAAW,CAAA,EAAGuG,IAAK;AAAC,MAAAkB;AAAA,EAAA5H,EAAA,EAAA,MAAA0H,KAAA1H,UAAA2H,MAL/BC,IAAA,gBAAAL,EAAA,QAAA,EACY,UAAA,IACL,MAAA,UACK,WAAA,gBACD,SAAAG,GACRC,UAAAA,GAAAA,CACH,GAAO3H,QAAA0H,GAAA1H,QAAA2H,IAAA3H,QAAA4H,KAAAA,IAAA5H,EAAA,EAAA;AAAA,MAAA6H;AAAA,EAAA7H,EAAA,EAAA,MAAA8E,OAAAC,IAAA,2BAAA,KAIoB8C,KAAAjB,GAAAA,GAAM5G,QAAA6H,MAAAA,KAAA7H,EAAA,EAAA;AAAA,MAAA8H;AAAA,EAAA9H,UAAAO,MACpBuH,IAAA;AAAA,IAAAC,OAAS;AAAA,IAAMC,QAAU;AAAA,IAAa,GAAKzH;AAAAA,EAAAA,GAAqBP,QAAAO,IAAAP,QAAA8H,KAAAA,IAAA9H,EAAA,EAAA;AAAA,MAAAiI;AAAA,EAAAjI,EAAA,EAAA,MAAA4E,KAAA5E,UAAAU,KAAAV,EAAA,EAAA,MAAA2B,KACtEsG,IAAAtG,KAAAjB,KAECkE,EAAqBlE,CAA0B,GAACV,QAAA4E,GAAA5E,QAAAU,GAAAV,QAAA2B,GAAA3B,QAAAiI,KAAAA,IAAAjI,EAAA,EAAA;AAAA,MAAAkI;AAAA,EAAAlI,EAAA,EAAA,MAAA8H,KAAA9H,UAAAiI,KAPxDC,gCAAgB,WAAA,6BACd,UAAA,gBAAAX,EAACY,IAAA,EAAa,MAAA,SAAoB,aAAA,eAChC,UAAA,gBAAAZ,EAACa,IAAA,EAEQ,OAAAN,GACNG,UAAAA,KAFI,gBAAgBJ,EAAM,EAK7B,GACF,EAAA,CACF,GAAO7H,QAAA8H,GAAA9H,QAAAiI,GAAAjI,QAAAkI,KAAAA,IAAAlI,EAAA,EAAA;AAAA,MAAAqI;AAAA,EAAArI,EAAA,EAAA,MAAAgH,MAAAhH,EAAA,EAAA,MAAAkH,KAAAlH,EAAA,EAAA,MAAAyH,KAAAzH,EAAA,EAAA,MAAA4H,KAAA5H,UAAAkI,KA1BTG,IAAA,gBAAAC,EAAA,QAAA,EACa,WAAAtB,IACJ,OAAAE,GACPO,UAAAA;AAAAA,IAAAA;AAAAA,IAMAG;AAAAA,IAOAM;AAAAA,EAAAA,GAWF,GAAOlI,QAAAgH,IAAAhH,QAAAkH,GAAAlH,QAAAyH,GAAAzH,QAAA4H,GAAA5H,QAAAkI,GAAAlI,QAAAqI,KAAAA,IAAArI,EAAA,EAAA;AAAA,MAAAuI;AAAA,EAAAvI,EAAA,EAAA,MAAA8E,OAAAC,IAAA,2BAAA,KAIqBwD,KAAA3B,GAAAA,GAAM5G,QAAAuI,MAAAA,KAAAvI,EAAA,EAAA;AAAA,MAAAwI;AAAA,EAAAxI,UAAAY,MACrB4H,IAAA;AAAA,IAAAT,OAAS;AAAA,IAAOC,QAAU;AAAA,IAAaS,KAAO;AAAA,IAAK,GAAK7H;AAAAA,EAAAA,GAAsBZ,QAAAY,IAAAZ,QAAAwI,KAAAA,IAAAxI,EAAA,EAAA;AAAA,MAAA0I;AAAA,EAAA1I,EAAA,EAAA,MAAA4E,KAAA5E,UAAAW,KACpF+H,IAAA/H,KAAwBiE,EAAqBjE,CAA2B,GAACX,QAAA4E,GAAA5E,QAAAW,GAAAX,QAAA0I,KAAAA,IAAA1I,EAAA,EAAA;AAAA,MAAA2I;AAAA,EAAA3I,EAAA,EAAA,MAAAwI,KAAAxI,UAAA0I,KALhFC,gCAAgB,WAAA,0BACd,UAAA,gBAAApB,EAACY,IAAA,EAAa,MAAA,SAAoB,aAAA,eAChC,UAAA,gBAAAZ,EAACa,IAAA,EAEQ,OAAAI,GACNE,UAAAA,KAFI,iBAAiBH,EAAM,EAG9B,GACF,EAAA,CACF,GAAOvI,QAAAwI,GAAAxI,QAAA0I,GAAA1I,QAAA2I,KAAAA,IAAA3I,EAAA,EAAA;AAAA,MAAA4I;AAAA,EAAA5I,EAAA,EAAA,MAAAqI,KAAArI,UAAA2I,KArCTC,sBAAA,OAAA,EAAU7G,SAA2B,WAAA,oBAAiCiD,cAAAA,IACpEqD,UAAAA;AAAAA,IAAAA;AAAAA,IA4BAM;AAAAA,EAAAA,GASF,GAAM3I,QAAAqI,GAAArI,QAAA2I,GAAA3I,QAAA4I,KAAAA,IAAA5I,EAAA,EAAA;AAAA,MAAA6I;AAAA,EAAA7I,EAAA,EAAA,MAAAG,EAAA,CAAA,EAAA4G,SAAA/G,EAAA,EAAA,MAAA6G,MAAA7G,EAAA,EAAA,MAAA4I,KA1CRC,sBAACC,IAAA,EACC,yBAEO,OAAAhC,IACP8B,eAFK/B,EAyCP,GAAK7G,EAAA,EAAA,IAAAG,EAAA,CAAA,EAAA4G,OAAA/G,QAAA6G,IAAA7G,QAAA4I,GAAA5I,QAAA6I,KAAAA,IAAA7I,EAAA,EAAA;AAAA,MAAA+I;AAAA,MAAA/I,EAAA,EAAA,MAAAG,KAAAH,UAAAkB,GAAA;AAAA,QAAA8H;AAAA,IAAAhJ,UAAAkB,KACqB8H,IAAAC,CAAAA,MACxB,gBAAA1B,EAACuB,IAAA,EAA+C,OAAA;AAAA,MAAA,GAAKG,EAAMlC;AAAAA,IAAAA,GAAU,qBAAA,IAClE7F,UAAAA,EAAQ+H,EAAMvC,IAAK,EAAA,GADb,OAAOuC,EAAMvC,IAAK,IAAIE,GAAAA,CAAM,EAErC,GACD5G,QAAAkB,GAAAlB,QAAAgJ,KAAAA,IAAAhJ,EAAA,EAAA,GAJA+I,IAAA5I,EAAW+I,MAAO,CAAC,EAAClF,IAAKgF,CAIzB,GAAChJ,QAAAG,GAAAH,QAAAkB,GAAAlB,QAAA+I;AAAAA,EAAA;AAAAA,IAAAA,IAAA/I,EAAA,EAAA;AAAA,MAAAgJ;AAAA,EAAAhJ,EAAA,EAAA,MAAAD,KAAAC,EAAA,EAAA,MAAAiB,KAAAjB,EAAA,EAAA,MAAA6I,KAAA7I,UAAA+I,KAjDJC,sBAACG,IAAA,EAAE,GAAKpJ,GAAekB,QAAAA,GAAmB,aAAA,oBACxC4H,UAAAA;AAAAA,IAAAA;AAAAA,IA4CCE;AAAAA,EAAAA,GAKH,GAAK/I,QAAAD,GAAAC,QAAAiB,GAAAjB,QAAA6I,GAAA7I,QAAA+I,GAAA/I,QAAAgJ,KAAAA,IAAAhJ,EAAA,EAAA;AAAA,MAAAoJ;AAAA,EAAApJ,EAAA,EAAA,MAAAuB,KAAAvB,UAAAG,EAAAkJ,UAAArJ,EAAA,EAAA,MAAAyB,KAAAzB,EAAA,EAAA,MAAAoB,KAAApB,UAAAI,KAAAJ,EAAA,EAAA,MAAAK,MAEH+I,IAAAhI,KACE,gBAAAmG,EAAC+B,IAAA,EACE/H,UAAAA,KAAaA,EAAS8H,WAAY,KAAlC5H,IAEG,gBAAA8F,EAAC4B,IAAA,EACC,UAAA,gBAAA5B,EAAA,MAAA,EAAa,SAAApH,EAAWkJ,QAAmB,WAAA,wBACzC,UAAA,gBAAA9B,EAAA,OAAA,EAAe,WAAA,kCACb,UAAA,gBAAAA,EAACgC,MAAoB,MAAA,OAAA,GAAW,mBAAmB,GACrD,EAAA,CACF,EAAA,GALM,sBAMR,sBAGCD,IAAA,EACE/H,UAAAA;AAAAA,IAAAA,KAAaA,EAASyC,IAAKwF,CAAAA,MAC1B,gBAAAjC,EAACzH,IAAA,EACU0J,YACC,UAAAA,EAAIrI,WAAYqI,EAAIrI,WAAY,IAAhC,GAEH,OAAA,GAAGqI,EAAKpJ,CAAY,CAAC,IACrBC,OAAAA,GAAAA,GAFFmJ,EAAKpJ,CAAY,CAEH,CACtB;AAAA,IACAmB,KAAaA,EAAS8H,WAAY,KAAlC5H,KACD,gBAAA8F,EAAC4B,IAAA,EACC,UAAA,gBAAA5B,UAAa,SAAApH,EAAWkJ,QAAmB,WAAA,wBACzC,UAAA,gBAAA9B,EAAA,OAAA,EAAe,WAAA,kCACb,UAAA,gBAAAA,EAACgC,IAAA,EAAoB,MAAA,OAAA,GAAW,sBAClC,EAAA,CACF,EAAA,GALM,sBAMR;AAAA,EAAA,EAAA,CAEF,EAAA,CAEN,GACDvJ,QAAAuB,GAAAvB,EAAA,EAAA,IAAAG,EAAAkJ,QAAArJ,QAAAyB,GAAAzB,QAAAoB,GAAApB,QAAAI,GAAAJ,QAAAK,IAAAL,QAAAoJ,KAAAA,IAAApJ,EAAA,EAAA;AAAA,MAAAyJ;AAAA,SAAAzJ,EAAA,GAAA,MAAAgJ,KAAAhJ,WAAAoJ,KAvFLK,uBAACH,IAAA,EACCN,UAAAA;AAAAA,IAAAA;AAAAA,IAoDEI;AAAAA,EAAAA,GAoCJ,GAAYpJ,SAAAgJ,GAAAhJ,SAAAoJ,GAAApJ,SAAAyJ,MAAAA,KAAAzJ,EAAA,GAAA,GAzFZyJ;AAyFY;AA/NA,SAAAjH,KAAA;AAAA;AAAA,SAAAE,KAAA;AAAA;AAAA,SAAAC,GAAA+G,GAAA;AAAA,SA4CW,CAACA;AAAS;"}
|
package/lib/uitour/index.js
CHANGED
|
@@ -4,12 +4,10 @@ import { useState as a, useRef as se, useEffect as oe } from "react";
|
|
|
4
4
|
import { createPortal as Se } from "react-dom";
|
|
5
5
|
import ve from "../buttons/Button.js";
|
|
6
6
|
import ie from "../buttons/PrimaryButton.js";
|
|
7
|
-
import '../assets/styles/uitour.css';import '../assets/styles/button.css'
|
|
8
|
-
/* empty css */
|
|
9
|
-
/* empty css */
|
|
7
|
+
import '../assets/styles/uitour.css';import '../assets/styles/button.css';/* empty css */
|
|
10
8
|
/* empty css */
|
|
11
9
|
import { STEP_POSITIONS as M, ARROW_WIDTH as pe, ARROW_HEIGHT as he } from "./helpers.js";
|
|
12
|
-
const
|
|
10
|
+
const Re = (be) => {
|
|
13
11
|
const e = Ie.c(54), {
|
|
14
12
|
data: o,
|
|
15
13
|
nextButtonLabel: $,
|
|
@@ -185,6 +183,6 @@ const Oe = (be) => {
|
|
|
185
183
|
return e[52] !== ne ? (W = Se(ne, document.body), e[52] = ne, e[53] = W) : W = e[53], W;
|
|
186
184
|
};
|
|
187
185
|
export {
|
|
188
|
-
|
|
186
|
+
Re as default
|
|
189
187
|
};
|
|
190
188
|
//# sourceMappingURL=index.js.map
|
package/lib/uitour/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/lib/uitour/index.tsx"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport DefaultButton, { PrimaryButton } from '../buttons';\nimport '../assets/styles/uitour.scss';\nimport { ARROW_HEIGHT, ARROW_WIDTH, STEP_POSITIONS } from './helpers';\nimport { CurrentStep, ElementEffect, IUITourProps, StepDimensions, UITourData } from './types';\n\nconst UiTour = (props: IUITourProps) => {\n const {\n data, nextButtonLabel, backButtonLabel, finishButtonLabel, showCloseButton = true,\n showBackButton = true, visible = true, onFinish, onStepChange,\n } = props;\n const [currentStep, setCurrentStep] = useState<CurrentStep | undefined>(undefined);\n const [hasNextStep, setHasNextStep] = useState(false);\n const [hasBackStep, setHasBackStep] = useState(false);\n const [isLastStep, setIsLastStep] = useState(false);\n const [stepDimensions, setStepDimensions] = useState<StepDimensions | null>(null);\n const [showTour, setShowTour] = useState(visible);\n const [stepPosition, setStepPosition] = useState(STEP_POSITIONS.left);\n const stepRef = useRef<HTMLDivElement>(null);\n const descriptionRef = useRef<HTMLParagraphElement>(null);\n const activatedEffects = useRef<ElementEffect[]>([]);\n\n const handleNextStep = () => {\n if (hasNextStep) {\n const currentStepIndex = data.findIndex(item => item.id === currentStep?.id);\n const nextStep = data[currentStepIndex + 1];\n const nextStepIndex = data.findIndex(item => item.id === nextStep.id);\n const target = document.getElementById(nextStep.targetId);\n if (target) {\n setCurrentStep({ ...nextStep, number: nextStepIndex + 1 });\n }\n }\n };\n\n const handleBackStep = () => {\n if (hasBackStep) {\n const currentStepIndex = data.findIndex(item => item.id === currentStep?.id);\n const backStep = data[currentStepIndex - 1];\n const backStepIndex = data.findIndex(item => item.id === backStep.id);\n const target = document.getElementById(backStep.targetId);\n if (target) {\n setCurrentStep({ ...backStep, number: backStepIndex + 1 });\n }\n }\n };\n\n const onCloseTour = () => {\n setShowTour(false);\n if (onFinish) onFinish(true);\n };\n\n const getStepPosition = (target: DOMRect) => {\n if (stepRef.current) {\n const stepRect = stepRef.current.getBoundingClientRect();\n const windowWidth = window.innerWidth;\n\n if (stepRect.right >= windowWidth || currentStep?.position === STEP_POSITIONS.right) {\n setStepPosition(STEP_POSITIONS.right);\n setStepDimensions({\n top: target.top - ARROW_HEIGHT,\n left: target.left - stepRect.width - ARROW_WIDTH,\n });\n } else {\n setStepPosition(STEP_POSITIONS.left);\n setStepDimensions({\n top: target.top - ARROW_HEIGHT,\n left: target.left + target.width + ARROW_WIDTH,\n });\n }\n }\n };\n\n const showStepTour = (step: CurrentStep) => {\n setShowTour(visible);\n setCurrentStep(step);\n };\n\n const removePreviousElementsEffects = () => {\n if (activatedEffects.current.length > 0) {\n const effects = activatedEffects.current;\n\n effects.forEach((ef) => {\n const element = document.getElementById(ef.elementId);\n if (element) {\n delete element.dataset.uitour;\n activatedEffects.current = activatedEffects.current\n .filter(r => r.elementId !== ef.elementId);\n }\n });\n }\n };\n\n const addElementEffect = useCallback((elementEffect: ElementEffect) => {\n const element = document.getElementById(elementEffect.elementId);\n if (element) {\n element.dataset.uitour = elementEffect.effect;\n if (activatedEffects.current) activatedEffects.current.push(elementEffect);\n }\n }, []);\n\n const showElementsEffects = (currentData: UITourData) => {\n if (currentData.effect) {\n const { effect, targetId } = currentData;\n addElementEffect({ effect, elementId: targetId });\n }\n\n if (currentData.elementsEffects) {\n let { elementsEffects } = currentData;\n if (!Array.isArray(elementsEffects)) elementsEffects = [elementsEffects];\n elementsEffects.forEach((ef) => {\n addElementEffect(ef);\n });\n }\n };\n\n useEffect(() => {\n if (currentStep) {\n const target = document.getElementById(currentStep.targetId);\n if (target) {\n const targetRect = target.getBoundingClientRect();\n const currentStepIndex = data.findIndex(item => item.id === currentStep.id);\n const lastDataIndex = data.length - 1;\n const initialDataIndex = 0;\n\n switch (currentStepIndex) {\n case lastDataIndex:\n setHasNextStep(false);\n setHasBackStep(true);\n setIsLastStep(true);\n break;\n case initialDataIndex:\n setHasNextStep(true);\n setIsLastStep(false);\n setHasBackStep(false);\n break;\n default:\n setHasNextStep(true);\n setHasBackStep(true);\n setIsLastStep(false);\n }\n getStepPosition(targetRect);\n removePreviousElementsEffects();\n showElementsEffects(data[currentStepIndex]);\n if (onStepChange) onStepChange(target);\n }\n\n if (descriptionRef.current) {\n descriptionRef.current.innerHTML = currentStep.description;\n }\n }\n }, [currentStep]);\n\n useEffect(() => {\n let mutationObserver: MutationObserver | null = null;\n if (data && visible) {\n const initialNumber = 1;\n const initialStep = { ...data[0], number: initialNumber };\n\n const target = document.getElementById(initialStep.targetId);\n if (target) {\n showStepTour(initialStep);\n } else {\n mutationObserver = new MutationObserver(() => {\n const targetObserved = document.getElementById(initialStep.targetId);\n if (targetObserved) {\n showStepTour(initialStep);\n mutationObserver?.disconnect();\n mutationObserver = null;\n }\n });\n mutationObserver.observe(document, { subtree: true, childList: true });\n }\n }\n\n return () => {\n mutationObserver?.disconnect();\n mutationObserver = null;\n };\n }, [visible, data]);\n\n useEffect(() => {\n if (!showTour && activatedEffects.current.length > 0) {\n removePreviousElementsEffects();\n }\n\n if (showTour) document.body.style.overflow = 'hidden';\n else document.body.style.overflow = 'auto';\n }, [showTour]);\n\n const component = useMemo(() => (\n <div className=\"uitour-component\">\n {currentStep && (\n <div\n ref={stepRef}\n className={`step -${stepPosition}`}\n key={currentStep.id}\n style={{ ...stepDimensions }}>\n {showCloseButton && (\n <div className=\"closebutton\">\n <DefaultButton\n iconName=\"cancel2\"\n iconAlign=\"center\"\n size=\"large\"\n transparent\n boxShadow={false}\n style={{ padding: 0 }}\n onClick={onCloseTour} />\n </div>\n )}\n <div className=\"content\">\n <span className=\"number\">{currentStep.number}</span>\n <div className=\"about\">\n <h3>{currentStep.title}</h3>\n <p\n className=\"description\"\n ref={descriptionRef} />\n </div>\n </div>\n <div className=\"footer\">\n <PrimaryButton\n label={backButtonLabel}\n onClick={handleBackStep}\n disabled={!hasBackStep}\n visible={showBackButton}\n customClass=\"back-button\" />\n <PrimaryButton\n label={nextButtonLabel}\n onClick={handleNextStep}\n disabled={!hasNextStep}\n visible={!isLastStep}\n customClass=\"next-button\" />\n <PrimaryButton\n label={finishButtonLabel}\n visible={isLastStep}\n onClick={onCloseTour}\n customClass=\"finish-button\" />\n </div>\n </div>\n )}\n </div>\n ), [\n currentStep, stepPosition, stepDimensions, showCloseButton, onCloseTour, backButtonLabel,\n handleBackStep, hasBackStep, showBackButton, nextButtonLabel, handleNextStep, hasNextStep,\n isLastStep, finishButtonLabel, isLastStep, onCloseTour,\n ]);\n\n if (!showTour) return null;\n return createPortal(component, document.body);\n};\n\nexport default UiTour;\n"],"names":["UiTour","props","$","_c","data","nextButtonLabel","backButtonLabel","finishButtonLabel","showCloseButton","t0","showBackButton","t1","visible","t2","onFinish","onStepChange","undefined","currentStep","setCurrentStep","useState","hasNextStep","setHasNextStep","hasBackStep","setHasBackStep","isLastStep","setIsLastStep","stepDimensions","setStepDimensions","showTour","setShowTour","stepPosition","setStepPosition","STEP_POSITIONS","left","stepRef","useRef","descriptionRef","t3","Symbol","for","activatedEffects","t4","id","currentStepIndex","findIndex","item","nextStep","nextStepIndex","item_0","document","getElementById","targetId","number","handleNextStep","t5","currentStepIndex_0","item_1","backStep","backStepIndex","item_2","handleBackStep","t6","onCloseTour","t7","position","target_1","current","stepRect","getBoundingClientRect","windowWidth","window","innerWidth","right","top","target","ARROW_HEIGHT","width","ARROW_WIDTH","getStepPosition","t8","step","showStepTour","t9","length","forEach","ef","element","elementId","dataset","uitour","filter","r","removePreviousElementsEffects","t10","elementEffect","element_0","effect","push","addElementEffect","t11","currentData","elementsEffects","Array","isArray","ef_0","showElementsEffects","t12","target_2","targetRect","currentStepIndex_1","item_3","lastDataIndex","bb85","innerHTML","description","t13","useEffect","t14","mutationObserver","initialStep","MutationObserver","disconnect","observe","subtree","childList","t15","t16","t17","body","style","overflow","t18","jsx","DefaultButton","padding","jsxs","title","PrimaryButton","t19","component","t20","createPortal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/lib/uitour/index.tsx"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport DefaultButton, { PrimaryButton } from '../buttons';\nimport '../assets/styles/uitour.scss';\nimport { ARROW_HEIGHT, ARROW_WIDTH, STEP_POSITIONS } from './helpers';\nimport { CurrentStep, ElementEffect, IUITourProps, StepDimensions, UITourData } from './types';\n\nconst UiTour = (props: IUITourProps) => {\n const {\n data, nextButtonLabel, backButtonLabel, finishButtonLabel, showCloseButton = true,\n showBackButton = true, visible = true, onFinish, onStepChange,\n } = props;\n const [currentStep, setCurrentStep] = useState<CurrentStep | undefined>(undefined);\n const [hasNextStep, setHasNextStep] = useState(false);\n const [hasBackStep, setHasBackStep] = useState(false);\n const [isLastStep, setIsLastStep] = useState(false);\n const [stepDimensions, setStepDimensions] = useState<StepDimensions | null>(null);\n const [showTour, setShowTour] = useState(visible);\n const [stepPosition, setStepPosition] = useState(STEP_POSITIONS.left);\n const stepRef = useRef<HTMLDivElement>(null);\n const descriptionRef = useRef<HTMLParagraphElement>(null);\n const activatedEffects = useRef<ElementEffect[]>([]);\n\n const handleNextStep = () => {\n if (hasNextStep) {\n const currentStepIndex = data.findIndex(item => item.id === currentStep?.id);\n const nextStep = data[currentStepIndex + 1];\n const nextStepIndex = data.findIndex(item => item.id === nextStep.id);\n const target = document.getElementById(nextStep.targetId);\n if (target) {\n setCurrentStep({ ...nextStep, number: nextStepIndex + 1 });\n }\n }\n };\n\n const handleBackStep = () => {\n if (hasBackStep) {\n const currentStepIndex = data.findIndex(item => item.id === currentStep?.id);\n const backStep = data[currentStepIndex - 1];\n const backStepIndex = data.findIndex(item => item.id === backStep.id);\n const target = document.getElementById(backStep.targetId);\n if (target) {\n setCurrentStep({ ...backStep, number: backStepIndex + 1 });\n }\n }\n };\n\n const onCloseTour = () => {\n setShowTour(false);\n if (onFinish) onFinish(true);\n };\n\n const getStepPosition = (target: DOMRect) => {\n if (stepRef.current) {\n const stepRect = stepRef.current.getBoundingClientRect();\n const windowWidth = window.innerWidth;\n\n if (stepRect.right >= windowWidth || currentStep?.position === STEP_POSITIONS.right) {\n setStepPosition(STEP_POSITIONS.right);\n setStepDimensions({\n top: target.top - ARROW_HEIGHT,\n left: target.left - stepRect.width - ARROW_WIDTH,\n });\n } else {\n setStepPosition(STEP_POSITIONS.left);\n setStepDimensions({\n top: target.top - ARROW_HEIGHT,\n left: target.left + target.width + ARROW_WIDTH,\n });\n }\n }\n };\n\n const showStepTour = (step: CurrentStep) => {\n setShowTour(visible);\n setCurrentStep(step);\n };\n\n const removePreviousElementsEffects = () => {\n if (activatedEffects.current.length > 0) {\n const effects = activatedEffects.current;\n\n effects.forEach((ef) => {\n const element = document.getElementById(ef.elementId);\n if (element) {\n delete element.dataset.uitour;\n activatedEffects.current = activatedEffects.current\n .filter(r => r.elementId !== ef.elementId);\n }\n });\n }\n };\n\n const addElementEffect = useCallback((elementEffect: ElementEffect) => {\n const element = document.getElementById(elementEffect.elementId);\n if (element) {\n element.dataset.uitour = elementEffect.effect;\n if (activatedEffects.current) activatedEffects.current.push(elementEffect);\n }\n }, []);\n\n const showElementsEffects = (currentData: UITourData) => {\n if (currentData.effect) {\n const { effect, targetId } = currentData;\n addElementEffect({ effect, elementId: targetId });\n }\n\n if (currentData.elementsEffects) {\n let { elementsEffects } = currentData;\n if (!Array.isArray(elementsEffects)) elementsEffects = [elementsEffects];\n elementsEffects.forEach((ef) => {\n addElementEffect(ef);\n });\n }\n };\n\n useEffect(() => {\n if (currentStep) {\n const target = document.getElementById(currentStep.targetId);\n if (target) {\n const targetRect = target.getBoundingClientRect();\n const currentStepIndex = data.findIndex(item => item.id === currentStep.id);\n const lastDataIndex = data.length - 1;\n const initialDataIndex = 0;\n\n switch (currentStepIndex) {\n case lastDataIndex:\n setHasNextStep(false);\n setHasBackStep(true);\n setIsLastStep(true);\n break;\n case initialDataIndex:\n setHasNextStep(true);\n setIsLastStep(false);\n setHasBackStep(false);\n break;\n default:\n setHasNextStep(true);\n setHasBackStep(true);\n setIsLastStep(false);\n }\n getStepPosition(targetRect);\n removePreviousElementsEffects();\n showElementsEffects(data[currentStepIndex]);\n if (onStepChange) onStepChange(target);\n }\n\n if (descriptionRef.current) {\n descriptionRef.current.innerHTML = currentStep.description;\n }\n }\n }, [currentStep]);\n\n useEffect(() => {\n let mutationObserver: MutationObserver | null = null;\n if (data && visible) {\n const initialNumber = 1;\n const initialStep = { ...data[0], number: initialNumber };\n\n const target = document.getElementById(initialStep.targetId);\n if (target) {\n showStepTour(initialStep);\n } else {\n mutationObserver = new MutationObserver(() => {\n const targetObserved = document.getElementById(initialStep.targetId);\n if (targetObserved) {\n showStepTour(initialStep);\n mutationObserver?.disconnect();\n mutationObserver = null;\n }\n });\n mutationObserver.observe(document, { subtree: true, childList: true });\n }\n }\n\n return () => {\n mutationObserver?.disconnect();\n mutationObserver = null;\n };\n }, [visible, data]);\n\n useEffect(() => {\n if (!showTour && activatedEffects.current.length > 0) {\n removePreviousElementsEffects();\n }\n\n if (showTour) document.body.style.overflow = 'hidden';\n else document.body.style.overflow = 'auto';\n }, [showTour]);\n\n const component = useMemo(() => (\n <div className=\"uitour-component\">\n {currentStep && (\n <div\n ref={stepRef}\n className={`step -${stepPosition}`}\n key={currentStep.id}\n style={{ ...stepDimensions }}>\n {showCloseButton && (\n <div className=\"closebutton\">\n <DefaultButton\n iconName=\"cancel2\"\n iconAlign=\"center\"\n size=\"large\"\n transparent\n boxShadow={false}\n style={{ padding: 0 }}\n onClick={onCloseTour} />\n </div>\n )}\n <div className=\"content\">\n <span className=\"number\">{currentStep.number}</span>\n <div className=\"about\">\n <h3>{currentStep.title}</h3>\n <p\n className=\"description\"\n ref={descriptionRef} />\n </div>\n </div>\n <div className=\"footer\">\n <PrimaryButton\n label={backButtonLabel}\n onClick={handleBackStep}\n disabled={!hasBackStep}\n visible={showBackButton}\n customClass=\"back-button\" />\n <PrimaryButton\n label={nextButtonLabel}\n onClick={handleNextStep}\n disabled={!hasNextStep}\n visible={!isLastStep}\n customClass=\"next-button\" />\n <PrimaryButton\n label={finishButtonLabel}\n visible={isLastStep}\n onClick={onCloseTour}\n customClass=\"finish-button\" />\n </div>\n </div>\n )}\n </div>\n ), [\n currentStep, stepPosition, stepDimensions, showCloseButton, onCloseTour, backButtonLabel,\n handleBackStep, hasBackStep, showBackButton, nextButtonLabel, handleNextStep, hasNextStep,\n isLastStep, finishButtonLabel, isLastStep, onCloseTour,\n ]);\n\n if (!showTour) return null;\n return createPortal(component, document.body);\n};\n\nexport default UiTour;\n"],"names":["UiTour","props","$","_c","data","nextButtonLabel","backButtonLabel","finishButtonLabel","showCloseButton","t0","showBackButton","t1","visible","t2","onFinish","onStepChange","undefined","currentStep","setCurrentStep","useState","hasNextStep","setHasNextStep","hasBackStep","setHasBackStep","isLastStep","setIsLastStep","stepDimensions","setStepDimensions","showTour","setShowTour","stepPosition","setStepPosition","STEP_POSITIONS","left","stepRef","useRef","descriptionRef","t3","Symbol","for","activatedEffects","t4","id","currentStepIndex","findIndex","item","nextStep","nextStepIndex","item_0","document","getElementById","targetId","number","handleNextStep","t5","currentStepIndex_0","item_1","backStep","backStepIndex","item_2","handleBackStep","t6","onCloseTour","t7","position","target_1","current","stepRect","getBoundingClientRect","windowWidth","window","innerWidth","right","top","target","ARROW_HEIGHT","width","ARROW_WIDTH","getStepPosition","t8","step","showStepTour","t9","length","forEach","ef","element","elementId","dataset","uitour","filter","r","removePreviousElementsEffects","t10","elementEffect","element_0","effect","push","addElementEffect","t11","currentData","elementsEffects","Array","isArray","ef_0","showElementsEffects","t12","target_2","targetRect","currentStepIndex_1","item_3","lastDataIndex","bb85","innerHTML","description","t13","useEffect","t14","mutationObserver","initialStep","MutationObserver","disconnect","observe","subtree","childList","t15","t16","t17","body","style","overflow","t18","jsx","DefaultButton","padding","jsxs","title","PrimaryButton","t19","component","t20","createPortal"],"mappings":"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"}
|