@tecsinapse/cortex-react 1.3.0-beta.32 → 1.3.0-beta.33

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.
@@ -2,31 +2,31 @@
2
2
 
3
3
  var React = require('react');
4
4
  var reactImask = require('react-imask');
5
- var index = require('./index.js');
5
+ var Root = require('./Root.js');
6
6
 
7
- const useIMaskLocal = (mask, inputProps, ref, onChangeMask) => {
8
- const { ref: iMaskRef, maskRef } = reactImask.useIMask(mask, {
9
- onAccept: (value, mask2) => {
10
- onChangeMask?.({
11
- unmaskedValue: mask2._unmaskedValue,
12
- value
13
- });
14
- },
15
- ref: ref ? ref : React.createRef()
16
- });
17
- React.useEffect(() => {
18
- if (inputProps.value === "") {
19
- maskRef.current?.updateValue();
20
- }
21
- }, [maskRef, inputProps.value]);
22
- return {
23
- iMaskRef
24
- };
25
- };
26
7
  const InputMask = React.forwardRef(
27
- ({ mask, onChange, ...rest }, ref) => {
28
- const { iMaskRef } = useIMaskLocal(mask, rest, ref, onChange);
29
- return /* @__PURE__ */ React.createElement(index.Input.Root, { ...rest, ref: iMaskRef });
8
+ ({ mask, onChange, value, controlled, ...rest }, ref) => {
9
+ const {
10
+ ref: iMaskRef,
11
+ setUnmaskedValue,
12
+ maskRef
13
+ } = reactImask.useIMask(mask, {
14
+ onAccept: (value2, mask2) => {
15
+ onChange?.({
16
+ unmaskedValue: mask2._unmaskedValue,
17
+ value: value2
18
+ });
19
+ },
20
+ ref: ref ? ref : React.createRef(),
21
+ defaultValue: String(value ?? "")
22
+ });
23
+ React.useEffect(() => {
24
+ if (value && controlled) {
25
+ setUnmaskedValue(String(value));
26
+ maskRef.current?.updateValue();
27
+ }
28
+ }, [value, controlled]);
29
+ return /* @__PURE__ */ React.createElement(Root.InputRoot, { ...rest, ref: iMaskRef });
30
30
  }
31
31
  );
32
32
 
@@ -2,12 +2,14 @@
2
2
 
3
3
  var React = require('react');
4
4
  var io5 = require('react-icons/io5');
5
- var index = require('./index.js');
6
5
  require('@internationalized/date');
7
6
  require('react-aria');
8
7
  require('react-stately');
9
8
  var useDebouncedState = require('../../hooks/useDebouncedState.js');
10
9
  require('@floating-ui/react');
10
+ var Box = require('./Box.js');
11
+ var Face = require('./Face.js');
12
+ var Left = require('./Left.js');
11
13
 
12
14
  const InputSearch = React.forwardRef(
13
15
  ({
@@ -24,7 +26,7 @@ const InputSearch = React.forwardRef(
24
26
  onChange(searchInputEvent);
25
27
  }
26
28
  }, [bouncedTextEvent]);
27
- return /* @__PURE__ */ React.createElement(index.Input.Face, { variants, className }, /* @__PURE__ */ React.createElement(index.Input.Left, null, /* @__PURE__ */ React.createElement(io5.IoSearchOutline, { "data-testid": "icon-search-left" })), /* @__PURE__ */ React.createElement(index.Input.Box, { ...rest, ref, onChange: (e) => setSearchInputEvent(e) }));
29
+ return /* @__PURE__ */ React.createElement(Face.InputFace, { variants, className }, /* @__PURE__ */ React.createElement(Left.InputLeft, null, /* @__PURE__ */ React.createElement(io5.IoSearchOutline, { "data-testid": "icon-search-left" })), /* @__PURE__ */ React.createElement(Box.InputBox, { ...rest, ref, onChange: (e) => setSearchInputEvent(e) }));
28
30
  }
29
31
  );
30
32
 
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var index = require('./index.js');
4
+ var Provider = require('./Provider.js');
5
5
 
6
6
  const PopoverRoot = ({
7
7
  children,
8
8
  placement,
9
9
  trigger
10
10
  }) => {
11
- return /* @__PURE__ */ React.createElement(index.Popover.Provider, { placement, trigger }, children);
11
+ return /* @__PURE__ */ React.createElement(Provider.PopoverProvider, { placement, trigger }, children);
12
12
  };
13
13
 
14
14
  exports.PopoverRoot = PopoverRoot;
@@ -2,13 +2,13 @@
2
2
 
3
3
  var cortexCore = require('@tecsinapse/cortex-core');
4
4
  var React = require('react');
5
- var index = require('./index.js');
6
5
  require('@internationalized/date');
7
6
  require('react-aria');
8
7
  require('react-stately');
9
8
  require('@floating-ui/react');
10
9
  var useSelectGroupedOptions = require('../../hooks/useSelectGroupedOptions.js');
11
10
  var Context = require('../Popover/Context.js');
11
+ var Option = require('./Option.js');
12
12
  var SkeletonOptions = require('./SkeletonOptions.js');
13
13
  var context = require('./context.js');
14
14
 
@@ -29,7 +29,7 @@ const SelectGroupedOptions = ({
29
29
  [onSelect]
30
30
  );
31
31
  return isLoading ? /* @__PURE__ */ React.createElement(SkeletonOptions.SkeletonOptions, null) : /* @__PURE__ */ React.createElement("ul", { role: "select", className: list() }, [..._options ?? []].map(([key, value]) => /* @__PURE__ */ React.createElement("div", { key }, /* @__PURE__ */ React.createElement("span", { className: groupedTitle() }, groupedLabelExtractor?.(key)), value.map((option) => /* @__PURE__ */ React.createElement(
32
- index.Select.Option,
32
+ Option.SelectOption,
33
33
  {
34
34
  grouped: true,
35
35
  option,
@@ -2,12 +2,12 @@
2
2
 
3
3
  var cortexCore = require('@tecsinapse/cortex-core');
4
4
  var React = require('react');
5
- var index = require('./index.js');
6
5
  require('@internationalized/date');
7
6
  require('react-aria');
8
7
  require('react-stately');
9
8
  require('@floating-ui/react');
10
9
  var useSelectGroupedOptions = require('../../hooks/useSelectGroupedOptions.js');
10
+ var MultiOption = require('./MultiOption.js');
11
11
  var SkeletonOptions = require('./SkeletonOptions.js');
12
12
  var context = require('./context.js');
13
13
  var utils = require('./utils.js');
@@ -32,7 +32,7 @@ const SelectMultiGroupedOptions = ({
32
32
  },
33
33
  children,
34
34
  isLoading ? /* @__PURE__ */ React.createElement(SkeletonOptions.SkeletonOptions, null) : /* @__PURE__ */ React.createElement("ul", { role: "select", className: list() }, [..._options ?? []].map(([key, value]) => /* @__PURE__ */ React.createElement("div", { key }, /* @__PURE__ */ React.createElement("span", { className: groupedTitle() }, groupedLabelExtractor?.(key)), value.map((option) => /* @__PURE__ */ React.createElement(
35
- index.Select.MultiOption,
35
+ MultiOption.SelectMultiOption,
36
36
  {
37
37
  grouped: true,
38
38
  option,
@@ -2,12 +2,12 @@
2
2
 
3
3
  var cortexCore = require('@tecsinapse/cortex-core');
4
4
  var React = require('react');
5
- var index = require('./index.js');
6
5
  require('@internationalized/date');
7
6
  require('react-aria');
8
7
  require('react-stately');
9
8
  require('@floating-ui/react');
10
9
  var useSelectOptions = require('../../hooks/useSelectOptions.js');
10
+ var MultiOption = require('./MultiOption.js');
11
11
  var SkeletonOptions = require('./SkeletonOptions.js');
12
12
  var context = require('./context.js');
13
13
  var utils = require('./utils.js');
@@ -21,7 +21,7 @@ const SelectMultiOptions = ({
21
21
  const { keyExtractor, value: currentValue = [] } = React.useContext(context.SelectContext);
22
22
  const { options: _options, isLoading } = useSelectOptions.useSelectOptions({ options });
23
23
  return /* @__PURE__ */ React.createElement(context.SelectMultiOptionsContext.Provider, { value: { onSelect, options: _options } }, isLoading ? /* @__PURE__ */ React.createElement(SkeletonOptions.SkeletonOptions, null) : /* @__PURE__ */ React.createElement("ul", { role: "select", className: list() }, children, _options?.map((option) => /* @__PURE__ */ React.createElement(
24
- index.Select.MultiOption,
24
+ MultiOption.SelectMultiOption,
25
25
  {
26
26
  option,
27
27
  key: keyExtractor(option),
@@ -2,13 +2,13 @@
2
2
 
3
3
  var cortexCore = require('@tecsinapse/cortex-core');
4
4
  var React = require('react');
5
- var index = require('./index.js');
6
5
  require('@internationalized/date');
7
6
  require('react-aria');
8
7
  require('react-stately');
9
8
  require('@floating-ui/react');
10
9
  var useSelectOptions = require('../../hooks/useSelectOptions.js');
11
10
  var Context = require('../Popover/Context.js');
11
+ var Option = require('./Option.js');
12
12
  var SkeletonOptions = require('./SkeletonOptions.js');
13
13
  var context = require('./context.js');
14
14
 
@@ -28,7 +28,7 @@ const SelectOptions = ({
28
28
  [onSelect]
29
29
  );
30
30
  return isLoading ? /* @__PURE__ */ React.createElement(SkeletonOptions.SkeletonOptions, null) : /* @__PURE__ */ React.createElement("ul", { role: "select", className: list() }, _options?.map((option) => /* @__PURE__ */ React.createElement(
31
- index.Select.Option,
31
+ Option.SelectOption,
32
32
  {
33
33
  option,
34
34
  key: keyExtractor(option),
@@ -1,30 +1,30 @@
1
1
  import React__default, { createRef, useEffect } from 'react';
2
2
  import { useIMask } from 'react-imask';
3
- import { Input } from './index.js';
3
+ import { InputRoot } from './Root.js';
4
4
 
5
- const useIMaskLocal = (mask, inputProps, ref, onChangeMask) => {
6
- const { ref: iMaskRef, maskRef } = useIMask(mask, {
7
- onAccept: (value, mask2) => {
8
- onChangeMask?.({
9
- unmaskedValue: mask2._unmaskedValue,
10
- value
11
- });
12
- },
13
- ref: ref ? ref : createRef()
14
- });
15
- useEffect(() => {
16
- if (inputProps.value === "") {
17
- maskRef.current?.updateValue();
18
- }
19
- }, [maskRef, inputProps.value]);
20
- return {
21
- iMaskRef
22
- };
23
- };
24
5
  const InputMask = React__default.forwardRef(
25
- ({ mask, onChange, ...rest }, ref) => {
26
- const { iMaskRef } = useIMaskLocal(mask, rest, ref, onChange);
27
- return /* @__PURE__ */ React__default.createElement(Input.Root, { ...rest, ref: iMaskRef });
6
+ ({ mask, onChange, value, controlled, ...rest }, ref) => {
7
+ const {
8
+ ref: iMaskRef,
9
+ setUnmaskedValue,
10
+ maskRef
11
+ } = useIMask(mask, {
12
+ onAccept: (value2, mask2) => {
13
+ onChange?.({
14
+ unmaskedValue: mask2._unmaskedValue,
15
+ value: value2
16
+ });
17
+ },
18
+ ref: ref ? ref : createRef(),
19
+ defaultValue: String(value ?? "")
20
+ });
21
+ useEffect(() => {
22
+ if (value && controlled) {
23
+ setUnmaskedValue(String(value));
24
+ maskRef.current?.updateValue();
25
+ }
26
+ }, [value, controlled]);
27
+ return /* @__PURE__ */ React__default.createElement(InputRoot, { ...rest, ref: iMaskRef });
28
28
  }
29
29
  );
30
30
 
@@ -1,11 +1,13 @@
1
1
  import React__default, { useState, useEffect } from 'react';
2
2
  import { IoSearchOutline } from 'react-icons/io5';
3
- import { Input } from './index.js';
4
3
  import '@internationalized/date';
5
4
  import 'react-aria';
6
5
  import 'react-stately';
7
6
  import { useDebouncedState } from '../../hooks/useDebouncedState.js';
8
7
  import '@floating-ui/react';
8
+ import { InputBox } from './Box.js';
9
+ import { InputFace } from './Face.js';
10
+ import { InputLeft } from './Left.js';
9
11
 
10
12
  const InputSearch = React__default.forwardRef(
11
13
  ({
@@ -22,7 +24,7 @@ const InputSearch = React__default.forwardRef(
22
24
  onChange(searchInputEvent);
23
25
  }
24
26
  }, [bouncedTextEvent]);
25
- return /* @__PURE__ */ React__default.createElement(Input.Face, { variants, className }, /* @__PURE__ */ React__default.createElement(Input.Left, null, /* @__PURE__ */ React__default.createElement(IoSearchOutline, { "data-testid": "icon-search-left" })), /* @__PURE__ */ React__default.createElement(Input.Box, { ...rest, ref, onChange: (e) => setSearchInputEvent(e) }));
27
+ return /* @__PURE__ */ React__default.createElement(InputFace, { variants, className }, /* @__PURE__ */ React__default.createElement(InputLeft, null, /* @__PURE__ */ React__default.createElement(IoSearchOutline, { "data-testid": "icon-search-left" })), /* @__PURE__ */ React__default.createElement(InputBox, { ...rest, ref, onChange: (e) => setSearchInputEvent(e) }));
26
28
  }
27
29
  );
28
30
 
@@ -1,12 +1,12 @@
1
1
  import React__default from 'react';
2
- import { Popover } from './index.js';
2
+ import { PopoverProvider } from './Provider.js';
3
3
 
4
4
  const PopoverRoot = ({
5
5
  children,
6
6
  placement,
7
7
  trigger
8
8
  }) => {
9
- return /* @__PURE__ */ React__default.createElement(Popover.Provider, { placement, trigger }, children);
9
+ return /* @__PURE__ */ React__default.createElement(PopoverProvider, { placement, trigger }, children);
10
10
  };
11
11
 
12
12
  export { PopoverRoot };
@@ -1,12 +1,12 @@
1
1
  import { selectVariants } from '@tecsinapse/cortex-core';
2
2
  import React__default, { useContext, useCallback } from 'react';
3
- import { Select } from './index.js';
4
3
  import '@internationalized/date';
5
4
  import 'react-aria';
6
5
  import 'react-stately';
7
6
  import '@floating-ui/react';
8
7
  import { useSelectGroupedOptions } from '../../hooks/useSelectGroupedOptions.js';
9
8
  import { usePopoverContext } from '../Popover/Context.js';
9
+ import { SelectOption } from './Option.js';
10
10
  import { SkeletonOptions } from './SkeletonOptions.js';
11
11
  import { SelectContext } from './context.js';
12
12
 
@@ -27,7 +27,7 @@ const SelectGroupedOptions = ({
27
27
  [onSelect]
28
28
  );
29
29
  return isLoading ? /* @__PURE__ */ React__default.createElement(SkeletonOptions, null) : /* @__PURE__ */ React__default.createElement("ul", { role: "select", className: list() }, [..._options ?? []].map(([key, value]) => /* @__PURE__ */ React__default.createElement("div", { key }, /* @__PURE__ */ React__default.createElement("span", { className: groupedTitle() }, groupedLabelExtractor?.(key)), value.map((option) => /* @__PURE__ */ React__default.createElement(
30
- Select.Option,
30
+ SelectOption,
31
31
  {
32
32
  grouped: true,
33
33
  option,
@@ -1,11 +1,11 @@
1
1
  import { selectVariants } from '@tecsinapse/cortex-core';
2
2
  import React__default, { useContext, useMemo } from 'react';
3
- import { Select } from './index.js';
4
3
  import '@internationalized/date';
5
4
  import 'react-aria';
6
5
  import 'react-stately';
7
6
  import '@floating-ui/react';
8
7
  import { useSelectGroupedOptions } from '../../hooks/useSelectGroupedOptions.js';
8
+ import { SelectMultiOption } from './MultiOption.js';
9
9
  import { SkeletonOptions } from './SkeletonOptions.js';
10
10
  import { SelectContext, SelectMultiOptionsContext } from './context.js';
11
11
  import { handleSelectMulti } from './utils.js';
@@ -30,7 +30,7 @@ const SelectMultiGroupedOptions = ({
30
30
  },
31
31
  children,
32
32
  isLoading ? /* @__PURE__ */ React__default.createElement(SkeletonOptions, null) : /* @__PURE__ */ React__default.createElement("ul", { role: "select", className: list() }, [..._options ?? []].map(([key, value]) => /* @__PURE__ */ React__default.createElement("div", { key }, /* @__PURE__ */ React__default.createElement("span", { className: groupedTitle() }, groupedLabelExtractor?.(key)), value.map((option) => /* @__PURE__ */ React__default.createElement(
33
- Select.MultiOption,
33
+ SelectMultiOption,
34
34
  {
35
35
  grouped: true,
36
36
  option,
@@ -1,11 +1,11 @@
1
1
  import { selectVariants } from '@tecsinapse/cortex-core';
2
2
  import React__default, { useContext } from 'react';
3
- import { Select } from './index.js';
4
3
  import '@internationalized/date';
5
4
  import 'react-aria';
6
5
  import 'react-stately';
7
6
  import '@floating-ui/react';
8
7
  import { useSelectOptions } from '../../hooks/useSelectOptions.js';
8
+ import { SelectMultiOption } from './MultiOption.js';
9
9
  import { SkeletonOptions } from './SkeletonOptions.js';
10
10
  import { SelectContext, SelectMultiOptionsContext } from './context.js';
11
11
  import { handleSelectMulti } from './utils.js';
@@ -19,7 +19,7 @@ const SelectMultiOptions = ({
19
19
  const { keyExtractor, value: currentValue = [] } = useContext(SelectContext);
20
20
  const { options: _options, isLoading } = useSelectOptions({ options });
21
21
  return /* @__PURE__ */ React__default.createElement(SelectMultiOptionsContext.Provider, { value: { onSelect, options: _options } }, isLoading ? /* @__PURE__ */ React__default.createElement(SkeletonOptions, null) : /* @__PURE__ */ React__default.createElement("ul", { role: "select", className: list() }, children, _options?.map((option) => /* @__PURE__ */ React__default.createElement(
22
- Select.MultiOption,
22
+ SelectMultiOption,
23
23
  {
24
24
  option,
25
25
  key: keyExtractor(option),
@@ -1,12 +1,12 @@
1
1
  import { selectVariants } from '@tecsinapse/cortex-core';
2
2
  import React__default, { useContext, useCallback } from 'react';
3
- import { Select } from './index.js';
4
3
  import '@internationalized/date';
5
4
  import 'react-aria';
6
5
  import 'react-stately';
7
6
  import '@floating-ui/react';
8
7
  import { useSelectOptions } from '../../hooks/useSelectOptions.js';
9
8
  import { usePopoverContext } from '../Popover/Context.js';
9
+ import { SelectOption } from './Option.js';
10
10
  import { SkeletonOptions } from './SkeletonOptions.js';
11
11
  import { SelectContext } from './context.js';
12
12
 
@@ -26,7 +26,7 @@ const SelectOptions = ({
26
26
  [onSelect]
27
27
  );
28
28
  return isLoading ? /* @__PURE__ */ React__default.createElement(SkeletonOptions, null) : /* @__PURE__ */ React__default.createElement("ul", { role: "select", className: list() }, _options?.map((option) => /* @__PURE__ */ React__default.createElement(
29
- Select.Option,
29
+ SelectOption,
30
30
  {
31
31
  option,
32
32
  key: keyExtractor(option),
@@ -28,4 +28,5 @@ export interface Mask extends Record<string, any> {
28
28
  export interface InputMaskProps extends Omit<InputProps, 'onChange'> {
29
29
  onChange?: (e: InputMaskEvent) => void;
30
30
  mask: Mask;
31
+ controlled?: boolean;
31
32
  }
@@ -1,2 +1,2 @@
1
- import { SelectGroupedOptionsProps } from '.';
1
+ import { SelectGroupedOptionsProps } from './types';
2
2
  export declare const SelectGroupedOptions: <T>({ onSelect, groupedLabelExtractor, options, }: SelectGroupedOptionsProps<T>) => JSX.Element;
@@ -1,2 +1,2 @@
1
- import { SelectMultiGroupedOptionsProps } from '.';
1
+ import { SelectMultiGroupedOptionsProps } from './types';
2
2
  export declare const SelectMultiGroupedOptions: <T>({ onSelect, groupedLabelExtractor, options, children, }: SelectMultiGroupedOptionsProps<T>) => JSX.Element;
@@ -1,2 +1,2 @@
1
- import { SelectMultiOptionsProps } from '.';
1
+ import { SelectMultiOptionsProps } from './types';
2
2
  export declare const SelectMultiOptions: <T>({ onSelect, options, children, }: SelectMultiOptionsProps<T>) => JSX.Element;
@@ -1,2 +1,2 @@
1
- import { SelectOptionsProps } from '.';
1
+ import { SelectOptionsProps } from './types';
2
2
  export declare const SelectOptions: <T>({ onSelect, options, }: SelectOptionsProps<T>) => JSX.Element;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tecsinapse/cortex-react",
3
- "version": "1.3.0-beta.32",
3
+ "version": "1.3.0-beta.33",
4
4
  "description": "React components based in @tecsinapse/cortex-core",
5
5
  "license": "MIT",
6
6
  "main": "dist/esm/index.js",
@@ -43,5 +43,5 @@
43
43
  "react-dom": ">=18.0.0",
44
44
  "tailwind": ">=3.3.0"
45
45
  },
46
- "gitHead": "887cc981e62ebd4903b7d389fdec02d705eda97e"
46
+ "gitHead": "f996aec807a7de3b51e645fe600c9e976369b35b"
47
47
  }