@bigbinary/neeto-slack-frontend 2.3.0-beta1 → 3.0.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/README.md +326 -279
- package/dist/Configure.js +110 -0
- package/dist/Configure.js.map +1 -0
- package/dist/Connect.js +34 -0
- package/dist/Connect.js.map +1 -0
- package/dist/Field-07124b6f.js +26 -0
- package/dist/Field-07124b6f.js.map +1 -0
- package/dist/Field-3be7830d.js +32 -0
- package/dist/Field-3be7830d.js.map +1 -0
- package/dist/Finish.js +96 -0
- package/dist/Finish.js.map +1 -0
- package/dist/Settings.js +185 -0
- package/dist/Settings.js.map +1 -0
- package/dist/SlackRefreshChannelListButton-84bf0344.js +102 -0
- package/dist/SlackRefreshChannelListButton-84bf0344.js.map +1 -0
- package/dist/SlackRefreshChannelListButton-95756902.js +72 -0
- package/dist/SlackRefreshChannelListButton-95756902.js.map +1 -0
- package/dist/cjs/Configure.js +120 -0
- package/dist/cjs/Configure.js.map +1 -0
- package/dist/cjs/Connect.js +42 -0
- package/dist/cjs/Connect.js.map +1 -0
- package/dist/{index.cjs.js → cjs/Finish.js} +51 -494
- package/dist/cjs/Finish.js.map +1 -0
- package/dist/cjs/Settings.js +199 -0
- package/dist/cjs/Settings.js.map +1 -0
- package/dist/cjs/hooks.js +13 -0
- package/dist/cjs/hooks.js.map +1 -0
- package/dist/cjs/index.js +43 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/defineProperty-e90a259c.js +43 -0
- package/dist/defineProperty-e90a259c.js.map +1 -0
- package/dist/defineProperty-f3094d6c.js +45 -0
- package/dist/defineProperty-f3094d6c.js.map +1 -0
- package/dist/hooks.js +5 -0
- package/dist/hooks.js.map +1 -0
- package/dist/index.js +30 -532
- package/dist/index.js.map +1 -1
- package/dist/inject-css-80a5faa3.js +6 -0
- package/dist/inject-css-80a5faa3.js.map +1 -0
- package/dist/inject-css-c86de496.js +4 -0
- package/dist/inject-css-c86de496.js.map +1 -0
- package/dist/useSlackStatusApi-24367316.js +85 -0
- package/dist/useSlackStatusApi-24367316.js.map +1 -0
- package/dist/useSlackStatusApi-c2dfe381.js +79 -0
- package/dist/useSlackStatusApi-c2dfe381.js.map +1 -0
- package/package.json +15 -2
- package/dist/index.cjs.js.map +0 -1
package/dist/Settings.js
ADDED
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { noop } from '@bigbinary/neeto-cist';
|
|
2
|
+
import { withT } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
3
|
+
import Check from '@bigbinary/neeto-icons/Check';
|
|
4
|
+
import SlackIcon from '@bigbinary/neeto-icons/misc/Slack';
|
|
5
|
+
import Typography from '@bigbinary/neetoui/Typography';
|
|
6
|
+
import Button from '@bigbinary/neetoui/Button';
|
|
7
|
+
import { isEmpty, is } from 'ramda';
|
|
8
|
+
import { useTranslation, Trans } from 'react-i18next';
|
|
9
|
+
import { F as Field } from './Field-07124b6f.js';
|
|
10
|
+
import { b as buildValidationSchema, C as ChannelSelectOption, S as SlackRefreshChannelListButton, t as toSlackUrl } from './SlackRefreshChannelListButton-95756902.js';
|
|
11
|
+
import { _ as _defineProperty } from './defineProperty-e90a259c.js';
|
|
12
|
+
import Pane from '@bigbinary/neetoui/Pane';
|
|
13
|
+
import Label from '@bigbinary/neetoui/Label';
|
|
14
|
+
import Select from '@bigbinary/neetoui/formik/Select';
|
|
15
|
+
import NeetoUIForm from '@bigbinary/neetoui/formik/Form';
|
|
16
|
+
import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
|
|
17
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
18
|
+
import './inject-css-c86de496.js';
|
|
19
|
+
import 'react';
|
|
20
|
+
import 'i18next';
|
|
21
|
+
import '@bigbinary/neetoui/Toastr';
|
|
22
|
+
import 'yup';
|
|
23
|
+
|
|
24
|
+
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; }
|
|
25
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).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; }
|
|
26
|
+
var EditPane = function EditPane(_ref) {
|
|
27
|
+
var _ref$isPaneOpen = _ref.isPaneOpen,
|
|
28
|
+
isPaneOpen = _ref$isPaneOpen === void 0 ? false : _ref$isPaneOpen,
|
|
29
|
+
_ref$onClose = _ref.onClose,
|
|
30
|
+
onClose = _ref$onClose === void 0 ? noop : _ref$onClose,
|
|
31
|
+
_ref$title = _ref.title,
|
|
32
|
+
title = _ref$title === void 0 ? "" : _ref$title,
|
|
33
|
+
_children = _ref.children,
|
|
34
|
+
_ref$initialFormValue = _ref.initialFormValues,
|
|
35
|
+
initialFormValues = _ref$initialFormValue === void 0 ? {} : _ref$initialFormValue,
|
|
36
|
+
_ref$handleSubmit = _ref.handleSubmit,
|
|
37
|
+
handleSubmit = _ref$handleSubmit === void 0 ? noop : _ref$handleSubmit,
|
|
38
|
+
_ref$isSubmitting = _ref.isSubmitting,
|
|
39
|
+
isSubmitting = _ref$isSubmitting === void 0 ? false : _ref$isSubmitting,
|
|
40
|
+
_ref$validationSchema = _ref.validationSchema,
|
|
41
|
+
validationSchema = _ref$validationSchema === void 0 ? {} : _ref$validationSchema,
|
|
42
|
+
_ref$channelRefreshHa = _ref.channelRefreshHandler,
|
|
43
|
+
channelRefreshHandler = _ref$channelRefreshHa === void 0 ? noop : _ref$channelRefreshHa,
|
|
44
|
+
_ref$paneProps = _ref.paneProps,
|
|
45
|
+
paneProps = _ref$paneProps === void 0 ? {} : _ref$paneProps;
|
|
46
|
+
var _useTranslation = useTranslation(),
|
|
47
|
+
t = _useTranslation.t;
|
|
48
|
+
var handleFormSubmit = function handleFormSubmit(values, formikBag) {
|
|
49
|
+
handleSubmit(values, formikBag);
|
|
50
|
+
};
|
|
51
|
+
return /*#__PURE__*/jsxs(Pane, _objectSpread(_objectSpread({
|
|
52
|
+
onClose: onClose,
|
|
53
|
+
isOpen: isPaneOpen
|
|
54
|
+
}, paneProps), {}, {
|
|
55
|
+
children: [/*#__PURE__*/jsx(Pane.Header, {
|
|
56
|
+
children: /*#__PURE__*/jsx(Typography, {
|
|
57
|
+
style: "h2",
|
|
58
|
+
weight: "semibold",
|
|
59
|
+
children: isEmpty(title) ? t("neetoSlack.slack.editPane") : title
|
|
60
|
+
})
|
|
61
|
+
}), /*#__PURE__*/jsx(NeetoUIForm, {
|
|
62
|
+
className: "neeto-ui-w-full",
|
|
63
|
+
formikProps: {
|
|
64
|
+
enableReinitialize: true,
|
|
65
|
+
initialValues: initialFormValues,
|
|
66
|
+
onSubmit: handleFormSubmit,
|
|
67
|
+
validationSchema: buildValidationSchema(validationSchema)
|
|
68
|
+
},
|
|
69
|
+
children: function children(formikProps) {
|
|
70
|
+
var _formikProps$errors;
|
|
71
|
+
return /*#__PURE__*/jsxs(Fragment, {
|
|
72
|
+
children: [/*#__PURE__*/jsxs(Pane.Body, {
|
|
73
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
74
|
+
className: "neeto-ui-mb-4 neeto-ui-w-full",
|
|
75
|
+
children: [/*#__PURE__*/jsx(Label, {
|
|
76
|
+
children: /*#__PURE__*/jsxs(Typography, {
|
|
77
|
+
className: "neeto-ui-text-gray-700 neeto-ui-mb-2",
|
|
78
|
+
style: "body2",
|
|
79
|
+
weight: "bold",
|
|
80
|
+
children: [t("neetoSlack.slack.configure.sendToDescription"), /*#__PURE__*/jsx("sup", {
|
|
81
|
+
children: "*"
|
|
82
|
+
})]
|
|
83
|
+
})
|
|
84
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
85
|
+
className: "relative flex flex-col items-start gap-y-3",
|
|
86
|
+
children: [/*#__PURE__*/jsx(Select, {
|
|
87
|
+
isSearchable: true,
|
|
88
|
+
required: true,
|
|
89
|
+
className: "w-full",
|
|
90
|
+
error: formikProps === null || formikProps === void 0 || (_formikProps$errors = formikProps.errors) === null || _formikProps$errors === void 0 ? void 0 : _formikProps$errors.selectedChannel,
|
|
91
|
+
name: "selectedChannel",
|
|
92
|
+
placeholder: t("neetoSlack.slack.placeholder"),
|
|
93
|
+
size: "large",
|
|
94
|
+
options: formikProps.values.channels.map(function (_ref2) {
|
|
95
|
+
var label = _ref2.label,
|
|
96
|
+
value = _ref2.value,
|
|
97
|
+
isPrivate = _ref2.isPrivate;
|
|
98
|
+
return {
|
|
99
|
+
label: /*#__PURE__*/jsx(ChannelSelectOption, {
|
|
100
|
+
isPrivate: isPrivate,
|
|
101
|
+
label: label
|
|
102
|
+
}),
|
|
103
|
+
value: value
|
|
104
|
+
};
|
|
105
|
+
})
|
|
106
|
+
}), /*#__PURE__*/jsx(SlackRefreshChannelListButton, {
|
|
107
|
+
channelRefreshHandler: channelRefreshHandler
|
|
108
|
+
})]
|
|
109
|
+
})]
|
|
110
|
+
}), is(Function, _children) ? _children(_objectSpread({}, formikProps)) : _children]
|
|
111
|
+
}), /*#__PURE__*/jsx(Pane.Footer, {
|
|
112
|
+
children: /*#__PURE__*/jsx(ActionBlock, {
|
|
113
|
+
cancelButtonProps: {
|
|
114
|
+
onClick: onClose
|
|
115
|
+
},
|
|
116
|
+
isSubmitting: isSubmitting || formikProps.isSubmitting
|
|
117
|
+
})
|
|
118
|
+
})]
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
})]
|
|
122
|
+
}));
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
var Settings = withT(function (_ref) {
|
|
126
|
+
var t = _ref.t,
|
|
127
|
+
children = _ref.children,
|
|
128
|
+
_ref$teamName = _ref.teamName,
|
|
129
|
+
teamName = _ref$teamName === void 0 ? "" : _ref$teamName,
|
|
130
|
+
_ref$slackUrl = _ref.slackUrl,
|
|
131
|
+
slackUrl = _ref$slackUrl === void 0 ? "" : _ref$slackUrl,
|
|
132
|
+
_ref$fields = _ref.fields,
|
|
133
|
+
fields = _ref$fields === void 0 ? [] : _ref$fields,
|
|
134
|
+
_ref$onEdit = _ref.onEdit,
|
|
135
|
+
onEdit = _ref$onEdit === void 0 ? noop : _ref$onEdit;
|
|
136
|
+
return /*#__PURE__*/jsx("div", {
|
|
137
|
+
className: "mx-auto w-full max-w-3xl",
|
|
138
|
+
children: /*#__PURE__*/jsxs("div", {
|
|
139
|
+
className: "neeto-ui-border-gray-300 neeto-ui-rounded-xl mt-10 w-full border p-6",
|
|
140
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
141
|
+
className: "space-y-4",
|
|
142
|
+
children: [/*#__PURE__*/jsx(SlackIcon, {
|
|
143
|
+
className: "neeto-ui-text-gray-600",
|
|
144
|
+
size: 48
|
|
145
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
146
|
+
className: "flex items-center space-x-4",
|
|
147
|
+
children: [/*#__PURE__*/jsx(Typography, {
|
|
148
|
+
style: "h2",
|
|
149
|
+
children: /*#__PURE__*/jsx(Trans, {
|
|
150
|
+
i18nKey: "neetoSlack.slack.settings.title",
|
|
151
|
+
values: {
|
|
152
|
+
teamName: teamName
|
|
153
|
+
},
|
|
154
|
+
components: {
|
|
155
|
+
a: /*#__PURE__*/jsx(Button, {
|
|
156
|
+
className: "neeto-ui-text-2xl",
|
|
157
|
+
href: isEmpty(slackUrl) ? toSlackUrl(teamName) : slackUrl,
|
|
158
|
+
style: "link"
|
|
159
|
+
})
|
|
160
|
+
}
|
|
161
|
+
})
|
|
162
|
+
}), /*#__PURE__*/jsx("div", {
|
|
163
|
+
className: "neeto-ui-bg-success-500 neeto-ui-text-white neeto-ui-rounded-full flex items-center justify-center p-1",
|
|
164
|
+
children: /*#__PURE__*/jsx(Check, {
|
|
165
|
+
size: 24
|
|
166
|
+
})
|
|
167
|
+
})]
|
|
168
|
+
}), fields.map(function (field) {
|
|
169
|
+
return /*#__PURE__*/jsx(Field, {
|
|
170
|
+
name: field.name,
|
|
171
|
+
value: field.value
|
|
172
|
+
}, field.name);
|
|
173
|
+
}), children]
|
|
174
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
175
|
+
className: "mt-8",
|
|
176
|
+
label: t("neetoSlack.common.edit"),
|
|
177
|
+
onClick: onEdit
|
|
178
|
+
})]
|
|
179
|
+
})
|
|
180
|
+
});
|
|
181
|
+
});
|
|
182
|
+
Settings.EditPane = EditPane;
|
|
183
|
+
|
|
184
|
+
export { Settings as default };
|
|
185
|
+
//# sourceMappingURL=Settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Settings.js","sources":["../app/javascript/src/components/Settings/EditPane.jsx","../app/javascript/src/components/Settings/index.jsx"],"sourcesContent":["import { noop } from \"neetocist\";\nimport { Typography, Pane, Label } from \"neetoui\";\nimport { Select, Form as NeetoUIForm, ActionBlock } from \"neetoui/formik\";\nimport { is, isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ChannelSelectOption from \"components/common/ChannelSelectOption\";\nimport SlackRefreshChannelListButton from \"components/common/SlackRefreshChannelListButton\";\nimport { buildValidationSchema } from \"components/utils\";\n\nconst EditPane = ({\n isPaneOpen = false,\n onClose = noop,\n title = \"\",\n children,\n initialFormValues = {},\n handleSubmit = noop,\n isSubmitting = false,\n validationSchema = {},\n channelRefreshHandler = noop,\n paneProps = {},\n}) => {\n const { t } = useTranslation();\n\n const handleFormSubmit = (values, formikBag) => {\n handleSubmit(values, formikBag);\n };\n\n return (\n <Pane {...{ onClose }} isOpen={isPaneOpen} {...paneProps}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {isEmpty(title) ? t(\"neetoSlack.slack.editPane\") : title}\n </Typography>\n </Pane.Header>\n <NeetoUIForm\n className=\"neeto-ui-w-full\"\n formikProps={{\n enableReinitialize: true,\n initialValues: initialFormValues,\n onSubmit: handleFormSubmit,\n validationSchema: buildValidationSchema(validationSchema),\n }}\n >\n {formikProps => (\n <>\n <Pane.Body>\n <div className=\"neeto-ui-mb-4 neeto-ui-w-full\">\n <Label>\n <Typography\n className=\"neeto-ui-text-gray-700 neeto-ui-mb-2\"\n style=\"body2\"\n weight=\"bold\"\n >\n {t(\"neetoSlack.slack.configure.sendToDescription\")}\n <sup>*</sup>\n </Typography>\n </Label>\n <div className=\"relative flex flex-col items-start gap-y-3\">\n <Select\n isSearchable\n required\n className=\"w-full\"\n error={formikProps?.errors?.selectedChannel}\n name=\"selectedChannel\"\n placeholder={t(\"neetoSlack.slack.placeholder\")}\n size=\"large\"\n options={formikProps.values.channels.map(\n ({ label, value, isPrivate }) => ({\n label: (\n <ChannelSelectOption {...{ isPrivate, label }} />\n ),\n value,\n })\n )}\n />\n <SlackRefreshChannelListButton\n {...{ channelRefreshHandler }}\n />\n </div>\n </div>\n {is(Function, children) ? children({ ...formikProps }) : children}\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isSubmitting || formikProps.isSubmitting}\n />\n </Pane.Footer>\n </>\n )}\n </NeetoUIForm>\n </Pane>\n );\n};\n\nexport default EditPane;\n","import { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Slack as SlackIcon } from \"neetoicons/misc\";\nimport { Typography, Button } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport Field from \"components/common/Field\";\nimport { toSlackUrl } from \"components/utils\";\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/base/overrides.scss\";\n\nimport EditPane from \"./EditPane\";\n\nconst Settings = withT(\n ({\n t,\n children,\n teamName = \"\",\n slackUrl = \"\",\n fields = [],\n onEdit = noop,\n }) => (\n <div className=\"mx-auto w-full max-w-3xl\">\n <div className=\"neeto-ui-border-gray-300 neeto-ui-rounded-xl mt-10 w-full border p-6\">\n <div className=\"space-y-4\">\n <SlackIcon className=\"neeto-ui-text-gray-600\" size={48} />\n <div className=\"flex items-center space-x-4\">\n <Typography style=\"h2\">\n <Trans\n i18nKey=\"neetoSlack.slack.settings.title\"\n values={{ teamName }}\n components={{\n a: (\n <Button\n className=\"neeto-ui-text-2xl\"\n href={isEmpty(slackUrl) ? toSlackUrl(teamName) : slackUrl}\n style=\"link\"\n />\n ),\n }}\n />\n </Typography>\n <div className=\"neeto-ui-bg-success-500 neeto-ui-text-white neeto-ui-rounded-full flex items-center justify-center p-1\">\n <Check size={24} />\n </div>\n </div>\n {fields.map(field => (\n <Field key={field.name} name={field.name} value={field.value} />\n ))}\n {children}\n </div>\n <Button\n className=\"mt-8\"\n label={t(\"neetoSlack.common.edit\")}\n onClick={onEdit}\n />\n </div>\n </div>\n )\n);\n\nSettings.EditPane = EditPane;\n\nexport default Settings;\n"],"names":["EditPane","_ref","_ref$isPaneOpen","isPaneOpen","_ref$onClose","onClose","noop","_ref$title","title","children","_ref$initialFormValue","initialFormValues","_ref$handleSubmit","handleSubmit","_ref$isSubmitting","isSubmitting","_ref$validationSchema","validationSchema","_ref$channelRefreshHa","channelRefreshHandler","_ref$paneProps","paneProps","_useTranslation","useTranslation","t","handleFormSubmit","values","formikBag","_jsxs","Pane","_objectSpread","isOpen","_jsx","Header","Typography","style","weight","isEmpty","NeetoUIForm","className","formikProps","enableReinitialize","initialValues","onSubmit","buildValidationSchema","_formikProps$errors","_Fragment","Body","Label","Select","isSearchable","required","error","errors","selectedChannel","name","placeholder","size","options","channels","map","_ref2","label","value","isPrivate","ChannelSelectOption","SlackRefreshChannelListButton","is","Function","Footer","ActionBlock","cancelButtonProps","onClick","Settings","withT","_ref$teamName","teamName","_ref$slackUrl","slackUrl","_ref$fields","fields","_ref$onEdit","onEdit","SlackIcon","Trans","i18nKey","components","a","Button","href","toSlackUrl","Check","field","Field"],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var injectCss = require('./inject-css-80a5faa3.js');
|
|
4
|
+
var Typography = require('@bigbinary/neetoui/Typography');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
8
|
+
var Button = require('@bigbinary/neetoui/Button');
|
|
9
|
+
var defineProperty = require('./defineProperty-f3094d6c.js');
|
|
10
|
+
var i18next = require('i18next');
|
|
11
|
+
var Toastr = require('@bigbinary/neetoui/Toastr');
|
|
12
|
+
var yup = require('yup');
|
|
13
|
+
|
|
14
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
15
|
+
|
|
16
|
+
function _interopNamespace(e) {
|
|
17
|
+
if (e && e.__esModule) return e;
|
|
18
|
+
var n = Object.create(null);
|
|
19
|
+
if (e) {
|
|
20
|
+
Object.keys(e).forEach(function (k) {
|
|
21
|
+
if (k !== 'default') {
|
|
22
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
23
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
24
|
+
enumerable: true,
|
|
25
|
+
get: function () { return e[k]; }
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
n["default"] = e;
|
|
31
|
+
return Object.freeze(n);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
35
|
+
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
36
|
+
var Toastr__default = /*#__PURE__*/_interopDefaultLegacy(Toastr);
|
|
37
|
+
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
38
|
+
|
|
39
|
+
var CHANNEL_NAME_VALIDAITON_SCHEMA = {
|
|
40
|
+
selectedChannel: yup__namespace.object().shape({
|
|
41
|
+
label: yup__namespace.mixed().nullable(),
|
|
42
|
+
value: yup__namespace.string().required(i18next.t("neetoSlack.common.required", {
|
|
43
|
+
entity: i18next.t("neetoSlack.slack.channelName")
|
|
44
|
+
}))
|
|
45
|
+
}).required().nullable()
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
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; }
|
|
49
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { defineProperty._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; }
|
|
50
|
+
var buildValidationSchema = function buildValidationSchema(customValidationSchema) {
|
|
51
|
+
return yup__namespace.object().shape(_objectSpread(_objectSpread({}, customValidationSchema), CHANNEL_NAME_VALIDAITON_SCHEMA));
|
|
52
|
+
};
|
|
53
|
+
var toSlackUrl = function toSlackUrl(teamName) {
|
|
54
|
+
return "https://".concat(teamName === null || teamName === void 0 ? void 0 : teamName.replace(/\s/g, "").toLowerCase(), ".slack.com");
|
|
55
|
+
};
|
|
56
|
+
var slackChannelRefresh = function slackChannelRefresh(channelRefreshHandler) {
|
|
57
|
+
channelRefreshHandler();
|
|
58
|
+
Toastr__default["default"].success(i18next.t("neetoSlack.slack.channelListRefreshToastr"));
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
var css = "@media (max-height:1000px){.neeto-ui-react-select__menu-list{max-height:calc(40vh - 50px)!important}}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9iYXNlL292ZXJyaWRlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJCQUNFLGtDQUNJLHNDQUNKLENBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJAbWVkaWEgKG1heC1oZWlnaHQ6IDEwMDBweCkge1xuICAubmVldG8tdWktcmVhY3Qtc2VsZWN0X19tZW51LWxpc3Qge1xuICAgICAgbWF4LWhlaWdodDogY2FsYyg0MHZoIC0gNTBweCkgIWltcG9ydGFudDtcbiAgfVxufVxuIl19 */";
|
|
62
|
+
injectCss.n(css,{});
|
|
63
|
+
|
|
64
|
+
var ChannelSelectOption = function ChannelSelectOption(_ref) {
|
|
65
|
+
var label = _ref.label,
|
|
66
|
+
isPrivate = _ref.isPrivate;
|
|
67
|
+
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
68
|
+
className: "flex items-center justify-between",
|
|
69
|
+
children: [/*#__PURE__*/jsxRuntime.jsx("span", {
|
|
70
|
+
children: label
|
|
71
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
|
|
72
|
+
className: "neeto-ui-text-gray-500 italic",
|
|
73
|
+
style: "body3",
|
|
74
|
+
children: isPrivate ? "private" : ""
|
|
75
|
+
})]
|
|
76
|
+
});
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
var SlackRefreshChannelListButton = reactUtils.withT(function (_ref) {
|
|
80
|
+
var t = _ref.t,
|
|
81
|
+
channelRefreshHandler = _ref.channelRefreshHandler,
|
|
82
|
+
_ref$className = _ref.className,
|
|
83
|
+
className = _ref$className === void 0 ? "pl-1" : _ref$className;
|
|
84
|
+
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
85
|
+
className: "relative top-0 flex justify-center",
|
|
86
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
|
|
87
|
+
className: className,
|
|
88
|
+
label: t("neetoSlack.slack.channelListRefreshButton"),
|
|
89
|
+
style: "link",
|
|
90
|
+
onClick: function onClick() {
|
|
91
|
+
return slackChannelRefresh(channelRefreshHandler);
|
|
92
|
+
}
|
|
93
|
+
})
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
var SlackRefreshChannelListButton$1 = /*#__PURE__*/React.memo(SlackRefreshChannelListButton);
|
|
97
|
+
|
|
98
|
+
exports.ChannelSelectOption = ChannelSelectOption;
|
|
99
|
+
exports.SlackRefreshChannelListButton = SlackRefreshChannelListButton$1;
|
|
100
|
+
exports.buildValidationSchema = buildValidationSchema;
|
|
101
|
+
exports.toSlackUrl = toSlackUrl;
|
|
102
|
+
//# sourceMappingURL=SlackRefreshChannelListButton-84bf0344.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SlackRefreshChannelListButton-84bf0344.js","sources":["../app/javascript/src/components/constants.js","../app/javascript/src/components/utils.js","../app/javascript/src/components/common/ChannelSelectOption.jsx","../app/javascript/src/components/common/SlackRefreshChannelListButton.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const CHANNEL_NAME_VALIDAITON_SCHEMA = {\n selectedChannel: yup\n .object()\n .shape({\n label: yup.mixed().nullable(),\n value: yup.string().required(\n t(\"neetoSlack.common.required\", {\n entity: t(\"neetoSlack.slack.channelName\"),\n })\n ),\n })\n .required()\n .nullable(),\n};\n","import { t } from \"i18next\";\nimport { Toastr } from \"neetoui\";\nimport * as yup from \"yup\";\n\nimport { CHANNEL_NAME_VALIDAITON_SCHEMA } from \"./constants\";\n\nexport const buildValidationSchema = customValidationSchema =>\n yup.object().shape({\n ...customValidationSchema,\n ...CHANNEL_NAME_VALIDAITON_SCHEMA,\n });\n\nexport const toSlackUrl = teamName =>\n `https://${teamName?.replace(/\\s/g, \"\").toLowerCase()}.slack.com`;\n\nexport const slackChannelRefresh = channelRefreshHandler => {\n channelRefreshHandler();\n Toastr.success(t(\"neetoSlack.slack.channelListRefreshToastr\"));\n};\n","import { Typography } from \"neetoui\";\n\nconst ChannelSelectOption = ({ label, isPrivate }) => (\n <div className=\"flex items-center justify-between\">\n <span>{label}</span>\n <Typography className=\"neeto-ui-text-gray-500 italic\" style=\"body3\">\n {isPrivate ? \"private\" : \"\"}\n </Typography>\n </div>\n);\n\nexport default ChannelSelectOption;\n","import { memo } from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport { Button } from \"neetoui\";\n\nimport { slackChannelRefresh } from \"components/utils\";\n\nconst SlackRefreshChannelListButton = withT(\n ({ t, channelRefreshHandler, className = \"pl-1\" }) => (\n <div className=\"relative top-0 flex justify-center\">\n <Button\n {...{ className }}\n label={t(\"neetoSlack.slack.channelListRefreshButton\")}\n style=\"link\"\n onClick={() => slackChannelRefresh(channelRefreshHandler)}\n />\n </div>\n )\n);\n\nexport default memo(SlackRefreshChannelListButton);\n"],"names":["CHANNEL_NAME_VALIDAITON_SCHEMA","selectedChannel","yup","object","shape","label","mixed","nullable","value","string","required","t","entity","buildValidationSchema","customValidationSchema","_objectSpread","toSlackUrl","teamName","concat","replace","toLowerCase","slackChannelRefresh","channelRefreshHandler","Toastr","success","ChannelSelectOption","_ref","isPrivate","_jsxs","className","children","_jsx","Typography","style","SlackRefreshChannelListButton","withT","_ref$className","Button","onClick","memo"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAAMA,8BAA8B,GAAG;EAC5CC,eAAe,EAAEC,cAAG,CACjBC,MAAM,EAAE,CACRC,KAAK,CAAC;IACLC,KAAK,EAAEH,cAAG,CAACI,KAAK,EAAE,CAACC,QAAQ,EAAE;AAC7BC,IAAAA,KAAK,EAAEN,cAAG,CAACO,MAAM,EAAE,CAACC,QAAQ,CAC1BC,SAAC,CAAC,4BAA4B,EAAE;MAC9BC,MAAM,EAAED,SAAC,CAAC,8BAA8B,CAAA;AAC1C,KAAC,CACH,CAAA;AACF,GAAC,CAAC,CACDD,QAAQ,EAAE,CACVH,QAAQ,EAAC;AACd,CAAC;;;;ICVYM,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,sBAAsB,EAAA;AAAA,EAAA,OACzDZ,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAAW,aAAA,CAAAA,aAAA,CACbD,EAAAA,EAAAA,sBAAsB,CACtBd,EAAAA,8BAA8B,CAClC,CAAC,CAAA;AAAA,EAAA;IAESgB,UAAU,GAAG,SAAbA,UAAUA,CAAGC,QAAQ,EAAA;AAAA,EAAA,OAAA,UAAA,CAAAC,MAAA,CACrBD,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,uBAARA,QAAQ,CAAEE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAACC,WAAW,EAAE,EAAA,YAAA,CAAA,CAAA;AAAA,EAAY;AAE5D,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,qBAAqB,EAAI;AAC1DA,EAAAA,qBAAqB,EAAE,CAAA;AACvBC,EAAAA,0BAAM,CAACC,OAAO,CAACb,SAAC,CAAC,2CAA2C,CAAC,CAAC,CAAA;AAChE,CAAC;;;;;AChBD,IAAMc,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMrB,KAAK,GAAAqB,IAAA,CAALrB,KAAK;IAAEsB,SAAS,GAAAD,IAAA,CAATC,SAAS,CAAA;AAAA,EAAA,oBAC7CC,eAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,mCAAmC;AAAAC,IAAAA,QAAA,gBAChDC,cAAA,CAAA,MAAA,EAAA;AAAAD,MAAAA,QAAA,EAAOzB,KAAAA;AAAK,KAAO,CAAC,eACpB0B,cAAA,CAACC,8BAAU,EAAA;AAACH,MAAAA,SAAS,EAAC,+BAA+B;AAACI,MAAAA,KAAK,EAAC,OAAO;AAAAH,MAAAA,QAAA,EAChEH,SAAS,GAAG,SAAS,GAAG,EAAA;AAAE,KACjB,CAAC,CAAA;AAAA,GACV,CAAC,CAAA;AAAA;;ACDR,IAAMO,6BAA6B,GAAGC,gBAAK,CACzC,UAAAT,IAAA,EAAA;AAAA,EAAA,IAAGf,CAAC,GAAAe,IAAA,CAADf,CAAC;IAAEW,qBAAqB,GAAAI,IAAA,CAArBJ,qBAAqB;IAAAc,cAAA,GAAAV,IAAA,CAAEG,SAAS;AAATA,IAAAA,SAAS,GAAAO,cAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,cAAA,CAAA;AAAA,EAAA,oBAC7CL,cAAA,CAAA,KAAA,EAAA;AAAKF,IAAAA,SAAS,EAAC,oCAAoC;IAAAC,QAAA,eACjDC,cAAA,CAACM,0BAAM,EAAA;AACCR,MAAAA,SAAS,EAATA,SAAS;AACfxB,MAAAA,KAAK,EAAEM,CAAC,CAAC,2CAA2C,CAAE;AACtDsB,MAAAA,KAAK,EAAC,MAAM;MACZK,OAAO,EAAE,SAAAA,OAAA,GAAA;QAAA,OAAMjB,mBAAmB,CAACC,qBAAqB,CAAC,CAAA;AAAA,OAAA;KAC1D,CAAA;AAAC,GACC,CAAC,CAAA;AAAA,CAEV,CAAC,CAAA;AAED,sCAAeiB,aAAAA,UAAI,CAACL,6BAA6B,CAAC;;;;;;;"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { n } from './inject-css-c86de496.js';
|
|
2
|
+
import Typography from '@bigbinary/neetoui/Typography';
|
|
3
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
4
|
+
import { memo } from 'react';
|
|
5
|
+
import { withT } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
6
|
+
import Button from '@bigbinary/neetoui/Button';
|
|
7
|
+
import { _ as _defineProperty } from './defineProperty-e90a259c.js';
|
|
8
|
+
import { t } from 'i18next';
|
|
9
|
+
import Toastr from '@bigbinary/neetoui/Toastr';
|
|
10
|
+
import * as yup from 'yup';
|
|
11
|
+
|
|
12
|
+
var CHANNEL_NAME_VALIDAITON_SCHEMA = {
|
|
13
|
+
selectedChannel: yup.object().shape({
|
|
14
|
+
label: yup.mixed().nullable(),
|
|
15
|
+
value: yup.string().required(t("neetoSlack.common.required", {
|
|
16
|
+
entity: t("neetoSlack.slack.channelName")
|
|
17
|
+
}))
|
|
18
|
+
}).required().nullable()
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
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; }
|
|
22
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).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; }
|
|
23
|
+
var buildValidationSchema = function buildValidationSchema(customValidationSchema) {
|
|
24
|
+
return yup.object().shape(_objectSpread(_objectSpread({}, customValidationSchema), CHANNEL_NAME_VALIDAITON_SCHEMA));
|
|
25
|
+
};
|
|
26
|
+
var toSlackUrl = function toSlackUrl(teamName) {
|
|
27
|
+
return "https://".concat(teamName === null || teamName === void 0 ? void 0 : teamName.replace(/\s/g, "").toLowerCase(), ".slack.com");
|
|
28
|
+
};
|
|
29
|
+
var slackChannelRefresh = function slackChannelRefresh(channelRefreshHandler) {
|
|
30
|
+
channelRefreshHandler();
|
|
31
|
+
Toastr.success(t("neetoSlack.slack.channelListRefreshToastr"));
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
var css = "@media (max-height:1000px){.neeto-ui-react-select__menu-list{max-height:calc(40vh - 50px)!important}}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9iYXNlL292ZXJyaWRlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJCQUNFLGtDQUNJLHNDQUNKLENBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJAbWVkaWEgKG1heC1oZWlnaHQ6IDEwMDBweCkge1xuICAubmVldG8tdWktcmVhY3Qtc2VsZWN0X19tZW51LWxpc3Qge1xuICAgICAgbWF4LWhlaWdodDogY2FsYyg0MHZoIC0gNTBweCkgIWltcG9ydGFudDtcbiAgfVxufVxuIl19 */";
|
|
35
|
+
n(css,{});
|
|
36
|
+
|
|
37
|
+
var ChannelSelectOption = function ChannelSelectOption(_ref) {
|
|
38
|
+
var label = _ref.label,
|
|
39
|
+
isPrivate = _ref.isPrivate;
|
|
40
|
+
return /*#__PURE__*/jsxs("div", {
|
|
41
|
+
className: "flex items-center justify-between",
|
|
42
|
+
children: [/*#__PURE__*/jsx("span", {
|
|
43
|
+
children: label
|
|
44
|
+
}), /*#__PURE__*/jsx(Typography, {
|
|
45
|
+
className: "neeto-ui-text-gray-500 italic",
|
|
46
|
+
style: "body3",
|
|
47
|
+
children: isPrivate ? "private" : ""
|
|
48
|
+
})]
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
var SlackRefreshChannelListButton = withT(function (_ref) {
|
|
53
|
+
var t = _ref.t,
|
|
54
|
+
channelRefreshHandler = _ref.channelRefreshHandler,
|
|
55
|
+
_ref$className = _ref.className,
|
|
56
|
+
className = _ref$className === void 0 ? "pl-1" : _ref$className;
|
|
57
|
+
return /*#__PURE__*/jsx("div", {
|
|
58
|
+
className: "relative top-0 flex justify-center",
|
|
59
|
+
children: /*#__PURE__*/jsx(Button, {
|
|
60
|
+
className: className,
|
|
61
|
+
label: t("neetoSlack.slack.channelListRefreshButton"),
|
|
62
|
+
style: "link",
|
|
63
|
+
onClick: function onClick() {
|
|
64
|
+
return slackChannelRefresh(channelRefreshHandler);
|
|
65
|
+
}
|
|
66
|
+
})
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
var SlackRefreshChannelListButton$1 = /*#__PURE__*/memo(SlackRefreshChannelListButton);
|
|
70
|
+
|
|
71
|
+
export { ChannelSelectOption as C, SlackRefreshChannelListButton$1 as S, buildValidationSchema as b, toSlackUrl as t };
|
|
72
|
+
//# sourceMappingURL=SlackRefreshChannelListButton-95756902.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SlackRefreshChannelListButton-95756902.js","sources":["../app/javascript/src/components/constants.js","../app/javascript/src/components/utils.js","../app/javascript/src/components/common/ChannelSelectOption.jsx","../app/javascript/src/components/common/SlackRefreshChannelListButton.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const CHANNEL_NAME_VALIDAITON_SCHEMA = {\n selectedChannel: yup\n .object()\n .shape({\n label: yup.mixed().nullable(),\n value: yup.string().required(\n t(\"neetoSlack.common.required\", {\n entity: t(\"neetoSlack.slack.channelName\"),\n })\n ),\n })\n .required()\n .nullable(),\n};\n","import { t } from \"i18next\";\nimport { Toastr } from \"neetoui\";\nimport * as yup from \"yup\";\n\nimport { CHANNEL_NAME_VALIDAITON_SCHEMA } from \"./constants\";\n\nexport const buildValidationSchema = customValidationSchema =>\n yup.object().shape({\n ...customValidationSchema,\n ...CHANNEL_NAME_VALIDAITON_SCHEMA,\n });\n\nexport const toSlackUrl = teamName =>\n `https://${teamName?.replace(/\\s/g, \"\").toLowerCase()}.slack.com`;\n\nexport const slackChannelRefresh = channelRefreshHandler => {\n channelRefreshHandler();\n Toastr.success(t(\"neetoSlack.slack.channelListRefreshToastr\"));\n};\n","import { Typography } from \"neetoui\";\n\nconst ChannelSelectOption = ({ label, isPrivate }) => (\n <div className=\"flex items-center justify-between\">\n <span>{label}</span>\n <Typography className=\"neeto-ui-text-gray-500 italic\" style=\"body3\">\n {isPrivate ? \"private\" : \"\"}\n </Typography>\n </div>\n);\n\nexport default ChannelSelectOption;\n","import { memo } from \"react\";\n\nimport { withT } from \"neetocommons/react-utils\";\nimport { Button } from \"neetoui\";\n\nimport { slackChannelRefresh } from \"components/utils\";\n\nconst SlackRefreshChannelListButton = withT(\n ({ t, channelRefreshHandler, className = \"pl-1\" }) => (\n <div className=\"relative top-0 flex justify-center\">\n <Button\n {...{ className }}\n label={t(\"neetoSlack.slack.channelListRefreshButton\")}\n style=\"link\"\n onClick={() => slackChannelRefresh(channelRefreshHandler)}\n />\n </div>\n )\n);\n\nexport default memo(SlackRefreshChannelListButton);\n"],"names":["CHANNEL_NAME_VALIDAITON_SCHEMA","selectedChannel","yup","object","shape","label","mixed","nullable","value","string","required","t","entity","buildValidationSchema","customValidationSchema","_objectSpread","toSlackUrl","teamName","concat","replace","toLowerCase","slackChannelRefresh","channelRefreshHandler","Toastr","success","ChannelSelectOption","_ref","isPrivate","_jsxs","className","children","_jsx","Typography","style","SlackRefreshChannelListButton","withT","_ref$className","Button","onClick","memo"],"mappings":"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"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var classNames = require('classnames');
|
|
4
|
+
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
5
|
+
var Typography = require('@bigbinary/neetoui/Typography');
|
|
6
|
+
var Button = require('@bigbinary/neetoui/Button');
|
|
7
|
+
var Select = require('@bigbinary/neetoui/formik/Select');
|
|
8
|
+
var NeetoUIForm = require('@bigbinary/neetoui/formik/Form');
|
|
9
|
+
var ramda = require('ramda');
|
|
10
|
+
var reactI18next = require('react-i18next');
|
|
11
|
+
var SlackRefreshChannelListButton = require('../SlackRefreshChannelListButton-84bf0344.js');
|
|
12
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
13
|
+
require('../inject-css-80a5faa3.js');
|
|
14
|
+
require('react');
|
|
15
|
+
require('../defineProperty-f3094d6c.js');
|
|
16
|
+
require('i18next');
|
|
17
|
+
require('@bigbinary/neetoui/Toastr');
|
|
18
|
+
require('yup');
|
|
19
|
+
|
|
20
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
21
|
+
|
|
22
|
+
var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
|
23
|
+
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
24
|
+
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
25
|
+
var Select__default = /*#__PURE__*/_interopDefaultLegacy(Select);
|
|
26
|
+
var NeetoUIForm__default = /*#__PURE__*/_interopDefaultLegacy(NeetoUIForm);
|
|
27
|
+
|
|
28
|
+
var Configure = reactUtils.withT(function (_ref) {
|
|
29
|
+
var t = _ref.t,
|
|
30
|
+
_children = _ref.children,
|
|
31
|
+
teamName = _ref.teamName,
|
|
32
|
+
_ref$slackUrl = _ref.slackUrl,
|
|
33
|
+
slackUrl = _ref$slackUrl === void 0 ? "" : _ref$slackUrl,
|
|
34
|
+
initialFormValues = _ref.initialFormValues,
|
|
35
|
+
handleSubmit = _ref.handleSubmit,
|
|
36
|
+
isSubmitting = _ref.isSubmitting,
|
|
37
|
+
className = _ref.className,
|
|
38
|
+
validationSchema = _ref.validationSchema,
|
|
39
|
+
channelRefreshHandler = _ref.channelRefreshHandler,
|
|
40
|
+
_ref$channelSelectLab = _ref.channelSelectLabel,
|
|
41
|
+
channelSelectLabel = _ref$channelSelectLab === void 0 ? "" : _ref$channelSelectLab;
|
|
42
|
+
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
43
|
+
className: classNames__default["default"]("neeto-ui-w-full neeto-ui-space-y-6 mx-auto max-w-lg", className),
|
|
44
|
+
children: [/*#__PURE__*/jsxRuntime.jsx("div", {
|
|
45
|
+
className: "neeto-ui-mb-6 neeto-ui-w-full",
|
|
46
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
|
|
47
|
+
style: "h3",
|
|
48
|
+
children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
|
|
49
|
+
i18nKey: "neetoSlack.slack.configure.title",
|
|
50
|
+
values: {
|
|
51
|
+
teamName: teamName
|
|
52
|
+
},
|
|
53
|
+
components: {
|
|
54
|
+
a: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
|
|
55
|
+
className: "neeto-ui-text-xl",
|
|
56
|
+
href: ramda.isEmpty(slackUrl) ? SlackRefreshChannelListButton.toSlackUrl(teamName) : slackUrl,
|
|
57
|
+
style: "link"
|
|
58
|
+
})
|
|
59
|
+
}
|
|
60
|
+
})
|
|
61
|
+
})
|
|
62
|
+
}), /*#__PURE__*/jsxRuntime.jsx(NeetoUIForm__default["default"], {
|
|
63
|
+
className: "neeto-ui-w-full max-w-md",
|
|
64
|
+
formikProps: {
|
|
65
|
+
enableReinitialize: true,
|
|
66
|
+
initialValues: initialFormValues,
|
|
67
|
+
onSubmit: handleSubmit,
|
|
68
|
+
validationSchema: SlackRefreshChannelListButton.buildValidationSchema(validationSchema)
|
|
69
|
+
},
|
|
70
|
+
children: function children(formikProps) {
|
|
71
|
+
var _formikProps$errors;
|
|
72
|
+
return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
73
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
74
|
+
className: "neeto-ui-mb-4 neeto-ui-w-full",
|
|
75
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs(Typography__default["default"], {
|
|
76
|
+
className: "neeto-ui-text-gray-700 neeto-ui-mb-3",
|
|
77
|
+
style: "body2",
|
|
78
|
+
weight: "normal",
|
|
79
|
+
children: [ramda.isEmpty(channelSelectLabel) ? t("neetoSlack.slack.configure.sendToDescription") : channelSelectLabel, /*#__PURE__*/jsxRuntime.jsx("sup", {
|
|
80
|
+
children: "*"
|
|
81
|
+
})]
|
|
82
|
+
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
83
|
+
className: "relative flex flex-col items-start gap-y-3",
|
|
84
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Select__default["default"], {
|
|
85
|
+
isSearchable: true,
|
|
86
|
+
required: true,
|
|
87
|
+
className: "w-full",
|
|
88
|
+
error: formikProps === null || formikProps === void 0 || (_formikProps$errors = formikProps.errors) === null || _formikProps$errors === void 0 ? void 0 : _formikProps$errors.selectedChannel,
|
|
89
|
+
name: "selectedChannel",
|
|
90
|
+
placeholder: t("neetoSlack.slack.placeholder"),
|
|
91
|
+
size: "large",
|
|
92
|
+
options: formikProps.values.channels.map(function (_ref2) {
|
|
93
|
+
var label = _ref2.label,
|
|
94
|
+
value = _ref2.value,
|
|
95
|
+
isPrivate = _ref2.isPrivate;
|
|
96
|
+
return {
|
|
97
|
+
label: /*#__PURE__*/jsxRuntime.jsx(SlackRefreshChannelListButton.ChannelSelectOption, {
|
|
98
|
+
isPrivate: isPrivate,
|
|
99
|
+
label: label
|
|
100
|
+
}),
|
|
101
|
+
value: value
|
|
102
|
+
};
|
|
103
|
+
})
|
|
104
|
+
}), /*#__PURE__*/jsxRuntime.jsx(SlackRefreshChannelListButton.SlackRefreshChannelListButton, {
|
|
105
|
+
channelRefreshHandler: channelRefreshHandler
|
|
106
|
+
})]
|
|
107
|
+
})]
|
|
108
|
+
}), ramda.is(Function, _children) ? _children(formikProps) : _children, /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
|
|
109
|
+
label: t("neetoSlack.common.continue"),
|
|
110
|
+
loading: isSubmitting,
|
|
111
|
+
type: "submit"
|
|
112
|
+
})]
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
})]
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
|
|
119
|
+
module.exports = Configure;
|
|
120
|
+
//# sourceMappingURL=Configure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Configure.js","sources":["../../app/javascript/src/components/Steps/Configure.jsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Typography, Button } from \"neetoui\";\nimport { Select, Form } from \"neetoui/formik\";\nimport { is, isEmpty } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport ChannelSelectOption from \"components/common/ChannelSelectOption\";\nimport SlackRefreshChannelListButton from \"components/common/SlackRefreshChannelListButton\";\nimport { buildValidationSchema, toSlackUrl } from \"components/utils\";\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/base/overrides.scss\";\n\nconst Configure = withT(\n ({\n t,\n children,\n teamName,\n slackUrl = \"\",\n initialFormValues,\n handleSubmit,\n isSubmitting,\n className,\n validationSchema,\n channelRefreshHandler,\n channelSelectLabel = \"\",\n }) => (\n <div\n className={classNames(\n \"neeto-ui-w-full neeto-ui-space-y-6 mx-auto max-w-lg\",\n className\n )}\n >\n <div className=\"neeto-ui-mb-6 neeto-ui-w-full\">\n <Typography style=\"h3\">\n <Trans\n i18nKey=\"neetoSlack.slack.configure.title\"\n values={{ teamName }}\n components={{\n a: (\n <Button\n className=\"neeto-ui-text-xl\"\n href={isEmpty(slackUrl) ? toSlackUrl(teamName) : slackUrl}\n style=\"link\"\n />\n ),\n }}\n />\n </Typography>\n </div>\n <Form\n className=\"neeto-ui-w-full max-w-md\"\n formikProps={{\n enableReinitialize: true,\n initialValues: initialFormValues,\n onSubmit: handleSubmit,\n validationSchema: buildValidationSchema(validationSchema),\n }}\n >\n {formikProps => (\n <>\n <div className=\"neeto-ui-mb-4 neeto-ui-w-full\">\n <Typography\n className=\"neeto-ui-text-gray-700 neeto-ui-mb-3\"\n style=\"body2\"\n weight=\"normal\"\n >\n {isEmpty(channelSelectLabel)\n ? t(\"neetoSlack.slack.configure.sendToDescription\")\n : channelSelectLabel}\n <sup>*</sup>\n </Typography>\n <div className=\"relative flex flex-col items-start gap-y-3\">\n <Select\n isSearchable\n required\n className=\"w-full\"\n error={formikProps?.errors?.selectedChannel}\n name=\"selectedChannel\"\n placeholder={t(\"neetoSlack.slack.placeholder\")}\n size=\"large\"\n options={formikProps.values.channels.map(\n ({ label, value, isPrivate }) => ({\n label: <ChannelSelectOption {...{ isPrivate, label }} />,\n value,\n })\n )}\n />\n <SlackRefreshChannelListButton {...{ channelRefreshHandler }} />\n </div>\n </div>\n {is(Function, children) ? children(formikProps) : children}\n <Button\n label={t(\"neetoSlack.common.continue\")}\n loading={isSubmitting}\n type=\"submit\"\n />\n </>\n )}\n </Form>\n </div>\n )\n);\n\nexport default Configure;\n"],"names":["Configure","withT","_ref","t","children","teamName","_ref$slackUrl","slackUrl","initialFormValues","handleSubmit","isSubmitting","className","validationSchema","channelRefreshHandler","_ref$channelSelectLab","channelSelectLabel","_jsxs","classNames","_jsx","Typography","style","Trans","i18nKey","values","components","a","Button","href","isEmpty","toSlackUrl","Form","formikProps","enableReinitialize","initialValues","onSubmit","buildValidationSchema","_formikProps$errors","_Fragment","weight","Select","isSearchable","required","error","errors","selectedChannel","name","placeholder","size","options","channels","map","_ref2","label","value","isPrivate","ChannelSelectOption","SlackRefreshChannelListButton","is","Function","loading","type"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,IAAMA,SAAS,GAAGC,gBAAK,CACrB,UAAAC,IAAA,EAAA;AAAA,EAAA,IACEC,CAAC,GAAAD,IAAA,CAADC,CAAC;IACDC,SAAQ,GAAAF,IAAA,CAARE,QAAQ;IACRC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAAC,aAAA,GAAAJ,IAAA,CACRK,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,aAAA;IACbE,iBAAiB,GAAAN,IAAA,CAAjBM,iBAAiB;IACjBC,YAAY,GAAAP,IAAA,CAAZO,YAAY;IACZC,YAAY,GAAAR,IAAA,CAAZQ,YAAY;IACZC,SAAS,GAAAT,IAAA,CAATS,SAAS;IACTC,gBAAgB,GAAAV,IAAA,CAAhBU,gBAAgB;IAChBC,qBAAqB,GAAAX,IAAA,CAArBW,qBAAqB;IAAAC,qBAAA,GAAAZ,IAAA,CACrBa,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA,CAAA;AAAA,EAAA,oBAEvBE,eAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAEM,8BAAU,CACnB,qDAAqD,EACrDN,SACF,CAAE;AAAAP,IAAAA,QAAA,gBAEFc,cAAA,CAAA,KAAA,EAAA;AAAKP,MAAAA,SAAS,EAAC,+BAA+B;MAAAP,QAAA,eAC5Cc,cAAA,CAACC,8BAAU,EAAA;AAACC,QAAAA,KAAK,EAAC,IAAI;QAAAhB,QAAA,eACpBc,cAAA,CAACG,kBAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,kCAAkC;AAC1CC,UAAAA,MAAM,EAAE;AAAElB,YAAAA,QAAQ,EAARA,QAAAA;WAAW;AACrBmB,UAAAA,UAAU,EAAE;YACVC,CAAC,eACCP,cAAA,CAACQ,0BAAM,EAAA;AACLf,cAAAA,SAAS,EAAC,kBAAkB;cAC5BgB,IAAI,EAAEC,aAAO,CAACrB,QAAQ,CAAC,GAAGsB,wCAAU,CAACxB,QAAQ,CAAC,GAAGE,QAAS;AAC1Da,cAAAA,KAAK,EAAC,MAAA;aACP,CAAA;AAEL,WAAA;SACD,CAAA;OACS,CAAA;AAAC,KACV,CAAC,eACNF,cAAA,CAACY,+BAAI,EAAA;AACHnB,MAAAA,SAAS,EAAC,0BAA0B;AACpCoB,MAAAA,WAAW,EAAE;AACXC,QAAAA,kBAAkB,EAAE,IAAI;AACxBC,QAAAA,aAAa,EAAEzB,iBAAiB;AAChC0B,QAAAA,QAAQ,EAAEzB,YAAY;QACtBG,gBAAgB,EAAEuB,mDAAqB,CAACvB,gBAAgB,CAAA;OACxD;MAAAR,QAAA,EAED,SAAAA,QAAAA,CAAA2B,WAAW,EAAA;AAAA,QAAA,IAAAK,mBAAA,CAAA;QAAA,oBACVpB,eAAA,CAAAqB,mBAAA,EAAA;AAAAjC,UAAAA,QAAA,gBACEY,eAAA,CAAA,KAAA,EAAA;AAAKL,YAAAA,SAAS,EAAC,+BAA+B;YAAAP,QAAA,EAAA,cAC5CY,eAAA,CAACG,8BAAU,EAAA;AACTR,cAAAA,SAAS,EAAC,sCAAsC;AAChDS,cAAAA,KAAK,EAAC,OAAO;AACbkB,cAAAA,MAAM,EAAC,QAAQ;AAAAlC,cAAAA,QAAA,EAEdwB,CAAAA,aAAO,CAACb,kBAAkB,CAAC,GACxBZ,CAAC,CAAC,8CAA8C,CAAC,GACjDY,kBAAkB,eACtBG,cAAA,CAAA,KAAA,EAAA;AAAAd,gBAAAA,QAAA,EAAK,GAAA;AAAC,eAAK,CAAC,CAAA;aACF,CAAC,eACbY,eAAA,CAAA,KAAA,EAAA;AAAKL,cAAAA,SAAS,EAAC,4CAA4C;cAAAP,QAAA,EAAA,cACzDc,cAAA,CAACqB,0BAAM,EAAA;gBACLC,YAAY,EAAA,IAAA;gBACZC,QAAQ,EAAA,IAAA;AACR9B,gBAAAA,SAAS,EAAC,QAAQ;AAClB+B,gBAAAA,KAAK,EAAEX,WAAW,KAAXA,IAAAA,IAAAA,WAAW,gBAAAK,mBAAA,GAAXL,WAAW,CAAEY,MAAM,MAAAP,IAAAA,IAAAA,mBAAA,KAAnBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,mBAAA,CAAqBQ,eAAgB;AAC5CC,gBAAAA,IAAI,EAAC,iBAAiB;AACtBC,gBAAAA,WAAW,EAAE3C,CAAC,CAAC,8BAA8B,CAAE;AAC/C4C,gBAAAA,IAAI,EAAC,OAAO;gBACZC,OAAO,EAAEjB,WAAW,CAACR,MAAM,CAAC0B,QAAQ,CAACC,GAAG,CACtC,UAAAC,KAAA,EAAA;AAAA,kBAAA,IAAGC,KAAK,GAAAD,KAAA,CAALC,KAAK;oBAAEC,KAAK,GAAAF,KAAA,CAALE,KAAK;oBAAEC,SAAS,GAAAH,KAAA,CAATG,SAAS,CAAA;kBAAA,OAAQ;oBAChCF,KAAK,eAAElC,cAAA,CAACqC,iDAAmB,EAAA;AAAOD,sBAAAA,SAAS,EAATA,SAAS;AAAEF,sBAAAA,KAAK,EAALA,KAAAA;AAAK,qBAAK,CAAC;AACxDC,oBAAAA,KAAK,EAALA,KAAAA;mBACD,CAAA;iBACH,CAAA;AAAE,eACH,CAAC,eACFnC,cAAA,CAACsC,2DAA6B,EAAA;AAAO3C,gBAAAA,qBAAqB,EAArBA,qBAAAA;AAAqB,eAAK,CAAC,CAAA;AAAA,aAC7D,CAAC,CAAA;AAAA,WACH,CAAC,EACL4C,QAAE,CAACC,QAAQ,EAAEtD,SAAQ,CAAC,GAAGA,SAAQ,CAAC2B,WAAW,CAAC,GAAG3B,SAAQ,eAC1Dc,cAAA,CAACQ,0BAAM,EAAA;AACL0B,YAAAA,KAAK,EAAEjD,CAAC,CAAC,4BAA4B,CAAE;AACvCwD,YAAAA,OAAO,EAAEjD,YAAa;AACtBkD,YAAAA,IAAI,EAAC,QAAA;AAAQ,WACd,CAAC,CAAA;AAAA,SACF,CAAC,CAAA;AAAA,OAAA;AACJ,KACG,CAAC,CAAA;AAAA,GACJ,CAAC,CAAA;AAAA,CAEV;;;;"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
4
|
+
var SlackIcon = require('@bigbinary/neeto-icons/misc/Slack');
|
|
5
|
+
var Typography = require('@bigbinary/neetoui/Typography');
|
|
6
|
+
var Button = require('@bigbinary/neetoui/Button');
|
|
7
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
8
|
+
|
|
9
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
10
|
+
|
|
11
|
+
var SlackIcon__default = /*#__PURE__*/_interopDefaultLegacy(SlackIcon);
|
|
12
|
+
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
13
|
+
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
14
|
+
|
|
15
|
+
var Connect = reactUtils.withT(function (_ref) {
|
|
16
|
+
var t = _ref.t,
|
|
17
|
+
handleRedirectToSlack = _ref.handleRedirectToSlack,
|
|
18
|
+
isAuthorizeUrlFetching = _ref.isAuthorizeUrlFetching;
|
|
19
|
+
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
20
|
+
className: "neeto-ui-w-full mx-auto max-w-lg",
|
|
21
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(SlackIcon__default["default"], {
|
|
22
|
+
size: 32
|
|
23
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
|
|
24
|
+
className: "neeto-ui-text-gray-800 neeto-ui-mb-0.5 neeto-ui-mt-6",
|
|
25
|
+
style: "h2",
|
|
26
|
+
weight: "semibold",
|
|
27
|
+
children: t("neetoSlack.slack.connect.title")
|
|
28
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
|
|
29
|
+
className: "neeto-ui-text-gray-700 neeto-ui-mb-4",
|
|
30
|
+
style: "body1",
|
|
31
|
+
weight: "normal",
|
|
32
|
+
children: t("neetoSlack.slack.connect.description")
|
|
33
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
|
|
34
|
+
label: t("neetoSlack.slack.connect.loginButton"),
|
|
35
|
+
loading: isAuthorizeUrlFetching,
|
|
36
|
+
onClick: handleRedirectToSlack
|
|
37
|
+
})]
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
module.exports = Connect;
|
|
42
|
+
//# sourceMappingURL=Connect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Connect.js","sources":["../../app/javascript/src/components/Steps/Connect.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Slack as SlackIcon } from \"neetoicons/misc\";\nimport { Typography, Button } from \"neetoui\";\n\nconst Connect = withT(\n ({ t, handleRedirectToSlack, isAuthorizeUrlFetching }) => (\n <div className=\"neeto-ui-w-full mx-auto max-w-lg\">\n <SlackIcon size={32} />\n <Typography\n className=\"neeto-ui-text-gray-800 neeto-ui-mb-0.5 neeto-ui-mt-6\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoSlack.slack.connect.title\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-700 neeto-ui-mb-4\"\n style=\"body1\"\n weight=\"normal\"\n >\n {t(\"neetoSlack.slack.connect.description\")}\n </Typography>\n <Button\n label={t(\"neetoSlack.slack.connect.loginButton\")}\n loading={isAuthorizeUrlFetching}\n onClick={handleRedirectToSlack}\n />\n </div>\n )\n);\n\nexport default Connect;\n"],"names":["Connect","withT","_ref","t","handleRedirectToSlack","isAuthorizeUrlFetching","_jsxs","className","children","_jsx","SlackIcon","size","Typography","style","weight","Button","label","loading","onClick"],"mappings":";;;;;;;;;;;;;;AAIA,IAAMA,OAAO,GAAGC,gBAAK,CACnB,UAAAC,IAAA,EAAA;AAAA,EAAA,IAAGC,CAAC,GAAAD,IAAA,CAADC,CAAC;IAAEC,qBAAqB,GAAAF,IAAA,CAArBE,qBAAqB;IAAEC,sBAAsB,GAAAH,IAAA,CAAtBG,sBAAsB,CAAA;AAAA,EAAA,oBACjDC,eAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,kCAAkC;IAAAC,QAAA,EAAA,cAC/CC,cAAA,CAACC,6BAAS,EAAA;AAACC,MAAAA,IAAI,EAAE,EAAA;AAAG,KAAE,CAAC,eACvBF,cAAA,CAACG,8BAAU,EAAA;AACTL,MAAAA,SAAS,EAAC,sDAAsD;AAChEM,MAAAA,KAAK,EAAC,IAAI;AACVC,MAAAA,MAAM,EAAC,UAAU;MAAAN,QAAA,EAEhBL,CAAC,CAAC,gCAAgC,CAAA;AAAC,KAC1B,CAAC,eACbM,cAAA,CAACG,8BAAU,EAAA;AACTL,MAAAA,SAAS,EAAC,sCAAsC;AAChDM,MAAAA,KAAK,EAAC,OAAO;AACbC,MAAAA,MAAM,EAAC,QAAQ;MAAAN,QAAA,EAEdL,CAAC,CAAC,sCAAsC,CAAA;AAAC,KAChC,CAAC,eACbM,cAAA,CAACM,0BAAM,EAAA;AACLC,MAAAA,KAAK,EAAEb,CAAC,CAAC,sCAAsC,CAAE;AACjDc,MAAAA,OAAO,EAAEZ,sBAAuB;AAChCa,MAAAA,OAAO,EAAEd,qBAAAA;AAAsB,KAChC,CAAC,CAAA;AAAA,GACC,CAAC,CAAA;AAAA,CAEV;;;;"}
|