@bigbinary/neeto-templates-frontend 3.0.5 → 3.0.7

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 (60) hide show
  1. package/app/javascript/src/translations/hu.json +44 -0
  2. package/dist/.ready +1 -0
  3. package/dist/CreateTemplateModal.js +7 -234
  4. package/dist/CreateTemplateModal.js.map +1 -1
  5. package/dist/TemplateSettings.js +7 -20
  6. package/dist/TemplateSettings.js.map +1 -1
  7. package/dist/TemplateTags.js +2 -2
  8. package/dist/TemplateTags.js.map +1 -1
  9. package/dist/cjs/CreateTemplateModal.js +8 -235
  10. package/dist/cjs/CreateTemplateModal.js.map +1 -1
  11. package/dist/cjs/TemplateSettings.js +8 -21
  12. package/dist/cjs/TemplateSettings.js.map +1 -1
  13. package/dist/cjs/TemplateTags.js +1 -1
  14. package/dist/cjs/TemplateTags.js.map +1 -1
  15. package/dist/cjs/index.js +9 -6
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/cjs/v2/CreateTemplateModal.js +474 -0
  18. package/dist/cjs/v2/CreateTemplateModal.js.map +1 -0
  19. package/dist/cjs/v2/TemplateSettings.js +335 -0
  20. package/dist/cjs/v2/TemplateSettings.js.map +1 -0
  21. package/dist/cjs/v2/TemplateTags.js +89 -0
  22. package/dist/cjs/v2/TemplateTags.js.map +1 -0
  23. package/dist/cjs/v2/index.js +51 -0
  24. package/dist/cjs/v2/index.js.map +1 -0
  25. package/dist/custom-B69ooaxC.js +254 -0
  26. package/dist/custom-B69ooaxC.js.map +1 -0
  27. package/dist/custom-Y7OHRaLC.js +233 -0
  28. package/dist/custom-Y7OHRaLC.js.map +1 -0
  29. package/dist/index.js +9 -6
  30. package/dist/index.js.map +1 -1
  31. package/dist/query-BHYqZXXl.js.map +1 -1
  32. package/dist/{query-CIe6_co6.js → query-CI8q_ST0.js} +2 -2
  33. package/dist/{query-CIe6_co6.js.map → query-CI8q_ST0.js.map} +1 -1
  34. package/dist/template_tags-BsC73L5P.js +20 -0
  35. package/dist/template_tags-BsC73L5P.js.map +1 -0
  36. package/dist/template_tags-DRZa7U5R.js +22 -0
  37. package/dist/template_tags-DRZa7U5R.js.map +1 -0
  38. package/dist/{useTemplatesApi-AX5fydv5.js → templates-D92QbbVX.js} +3 -79
  39. package/dist/templates-D92QbbVX.js.map +1 -0
  40. package/dist/{useTemplatesApi-Cg_SmcAl.js → templates-Dmrt7dnT.js} +4 -77
  41. package/dist/templates-Dmrt7dnT.js.map +1 -0
  42. package/dist/useTemplatesApi-CFO1OLfz.js +83 -0
  43. package/dist/useTemplatesApi-CFO1OLfz.js.map +1 -0
  44. package/dist/useTemplatesApi-D0AEqebj.js +83 -0
  45. package/dist/useTemplatesApi-D0AEqebj.js.map +1 -0
  46. package/dist/useTemplatesApi-DSXELHFU.js +78 -0
  47. package/dist/useTemplatesApi-DSXELHFU.js.map +1 -0
  48. package/dist/useTemplatesApi-M6UMJYIX.js +78 -0
  49. package/dist/useTemplatesApi-M6UMJYIX.js.map +1 -0
  50. package/dist/v2/CreateTemplateModal.js +453 -0
  51. package/dist/v2/CreateTemplateModal.js.map +1 -0
  52. package/dist/v2/TemplateSettings.js +333 -0
  53. package/dist/v2/TemplateSettings.js.map +1 -0
  54. package/dist/v2/TemplateTags.js +87 -0
  55. package/dist/v2/TemplateTags.js.map +1 -0
  56. package/dist/v2/index.js +43 -0
  57. package/dist/v2/index.js.map +1 -0
  58. package/package.json +47 -35
  59. package/dist/useTemplatesApi-AX5fydv5.js.map +0 -1
  60. package/dist/useTemplatesApi-Cg_SmcAl.js.map +0 -1
@@ -0,0 +1,333 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import { Typography, Spinner, Label } from '@bigbinary/neeto-atoms';
3
+ import { Form, ActionBlock } from '@bigbinary/neeto-atoms/formik';
4
+ import classnames from 'classnames';
5
+ import { removeBy, renameKeys, noop } from '@bigbinary/neeto-cist';
6
+ import MobilePreviewHeader from '@bigbinary/neeto-molecules/v2/MobilePreviewHeader';
7
+ import { useTranslation } from 'react-i18next';
8
+ import { useParams } from 'react-router-dom';
9
+ import { b as useFetchTemplate, c as useUpdateTemplate } from '../useTemplatesApi-DSXELHFU.js';
10
+ import { refetchTags } from '@bigbinary/neeto-tags-frontend/v2/utils';
11
+ import { useMutation, useQuery } from '@tanstack/react-query';
12
+ import { t as templateTagsApi } from '../template_tags-BsC73L5P.js';
13
+ import { Q as QUERY_KEYS, I as IMAGE_UPLOAD_CONFIG } from '../query-CI8q_ST0.js';
14
+ import '../templates-Dmrt7dnT.js';
15
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
16
+ import ImageUploader from '@bigbinary/neeto-image-uploader-frontend/v2/ImageUploader';
17
+ import { useField, useFormikContext } from 'formik';
18
+ import { jsx, jsxs } from 'react/jsx-runtime';
19
+ import { memo } from 'react';
20
+ import Container from '@bigbinary/neeto-molecules/v2/Container';
21
+ import Header from '@bigbinary/neeto-molecules/v2/Header';
22
+ import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
23
+ import TagsComponent from '@bigbinary/neeto-tags-frontend/v2/TagsComponent';
24
+ import { CLOUDFRONT_BASE_URL } from '@bigbinary/neeto-commons-frontend/v2/constants';
25
+ import { pluck } from 'ramda';
26
+ import '@bigbinary/neeto-commons-frontend/react-utils';
27
+ import 'axios';
28
+
29
+ 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; }
30
+ 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; }
31
+ var useCreateTemplateTag = function useCreateTemplateTag(options) {
32
+ return useMutation(_objectSpread$1(_objectSpread$1({
33
+ mutationFn: templateTagsApi.create
34
+ }, options), {}, {
35
+ onSuccess: function onSuccess() {
36
+ refetchTags();
37
+ }
38
+ }));
39
+ };
40
+ var useFetchTemplateTags = function useFetchTemplateTags() {
41
+ return useQuery({
42
+ queryKey: [QUERY_KEYS.TEMPLATE_TAGS],
43
+ queryFn: templateTagsApi.list
44
+ });
45
+ };
46
+
47
+ var FormikImageUploader = function FormikImageUploader(_ref) {
48
+ var name = _ref.name;
49
+ var _useField = useField(name),
50
+ _useField2 = _slicedToArray(_useField, 3),
51
+ field = _useField2[0];
52
+ _useField2[1];
53
+ var setValue = _useField2[2].setValue;
54
+ var _useFormikContext = useFormikContext(),
55
+ setFieldValue = _useFormikContext.setFieldValue;
56
+ var handleImageUpload = function handleImageUpload(file) {
57
+ setFieldValue("imageSignedId", file.signedId);
58
+ return setValue(file.url);
59
+ };
60
+ return /*#__PURE__*/jsx(ImageUploader, {
61
+ className: "h-56 w-full",
62
+ defaultImageSize: {
63
+ width: 512,
64
+ height: 288
65
+ },
66
+ fixedAspectRatio: {
67
+ width: 16,
68
+ height: 9
69
+ },
70
+ src: field.value,
71
+ uploadConfig: IMAGE_UPLOAD_CONFIG,
72
+ onUploadComplete: handleImageUpload
73
+ });
74
+ };
75
+
76
+ var PageWrapper = function PageWrapper(_ref) {
77
+ var children = _ref.children,
78
+ className = _ref.className;
79
+ return /*#__PURE__*/jsx(Container, {
80
+ className: className,
81
+ children: children
82
+ });
83
+ };
84
+ var PageHeader = function PageHeader(_ref2) {
85
+ var title = _ref2.title,
86
+ breadcrumbs = _ref2.breadcrumbs;
87
+ return /*#__PURE__*/jsx(Header, {
88
+ breadcrumbs: breadcrumbs,
89
+ title: title,
90
+ size: "small"
91
+ });
92
+ };
93
+ var customPropEqualityCheck = function customPropEqualityCheck(prevProps, nextProps) {
94
+ return prevProps.title === nextProps.title && prevProps.breadcrumbs === nextProps.breadcrumbs;
95
+ };
96
+ var MemoizedPageHeader = /*#__PURE__*/memo(PageHeader, customPropEqualityCheck);
97
+ var PageContent = function PageContent(_ref3) {
98
+ var children = _ref3.children,
99
+ _ref3$className = _ref3.className,
100
+ className = _ref3$className === void 0 ? "" : _ref3$className;
101
+ return /*#__PURE__*/jsx("div", {
102
+ className: "w-full h-full",
103
+ children: /*#__PURE__*/jsx("div", {
104
+ className: classnames(["mx-auto max-w-7xl", className]),
105
+ children: children
106
+ })
107
+ });
108
+ };
109
+
110
+ var Tags = function Tags(_ref) {
111
+ var allTags = _ref.allTags,
112
+ selectedTags = _ref.selectedTags,
113
+ onUpdate = _ref.onUpdate,
114
+ onCreate = _ref.onCreate,
115
+ isLoading = _ref.isLoading,
116
+ _ref$title = _ref.title,
117
+ title = _ref$title === void 0 ? "" : _ref$title;
118
+ var handleTagSelect = function handleTagSelect(newTag) {
119
+ return onUpdate([].concat(_toConsumableArray(selectedTags), [newTag]));
120
+ };
121
+ var handleTagRemove = function handleTagRemove(removedTag) {
122
+ var updatedTags = removeBy({
123
+ value: removedTag.value
124
+ }, selectedTags);
125
+ onUpdate(updatedTags);
126
+ };
127
+ var handleTagCreate = function handleTagCreate(tagName) {
128
+ onCreate({
129
+ name: tagName
130
+ }, {
131
+ onSuccess: function onSuccess(_ref2) {
132
+ var tag = _ref2.tag;
133
+ return handleTagSelect({
134
+ value: tag.id,
135
+ label: tag.name
136
+ });
137
+ }
138
+ });
139
+ };
140
+ return /*#__PURE__*/jsx("div", {
141
+ className: "w-full",
142
+ children: /*#__PURE__*/jsx(TagsComponent, {
143
+ allTags: allTags,
144
+ selectedTags: selectedTags,
145
+ title: title,
146
+ bodyProps: {
147
+ className: "p-0 w-full"
148
+ },
149
+ titleProps: {
150
+ weight: "medium",
151
+ style: "body2"
152
+ },
153
+ buttonProps: {
154
+ loading: isLoading,
155
+ disabled: isLoading,
156
+ iconPosition: "left"
157
+ },
158
+ onTagCreate: handleTagCreate,
159
+ onTagDelete: handleTagRemove,
160
+ onTagSelect: handleTagSelect
161
+ })
162
+ });
163
+ };
164
+
165
+ var Preview = function Preview(_ref) {
166
+ var template = _ref.template,
167
+ imageUrl = _ref.imageUrl;
168
+ return /*#__PURE__*/jsxs("div", {
169
+ className: "neeto-template bg-background flex flex-col overflow-hidden rounded shadow-xs",
170
+ tabIndex: 0,
171
+ children: [/*#__PURE__*/jsx("div", {
172
+ className: "neeto-template__header",
173
+ children: /*#__PURE__*/jsx("img", {
174
+ className: "neeto-template__image",
175
+ "data-testid": "template-image-preview",
176
+ src: imageUrl || "".concat(CLOUDFRONT_BASE_URL, "/images/neetoForm/default-form-template.svg")
177
+ })
178
+ }), /*#__PURE__*/jsx("div", {
179
+ className: "bg-background p-3 lg:p-5 flex items-center justify-between gap-2",
180
+ children: /*#__PURE__*/jsx(Typography, {
181
+ className: "text-foreground leading-normal",
182
+ "data-testid": "template-title-text",
183
+ variant: "body2",
184
+ weight: "medium",
185
+ children: template.title
186
+ })
187
+ })]
188
+ });
189
+ };
190
+
191
+ var buildSelectOptionsBy = function buildSelectOptionsBy(labelField) {
192
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
193
+ var valueField = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "id";
194
+ return options.map(function (option) {
195
+ return {
196
+ value: option[valueField],
197
+ label: option[labelField]
198
+ };
199
+ });
200
+ };
201
+ var buildTagOptions = function buildTagOptions() {
202
+ var tags = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
203
+ return renameKeys({
204
+ id: "value",
205
+ name: "label"
206
+ }, tags);
207
+ };
208
+ var buildTemplateUpdatePayload = function buildTemplateUpdatePayload(values) {
209
+ return {
210
+ image: values.imageSignedId || null,
211
+ tagIds: pluck("value", values === null || values === void 0 ? void 0 : values.tags)
212
+ };
213
+ };
214
+
215
+ 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; }
216
+ 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; }
217
+ var TemplateSettings = function TemplateSettings(_ref) {
218
+ var _ref$onCancelTemplate = _ref.onCancelTemplatePreview,
219
+ onCancelTemplatePreview = _ref$onCancelTemplate === void 0 ? "" : _ref$onCancelTemplate,
220
+ _ref$breadcrumbs = _ref.breadcrumbs,
221
+ breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
222
+ _ref$className = _ref.className,
223
+ className = _ref$className === void 0 ? "" : _ref$className,
224
+ _ref$resourceId = _ref.resourceId,
225
+ resourceId = _ref$resourceId === void 0 ? "id" : _ref$resourceId;
226
+ var _useParams = useParams(),
227
+ id = _useParams[resourceId];
228
+ var _useTranslation = useTranslation(),
229
+ t = _useTranslation.t;
230
+ var _useFetchTemplate = useFetchTemplate({
231
+ resourceId: id
232
+ }),
233
+ data = _useFetchTemplate.data,
234
+ isFetchingTemplate = _useFetchTemplate.isLoading;
235
+ var _useUpdateTemplate = useUpdateTemplate({
236
+ resourceId: id
237
+ }),
238
+ updateTemplate = _useUpdateTemplate.mutate,
239
+ isUpdatingTemplate = _useUpdateTemplate.isPending;
240
+ var _useCreateTemplateTag = useCreateTemplateTag(),
241
+ createTemplateTag = _useCreateTemplateTag.mutate,
242
+ isCreatingTags = _useCreateTemplateTag.isPending;
243
+ var _useFetchTemplateTags = useFetchTemplateTags(),
244
+ _useFetchTemplateTags2 = _useFetchTemplateTags.data,
245
+ templateTags = _useFetchTemplateTags2 === void 0 ? {} : _useFetchTemplateTags2,
246
+ isTagsLoading = _useFetchTemplateTags.isLoading;
247
+ var handleSubmit = function handleSubmit(values) {
248
+ updateTemplate({
249
+ template: buildTemplateUpdatePayload(values)
250
+ });
251
+ };
252
+ var isLoading = isFetchingTemplate || isTagsLoading;
253
+ var tags = buildTagOptions(data === null || data === void 0 ? void 0 : data.tags);
254
+ var resourceInitialValues = _objectSpread(_objectSpread({
255
+ imageUrl: null
256
+ }, data), {}, {
257
+ tags: tags
258
+ });
259
+ return /*#__PURE__*/jsx(PageWrapper, {
260
+ className: classnames("p-0", className),
261
+ children: /*#__PURE__*/jsx(PageContent, {
262
+ className: "h-full max-w-full mx-0",
263
+ children: isLoading ? /*#__PURE__*/jsx("div", {
264
+ className: "flex h-full w-full items-center justify-center",
265
+ children: /*#__PURE__*/jsx(Spinner, {})
266
+ }) : /*#__PURE__*/jsx(Form, {
267
+ className: "h-full",
268
+ formikProps: {
269
+ enableReinitialize: true,
270
+ initialValues: resourceInitialValues,
271
+ onSubmit: handleSubmit
272
+ },
273
+ children: function children(_ref2) {
274
+ var values = _ref2.values,
275
+ setFieldValue = _ref2.setFieldValue;
276
+ return /*#__PURE__*/jsxs("div", {
277
+ className: "grid md:grid-cols-2 grid-cols-1 h-full",
278
+ children: [/*#__PURE__*/jsxs("div", {
279
+ className: "w-full h-full md:overflow-y-auto",
280
+ children: [/*#__PURE__*/jsxs("div", {
281
+ className: "md:px-10 px-5 pb-2",
282
+ children: [/*#__PURE__*/jsx(MemoizedPageHeader, {
283
+ breadcrumbs: breadcrumbs,
284
+ title: t("neetoTemplate.templateSettings.title")
285
+ }), /*#__PURE__*/jsxs("div", {
286
+ className: "flex flex-col gap-6",
287
+ children: [/*#__PURE__*/jsxs("div", {
288
+ className: "flex flex-col gap-2",
289
+ children: [/*#__PURE__*/jsx(Label, {
290
+ children: t("neetoTemplate.templateSettings.imageLabel")
291
+ }), /*#__PURE__*/jsx(FormikImageUploader, {
292
+ name: "imageUrl"
293
+ })]
294
+ }), /*#__PURE__*/jsx(Tags, {
295
+ isLoading: isCreatingTags,
296
+ selectedTags: values.tags,
297
+ allTags: buildSelectOptionsBy("name", templateTags.tags),
298
+ title: t("neetoTemplate.templateSettings.categoryLabel"),
299
+ onCreate: createTemplateTag,
300
+ onUpdate: function onUpdate(tags) {
301
+ return setFieldValue("tags", tags);
302
+ }
303
+ })]
304
+ })]
305
+ }), /*#__PURE__*/jsx("div", {
306
+ className: "bg-background sticky bottom-0 py-6 md:px-10 px-5",
307
+ children: /*#__PURE__*/jsx(ActionBlock, {
308
+ isSubmitting: isUpdatingTemplate,
309
+ cancelButtonProps: {
310
+ to: onCancelTemplatePreview,
311
+ "data-testid": "reset-changes-button",
312
+ onClick: noop
313
+ }
314
+ })
315
+ })]
316
+ }), /*#__PURE__*/jsx(MobilePreviewHeader, {
317
+ className: "w-full md:hidden"
318
+ }), /*#__PURE__*/jsx("div", {
319
+ className: "bg-muted py-6 md:py-12 px-5 md:px-10 xl:px-16 w-full md:overflow-y-auto",
320
+ children: /*#__PURE__*/jsx(Preview, {
321
+ imageUrl: values.imageUrl,
322
+ template: data
323
+ })
324
+ })]
325
+ });
326
+ }
327
+ })
328
+ })
329
+ });
330
+ };
331
+
332
+ export { TemplateSettings as default };
333
+ //# sourceMappingURL=TemplateSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateSettings.js","sources":["../../app/javascript/src/v2/hooks/reactQuery/useTemplateTagsApi.js","../../app/javascript/src/v2/components/TemplateSettings/Common/FormikImageUploader.jsx","../../app/javascript/src/v2/components/TemplateSettings/Common/SinglePageLayout.jsx","../../app/javascript/src/v2/components/TemplateSettings/Common/Tags.jsx","../../app/javascript/src/v2/components/TemplateSettings/Preview.jsx","../../app/javascript/src/v2/components/TemplateSettings/utils.js","../../app/javascript/src/v2/components/TemplateSettings/index.jsx"],"sourcesContent":["import { refetchTags } from \"@bigbinary/neeto-tags-frontend/v2\";\nimport { useQuery, useMutation } from \"@tanstack/react-query\";\n\nimport templateTagsApi from \"src/apis/template_tags\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nconst useCreateTemplateTag = options =>\n useMutation({\n mutationFn: templateTagsApi.create,\n ...options,\n onSuccess: () => {\n refetchTags();\n options?.onSuccess?.();\n },\n });\n\nconst useFetchTemplateTags = () =>\n useQuery({\n queryKey: [QUERY_KEYS.TEMPLATE_TAGS],\n queryFn: templateTagsApi.list,\n });\n\nexport { useCreateTemplateTag, useFetchTemplateTags };\n","// eslint-disable-next-line @bigbinary/neeto/use-webpack-alias\nimport { ImageUploader } from \"@bigbinary/neeto-image-uploader-frontend/v2\";\nimport { useField, useFormikContext } from \"formik\";\n\nimport { IMAGE_UPLOAD_CONFIG } from \"src/constants\";\n\nconst FormikImageUploader = ({ name }) => {\n const [field, _, { setValue }] = useField(name);\n const { setFieldValue } = useFormikContext();\n\n const handleImageUpload = file => {\n setFieldValue(\"imageSignedId\", file.signedId);\n\n return setValue(file.url);\n };\n\n return (\n <ImageUploader\n className=\"h-56 w-full\"\n defaultImageSize={{ width: 512, height: 288 }}\n fixedAspectRatio={{ width: 16, height: 9 }}\n src={field.value}\n uploadConfig={IMAGE_UPLOAD_CONFIG}\n onUploadComplete={handleImageUpload}\n />\n );\n};\n\nexport default FormikImageUploader;\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\n\nconst PageWrapper = ({ children, className }) => (\n <Container {...{ className }}>{children}</Container>\n);\n\nconst PageHeader = ({ title, breadcrumbs }) => (\n <Header {...{ breadcrumbs, title }} size=\"small\" />\n);\n\nconst customPropEqualityCheck = (prevProps, nextProps) =>\n prevProps.title === nextProps.title &&\n prevProps.breadcrumbs === nextProps.breadcrumbs;\nconst MemoizedPageHeader = memo(PageHeader, customPropEqualityCheck);\n\nconst PageContent = ({ children, className = \"\" }) => (\n <div className=\"w-full h-full\">\n <div className={classnames([\"mx-auto max-w-7xl\", className])}>\n {children}\n </div>\n </div>\n);\nexport { PageWrapper, MemoizedPageHeader as PageHeader, PageContent };\n","// eslint-disable-next-line @bigbinary/neeto/use-webpack-alias\nimport { TagsComponent } from \"@bigbinary/neeto-tags-frontend/v2\";\nimport { removeBy } from \"neetocist\";\n\nconst Tags = ({\n allTags,\n selectedTags,\n onUpdate,\n onCreate,\n isLoading,\n title = \"\",\n}) => {\n const handleTagSelect = newTag => onUpdate([...selectedTags, newTag]);\n\n const handleTagRemove = removedTag => {\n const updatedTags = removeBy({ value: removedTag.value }, selectedTags);\n onUpdate(updatedTags);\n };\n\n const handleTagCreate = tagName => {\n onCreate(\n { name: tagName },\n {\n onSuccess: ({ tag }) =>\n handleTagSelect({ value: tag.id, label: tag.name }),\n }\n );\n };\n\n return (\n <div className=\"w-full\">\n <TagsComponent\n {...{ allTags, selectedTags, title }}\n bodyProps={{ className: \"p-0 w-full\" }}\n titleProps={{ weight: \"medium\", style: \"body2\" }}\n buttonProps={{\n loading: isLoading,\n disabled: isLoading,\n iconPosition: \"left\",\n }}\n onTagCreate={handleTagCreate}\n onTagDelete={handleTagRemove}\n onTagSelect={handleTagSelect}\n />\n </div>\n );\n};\n\nexport default Tags;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { CLOUDFRONT_BASE_URL } from \"neetocommons/v2/constants\";\n\nconst Preview = ({ template, imageUrl }) => (\n <div\n className=\"neeto-template bg-background flex flex-col overflow-hidden rounded shadow-xs\"\n tabIndex={0}\n >\n <div className=\"neeto-template__header\">\n <img\n className=\"neeto-template__image\"\n data-testid=\"template-image-preview\"\n src={\n imageUrl ||\n `${CLOUDFRONT_BASE_URL}/images/neetoForm/default-form-template.svg`\n }\n />\n </div>\n <div className=\"bg-background p-3 lg:p-5 flex items-center justify-between gap-2\">\n <Typography\n className=\"text-foreground leading-normal\"\n data-testid=\"template-title-text\"\n variant=\"body2\"\n weight=\"medium\"\n >\n {template.title}\n </Typography>\n </div>\n </div>\n);\n\nexport default Preview;\n","import { renameKeys } from \"neetocist\";\nimport { pluck } from \"ramda\";\n\nexport const buildSelectOptionsBy = (\n labelField,\n options = [],\n valueField = \"id\"\n) =>\n options.map(option => ({\n value: option[valueField],\n label: option[labelField],\n }));\n\nexport const buildTagOptions = (tags = []) =>\n renameKeys({ id: \"value\", name: \"label\" }, tags);\n\nexport const buildTemplateUpdatePayload = values => ({\n image: values.imageSignedId || null,\n tagIds: pluck(\"value\", values?.tags),\n});\n","import { Spinner, Label } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form } from \"@bigbinary/neeto-atoms/formik\";\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport MobilePreviewHeader from \"neetomolecules/v2/MobilePreviewHeader\";\nimport { useTranslation } from \"react-i18next\";\nimport { useParams } from \"react-router-dom\";\n\nimport {\n useFetchTemplate,\n useUpdateTemplate,\n} from \"v2/hooks/reactQuery/useTemplatesApi\";\nimport {\n useCreateTemplateTag,\n useFetchTemplateTags,\n} from \"v2/hooks/reactQuery/useTemplateTagsApi\";\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/application.css\";\n\nimport FormikImageUploader from \"./Common/FormikImageUploader\";\nimport {\n PageWrapper,\n PageHeader,\n PageContent,\n} from \"./Common/SinglePageLayout\";\nimport Tags from \"./Common/Tags\";\nimport Preview from \"./Preview\";\nimport {\n buildSelectOptionsBy,\n buildTagOptions,\n buildTemplateUpdatePayload,\n} from \"./utils\";\n\nconst TemplateSettings = ({\n onCancelTemplatePreview = \"\",\n breadcrumbs = [],\n className = \"\",\n resourceId = \"id\",\n}) => {\n const { [resourceId]: id } = useParams();\n const { t } = useTranslation();\n\n const { data, isLoading: isFetchingTemplate } = useFetchTemplate({\n resourceId: id,\n });\n\n const { mutate: updateTemplate, isPending: isUpdatingTemplate } =\n useUpdateTemplate({ resourceId: id });\n\n const { mutate: createTemplateTag, isPending: isCreatingTags } =\n useCreateTemplateTag();\n\n const { data: templateTags = {}, isLoading: isTagsLoading } =\n useFetchTemplateTags();\n\n const handleSubmit = values => {\n updateTemplate({ template: buildTemplateUpdatePayload(values) });\n };\n\n const isLoading = isFetchingTemplate || isTagsLoading;\n const tags = buildTagOptions(data?.tags);\n\n const resourceInitialValues = { imageUrl: null, ...data, tags };\n\n return (\n <PageWrapper className={classnames(\"p-0\", className)}>\n <PageContent className=\"h-full max-w-full mx-0\">\n {isLoading ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n ) : (\n <Form\n className=\"h-full\"\n formikProps={{\n enableReinitialize: true,\n initialValues: resourceInitialValues,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setFieldValue }) => (\n <div className=\"grid md:grid-cols-2 grid-cols-1 h-full\">\n <div className=\"w-full h-full md:overflow-y-auto\">\n <div className=\"md:px-10 px-5 pb-2\">\n <PageHeader\n {...{ breadcrumbs }}\n title={t(\"neetoTemplate.templateSettings.title\")}\n />\n <div className=\"flex flex-col gap-6\">\n <div className=\"flex flex-col gap-2\">\n <Label>\n {t(\"neetoTemplate.templateSettings.imageLabel\")}\n </Label>\n <FormikImageUploader name=\"imageUrl\" />\n </div>\n <Tags\n isLoading={isCreatingTags}\n selectedTags={values.tags}\n allTags={buildSelectOptionsBy(\n \"name\",\n templateTags.tags\n )}\n title={t(\n \"neetoTemplate.templateSettings.categoryLabel\"\n )}\n onCreate={createTemplateTag}\n onUpdate={tags => setFieldValue(\"tags\", tags)}\n />\n </div>\n </div>\n <div className=\"bg-background sticky bottom-0 py-6 md:px-10 px-5\">\n <ActionBlock\n isSubmitting={isUpdatingTemplate}\n cancelButtonProps={{\n to: onCancelTemplatePreview,\n \"data-testid\": \"reset-changes-button\",\n onClick: noop,\n }}\n />\n </div>\n </div>\n <MobilePreviewHeader className=\"w-full md:hidden\" />\n <div className=\"bg-muted py-6 md:py-12 px-5 md:px-10 xl:px-16 w-full md:overflow-y-auto\">\n <Preview imageUrl={values.imageUrl} template={data} />\n </div>\n </div>\n )}\n </Form>\n )}\n </PageContent>\n </PageWrapper>\n );\n};\n\nexport default TemplateSettings;\n"],"names":["useCreateTemplateTag","options","useMutation","_objectSpread","mutationFn","templateTagsApi","create","onSuccess","refetchTags","useFetchTemplateTags","useQuery","queryKey","QUERY_KEYS","TEMPLATE_TAGS","queryFn","list","FormikImageUploader","_ref","name","_useField","useField","_useField2","_slicedToArray","field","_","setValue","_useFormikContext","useFormikContext","setFieldValue","handleImageUpload","file","signedId","url","_jsx","ImageUploader","className","defaultImageSize","width","height","fixedAspectRatio","src","value","uploadConfig","IMAGE_UPLOAD_CONFIG","onUploadComplete","PageWrapper","children","Container","PageHeader","_ref2","title","breadcrumbs","Header","size","customPropEqualityCheck","prevProps","nextProps","MemoizedPageHeader","memo","PageContent","_ref3","_ref3$className","classnames","Tags","allTags","selectedTags","onUpdate","onCreate","isLoading","_ref$title","handleTagSelect","newTag","concat","_toConsumableArray","handleTagRemove","removedTag","updatedTags","removeBy","handleTagCreate","tagName","tag","id","label","TagsComponent","bodyProps","titleProps","weight","style","buttonProps","loading","disabled","iconPosition","onTagCreate","onTagDelete","onTagSelect","Preview","template","imageUrl","_jsxs","tabIndex","CLOUDFRONT_BASE_URL","Typography","variant","buildSelectOptionsBy","labelField","arguments","length","undefined","valueField","map","option","buildTagOptions","tags","renameKeys","buildTemplateUpdatePayload","values","image","imageSignedId","tagIds","pluck","TemplateSettings","_ref$onCancelTemplate","onCancelTemplatePreview","_ref$breadcrumbs","_ref$className","_ref$resourceId","resourceId","_useParams","useParams","_useTranslation","useTranslation","t","_useFetchTemplate","useFetchTemplate","data","isFetchingTemplate","_useUpdateTemplate","useUpdateTemplate","updateTemplate","mutate","isUpdatingTemplate","isPending","_useCreateTemplateTag","createTemplateTag","isCreatingTags","_useFetchTemplateTags","_useFetchTemplateTags2","templateTags","isTagsLoading","handleSubmit","resourceInitialValues","Spinner","Form","formikProps","enableReinitialize","initialValues","onSubmit","Label","ActionBlock","isSubmitting","cancelButtonProps","to","onClick","noop","MobilePreviewHeader"],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
+ import NeetoTags from '@bigbinary/neeto-tags-frontend/v2/NeetoTags';
4
+ import { useQueryClient } from '@tanstack/react-query';
5
+ import { noop } from '@bigbinary/neeto-cist';
6
+ import { N as NEETO_TEMPLATES_URL, Q as QUERY_KEYS } from '../query-CI8q_ST0.js';
7
+ import { Typography } from '@bigbinary/neeto-atoms';
8
+ import { t } from 'i18next';
9
+ import { jsxs, jsx } from 'react/jsx-runtime';
10
+
11
+ var TAG_TYPES = [{
12
+ id: 1,
13
+ label: t("neetoTemplate.templatesTags.template"),
14
+ url: "".concat(NEETO_TEMPLATES_URL, "/tags/template_tags"),
15
+ columns: [{
16
+ title: t("neetoTemplate.templatesTags.numberOfActiveTemplates"),
17
+ key: "templates_count",
18
+ dataIndex: "templatesCount",
19
+ align: "center",
20
+ width: 300,
21
+ sorter: true,
22
+ render: function render(templatesCount) {
23
+ return templatesCount !== 0 ? /*#__PURE__*/jsxs(Typography, {
24
+ variant: "body1",
25
+ children: [" ", templatesCount, " "]
26
+ }) : "-";
27
+ }
28
+ }]
29
+ }];
30
+
31
+ var _excluded = ["breadcrumbs", "tagsPath"];
32
+ 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; }
33
+ 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; }
34
+ var TemplateTags = function TemplateTags(_ref) {
35
+ var breadcrumbs = _ref.breadcrumbs,
36
+ tagsPath = _ref.tagsPath,
37
+ otherProps = _objectWithoutProperties(_ref, _excluded);
38
+ var queryClient = useQueryClient();
39
+ var invalidateTags = function invalidateTags() {
40
+ queryClient.invalidateQueries({
41
+ queryKey: [QUERY_KEYS.TEMPLATE_TAGS]
42
+ });
43
+ };
44
+ var invalidateTagsAndTemplates = function invalidateTagsAndTemplates() {
45
+ invalidateTags();
46
+ queryClient.invalidateQueries({
47
+ queryKey: [QUERY_KEYS.TEMPLATES_LIST]
48
+ });
49
+ queryClient.invalidateQueries({
50
+ queryKey: [QUERY_KEYS.TEMPLATE]
51
+ });
52
+ };
53
+ var config = _objectSpread({
54
+ tagTypes: TAG_TYPES,
55
+ tagsMergable: true,
56
+ breadcrumbs: breadcrumbs,
57
+ displayMenu: false,
58
+ tagsPath: tagsPath,
59
+ onTagRowClick: noop,
60
+ createTags: {
61
+ onSuccess: {
62
+ callback: invalidateTags
63
+ }
64
+ },
65
+ updateTags: {
66
+ onSuccess: {
67
+ callback: invalidateTagsAndTemplates
68
+ }
69
+ },
70
+ deleteTags: {
71
+ onSuccess: {
72
+ callback: invalidateTagsAndTemplates
73
+ }
74
+ },
75
+ mergeTags: {
76
+ onSuccess: {
77
+ callback: invalidateTagsAndTemplates
78
+ }
79
+ }
80
+ }, otherProps);
81
+ return /*#__PURE__*/jsx(NeetoTags, {
82
+ config: config
83
+ });
84
+ };
85
+
86
+ export { TemplateTags as default };
87
+ //# sourceMappingURL=TemplateTags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateTags.js","sources":["../../app/javascript/src/v2/components/TemplateTags/constants.jsx","../../app/javascript/src/v2/components/TemplateTags/index.jsx"],"sourcesContent":["import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\n\nimport { NEETO_TEMPLATES_URL } from \"src/constants\";\n\nexport const TAG_TYPES = [\n {\n id: 1,\n label: t(\"neetoTemplate.templatesTags.template\"),\n url: `${NEETO_TEMPLATES_URL}/tags/template_tags`,\n columns: [\n {\n title: t(\"neetoTemplate.templatesTags.numberOfActiveTemplates\"),\n key: \"templates_count\",\n dataIndex: \"templatesCount\",\n align: \"center\",\n width: 300,\n sorter: true,\n render: templatesCount =>\n templatesCount !== 0 ? (\n <Typography variant=\"body1\"> {templatesCount} </Typography>\n ) : (\n \"-\"\n ),\n },\n ],\n },\n];\n","// eslint-disable-next-line @bigbinary/neeto/use-webpack-alias\nimport { NeetoTags } from \"@bigbinary/neeto-tags-frontend/v2\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { noop } from \"neetocist\";\n\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nimport { TAG_TYPES } from \"./constants\";\n\nconst TemplateTags = ({ breadcrumbs, tagsPath, ...otherProps }) => {\n const queryClient = useQueryClient();\n\n const invalidateTags = () => {\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.TEMPLATE_TAGS],\n });\n };\n\n const invalidateTagsAndTemplates = () => {\n invalidateTags();\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.TEMPLATES_LIST],\n });\n\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.TEMPLATE],\n });\n };\n\n const config = {\n tagTypes: TAG_TYPES,\n tagsMergable: true,\n breadcrumbs,\n displayMenu: false,\n tagsPath,\n onTagRowClick: noop,\n createTags: { onSuccess: { callback: invalidateTags } },\n updateTags: { onSuccess: { callback: invalidateTagsAndTemplates } },\n deleteTags: { onSuccess: { callback: invalidateTagsAndTemplates } },\n mergeTags: { onSuccess: { callback: invalidateTagsAndTemplates } },\n ...otherProps,\n };\n\n return <NeetoTags {...{ config }} />;\n};\n\nexport default TemplateTags;\n"],"names":["TAG_TYPES","id","label","t","url","concat","NEETO_TEMPLATES_URL","columns","title","key","dataIndex","align","width","sorter","render","templatesCount","_jsxs","Typography","variant","children","TemplateTags","_ref","breadcrumbs","tagsPath","otherProps","_objectWithoutProperties","_excluded","queryClient","useQueryClient","invalidateTags","invalidateQueries","queryKey","QUERY_KEYS","TEMPLATE_TAGS","invalidateTagsAndTemplates","TEMPLATES_LIST","TEMPLATE","config","_objectSpread","tagTypes","tagsMergable","displayMenu","onTagRowClick","noop","createTags","onSuccess","callback","updateTags","deleteTags","mergeTags","_jsx","NeetoTags"],"mappings":";;;;;;;;;;AAKO,IAAMA,SAAS,GAAG,CACvB;AACEC,EAAAA,EAAE,EAAE,CAAC;AACLC,EAAAA,KAAK,EAAEC,CAAC,CAAC,sCAAsC,CAAC;AAChDC,EAAAA,GAAG,EAAA,EAAA,CAAAC,MAAA,CAAKC,mBAAmB,EAAA,qBAAA,CAAqB;AAChDC,EAAAA,OAAO,EAAE,CACP;AACEC,IAAAA,KAAK,EAAEL,CAAC,CAAC,qDAAqD,CAAC;AAC/DM,IAAAA,GAAG,EAAE,iBAAiB;AACtBC,IAAAA,SAAS,EAAE,gBAAgB;AAC3BC,IAAAA,KAAK,EAAE,QAAQ;AACfC,IAAAA,KAAK,EAAE,GAAG;AACVC,IAAAA,MAAM,EAAE,IAAI;AACZC,IAAAA,MAAM,EAAE,SAARA,MAAMA,CAAEC,cAAc,EAAA;AAAA,MAAA,OACpBA,cAAc,KAAK,CAAC,gBAClBC,IAAA,CAACC,UAAU,EAAA;AAACC,QAAAA,OAAO,EAAC,OAAO;AAAAC,QAAAA,QAAA,EAAA,CAAC,GAAC,EAACJ,cAAc,EAAC,GAAC;OAAY,CAAC,GAE3D,GACD;AAAA,IAAA;GACJ;AAEL,CAAC,CACF;;;;;AClBD,IAAMK,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAAiD;AAAA,EAAA,IAA3CC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;AAAKC,IAAAA,UAAU,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA,CAAA;AAC1D,EAAA,IAAMC,WAAW,GAAGC,cAAc,EAAE;AAEpC,EAAA,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,GAAS;IAC3BF,WAAW,CAACG,iBAAiB,CAAC;AAC5BC,MAAAA,QAAQ,EAAE,CAACC,UAAU,CAACC,aAAa;AACrC,KAAC,CAAC;EACJ,CAAC;AAED,EAAA,IAAMC,0BAA0B,GAAG,SAA7BA,0BAA0BA,GAAS;AACvCL,IAAAA,cAAc,EAAE;IAChBF,WAAW,CAACG,iBAAiB,CAAC;AAC5BC,MAAAA,QAAQ,EAAE,CAACC,UAAU,CAACG,cAAc;AACtC,KAAC,CAAC;IAEFR,WAAW,CAACG,iBAAiB,CAAC;AAC5BC,MAAAA,QAAQ,EAAE,CAACC,UAAU,CAACI,QAAQ;AAChC,KAAC,CAAC;EACJ,CAAC;EAED,IAAMC,MAAM,GAAAC,aAAA,CAAA;AACVC,IAAAA,QAAQ,EAAEvC,SAAS;AACnBwC,IAAAA,YAAY,EAAE,IAAI;AAClBlB,IAAAA,WAAW,EAAXA,WAAW;AACXmB,IAAAA,WAAW,EAAE,KAAK;AAClBlB,IAAAA,QAAQ,EAARA,QAAQ;AACRmB,IAAAA,aAAa,EAAEC,IAAI;AACnBC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,SAAS,EAAE;AAAEC,QAAAA,QAAQ,EAAEjB;AAAe;KAAG;AACvDkB,IAAAA,UAAU,EAAE;AAAEF,MAAAA,SAAS,EAAE;AAAEC,QAAAA,QAAQ,EAAEZ;AAA2B;KAAG;AACnEc,IAAAA,UAAU,EAAE;AAAEH,MAAAA,SAAS,EAAE;AAAEC,QAAAA,QAAQ,EAAEZ;AAA2B;KAAG;AACnEe,IAAAA,SAAS,EAAE;AAAEJ,MAAAA,SAAS,EAAE;AAAEC,QAAAA,QAAQ,EAAEZ;AAA2B;AAAE;AAAC,GAAA,EAC/DV,UAAU,CACd;EAED,oBAAO0B,GAAA,CAACC,SAAS,EAAA;AAAOd,IAAAA,MAAM,EAANA;AAAM,GAAK,CAAC;AACtC;;;;"}
@@ -0,0 +1,43 @@
1
+ import '../templates-Dmrt7dnT.js';
2
+ export { default as CreateTemplateModal } from './CreateTemplateModal.js';
3
+ export { default as TemplateSettings } from './TemplateSettings.js';
4
+ export { default as TemplateTags } from './TemplateTags.js';
5
+ import 'axios';
6
+ import '../query-CI8q_ST0.js';
7
+ import '@babel/runtime/helpers/slicedToArray';
8
+ import 'react';
9
+ import '@bigbinary/neeto-atoms';
10
+ import '@bigbinary/neeto-cist';
11
+ import '@babel/runtime/helpers/defineProperty';
12
+ import '@babel/runtime/helpers/toConsumableArray';
13
+ import '@bigbinary/neeto-commons-frontend/v2/initializers';
14
+ import '@bigbinary/neeto-icons/typeface-logos/Neeto';
15
+ import '@bigbinary/neeto-icons/typeface-logos';
16
+ import '@bigbinary/neeto-molecules/v2/HelpPopover';
17
+ import '@bigbinary/neeto-molecules/v2/Search';
18
+ import 'react-i18next';
19
+ import '../custom-Y7OHRaLC.js';
20
+ import '../useTemplatesApi-DSXELHFU.js';
21
+ import '@bigbinary/neeto-tags-frontend/v2/utils';
22
+ import '@tanstack/react-query';
23
+ import '@bigbinary/neeto-commons-frontend/react-utils';
24
+ import 'ramda';
25
+ import 'react/jsx-runtime';
26
+ import '@bigbinary/neeto-commons-frontend/v2/constants';
27
+ import 'classnames';
28
+ import '@bigbinary/neeto-commons-frontend/v2/utils';
29
+ import '@bigbinary/neeto-commons-frontend/v2/react-utils';
30
+ import '@bigbinary/neeto-molecules/v2/ResponsiveDevicePicker';
31
+ import '@bigbinary/neeto-atoms/formik';
32
+ import '@bigbinary/neeto-molecules/v2/MobilePreviewHeader';
33
+ import 'react-router-dom';
34
+ import '../template_tags-BsC73L5P.js';
35
+ import '@bigbinary/neeto-image-uploader-frontend/v2/ImageUploader';
36
+ import 'formik';
37
+ import '@bigbinary/neeto-molecules/v2/Container';
38
+ import '@bigbinary/neeto-molecules/v2/Header';
39
+ import '@bigbinary/neeto-tags-frontend/v2/TagsComponent';
40
+ import '@babel/runtime/helpers/objectWithoutProperties';
41
+ import '@bigbinary/neeto-tags-frontend/v2/NeetoTags';
42
+ import 'i18next';
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}