@bigbinary/neeto-github-frontend 3.0.0 → 3.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/app/javascript/src/translations/en.json +1 -0
  3. package/dist/.ready +1 -1
  4. package/dist/NeetoGithubNanoContainer.js +445 -21
  5. package/dist/NeetoGithubNanoContainer.js.map +1 -1
  6. package/dist/NeetoGithubNanoPane.js +3 -4
  7. package/dist/NeetoGithubNanoPane.js.map +1 -1
  8. package/dist/NeetoGithubRepositoryConnectionCard.js +3 -1
  9. package/dist/NeetoGithubRepositoryConnectionCard.js.map +1 -1
  10. package/dist/cjs/NeetoGithubNanoContainer.js +445 -25
  11. package/dist/cjs/NeetoGithubNanoContainer.js.map +1 -1
  12. package/dist/cjs/NeetoGithubNanoPane.js +4 -5
  13. package/dist/cjs/NeetoGithubNanoPane.js.map +1 -1
  14. package/dist/cjs/NeetoGithubRepositoryConnectionCard.js +3 -1
  15. package/dist/cjs/NeetoGithubRepositoryConnectionCard.js.map +1 -1
  16. package/dist/cjs/index.js +4 -2
  17. package/dist/cjs/index.js.map +1 -1
  18. package/dist/cjs/v2/NeetoGithubIntegrationsTable.js +157 -0
  19. package/dist/cjs/v2/NeetoGithubIntegrationsTable.js.map +1 -0
  20. package/dist/{index-DBol23Bj.js → cjs/v2/NeetoGithubNanoContainer.js} +231 -169
  21. package/dist/cjs/v2/NeetoGithubNanoContainer.js.map +1 -0
  22. package/dist/cjs/v2/NeetoGithubNanoPane.js +126 -0
  23. package/dist/cjs/v2/NeetoGithubNanoPane.js.map +1 -0
  24. package/dist/cjs/v2/NeetoGithubRepositoryConnectionCard.js +179 -0
  25. package/dist/cjs/v2/NeetoGithubRepositoryConnectionCard.js.map +1 -0
  26. package/dist/cjs/v2/hooks.js +18 -0
  27. package/dist/cjs/v2/hooks.js.map +1 -0
  28. package/dist/cjs/v2/index.js +53 -0
  29. package/dist/cjs/v2/index.js.map +1 -0
  30. package/dist/index.js +3 -1
  31. package/dist/index.js.map +1 -1
  32. package/dist/pane-CPRRz6tU.js +5 -0
  33. package/dist/pane-CPRRz6tU.js.map +1 -0
  34. package/dist/pane-DRsC3fwq.js +7 -0
  35. package/dist/pane-DRsC3fwq.js.map +1 -0
  36. package/dist/repository-tile-DxVqVMYY.js +7 -0
  37. package/dist/repository-tile-DxVqVMYY.js.map +1 -0
  38. package/dist/repository-tile-fB8WFACw.js +9 -0
  39. package/dist/repository-tile-fB8WFACw.js.map +1 -0
  40. package/dist/v2/NeetoGithubIntegrationsTable.js +155 -0
  41. package/dist/v2/NeetoGithubIntegrationsTable.js.map +1 -0
  42. package/dist/{index-CEPyKY_r.js → v2/NeetoGithubNanoContainer.js} +222 -159
  43. package/dist/v2/NeetoGithubNanoContainer.js.map +1 -0
  44. package/dist/v2/NeetoGithubNanoPane.js +105 -0
  45. package/dist/v2/NeetoGithubNanoPane.js.map +1 -0
  46. package/dist/v2/NeetoGithubRepositoryConnectionCard.js +177 -0
  47. package/dist/v2/NeetoGithubRepositoryConnectionCard.js.map +1 -0
  48. package/dist/v2/hooks.js +10 -0
  49. package/dist/v2/hooks.js.map +1 -0
  50. package/dist/v2/index.js +41 -0
  51. package/dist/v2/index.js.map +1 -0
  52. package/package.json +28 -16
  53. package/dist/index-CEPyKY_r.js.map +0 -1
  54. package/dist/index-DBol23Bj.js.map +0 -1
@@ -0,0 +1,155 @@
1
+ import { Typography, Empty, DataTable, Alert, Button } from '@bigbinary/neeto-atoms';
2
+ import Container from '@bigbinary/neeto-molecules/v2/Container';
3
+ import Header from '@bigbinary/neeto-molecules/v2/Header';
4
+ import PageLoader from '@bigbinary/neeto-molecules/v2/PageLoader';
5
+ import { useTranslation, Trans } from 'react-i18next';
6
+ import { N as NEETO_GITHUB_ENGINE_BASE_URL, u as useDestroyGithubIntegration, a as useFetchGithubAppInstallations } from '../useGithubAccountsApi-Csym3TIW.js';
7
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
8
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
9
+ import { useState } from 'react';
10
+ import { isNotEmpty } from '@bigbinary/neeto-cist';
11
+ import { isEmpty } from 'ramda';
12
+ import { t } from 'i18next';
13
+ import { buildUrl } from '@bigbinary/neeto-commons-frontend/v2/utils';
14
+ import MoreDropdown from '@bigbinary/neeto-molecules/v2/MoreDropdown';
15
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
16
+ import '@babel/runtime/helpers/toConsumableArray';
17
+ import '@tanstack/react-query';
18
+ import '@bigbinary/neeto-commons-frontend/initializers';
19
+ import '@bigbinary/neeto-commons-frontend/react-utils';
20
+ import 'axios';
21
+ import '@bigbinary/neeto-commons-frontend/constants';
22
+
23
+ function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25
+ var getNewInstallationUrl = function getNewInstallationUrl(integratorParams, redirectPath) {
26
+ return buildUrl("".concat(NEETO_GITHUB_ENGINE_BASE_URL, "/app_installations/new"), _objectSpread$1(_objectSpread$1({}, integratorParams), {}, {
27
+ redirectPath: redirectPath
28
+ }));
29
+ };
30
+ var getGithubAccountsTableColumnData = function getGithubAccountsTableColumnData(_ref) {
31
+ var setAccountToDisconnect = _ref.setAccountToDisconnect;
32
+ return [{
33
+ id: "actions",
34
+ header: t("neetoGithub.account"),
35
+ cell: function cell(_ref2) {
36
+ var row = _ref2.row;
37
+ var account = row.original;
38
+ return /*#__PURE__*/jsxs("div", {
39
+ className: "flex items-center justify-between gap-x-3",
40
+ children: [/*#__PURE__*/jsx(Typography, {
41
+ children: account.accountLogin
42
+ }), /*#__PURE__*/jsx(MoreDropdown, {
43
+ menuItems: [{
44
+ key: "delete",
45
+ label: t("neetoGithub.actions.delete"),
46
+ onClick: function onClick() {
47
+ return setAccountToDisconnect(account);
48
+ }
49
+ }]
50
+ })]
51
+ });
52
+ }
53
+ }];
54
+ };
55
+
56
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
57
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
58
+ var AccountsTable = function AccountsTable(_ref) {
59
+ var _ref$appInstallations = _ref.appInstallations,
60
+ appInstallations = _ref$appInstallations === void 0 ? [] : _ref$appInstallations,
61
+ integratorParams = _ref.integratorParams,
62
+ keysToPurgeOnDelete = _ref.keysToPurgeOnDelete,
63
+ noDataProps = _ref.noDataProps;
64
+ var _useTranslation = useTranslation(),
65
+ t = _useTranslation.t;
66
+ var _useState = useState({}),
67
+ _useState2 = _slicedToArray(_useState, 2),
68
+ accountToDisconnect = _useState2[0],
69
+ setAccountToDisconnect = _useState2[1];
70
+ var _useDestroyGithubInte = useDestroyGithubIntegration(integratorParams, keysToPurgeOnDelete, {
71
+ onSuccess: function onSuccess() {
72
+ return setAccountToDisconnect({});
73
+ }
74
+ }),
75
+ deleteGithubAccount = _useDestroyGithubInte.mutate,
76
+ isDeleting = _useDestroyGithubInte.isPending;
77
+ if (isEmpty(appInstallations)) {
78
+ return /*#__PURE__*/jsx("div", {
79
+ className: "flex h-full w-full items-center justify-center",
80
+ children: /*#__PURE__*/jsx(Empty, _objectSpread({
81
+ title: t("neetoGithub.integrationTable.noIntegrationFound")
82
+ }, noDataProps))
83
+ });
84
+ }
85
+ return /*#__PURE__*/jsxs(Fragment, {
86
+ children: [/*#__PURE__*/jsx(DataTable, {
87
+ data: appInstallations,
88
+ columns: getGithubAccountsTableColumnData({
89
+ setAccountToDisconnect: setAccountToDisconnect
90
+ })
91
+ }), /*#__PURE__*/jsx(Alert, {
92
+ isOpen: isNotEmpty(accountToDisconnect),
93
+ isSubmitting: isDeleting,
94
+ submitButtonLabel: t("neetoGithub.disconnectGitHub"),
95
+ title: t("neetoGithub.integrationTable.alert.title"),
96
+ message: /*#__PURE__*/jsx(Trans, {
97
+ i18nKey: "neetoGithub.integrationTable.alert.message",
98
+ values: {
99
+ login: accountToDisconnect === null || accountToDisconnect === void 0 ? void 0 : accountToDisconnect.accountLogin
100
+ }
101
+ }),
102
+ onClose: function onClose() {
103
+ return setAccountToDisconnect({});
104
+ },
105
+ onSubmit: function onSubmit() {
106
+ return deleteGithubAccount(accountToDisconnect === null || accountToDisconnect === void 0 ? void 0 : accountToDisconnect.id);
107
+ }
108
+ })]
109
+ });
110
+ };
111
+
112
+ var NeetoGithubIntegrationsTable = function NeetoGithubIntegrationsTable(_ref) {
113
+ var _ref$breadcrumbs = _ref.breadcrumbs,
114
+ breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
115
+ integratorParams = _ref.integratorParams,
116
+ redirectPath = _ref.redirectPath,
117
+ _ref$keysToPurgeOnDel = _ref.keysToPurgeOnDelete,
118
+ keysToPurgeOnDelete = _ref$keysToPurgeOnDel === void 0 ? [] : _ref$keysToPurgeOnDel,
119
+ _ref$titleHelpPopover = _ref.titleHelpPopoverProps,
120
+ titleHelpPopoverProps = _ref$titleHelpPopover === void 0 ? {} : _ref$titleHelpPopover,
121
+ _ref$noDataProps = _ref.noDataProps,
122
+ noDataProps = _ref$noDataProps === void 0 ? {} : _ref$noDataProps;
123
+ var _useTranslation = useTranslation(),
124
+ t = _useTranslation.t;
125
+ var _useFetchGithubAppIns = useFetchGithubAppInstallations(integratorParams),
126
+ _useFetchGithubAppIns2 = _useFetchGithubAppIns.data,
127
+ appInstallations = _useFetchGithubAppIns2 === void 0 ? [] : _useFetchGithubAppIns2,
128
+ isLoading = _useFetchGithubAppIns.isLoading;
129
+ var newInstallationUrl = getNewInstallationUrl(integratorParams, redirectPath);
130
+ if (isLoading) {
131
+ return /*#__PURE__*/jsx("div", {
132
+ className: "flex h-screen w-screen items-center justify-center",
133
+ children: /*#__PURE__*/jsx(PageLoader, {})
134
+ });
135
+ }
136
+ return /*#__PURE__*/jsxs(Container, {
137
+ children: [/*#__PURE__*/jsx(Header, {
138
+ breadcrumbs: breadcrumbs,
139
+ titleHelpPopoverProps: titleHelpPopoverProps,
140
+ title: t("neetoGithub.github"),
141
+ actionBlock: /*#__PURE__*/jsx(Button, {
142
+ href: newInstallationUrl,
143
+ label: t("neetoGithub.connectGithub")
144
+ })
145
+ }), /*#__PURE__*/jsx(AccountsTable, {
146
+ appInstallations: appInstallations,
147
+ integratorParams: integratorParams,
148
+ keysToPurgeOnDelete: keysToPurgeOnDelete,
149
+ noDataProps: noDataProps
150
+ })]
151
+ });
152
+ };
153
+
154
+ export { NeetoGithubIntegrationsTable as default };
155
+ //# sourceMappingURL=NeetoGithubIntegrationsTable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NeetoGithubIntegrationsTable.js","sources":["../../app/javascript/src/v2/components/NeetoGithubIntegrationsTable/utils.jsx","../../app/javascript/src/v2/components/NeetoGithubIntegrationsTable/AccountsTable.jsx","../../app/javascript/src/v2/components/NeetoGithubIntegrationsTable/index.jsx"],"sourcesContent":["import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { buildUrl } from \"neetocommons/v2/utils\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\n\nimport { NEETO_GITHUB_ENGINE_BASE_URL } from \"src/constants\";\n\nexport const getNewInstallationUrl = (integratorParams, redirectPath) =>\n buildUrl(`${NEETO_GITHUB_ENGINE_BASE_URL}/app_installations/new`, {\n ...integratorParams,\n redirectPath,\n });\n\nexport const getGithubAccountsTableColumnData = ({\n setAccountToDisconnect,\n}) => [\n {\n id: \"actions\",\n header: t(\"neetoGithub.account\"),\n cell: ({ row }) => {\n const account = row.original;\n\n return (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography>{account.accountLogin}</Typography>\n <MoreDropdown\n menuItems={[\n {\n key: \"delete\",\n label: t(\"neetoGithub.actions.delete\"),\n onClick: () => setAccountToDisconnect(account),\n },\n ]}\n />\n </div>\n );\n },\n },\n];\n","import { useState } from \"react\";\n\nimport { Alert, DataTable, Empty } from \"@bigbinary/neeto-atoms\";\nimport { isNotEmpty } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport { useDestroyGithubIntegration } from \"hooks/reactQuery/useGithubAccountsApi\";\n\nimport { getGithubAccountsTableColumnData } from \"./utils\";\n\nconst AccountsTable = ({\n appInstallations = [],\n integratorParams,\n keysToPurgeOnDelete,\n noDataProps,\n}) => {\n const { t } = useTranslation();\n const [accountToDisconnect, setAccountToDisconnect] = useState({});\n\n const { mutate: deleteGithubAccount, isPending: isDeleting } =\n useDestroyGithubIntegration(integratorParams, keysToPurgeOnDelete, {\n onSuccess: () => setAccountToDisconnect({}),\n });\n\n if (isEmpty(appInstallations)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Empty\n title={t(\"neetoGithub.integrationTable.noIntegrationFound\")}\n {...noDataProps}\n />\n </div>\n );\n }\n\n return (\n <>\n <DataTable\n data={appInstallations}\n columns={getGithubAccountsTableColumnData({\n setAccountToDisconnect,\n })}\n />\n <Alert\n isOpen={isNotEmpty(accountToDisconnect)}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoGithub.disconnectGitHub\")}\n title={t(\"neetoGithub.integrationTable.alert.title\")}\n message={\n <Trans\n i18nKey=\"neetoGithub.integrationTable.alert.message\"\n values={{ login: accountToDisconnect?.accountLogin }}\n />\n }\n onClose={() => setAccountToDisconnect({})}\n onSubmit={() => deleteGithubAccount(accountToDisconnect?.id)}\n />\n </>\n );\n};\n\nexport default AccountsTable;\n","import { Button } from \"@bigbinary/neeto-atoms\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\nimport PageLoader from \"neetomolecules/v2/PageLoader\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchGithubAppInstallations } from \"hooks/reactQuery/useGithubAccountsApi\";\n\nimport AccountsTable from \"./AccountsTable\";\nimport { getNewInstallationUrl } from \"./utils\";\n\nconst NeetoGithubIntegrationsTable = ({\n breadcrumbs = [],\n integratorParams,\n redirectPath,\n keysToPurgeOnDelete = [],\n titleHelpPopoverProps = {},\n noDataProps = {},\n}) => {\n const { t } = useTranslation();\n\n const { data: appInstallations = [], isLoading } =\n useFetchGithubAppInstallations(integratorParams);\n\n const newInstallationUrl = getNewInstallationUrl(\n integratorParams,\n redirectPath\n );\n\n if (isLoading) {\n return (\n <div className=\"flex h-screen w-screen items-center justify-center\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs, titleHelpPopoverProps }}\n title={t(\"neetoGithub.github\")}\n actionBlock={\n <Button\n href={newInstallationUrl}\n label={t(\"neetoGithub.connectGithub\")}\n />\n }\n />\n <AccountsTable\n {...{\n appInstallations,\n integratorParams,\n keysToPurgeOnDelete,\n noDataProps,\n }}\n />\n </Container>\n );\n};\n\nexport default NeetoGithubIntegrationsTable;\n"],"names":["getNewInstallationUrl","integratorParams","redirectPath","buildUrl","concat","NEETO_GITHUB_ENGINE_BASE_URL","_objectSpread","getGithubAccountsTableColumnData","_ref","setAccountToDisconnect","id","header","t","cell","_ref2","row","account","original","_jsxs","className","children","_jsx","Typography","accountLogin","MoreDropdown","menuItems","key","label","onClick","AccountsTable","_ref$appInstallations","appInstallations","keysToPurgeOnDelete","noDataProps","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","accountToDisconnect","_useDestroyGithubInte","useDestroyGithubIntegration","onSuccess","deleteGithubAccount","mutate","isDeleting","isPending","isEmpty","Empty","title","_Fragment","DataTable","data","columns","Alert","isOpen","isNotEmpty","isSubmitting","submitButtonLabel","message","Trans","i18nKey","values","login","onClose","onSubmit","NeetoGithubIntegrationsTable","_ref$breadcrumbs","breadcrumbs","_ref$keysToPurgeOnDel","_ref$titleHelpPopover","titleHelpPopoverProps","_ref$noDataProps","_useFetchGithubAppIns","useFetchGithubAppInstallations","_useFetchGithubAppIns2","isLoading","newInstallationUrl","PageLoader","Container","Header","actionBlock","Button","href"],"mappings":"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"}