linear-react-components-ui 2.0.1-beta.0 → 2.0.1-beta.2
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/_virtual/index.js +8 -0
- package/lib/_virtual/index.js.map +1 -0
- package/lib/_virtual/index2.js +5 -0
- package/lib/_virtual/index2.js.map +1 -0
- package/lib/_virtual/index3.js +5 -0
- package/lib/_virtual/index3.js.map +1 -0
- package/lib/_virtual/react-is.development.js +5 -0
- package/lib/_virtual/react-is.development.js.map +1 -0
- package/lib/_virtual/react-is.production.min.js +5 -0
- package/lib/_virtual/react-is.production.min.js.map +1 -0
- package/lib/inputs/number/Currency.js +11 -17
- package/lib/inputs/number/Currency.js.map +1 -1
- package/lib/inputs/number/Decimal.js +11 -17
- package/lib/inputs/number/Decimal.js.map +1 -1
- package/lib/inputs/number/index.js +9 -15
- package/lib/inputs/number/index.js.map +1 -1
- package/lib/menus/float/SubMenuContainer.d.ts +28 -10
- package/lib/menus/float/SubMenuContainer.js +83 -97
- package/lib/menus/float/SubMenuContainer.js.map +1 -1
- package/lib/node_modules/lodash/lodash.js +2 -2
- package/lib/node_modules/lodash/lodash.js.map +1 -1
- package/lib/node_modules/object-assign/index.js +79 -0
- package/lib/node_modules/object-assign/index.js.map +1 -0
- package/lib/node_modules/prop-types/checkPropTypes.js +69 -0
- package/lib/node_modules/prop-types/checkPropTypes.js.map +1 -0
- package/lib/node_modules/prop-types/factoryWithThrowingShims.js +59 -0
- package/lib/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
- package/lib/node_modules/prop-types/factoryWithTypeCheckers.js +452 -0
- package/lib/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
- package/lib/node_modules/prop-types/index.js +21 -0
- package/lib/node_modules/prop-types/index.js.map +1 -0
- package/lib/node_modules/prop-types/lib/ReactPropTypesSecret.js +13 -0
- package/lib/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
- package/lib/node_modules/prop-types/lib/has.js +12 -0
- package/lib/node_modules/prop-types/lib/has.js.map +1 -0
- package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +166 -0
- package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +107 -0
- package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/lib/node_modules/prop-types/node_modules/react-is/index.js +18 -0
- package/lib/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
- package/lib/treetable/Row.js +309 -284
- package/lib/treetable/Row.js.map +1 -1
- package/lib/treetable/helpers.d.ts +2 -0
- package/lib/treetable/helpers.js.map +1 -1
- package/lib/treetable/types.d.ts +49 -0
- package/package.json +1 -1
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","t24","t25","t26","t27","t28","t29","float","height","t30","t31","Toolbar","t32","t33","t34","gap","t35","t36","t37","t38","Td","t39","t40","column","slice","Tr","t41","length","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 openNodeIds,\n startNodesOpened = false,\n } = useContext(TreeTableContext);\n\n const { rowId, dataRow, rowLevel } = props;\n const [open, setOpen] = useState(startNodesOpened || openNodeIds?.includes(Number(dataRow.id)));\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 (!startNodesOpened && onClickGetChildrens?.(rowId) && typeof onClickGetChildrens(rowId).finally === 'function') {\n onClickGetChildrens(rowId)\n .then(() => { })\n .catch(() => { })\n .finally(() => {\n searchChildrensAndInsertState();\n });\n } else {\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 const shouldOpen = startNodesOpened || openNodeIds?.includes(Number(dataRow.id));\n if (shouldOpen) {\n setOpen(true);\n searchChildrensAndInsertState();\n setFirstRenderingOfChildrens(true);\n } else {\n setOpen(false);\n }\n }, [startNodesOpened, openNodeIds, data, dataRow.id]);\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 <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 </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","openNodeIds","startNodesOpened","t0","useContext","TreeTableContext","undefined","rowId","dataRow","rowLevel","t1","id","includes","Number","open","setOpen","useState","childrens","setChildrens","isLoadingChildrens","setIsLoadingChildrens","showToolbarElements","setShowToolbarElements","firstRenderingOfChildrens","setFirstRenderingOfChildrens","divContainerRef","useRef","t2","dataChildrens","searchChildrensPerRow","searchChildrensAndInsertState","t3","finally","then","_temp","catch","_temp2","_temp3","handlerShowChildrens","t4","validationKey","validations","options","disabled","unvisible","visible","elementBehavior","forEach","validation","validator","onDenied","_","isEmpty","validateRowElement","t5","elements","newElementsWithNewProps","Children","map","element","isValidElement","validationKey_0","onNodeElementClick","restProps","newProps","onClick","e","stopPropagation","createElement","type","buildToolbarElements","t6","Symbol","for","handleOnMouseEnter","t7","event","elementoAtual","document","elementFromPoint","clientX","clientY","current","contains","handlerMouseInsideDivContainer","t8","t9","useEffect","t10","t11","t12","t13","window","addEventListener","removeEventListener","t14","shouldOpen","t15","t16","name","t17","uuid","t18","t19","style","t20","t21","t22","marginLeft","t23","t24","t25","t26","t27","t28","t29","t30","t31","float","height","t32","t33","Toolbar","t34","t35","t36","gap","t37","t38","t39","t40","Td","t41","t42","column","slice","Tr","t43","length","item","t44","prevState"],"mappings":"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"}
|
|
@@ -12,3 +12,5 @@ export declare const searchChildrensPerRow: (data: Array<{
|
|
|
12
12
|
}>, parentPropName: string, rowId?: string | number, rowLevel?: number) => {
|
|
13
13
|
[key: string]: ReactNode;
|
|
14
14
|
}[];
|
|
15
|
+
export declare const getTreeOpenNodes: (lista: any[], itemId: number, parentPropName?: string) => any[];
|
|
16
|
+
export declare const getAllParentIdsToOpen: (items: any[]) => unknown[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sources":["../../src/lib/treetable/helpers.ts"],"sourcesContent":["import { createContext, ReactNode } from 'react';\nimport { ITreeTableContext } from './types';\n\nexport const TreeTableContext = createContext({} as ITreeTableContext);\n\nexport const searchRootElements = (\n data: Array<{\n [key: string]: ReactNode\n }>,\n parentPropName: string,\n rowLevel = 0,\n) => {\n let dataFiltered;\n if (data) {\n dataFiltered = data.filter(item => !item[parentPropName]);\n\n return dataFiltered.map(item =>\n Object.assign(\n item,\n {},\n {\n rowLevel,\n },\n ));\n }\n\n return data;\n};\n\nexport const searchChildrensPerRow = (\n data: Array<{\n [key: string]: ReactNode\n }>,\n parentPropName: string,\n rowId?: string | number,\n rowLevel = 0,\n) => {\n let dataFiltered;\n if (data && rowId) {\n dataFiltered = data.filter(item => item[parentPropName] === Number(rowId));\n\n return dataFiltered.map(item =>\n Object.assign(\n item,\n {},\n {\n rowLevel,\n },\n ));\n }\n\n return data;\n};\n"],"names":["TreeTableContext","createContext","searchRootElements","data","parentPropName","rowLevel","dataFiltered","filter","item","map","Object","assign","searchChildrensPerRow","rowId","Number"],"mappings":";AAGO,MAAMA,mBAAmBC,cAAc,CAAA,CAAuB;AAE9D,MAAMC,qBAAqBA,CAChCC,MAGAC,gBACAC,WAAW,MACR;AACH,MAAIC;AACJ,MAAIH,MAAM;AACRG,mBAAeH,KAAKI,OAAOC,CAAAA,SAAQ,CAACA,KAAKJ,cAAc,CAAC;AAExD,WAAOE,aAAaG,IAAID,CAAAA,SACtBE,OAAOC,OACLH,MACA,IACA;AAAA,MACEH;AAAAA,IAAAA,CAEJ,CAAC;AAAA,EACL;AAEA,SAAOF;AACT;AAEO,MAAMS,wBAAwBA,CACnCT,MAGAC,gBACAS,OACAR,WAAW,MACR;AACH,MAAIC;AACJ,MAAIH,QAAQU,OAAO;AACjBP,mBAAeH,KAAKI,OAAOC,CAAAA,SAAQA,KAAKJ,cAAc,MAAMU,OAAOD,KAAK,CAAC;AAEzE,WAAOP,aAAaG,IAAID,CAAAA,SACtBE,OAAOC,OACLH,MACA,IACA;AAAA,MACEH;AAAAA,IAAAA,CAEJ,CAAC;AAAA,EACL;AAEA,SAAOF;AACT;"}
|
|
1
|
+
{"version":3,"file":"helpers.js","sources":["../../src/lib/treetable/helpers.ts"],"sourcesContent":["import { createContext, ReactNode } from 'react';\nimport { ITreeTableContext } from './types';\n\nexport const TreeTableContext = createContext({} as ITreeTableContext);\n\nexport const searchRootElements = (\n data: Array<{\n [key: string]: ReactNode\n }>,\n parentPropName: string,\n rowLevel = 0,\n) => {\n let dataFiltered;\n if (data) {\n dataFiltered = data.filter(item => !item[parentPropName]);\n\n return dataFiltered.map(item =>\n Object.assign(\n item,\n {},\n {\n rowLevel,\n },\n ));\n }\n\n return data;\n};\n\nexport const searchChildrensPerRow = (\n data: Array<{\n [key: string]: ReactNode\n }>,\n parentPropName: string,\n rowId?: string | number,\n rowLevel = 0,\n) => {\n let dataFiltered;\n if (data && rowId) {\n dataFiltered = data.filter(item => item[parentPropName] === Number(rowId));\n\n return dataFiltered.map(item =>\n Object.assign(\n item,\n {},\n {\n rowLevel,\n },\n ));\n }\n\n return data;\n};\n\nexport const getTreeOpenNodes = (\n lista: any[],\n itemId: number,\n parentPropName = 'naturezaPaiId',\n) => {\n const idsAbertos = [];\n\n let itemAtual = lista.find(item => item.id === itemId);\n\n while (itemAtual?.[parentPropName]) {\n idsAbertos.push(itemAtual[parentPropName]);\n\n itemAtual = lista.find(\n item => item.id === itemAtual[parentPropName],\n );\n }\n\n return idsAbertos;\n};\n\nexport const getAllParentIdsToOpen = (items: any[]) => {\n const ids = new Set();\n\n items.forEach((item) => {\n if (item.id) {\n ids.add(item.id);\n }\n\n if (item.naturezaPaiId) {\n ids.add(item.naturezaPaiId);\n }\n });\n\n return Array.from(ids);\n};\n"],"names":["TreeTableContext","createContext","searchRootElements","data","parentPropName","rowLevel","dataFiltered","filter","item","map","Object","assign","searchChildrensPerRow","rowId","Number"],"mappings":";AAGO,MAAMA,mBAAmBC,cAAc,CAAA,CAAuB;AAE9D,MAAMC,qBAAqBA,CAChCC,MAGAC,gBACAC,WAAW,MACR;AACH,MAAIC;AACJ,MAAIH,MAAM;AACRG,mBAAeH,KAAKI,OAAOC,CAAAA,SAAQ,CAACA,KAAKJ,cAAc,CAAC;AAExD,WAAOE,aAAaG,IAAID,CAAAA,SACtBE,OAAOC,OACLH,MACA,IACA;AAAA,MACEH;AAAAA,IAAAA,CAEJ,CAAC;AAAA,EACL;AAEA,SAAOF;AACT;AAEO,MAAMS,wBAAwBA,CACnCT,MAGAC,gBACAS,OACAR,WAAW,MACR;AACH,MAAIC;AACJ,MAAIH,QAAQU,OAAO;AACjBP,mBAAeH,KAAKI,OAAOC,CAAAA,SAAQA,KAAKJ,cAAc,MAAMU,OAAOD,KAAK,CAAC;AAEzE,WAAOP,aAAaG,IAAID,CAAAA,SACtBE,OAAOC,OACLH,MACA,IACA;AAAA,MACEH;AAAAA,IAAAA,CAEJ,CAAC;AAAA,EACL;AAEA,SAAOF;AACT;"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { CSSProperties, ReactElement } from 'react';
|
|
2
|
+
import { ITableProps, ITableRowProps } from '../table/types';
|
|
3
|
+
export type RowItem<T = void> = T & {
|
|
4
|
+
id: number | string;
|
|
5
|
+
statusEnum: {
|
|
6
|
+
id: number | string;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
export interface IValidatorElements<T = void> {
|
|
10
|
+
validator: (row: RowItem<T>) => boolean;
|
|
11
|
+
onDenied: 'unvisible' | 'disabled';
|
|
12
|
+
}
|
|
13
|
+
export interface IRowElementsValidations<T = void> {
|
|
14
|
+
[key: string]: IValidatorElements<T>[];
|
|
15
|
+
}
|
|
16
|
+
export interface IRowValidationProps {
|
|
17
|
+
validationKey: string | null;
|
|
18
|
+
onNodeElementClick: (row: any) => void;
|
|
19
|
+
visible: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface ITreeTableProps extends ITableProps {
|
|
22
|
+
data: Array<{
|
|
23
|
+
[key: string]: any;
|
|
24
|
+
}>;
|
|
25
|
+
dataColumns: Array<{
|
|
26
|
+
title: string;
|
|
27
|
+
name: string;
|
|
28
|
+
style?: CSSProperties;
|
|
29
|
+
}>;
|
|
30
|
+
rootPropName: string;
|
|
31
|
+
parentPropName: string;
|
|
32
|
+
leftToolbarElements?: Array<ReactElement>;
|
|
33
|
+
rightToolbarElements?: Array<ReactElement>;
|
|
34
|
+
toolbarElementsValidations?: IRowElementsValidations<any>;
|
|
35
|
+
stylesForRow?: CSSProperties;
|
|
36
|
+
onClickGetChildrens?: (id?: string | number) => Promise<void>;
|
|
37
|
+
onClickFirstColumn?: (id?: string | number) => void;
|
|
38
|
+
styleForRightToolbar?: CSSProperties;
|
|
39
|
+
styleForLeftToolbar?: CSSProperties;
|
|
40
|
+
openNodeIds?: number[];
|
|
41
|
+
startNodesOpened?: boolean;
|
|
42
|
+
}
|
|
43
|
+
export interface ITreeTableRow extends ITableRowProps {
|
|
44
|
+
dataRow: {
|
|
45
|
+
[key: string]: any;
|
|
46
|
+
};
|
|
47
|
+
rowLevel: number;
|
|
48
|
+
}
|
|
49
|
+
export type ITreeTableContext = ITreeTableProps;
|