@mindlogic-ai/logician-ui 2.0.0-alpha.13 → 2.0.0-alpha.14
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/dist/index.d.mts +42 -23
- package/dist/index.d.ts +42 -23
- package/dist/index.js +118 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +119 -7
- package/dist/index.mjs.map +1 -1
- package/package.json +5 -4
- package/src/index.ts +1 -0
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __commonJS, Icon, Text, __require, theme_default, __toESM, useTranslate, IconTypes, IconButton, Code, Card, H5, H1, Subtitle, H4, Subtext, Tooltip as Tooltip$1 } from './chunk-4E3NQZID.mjs';
|
|
1
|
+
import { __commonJS, Icon, Text, __require, theme_default, __toESM, useTranslate, IconTypes, IconButton, Code, Card, H5, H1, Subtitle, H4, Subtext, H3, H2, Link, Tooltip as Tooltip$1 } from './chunk-4E3NQZID.mjs';
|
|
2
2
|
export { Card, Code, ExpandingTr, H1, H2, H3, H4, H5, Icon, IconButton, IconTypes, InlineCode, Link, Markdown, SegmentedControl, Subtext, Subtitle, Table, TableContainer, Tbody, Td, Text, Th, Thead, Tooltip, Tr, baseMarkdownComponents } from './chunk-4E3NQZID.mjs';
|
|
3
3
|
import { Avatar as Avatar$1, Badge as Badge$1, Box, Flex, Breadcrumb as Breadcrumb$1, BreadcrumbItem as BreadcrumbItem$1, BreadcrumbLink as BreadcrumbLink$1, useTheme, useToken, Button as Button$1, Checkbox as Checkbox$1, Spinner as Spinner$1, Input, FormControl as FormControl$1, InputGroup, InputLeftElement, InputRightElement, Radio as Radio$1, RadioGroup as RadioGroup$1, Stack, Slider as Slider$1, SliderFilledTrack as SliderFilledTrack$1, SliderMark as SliderMark$1, SliderThumb as SliderThumb$1, SliderTrack as SliderTrack$1, Tag as Tag$1, TagCloseButton as TagCloseButton$1, TagLabel as TagLabel$1, TagLeftIcon as TagLeftIcon$1, TagRightIcon as TagRightIcon$1, forwardRef as forwardRef$1, Textarea as Textarea$1, InputLeftAddon, Accordion as Accordion$1, AccordionButton as AccordionButton$1, AccordionIcon, AccordionItem as AccordionItem$1, Alert as Alert$1, AlertIcon, CloseButton, useBreakpointValue, HStack, ModalOverlay as ModalOverlay$1, Modal as Modal$1, ModalBody as ModalBody$1, ModalCloseButton as ModalCloseButton$1, ModalContent as ModalContent$1, ModalFooter as ModalFooter$1, ModalHeader as ModalHeader$1, Image, Tab as Tab$1, TabList as TabList$1, TabPanel as TabPanel$1, TabPanels as TabPanels$1, Tabs as Tabs$1, Container as Container$1, useToast as useToast$1, Editable, EditablePreview, EditableInput, Tooltip, VStack, Progress, List, FormLabel as FormLabel$1, Portal, Popover, PopoverTrigger, PopoverContent, PopoverArrow, PopoverCloseButton, PopoverBody, ChakraProvider, Grid, MenuButton as MenuButton$1, MenuItem as MenuItem$1, MenuList as MenuList$1, useDisclosure, Switch as Switch$1 } from '@chakra-ui/react';
|
|
4
4
|
export { AccordionPanel, Menu } from '@chakra-ui/react';
|
|
@@ -197,7 +197,7 @@ var require_react_is_development = __commonJS({
|
|
|
197
197
|
var ContextProvider = REACT_PROVIDER_TYPE;
|
|
198
198
|
var Element = REACT_ELEMENT_TYPE;
|
|
199
199
|
var ForwardRef = REACT_FORWARD_REF_TYPE;
|
|
200
|
-
var
|
|
200
|
+
var Fragment5 = REACT_FRAGMENT_TYPE;
|
|
201
201
|
var Lazy = REACT_LAZY_TYPE;
|
|
202
202
|
var Memo = REACT_MEMO_TYPE;
|
|
203
203
|
var Portal4 = REACT_PORTAL_TYPE;
|
|
@@ -256,7 +256,7 @@ var require_react_is_development = __commonJS({
|
|
|
256
256
|
exports.ContextProvider = ContextProvider;
|
|
257
257
|
exports.Element = Element;
|
|
258
258
|
exports.ForwardRef = ForwardRef;
|
|
259
|
-
exports.Fragment =
|
|
259
|
+
exports.Fragment = Fragment5;
|
|
260
260
|
exports.Lazy = Lazy;
|
|
261
261
|
exports.Memo = Memo;
|
|
262
262
|
exports.Portal = Portal4;
|
|
@@ -468,7 +468,7 @@ var require_factoryWithTypeCheckers = __commonJS({
|
|
|
468
468
|
function emptyFunctionThatReturnsNull() {
|
|
469
469
|
return null;
|
|
470
470
|
}
|
|
471
|
-
module.exports = function(
|
|
471
|
+
module.exports = function(isValidElement3, throwOnDirectAccess) {
|
|
472
472
|
var ITERATOR_SYMBOL = typeof Symbol === "function" && Symbol.iterator;
|
|
473
473
|
var FAUX_ITERATOR_SYMBOL = "@@iterator";
|
|
474
474
|
function getIteratorFn(maybeIterable) {
|
|
@@ -596,7 +596,7 @@ var require_factoryWithTypeCheckers = __commonJS({
|
|
|
596
596
|
function createElementTypeChecker() {
|
|
597
597
|
function validate(props, propName, componentName, location, propFullName) {
|
|
598
598
|
var propValue = props[propName];
|
|
599
|
-
if (!
|
|
599
|
+
if (!isValidElement3(propValue)) {
|
|
600
600
|
var propType = getPropType(propValue);
|
|
601
601
|
return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected a single ReactElement."));
|
|
602
602
|
}
|
|
@@ -784,7 +784,7 @@ var require_factoryWithTypeCheckers = __commonJS({
|
|
|
784
784
|
if (Array.isArray(propValue)) {
|
|
785
785
|
return propValue.every(isNode);
|
|
786
786
|
}
|
|
787
|
-
if (propValue === null ||
|
|
787
|
+
if (propValue === null || isValidElement3(propValue)) {
|
|
788
788
|
return true;
|
|
789
789
|
}
|
|
790
790
|
var iteratorFn = getIteratorFn(propValue);
|
|
@@ -2781,6 +2781,118 @@ User Agent: ${errorInfo.userAgent}`;
|
|
|
2781
2781
|
}
|
|
2782
2782
|
);
|
|
2783
2783
|
}
|
|
2784
|
+
var getTextContent = (node) => {
|
|
2785
|
+
if (typeof node === "string" || typeof node === "number") {
|
|
2786
|
+
return String(node);
|
|
2787
|
+
}
|
|
2788
|
+
if (Array.isArray(node)) {
|
|
2789
|
+
return node.map(getTextContent).join("");
|
|
2790
|
+
}
|
|
2791
|
+
if (isValidElement(node)) {
|
|
2792
|
+
return getTextContent(node.props.children);
|
|
2793
|
+
}
|
|
2794
|
+
return "";
|
|
2795
|
+
};
|
|
2796
|
+
var truncateReactNode = (node, charLimit, currentLength = 0) => {
|
|
2797
|
+
if (currentLength >= charLimit) {
|
|
2798
|
+
return { truncated: null, length: currentLength };
|
|
2799
|
+
}
|
|
2800
|
+
if (typeof node === "string" || typeof node === "number") {
|
|
2801
|
+
const text = String(node);
|
|
2802
|
+
const remainingChars = charLimit - currentLength;
|
|
2803
|
+
if (text.length <= remainingChars) {
|
|
2804
|
+
return { truncated: node, length: currentLength + text.length };
|
|
2805
|
+
}
|
|
2806
|
+
return {
|
|
2807
|
+
truncated: text.slice(0, remainingChars) + "\u2026",
|
|
2808
|
+
length: charLimit
|
|
2809
|
+
};
|
|
2810
|
+
}
|
|
2811
|
+
if (Array.isArray(node)) {
|
|
2812
|
+
const truncatedChildren = [];
|
|
2813
|
+
let totalLength = currentLength;
|
|
2814
|
+
for (const child of node) {
|
|
2815
|
+
if (totalLength >= charLimit) break;
|
|
2816
|
+
const { truncated, length } = truncateReactNode(
|
|
2817
|
+
child,
|
|
2818
|
+
charLimit,
|
|
2819
|
+
totalLength
|
|
2820
|
+
);
|
|
2821
|
+
if (truncated !== null) {
|
|
2822
|
+
truncatedChildren.push(truncated);
|
|
2823
|
+
}
|
|
2824
|
+
totalLength = length;
|
|
2825
|
+
}
|
|
2826
|
+
return { truncated: truncatedChildren, length: totalLength };
|
|
2827
|
+
}
|
|
2828
|
+
if (isValidElement(node)) {
|
|
2829
|
+
const { truncated: truncatedChildren, length } = truncateReactNode(
|
|
2830
|
+
node.props.children,
|
|
2831
|
+
charLimit,
|
|
2832
|
+
currentLength
|
|
2833
|
+
);
|
|
2834
|
+
if (truncatedChildren === null) {
|
|
2835
|
+
return { truncated: null, length };
|
|
2836
|
+
}
|
|
2837
|
+
return {
|
|
2838
|
+
truncated: {
|
|
2839
|
+
...node,
|
|
2840
|
+
props: {
|
|
2841
|
+
...node.props,
|
|
2842
|
+
children: truncatedChildren
|
|
2843
|
+
}
|
|
2844
|
+
},
|
|
2845
|
+
length
|
|
2846
|
+
};
|
|
2847
|
+
}
|
|
2848
|
+
return { truncated: node, length: currentLength };
|
|
2849
|
+
};
|
|
2850
|
+
var useExpandableText = (children, charLimit = 100) => {
|
|
2851
|
+
const [isExpanded, setIsExpanded] = useState(false);
|
|
2852
|
+
const textContent = useMemo(() => getTextContent(children), [children]);
|
|
2853
|
+
const isLong = textContent.length > charLimit;
|
|
2854
|
+
const displayText = useMemo(() => {
|
|
2855
|
+
if (isExpanded || !isLong) return children;
|
|
2856
|
+
const { truncated } = truncateReactNode(children, charLimit);
|
|
2857
|
+
return truncated;
|
|
2858
|
+
}, [isExpanded, isLong, children, charLimit]);
|
|
2859
|
+
const handleToggle = useCallback((event) => {
|
|
2860
|
+
event.preventDefault();
|
|
2861
|
+
event.stopPropagation();
|
|
2862
|
+
setIsExpanded((prev) => !prev);
|
|
2863
|
+
}, []);
|
|
2864
|
+
return { isExpanded, isLong, displayText, handleToggle };
|
|
2865
|
+
};
|
|
2866
|
+
var TEXT_COMPONENTS = {
|
|
2867
|
+
Text,
|
|
2868
|
+
Subtitle,
|
|
2869
|
+
Subtext,
|
|
2870
|
+
H1,
|
|
2871
|
+
H2,
|
|
2872
|
+
H3,
|
|
2873
|
+
H4,
|
|
2874
|
+
H5
|
|
2875
|
+
};
|
|
2876
|
+
var ExpandableText = ({
|
|
2877
|
+
charLimit = 100,
|
|
2878
|
+
component = "Text",
|
|
2879
|
+
children,
|
|
2880
|
+
...rest
|
|
2881
|
+
}) => {
|
|
2882
|
+
const translate = useTranslate();
|
|
2883
|
+
const { displayText, isLong, isExpanded, handleToggle } = useExpandableText(
|
|
2884
|
+
children,
|
|
2885
|
+
charLimit
|
|
2886
|
+
);
|
|
2887
|
+
const Component = TEXT_COMPONENTS[component];
|
|
2888
|
+
return /* @__PURE__ */ jsxs(Component, { ...rest, children: [
|
|
2889
|
+
displayText,
|
|
2890
|
+
isLong && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2891
|
+
" ",
|
|
2892
|
+
/* @__PURE__ */ jsx(Link, { as: "button", onClick: handleToggle, "aria-expanded": isExpanded, children: isExpanded ? translate("see_less") : translate("see_more") })
|
|
2893
|
+
] })
|
|
2894
|
+
] });
|
|
2895
|
+
};
|
|
2784
2896
|
var Spinner = forwardRef(
|
|
2785
2897
|
({ ...rest }, ref) => {
|
|
2786
2898
|
return /* @__PURE__ */ jsx(
|
|
@@ -5671,6 +5783,6 @@ object-assign/index.js:
|
|
|
5671
5783
|
*)
|
|
5672
5784
|
*/
|
|
5673
5785
|
|
|
5674
|
-
export { Accordion, AccordionButton, AccordionItem, Alert, AutosizeTextarea, AutowidthInput, Avatar, Badge, Banner, Breadcrumb, BreadcrumbItem, BreadcrumbLink, Button, Carousel, CarouselModal, Checkbox, Chip, ChipButton, CodeTabs, Container, CopyableCode, CrossPageToasts, DataField, ErrorFallback, FileInput, FileItem, FileList, FormControl, FormLabel, GuideCue, GuideCueProvider, InfoSprinkle, Input3 as Input, LineGraph, LogicianProvider, MDXEditor, MONTHS, Masonry, MaxLengthIndicator, MenuButton, MenuItem, MenuList, Modal, ModalBody, ModalCloseButton, ModalContent, ModalFooter, ModalHeader, ModalOverlay, MonthPicker, PageLoader, Pagination, PasswordInput, PinInput, ProgressBar, ProgressSegment, RadialProgress_default as RadialProgress, Radio, RadioGroup, RangeDatePicker, SectionLoader, SeeMoreButton, SegmentedProgressBar, Select, SingleDatePicker, Slider, SliderFilledTrack, SliderMark, SliderThumb, SliderTrack, Spinner, Switch, Tab, TabList, TabPanel, TabPanels, Tabs, Tag, TagCloseButton, TagLabel, TagLeftIcon, TagRightIcon, Textarea, Toast, UrlInput, baseStyles as badgeStyles, getContainerWidth, getDateFnsLocale, getDefaultDateFormat, getMonthNames, toastStyles, useCaseStyles, useToast, variantStyles };
|
|
5786
|
+
export { Accordion, AccordionButton, AccordionItem, Alert, AutosizeTextarea, AutowidthInput, Avatar, Badge, Banner, Breadcrumb, BreadcrumbItem, BreadcrumbLink, Button, Carousel, CarouselModal, Checkbox, Chip, ChipButton, CodeTabs, Container, CopyableCode, CrossPageToasts, DataField, ErrorFallback, ExpandableText, FileInput, FileItem, FileList, FormControl, FormLabel, GuideCue, GuideCueProvider, InfoSprinkle, Input3 as Input, LineGraph, LogicianProvider, MDXEditor, MONTHS, Masonry, MaxLengthIndicator, MenuButton, MenuItem, MenuList, Modal, ModalBody, ModalCloseButton, ModalContent, ModalFooter, ModalHeader, ModalOverlay, MonthPicker, PageLoader, Pagination, PasswordInput, PinInput, ProgressBar, ProgressSegment, RadialProgress_default as RadialProgress, Radio, RadioGroup, RangeDatePicker, SectionLoader, SeeMoreButton, SegmentedProgressBar, Select, SingleDatePicker, Slider, SliderFilledTrack, SliderMark, SliderThumb, SliderTrack, Spinner, Switch, Tab, TabList, TabPanel, TabPanels, Tabs, Tag, TagCloseButton, TagLabel, TagLeftIcon, TagRightIcon, Textarea, Toast, UrlInput, baseStyles as badgeStyles, getContainerWidth, getDateFnsLocale, getDefaultDateFormat, getMonthNames, toastStyles, useCaseStyles, useToast, variantStyles };
|
|
5675
5787
|
//# sourceMappingURL=index.mjs.map
|
|
5676
5788
|
//# sourceMappingURL=index.mjs.map
|