linear-react-components-ui 2.0.1 → 2.1.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/lib/_virtual/index.js +8 -0
  2. package/lib/_virtual/index.js.map +1 -0
  3. package/lib/_virtual/index2.js +5 -0
  4. package/lib/_virtual/index2.js.map +1 -0
  5. package/lib/_virtual/index3.js +5 -0
  6. package/lib/_virtual/index3.js.map +1 -0
  7. package/lib/_virtual/react-is.development.js +5 -0
  8. package/lib/_virtual/react-is.development.js.map +1 -0
  9. package/lib/_virtual/react-is.production.min.js +5 -0
  10. package/lib/_virtual/react-is.production.min.js.map +1 -0
  11. package/lib/inputs/number/Currency.js +17 -19
  12. package/lib/inputs/number/Currency.js.map +1 -1
  13. package/lib/inputs/number/Decimal.js +17 -19
  14. package/lib/inputs/number/Decimal.js.map +1 -1
  15. package/lib/inputs/number/index.js +15 -17
  16. package/lib/inputs/number/index.js.map +1 -1
  17. package/lib/inputs2/selectfield/base.js +1 -1
  18. package/lib/inputs2/selectfield/base.js.map +1 -1
  19. package/lib/menus/float/SubMenuContainer.d.ts +28 -10
  20. package/lib/menus/float/SubMenuContainer.js +83 -97
  21. package/lib/menus/float/SubMenuContainer.js.map +1 -1
  22. package/lib/node_modules/lodash/lodash.js +2 -2
  23. package/lib/node_modules/lodash/lodash.js.map +1 -1
  24. package/lib/node_modules/object-assign/index.js +79 -0
  25. package/lib/node_modules/object-assign/index.js.map +1 -0
  26. package/lib/node_modules/prop-types/checkPropTypes.js +69 -0
  27. package/lib/node_modules/prop-types/checkPropTypes.js.map +1 -0
  28. package/lib/node_modules/prop-types/factoryWithThrowingShims.js +59 -0
  29. package/lib/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
  30. package/lib/node_modules/prop-types/factoryWithTypeCheckers.js +452 -0
  31. package/lib/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
  32. package/lib/node_modules/prop-types/index.js +21 -0
  33. package/lib/node_modules/prop-types/index.js.map +1 -0
  34. package/lib/node_modules/prop-types/lib/ReactPropTypesSecret.js +13 -0
  35. package/lib/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
  36. package/lib/node_modules/prop-types/lib/has.js +12 -0
  37. package/lib/node_modules/prop-types/lib/has.js.map +1 -0
  38. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +166 -0
  39. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
  40. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +107 -0
  41. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  42. package/lib/node_modules/prop-types/node_modules/react-is/index.js +18 -0
  43. package/lib/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
  44. package/lib/treetable/Row.js +304 -285
  45. package/lib/treetable/Row.js.map +1 -1
  46. package/lib/treetable/helpers.d.ts +2 -0
  47. package/lib/treetable/helpers.js.map +1 -1
  48. package/lib/treetable/types.d.ts +49 -0
  49. package/package.json +1 -1
@@ -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,\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 (onClickGetChildrens?.(rowId) && typeof onClickGetChildrens(rowId).finally === 'function') {\n onClickGetChildrens(rowId)\n .then(() => { })\n .catch(() => { })\n .finally(() => {\n searchChildrensAndInsertState();\n });\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 }\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","useContext","TreeTableContext","rowId","dataRow","rowLevel","t0","id","includes","Number","open","setOpen","useState","childrens","setChildrens","isLoadingChildrens","setIsLoadingChildrens","showToolbarElements","setShowToolbarElements","firstRenderingOfChildrens","setFirstRenderingOfChildrens","divContainerRef","useRef","t1","dataChildrens","searchChildrensPerRow","searchChildrensAndInsertState","t2","finally","then","_temp","catch","_temp2","_temp3","handlerShowChildrens","t3","validationKey","validations","options","disabled","unvisible","visible","elementBehavior","forEach","validation","validator","onDenied","_","isEmpty","validateRowElement","t4","elements","newElementsWithNewProps","Children","map","element","isValidElement","validationKey_0","onNodeElementClick","restProps","newProps","onClick","e","stopPropagation","createElement","type","buildToolbarElements","t5","Symbol","for","handleOnMouseEnter","t6","event","elementoAtual","document","elementFromPoint","clientX","clientY","current","contains","handlerMouseInsideDivContainer","t7","t8","useEffect","t9","t10","t11","t12","window","addEventListener","removeEventListener","t13","shouldOpen","t14","t15","name","t16","uuid","t17","t18","style","t19","t20","t21","marginLeft","t22","t23","t24","t25","t26","t27","t28","t29","t30","float","height","t31","t32","Toolbar","t33","t34","t35","gap","t36","t37","t38","t39","Td","t40","t41","column","slice","Tr","t42","length","item","t43","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;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linear-react-components-ui",
3
- "version": "2.0.1",
3
+ "version": "2.1.0-beta.0",
4
4
  "description": "Linear Sistemas ReactJs Components",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",