@orangesix/react 1.2.2 → 1.3.1
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/api/index.d.ts +46 -2
- package/autocomplete/index.cjs.js +1 -1
- package/autocomplete/index.cjs.js.map +1 -1
- package/autocomplete/index.d.ts +12 -1
- package/autocomplete/index.esm.js +1 -1
- package/autocomplete/index.esm.js.map +1 -1
- package/button/_button.scss +56 -0
- package/button/index.cjs.js +2 -0
- package/button/index.cjs.js.map +1 -0
- package/button/index.d.ts +109 -0
- package/button/index.esm.js +2 -0
- package/button/index.esm.js.map +1 -0
- package/button/package.json +5 -0
- package/editor/index.d.ts +5 -0
- package/input/index.cjs.js +1 -1
- package/input/index.cjs.js.map +1 -1
- package/input/index.d.ts +44 -1
- package/input/index.esm.js +1 -1
- package/input/index.esm.js.map +1 -1
- package/inputfilter/index.cjs.js +1 -1
- package/inputfilter/index.cjs.js.map +1 -1
- package/inputfilter/index.d.ts +5 -0
- package/inputfilter/index.esm.js +1 -1
- package/inputfilter/index.esm.js.map +1 -1
- package/loading/index.d.ts +16 -16
- package/loading/package.json +5 -5
- package/message/index.cjs.js +2 -0
- package/message/index.cjs.js.map +1 -0
- package/message/index.d.ts +108 -0
- package/message/index.esm.js +2 -0
- package/message/index.esm.js.map +1 -0
- package/message/package.json +5 -0
- package/modal/index.cjs.js +1 -1
- package/modal/index.cjs.js.map +1 -1
- package/modal/index.d.ts +5 -0
- package/modal/index.esm.js +1 -1
- package/modal/index.esm.js.map +1 -1
- package/package.json +23 -30
- package/picklist/index.d.ts +2 -1
- package/radio/index.cjs.js +1 -1
- package/radio/index.cjs.js.map +1 -1
- package/radio/index.d.ts +44 -1
- package/radio/index.esm.js +1 -1
- package/radio/index.esm.js.map +1 -1
- package/select/index.cjs.js +1 -1
- package/select/index.cjs.js.map +1 -1
- package/select/index.d.ts +46 -2
- package/select/index.esm.js +1 -1
- package/select/index.esm.js.map +1 -1
- package/style/index.d.ts +1 -1
- package/switch/index.cjs.js +1 -1
- package/switch/index.cjs.js.map +1 -1
- package/switch/index.d.ts +44 -1
- package/switch/index.esm.js +1 -1
- package/switch/index.esm.js.map +1 -1
- package/table/index.cjs.js +1 -1
- package/table/index.cjs.js.map +1 -1
- package/table/index.d.ts +38 -4
- package/table/index.esm.js +1 -1
- package/table/index.esm.js.map +1 -1
- package/tablepivot/index.d.ts +2 -1
- package/tabview/index.cjs.js +1 -1
- package/tabview/index.cjs.js.map +1 -1
- package/tabview/index.d.ts +12 -1
- package/tabview/index.esm.js +1 -1
- package/tabview/index.esm.js.map +1 -1
- package/textarea/index.cjs.js +1 -1
- package/textarea/index.cjs.js.map +1 -1
- package/textarea/index.d.ts +44 -1
- package/textarea/index.esm.js +1 -1
- package/textarea/index.esm.js.map +1 -1
- package/utils/index.cjs.js +1 -1
- package/utils/index.cjs.js.map +1 -1
- package/utils/index.d.ts +10 -2
- package/utils/index.esm.js +1 -1
- package/utils/index.esm.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../../src/utils/helper.ts","../../src/utils/const.ts","../../src/utils/handle.ts","../../src/inputfilter/const.ts","../../src/inputfilter/legend.ts","../../src/box/box.tsx","../../src/inputfilter/function/validate.ts","../../src/inputfilter/function/handle.ts","../../src/inputfilter/core/text.tsx","../../src/inputfilter/core/date.tsx","../../src/api/input.tsx","../../src/inputfilter/core/number.tsx","../../src/inputfilter/core/autocomplete.tsx","../../src/inputfilter/inputfilter.tsx"],"sourcesContent":["import $ from \"jquery\";\r\nimport axios from \"axios\";\r\nimport { message } from \"./message\";\r\nimport { IUtilsHelperResponse } from \"./types\";\r\n\r\n/**\r\n * Realiza a pesquisa do elemento html na DOM<br>\r\n * <meta id=\"???\" name=\"???\" content=\"your-url\">\r\n */\r\nexport function getMetaContent(id: string): string | null {\r\n let element: any = document.getElementById(id);\r\n let url: null | string = element === null ? null : (element.content).replace(\".br/\", \".br\");\r\n return url === null ? null : url.substr(-1) === \"/\" ? url.slice(0, url.length - 1) : url;\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do CEP na API pública \"https://viacep.com.br/ws/\"\r\n */\r\nexport async function getCep(value: string): Promise<IUtilsHelperResponse[\"gep_cep\"]> {\r\n let cep = value.length === 0 ? \"00000000\" : value.replace(\"-\", \"\");\r\n return await axios.get<IUtilsHelperResponse[\"gep_cep\"]>(\"https://viacep.com.br/ws/\" + cep + \"/json/\")\r\n .then(data => data.data);\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do elemento na árvore DOM\r\n */\r\nexport function getElementDOM(element?: string, preloadTimeOut?: number): Promise<null | JQuery<HTMLElement>> {\r\n return new Promise((resolve) => {\r\n // @ts-ignore\r\n let body = window.self === window.top ? $(\"body\") : $(window.frameElement).parents(\"body\");\r\n if (!element || element.length === 0) {\r\n resolve(body);\r\n }\r\n\r\n if (element === \"#\" || element === \".\") {\r\n resolve(null);\r\n }\r\n\r\n let elementFound = body.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n } else {\r\n setTimeout(() => {\r\n let iframe = body.find(\"iframe\").contents();\r\n if (iframe.length === 0) {\r\n resolve(null);\r\n }\r\n elementFound = iframe.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n }\r\n resolve(null);\r\n }, preloadTimeOut ?? 300);\r\n }\r\n });\r\n}\r\n\r\n/**\r\n * Permite à comunicação de origem cruzada entre objetos do Windows.<br>\r\n * Exemplo: Comunicação entre iframe e corpo principal\r\n */\r\nexport function windowMessageEvent(): void {\r\n window.addEventListener(\"message\", function (event: MessageEvent) {\r\n if (event.data?.type === \"message\") {\r\n let data = event.data;\r\n message<any>({ ...data.params });\r\n }\r\n });\r\n}","import { getMetaContent } from \"./helper\";\r\n\r\nexport const USER: string | null = getMetaContent(\"auth\");\r\nexport const BASE: string | null = getMetaContent(\"react-base\");\r\nexport const TOKEN: string | null = getMetaContent(\"csrf-token\");\r\n\r\nexport const MES: Array<{ id: number, name: string }> = [\r\n { id: 1, name: \"Janeiro\" },\r\n { id: 2, name: \"Fevereiro\" },\r\n { id: 3, name: \"Março\" },\r\n { id: 4, name: \"Abril\" },\r\n { id: 5, name: \"Maio\" },\r\n { id: 6, name: \"Junho\" },\r\n { id: 7, name: \"Julho\" },\r\n { id: 8, name: \"Agosto\" },\r\n { id: 9, name: \"Setembro\" },\r\n { id: 10, name: \"Outubro\" },\r\n { id: 11, name: \"Novembro\" },\r\n { id: 12, name: \"Dezembro\" },\r\n];\r\n\r\nexport const ESTADOS: Array<{ id: string, name: string }> = [\r\n { name: \"Acre\", id: \"AC\" },\r\n { name: \"Alagoas\", id: \"AL\" },\r\n { name: \"Amapá\", id: \"AP\" },\r\n { name: \"Amazonas\", id: \"AM\" },\r\n { name: \"Bahia\", id: \"BA\" },\r\n { name: \"Ceará\", id: \"CE\" },\r\n { name: \"Distrito Federal\", id: \"DF\" },\r\n { name: \"Espírito Santo\", id: \"ES\" },\r\n { name: \"Goiás\", id: \"GO\" },\r\n { name: \"Maranhão\", id: \"MA\" },\r\n { name: \"Mato Grosso\", id: \"MT\" },\r\n { name: \"Mato Grosso do Sul\", id: \"MS\" },\r\n { name: \"Minas Gerais\", id: \"MG\" },\r\n { name: \"Pará\", id: \"PA\" },\r\n { name: \"Paraíba\", id: \"PB\" },\r\n { name: \"Paraná\", id: \"PR\" },\r\n { name: \"Pernambuco\", id: \"PE\" },\r\n { name: \"Piauí\", id: \"PI\" },\r\n { name: \"Rio de Janeiro\", id: \"RJ\" },\r\n { name: \"Rio Grande do Norte\", id: \"RN\" },\r\n { name: \"Rio Grande do Sul\", id: \"RS\" },\r\n { name: \"Rondônia\", id: \"RO\" },\r\n { name: \"Roraima\", id: \"RR\" },\r\n { name: \"Santa Catarina\", id: \"SC\" },\r\n { name: \"São Paulo\", id: \"SP\" },\r\n { name: \"Sergipe\", id: \"SE\" },\r\n { name: \"Tocantins\", id: \"TO\" }\r\n];","/**\r\n * Formata um valor numérico para o formato decimal ou monetário.\r\n *\r\n * @param valor - O valor a ser formatado.\r\n * @param format - O formato desejado: \"money\" para monetário ou \"decimal\" para decimal.\r\n * @returns O valor formatado como string.\r\n */\r\nexport function handleNumber(\r\n valor: string,\r\n format: \"money\" | \"decimal\" = \"decimal\"\r\n): string {\r\n let value = valor.replace(/[^0-9.,]/g, \"\");\r\n if (format === \"decimal\") {\r\n return value.replace(\",\", \".\").replace(/(\\..*)\\./g, \"$1\");\r\n }\r\n return parseFloat(value.replace(\",\", \".\")).toLocaleString(\"pt-BR\", {\r\n style: \"currency\",\r\n currency: \"BRL\"\r\n }).replace(\".\", \" \");\r\n}\r\n\r\n/**\r\n * Formata um valor de string para o formato de horas (HH:MM).\r\n *\r\n * @param valor - O valor a ser formatado.\r\n * @returns O valor formatado como string no formato de horas.\r\n */\r\nexport function handleHours(valor: string): string {\r\n let value = valor.replace(/[^\\d.]/g, \"\");\r\n const parts = value.split(\".\");\r\n\r\n if (parts.length > 1) {\r\n parts[1] = parts[1].substring(0, 2);\r\n }\r\n\r\n value = parts.join(\".\");\r\n if (value.length > 2) {\r\n value = value.substring(0, value.length - 2) + \":\" + value.substring(value.length - 2);\r\n }\r\n return value;\r\n}","import { InputFilterOptionsMap, InputFilterOptionsProps } from \"./types\";\r\n\r\nexport const optionsDefault: Array<InputFilterOptionsMap[\"text\"]> = [\"=\", \"!=\", \"%\", \"!%\"];\r\n\r\nexport const optionsLabel: Array<{\r\n options: InputFilterOptionsProps,\r\n label: string\r\n}> = [\r\n { options: \"=\", label: \"Igual a\" },\r\n { options: \"!=\", label: \"Diferente de\" },\r\n { options: \"<\", label: \"Menor do que\" },\r\n { options: \">\", label: \"Maior do que\" },\r\n { options: \"<=\", label: \"Menor ou igual a\" },\r\n { options: \">=\", label: \"Maior ou igual a\" },\r\n { options: \"{}\", label: \"Intervalo\" },\r\n { options: \"%\", label: \"Contém o que\" },\r\n { options: \"!%\", label: \"Não contém o que\" },\r\n];","import { MES } from \"../utils\";\r\nimport { optionsLabel } from \"./const\";\r\n\r\n/**\r\n * Retorna a legenda de acordo com operador na string\r\n * @param value - Valor a ser tratado\r\n */\r\nexport function filterLegend(value: string | undefined): string | null {\r\n if (!value) {\r\n return null;\r\n }\r\n let optsRegex = /(=|!=|<|>|<=|>=|%|!%|\\{\\})/;\r\n let optsMatch = value?.match(optsRegex);\r\n let opts = value.charAt(value.length - 1);\r\n let option = optsMatch?.[0];\r\n\r\n if (optsMatch?.[0] !== opts && isNaN(parseInt(opts)) && option?.slice(-1) !== opts) {\r\n option = optsMatch?.[0] + opts;\r\n }\r\n return optionsLabel.filter(item => item.options === option)[0]?.label ?? null;\r\n}\r\n\r\n/**\r\n * Realiza o tratamento das informações para retorna a legenda do tipo `Date`\r\n * @param value - Valor a ser tratado\r\n */\r\nexport function filterLegendData(value: string | undefined): string {\r\n let legend = filterLegend(value);\r\n if (legend === null) {\r\n return \"Não encontramos legenda definida.\";\r\n }\r\n\r\n let interval = value?.split(\"{}\");\r\n let date = value?.split(\"/\");\r\n\r\n const handleLegend = (date: any): string => {\r\n let dia = parseInt(date[0]);\r\n let mes = parseInt(date[1], 10);\r\n let ano = parseInt(date[2]);\r\n\r\n return `\r\n ${(dia > 0 ? `${mes == 0 ? \"dia\" : \"\"} ${dia}` : \"\")} \r\n ${mes > 0 ? `${dia > 0 ? \"de\" : \"\"} ${MES[mes - 1]?.name}` : \"\"} \r\n ${ano > 0 ? `${dia > 0 || mes > 0 ? \"de\" : \"\"} ${ano}` : \"\"}\r\n `.replace(/\\s+/g, \" \").trim();\r\n };\r\n let result = interval?.[1] === undefined\r\n ? handleLegend(date)\r\n : handleLegend(interval[0].split(\"/\")) + \" à \" + handleLegend(interval[1].split(\"/\"));\r\n return legend + \": \" + result;\r\n}\r\n\r\n/**\r\n * Realiza o tratamento das informações para retorna a legenda do tipo `Text`\r\n * @param value - Valor a ser tratado\r\n */\r\nexport function filterLegendText(value: string | undefined): string {\r\n let legend = filterLegend(value);\r\n if (legend === null) {\r\n return \"Não encontramos legenda definida.\";\r\n }\r\n return legend + \": \" + (value?.replace(/(=|!=|<|>|<=|>=|%|!%|\\{\\})/g, \"\") ?? \"\");\r\n}\r\n\r\n/**\r\n * Realiza o tratamento das informações para retorna a legando do tipo `autocomplete`\r\n * @param value - Valor a ser tratado\r\n * @param dto - Array de objeto para ser pesquisado a legenda\r\n * @param word - Limite de palavras para a legenda\r\n */\r\nexport function filterLegendAutocomplete(value: string | undefined, dto: any[] = [], word: number = 30): string {\r\n let legend = filterLegend(value);\r\n if (legend === null || dto.length === 0) {\r\n return \"Não encontramos legenda definida.\";\r\n }\r\n let ids: any[] = value?.split(\";\").map(item => parseInt(item)) ?? [];\r\n let values = dto\r\n .filter(obj => ids.includes(obj.id))\r\n .map(item => item.label).join(\", \");\r\n let text = values.substring(0, word);\r\n return legend + \": \" + text + (text.length !== values.length ? \"...\" : \"\");\r\n}","import { BoxProps } from \"./types\";\r\nimport React, { HTMLAttributes } from \"react\";\r\nimport { classNames } from \"primereact/utils\";\r\n\r\n/**\r\n * Componente - `Box`\r\n *\r\n * Um componente versátil que pode ser utilizado para criar seções ou caixas em uma página.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n *\r\n * Exemplo de uso:\r\n * ```tsx\r\n * <Box align=\"align-items-center\"\r\n * justify=\"justify-content-end\"\r\n * size=\"25\">\r\n * ...conteúdo HTML\r\n * </Box>\r\n * ```\r\n */\r\nexport const Box = ({ children, ...props }: BoxProps) => {\r\n const css = {\r\n size: `box-size-${(props.size ?? \"100\")}`,\r\n direction: `box-direction-${props.direction ?? \"row\"}`,\r\n justify: props.justify === undefined ? \"\" : Array.isArray(props.justify) ? props.justify?.join(\" \") : props.justify,\r\n align: props.align === undefined ? \"\" : Array.isArray(props.align) ? props.align?.join(\" \") : props.align\r\n };\r\n\r\n const attr: HTMLAttributes<\"div\"> & Omit<BoxProps, \"children\"> = {\r\n className: classNames([\r\n \"box\",\r\n props.className ?? \"\",\r\n css.size,\r\n css.direction,\r\n css.justify,\r\n css.align\r\n ]),\r\n style: props.css,\r\n id: props.id\r\n };\r\n\r\n return (\r\n <div {...attr as any}>{children}</div>\r\n );\r\n};","/**\r\n * Valida e ajusta uma data fornecida como um array de números.\r\n *\r\n * @param date - Um array de números representando [dia, mês, ano].\r\n * @returns Um array de números representando a data validada e ajustada.\r\n */\r\nexport function validateDate(date: number[]): number[] {\r\n const [day, month, year] = date;\r\n\r\n const isMonthValid = month >= 1 && month <= 12;\r\n const isYearValid = year > 0 && year < 99999;\r\n const isDayValid = day >= 1 && day <= 31;\r\n\r\n if (isYearValid && !isMonthValid && !isDayValid) {\r\n return [0, 0, year];\r\n }\r\n\r\n if (isYearValid && isMonthValid && !isDayValid) {\r\n return [0, month, year];\r\n }\r\n\r\n if (isYearValid && isMonthValid && isDayValid) {\r\n let currentDate = new Date(year, month, 0);\r\n if (currentDate.getDate() < day) {\r\n return [currentDate.getDate(), month, year];\r\n }\r\n return date;\r\n }\r\n\r\n if (!isYearValid && isMonthValid && !isDayValid) {\r\n return [0, month, 0];\r\n }\r\n\r\n if (!isYearValid && isMonthValid && isDayValid) {\r\n return [day, month, 0];\r\n }\r\n\r\n if (!isYearValid && !isMonthValid && isDayValid) {\r\n return [day, 0, 0];\r\n }\r\n\r\n if (isYearValid && !isMonthValid && isDayValid) {\r\n return [day, 0, year];\r\n }\r\n\r\n return [0, 0, 0];\r\n}","import { validateDate } from \"./validate\";\r\nimport { handleNumber } from \"../../utils\";\r\nimport { InputFilterOptionsMap } from \"../types\";\r\n\r\n/**\r\n * Obtém a opção de filtro correspondente ao valor fornecido.\r\n *\r\n * @param value - O valor para buscar uma opção correspondente.\r\n * @param options - Um array de opções de filtro disponíveis.\r\n * @returns A opção de filtro correspondente ou a primeira opção se nenhuma correspondência for encontrada.\r\n */\r\nexport function handleGetOption<T extends keyof InputFilterOptionsMap>(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[T]>\r\n): string {\r\n let exists = options.filter(option => value?.includes(option));\r\n return exists[exists.length - 1] ?? options[0];\r\n}\r\n\r\n/**\r\n * Retorna apenas o valor sem os operadores filtro tipo `Text`.\r\n *\r\n * @param value - O valor completo, incluindo a opção de filtro.\r\n * @param options - Um array de opções de filtro disponíveis.\r\n * @returns O valor sem as opções de filtro.\r\n */\r\nexport function handleGetValueText(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[\"text\"]>\r\n): string | null {\r\n let str = value;\r\n let exists = options\r\n .slice()\r\n .reverse()\r\n .find(item => str?.endsWith(item));\r\n if (exists && str !== undefined) {\r\n return str.slice(0, -exists.length);\r\n }\r\n return str ?? null;\r\n}\r\n\r\n/**\r\n * Retorna apenas o valor sem os operadores filtro tipo `Date`.\r\n *\r\n * @param value - O valor completo, incluindo a opção de filtro.\r\n * @param options - Um array de opções de filtro disponíveis.\r\n * @param select - Seletor do tipo de filtro\r\n * @returns O valor sem as opções de filtro.\r\n */\r\nexport function handleGetValueDate(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[\"date\"]>,\r\n select: null | string = null\r\n): Array<number | string> {\r\n let str = value;\r\n let optsRegex = /(=|!=|<|>|<=|>=|\\{\\})/;\r\n let optsMatch = value?.match(optsRegex);\r\n let opts = optsMatch ? optsMatch[0].trim() : options[0];\r\n\r\n let parts: any[] = [];\r\n let interval = str?.split(\"{}\") ?? [];\r\n\r\n interval.forEach((value, index) => {\r\n let clean = value.replace(optsRegex, \"\").trim();\r\n\r\n if (clean.includes(\"/\")) {\r\n parts[index] = clean.split(\"/\").map(item => parseInt(item));\r\n } else {\r\n let number = parseInt(clean);\r\n parts[index] = [isNaN(number) ? 0 : number];\r\n }\r\n\r\n while (parts[index].length < 3) {\r\n parts[index].unshift(0);\r\n }\r\n });\r\n\r\n if (parts[1] && opts === \"{}\") {\r\n return [...validateDate(parts[0]), select ?? opts].concat(...validateDate(parts[1]));\r\n }\r\n return parts.length === 0\r\n ? [0, 0, 0, opts]\r\n : [...validateDate(parts[0]), select ?? opts];\r\n}\r\n\r\n/**\r\n * Atualiza um valor de data em uma posição específica e retorna a data formatada.\r\n *\r\n * @param value - O novo valor a ser inserido na data\r\n * @param position - A posição do valor a ser atualizado (0 para dia, 1 para mês, 2 para ano)\r\n * @param date - O array da data atual, incluindo as opções\r\n * @returns A data atualizada e formatada como string\r\n */\r\nexport function handleSetValueDate(\r\n value: string,\r\n position: number | null,\r\n date: (number | string)[]\r\n): string {\r\n if (position !== null) {\r\n date[position] = parseInt(value);\r\n }\r\n\r\n let opts = date[3];\r\n let firstDate = date.slice(0, 3);\r\n firstDate = validateDate(firstDate as number[]);\r\n\r\n if (opts !== \"{}\") {\r\n return `${firstDate[0]}/${firstDate[1]}/${firstDate[2]}${opts}`;\r\n }\r\n\r\n let lastDate = isNaN(parseInt(date[date.length - 1] as string)) && position === null\r\n ? [0, 0, 0]\r\n : date.slice(-3);\r\n lastDate = validateDate(lastDate as number[]);\r\n return `${firstDate[0]}/${firstDate[1]}/${firstDate[2]}${opts}${lastDate[0]}/${lastDate[1]}/${lastDate[2]}`;\r\n}\r\n\r\n/**\r\n * Obtém os valores selecionados do autocomplete a partir da string de valor e dos dados disponíveis.\r\n *\r\n * @param value - String contendo os IDs dos itens selecionados, separados por ponto e vírgula.\r\n * @param options - Array de opções de filtro disponíveis para o autocomplete.\r\n * @param data - Array de objetos contendo os dados disponíveis para seleção.\r\n * @returns Array de objetos correspondentes aos IDs selecionados.\r\n */\r\nexport function handleGetValueAutocomplete(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[\"autocomplete\"]>,\r\n data: Array<{ id: number, label: string }>\r\n) {\r\n let values: any[] = value?.split(\";\").map(item => parseInt(item)) ?? [];\r\n return data.filter(item => values.includes(item.id));\r\n}\r\n\r\n/**\r\n * Converte os valores selecionados do autocomplete em uma string formatada para o filtro.\r\n *\r\n * @param value - Array de objetos selecionados no autocomplete.\r\n * @param select - String representando a opção de filtro selecionada.\r\n * @returns String formatada com os IDs dos itens selecionados e a opção de filtro.\r\n */\r\nexport function handleSetValueAutocomplete(\r\n value: Array<{ id: number, label: string }>,\r\n select: string,\r\n): string | null {\r\n let ids = value.map(item => item.id);\r\n return ids.length === 0 ? null : ids.join(\";\") + select;\r\n}\r\n\r\n/**\r\n * Retorna apenas o valor sem os operadores filtro tipo `Number`.\r\n *\r\n * @param value - O valor completo, incluindo a opção de filtro.\r\n * @param options - Um array de opções de filtro disponíveis.\r\n * @returns O valor sem as opções de filtro.\r\n */\r\nexport function handleGetValueNumber(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[\"text\"]>\r\n): string {\r\n let str = value;\r\n let exists = options\r\n .slice()\r\n .reverse()\r\n .find(item => str?.endsWith(item));\r\n if (exists && str !== undefined) {\r\n return handleNumber(str.slice(0, -exists.length), \"decimal\");\r\n }\r\n return handleNumber(str ?? \"\", \"decimal\");\r\n}","import React from \"react\";\r\nimport { handleGetValueText } from \"../function/handle\";\r\nimport { InputFilterCoreProps, InputFilterOptionsMap } from \"../types\";\r\n\r\n/**\r\n * Core - `Text`\r\n * Campo do filtro tipo texto\r\n */\r\nexport function Text<T extends keyof InputFilterOptionsMap>(props: InputFilterCoreProps<T>) {\r\n return (\r\n <input className=\"form-control input-filter-field\"\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-text\"}\r\n name={(props.name ?? \"input-filter\") + \"-text\"}\r\n placeholder={props.placeholder}\r\n value={handleGetValueText(props.value, props.options) ?? \"\"}\r\n onChange={event => props.onChange(event.target.value + props.select)}/>\r\n );\r\n}","import React from \"react\";\r\nimport { InputFilterCoreProps, InputFilterOptionsMap } from \"../types\";\r\nimport { handleGetValueDate, handleSetValueDate } from \"../function/handle\";\r\n\r\n/**\r\n * Core - `Date`\r\n * Campo do filtro tipo data\r\n */\r\nexport function Date<T extends keyof InputFilterOptionsMap>(props: InputFilterCoreProps<T>) {\r\n let date = handleGetValueDate(props.value, props.options, props.select);\r\n\r\n function handleChangeValue(value: string) {\r\n if (props.select === \"{}\" && value === \"0/0/0{}0/0/0\") {\r\n props.onChange(null);\r\n } else {\r\n if ((date[0] == 0 || isNaN(date[0] as number)) &&\r\n (date[1] == 0 || isNaN(date[1] as number)) &&\r\n (date[2] == 0 || isNaN(date[2] as number))) {\r\n props.onChange(null);\r\n } else {\r\n props.onChange(value);\r\n }\r\n }\r\n }\r\n\r\n return (\r\n <div className=\"d-flex w-100 flex-column\">\r\n <div className=\"w-100 d-flex gap-2\">\r\n {date.map((item, index) => {\r\n if (index <= 2) {\r\n return (\r\n <input className={\"form-control input-filter-field-date\" + (index == 2 ? \" year\" : \"\")}\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-\" + index}\r\n key={index}\r\n name={(props.name ?? \"input-filter\") + \"-\" + index}\r\n placeholder={props.placeholder}\r\n value={item === 0 ? \"\" : item}\r\n onChange={event => handleChangeValue(handleSetValueDate(event.target.value, index, date))}/>\r\n );\r\n }\r\n })}\r\n </div>\r\n {props.select === \"{}\" && date.length > 4\r\n && <div className=\"w-100 d-flex gap-2 mt-2\">\r\n {date.map((item, index) => {\r\n if (index >= 4) {\r\n return (\r\n <input className={\"form-control input-filter-field-date\" + (index == 6 ? \" year\" : \"\")}\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-\" + index}\r\n key={index}\r\n name={(props.name ?? \"input-filter\") + \"-\" + index}\r\n placeholder={props.placeholder}\r\n value={item === 0 ? \"\" : item}\r\n onChange={event => handleChangeValue(handleSetValueDate(event.target.value, index, date))}/>\r\n );\r\n }\r\n })}\r\n </div>}\r\n </div>\r\n );\r\n}","import React from \"react\";\r\nimport { ApiComponentProps, ApiFieldComponentProps } from \"./types\";\r\n\r\n/**\r\n * API - `InputLabel`\r\n *\r\n * Um componente utilizado como label em todos os componente de entrada de dados do pacote.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n */\r\nexport const InputLabel = ({ iconPrefix = \"bi bi-\", ...props }: ApiFieldComponentProps) => {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return props.label\r\n && <p className='form-label'>\r\n {props.icon && <i className={iconPrefix + props.icon + \" me-1\"}/>}\r\n {props.label}\r\n {props.required && <span className=\"text-danger\">*</span>}\r\n </p>;\r\n};\r\n\r\n/**\r\n * API - `InputFeedback`\r\n *\r\n * Um componente utilizado como container de feedback em todos os componente de entrada de dados do pacote.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n */\r\nexport const InputFeedback = ({ errors, name, ...props }: ApiFieldComponentProps & { errors?: any }) => {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return !props.mode || props.mode === \"Controlled\"\r\n ? <div data-name={name}\r\n id=\"j_feedback\"/>\r\n : <div className={(!errors[name ?? \"\"] ? \"\" : \"invalid-feedback is-invalid\")}\r\n data-name={name ?? \"\"}\r\n id=\"j_feedback\"\r\n style={{ display: errors[name ?? \"\"] ? \"block\" : \"none\" }}>{!errors[name ?? \"\"] ? \"\" : errors[name ?? \"\"].message}</div>;\r\n};\r\n\r\n/**\r\n * API - `InputProps`\r\n *\r\n * Retorna o objeto com as `Props` do core dos componentes de entrada de dados\r\n */\r\nexport function InputProps<T extends ApiComponentProps & ApiFieldComponentProps & { ref: any }>(props: T) {\r\n return {\r\n ref: props.ref,\r\n\r\n id: props.id,\r\n name: props.name,\r\n required: props.required,\r\n disabled: props.disabled,\r\n placeholder: props.placeholder,\r\n\r\n className: props.className,\r\n style: { width: \"100%\" },\r\n\r\n keyfilter: props.keyfilter,\r\n };\r\n}","import React from \"react\";\r\nimport { handleNumber } from \"../../utils\";\r\nimport { handleGetValueNumber } from \"../function/handle\";\r\nimport { InputFilterCoreProps, InputFilterOptionsMap } from \"../types\";\r\n\r\n/**\r\n * Core - `Number`\r\n * Campo do filtro tipo numero\r\n */\r\nexport function Number<T extends keyof InputFilterOptionsMap>(props: InputFilterCoreProps<T>) {\r\n return (\r\n <input className=\"form-control input-filter-field\"\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-number\"}\r\n name={(props.name ?? \"input-filter\") + \"-number\"}\r\n placeholder={props.placeholder}\r\n value={handleGetValueNumber(props.value, props.options ?? \"\")}\r\n onChange={event => props.onChange(handleNumber(event.target.value, \"decimal\") + props.select)}/>\r\n );\r\n}","import React from \"react\";\r\nimport { InputFilterCoreProps, InputFilterOptionsMap } from \"../types\";\r\nimport { AutoComplete as AutocompletePrimeReact } from \"primereact/autocomplete\";\r\nimport { handleGetValueAutocomplete, handleSetValueAutocomplete } from \"../function/handle\";\r\n\r\n/**\r\n * Core - `Autocomplete`\r\n * Campo do filtro tipo autocomplete\r\n */\r\nexport function Autocomplete<T extends keyof InputFilterOptionsMap>(props: InputFilterCoreProps<\"autocomplete\">) {\r\n const value = handleGetValueAutocomplete(props.value, props.options, props.data);\r\n\r\n return (\r\n <AutocompletePrimeReact multiple\r\n completeMethod={event => {\r\n let ids = value.map(item => item.id);\r\n props.onSearch(event.query, ids);\r\n }}\r\n appendTo=\"self\"\r\n className=\"w-100\"\r\n disabled={props.disabled}\r\n emptyMessage=\"Não encontramos dados.\"\r\n field=\"label\"\r\n id={(props.id ?? \"input-filter\") + \"-\" + \"autocomplete\"}\r\n inputClassName=\"form-control\"\r\n name={(props.name ?? \"input-filter\") + \"-\" + \"autocomplete\"}\r\n panelClassName=\"input-filter-autocomplete-panel\"\r\n placeholder={props.placeholder}\r\n required={props.required}\r\n scrollHeight={props.autocompleteScrollHeight}\r\n selectionLimit={props.autocompleteSelectLimit}\r\n suggestions={props.data}\r\n value={value}\r\n onChange={event => props.onChange(handleSetValueAutocomplete(event.value, props.select))}/>\r\n );\r\n}","import { Box } from \"../box\";\r\nimport { Text } from \"./core/text\";\r\nimport { Date } from \"./core/date\";\r\nimport { InputLabel } from \"../api\";\r\nimport { Number } from \"./core/number\";\r\nimport * as handle from \"./function/handle\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { Autocomplete } from \"./core/autocomplete\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { optionsDefault, optionsLabel } from \"./const\";\r\nimport { InputFilterOptionsMap, InputFilterProps } from \"./types\";\r\n\r\n/**\r\n * Componente - `InputFilter`\r\n *\r\n * Um componente utilizado para montar o objeto de pesquisa de dados.\r\n * Permite alterar o seu tipo através do type: `text`, `date`, `autocomplete`.\r\n */\r\nexport function InputFilter<T extends keyof InputFilterOptionsMap = \"text\">({ ...props }: InputFilterProps<T>) {\r\n\r\n const options: any[] = (props.options ?? optionsDefault).sort((a, b) => a.length - b.length);\r\n const selectOptions = optionsLabel.filter(item => options?.includes(item.options as any));\r\n const [select, setSelect] = useState<string>(handle.handleGetOption<T>(props.value, options));\r\n\r\n useEffect(() => {\r\n if (!props.type || props.type === \"text\") {\r\n let value = handle.handleGetValueText(props.value, options);\r\n if (value !== null) {\r\n props.onChange(value + select);\r\n } else {\r\n props.onChange(null);\r\n }\r\n } else if (props.type === \"date\") {\r\n let date = handle.handleGetValueDate(props.value, options, select);\r\n let setDate = handle.handleSetValueDate(\"0\", null, date);\r\n\r\n if (select === \"{}\" && setDate === \"0/0/0{}0/0/0\") {\r\n props.onChange(null);\r\n } else {\r\n if (date[0] == 0 && date[1] == 0 && date[2] == 0) {\r\n props.onChange(null);\r\n } else {\r\n props.onChange(setDate);\r\n }\r\n }\r\n } else if (props.type === \"autocomplete\") {\r\n let value = handle.handleGetValueAutocomplete(props.value, options, props.data);\r\n props.onChange(handle.handleSetValueAutocomplete(value, select));\r\n } else if (props.type === \"number\") {\r\n let value = handle.handleGetValueNumber(props.value, options);\r\n if (value !== \"\") {\r\n props.onChange(value + select);\r\n } else {\r\n props.onChange(null);\r\n }\r\n }\r\n }, [select]);\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Box {...props}\r\n className={classNames([props.className, \"input-filter-container\"])}>\r\n <InputLabel {...props}/>\r\n <div className=\"input-filter-content\"\r\n id={props.id ?? \"input-filter\"}>\r\n <select className=\"form-select input-filter-select\"\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-select\"}\r\n name={(props.name ?? \"input-filter\") + \"-select\"}\r\n value={select}\r\n onChange={event => setSelect(event.target.value)}>\r\n {selectOptions?.map(item => (\r\n <option key={item.options}\r\n value={item.options}>{item.label}</option>\r\n ))}\r\n </select>\r\n {(!props.type || props.type === \"text\")\r\n && <Text<\"text\"> {...props as InputFilterProps<\"text\">}\r\n options={options}\r\n select={select}/>}\r\n {props.type === \"date\"\r\n && <Date<\"date\"> {...props as InputFilterProps<\"date\">}\r\n options={options}\r\n select={select}/>}\r\n {props.type === \"autocomplete\"\r\n && <Autocomplete<\"autocomplete\"> {...props as InputFilterProps<\"autocomplete\">}\r\n options={options}\r\n select={select}/>}\r\n {props.type === \"number\"\r\n && <Number<\"number\"> {...props}\r\n options={options}\r\n select={select}/>}\r\n </div>\r\n </Box>\r\n );\r\n}"],"names":["getMetaContent","id","element","document","getElementById","url","replace","substr","slice","length","MES","name","handleNumber","valor","format","value","parseFloat","toLocaleString","style","currency","optionsDefault","optionsLabel","options","label","filterLegend","optsMatch","match","opts","charAt","option","isNaN","parseInt","filter","item","filterLegendData","legend","interval","split","date","handleLegend","dia","mes","ano","trim","undefined","filterLegendText","filterLegendAutocomplete","dto","word","ids","map","values","obj","includes","join","text","substring","Box","children","props","css","size","direction","justify","Array","isArray","align","attr","className","classNames","React","createElement","validateDate","day","month","year","isMonthValid","isYearValid","isDayValid","currentDate","Date","getDate","handleGetValueText","str","exists","reverse","find","endsWith","handleGetValueDate","select","optsRegex","parts","forEach","index","clean","number","unshift","concat","handleSetValueDate","position","firstDate","lastDate","handleGetValueAutocomplete","data","handleSetValueAutocomplete","handleGetValueNumber","Text","disabled","placeholder","onChange","event","target","handleChangeValue","key","InputLabel","iconPrefix","icon","required","Number","Autocomplete","AutocompletePrimeReact","multiple","completeMethod","onSearch","query","appendTo","emptyMessage","field","inputClassName","panelClassName","scrollHeight","autocompleteScrollHeight","selectionLimit","autocompleteSelectLimit","suggestions","InputFilter","sort","a","b","selectOptions","setSelect","useState","handle.handleGetOption","useEffect","type","handle.handleGetValueDate","setDate","handle.handleSetValueDate","handle.handleGetValueAutocomplete","handle.handleSetValueAutocomplete","handle.handleGetValueNumber","handle.handleGetValueText"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../src/utils/helper.ts","../../src/utils/const.ts","../../src/utils/handle.ts","../../src/inputfilter/const.ts","../../src/inputfilter/legend.ts","../../src/box/box.tsx","../../src/inputfilter/function/validate.ts","../../src/inputfilter/function/handle.ts","../../src/inputfilter/core/text.tsx","../../src/inputfilter/core/date.tsx","../../src/api/input.tsx","../../src/inputfilter/core/number.tsx","../../src/inputfilter/core/autocomplete.tsx","../../src/inputfilter/inputfilter.tsx"],"sourcesContent":["import $ from \"jquery\";\r\nimport axios from \"axios\";\r\nimport { message } from \"./message\";\r\nimport { IUtilsHelperResponse } from \"./types\";\r\n\r\n/**\r\n * Realiza a pesquisa do elemento html na DOM<br>\r\n * <meta id=\"???\" name=\"???\" content=\"your-url\">\r\n */\r\nexport function getMetaContent(id: string): string | null {\r\n let element: any = document.getElementById(id);\r\n let url: null | string = element === null ? null : (element.content).replace(\".br/\", \".br\");\r\n return url === null ? null : url.substr(-1) === \"/\" ? url.slice(0, url.length - 1) : url;\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do CEP na API pública \"https://viacep.com.br/ws/\"\r\n */\r\nexport async function getCep(value: string): Promise<IUtilsHelperResponse[\"gep_cep\"]> {\r\n let cep = value.length === 0 ? \"00000000\" : value.replace(\"-\", \"\");\r\n return await axios.get<IUtilsHelperResponse[\"gep_cep\"]>(\"https://viacep.com.br/ws/\" + cep + \"/json/\")\r\n .then(data => data.data);\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do elemento na árvore DOM\r\n */\r\nexport function getElementDOM(element?: string, preloadTimeOut?: number): Promise<null | JQuery<HTMLElement>> {\r\n return new Promise((resolve) => {\r\n // @ts-ignore\r\n let body = window.self === window.top ? $(\"body\") : $(window.frameElement).parents(\"body\");\r\n if (!element || element.length === 0) {\r\n resolve(body);\r\n }\r\n\r\n if (element === \"#\" || element === \".\") {\r\n resolve(null);\r\n }\r\n\r\n let elementFound = body.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n } else {\r\n setTimeout(() => {\r\n let iframe = body.find(\"iframe\").contents();\r\n if (iframe.length === 0) {\r\n resolve(null);\r\n }\r\n elementFound = iframe.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n }\r\n resolve(null);\r\n }, preloadTimeOut ?? 300);\r\n }\r\n });\r\n}\r\n\r\n/**\r\n * Permite à comunicação de origem cruzada entre objetos do Windows.<br>\r\n * Exemplo: Comunicação entre iframe e corpo principal\r\n */\r\nexport function windowMessageEvent(): void {\r\n window.addEventListener(\"message\", function (event: MessageEvent) {\r\n if (event.data?.type === \"message\") {\r\n let data = event.data;\r\n message<any>({ ...data.params });\r\n }\r\n });\r\n}","import { getMetaContent } from \"./helper\";\r\n\r\nexport const USER: string | null = getMetaContent(\"auth\");\r\nexport const BASE: string | null = getMetaContent(\"react-base\");\r\nexport const TOKEN: string | null = getMetaContent(\"csrf-token\");\r\n\r\nexport const MES: Array<{ id: number, name: string }> = [\r\n { id: 1, name: \"Janeiro\" },\r\n { id: 2, name: \"Fevereiro\" },\r\n { id: 3, name: \"Março\" },\r\n { id: 4, name: \"Abril\" },\r\n { id: 5, name: \"Maio\" },\r\n { id: 6, name: \"Junho\" },\r\n { id: 7, name: \"Julho\" },\r\n { id: 8, name: \"Agosto\" },\r\n { id: 9, name: \"Setembro\" },\r\n { id: 10, name: \"Outubro\" },\r\n { id: 11, name: \"Novembro\" },\r\n { id: 12, name: \"Dezembro\" },\r\n];\r\n\r\nexport const ESTADOS: Array<{ id: string, name: string }> = [\r\n { name: \"Acre\", id: \"AC\" },\r\n { name: \"Alagoas\", id: \"AL\" },\r\n { name: \"Amapá\", id: \"AP\" },\r\n { name: \"Amazonas\", id: \"AM\" },\r\n { name: \"Bahia\", id: \"BA\" },\r\n { name: \"Ceará\", id: \"CE\" },\r\n { name: \"Distrito Federal\", id: \"DF\" },\r\n { name: \"Espírito Santo\", id: \"ES\" },\r\n { name: \"Goiás\", id: \"GO\" },\r\n { name: \"Maranhão\", id: \"MA\" },\r\n { name: \"Mato Grosso\", id: \"MT\" },\r\n { name: \"Mato Grosso do Sul\", id: \"MS\" },\r\n { name: \"Minas Gerais\", id: \"MG\" },\r\n { name: \"Pará\", id: \"PA\" },\r\n { name: \"Paraíba\", id: \"PB\" },\r\n { name: \"Paraná\", id: \"PR\" },\r\n { name: \"Pernambuco\", id: \"PE\" },\r\n { name: \"Piauí\", id: \"PI\" },\r\n { name: \"Rio de Janeiro\", id: \"RJ\" },\r\n { name: \"Rio Grande do Norte\", id: \"RN\" },\r\n { name: \"Rio Grande do Sul\", id: \"RS\" },\r\n { name: \"Rondônia\", id: \"RO\" },\r\n { name: \"Roraima\", id: \"RR\" },\r\n { name: \"Santa Catarina\", id: \"SC\" },\r\n { name: \"São Paulo\", id: \"SP\" },\r\n { name: \"Sergipe\", id: \"SE\" },\r\n { name: \"Tocantins\", id: \"TO\" }\r\n];","/**\r\n * Formata um valor numérico para o formato decimal ou monetário.\r\n *\r\n * @param valor - O valor a ser formatado.\r\n * @param format - O formato desejado: \"money\" para monetário ou \"decimal\" para decimal.\r\n * @param decimals - Quantidade de casa decimal\r\n * @returns O valor formatado como string.\r\n */\r\nexport function handleNumber(\r\n valor: string,\r\n format: \"money\" | \"decimal\" = \"decimal\",\r\n decimals: number = 2\r\n): string {\r\n let value = valor.replace(/[^0-9.,]/g, \"\");\r\n if (format === \"decimal\") {\r\n if (value.length > 0) {\r\n return parseFloat(value.replace(\",\", \".\").replace(/(\\..*)\\./g, \"$1\")).toFixed(decimals);\r\n }\r\n return \"\";\r\n }\r\n return parseFloat(value.replace(\",\", \".\"))\r\n .toLocaleString(\"pt-BR\", {\r\n style: \"currency\",\r\n currency: \"BRL\"\r\n }).replace(\".\", \" \");\r\n}\r\n\r\n/**\r\n * Formata um valor de string para o formato de horas (HH:MM).\r\n *\r\n * @param valor - O valor a ser formatado.\r\n * @returns O valor formatado como string no formato de horas.\r\n */\r\nexport function handleHours(valor: string): string {\r\n let value = valor.replace(/[^\\d.]/g, \"\");\r\n const parts = value.split(\".\");\r\n\r\n if (parts.length > 1) {\r\n parts[1] = parts[1].substring(0, 2);\r\n }\r\n\r\n value = parts.join(\".\");\r\n if (value.length > 2) {\r\n value = value.substring(0, value.length - 2) + \":\" + value.substring(value.length - 2);\r\n }\r\n return value;\r\n}\r\n\r\n/**\r\n * Retonar a data do dia no formato (Y-m-d) para ser utilizado\r\n * em input do tipo Date.\r\n *\r\n * @return Data\r\n */\r\nexport function handleDateNow(): string {\r\n const hoje = new Date();\r\n const ano = hoje.getFullYear();\r\n const mes = String(hoje.getMonth() + 1).padStart(2, \"0\");\r\n const dia = String(hoje.getDate()).padStart(2, \"0\");\r\n return `${ano}-${mes}-${dia}`;\r\n}","import { InputFilterOptionsMap, InputFilterOptionsProps } from \"./types\";\r\n\r\nexport const optionsDefault: Array<InputFilterOptionsMap[\"text\"]> = [\"=\", \"!=\", \"%\", \"!%\"];\r\n\r\nexport const optionsLabel: Array<{\r\n options: InputFilterOptionsProps,\r\n label: string\r\n}> = [\r\n { options: \"=\", label: \"Igual a\" },\r\n { options: \"!=\", label: \"Diferente de\" },\r\n { options: \"<\", label: \"Menor do que\" },\r\n { options: \">\", label: \"Maior do que\" },\r\n { options: \"<=\", label: \"Menor ou igual a\" },\r\n { options: \">=\", label: \"Maior ou igual a\" },\r\n { options: \"{}\", label: \"Intervalo\" },\r\n { options: \"%\", label: \"Contém o que\" },\r\n { options: \"!%\", label: \"Não contém o que\" },\r\n];","import { MES } from \"../utils\";\r\nimport { optionsLabel } from \"./const\";\r\n\r\n/**\r\n * Retorna a legenda de acordo com operador na string\r\n * @param value - Valor a ser tratado\r\n */\r\nexport function filterLegend(value: string | undefined): string | null {\r\n if (!value) {\r\n return null;\r\n }\r\n let optsRegex = /(=|!=|<|>|<=|>=|%|!%|\\{\\})/;\r\n let optsMatch = value?.match(optsRegex);\r\n let opts = value.charAt(value.length - 1);\r\n let option = optsMatch?.[0];\r\n\r\n if (optsMatch?.[0] !== opts && isNaN(parseInt(opts)) && option?.slice(-1) !== opts) {\r\n option = optsMatch?.[0] + opts;\r\n }\r\n return optionsLabel.filter(item => item.options === option)[0]?.label ?? null;\r\n}\r\n\r\n/**\r\n * Realiza o tratamento das informações para retorna a legenda do tipo `Date`\r\n * @param value - Valor a ser tratado\r\n */\r\nexport function filterLegendData(value: string | undefined): string {\r\n let legend = filterLegend(value);\r\n if (legend === null) {\r\n return \"Não encontramos legenda definida.\";\r\n }\r\n\r\n let interval = value?.split(\"{}\");\r\n let date = value?.split(\"/\");\r\n\r\n const handleLegend = (date: any): string => {\r\n let dia = parseInt(date[0]);\r\n let mes = parseInt(date[1], 10);\r\n let ano = parseInt(date[2]);\r\n\r\n return `\r\n ${(dia > 0 ? `${mes == 0 ? \"dia\" : \"\"} ${dia}` : \"\")} \r\n ${mes > 0 ? `${dia > 0 ? \"de\" : \"\"} ${MES[mes - 1]?.name}` : \"\"} \r\n ${ano > 0 ? `${dia > 0 || mes > 0 ? \"de\" : \"\"} ${ano}` : \"\"}\r\n `.replace(/\\s+/g, \" \").trim();\r\n };\r\n let result = interval?.[1] === undefined\r\n ? handleLegend(date)\r\n : handleLegend(interval[0].split(\"/\")) + \" à \" + handleLegend(interval[1].split(\"/\"));\r\n return legend + \": \" + result;\r\n}\r\n\r\n/**\r\n * Realiza o tratamento das informações para retorna a legenda do tipo `Text`\r\n * @param value - Valor a ser tratado\r\n */\r\nexport function filterLegendText(value: string | undefined): string {\r\n let legend = filterLegend(value);\r\n if (legend === null) {\r\n return \"Não encontramos legenda definida.\";\r\n }\r\n return legend + \": \" + (value?.replace(/(=|!=|<|>|<=|>=|%|!%|\\{\\})/g, \"\") ?? \"\");\r\n}\r\n\r\n/**\r\n * Realiza o tratamento das informações para retorna a legando do tipo `autocomplete`\r\n * @param value - Valor a ser tratado\r\n * @param dto - Array de objeto para ser pesquisado a legenda\r\n * @param word - Limite de palavras para a legenda\r\n */\r\nexport function filterLegendAutocomplete(value: string | undefined, dto: any[] = [], word: number = 30): string {\r\n let legend = filterLegend(value);\r\n if (legend === null || dto.length === 0) {\r\n return \"Não encontramos legenda definida.\";\r\n }\r\n let ids: any[] = value?.split(\";\").map(item => parseInt(item)) ?? [];\r\n let values = dto\r\n .filter(obj => ids.includes(obj.id))\r\n .map(item => item.label).join(\", \");\r\n let text = values.substring(0, word);\r\n return legend + \": \" + text + (text.length !== values.length ? \"...\" : \"\");\r\n}","import { BoxProps } from \"./types\";\r\nimport React, { HTMLAttributes } from \"react\";\r\nimport { classNames } from \"primereact/utils\";\r\n\r\n/**\r\n * Componente - `Box`\r\n *\r\n * Um componente versátil que pode ser utilizado para criar seções ou caixas em uma página.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n *\r\n * Exemplo de uso:\r\n * ```tsx\r\n * <Box align=\"align-items-center\"\r\n * justify=\"justify-content-end\"\r\n * size=\"25\">\r\n * ...conteúdo HTML\r\n * </Box>\r\n * ```\r\n */\r\nexport const Box = ({ children, ...props }: BoxProps) => {\r\n const css = {\r\n size: `box-size-${(props.size ?? \"100\")}`,\r\n direction: `box-direction-${props.direction ?? \"row\"}`,\r\n justify: props.justify === undefined ? \"\" : Array.isArray(props.justify) ? props.justify?.join(\" \") : props.justify,\r\n align: props.align === undefined ? \"\" : Array.isArray(props.align) ? props.align?.join(\" \") : props.align\r\n };\r\n\r\n const attr: HTMLAttributes<\"div\"> & Omit<BoxProps, \"children\"> = {\r\n className: classNames([\r\n \"box\",\r\n props.className ?? \"\",\r\n css.size,\r\n css.direction,\r\n css.justify,\r\n css.align\r\n ]),\r\n style: props.css,\r\n id: props.id\r\n };\r\n\r\n return (\r\n <div {...attr as any}>{children}</div>\r\n );\r\n};","/**\r\n * Valida e ajusta uma data fornecida como um array de números.\r\n *\r\n * @param date - Um array de números representando [dia, mês, ano].\r\n * @returns Um array de números representando a data validada e ajustada.\r\n */\r\nexport function validateDate(date: number[]): number[] {\r\n const [day, month, year] = date;\r\n\r\n const isMonthValid = month >= 1 && month <= 12;\r\n const isYearValid = year > 0 && year < 99999;\r\n const isDayValid = day >= 1 && day <= 31;\r\n\r\n if (isYearValid && !isMonthValid && !isDayValid) {\r\n return [0, 0, year];\r\n }\r\n\r\n if (isYearValid && isMonthValid && !isDayValid) {\r\n return [0, month, year];\r\n }\r\n\r\n if (isYearValid && isMonthValid && isDayValid) {\r\n let currentDate = new Date(year, month, 0);\r\n if (currentDate.getDate() < day) {\r\n return [currentDate.getDate(), month, year];\r\n }\r\n return date;\r\n }\r\n\r\n if (!isYearValid && isMonthValid && !isDayValid) {\r\n return [0, month, 0];\r\n }\r\n\r\n if (!isYearValid && isMonthValid && isDayValid) {\r\n return [day, month, 0];\r\n }\r\n\r\n if (!isYearValid && !isMonthValid && isDayValid) {\r\n return [day, 0, 0];\r\n }\r\n\r\n if (isYearValid && !isMonthValid && isDayValid) {\r\n return [day, 0, year];\r\n }\r\n\r\n return [0, 0, 0];\r\n}","import { validateDate } from \"./validate\";\r\nimport { handleNumber } from \"../../utils\";\r\nimport { InputFilterOptionsMap } from \"../types\";\r\n\r\n/**\r\n * Obtém a opção de filtro correspondente ao valor fornecido.\r\n *\r\n * @param value - O valor para buscar uma opção correspondente.\r\n * @param options - Um array de opções de filtro disponíveis.\r\n * @returns A opção de filtro correspondente ou a primeira opção se nenhuma correspondência for encontrada.\r\n */\r\nexport function handleGetOption<T extends keyof InputFilterOptionsMap>(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[T]>\r\n): string {\r\n let exists = options.filter(option => value?.includes(option));\r\n return exists[exists.length - 1] ?? options[0];\r\n}\r\n\r\n/**\r\n * Retorna apenas o valor sem os operadores filtro tipo `Text`.\r\n *\r\n * @param value - O valor completo, incluindo a opção de filtro.\r\n * @param options - Um array de opções de filtro disponíveis.\r\n * @returns O valor sem as opções de filtro.\r\n */\r\nexport function handleGetValueText(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[\"text\"]>\r\n): string | null {\r\n let str = value;\r\n let exists = options\r\n .slice()\r\n .reverse()\r\n .find(item => str?.endsWith(item));\r\n if (exists && str !== undefined) {\r\n return str.slice(0, -exists.length);\r\n }\r\n return str ?? null;\r\n}\r\n\r\n/**\r\n * Retorna apenas o valor sem os operadores filtro tipo `Date`.\r\n *\r\n * @param value - O valor completo, incluindo a opção de filtro.\r\n * @param options - Um array de opções de filtro disponíveis.\r\n * @param select - Seletor do tipo de filtro\r\n * @returns O valor sem as opções de filtro.\r\n */\r\nexport function handleGetValueDate(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[\"date\"]>,\r\n select: null | string = null\r\n): Array<number | string> {\r\n let str = value;\r\n let optsRegex = /(=|!=|<|>|<=|>=|\\{\\})/;\r\n let optsMatch = value?.match(optsRegex);\r\n let opts = optsMatch ? optsMatch[0].trim() : options[0];\r\n\r\n let parts: any[] = [];\r\n let interval = str?.split(\"{}\") ?? [];\r\n\r\n interval.forEach((value, index) => {\r\n let clean = value.replace(optsRegex, \"\").trim();\r\n\r\n if (clean.includes(\"/\")) {\r\n parts[index] = clean.split(\"/\").map(item => parseInt(item));\r\n } else {\r\n let number = parseInt(clean);\r\n parts[index] = [isNaN(number) ? 0 : number];\r\n }\r\n\r\n while (parts[index].length < 3) {\r\n parts[index].unshift(0);\r\n }\r\n });\r\n\r\n if (parts[1] && opts === \"{}\") {\r\n return [...validateDate(parts[0]), select ?? opts].concat(...validateDate(parts[1]));\r\n }\r\n return parts.length === 0\r\n ? [0, 0, 0, opts]\r\n : [...validateDate(parts[0]), select ?? opts];\r\n}\r\n\r\n/**\r\n * Atualiza um valor de data em uma posição específica e retorna a data formatada.\r\n *\r\n * @param value - O novo valor a ser inserido na data\r\n * @param position - A posição do valor a ser atualizado (0 para dia, 1 para mês, 2 para ano)\r\n * @param date - O array da data atual, incluindo as opções\r\n * @returns A data atualizada e formatada como string\r\n */\r\nexport function handleSetValueDate(\r\n value: string,\r\n position: number | null,\r\n date: (number | string)[]\r\n): string {\r\n if (position !== null) {\r\n date[position] = parseInt(value);\r\n }\r\n\r\n let opts = date[3];\r\n let firstDate = date.slice(0, 3);\r\n firstDate = validateDate(firstDate as number[]);\r\n\r\n if (opts !== \"{}\") {\r\n return `${firstDate[0]}/${firstDate[1]}/${firstDate[2]}${opts}`;\r\n }\r\n\r\n let lastDate = isNaN(parseInt(date[date.length - 1] as string)) && position === null\r\n ? [0, 0, 0]\r\n : date.slice(-3);\r\n lastDate = validateDate(lastDate as number[]);\r\n return `${firstDate[0]}/${firstDate[1]}/${firstDate[2]}${opts}${lastDate[0]}/${lastDate[1]}/${lastDate[2]}`;\r\n}\r\n\r\n/**\r\n * Obtém os valores selecionados do autocomplete a partir da string de valor e dos dados disponíveis.\r\n *\r\n * @param value - String contendo os IDs dos itens selecionados, separados por ponto e vírgula.\r\n * @param options - Array de opções de filtro disponíveis para o autocomplete.\r\n * @param data - Array de objetos contendo os dados disponíveis para seleção.\r\n * @returns Array de objetos correspondentes aos IDs selecionados.\r\n */\r\nexport function handleGetValueAutocomplete(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[\"autocomplete\"]>,\r\n data: Array<{ id: number, label: string }>\r\n) {\r\n let values: any[] = value?.split(\";\").map(item => parseInt(item)) ?? [];\r\n return data.filter(item => values.includes(item.id));\r\n}\r\n\r\n/**\r\n * Converte os valores selecionados do autocomplete em uma string formatada para o filtro.\r\n *\r\n * @param value - Array de objetos selecionados no autocomplete.\r\n * @param select - String representando a opção de filtro selecionada.\r\n * @returns String formatada com os IDs dos itens selecionados e a opção de filtro.\r\n */\r\nexport function handleSetValueAutocomplete(\r\n value: Array<{ id: number, label: string }>,\r\n select: string,\r\n): string | null {\r\n let ids = value.map(item => item.id);\r\n return ids.length === 0 ? null : ids.join(\";\") + select;\r\n}\r\n\r\n/**\r\n * Retorna apenas o valor sem os operadores filtro tipo `Number`.\r\n *\r\n * @param value - O valor completo, incluindo a opção de filtro.\r\n * @param options - Um array de opções de filtro disponíveis.\r\n * @returns O valor sem as opções de filtro.\r\n */\r\nexport function handleGetValueNumber(\r\n value: string | undefined,\r\n options: Array<InputFilterOptionsMap[\"text\"]>\r\n): string {\r\n let str = value;\r\n let exists = options\r\n .slice()\r\n .reverse()\r\n .find(item => str?.endsWith(item));\r\n if (exists && str !== undefined) {\r\n return handleNumber(str.slice(0, -exists.length), \"decimal\", 0);\r\n }\r\n return handleNumber(str ?? \"\", \"decimal\", 0);\r\n}","import React from \"react\";\r\nimport { handleGetValueText } from \"../function/handle\";\r\nimport { InputFilterCoreProps, InputFilterOptionsMap } from \"../types\";\r\n\r\n/**\r\n * Core - `Text`\r\n * Campo do filtro tipo texto\r\n */\r\nexport function Text<T extends keyof InputFilterOptionsMap>(props: InputFilterCoreProps<T>) {\r\n return (\r\n <input className=\"form-control input-filter-field\"\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-text\"}\r\n name={(props.name ?? \"input-filter\") + \"-text\"}\r\n placeholder={props.placeholder}\r\n value={handleGetValueText(props.value, props.options) ?? \"\"}\r\n onChange={event => props.onChange(event.target.value + props.select)}/>\r\n );\r\n}","import React from \"react\";\r\nimport { InputFilterCoreProps, InputFilterOptionsMap } from \"../types\";\r\nimport { handleGetValueDate, handleSetValueDate } from \"../function/handle\";\r\n\r\n/**\r\n * Core - `Date`\r\n * Campo do filtro tipo data\r\n */\r\nexport function Date<T extends keyof InputFilterOptionsMap>(props: InputFilterCoreProps<T>) {\r\n let date = handleGetValueDate(props.value, props.options, props.select);\r\n\r\n function handleChangeValue(value: string) {\r\n if (props.select === \"{}\" && value === \"0/0/0{}0/0/0\") {\r\n props.onChange(null);\r\n } else {\r\n if ((date[0] == 0 || isNaN(date[0] as number)) &&\r\n (date[1] == 0 || isNaN(date[1] as number)) &&\r\n (date[2] == 0 || isNaN(date[2] as number))) {\r\n props.onChange(null);\r\n } else {\r\n props.onChange(value);\r\n }\r\n }\r\n }\r\n\r\n return (\r\n <div className=\"d-flex w-100 flex-column\">\r\n <div className=\"w-100 d-flex gap-2\">\r\n {date.map((item, index) => {\r\n if (index <= 2) {\r\n return (\r\n <input className={\"form-control input-filter-field-date\" + (index == 2 ? \" year\" : \"\")}\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-\" + index}\r\n key={index}\r\n name={(props.name ?? \"input-filter\") + \"-\" + index}\r\n placeholder={props.placeholder}\r\n value={item === 0 ? \"\" : item}\r\n onChange={event => handleChangeValue(handleSetValueDate(event.target.value, index, date))}/>\r\n );\r\n }\r\n })}\r\n </div>\r\n {props.select === \"{}\" && date.length > 4\r\n && <div className=\"w-100 d-flex gap-2 mt-2\">\r\n {date.map((item, index) => {\r\n if (index >= 4) {\r\n return (\r\n <input className={\"form-control input-filter-field-date\" + (index == 6 ? \" year\" : \"\")}\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-\" + index}\r\n key={index}\r\n name={(props.name ?? \"input-filter\") + \"-\" + index}\r\n placeholder={props.placeholder}\r\n value={item === 0 ? \"\" : item}\r\n onChange={event => handleChangeValue(handleSetValueDate(event.target.value, index, date))}/>\r\n );\r\n }\r\n })}\r\n </div>}\r\n </div>\r\n );\r\n}","import React from \"react\";\r\nimport { ApiComponentProps, ApiFieldComponentProps } from \"./types\";\r\n\r\n/**\r\n * API - `InputLabel`\r\n *\r\n * Um componente utilizado como label em todos os componente de entrada de dados do pacote.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n */\r\nexport const InputLabel = ({ iconPrefix = \"bi bi-\", ...props }: ApiFieldComponentProps) => {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return props.label\r\n && <p className='form-label'>\r\n {props.icon && <i className={iconPrefix + props.icon + \" me-1\"}/>}\r\n {props.label}\r\n {props.required && <span className=\"text-danger\">*</span>}\r\n </p>;\r\n};\r\n\r\n/**\r\n * API - `InputFeedback`\r\n *\r\n * Um componente utilizado como container de feedback em todos os componente de entrada de dados do pacote.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n */\r\nexport const InputFeedback = ({ errors, name, ...props }: ApiFieldComponentProps & { errors?: any }) => {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return !props.mode || props.mode === \"Controlled\"\r\n ? <div data-name={name}\r\n id=\"j_feedback\"/>\r\n : <div className={(!errors[name ?? \"\"] ? \"\" : \"invalid-feedback is-invalid\")}\r\n data-name={name ?? \"\"}\r\n id=\"j_feedback\"\r\n style={{ display: errors[name ?? \"\"] ? \"block\" : \"none\" }}>{!errors[name ?? \"\"] ? \"\" : errors[name ?? \"\"].message}</div>;\r\n};\r\n\r\n/**\r\n * API - `InputProps`\r\n *\r\n * Retorna o objeto com as `Props` do core dos componentes de entrada de dados\r\n */\r\nexport function InputProps<T extends ApiComponentProps & ApiFieldComponentProps & { ref: any }>(props: T) {\r\n return {\r\n ref: props.ref,\r\n\r\n id: props.id,\r\n name: props.name,\r\n required: props.required,\r\n disabled: props.disabled,\r\n placeholder: props.placeholder,\r\n\r\n className: props.className,\r\n style: { width: \"100%\" },\r\n\r\n keyfilter: props.keyfilter,\r\n };\r\n}","import React from \"react\";\r\nimport { handleNumber } from \"../../utils\";\r\nimport { handleGetValueNumber } from \"../function/handle\";\r\nimport { InputFilterCoreProps, InputFilterOptionsMap } from \"../types\";\r\n\r\n/**\r\n * Core - `Number`\r\n * Campo do filtro tipo numero\r\n */\r\nexport function Number<T extends keyof InputFilterOptionsMap>(props: InputFilterCoreProps<T>) {\r\n return (\r\n <input className=\"form-control input-filter-field\"\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-number\"}\r\n name={(props.name ?? \"input-filter\") + \"-number\"}\r\n placeholder={props.placeholder}\r\n value={handleGetValueNumber(props.value, props.options ?? \"\")}\r\n onChange={event => props.onChange(handleNumber(event.target.value, \"decimal\", 0) + props.select)}/>\r\n );\r\n}","import React from \"react\";\r\nimport { InputFilterCoreProps, InputFilterOptionsMap } from \"../types\";\r\nimport { AutoComplete as AutocompletePrimeReact } from \"primereact/autocomplete\";\r\nimport { handleGetValueAutocomplete, handleSetValueAutocomplete } from \"../function/handle\";\r\n\r\n/**\r\n * Core - `Autocomplete`\r\n * Campo do filtro tipo autocomplete\r\n */\r\nexport function Autocomplete<T extends keyof InputFilterOptionsMap>(props: InputFilterCoreProps<\"autocomplete\">) {\r\n const value = handleGetValueAutocomplete(props.value, props.options, props.data);\r\n\r\n return (\r\n <AutocompletePrimeReact multiple\r\n completeMethod={event => {\r\n let ids = value.map(item => item.id);\r\n props.onSearch(event.query, ids);\r\n }}\r\n appendTo=\"self\"\r\n className=\"w-100\"\r\n disabled={props.disabled}\r\n emptyMessage=\"Não encontramos dados.\"\r\n field=\"label\"\r\n id={(props.id ?? \"input-filter\") + \"-\" + \"autocomplete\"}\r\n inputClassName=\"form-control\"\r\n name={(props.name ?? \"input-filter\") + \"-\" + \"autocomplete\"}\r\n panelClassName=\"input-filter-autocomplete-panel\"\r\n placeholder={props.placeholder}\r\n required={props.required}\r\n scrollHeight={props.autocompleteScrollHeight}\r\n selectionLimit={props.autocompleteSelectLimit}\r\n suggestions={props.data}\r\n value={value}\r\n onChange={event => props.onChange(handleSetValueAutocomplete(event.value, props.select))}/>\r\n );\r\n}","import { Box } from \"../box\";\r\nimport { Text } from \"./core/text\";\r\nimport { Date } from \"./core/date\";\r\nimport { InputLabel } from \"../api\";\r\nimport { Number } from \"./core/number\";\r\nimport * as handle from \"./function/handle\";\r\nimport { classNames } from \"primereact/utils\";\r\nimport { Autocomplete } from \"./core/autocomplete\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { optionsDefault, optionsLabel } from \"./const\";\r\nimport { InputFilterOptionsMap, InputFilterProps } from \"./types\";\r\n\r\n/**\r\n * Componente - `InputFilter`\r\n *\r\n * Um componente utilizado para montar o objeto de pesquisa de dados.\r\n * Permite alterar o seu tipo através do type: `text`, `date`, `autocomplete`.\r\n */\r\nexport function InputFilter<T extends keyof InputFilterOptionsMap = \"text\">({ ...props }: InputFilterProps<T>) {\r\n\r\n const options: any[] = (props.options ?? optionsDefault).sort((a, b) => a.length - b.length);\r\n const selectOptions = optionsLabel.filter(item => options?.includes(item.options as any));\r\n const [select, setSelect] = useState<string>(handle.handleGetOption<T>(props.value, options));\r\n\r\n useEffect(() => {\r\n if (!props.type || props.type === \"text\") {\r\n let value = handle.handleGetValueText(props.value, options);\r\n if (value !== null) {\r\n props.onChange(value + select);\r\n } else {\r\n props.onChange(null);\r\n }\r\n } else if (props.type === \"date\") {\r\n let date = handle.handleGetValueDate(props.value, options, select);\r\n let setDate = handle.handleSetValueDate(\"0\", null, date);\r\n\r\n if (select === \"{}\" && setDate === \"0/0/0{}0/0/0\") {\r\n props.onChange(null);\r\n } else {\r\n if (date[0] == 0 && date[1] == 0 && date[2] == 0) {\r\n props.onChange(null);\r\n } else {\r\n props.onChange(setDate);\r\n }\r\n }\r\n } else if (props.type === \"autocomplete\") {\r\n let value = handle.handleGetValueAutocomplete(props.value, options, props.data);\r\n props.onChange(handle.handleSetValueAutocomplete(value, select));\r\n } else if (props.type === \"number\") {\r\n let value = handle.handleGetValueNumber(props.value, options);\r\n if (value !== \"\") {\r\n props.onChange(value + select);\r\n } else {\r\n props.onChange(null);\r\n }\r\n }\r\n }, [select]);\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Box {...props}\r\n className={classNames([props.className, \"input-filter-container\"])}>\r\n <InputLabel {...props}/>\r\n <div className=\"input-filter-content\"\r\n id={props.id ?? \"input-filter\"}>\r\n <select className=\"form-select input-filter-select\"\r\n disabled={props.disabled}\r\n id={(props.id ?? \"input-filter\") + \"-select\"}\r\n name={(props.name ?? \"input-filter\") + \"-select\"}\r\n value={select}\r\n onChange={event => setSelect(event.target.value)}>\r\n {selectOptions?.map(item => (\r\n <option key={item.options}\r\n value={item.options}>{item.label}</option>\r\n ))}\r\n </select>\r\n {(!props.type || props.type === \"text\")\r\n && <Text<\"text\"> {...props as InputFilterProps<\"text\">}\r\n options={options}\r\n select={select}/>}\r\n {props.type === \"date\"\r\n && <Date<\"date\"> {...props as InputFilterProps<\"date\">}\r\n options={options}\r\n select={select}/>}\r\n {props.type === \"autocomplete\"\r\n && <Autocomplete<\"autocomplete\"> {...props as InputFilterProps<\"autocomplete\">}\r\n options={options}\r\n select={select}/>}\r\n {props.type === \"number\"\r\n && <Number<\"number\"> {...props}\r\n options={options}\r\n select={select}/>}\r\n </div>\r\n </Box>\r\n );\r\n}"],"names":["getMetaContent","id","element","document","getElementById","url","replace","substr","slice","length","MES","name","handleNumber","valor","format","decimals","value","parseFloat","toFixed","toLocaleString","style","currency","optionsDefault","optionsLabel","options","label","filterLegend","optsMatch","match","opts","charAt","option","isNaN","parseInt","filter","item","filterLegendData","legend","interval","split","date","handleLegend","dia","mes","ano","trim","undefined","filterLegendText","filterLegendAutocomplete","dto","word","ids","map","values","obj","includes","join","text","substring","Box","children","props","css","size","direction","justify","Array","isArray","align","attr","className","classNames","React","createElement","validateDate","day","month","year","isMonthValid","isYearValid","isDayValid","currentDate","Date","getDate","handleGetValueText","str","exists","reverse","find","endsWith","handleGetValueDate","select","optsRegex","parts","forEach","index","clean","number","unshift","concat","handleSetValueDate","position","firstDate","lastDate","handleGetValueAutocomplete","data","handleSetValueAutocomplete","handleGetValueNumber","Text","disabled","placeholder","onChange","event","target","handleChangeValue","key","InputLabel","iconPrefix","icon","required","Number","Autocomplete","AutocompletePrimeReact","multiple","completeMethod","onSearch","query","appendTo","emptyMessage","field","inputClassName","panelClassName","scrollHeight","autocompleteScrollHeight","selectionLimit","autocompleteSelectLimit","suggestions","InputFilter","sort","a","b","selectOptions","setSelect","useState","handle.handleGetOption","useEffect","type","handle.handleGetValueDate","setDate","handle.handleSetValueDate","handle.handleGetValueAutocomplete","handle.handleSetValueAutocomplete","handle.handleGetValueNumber","handle.handleGetValueText"],"mappings":"+NASM,SAAUA,EAAeC,GAC3B,IAAIC,EAAeC,SAASC,eAAeH,GACvCI,EAAiC,OAAZH,EAAmB,KAAQA,EAAe,QAAEI,QAAQ,OAAQ,OACrF,OAAe,OAARD,EAAe,KAA0B,MAAnBA,EAAIE,QAAO,GAAcF,EAAIG,MAAM,EAAGH,EAAII,OAAS,GAAKJ,CACzF,CCXmCL,EAAe,QACfA,EAAe,cACdA,EAAe,cAE5C,MAAMU,EAA2C,CACpD,CAAET,GAAI,EAAGU,KAAM,WACf,CAAEV,GAAI,EAAGU,KAAM,aACf,CAAEV,GAAI,EAAGU,KAAM,SACf,CAAEV,GAAI,EAAGU,KAAM,SACf,CAAEV,GAAI,EAAGU,KAAM,QACf,CAAEV,GAAI,EAAGU,KAAM,SACf,CAAEV,GAAI,EAAGU,KAAM,SACf,CAAEV,GAAI,EAAGU,KAAM,UACf,CAAEV,GAAI,EAAGU,KAAM,YACf,CAAEV,GAAI,GAAIU,KAAM,WAChB,CAAEV,GAAI,GAAIU,KAAM,YAChB,CAAEV,GAAI,GAAIU,KAAM,aCVd,SAAUC,EACZC,EACAC,EAA8B,UAC9BC,EAAmB,GAEnB,IAAIC,EAAQH,EAAMP,QAAQ,YAAa,IACvC,MAAe,YAAXQ,EACIE,EAAMP,OAAS,EACRQ,WAAWD,EAAMV,QAAQ,IAAK,KAAKA,QAAQ,YAAa,OAAOY,QAAQH,GAE3E,GAEJE,WAAWD,EAAMV,QAAQ,IAAK,MAChCa,eAAe,QAAS,CACrBC,MAAO,WACPC,SAAU,QACXf,QAAQ,IAAK,IACxB,CCvBO,MAAMgB,EAAuD,CAAC,IAAK,KAAM,IAAK,MAExEC,EAGR,CACD,CAAEC,QAAS,IAAKC,MAAO,WACvB,CAAED,QAAS,KAAMC,MAAO,gBACxB,CAAED,QAAS,IAAKC,MAAO,gBACvB,CAAED,QAAS,IAAKC,MAAO,gBACvB,CAAED,QAAS,KAAMC,MAAO,oBACxB,CAAED,QAAS,KAAMC,MAAO,oBACxB,CAAED,QAAS,KAAMC,MAAO,aACxB,CAAED,QAAS,IAAKC,MAAO,gBACvB,CAAED,QAAS,KAAMC,MAAO,qBCTtB,SAAUC,EAAaV,GACzB,IAAKA,EACD,OAAO,KAEX,IACIW,EAAYX,GAAOY,MADP,8BAEZC,EAAOb,EAAMc,OAAOd,EAAMP,OAAS,GACnCsB,EAASJ,IAAY,GAKzB,OAHIA,IAAY,KAAOE,GAAQG,MAAMC,SAASJ,KAAUE,GAAQvB,OAAQ,KAAMqB,IAC1EE,EAASJ,IAAY,GAAKE,GAEvBN,EAAaW,QAAOC,GAAQA,EAAKX,UAAYO,IAAQ,IAAIN,OAAS,IAC7E,CAMM,SAAUW,EAAiBpB,GAC7B,IAAIqB,EAASX,EAAaV,GAC1B,GAAe,OAAXqB,EACA,MAAO,oCAGX,IAAIC,EAAWtB,GAAOuB,MAAM,MACxBC,EAAOxB,GAAOuB,MAAM,KAExB,MAAME,EAAgBD,IAClB,IAAIE,EAAMT,SAASO,EAAK,IACpBG,EAAMV,SAASO,EAAK,GAAI,IACxBI,EAAMX,SAASO,EAAK,IAExB,MAAO,iBACAE,EAAM,EAAI,GAAU,GAAPC,EAAW,MAAQ,MAAMD,IAAQ,oBAC/CC,EAAM,EAAI,GAAGD,EAAM,EAAI,KAAO,MAAMhC,EAAIiC,EAAM,IAAIhC,OAAS,oBAC3DiC,EAAM,EAAI,GAAGF,EAAM,GAAKC,EAAM,EAAI,KAAO,MAAMC,IAAQ,eAC3DtC,QAAQ,OAAQ,KAAKuC,MAAM,EAKjC,OAAOR,EAAS,WAHeS,IAAlBR,IAAW,GAClBG,EAAaD,GACbC,EAAaH,EAAS,GAAGC,MAAM,MAAQ,MAAQE,EAAaH,EAAS,GAAGC,MAAM,MAExF,CAMM,SAAUQ,EAAiB/B,GAC7B,IAAIqB,EAASX,EAAaV,GAC1B,OAAe,OAAXqB,EACO,oCAEJA,EAAS,MAAQrB,GAAOV,QAAQ,8BAA+B,KAAO,GACjF,CAQM,SAAU0C,EAAyBhC,EAA2BiC,EAAa,GAAIC,EAAe,IAChG,IAAIb,EAASX,EAAaV,GAC1B,GAAe,OAAXqB,GAAkC,IAAfY,EAAIxC,OACvB,MAAO,oCAEX,IAAI0C,EAAanC,GAAOuB,MAAM,KAAKa,KAAIjB,GAAQF,SAASE,MAAU,GAC9DkB,EAASJ,EACRf,QAAOoB,GAAOH,EAAII,SAASD,EAAIrD,MAC/BmD,KAAIjB,GAAQA,EAAKV,QAAO+B,KAAK,MAC9BC,EAAOJ,EAAOK,UAAU,EAAGR,GAC/B,OAAOb,EAAS,KAAOoB,GAAQA,EAAKhD,SAAW4C,EAAO5C,OAAS,MAAQ,GAC3E,CC9DO,MAAMkD,EAAM,EAAGC,cAAaC,MAC/B,MAAMC,EAAM,CACRC,KAAM,YAAaF,EAAME,MAAQ,QACjCC,UAAW,iBAAiBH,EAAMG,WAAa,QAC/CC,aAA2BnB,IAAlBe,EAAMI,QAAwB,GAAKC,MAAMC,QAAQN,EAAMI,SAAWJ,EAAMI,SAAST,KAAK,KAAOK,EAAMI,QAC5GG,WAAuBtB,IAAhBe,EAAMO,MAAsB,GAAKF,MAAMC,QAAQN,EAAMO,OAASP,EAAMO,OAAOZ,KAAK,KAAOK,EAAMO,OAGlGC,EAA2D,CAC7DC,UAAWC,EAAW,CAClB,MACAV,EAAMS,WAAa,GACnBR,EAAIC,KACJD,EAAIE,UACJF,EAAIG,QACJH,EAAIM,QAERhD,MAAOyC,EAAMC,IACb7D,GAAI4D,EAAM5D,IAGd,OACIuE,EAASC,cAAA,MAAA,IAAAJ,GAAcT,EAAe,ECnCxC,SAAUc,EAAalC,GACzB,MAAOmC,EAAKC,EAAOC,GAAQrC,EAErBsC,EAAeF,GAAS,GAAKA,GAAS,GACtCG,EAAcF,EAAO,GAAKA,EAAO,MACjCG,EAAaL,GAAO,GAAKA,GAAO,GAEtC,GAAII,IAAgBD,IAAiBE,EACjC,MAAO,CAAC,EAAG,EAAGH,GAGlB,GAAIE,GAAeD,IAAiBE,EAChC,MAAO,CAAC,EAAGJ,EAAOC,GAGtB,GAAIE,GAAeD,GAAgBE,EAAY,CAC3C,IAAIC,EAAc,IAAIC,KAAKL,EAAMD,EAAO,GACxC,OAAIK,EAAYE,UAAYR,EACjB,CAACM,EAAYE,UAAWP,EAAOC,GAEnCrC,EAGX,OAAKuC,IAAeD,GAAiBE,GAIhCD,GAAeD,GAAgBE,EACzB,CAACL,EAAKC,EAAO,GAGnBG,GAAgBD,IAAgBE,EAIjCD,IAAgBD,GAAgBE,EACzB,CAACL,EAAK,EAAGE,GAGb,CAAC,EAAG,EAAG,GAPH,CAACF,EAAK,EAAG,GART,CAAC,EAAGC,EAAO,EAgB1B,CCpBgB,SAAAQ,EACZpE,EACAQ,GAEA,IAAI6D,EAAMrE,EACNsE,EAAS9D,EACRhB,QACA+E,UACAC,MAAKrD,GAAQkD,GAAKI,SAAStD,KAChC,OAAImD,QAAkBxC,IAARuC,EACHA,EAAI7E,MAAM,GAAI8E,EAAO7E,QAEzB4E,GAAO,IAClB,CAUM,SAAUK,EACZ1E,EACAQ,EACAmE,EAAwB,MAExB,IAAIN,EAAMrE,EACN4E,EAAY,wBACZjE,EAAYX,GAAOY,MAAMgE,GACzB/D,EAAOF,EAAYA,EAAU,GAAGkB,OAASrB,EAAQ,GAEjDqE,EAAe,GAkBnB,OAjBeR,GAAK9C,MAAM,OAAS,IAE1BuD,SAAQ,CAAC9E,EAAO+E,KACrB,IAAIC,EAAQhF,EAAMV,QAAQsF,EAAW,IAAI/C,OAEzC,GAAImD,EAAMzC,SAAS,KACfsC,EAAME,GAASC,EAAMzD,MAAM,KAAKa,KAAIjB,GAAQF,SAASE,SAClD,CACH,IAAI8D,EAAShE,SAAS+D,GACtBH,EAAME,GAAS,CAAC/D,MAAMiE,GAAU,EAAIA,GAGxC,KAAOJ,EAAME,GAAOtF,OAAS,GACzBoF,EAAME,GAAOG,QAAQ,MAIzBL,EAAM,IAAe,OAAThE,EACL,IAAI6C,EAAamB,EAAM,IAAKF,GAAU9D,GAAMsE,UAAUzB,EAAamB,EAAM,KAE5D,IAAjBA,EAAMpF,OACP,CAAC,EAAG,EAAG,EAAGoB,GACV,IAAI6C,EAAamB,EAAM,IAAKF,GAAU9D,EAChD,UAUgBuE,EACZpF,EACAqF,EACA7D,GAEiB,OAAb6D,IACA7D,EAAK6D,GAAYpE,SAASjB,IAG9B,IAAIa,EAAOW,EAAK,GACZ8D,EAAY9D,EAAKhC,MAAM,EAAG,GAG9B,GAFA8F,EAAY5B,EAAa4B,GAEZ,OAATzE,EACA,MAAO,GAAGyE,EAAU,MAAMA,EAAU,MAAMA,EAAU,KAAKzE,IAG7D,IAAI0E,EAAWvE,MAAMC,SAASO,EAAKA,EAAK/B,OAAS,MAA+B,OAAb4F,EAC7D,CAAC,EAAG,EAAG,GACP7D,EAAKhC,UAEX,OADA+F,EAAW7B,EAAa6B,GACjB,GAAGD,EAAU,MAAMA,EAAU,MAAMA,EAAU,KAAKzE,IAAO0E,EAAS,MAAMA,EAAS,MAAMA,EAAS,IAC3G,UAUgBC,EACZxF,EACAQ,EACAiF,GAEA,IAAIpD,EAAgBrC,GAAOuB,MAAM,KAAKa,KAAIjB,GAAQF,SAASE,MAAU,GACrE,OAAOsE,EAAKvE,QAAOC,GAAQkB,EAAOE,SAASpB,EAAKlC,KACpD,CASgB,SAAAyG,EACZ1F,EACA2E,GAEA,IAAIxC,EAAMnC,EAAMoC,KAAIjB,GAAQA,EAAKlC,KACjC,OAAsB,IAAfkD,EAAI1C,OAAe,KAAO0C,EAAIK,KAAK,KAAOmC,CACrD,CASgB,SAAAgB,EACZ3F,EACAQ,GAEA,IAAI6D,EAAMrE,EACNsE,EAAS9D,EACRhB,QACA+E,UACAC,MAAKrD,GAAQkD,GAAKI,SAAStD,KAChC,OACWvB,EADP0E,QAAkBxC,IAARuC,EACUA,EAAI7E,MAAM,GAAI8E,EAAO7E,QAEzB4E,GAAO,GAF2B,UAAW,EAGrE,CCjKM,SAAUuB,EAA4C/C,GACxD,OACIW,EAAOC,cAAA,QAAA,CAAAH,UAAU,kCACVuC,SAAUhD,EAAMgD,SAChB5G,IAAK4D,EAAM5D,IAAM,gBAAkB,QACnCU,MAAOkD,EAAMlD,MAAQ,gBAAkB,QACvCmG,YAAajD,EAAMiD,YACnB9F,MAAOoE,EAAmBvB,EAAM7C,MAAO6C,EAAMrC,UAAY,GACzDuF,SAAUC,GAASnD,EAAMkD,SAASC,EAAMC,OAAOjG,MAAQ6C,EAAM8B,SAE5E,CCVM,SAAUT,EAA4CrB,GACxD,IAAIrB,EAAOkD,EAAmB7B,EAAM7C,MAAO6C,EAAMrC,QAASqC,EAAM8B,QAEhE,SAASuB,EAAkBlG,GACF,OAAjB6C,EAAM8B,QAA6B,iBAAV3E,EACzB6C,EAAMkD,SAAS,MAEC,GAAXvE,EAAK,KAAWR,MAAMQ,EAAK,KAChB,GAAXA,EAAK,KAAWR,MAAMQ,EAAK,KAChB,GAAXA,EAAK,KAAWR,MAAMQ,EAAK,IAG5BqB,EAAMkD,SAAS/F,GAFf6C,EAAMkD,SAAS,MAO3B,OACIvC,EAAAC,cAAA,MAAA,CAAKH,UAAU,4BACXE,EAAAC,cAAA,MAAA,CAAKH,UAAU,sBACV9B,EAAKY,KAAI,CAACjB,EAAM4D,KACb,GAAIA,GAAS,EACT,OACIvB,yBAAOF,UAAW,wCAAmD,GAATyB,EAAa,QAAU,IAC5Ec,SAAUhD,EAAMgD,SAChB5G,IAAK4D,EAAM5D,IAAM,gBAAkB,IAAM8F,EACzCoB,IAAKpB,EACLpF,MAAOkD,EAAMlD,MAAQ,gBAAkB,IAAMoF,EAC7Ce,YAAajD,EAAMiD,YACnB9F,MAAgB,IAATmB,EAAa,GAAKA,EACzB4E,SAAUC,GAASE,EAAkBd,EAAmBY,EAAMC,OAAOjG,MAAO+E,EAAOvD,UAKxF,OAAjBqB,EAAM8B,QAAmBnD,EAAK/B,OAAS,GACjC+D,EAAAC,cAAA,MAAA,CAAKH,UAAU,2BACb9B,EAAKY,KAAI,CAACjB,EAAM4D,KACb,GAAIA,GAAS,EACT,OACIvB,yBAAOF,UAAW,wCAAmD,GAATyB,EAAa,QAAU,IAC5Ec,SAAUhD,EAAMgD,SAChB5G,IAAK4D,EAAM5D,IAAM,gBAAkB,IAAM8F,EACzCoB,IAAKpB,EACLpF,MAAOkD,EAAMlD,MAAQ,gBAAkB,IAAMoF,EAC7Ce,YAAajD,EAAMiD,YACnB9F,MAAgB,IAATmB,EAAa,GAAKA,EACzB4E,SAAUC,GAASE,EAAkBd,EAAmBY,EAAMC,OAAOjG,MAAO+E,EAAOvD,UAO1H,CCrDO,MAAM4E,EAAa,EAAGC,aAAa,YAAaxD,KAM5CA,EAAMpC,OACN+C,EAAGC,cAAA,IAAA,CAAAH,UAAU,cACXT,EAAMyD,MAAQ9C,EAAAC,cAAA,IAAA,CAAGH,UAAW+C,EAAaxD,EAAMyD,KAAO,UACtDzD,EAAMpC,MACNoC,EAAM0D,UAAY/C,EAAAC,cAAA,OAAA,CAAMH,UAAU,eAAsB,MCV/D,SAAUkD,EAA8C3D,GAC1D,OACIW,EAAOC,cAAA,QAAA,CAAAH,UAAU,kCACVuC,SAAUhD,EAAMgD,SAChB5G,IAAK4D,EAAM5D,IAAM,gBAAkB,UACnCU,MAAOkD,EAAMlD,MAAQ,gBAAkB,UACvCmG,YAAajD,EAAMiD,YACnB9F,MAAO2F,EAAqB9C,EAAM7C,MAAO6C,EAAMrC,SAAW,IAC1DuF,SAAUC,GAASnD,EAAMkD,SAASnG,EAAaoG,EAAMC,OAAOjG,MAAO,UAAW,GAAK6C,EAAM8B,SAExG,CCVM,SAAU8B,EAAoD5D,GAChE,MAAM7C,EAAQwF,EAA2B3C,EAAM7C,MAAO6C,EAAMrC,QAASqC,EAAM4C,MAE3E,OACIjC,EAACC,cAAAiD,EAAuB,CAAAC,YACAC,eAAgBZ,IACZ,IAAI7D,EAAMnC,EAAMoC,KAAIjB,GAAQA,EAAKlC,KACjC4D,EAAMgE,SAASb,EAAMc,MAAO3E,EAAI,EAEpC4E,SAAS,OACTzD,UAAU,QACVuC,SAAUhD,EAAMgD,SAChBmB,aAAa,yBACbC,MAAM,QACNhI,IAAK4D,EAAM5D,IAAM,gBAAb,gBACJiI,eAAe,eACfvH,MAAOkD,EAAMlD,MAAQ,gBAAf,gBACNwH,eAAe,kCACfrB,YAAajD,EAAMiD,YACnBS,SAAU1D,EAAM0D,SAChBa,aAAcvE,EAAMwE,yBACpBC,eAAgBzE,EAAM0E,wBACtBC,YAAa3E,EAAM4C,KACnBzF,MAAOA,EACP+F,SAAUC,GAASnD,EAAMkD,SAASL,EAA2BM,EAAMhG,MAAO6C,EAAM8B,UAEhH,UCjBgB8C,MAAiE5E,IAE7E,MAAMrC,GAAkBqC,EAAMrC,SAAWF,GAAgBoH,MAAK,CAACC,EAAGC,IAAMD,EAAElI,OAASmI,EAAEnI,SAC/EoI,EAAgBtH,EAAaW,QAAOC,GAAQX,GAAS+B,SAASpB,EAAKX,YAClEmE,EAAQmD,GAAaC,ENXhB,SACZ/H,EACAQ,GAEA,IAAI8D,EAAS9D,EAAQU,QAAOH,GAAUf,GAAOuC,SAASxB,KACtD,OAAOuD,EAAOA,EAAO7E,OAAS,IAAMe,EAAQ,EAChD,CMKiDwH,CAA0BnF,EAAM7C,MAAOQ,IAyCpF,OAvCAyH,GAAU,KACN,GAAKpF,EAAMqF,MAAuB,SAAfrF,EAAMqF,MAOlB,GAAmB,SAAfrF,EAAMqF,KAAiB,CAC9B,IAAI1G,EAAO2G,EAA0BtF,EAAM7C,MAAOQ,EAASmE,GACvDyD,EAAUC,EAA0B,IAAK,KAAM7G,GAEpC,OAAXmD,GAA+B,iBAAZyD,GAGJ,GAAX5G,EAAK,IAAsB,GAAXA,EAAK,IAAsB,GAAXA,EAAK,GAFzCqB,EAAMkD,SAAS,MAKXlD,EAAMkD,SAASqC,QAGpB,GAAmB,iBAAfvF,EAAMqF,KAAyB,CACtC,IAAIlI,EAAQsI,EAAkCzF,EAAM7C,MAAOQ,EAASqC,EAAM4C,MAC1E5C,EAAMkD,SAASwC,EAAkCvI,EAAO2E,SACrD,GAAmB,WAAf9B,EAAMqF,KAAmB,CAChC,IAAIlI,EAAQwI,EAA4B3F,EAAM7C,MAAOQ,GACvC,KAAVR,EACA6C,EAAMkD,SAAS/F,EAAQ2E,GAEvB9B,EAAMkD,SAAS,WA5BmB,CACtC,IAAI/F,EAAQyI,EAA0B5F,EAAM7C,MAAOQ,GACrC,OAAVR,EACA6C,EAAMkD,SAAS/F,EAAQ2E,GAEvB9B,EAAMkD,SAAS,SA0BxB,CAACpB,IAQAnB,EAACC,cAAAd,EAAQ,IAAAE,EACJS,UAAWC,EAAW,CAACV,EAAMS,UAAW,4BACzCE,EAACC,cAAA2C,EAAe,IAAAvD,IAChBW,EAAKC,cAAA,MAAA,CAAAH,UAAU,uBACVrE,GAAI4D,EAAM5D,IAAM,gBACjBuE,EAAAC,cAAA,SAAA,CAAQH,UAAU,kCACVuC,SAAUhD,EAAMgD,SAChB5G,IAAK4D,EAAM5D,IAAM,gBAAkB,UACnCU,MAAOkD,EAAMlD,MAAQ,gBAAkB,UACvCK,MAAO2E,EACPoB,SAAUC,GAAS8B,EAAU9B,EAAMC,OAAOjG,QAC7C6H,GAAezF,KAAIjB,GAChBqC,EAAAC,cAAA,SAAA,CAAQ0C,IAAKhF,EAAKX,QACVR,MAAOmB,EAAKX,SAAUW,EAAKV,YAGxCoC,EAAMqF,MAAuB,SAAfrF,EAAMqF,OAChB1E,EAACC,cAAAmC,EAAiB,IAAA/C,EACJrC,QAASA,EACTmE,OAAQA,IACb,SAAf9B,EAAMqF,MACA1E,EAACC,cAAAS,EAAiB,IAAArB,EACJrC,QAASA,EACTmE,OAAQA,IACb,iBAAf9B,EAAMqF,MACA1E,EAACC,cAAAgD,EAAiC,IAAA5D,EACJrC,QAASA,EACTmE,OAAQA,IAC7B,WAAf9B,EAAMqF,MACA1E,EAAAC,cAAC+C,EAAM,IAAe3D,EACJrC,QAASA,EACTmE,OAAQA,KAIjD"}
|
package/loading/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import React, { CSSProperties } from 'react';
|
|
2
|
-
|
|
1
|
+
import React, { CSSProperties } from 'react';
|
|
2
|
+
|
|
3
3
|
/**
|
|
4
4
|
* Realiza o mapeamento dos valores da propriedades css `align-items`
|
|
5
5
|
*/
|
|
@@ -111,12 +111,12 @@ type ApiColorProps =
|
|
|
111
111
|
"success" |
|
|
112
112
|
"danger" |
|
|
113
113
|
"light" |
|
|
114
|
-
"gray" |
|
|
115
114
|
"warning" |
|
|
115
|
+
"gray" |
|
|
116
116
|
"info" |
|
|
117
117
|
"dark" |
|
|
118
|
-
"white";
|
|
119
|
-
|
|
118
|
+
"white";
|
|
119
|
+
|
|
120
120
|
interface LoadingProps extends Omit<ApiComponentProps, "size" | "id"> {
|
|
121
121
|
/**
|
|
122
122
|
* Define se o loading vai se exibido
|
|
@@ -159,14 +159,14 @@ interface LoadingProps extends Omit<ApiComponentProps, "size" | "id"> {
|
|
|
159
159
|
* Personaliza a propriedade zindex do componente de loading
|
|
160
160
|
*/
|
|
161
161
|
zindex?: number
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
/**
|
|
165
|
-
* Componente - `Loading`
|
|
166
|
-
*
|
|
167
|
-
* Um componente versátil que pode ser utilizado para exibir informação de carregando.
|
|
168
|
-
* Permite personalizar o estilo e o conteúdo através de propriedades.
|
|
169
|
-
*/
|
|
170
|
-
declare const Loading: ({ opacity, ...props }: LoadingProps) => false | React.JSX.Element;
|
|
171
|
-
|
|
172
|
-
export { Loading };
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Componente - `Loading`
|
|
166
|
+
*
|
|
167
|
+
* Um componente versátil que pode ser utilizado para exibir informação de carregando.
|
|
168
|
+
* Permite personalizar o estilo e o conteúdo através de propriedades.
|
|
169
|
+
*/
|
|
170
|
+
declare const Loading: ({ opacity, ...props }: LoadingProps) => false | React.JSX.Element;
|
|
171
|
+
|
|
172
|
+
export { Loading };
|
package/loading/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
{
|
|
2
|
-
"main": "./index.cjs.js",
|
|
3
|
-
"module": "./index.esm.js",
|
|
4
|
-
"types": "./index.d.ts"
|
|
5
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"main": "./index.cjs.js",
|
|
3
|
+
"module": "./index.esm.js",
|
|
4
|
+
"types": "./index.d.ts"
|
|
5
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var e=require("react"),i=require("primereact/utils"),a=require("primereact/dialog"),s=require("primereact/button");const n=({children:a,...s})=>{const n={size:`box-size-${s.size??"100"}`,direction:`box-direction-${s.direction??"row"}`,justify:void 0===s.justify?"":Array.isArray(s.justify)?s.justify?.join(" "):s.justify,align:void 0===s.align?"":Array.isArray(s.align)?s.align?.join(" "):s.align},o={className:i.classNames(["box",s.className??"",n.size,n.direction,n.justify,n.align]),style:s.css,id:s.id};return e.createElement("div",{...o},a)};function o(i){const a=void 0!==i.icon?e.createElement("h5",{className:"fw-semibold"},e.createElement("i",{className:"me-1 "+(i.iconPrefix??"bi bi-")+i.icon}),i.header):i.header;return{appendTo:"self",visible:i.visible,onHide(){i.onVisible(!i.visible)},modal:void 0===i.background||i.background,dismissableMask:void 0===i.backdrop||!i.backdrop,maximizable:i.maximizable,draggable:i.draggable,closable:void 0===i.closable||i.closable,baseZIndex:i.zIndex??1e3,position:i.position,header:a,footer:i.footer,showHeader:!(!1===i.header)}}function l(i){let s=i.sizes?"small"===i.sizes?"300px":"medium"===i.sizes?"500px":"large"===i.sizes?"800px":"80%":void 0;const[n,l]=e.useState(i.maximized??!1);return e.createElement(a.Dialog,{style:n?{}:{width:s},...o(i),breakpoints:{"768px":"80%","576px":"90%"},className:i.className,maximized:n,onMaximize:()=>l(!n)},i.children)}const r=({...i})=>e.createElement(s.Button,{badge:i.badge,badgeClassName:i.badgeClassName,className:i.className,disabled:i.disabled,icon:void 0!==i.icon?`${i.iconPrefix??"bi bi-"}${i.icon??""} ${i.label?"me-1":""}`:void 0,iconPos:i.iconPos,id:i.id,label:i.label,link:i.isLink,loading:i.isLoading,pt:{loadingIcon:{className:"me-1"}},ref:i.ref,severity:i.color,size:i.size,style:i.css,type:i.type,onClick:i.onClick});function c({confirm:i=!0,cancel:a=!0,...s}){return e.createElement(l,{className:"message",header:s.title??"Confirmação",icon:s.modalIcon??"cone-striped",iconPrefix:s.modalIconPrefix??"bi bi-",sizes:"medium",visible:s.visible,onVisible:s.onVisible},e.createElement(n,{direction:"column",size:"100"},e.createElement("div",{dangerouslySetInnerHTML:{__html:s.message??""}}),e.createElement(n,{className:"gap-2",justify:"justify-content-"+(s.modalOptionsPosition??"end"),size:"100"},i&&e.createElement(r,{color:"success",icon:"check2-circle",isLoading:s.isLoading??!1,label:s.confirmLabel??"Confirmar",onClick:()=>{s.onConfirm&&s.onConfirm()}}),a&&e.createElement(r,{color:"danger",icon:"slash-circle",label:s.cancelarLabel??"Cancelar",onClick:()=>{s.onCancel?s.onCancel():s.onVisible(!1)}}))))}function t(i){return e.createElement(e.Fragment,null,i.type&&"modal"!==i.type?null:e.createElement(c,{...i}))}t.displayName="Message",exports.Message=t;
|
|
2
|
+
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../src/box/box.tsx","../../src/modal/core/core.tsx","../../src/modal/modal.tsx","../../src/button/button.tsx","../../src/message/core/modal.tsx","../../src/message/message.tsx"],"sourcesContent":["import { BoxProps } from \"./types\";\r\nimport React, { HTMLAttributes } from \"react\";\r\nimport { classNames } from \"primereact/utils\";\r\n\r\n/**\r\n * Componente - `Box`\r\n *\r\n * Um componente versátil que pode ser utilizado para criar seções ou caixas em uma página.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n *\r\n * Exemplo de uso:\r\n * ```tsx\r\n * <Box align=\"align-items-center\"\r\n * justify=\"justify-content-end\"\r\n * size=\"25\">\r\n * ...conteúdo HTML\r\n * </Box>\r\n * ```\r\n */\r\nexport const Box = ({ children, ...props }: BoxProps) => {\r\n const css = {\r\n size: `box-size-${(props.size ?? \"100\")}`,\r\n direction: `box-direction-${props.direction ?? \"row\"}`,\r\n justify: props.justify === undefined ? \"\" : Array.isArray(props.justify) ? props.justify?.join(\" \") : props.justify,\r\n align: props.align === undefined ? \"\" : Array.isArray(props.align) ? props.align?.join(\" \") : props.align\r\n };\r\n\r\n const attr: HTMLAttributes<\"div\"> & Omit<BoxProps, \"children\"> = {\r\n className: classNames([\r\n \"box\",\r\n props.className ?? \"\",\r\n css.size,\r\n css.direction,\r\n css.justify,\r\n css.align\r\n ]),\r\n style: props.css,\r\n id: props.id\r\n };\r\n\r\n return (\r\n <div {...attr as any}>{children}</div>\r\n );\r\n};","import React from \"react\";\r\nimport { ModalProps } from \"../types\";\r\nimport { DialogProps } from \"primereact/dialog\";\r\n\r\n/**\r\n * `Core`\r\n * Define as propriedades base para funcionamento da Modal\r\n */\r\nexport function modalCore(\r\n props: ModalProps\r\n): DialogProps {\r\n const title = props.icon !== undefined\r\n ? <h5 className=\"fw-semibold\">\r\n <i className={\"me-1 \" + (props.iconPrefix ?? \"bi bi-\") + props.icon}/>{props.header}</h5>\r\n : props.header;\r\n\r\n return {\r\n appendTo: \"self\",\r\n visible: props.visible,\r\n onHide() {\r\n props.onVisible(!props.visible);\r\n },\r\n modal: props.background === undefined || props.background,\r\n dismissableMask: props.backdrop === undefined || !props.backdrop,\r\n\r\n maximizable: props.maximizable,\r\n draggable: props.draggable,\r\n closable: props.closable === undefined || props.closable,\r\n baseZIndex: props.zIndex ?? 1000,\r\n\r\n position: props.position,\r\n header: title,\r\n footer: props.footer,\r\n showHeader: !(props.header === false),\r\n };\r\n}","import React, { useState } from \"react\";\r\nimport { ModalProps } from \"./types\";\r\nimport { modalCore } from \"./core/core\";\r\nimport { Dialog } from \"primereact/dialog\";\r\n\r\n/**\r\n * Componente - `Modal`\r\n *\r\n * Um componente versátil que é utilizado exibir dados em forma de janela suspensa.\r\n */\r\nexport function Modal(props: ModalProps) {\r\n let sizes = !props.sizes ? undefined\r\n : props.sizes === \"small\" ? \"300px\"\r\n : props.sizes === \"medium\" ? \"500px\"\r\n : props.sizes === \"large\" ? \"800px\" : \"80%\";\r\n const [maximized, setMaximized] = useState(props.maximized ?? false);\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Dialog style={!maximized ? { width: sizes } : {}}\r\n {...modalCore(props)}\r\n breakpoints={{\r\n \"768px\": \"80%\",\r\n \"576px\": \"90%\",\r\n }}\r\n className={props.className}\r\n maximized={maximized}\r\n onMaximize={() => setMaximized(!maximized)}>\r\n {props.children}\r\n </Dialog>\r\n );\r\n}","import React from \"react\";\r\nimport { ButtonProps } from \"./types\";\r\nimport { Button as ButtonPrimeReact } from \"primereact/button\";\r\n\r\n/**\r\n * Componente - `Button`\r\n *\r\n * Um componente versátil que pode ser utilizado para realizar ações por exemplo em formulários de dados.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n */\r\nexport const Button = ({ ...props }: ButtonProps) => {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <ButtonPrimeReact badge={props.badge}\r\n badgeClassName={props.badgeClassName}\r\n className={props.className}\r\n disabled={props.disabled}\r\n icon={props.icon !== undefined ? `${props.iconPrefix ?? \"bi bi-\"}${props.icon ?? \"\"} ${props.label ? \"me-1\" : \"\"}` : undefined}\r\n iconPos={props.iconPos}\r\n id={props.id}\r\n label={props.label}\r\n link={props.isLink}\r\n loading={props.isLoading}\r\n pt={{ loadingIcon: { className: \"me-1\" } }}\r\n ref={props.ref}\r\n severity={props.color}\r\n size={props.size}\r\n style={props.css}\r\n type={props.type}\r\n onClick={props.onClick}/>\r\n );\r\n};","import React from \"react\";\r\nimport { Box } from \"../../box\";\r\nimport { Modal } from \"../../modal\";\r\nimport { Button } from \"../../button\";\r\nimport { MessageProps } from \"../types\";\r\nimport { JustifyContentProps } from \"../../api/types\";\r\n\r\n/**\r\n * Core - `ModalMessage`\r\n * Define o componente do tipo modal\r\n */\r\nexport function ModalMessage({ confirm = true, cancel = true, ...props }: MessageProps<\"modal\">) {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Modal className=\"message\"\r\n header={props.title ?? \"Confirmação\"}\r\n icon={props.modalIcon ?? \"cone-striped\"}\r\n iconPrefix={props.modalIconPrefix ?? \"bi bi-\"}\r\n sizes=\"medium\"\r\n visible={props.visible}\r\n onVisible={props.onVisible}>\r\n <Box direction=\"column\"\r\n size=\"100\">\r\n <div dangerouslySetInnerHTML={{ __html: props.message ?? \"\" }}/>\r\n <Box className=\"gap-2\"\r\n justify={\"justify-content-\" + (props.modalOptionsPosition ?? \"end\") as JustifyContentProps}\r\n size=\"100\">\r\n {confirm && <Button color=\"success\"\r\n icon=\"check2-circle\"\r\n isLoading={props.isLoading ?? false}\r\n label={props.confirmLabel ?? \"Confirmar\"}\r\n onClick={() => {\r\n if (props.onConfirm) {\r\n props.onConfirm();\r\n }\r\n }}/>}\r\n {cancel && <Button color=\"danger\"\r\n icon=\"slash-circle\"\r\n label={props.cancelarLabel ?? \"Cancelar\"}\r\n onClick={() => {\r\n if (props.onCancel) {\r\n props.onCancel();\r\n } else {\r\n props.onVisible(false);\r\n }\r\n }}/>}\r\n </Box>\r\n </Box>\r\n </Modal>\r\n );\r\n}","import React from \"react\";\r\nimport { ModalMessage } from \"./core/modal\";\r\nimport { MessageModeProps, MessageProps } from \"./types\";\r\n\r\n/**\r\n * Componente - `Message`\r\n *\r\n * Um componente versátil que é utilizado emitir messagens no sistema.\r\n */\r\nexport function Message<T extends MessageModeProps = \"modal\">(props: MessageProps<T> & { type?: T }) {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <>\r\n {!props.type || props.type === \"modal\"\r\n ? <ModalMessage {...props}/>\r\n : null}\r\n </>\r\n );\r\n}\r\n\r\nMessage.displayName = \"Message\";"],"names":["Box","children","props","css","size","direction","justify","undefined","Array","isArray","join","align","attr","className","classNames","style","id","React","createElement","modalCore","title","icon","iconPrefix","header","appendTo","visible","onHide","onVisible","modal","background","dismissableMask","backdrop","maximizable","draggable","closable","baseZIndex","zIndex","position","footer","showHeader","Modal","sizes","maximized","setMaximized","useState","Dialog","width","breakpoints","onMaximize","Button","ButtonPrimeReact","badge","badgeClassName","disabled","label","iconPos","link","isLink","loading","isLoading","pt","loadingIcon","ref","severity","color","type","onClick","ModalMessage","confirm","cancel","modalIcon","modalIconPrefix","dangerouslySetInnerHTML","__html","message","modalOptionsPosition","confirmLabel","onConfirm","cancelarLabel","onCancel","Message","Fragment","displayName"],"mappings":"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"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Define o tipo de message
|
|
5
|
+
*/
|
|
6
|
+
type MessageModeProps = "modal";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Define as propriedades padrão do component
|
|
10
|
+
*/
|
|
11
|
+
interface MessageBaseProps {
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Determina se messagem está visivel
|
|
15
|
+
*/
|
|
16
|
+
visible: boolean
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Define o conteúdo da message
|
|
20
|
+
*/
|
|
21
|
+
message: string
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Define se componente está no estado de carregando
|
|
25
|
+
*/
|
|
26
|
+
isLoading?: boolean
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Define o titulo da message
|
|
30
|
+
*/
|
|
31
|
+
title?: string
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Define se vai ter a opção de confirmação
|
|
35
|
+
*/
|
|
36
|
+
confirm?: boolean
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Define se vai ter a opção de cancelar
|
|
40
|
+
*/
|
|
41
|
+
cancel?: boolean
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Define o label do botão de confirmação
|
|
45
|
+
*/
|
|
46
|
+
confirmLabel?: string
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Define o label do botão de cancelar
|
|
50
|
+
*/
|
|
51
|
+
cancelarLabel?: string
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Define o metodo de confirmação
|
|
55
|
+
*/
|
|
56
|
+
onConfirm?: () => void
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Define o metodo no cancelamento
|
|
60
|
+
*/
|
|
61
|
+
onCancel?: () => void
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Metodo responsável por atualizar state do message
|
|
65
|
+
*/
|
|
66
|
+
onVisible(value: boolean): void;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Define as propriedades do component do tipo MODAL
|
|
71
|
+
*/
|
|
72
|
+
interface MessageModalProps {
|
|
73
|
+
/**
|
|
74
|
+
* Define o icone do campo
|
|
75
|
+
*/
|
|
76
|
+
modalIcon?: string
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Define o prefixo dos icones do pacote
|
|
80
|
+
*/
|
|
81
|
+
modalIconPrefix?: "bi bi-" | "pi pi-"
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Define o posicionamento das opções da message
|
|
85
|
+
*/
|
|
86
|
+
modalOptionsPosition?: "center" | "start" | "end"
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Define a propriedade para ser exportada
|
|
91
|
+
*/
|
|
92
|
+
type MessageProps<T extends MessageModeProps> = T extends "modal"
|
|
93
|
+
? MessageBaseProps & MessageModalProps
|
|
94
|
+
: MessageBaseProps;
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Componente - `Message`
|
|
98
|
+
*
|
|
99
|
+
* Um componente versátil que é utilizado emitir messagens no sistema.
|
|
100
|
+
*/
|
|
101
|
+
declare function Message<T extends MessageModeProps = "modal">(props: MessageProps<T> & {
|
|
102
|
+
type?: T;
|
|
103
|
+
}): React.JSX.Element;
|
|
104
|
+
declare namespace Message {
|
|
105
|
+
var displayName: string;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export { Message };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import e,{useState as i}from"react";import{classNames as a}from"primereact/utils";import{Dialog as o}from"primereact/dialog";import{Button as n}from"primereact/button";const s=({children:i,...o})=>{const n={size:`box-size-${o.size??"100"}`,direction:`box-direction-${o.direction??"row"}`,justify:void 0===o.justify?"":Array.isArray(o.justify)?o.justify?.join(" "):o.justify,align:void 0===o.align?"":Array.isArray(o.align)?o.align?.join(" "):o.align},s={className:a(["box",o.className??"",n.size,n.direction,n.justify,n.align]),style:o.css,id:o.id};return e.createElement("div",{...s},i)};function l(i){const a=void 0!==i.icon?e.createElement("h5",{className:"fw-semibold"},e.createElement("i",{className:"me-1 "+(i.iconPrefix??"bi bi-")+i.icon}),i.header):i.header;return{appendTo:"self",visible:i.visible,onHide(){i.onVisible(!i.visible)},modal:void 0===i.background||i.background,dismissableMask:void 0===i.backdrop||!i.backdrop,maximizable:i.maximizable,draggable:i.draggable,closable:void 0===i.closable||i.closable,baseZIndex:i.zIndex??1e3,position:i.position,header:a,footer:i.footer,showHeader:!(!1===i.header)}}function r(a){let n=a.sizes?"small"===a.sizes?"300px":"medium"===a.sizes?"500px":"large"===a.sizes?"800px":"80%":void 0;const[s,r]=i(a.maximized??!1);return e.createElement(o,{style:s?{}:{width:n},...l(a),breakpoints:{"768px":"80%","576px":"90%"},className:a.className,maximized:s,onMaximize:()=>r(!s)},a.children)}const c=({...i})=>e.createElement(n,{badge:i.badge,badgeClassName:i.badgeClassName,className:i.className,disabled:i.disabled,icon:void 0!==i.icon?`${i.iconPrefix??"bi bi-"}${i.icon??""} ${i.label?"me-1":""}`:void 0,iconPos:i.iconPos,id:i.id,label:i.label,link:i.isLink,loading:i.isLoading,pt:{loadingIcon:{className:"me-1"}},ref:i.ref,severity:i.color,size:i.size,style:i.css,type:i.type,onClick:i.onClick});function t({confirm:i=!0,cancel:a=!0,...o}){return e.createElement(r,{className:"message",header:o.title??"Confirmação",icon:o.modalIcon??"cone-striped",iconPrefix:o.modalIconPrefix??"bi bi-",sizes:"medium",visible:o.visible,onVisible:o.onVisible},e.createElement(s,{direction:"column",size:"100"},e.createElement("div",{dangerouslySetInnerHTML:{__html:o.message??""}}),e.createElement(s,{className:"gap-2",justify:"justify-content-"+(o.modalOptionsPosition??"end"),size:"100"},i&&e.createElement(c,{color:"success",icon:"check2-circle",isLoading:o.isLoading??!1,label:o.confirmLabel??"Confirmar",onClick:()=>{o.onConfirm&&o.onConfirm()}}),a&&e.createElement(c,{color:"danger",icon:"slash-circle",label:o.cancelarLabel??"Cancelar",onClick:()=>{o.onCancel?o.onCancel():o.onVisible(!1)}}))))}function m(i){return e.createElement(e.Fragment,null,i.type&&"modal"!==i.type?null:e.createElement(t,{...i}))}m.displayName="Message";export{m as Message};
|
|
2
|
+
//# sourceMappingURL=index.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../src/box/box.tsx","../../src/modal/core/core.tsx","../../src/modal/modal.tsx","../../src/button/button.tsx","../../src/message/core/modal.tsx","../../src/message/message.tsx"],"sourcesContent":["import { BoxProps } from \"./types\";\r\nimport React, { HTMLAttributes } from \"react\";\r\nimport { classNames } from \"primereact/utils\";\r\n\r\n/**\r\n * Componente - `Box`\r\n *\r\n * Um componente versátil que pode ser utilizado para criar seções ou caixas em uma página.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n *\r\n * Exemplo de uso:\r\n * ```tsx\r\n * <Box align=\"align-items-center\"\r\n * justify=\"justify-content-end\"\r\n * size=\"25\">\r\n * ...conteúdo HTML\r\n * </Box>\r\n * ```\r\n */\r\nexport const Box = ({ children, ...props }: BoxProps) => {\r\n const css = {\r\n size: `box-size-${(props.size ?? \"100\")}`,\r\n direction: `box-direction-${props.direction ?? \"row\"}`,\r\n justify: props.justify === undefined ? \"\" : Array.isArray(props.justify) ? props.justify?.join(\" \") : props.justify,\r\n align: props.align === undefined ? \"\" : Array.isArray(props.align) ? props.align?.join(\" \") : props.align\r\n };\r\n\r\n const attr: HTMLAttributes<\"div\"> & Omit<BoxProps, \"children\"> = {\r\n className: classNames([\r\n \"box\",\r\n props.className ?? \"\",\r\n css.size,\r\n css.direction,\r\n css.justify,\r\n css.align\r\n ]),\r\n style: props.css,\r\n id: props.id\r\n };\r\n\r\n return (\r\n <div {...attr as any}>{children}</div>\r\n );\r\n};","import React from \"react\";\r\nimport { ModalProps } from \"../types\";\r\nimport { DialogProps } from \"primereact/dialog\";\r\n\r\n/**\r\n * `Core`\r\n * Define as propriedades base para funcionamento da Modal\r\n */\r\nexport function modalCore(\r\n props: ModalProps\r\n): DialogProps {\r\n const title = props.icon !== undefined\r\n ? <h5 className=\"fw-semibold\">\r\n <i className={\"me-1 \" + (props.iconPrefix ?? \"bi bi-\") + props.icon}/>{props.header}</h5>\r\n : props.header;\r\n\r\n return {\r\n appendTo: \"self\",\r\n visible: props.visible,\r\n onHide() {\r\n props.onVisible(!props.visible);\r\n },\r\n modal: props.background === undefined || props.background,\r\n dismissableMask: props.backdrop === undefined || !props.backdrop,\r\n\r\n maximizable: props.maximizable,\r\n draggable: props.draggable,\r\n closable: props.closable === undefined || props.closable,\r\n baseZIndex: props.zIndex ?? 1000,\r\n\r\n position: props.position,\r\n header: title,\r\n footer: props.footer,\r\n showHeader: !(props.header === false),\r\n };\r\n}","import React, { useState } from \"react\";\r\nimport { ModalProps } from \"./types\";\r\nimport { modalCore } from \"./core/core\";\r\nimport { Dialog } from \"primereact/dialog\";\r\n\r\n/**\r\n * Componente - `Modal`\r\n *\r\n * Um componente versátil que é utilizado exibir dados em forma de janela suspensa.\r\n */\r\nexport function Modal(props: ModalProps) {\r\n let sizes = !props.sizes ? undefined\r\n : props.sizes === \"small\" ? \"300px\"\r\n : props.sizes === \"medium\" ? \"500px\"\r\n : props.sizes === \"large\" ? \"800px\" : \"80%\";\r\n const [maximized, setMaximized] = useState(props.maximized ?? false);\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Dialog style={!maximized ? { width: sizes } : {}}\r\n {...modalCore(props)}\r\n breakpoints={{\r\n \"768px\": \"80%\",\r\n \"576px\": \"90%\",\r\n }}\r\n className={props.className}\r\n maximized={maximized}\r\n onMaximize={() => setMaximized(!maximized)}>\r\n {props.children}\r\n </Dialog>\r\n );\r\n}","import React from \"react\";\r\nimport { ButtonProps } from \"./types\";\r\nimport { Button as ButtonPrimeReact } from \"primereact/button\";\r\n\r\n/**\r\n * Componente - `Button`\r\n *\r\n * Um componente versátil que pode ser utilizado para realizar ações por exemplo em formulários de dados.\r\n * Permite personalizar o estilo e o conteúdo através de propriedades.\r\n */\r\nexport const Button = ({ ...props }: ButtonProps) => {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <ButtonPrimeReact badge={props.badge}\r\n badgeClassName={props.badgeClassName}\r\n className={props.className}\r\n disabled={props.disabled}\r\n icon={props.icon !== undefined ? `${props.iconPrefix ?? \"bi bi-\"}${props.icon ?? \"\"} ${props.label ? \"me-1\" : \"\"}` : undefined}\r\n iconPos={props.iconPos}\r\n id={props.id}\r\n label={props.label}\r\n link={props.isLink}\r\n loading={props.isLoading}\r\n pt={{ loadingIcon: { className: \"me-1\" } }}\r\n ref={props.ref}\r\n severity={props.color}\r\n size={props.size}\r\n style={props.css}\r\n type={props.type}\r\n onClick={props.onClick}/>\r\n );\r\n};","import React from \"react\";\r\nimport { Box } from \"../../box\";\r\nimport { Modal } from \"../../modal\";\r\nimport { Button } from \"../../button\";\r\nimport { MessageProps } from \"../types\";\r\nimport { JustifyContentProps } from \"../../api/types\";\r\n\r\n/**\r\n * Core - `ModalMessage`\r\n * Define o componente do tipo modal\r\n */\r\nexport function ModalMessage({ confirm = true, cancel = true, ...props }: MessageProps<\"modal\">) {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Modal className=\"message\"\r\n header={props.title ?? \"Confirmação\"}\r\n icon={props.modalIcon ?? \"cone-striped\"}\r\n iconPrefix={props.modalIconPrefix ?? \"bi bi-\"}\r\n sizes=\"medium\"\r\n visible={props.visible}\r\n onVisible={props.onVisible}>\r\n <Box direction=\"column\"\r\n size=\"100\">\r\n <div dangerouslySetInnerHTML={{ __html: props.message ?? \"\" }}/>\r\n <Box className=\"gap-2\"\r\n justify={\"justify-content-\" + (props.modalOptionsPosition ?? \"end\") as JustifyContentProps}\r\n size=\"100\">\r\n {confirm && <Button color=\"success\"\r\n icon=\"check2-circle\"\r\n isLoading={props.isLoading ?? false}\r\n label={props.confirmLabel ?? \"Confirmar\"}\r\n onClick={() => {\r\n if (props.onConfirm) {\r\n props.onConfirm();\r\n }\r\n }}/>}\r\n {cancel && <Button color=\"danger\"\r\n icon=\"slash-circle\"\r\n label={props.cancelarLabel ?? \"Cancelar\"}\r\n onClick={() => {\r\n if (props.onCancel) {\r\n props.onCancel();\r\n } else {\r\n props.onVisible(false);\r\n }\r\n }}/>}\r\n </Box>\r\n </Box>\r\n </Modal>\r\n );\r\n}","import React from \"react\";\r\nimport { ModalMessage } from \"./core/modal\";\r\nimport { MessageModeProps, MessageProps } from \"./types\";\r\n\r\n/**\r\n * Componente - `Message`\r\n *\r\n * Um componente versátil que é utilizado emitir messagens no sistema.\r\n */\r\nexport function Message<T extends MessageModeProps = \"modal\">(props: MessageProps<T> & { type?: T }) {\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <>\r\n {!props.type || props.type === \"modal\"\r\n ? <ModalMessage {...props}/>\r\n : null}\r\n </>\r\n );\r\n}\r\n\r\nMessage.displayName = \"Message\";"],"names":["Box","children","props","css","size","direction","justify","undefined","Array","isArray","join","align","attr","className","classNames","style","id","React","createElement","modalCore","title","icon","iconPrefix","header","appendTo","visible","onHide","onVisible","modal","background","dismissableMask","backdrop","maximizable","draggable","closable","baseZIndex","zIndex","position","footer","showHeader","Modal","sizes","maximized","setMaximized","useState","Dialog","width","breakpoints","onMaximize","Button","ButtonPrimeReact","badge","badgeClassName","disabled","label","iconPos","link","isLink","loading","isLoading","pt","loadingIcon","ref","severity","color","type","onClick","ModalMessage","confirm","cancel","modalIcon","modalIconPrefix","dangerouslySetInnerHTML","__html","message","modalOptionsPosition","confirmLabel","onConfirm","cancelarLabel","onCancel","Message","Fragment","displayName"],"mappings":"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"}
|
package/modal/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react"),i=require("primereact/dialog");function a(i){const a=void 0!==i.icon?e.createElement("h5",{className:"fw-semibold"},e.createElement("i",{className:"me-1 "+(i.iconPrefix??"bi bi-")+i.icon}),i.header):i.header;return{appendTo:"self",visible:i.visible,onHide(){i.onVisible(!i.visible)},modal:void 0===i.background||i.background,dismissableMask:void 0===i.backdrop||!i.backdrop,maximizable:i.maximizable,draggable:i.draggable,closable:void 0===i.closable||i.closable,baseZIndex:i.zIndex??1e3,position:i.position,header:a,footer:i.footer,showHeader:!(!1===i.header)}}exports.Modal=function(
|
|
1
|
+
"use strict";var e=require("react"),i=require("primereact/dialog");function a(i){const a=void 0!==i.icon?e.createElement("h5",{className:"fw-semibold"},e.createElement("i",{className:"me-1 "+(i.iconPrefix??"bi bi-")+i.icon}),i.header):i.header;return{appendTo:"self",visible:i.visible,onHide(){i.onVisible(!i.visible)},modal:void 0===i.background||i.background,dismissableMask:void 0===i.backdrop||!i.backdrop,maximizable:i.maximizable,draggable:i.draggable,closable:void 0===i.closable||i.closable,baseZIndex:i.zIndex??1e3,position:i.position,header:a,footer:i.footer,showHeader:!(!1===i.header)}}exports.Modal=function(s){let o=s.sizes?"small"===s.sizes?"300px":"medium"===s.sizes?"500px":"large"===s.sizes?"800px":"80%":void 0;const[l,r]=e.useState(s.maximized??!1);return e.createElement(i.Dialog,{style:l?{}:{width:o},...a(s),breakpoints:{"768px":"80%","576px":"90%"},className:s.className,maximized:l,onMaximize:()=>r(!l)},s.children)};
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
package/modal/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../src/modal/core/core.tsx","../../src/modal/modal.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { ModalProps } from \"../types\";\r\nimport { DialogProps } from \"primereact/dialog\";\r\n\r\n/**\r\n * `Core`\r\n * Define as propriedades base para funcionamento da Modal\r\n */\r\nexport function modalCore(\r\n props: ModalProps\r\n): DialogProps {\r\n const title = props.icon !== undefined\r\n ? <h5 className=\"fw-semibold\">\r\n <i className={\"me-1 \" + (props.iconPrefix ?? \"bi bi-\") + props.icon}/>{props.header}</h5>\r\n : props.header;\r\n\r\n return {\r\n appendTo: \"self\",\r\n visible: props.visible,\r\n onHide() {\r\n props.onVisible(!props.visible);\r\n },\r\n modal: props.background === undefined || props.background,\r\n dismissableMask: props.backdrop === undefined || !props.backdrop,\r\n\r\n maximizable: props.maximizable,\r\n draggable: props.draggable,\r\n closable: props.closable === undefined || props.closable,\r\n baseZIndex: props.zIndex ?? 1000,\r\n\r\n position: props.position,\r\n header: title,\r\n footer: props.footer,\r\n showHeader: !(props.header === false),\r\n };\r\n}","import React, { useState } from \"react\";\r\nimport { ModalProps } from \"./types\";\r\nimport { modalCore } from \"./core/core\";\r\nimport { Dialog } from \"primereact/dialog\";\r\n\r\n/**\r\n * Componente - `Modal`\r\n *\r\n * Um componente versátil que é utilizado exibir dados em forma de janela suspensa.\r\n */\r\nexport function Modal(props: ModalProps) {\r\n let sizes = !props.sizes ? undefined\r\n : props.sizes === \"small\" ? \"300px\"\r\n : props.sizes === \"medium\" ? \"500px\"\r\n : props.sizes === \"large\" ? \"800px\" : \"80%\";\r\n const [maximized, setMaximized] = useState(props.maximized ?? false);\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Dialog style={!maximized ? { width: sizes } : {}}\r\n {...modalCore(props)}\r\n breakpoints={{\r\n \"768px\": \"80%\",\r\n \"576px\": \"90%\",\r\n }}\r\n maximized={maximized}\r\n onMaximize={() => setMaximized(!maximized)}>\r\n {props.children}\r\n </Dialog>\r\n );\r\n}"],"names":["modalCore","props","title","undefined","icon","React","createElement","className","iconPrefix","header","appendTo","visible","onHide","onVisible","modal","background","dismissableMask","backdrop","maximizable","draggable","closable","baseZIndex","zIndex","position","footer","showHeader","sizes","maximized","setMaximized","useState","Dialog","style","width","breakpoints","onMaximize","children"],"mappings":"mEAQM,SAAUA,EACZC,GAEA,MAAMC,OAAuBC,IAAfF,EAAMG,KACdC,EAAAC,cAAA,KAAA,CAAIC,UAAU,eACZF,EAAAC,cAAA,IAAA,CAAGC,UAAW,SAAWN,EAAMO,YAAc,UAAYP,EAAMG,OAAQH,EAAMQ,QAC/ER,EAAMQ,OAEZ,MAAO,CACHC,SAAU,OACVC,QAASV,EAAMU,QACf,MAAAC,GACIX,EAAMY,WAAWZ,EAAMU,QAC1B,EACDG,WAA4BX,IAArBF,EAAMc,YAA4Bd,EAAMc,WAC/CC,qBAAoCb,IAAnBF,EAAMgB,WAA2BhB,EAAMgB,SAExDC,YAAajB,EAAMiB,YACnBC,UAAWlB,EAAMkB,UACjBC,cAA6BjB,IAAnBF,EAAMmB,UAA0BnB,EAAMmB,SAChDC,WAAYpB,EAAMqB,QAAU,IAE5BC,SAAUtB,EAAMsB,SAChBd,OAAQP,EACRsB,OAAQvB,EAAMuB,OACdC,cAA+B,IAAjBxB,EAAMQ,QAE5B,eCzBM,SAAgBR,GAClB,IAAIyB,EAASzB,EAAMyB,MACG,UAAhBzB,EAAMyB,MAAoB,QACN,WAAhBzB,EAAMyB,MAAqB,QACP,UAAhBzB,EAAMyB,MAAoB,QAAU,WAHvBvB,EAI3B,MAAOwB,EAAWC,GAAgBC,EAAQA,SAAC5B,EAAM0B,YAAa,GAO9D,OACItB,EAACC,cAAAwB,EAAAA,OAAO,CAAAC,MAAQJ,EAA+B,CAAA,EAAnB,CAAEK,MAAON,MACzB1B,EAAUC,GACdgC,YAAa,CACT,QAAS,MACT,QAAS,
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../src/modal/core/core.tsx","../../src/modal/modal.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { ModalProps } from \"../types\";\r\nimport { DialogProps } from \"primereact/dialog\";\r\n\r\n/**\r\n * `Core`\r\n * Define as propriedades base para funcionamento da Modal\r\n */\r\nexport function modalCore(\r\n props: ModalProps\r\n): DialogProps {\r\n const title = props.icon !== undefined\r\n ? <h5 className=\"fw-semibold\">\r\n <i className={\"me-1 \" + (props.iconPrefix ?? \"bi bi-\") + props.icon}/>{props.header}</h5>\r\n : props.header;\r\n\r\n return {\r\n appendTo: \"self\",\r\n visible: props.visible,\r\n onHide() {\r\n props.onVisible(!props.visible);\r\n },\r\n modal: props.background === undefined || props.background,\r\n dismissableMask: props.backdrop === undefined || !props.backdrop,\r\n\r\n maximizable: props.maximizable,\r\n draggable: props.draggable,\r\n closable: props.closable === undefined || props.closable,\r\n baseZIndex: props.zIndex ?? 1000,\r\n\r\n position: props.position,\r\n header: title,\r\n footer: props.footer,\r\n showHeader: !(props.header === false),\r\n };\r\n}","import React, { useState } from \"react\";\r\nimport { ModalProps } from \"./types\";\r\nimport { modalCore } from \"./core/core\";\r\nimport { Dialog } from \"primereact/dialog\";\r\n\r\n/**\r\n * Componente - `Modal`\r\n *\r\n * Um componente versátil que é utilizado exibir dados em forma de janela suspensa.\r\n */\r\nexport function Modal(props: ModalProps) {\r\n let sizes = !props.sizes ? undefined\r\n : props.sizes === \"small\" ? \"300px\"\r\n : props.sizes === \"medium\" ? \"500px\"\r\n : props.sizes === \"large\" ? \"800px\" : \"80%\";\r\n const [maximized, setMaximized] = useState(props.maximized ?? false);\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Dialog style={!maximized ? { width: sizes } : {}}\r\n {...modalCore(props)}\r\n breakpoints={{\r\n \"768px\": \"80%\",\r\n \"576px\": \"90%\",\r\n }}\r\n className={props.className}\r\n maximized={maximized}\r\n onMaximize={() => setMaximized(!maximized)}>\r\n {props.children}\r\n </Dialog>\r\n );\r\n}"],"names":["modalCore","props","title","undefined","icon","React","createElement","className","iconPrefix","header","appendTo","visible","onHide","onVisible","modal","background","dismissableMask","backdrop","maximizable","draggable","closable","baseZIndex","zIndex","position","footer","showHeader","sizes","maximized","setMaximized","useState","Dialog","style","width","breakpoints","onMaximize","children"],"mappings":"mEAQM,SAAUA,EACZC,GAEA,MAAMC,OAAuBC,IAAfF,EAAMG,KACdC,EAAAC,cAAA,KAAA,CAAIC,UAAU,eACZF,EAAAC,cAAA,IAAA,CAAGC,UAAW,SAAWN,EAAMO,YAAc,UAAYP,EAAMG,OAAQH,EAAMQ,QAC/ER,EAAMQ,OAEZ,MAAO,CACHC,SAAU,OACVC,QAASV,EAAMU,QACf,MAAAC,GACIX,EAAMY,WAAWZ,EAAMU,QAC1B,EACDG,WAA4BX,IAArBF,EAAMc,YAA4Bd,EAAMc,WAC/CC,qBAAoCb,IAAnBF,EAAMgB,WAA2BhB,EAAMgB,SAExDC,YAAajB,EAAMiB,YACnBC,UAAWlB,EAAMkB,UACjBC,cAA6BjB,IAAnBF,EAAMmB,UAA0BnB,EAAMmB,SAChDC,WAAYpB,EAAMqB,QAAU,IAE5BC,SAAUtB,EAAMsB,SAChBd,OAAQP,EACRsB,OAAQvB,EAAMuB,OACdC,cAA+B,IAAjBxB,EAAMQ,QAE5B,eCzBM,SAAgBR,GAClB,IAAIyB,EAASzB,EAAMyB,MACG,UAAhBzB,EAAMyB,MAAoB,QACN,WAAhBzB,EAAMyB,MAAqB,QACP,UAAhBzB,EAAMyB,MAAoB,QAAU,WAHvBvB,EAI3B,MAAOwB,EAAWC,GAAgBC,EAAQA,SAAC5B,EAAM0B,YAAa,GAO9D,OACItB,EAACC,cAAAwB,EAAAA,OAAO,CAAAC,MAAQJ,EAA+B,CAAA,EAAnB,CAAEK,MAAON,MACzB1B,EAAUC,GACdgC,YAAa,CACT,QAAS,MACT,QAAS,OAEb1B,UAAWN,EAAMM,UACjBoB,UAAWA,EACXO,WAAY,IAAMN,GAAcD,IACnC1B,EAAMkC,SAGnB"}
|
package/modal/index.d.ts
CHANGED
|
@@ -7,6 +7,11 @@ interface ModalProps extends Pick<DialogProps, "maximizable" | "maximized" | "dr
|
|
|
7
7
|
*/
|
|
8
8
|
children: React.ReactNode;
|
|
9
9
|
|
|
10
|
+
/**
|
|
11
|
+
* Define a classe de personalização da modal
|
|
12
|
+
*/
|
|
13
|
+
className?: string
|
|
14
|
+
|
|
10
15
|
/**
|
|
11
16
|
* Define o state da modal aberta ou fechada
|
|
12
17
|
*/
|
package/modal/index.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e,{useState as i}from"react";import{Dialog as a}from"primereact/dialog";function o(i){const a=void 0!==i.icon?e.createElement("h5",{className:"fw-semibold"},e.createElement("i",{className:"me-1 "+(i.iconPrefix??"bi bi-")+i.icon}),i.header):i.header;return{appendTo:"self",visible:i.visible,onHide(){i.onVisible(!i.visible)},modal:void 0===i.background||i.background,dismissableMask:void 0===i.backdrop||!i.backdrop,maximizable:i.maximizable,draggable:i.draggable,closable:void 0===i.closable||i.closable,baseZIndex:i.zIndex??1e3,position:i.position,header:a,footer:i.footer,showHeader:!(!1===i.header)}}function s(s){let
|
|
1
|
+
import e,{useState as i}from"react";import{Dialog as a}from"primereact/dialog";function o(i){const a=void 0!==i.icon?e.createElement("h5",{className:"fw-semibold"},e.createElement("i",{className:"me-1 "+(i.iconPrefix??"bi bi-")+i.icon}),i.header):i.header;return{appendTo:"self",visible:i.visible,onHide(){i.onVisible(!i.visible)},modal:void 0===i.background||i.background,dismissableMask:void 0===i.backdrop||!i.backdrop,maximizable:i.maximizable,draggable:i.draggable,closable:void 0===i.closable||i.closable,baseZIndex:i.zIndex??1e3,position:i.position,header:a,footer:i.footer,showHeader:!(!1===i.header)}}function s(s){let l=s.sizes?"small"===s.sizes?"300px":"medium"===s.sizes?"500px":"large"===s.sizes?"800px":"80%":void 0;const[r,d]=i(s.maximized??!1);return e.createElement(a,{style:r?{}:{width:l},...o(s),breakpoints:{"768px":"80%","576px":"90%"},className:s.className,maximized:r,onMaximize:()=>d(!r)},s.children)}export{s as Modal};
|
|
2
2
|
//# sourceMappingURL=index.esm.js.map
|
package/modal/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../../src/modal/core/core.tsx","../../src/modal/modal.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { ModalProps } from \"../types\";\r\nimport { DialogProps } from \"primereact/dialog\";\r\n\r\n/**\r\n * `Core`\r\n * Define as propriedades base para funcionamento da Modal\r\n */\r\nexport function modalCore(\r\n props: ModalProps\r\n): DialogProps {\r\n const title = props.icon !== undefined\r\n ? <h5 className=\"fw-semibold\">\r\n <i className={\"me-1 \" + (props.iconPrefix ?? \"bi bi-\") + props.icon}/>{props.header}</h5>\r\n : props.header;\r\n\r\n return {\r\n appendTo: \"self\",\r\n visible: props.visible,\r\n onHide() {\r\n props.onVisible(!props.visible);\r\n },\r\n modal: props.background === undefined || props.background,\r\n dismissableMask: props.backdrop === undefined || !props.backdrop,\r\n\r\n maximizable: props.maximizable,\r\n draggable: props.draggable,\r\n closable: props.closable === undefined || props.closable,\r\n baseZIndex: props.zIndex ?? 1000,\r\n\r\n position: props.position,\r\n header: title,\r\n footer: props.footer,\r\n showHeader: !(props.header === false),\r\n };\r\n}","import React, { useState } from \"react\";\r\nimport { ModalProps } from \"./types\";\r\nimport { modalCore } from \"./core/core\";\r\nimport { Dialog } from \"primereact/dialog\";\r\n\r\n/**\r\n * Componente - `Modal`\r\n *\r\n * Um componente versátil que é utilizado exibir dados em forma de janela suspensa.\r\n */\r\nexport function Modal(props: ModalProps) {\r\n let sizes = !props.sizes ? undefined\r\n : props.sizes === \"small\" ? \"300px\"\r\n : props.sizes === \"medium\" ? \"500px\"\r\n : props.sizes === \"large\" ? \"800px\" : \"80%\";\r\n const [maximized, setMaximized] = useState(props.maximized ?? false);\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Dialog style={!maximized ? { width: sizes } : {}}\r\n {...modalCore(props)}\r\n breakpoints={{\r\n \"768px\": \"80%\",\r\n \"576px\": \"90%\",\r\n }}\r\n maximized={maximized}\r\n onMaximize={() => setMaximized(!maximized)}>\r\n {props.children}\r\n </Dialog>\r\n );\r\n}"],"names":["modalCore","props","title","undefined","icon","React","createElement","className","iconPrefix","header","appendTo","visible","onHide","onVisible","modal","background","dismissableMask","backdrop","maximizable","draggable","closable","baseZIndex","zIndex","position","footer","showHeader","Modal","sizes","maximized","setMaximized","useState","Dialog","style","width","breakpoints","onMaximize","children"],"mappings":"+EAQM,SAAUA,EACZC,GAEA,MAAMC,OAAuBC,IAAfF,EAAMG,KACdC,EAAAC,cAAA,KAAA,CAAIC,UAAU,eACZF,EAAAC,cAAA,IAAA,CAAGC,UAAW,SAAWN,EAAMO,YAAc,UAAYP,EAAMG,OAAQH,EAAMQ,QAC/ER,EAAMQ,OAEZ,MAAO,CACHC,SAAU,OACVC,QAASV,EAAMU,QACf,MAAAC,GACIX,EAAMY,WAAWZ,EAAMU,QAC1B,EACDG,WAA4BX,IAArBF,EAAMc,YAA4Bd,EAAMc,WAC/CC,qBAAoCb,IAAnBF,EAAMgB,WAA2BhB,EAAMgB,SAExDC,YAAajB,EAAMiB,YACnBC,UAAWlB,EAAMkB,UACjBC,cAA6BjB,IAAnBF,EAAMmB,UAA0BnB,EAAMmB,SAChDC,WAAYpB,EAAMqB,QAAU,IAE5BC,SAAUtB,EAAMsB,SAChBd,OAAQP,EACRsB,OAAQvB,EAAMuB,OACdC,cAA+B,IAAjBxB,EAAMQ,QAE5B,CCzBM,SAAUiB,EAAMzB,GAClB,IAAI0B,EAAS1B,EAAM0B,MACG,UAAhB1B,EAAM0B,MAAoB,QACN,WAAhB1B,EAAM0B,MAAqB,QACP,UAAhB1B,EAAM0B,MAAoB,QAAU,WAHvBxB,EAI3B,MAAOyB,EAAWC,GAAgBC,EAAS7B,EAAM2B,YAAa,GAO9D,OACIvB,EAACC,cAAAyB,EAAO,CAAAC,MAAQJ,EAA+B,CAAA,EAAnB,CAAEK,MAAON,MACzB3B,EAAUC,GACdiC,YAAa,CACT,QAAS,MACT,QAAS,
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../src/modal/core/core.tsx","../../src/modal/modal.tsx"],"sourcesContent":["import React from \"react\";\r\nimport { ModalProps } from \"../types\";\r\nimport { DialogProps } from \"primereact/dialog\";\r\n\r\n/**\r\n * `Core`\r\n * Define as propriedades base para funcionamento da Modal\r\n */\r\nexport function modalCore(\r\n props: ModalProps\r\n): DialogProps {\r\n const title = props.icon !== undefined\r\n ? <h5 className=\"fw-semibold\">\r\n <i className={\"me-1 \" + (props.iconPrefix ?? \"bi bi-\") + props.icon}/>{props.header}</h5>\r\n : props.header;\r\n\r\n return {\r\n appendTo: \"self\",\r\n visible: props.visible,\r\n onHide() {\r\n props.onVisible(!props.visible);\r\n },\r\n modal: props.background === undefined || props.background,\r\n dismissableMask: props.backdrop === undefined || !props.backdrop,\r\n\r\n maximizable: props.maximizable,\r\n draggable: props.draggable,\r\n closable: props.closable === undefined || props.closable,\r\n baseZIndex: props.zIndex ?? 1000,\r\n\r\n position: props.position,\r\n header: title,\r\n footer: props.footer,\r\n showHeader: !(props.header === false),\r\n };\r\n}","import React, { useState } from \"react\";\r\nimport { ModalProps } from \"./types\";\r\nimport { modalCore } from \"./core/core\";\r\nimport { Dialog } from \"primereact/dialog\";\r\n\r\n/**\r\n * Componente - `Modal`\r\n *\r\n * Um componente versátil que é utilizado exibir dados em forma de janela suspensa.\r\n */\r\nexport function Modal(props: ModalProps) {\r\n let sizes = !props.sizes ? undefined\r\n : props.sizes === \"small\" ? \"300px\"\r\n : props.sizes === \"medium\" ? \"500px\"\r\n : props.sizes === \"large\" ? \"800px\" : \"80%\";\r\n const [maximized, setMaximized] = useState(props.maximized ?? false);\r\n\r\n /*\r\n |------------------------------------------\r\n | render() - Renderização do componente\r\n |------------------------------------------\r\n */\r\n return (\r\n <Dialog style={!maximized ? { width: sizes } : {}}\r\n {...modalCore(props)}\r\n breakpoints={{\r\n \"768px\": \"80%\",\r\n \"576px\": \"90%\",\r\n }}\r\n className={props.className}\r\n maximized={maximized}\r\n onMaximize={() => setMaximized(!maximized)}>\r\n {props.children}\r\n </Dialog>\r\n );\r\n}"],"names":["modalCore","props","title","undefined","icon","React","createElement","className","iconPrefix","header","appendTo","visible","onHide","onVisible","modal","background","dismissableMask","backdrop","maximizable","draggable","closable","baseZIndex","zIndex","position","footer","showHeader","Modal","sizes","maximized","setMaximized","useState","Dialog","style","width","breakpoints","onMaximize","children"],"mappings":"+EAQM,SAAUA,EACZC,GAEA,MAAMC,OAAuBC,IAAfF,EAAMG,KACdC,EAAAC,cAAA,KAAA,CAAIC,UAAU,eACZF,EAAAC,cAAA,IAAA,CAAGC,UAAW,SAAWN,EAAMO,YAAc,UAAYP,EAAMG,OAAQH,EAAMQ,QAC/ER,EAAMQ,OAEZ,MAAO,CACHC,SAAU,OACVC,QAASV,EAAMU,QACf,MAAAC,GACIX,EAAMY,WAAWZ,EAAMU,QAC1B,EACDG,WAA4BX,IAArBF,EAAMc,YAA4Bd,EAAMc,WAC/CC,qBAAoCb,IAAnBF,EAAMgB,WAA2BhB,EAAMgB,SAExDC,YAAajB,EAAMiB,YACnBC,UAAWlB,EAAMkB,UACjBC,cAA6BjB,IAAnBF,EAAMmB,UAA0BnB,EAAMmB,SAChDC,WAAYpB,EAAMqB,QAAU,IAE5BC,SAAUtB,EAAMsB,SAChBd,OAAQP,EACRsB,OAAQvB,EAAMuB,OACdC,cAA+B,IAAjBxB,EAAMQ,QAE5B,CCzBM,SAAUiB,EAAMzB,GAClB,IAAI0B,EAAS1B,EAAM0B,MACG,UAAhB1B,EAAM0B,MAAoB,QACN,WAAhB1B,EAAM0B,MAAqB,QACP,UAAhB1B,EAAM0B,MAAoB,QAAU,WAHvBxB,EAI3B,MAAOyB,EAAWC,GAAgBC,EAAS7B,EAAM2B,YAAa,GAO9D,OACIvB,EAACC,cAAAyB,EAAO,CAAAC,MAAQJ,EAA+B,CAAA,EAAnB,CAAEK,MAAON,MACzB3B,EAAUC,GACdiC,YAAa,CACT,QAAS,MACT,QAAS,OAEb3B,UAAWN,EAAMM,UACjBqB,UAAWA,EACXO,WAAY,IAAMN,GAAcD,IACnC3B,EAAMmC,SAGnB"}
|