@bigbinary/neeto-molecules 1.15.23 → 1.15.24-beta
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/Builder.js +90 -22
- package/dist/Builder.js.map +1 -1
- package/dist/Settings.js +42 -12
- package/dist/Settings.js.map +1 -1
- package/dist/cjs/Builder.js +90 -22
- package/dist/cjs/Builder.js.map +1 -1
- package/dist/cjs/Settings.js +41 -11
- package/dist/cjs/Settings.js.map +1 -1
- package/package.json +1 -1
- package/types/Builder.d.ts +8 -2
- package/types/Settings.d.ts +11 -9
package/dist/cjs/Settings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Settings.js","sources":["../../src/components/Settings/constants.js","../../src/components/Settings/Item.jsx","../../src/components/Settings/Category.jsx","../../src/components/Settings/utils.js","../../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\"];\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n dataCy,\n className = \"\",\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col border p-6 no-underline outline-none transition-colors\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div data-testid={`settings-item-${joinHyphenCase(label)}`}>\n {Icon && <Icon className=\"neeto-ui-text-gray-600 mb-4\" size={32} />}\n <Typography\n className=\"mb-2\"\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport IntegrationCard from \"components/IntegrationCard\";\n\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationCard : Item;\n\n return (\n <div {...{ id }} className=\"flex flex-col py-6\">\n <Typography\n className=\"mb-6\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <div className=\"grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({ isTitleHidden = false, categories = [] }) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={{\n className: \"w-72\",\n placeholder: t(\"neetoMolecules.settingsPage.placeholder.search\"),\n }}\n />\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full space-y-12\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","dataCy","_ref$className","className","otherProps","_objectWithoutProperties","_excluded","React","createElement","Link","_extends","to","classnames","omit","concat","joinHyphenCase","size","Typography","style","weight","memo","withRouter","Category","items","id","isIntegration","SettingsCard","IntegrationCard","component","map","item","key","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","_objectSpread","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","useEffect","classNames","Header","title","searchProps","placeholder","isEmpty","NoData"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Settings.js","sources":["../../src/components/Settings/constants.js","../../src/components/Settings/Item.jsx","../../src/components/Settings/IntegrationItem.jsx","../../src/components/Settings/Category.jsx","../../src/components/Settings/utils.js","../../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n dataCy,\n className = \"\",\n children,\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-border-gray-300 neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col space-y-2 border p-6 no-underline outline-none transition-colors\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div data-testid={`settings-item-${joinHyphenCase(label)}`}>\n {Icon && <Icon className=\"neeto-ui-text-gray-600 mb-4\" size={32} />}\n <Typography\n className=\"mb-2\"\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import React from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataCy={`${hyphenate(label)}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-cy=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default React.memo(IntegrationItem);\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n return (\n <div {...{ id }} className=\"flex flex-col py-6\">\n <Typography\n className=\"mb-6\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n <div className=\"grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({ isTitleHidden = false, categories = [] }) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={{\n className: \"w-72\",\n placeholder: t(\"neetoMolecules.settingsPage.placeholder.search\"),\n }}\n />\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full space-y-12\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","dataCy","_ref$className","className","children","otherProps","_objectWithoutProperties","_excluded","React","createElement","Link","_extends","to","classnames","omit","concat","joinHyphenCase","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","_objectSpread","hyphenate","Tag","Check","Category","items","id","isIntegration","SettingsCard","component","map","item","key","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","useEffect","classNames","Header","title","searchProps","placeholder","isEmpty","NoData"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "1.15.
|
|
3
|
+
"version": "1.15.24-beta",
|
|
4
4
|
"description": "A package of reusable molecular components for neeto products.",
|
|
5
5
|
"repository": "git@github.com:bigbinary/neeto-molecules.git",
|
|
6
6
|
"author": "Amaljith K <amaljith.k@bigbinary.com>",
|
package/types/Builder.d.ts
CHANGED
|
@@ -37,6 +37,7 @@ export
|
|
|
37
37
|
* ElementsPanel,
|
|
38
38
|
* PropertiesPanel,
|
|
39
39
|
* } from "@bigbinary/neeto-molecules/Builder";
|
|
40
|
+
* import Configure from "./Configure";
|
|
40
41
|
*
|
|
41
42
|
* const Component = () => (
|
|
42
43
|
* <Container isHeaderFixed>
|
|
@@ -63,8 +64,11 @@ export
|
|
|
63
64
|
* },
|
|
64
65
|
* ]}
|
|
65
66
|
* />
|
|
66
|
-
* <PropertiesPanel
|
|
67
|
-
*
|
|
67
|
+
* <PropertiesPanel
|
|
68
|
+
* onClose={id => alert("The panel is closed :", id)}
|
|
69
|
+
* id={selectedRecord.id}
|
|
70
|
+
* >
|
|
71
|
+
* {selectedRecord.id ? <Configure /> : <PropertiesPanel.EmptyProperty />}
|
|
68
72
|
* </PropertiesPanel>
|
|
69
73
|
* </div>
|
|
70
74
|
* </Container>
|
|
@@ -93,4 +97,6 @@ const ElementsPanel: React.FC<{
|
|
|
93
97
|
}>;
|
|
94
98
|
export const PropertiesPanel: React.FC<{
|
|
95
99
|
children: React.ReactNode;
|
|
100
|
+
id: string;
|
|
101
|
+
onClose?: (id: string) => void;
|
|
96
102
|
}>;
|
package/types/Settings.d.ts
CHANGED
|
@@ -2,8 +2,13 @@ import React, { ReactNode } from "react";
|
|
|
2
2
|
import { IntegrationCardProps } from "./IntegrationCard";
|
|
3
3
|
type SettingItem = {
|
|
4
4
|
label: string;
|
|
5
|
+
description: string;
|
|
5
6
|
path: string;
|
|
6
|
-
|
|
7
|
+
children: ReactNode;
|
|
8
|
+
icon: ReactNode;
|
|
9
|
+
dataCy?: string;
|
|
10
|
+
isConnected?: boolean;
|
|
11
|
+
};
|
|
7
12
|
type SettingCategory = {
|
|
8
13
|
id: string;
|
|
9
14
|
label: string;
|
|
@@ -44,13 +49,10 @@ type SettingCategory = {
|
|
|
44
49
|
* {
|
|
45
50
|
* label: 'Github',
|
|
46
51
|
* description: 'Connect with github',
|
|
47
|
-
* icon: GithubIcon
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
* ...
|
|
52
|
-
* //rest of the props for IntegrationCard should be passed here.
|
|
53
|
-
* // other props will be passed on to the integration card.
|
|
52
|
+
* icon: GithubIcon,
|
|
53
|
+
* path: routes.settings.integrations.github.index,
|
|
54
|
+
* isConnected: true,
|
|
55
|
+
* // other props will be spread on the Link element in the settings card.
|
|
54
56
|
* }
|
|
55
57
|
* ],
|
|
56
58
|
* },
|
|
@@ -81,7 +83,7 @@ type SettingCategory = {
|
|
|
81
83
|
*
|
|
82
84
|
* return (
|
|
83
85
|
* <div>
|
|
84
|
-
* <Settings categories={getCategories(
|
|
86
|
+
* <Settings categories={getCategories()} />
|
|
85
87
|
* <IntegrationModal isOpen={isOpen}>
|
|
86
88
|
* </div>
|
|
87
89
|
* );
|