@bigbinary/neeto-templates-frontend 2.0.1 → 2.1.0

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateTemplateModal.js","sources":["../app/javascript/src/components/CreateTemplateModal/constants.js","../node_modules/react-intersection-observer-hook/dist/react-intersection-observer-hook.esm.js","../node_modules/react-infinite-scroll-hook/dist/react-infinite-scroll-hook.esm.js","../app/javascript/src/assets/dashboard/custom.svg","../app/javascript/src/components/CreateTemplateModal/BlankCard.jsx","../app/javascript/src/components/CreateTemplateModal/Card.jsx","../app/javascript/src/components/CreateTemplateModal/CategoryItem.jsx","../app/javascript/src/components/CreateTemplateModal/List.jsx","../app/javascript/src/components/CreateTemplateModal/Preview.jsx","../app/javascript/src/components/CreateTemplateModal/index.jsx"],"sourcesContent":["export const TEMPLATE_SCREENS = { LIST: \"List\", PREVIEW: \"Preview\" };\n\nexport const DEFAULT_CATEGORY = { id: \"all\", name: \"All\" };\n\nexport const INFINITE_SCROLL_DELAY = 500;\n\nexport const MENU_ITEMS = { CREATE: \"create\", PREVIEW: \"preview\" };\n\nexport const RESPONSIVE_DEVICES = {\n DESKTOP: \"desktop\",\n TABLET: \"tablet\",\n MOBILE: \"mobile\",\n};\n","import { useRef, useState, useCallback } from 'react';\n\nfunction createObserverCache() {\n var cachesByRoot = new Map();\n\n function getObserver(_ref) {\n var root = _ref.root,\n rootMargin = _ref.rootMargin,\n threshold = _ref.threshold;\n var cacheByRoot = cachesByRoot.get(root);\n\n if (!cacheByRoot) {\n cacheByRoot = new Map();\n cachesByRoot.set(root, cacheByRoot);\n }\n\n var cacheKey = JSON.stringify({\n rootMargin: rootMargin,\n threshold: threshold\n });\n var cachedObserver = cacheByRoot.get(cacheKey);\n\n if (!cachedObserver) {\n var entryCallbacks = new Map();\n var observer = new IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n var callback = entryCallbacks.get(entry.target);\n callback == null ? void 0 : callback(entry);\n });\n }, {\n root: root,\n rootMargin: rootMargin,\n threshold: threshold\n });\n cachedObserver = {\n observer: observer,\n entryCallbacks: entryCallbacks\n };\n cacheByRoot.set(cacheKey, cachedObserver);\n }\n\n return {\n observe: function observe(node, callback) {\n var _cachedObserver, _cachedObserver2;\n\n (_cachedObserver = cachedObserver) == null ? void 0 : _cachedObserver.entryCallbacks.set(node, callback);\n (_cachedObserver2 = cachedObserver) == null ? void 0 : _cachedObserver2.observer.observe(node);\n },\n unobserve: function unobserve(node) {\n var _cachedObserver3, _cachedObserver4;\n\n (_cachedObserver3 = cachedObserver) == null ? void 0 : _cachedObserver3.entryCallbacks[\"delete\"](node);\n (_cachedObserver4 = cachedObserver) == null ? void 0 : _cachedObserver4.observer.unobserve(node);\n }\n };\n }\n\n return {\n getObserver: getObserver\n };\n}\n\nvar DEFAULT_ROOT_MARGIN = '0px';\nvar DEFAULT_THRESHOLD = [0];\nvar observerCache = /*#__PURE__*/createObserverCache(); // For more info:\n// https://developers.google.com/web/updates/2016/04/intersectionobserver\n// https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n\nfunction useIntersectionObserver(args) {\n var _args$rootMargin, _args$threshold;\n\n var rootMargin = (_args$rootMargin = args == null ? void 0 : args.rootMargin) != null ? _args$rootMargin : DEFAULT_ROOT_MARGIN;\n var threshold = (_args$threshold = args == null ? void 0 : args.threshold) != null ? _args$threshold : DEFAULT_THRESHOLD;\n var nodeRef = useRef(null);\n var rootRef = useRef(null);\n var observerRef = useRef(null);\n\n var _useState = useState(),\n entry = _useState[0],\n setEntry = _useState[1];\n\n var observe = useCallback(function () {\n var node = nodeRef.current;\n\n if (!node) {\n setEntry(undefined);\n return;\n }\n\n var observer = observerCache.getObserver({\n root: rootRef.current,\n rootMargin: rootMargin,\n threshold: threshold\n });\n observer.observe(node, function (observedEntry) {\n setEntry(observedEntry);\n });\n observerRef.current = observer;\n }, [rootMargin, threshold]);\n var unobserve = useCallback(function () {\n var currentObserver = observerRef.current;\n var node = nodeRef.current;\n\n if (node) {\n currentObserver == null ? void 0 : currentObserver.unobserve(node);\n }\n\n observerRef.current = null;\n }, []); // React will call the ref callback with the DOM element when the component mounts,\n // and call it with null when it unmounts.\n // So, we don't need an useEffect etc to unobserve nodes.\n // When nodeRef.current is null, it will be unobserved and observe function\n // won't do anything.\n\n var refCallback = useCallback(function (node) {\n unobserve();\n nodeRef.current = node;\n observe();\n }, [observe, unobserve]);\n var rootRefCallback = useCallback(function (rootNode) {\n unobserve();\n rootRef.current = rootNode;\n observe();\n }, [observe, unobserve]);\n return [refCallback, {\n entry: entry,\n rootRef: rootRefCallback\n }];\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction useTrackVisibility(args) {\n var _result$entry;\n\n var _useIntersectionObser = useIntersectionObserver(args),\n ref = _useIntersectionObser[0],\n result = _useIntersectionObser[1];\n\n var isVisible = Boolean((_result$entry = result.entry) == null ? void 0 : _result$entry.isIntersecting);\n\n var _useState = useState(isVisible),\n wasEverVisible = _useState[0],\n setWasEverVisible = _useState[1];\n\n if (isVisible && !wasEverVisible) {\n setWasEverVisible(true);\n }\n\n return [ref, _extends({}, result, {\n isVisible: isVisible,\n wasEverVisible: wasEverVisible\n })];\n}\n\nexport { useIntersectionObserver, useTrackVisibility };\n//# sourceMappingURL=react-intersection-observer-hook.esm.js.map\n","import { useEffect } from 'react';\nimport { useTrackVisibility } from 'react-intersection-observer-hook';\n\nvar DEFAULT_DELAY_IN_MS = 100;\n\nfunction useInfiniteScroll(_ref) {\n var loading = _ref.loading,\n hasNextPage = _ref.hasNextPage,\n onLoadMore = _ref.onLoadMore,\n rootMargin = _ref.rootMargin,\n disabled = _ref.disabled,\n _ref$delayInMs = _ref.delayInMs,\n delayInMs = _ref$delayInMs === void 0 ? DEFAULT_DELAY_IN_MS : _ref$delayInMs;\n\n var _useTrackVisibility = useTrackVisibility({\n rootMargin: rootMargin\n }),\n ref = _useTrackVisibility[0],\n _useTrackVisibility$ = _useTrackVisibility[1],\n rootRef = _useTrackVisibility$.rootRef,\n isVisible = _useTrackVisibility$.isVisible;\n\n var shouldLoadMore = !disabled && !loading && isVisible && hasNextPage; // eslint-disable-next-line consistent-return\n\n useEffect(function () {\n if (shouldLoadMore) {\n // When we trigger 'onLoadMore' and new items are added to the list,\n // right before they become rendered on the screen, 'loading' becomes false\n // and 'isVisible' can be true for a brief time, based on the scroll position.\n // So, it triggers 'onLoadMore' just after the first one is finished.\n // We use a small delay here to prevent this kind of situations.\n // It can be configured by hook args.\n var timer = setTimeout(function () {\n onLoadMore();\n }, delayInMs);\n return function () {\n clearTimeout(timer);\n };\n }\n }, [onLoadMore, shouldLoadMore, delayInMs]);\n return [ref, {\n rootRef: rootRef\n }];\n}\n\nexport default useInfiniteScroll;\n//# sourceMappingURL=react-infinite-scroll-hook.esm.js.map\n","<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"46\" height=\"46\" fill=\"none\" viewBox=\"0 0 46 46\"><rect width=\"40\" height=\"40\" x=\"3\" y=\"2\" fill=\"#008068\" rx=\"2\"/><path fill=\"#fff\" fill-rule=\"evenodd\" d=\"M23.75 16C23.75 15.5858 23.4142 15.25 23 15.25C22.5858 15.25 22.25 15.5858 22.25 16V21.25H17C16.5858 21.25 16.25 21.5858 16.25 22C16.25 22.4142 16.5858 22.75 17 22.75H22.25V28C22.25 28.4142 22.5858 28.75 23 28.75C23.4142 28.75 23.75 28.4142 23.75 28V22.75H29C29.4142 22.75 29.75 22.4142 29.75 22C29.75 21.5858 29.4142 21.25 29 21.25H23.75V16Z\" clip-rule=\"evenodd\"/></svg>\n","import React from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nconst BlankCard = ({\n icon: Icon,\n title,\n description,\n onClick = noop,\n disabled = false,\n}) => (\n <div\n className=\"neeto-ui-rounded-lg neeto-ui-bg-white hover:neeto-ui-bg-white neeto-ui-border-primary-500 flex cursor-pointer flex-col items-center justify-center border border-dashed p-6 outline-none transition-all duration-300 ease-in-out hover:border-solid focus:border-solid\"\n data-cy=\"start-from-scratch-button\"\n tabIndex={0}\n onClick={!disabled ? onClick : noop}\n >\n <div className=\"neeto-ui-text-primary-500 mb-4\">\n <Icon size={40} />\n </div>\n <Typography\n className=\"text-center\"\n lineHeight=\"normal\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-600 text-center\"\n lineHeight=\"leading-4\"\n style=\"body3\"\n >\n {description}\n </Typography>\n </div>\n);\n\nexport default BlankCard;\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ template, onClick }) => (\n <div\n {...{ onClick }}\n className=\"neeto-template neeto-template-thumbnail neeto-ui-bg-white neeto-ui-shadow-xs hover:neeto-ui-border-gray-500 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col overflow-hidden border outline-none transition-colors duration-300 ease-in-out\"\n data-cy=\"template-card\"\n tabIndex={0}\n >\n <div className=\"neeto-template__header relative overflow-hidden\">\n <img\n className=\"neeto-template__image\"\n data-cy=\"template-thumbnail-image\"\n src={\n template.imageUrl ||\n \"https://d2v7kzglnr2dnh.cloudfront.net/images/neetoForm/default-form-template.svg\"\n }\n />\n </div>\n <div className=\"neeto-template__description neeto-ui-bg-white flex items-center justify-between gap-2 rounded-b-lg px-3 py-1.5\">\n <Typography\n className=\"neeto-template-thumbnail__title line-clamp-2\"\n data-cy=\"template-card-title\"\n lineHeight=\"normal\"\n style=\"h5\"\n >\n {template.title}\n </Typography>\n </div>\n </div>\n);\n\nexport default Card;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils\";\n\nconst CategoryItem = ({ label, count, isActive, setCurrentCategory }) => (\n <button\n data-cy={`category-${joinHyphenCase(label)}`}\n tabIndex={0}\n className={classnames(\n \"neeto-ui-rounded-lg outline-none flex w-full items-center justify-between gap-2 border border-solid px-3 py-2 text-sm font-medium leading-4 transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-text-gray-700 hover:neeto-ui-bg-gray-200 focus:neeto-ui-bg-gray-200 border-transparent\":\n !isActive,\n \"neeto-ui-text-gray-800 neeto-ui-bg-white neeto-ui-border-gray-300 focus:neeto-ui-border-gray-500\":\n isActive,\n }\n )}\n onClick={setCurrentCategory}\n >\n <span>{label}</span>\n <span>{count}</span>\n </button>\n);\n\nexport default CategoryItem;\n","import React, { useState } from \"react\";\n\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport useInfiniteScroll from \"react-infinite-scroll-hook\";\n\nimport CustomSVG from \"assets/dashboard/custom\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport BlankCard from \"./BlankCard\";\nimport Card from \"./Card\";\nimport CategoryItem from \"./CategoryItem\";\nimport {\n DEFAULT_CATEGORY,\n INFINITE_SCROLL_DELAY,\n TEMPLATE_SCREENS,\n} from \"./constants\";\n\nconst List = ({\n setCurrentScreen,\n setSelectedTemplate,\n onCreate,\n isCreating,\n afterCreate,\n refetchResource,\n}) => {\n const { t } = useTranslation();\n\n const [currentCategory, setCurrentCategory] = useState(DEFAULT_CATEGORY);\n const [searchTerm, setSearchTerm] = useState(\"\");\n\n const {\n hasNextPage = false,\n fetchNextPage,\n isLoading: isTemplatesLoading,\n data = {},\n } = useFetchTemplates({ searchTerm, category: currentCategory });\n\n const [sentryRef, { rootRef }] = useInfiniteScroll({\n loading: isTemplatesLoading,\n hasNextPage,\n onLoadMore: fetchNextPage,\n rootMargin: \"0px 0px 700px 0px\",\n delayInMs: INFINITE_SCROLL_DELAY,\n });\n\n const handleCardClick = template => {\n setCurrentScreen(TEMPLATE_SCREENS.PREVIEW);\n setSelectedTemplate(template);\n };\n\n if (isTemplatesLoading) {\n return <PageLoader />;\n }\n\n const { tags = [], templates = [], templatesCount = 0 } = data;\n\n const categories = [{ ...DEFAULT_CATEGORY, count: templatesCount }, ...tags];\n\n return (\n <div className=\"neeto-ui-bg-gray-100 relative flex min-h-full items-start\">\n <div className=\"sticky left-0 top-0 w-52 flex-shrink-0 space-y-8 py-6 pl-4 md:w-72 md:pl-10 lg:w-80 xl:pl-16\">\n <div className=\"space-y-4\">\n <div className=\"space-y-1\">\n <Typography\n data-cy=\"create-new-form-title\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoTemplate.templates.createNewEntity\")}\n </Typography>\n <Typography lineHeight=\"normal\" style=\"body2\">\n {t(\"neetoTemplate.templates.description\")}\n </Typography>\n </div>\n <Search\n autoFocus\n disableTrimOnBlur\n data-cy=\"template-search-input\"\n placeholder={t(\"neetoTemplate.templates.search\")}\n onSearch={value => setSearchTerm(value)}\n />\n </div>\n <div className=\"space-y-3\">\n <Typography\n className=\"uppercase\"\n data-cy=\"template-categories-label\"\n style=\"h6\"\n >\n {t(\"neetoTemplate.templates.categories\")}\n </Typography>\n <div className=\"space-y-2\">\n {categories.map(({ id, name, count }) => (\n <CategoryItem\n {...{ count }}\n isActive={currentCategory.id === id}\n key={id}\n label={name}\n setCurrentCategory={() => setCurrentCategory({ id, name })}\n />\n ))}\n </div>\n </div>\n </div>\n <div\n className=\"h-screen w-full overflow-y-auto py-8 pl-5 pr-4 md:pl-8 md:pr-20 xl:px-20\"\n ref={rootRef}\n >\n <div className=\"flex-grow space-y-6\">\n <div className=\"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3 lg:gap-5 xl:gap-6 2xl:grid-cols-4\">\n <BlankCard\n description={t(\"neetoTemplate.templates.blankCard.description\")}\n disabled={isCreating}\n icon={isCreating ? Spinner : CustomSVG}\n title={t(\"neetoTemplate.templates.blankCard.title\")}\n onClick={onCreate}\n />\n {templates.map((template, index) => (\n <Card\n {...{ afterCreate, refetchResource, template }}\n key={index}\n onClick={() => handleCardClick(template)}\n />\n ))}\n </div>\n {hasNextPage && (\n <div className=\"my-10 text-center\" ref={sentryRef}>\n <Spinner />\n </div>\n )}\n </div>\n </div>\n </div>\n );\n};\n\nexport default List;\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useBreakpoints } from \"neetocommons/react-utils\";\nimport ResponsiveDevicePicker from \"neetomolecules/ResponsiveDevicePicker\";\nimport { Button, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateTemplate } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport { TEMPLATE_SCREENS, RESPONSIVE_DEVICES } from \"./constants\";\n\nconst Preview = ({\n selectedTemplate,\n setCurrentScreen,\n afterCreate,\n refetchResource,\n}) => {\n const { t } = useTranslation();\n\n const { isSize } = useBreakpoints();\n\n const { mutate: createTemplate, isPending: isCreating } = useCreateTemplate();\n\n const [selectedDevice, setSelectedDevice] = useState(\n RESPONSIVE_DEVICES.DESKTOP\n );\n\n const handleCreateTemplate = () => {\n createTemplate(\n { id: selectedTemplate.id },\n {\n onSuccess: response => {\n afterCreate(response);\n refetchResource();\n },\n }\n );\n };\n\n const { title, previewUrl } = selectedTemplate;\n\n return (\n <div className=\"neeto-templates-full-page-preview flex h-full w-full flex-col\">\n <div className=\"neeto-templates-full-page-preview__header neeto-ui-border-gray-200 border-b px-4\">\n <div className=\"mx-auto flex w-full max-w-6xl items-center justify-between py-[9px]\">\n <div className=\"w-1/3\">\n <Typography\n className=\"truncate leading-tight\"\n data-cy=\"preview-template-title\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </div>\n <div className=\"hidden flex-shrink-0 lg:flex\">\n <ResponsiveDevicePicker\n {...{ selectedDevice }}\n onDeviceChange={setSelectedDevice}\n />\n </div>\n <div className=\"flex w-1/3 items-center justify-end gap-2\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"preview-template-back-button\"\n style=\"secondary\"\n label={\n isSize(\"mobile\")\n ? t(\"neetoTemplate.templates.back\")\n : t(\"neetoTemplate.templates.backToTemplates\")\n }\n onClick={() => setCurrentScreen(TEMPLATE_SCREENS.LIST)}\n />\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"preview-use-template-button\"\n disabled={isCreating}\n label={t(\"neetoTemplate.templates.editTemplate\")}\n loading={isCreating}\n onClick={handleCreateTemplate}\n />\n </div>\n </div>\n </div>\n <div className=\"neeto-ui-bg-gray-200 neeto-templates-full-page-preview__holder-wrapper min-h-0 flex-grow\">\n <div\n className={classnames(\n \"neeto-templates-full-page-preview__holder m-auto\",\n {\n \"neeto-templates-full-page-preview__holder--desktop\":\n selectedDevice === RESPONSIVE_DEVICES.DESKTOP,\n \"neeto-templates-full-page-preview__holder--tablet\":\n selectedDevice === RESPONSIVE_DEVICES.TABLET,\n \"neeto-templates-full-page-preview__holder--mobile\":\n selectedDevice === RESPONSIVE_DEVICES.MOBILE,\n }\n )}\n >\n <div className=\"neeto-templates-full-page-preview__device-border h-full w-full\">\n <iframe\n className=\"neeto-templates-full-page-preview__iframe h-full w-full border-none\"\n data-cy=\"iframe-id\"\n src={previewUrl}\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\nexport default Preview;\n","import React, { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Modal } from \"neetoui\";\n\nimport { TEMPLATE_SCREENS } from \"./constants\";\nimport List from \"./List\";\nimport Preview from \"./Preview\";\n\nconst CreateTemplateModal = ({\n isOpen,\n onClose,\n isCreating,\n refetchResource,\n onCreate = noop,\n afterCreate = noop,\n}) => {\n const [currentScreen, setCurrentScreen] = useState(TEMPLATE_SCREENS.LIST);\n const [selectedTemplate, setSelectedTemplate] = useState({});\n\n const onModalClose = () => {\n onClose();\n setTimeout(() => {\n setCurrentScreen(TEMPLATE_SCREENS.LIST);\n }, 300); //To accommodate the animation duration.\n };\n\n return (\n <Modal\n {...{ isOpen }}\n className=\"neeto-template-list h-screen w-screen overflow-y-auto\"\n closeButton={currentScreen === TEMPLATE_SCREENS.LIST}\n size=\"fullScreen\"\n onClose={onModalClose}\n >\n {currentScreen === TEMPLATE_SCREENS.LIST ? (\n <List\n {...{\n afterCreate,\n isCreating,\n onCreate,\n refetchResource,\n setCurrentScreen,\n setSelectedTemplate,\n }}\n />\n ) : (\n <Preview\n {...{\n afterCreate,\n refetchResource,\n selectedTemplate,\n setCurrentScreen,\n }}\n />\n )}\n </Modal>\n );\n};\n\nexport default CreateTemplateModal;\n"],"names":["TEMPLATE_SCREENS","LIST","PREVIEW","DEFAULT_CATEGORY","id","name","INFINITE_SCROLL_DELAY","RESPONSIVE_DEVICES","DESKTOP","TABLET","MOBILE","_extends","BlankCard","_ref","Icon","icon","title","description","_ref$onClick","onClick","noop","_ref$disabled","disabled","_jsxs","className","tabIndex","children","_jsx","size","Typography","lineHeight","style","weight","Card","template","src","imageUrl","CategoryItem","label","count","isActive","setCurrentCategory","concat","joinHyphenCase","classnames","List","setCurrentScreen","setSelectedTemplate","onCreate","isCreating","afterCreate","refetchResource","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","currentCategory","_useState3","_useState4","searchTerm","setSearchTerm","_useFetchTemplates","useFetchTemplates","category","_useFetchTemplates$ha","hasNextPage","fetchNextPage","isTemplatesLoading","isLoading","_useFetchTemplates$da","data","_useInfiniteScroll","useInfiniteScroll","loading","onLoadMore","rootMargin","delayInMs","_useInfiniteScroll2","sentryRef","rootRef","handleCardClick","PageLoader","_data$tags","tags","_data$templates","templates","_data$templatesCount","templatesCount","categories","_objectSpread","_toConsumableArray","Search","autoFocus","disableTrimOnBlur","placeholder","onSearch","value","map","_ref2","_createElement","key","ref","Spinner","CustomSVG","index","Preview","selectedTemplate","_useBreakpoints","useBreakpoints","isSize","_useCreateTemplate","useCreateTemplate","createTemplate","mutate","isPending","selectedDevice","setSelectedDevice","handleCreateTemplate","onSuccess","response","previewUrl","ResponsiveDevicePicker","onDeviceChange","Button","CreateTemplateModal","isOpen","onClose","_ref$onCreate","_ref$afterCreate","currentScreen","onModalClose","setTimeout","Modal","closeButton"],"mappings":"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"}
@@ -0,0 +1,349 @@
1
+ import { b as TEMPLATE_TAGS_URL, Q as QUERY_KEYS, _ as _defineProperty, I as IMAGE_UPLOAD_CONFIG } from './query-ddc455b2.js';
2
+ import { memo } from 'react';
3
+ import classnames from 'classnames';
4
+ import { removeBy, renameKeys, noop } from '@bigbinary/neeto-cist';
5
+ import PageLoader from '@bigbinary/neeto-molecules/PageLoader';
6
+ import Typography from '@bigbinary/neetoui/Typography';
7
+ import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
8
+ import Form from '@bigbinary/neetoui/formik/Form';
9
+ import { useTranslation } from 'react-i18next';
10
+ import { useParams } from 'react-router-dom';
11
+ import { _ as _slicedToArray, a as _toConsumableArray, c as useFetchTemplate, d as useUpdateTemplate } from './useTemplatesApi-81e0a50f.js';
12
+ import { refetchTags, TagsComponent } from '@bigbinary/neeto-tags-frontend';
13
+ import { useMutation, useQuery } from '@tanstack/react-query';
14
+ import axios from 'axios';
15
+ import { ImageUploader } from '@bigbinary/neeto-image-uploader-frontend';
16
+ import { useField, useFormikContext } from 'formik';
17
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
18
+ import Header from '@bigbinary/neeto-molecules/Header';
19
+ import Scrollable from '@bigbinary/neeto-molecules/Scrollable';
20
+ import Label from '@bigbinary/neetoui/Label';
21
+ import { pluck } from 'ramda';
22
+ import '@bigbinary/neeto-commons-frontend/react-utils';
23
+
24
+ var create = function create(payload) {
25
+ return axios.post(TEMPLATE_TAGS_URL, {
26
+ tag: payload
27
+ }, {
28
+ showToastr: false
29
+ });
30
+ };
31
+ var list = function list() {
32
+ return axios.get(TEMPLATE_TAGS_URL);
33
+ };
34
+ var templateTagsApi = {
35
+ create: create,
36
+ list: list
37
+ };
38
+
39
+ function ownKeys$2(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; }
40
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
41
+ var useCreateTemplateTag = function useCreateTemplateTag(options) {
42
+ return useMutation(_objectSpread$2(_objectSpread$2({
43
+ mutationFn: templateTagsApi.create
44
+ }, options), {}, {
45
+ onSuccess: function onSuccess() {
46
+ var _options$onSuccess;
47
+ refetchTags();
48
+ options === null || options === void 0 || (_options$onSuccess = options.onSuccess) === null || _options$onSuccess === void 0 || _options$onSuccess.call(options);
49
+ }
50
+ }));
51
+ };
52
+ var useFetchTemplateTags = function useFetchTemplateTags() {
53
+ return useQuery({
54
+ queryKey: [QUERY_KEYS.TEMPLATE_TAGS],
55
+ queryFn: templateTagsApi.list
56
+ });
57
+ };
58
+
59
+ var FormikImageUploader = function FormikImageUploader(_ref) {
60
+ var name = _ref.name;
61
+ var _useField = useField(name),
62
+ _useField2 = _slicedToArray(_useField, 3),
63
+ field = _useField2[0];
64
+ _useField2[1];
65
+ var setValue = _useField2[2].setValue;
66
+ var _useFormikContext = useFormikContext(),
67
+ setFieldValue = _useFormikContext.setFieldValue;
68
+ var handleImageUpload = function handleImageUpload(file) {
69
+ setFieldValue("imageSignedId", file.signedId);
70
+ return setValue(file.url);
71
+ };
72
+ return /*#__PURE__*/jsx(ImageUploader, {
73
+ className: "h-52 w-full md:h-80",
74
+ src: field.value,
75
+ uploadConfig: IMAGE_UPLOAD_CONFIG,
76
+ onUploadComplete: handleImageUpload
77
+ });
78
+ };
79
+
80
+ var PageWrapper = function PageWrapper(_ref) {
81
+ var children = _ref.children,
82
+ className = _ref.className;
83
+ return /*#__PURE__*/jsx("div", {
84
+ className: classnames("w-full flex-col", className),
85
+ children: children
86
+ });
87
+ };
88
+ var PageHeader = function PageHeader(_ref2) {
89
+ var title = _ref2.title,
90
+ breadcrumbs = _ref2.breadcrumbs;
91
+ return /*#__PURE__*/jsx("div", {
92
+ className: "w-full px-6",
93
+ children: /*#__PURE__*/jsx(Header, {
94
+ breadcrumbs: breadcrumbs,
95
+ size: "small",
96
+ title: title
97
+ })
98
+ });
99
+ };
100
+ var customPropEqualityCheck = function customPropEqualityCheck(prevProps, nextProps) {
101
+ return prevProps.title === nextProps.title && prevProps.breadcrumbs === nextProps.breadcrumbs;
102
+ };
103
+ var MemoizedPageHeader = /*#__PURE__*/memo(PageHeader, customPropEqualityCheck);
104
+ var PageContent = function PageContent(_ref3) {
105
+ var children = _ref3.children,
106
+ _ref3$className = _ref3.className,
107
+ className = _ref3$className === void 0 ? "" : _ref3$className;
108
+ return /*#__PURE__*/jsx(Scrollable, {
109
+ className: "w-full px-6 pb-6",
110
+ children: /*#__PURE__*/jsx("div", {
111
+ className: classnames(["mx-auto max-w-7xl", className]),
112
+ children: children
113
+ })
114
+ });
115
+ };
116
+
117
+ 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; }
118
+ 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), !0).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; }
119
+ var Tags = function Tags(_ref) {
120
+ var allTags = _ref.allTags,
121
+ selectedTags = _ref.selectedTags,
122
+ onUpdate = _ref.onUpdate,
123
+ onCreate = _ref.onCreate,
124
+ isLoading = _ref.isLoading,
125
+ className = _ref.className,
126
+ _ref$labelProps = _ref.labelProps,
127
+ labelProps = _ref$labelProps === void 0 ? {} : _ref$labelProps;
128
+ var handleTagSelect = function handleTagSelect(newTag) {
129
+ return onUpdate([].concat(_toConsumableArray(selectedTags), [newTag]));
130
+ };
131
+ var handleTagRemove = function handleTagRemove(removedTag) {
132
+ var updatedTags = removeBy({
133
+ value: removedTag.value
134
+ }, selectedTags);
135
+ onUpdate(updatedTags);
136
+ };
137
+ var handleTagCreate = function handleTagCreate(tagName) {
138
+ onCreate({
139
+ name: tagName
140
+ }, {
141
+ onSuccess: function onSuccess(_ref2) {
142
+ var tag = _ref2.tag;
143
+ return handleTagSelect({
144
+ value: tag.id,
145
+ label: tag.name
146
+ });
147
+ }
148
+ });
149
+ };
150
+ return /*#__PURE__*/jsxs("div", {
151
+ className: className,
152
+ children: [labelProps.label && /*#__PURE__*/jsx(Label, _objectSpread$1(_objectSpread$1({}, labelProps), {}, {
153
+ children: labelProps.label
154
+ })), /*#__PURE__*/jsx("div", {
155
+ className: "neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-ui-bg-white border p-4",
156
+ children: /*#__PURE__*/jsx(TagsComponent, {
157
+ allTags: allTags,
158
+ selectedTags: selectedTags,
159
+ buttonProps: {
160
+ loading: isLoading,
161
+ disabled: isLoading,
162
+ iconPosition: "left"
163
+ },
164
+ onTagCreate: handleTagCreate,
165
+ onTagDelete: handleTagRemove,
166
+ onTagSelect: handleTagSelect
167
+ })
168
+ })]
169
+ });
170
+ };
171
+
172
+ var Preview = function Preview(_ref) {
173
+ var template = _ref.template,
174
+ imageUrl = _ref.imageUrl;
175
+ return /*#__PURE__*/jsxs("div", {
176
+ className: "neeto-template neeto-ui-bg-white outline-none neeto-ui-shadow-sm hover:neeto-ui-border-gray-400 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col overflow-hidden border transition-colors duration-300 ease-in-out",
177
+ tabIndex: 0,
178
+ children: [/*#__PURE__*/jsx("div", {
179
+ className: "neeto-template__header",
180
+ children: /*#__PURE__*/jsx("img", {
181
+ className: "neeto-template__image",
182
+ "data-cy": "template-image-preview",
183
+ src: imageUrl || "https://d2v7kzglnr2dnh.cloudfront.net/images/neetoForm/default-form-template.svg"
184
+ })
185
+ }), /*#__PURE__*/jsx("div", {
186
+ className: "neeto-ui-bg-white flex items-center justify-between gap-2 rounded-b-lg px-2 py-1.5",
187
+ children: /*#__PURE__*/jsx(Typography, {
188
+ className: "neeto-ui-text-gray-800",
189
+ "data-cy": "template-title-text",
190
+ lineHeight: "normal",
191
+ style: "body2",
192
+ children: template.title
193
+ })
194
+ })]
195
+ });
196
+ };
197
+
198
+ var buildSelectOptionsBy = function buildSelectOptionsBy(labelField) {
199
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
200
+ var valueField = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "id";
201
+ return options.map(function (option) {
202
+ return {
203
+ value: option[valueField],
204
+ label: option[labelField]
205
+ };
206
+ });
207
+ };
208
+ var buildTagOptions = function buildTagOptions() {
209
+ var tags = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
210
+ return renameKeys({
211
+ id: "value",
212
+ name: "label"
213
+ }, tags);
214
+ };
215
+ var buildTemplateUpdatePayload = function buildTemplateUpdatePayload(values) {
216
+ return {
217
+ image: values.imageSignedId || null,
218
+ tagIds: pluck("value", values === null || values === void 0 ? void 0 : values.tags)
219
+ };
220
+ };
221
+
222
+ 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; }
223
+ 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; }
224
+ var TemplateSettings = function TemplateSettings(_ref) {
225
+ var _ref$onCancelTemplate = _ref.onCancelTemplatePreview,
226
+ onCancelTemplatePreview = _ref$onCancelTemplate === void 0 ? "" : _ref$onCancelTemplate,
227
+ _ref$breadcrumbs = _ref.breadcrumbs,
228
+ breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
229
+ _ref$className = _ref.className,
230
+ className = _ref$className === void 0 ? "" : _ref$className;
231
+ var _useParams = useParams(),
232
+ resourceId = _useParams.id;
233
+ var _useTranslation = useTranslation(),
234
+ t = _useTranslation.t;
235
+ var _useFetchTemplate = useFetchTemplate({
236
+ resourceId: resourceId
237
+ }),
238
+ data = _useFetchTemplate.data,
239
+ isFetchingTemplate = _useFetchTemplate.isLoading;
240
+ var _useUpdateTemplate = useUpdateTemplate({
241
+ resourceId: resourceId
242
+ }),
243
+ updateTemplate = _useUpdateTemplate.mutate,
244
+ isUpdatingTemplate = _useUpdateTemplate.isPending;
245
+ var _useCreateTemplateTag = useCreateTemplateTag(),
246
+ createTemplateTag = _useCreateTemplateTag.mutate,
247
+ isCreatingTags = _useCreateTemplateTag.isPending;
248
+ var _useFetchTemplateTags = useFetchTemplateTags(),
249
+ _useFetchTemplateTags2 = _useFetchTemplateTags.data,
250
+ templateTags = _useFetchTemplateTags2 === void 0 ? {} : _useFetchTemplateTags2,
251
+ isTagsLoading = _useFetchTemplateTags.isLoading;
252
+ var handleSubmit = function handleSubmit(values) {
253
+ updateTemplate({
254
+ template: buildTemplateUpdatePayload(values)
255
+ });
256
+ };
257
+ var isLoading = isFetchingTemplate || isTagsLoading;
258
+ var tags = buildTagOptions(data === null || data === void 0 ? void 0 : data.tags);
259
+ var resourceInitialValues = _objectSpread(_objectSpread({
260
+ imageUrl: null
261
+ }, data), {}, {
262
+ tags: tags
263
+ });
264
+ return /*#__PURE__*/jsxs(PageWrapper, {
265
+ className: className,
266
+ children: [/*#__PURE__*/jsx(MemoizedPageHeader, {
267
+ breadcrumbs: breadcrumbs,
268
+ title: t("neetoTemplate.templateSettings.title")
269
+ }), /*#__PURE__*/jsx(PageContent, {
270
+ className: classnames({
271
+ "min-h-0": !isLoading,
272
+ "h-full": isLoading
273
+ }),
274
+ children: isLoading ? /*#__PURE__*/jsx(PageLoader, {}) : /*#__PURE__*/jsxs(Fragment, {
275
+ children: [/*#__PURE__*/jsx(Typography, {
276
+ className: "mb-1",
277
+ "data-cy": "thank-you-action-text",
278
+ style: "h2",
279
+ weight: "semibold",
280
+ children: t("neetoTemplate.templateSettings.configureTemplates")
281
+ }), /*#__PURE__*/jsx(Typography, {
282
+ className: "mb-2",
283
+ "data-cy": "thank-you-description-label",
284
+ style: "body2",
285
+ children: t("neetoTemplate.templateSettings.subText")
286
+ }), /*#__PURE__*/jsx(Form, {
287
+ formikProps: {
288
+ enableReinitialize: true,
289
+ initialValues: resourceInitialValues,
290
+ onSubmit: handleSubmit
291
+ },
292
+ children: function children(_ref2) {
293
+ var values = _ref2.values,
294
+ setFieldValue = _ref2.setFieldValue;
295
+ return /*#__PURE__*/jsxs("div", {
296
+ className: "grid grid-cols-2 gap-8 pt-6",
297
+ children: [/*#__PURE__*/jsxs("div", {
298
+ className: "space-y-4",
299
+ children: [/*#__PURE__*/jsx(Typography, {
300
+ className: "mb-3",
301
+ style: "h4",
302
+ weight: "semibold",
303
+ children: t("neetoTemplate.templateSettings.imageLabel")
304
+ }), /*#__PURE__*/jsx(FormikImageUploader, {
305
+ name: "imageUrl"
306
+ }), /*#__PURE__*/jsx(Tags, {
307
+ allTags: buildSelectOptionsBy("name", templateTags.tags),
308
+ className: "space-y-2",
309
+ isLoading: isCreatingTags,
310
+ selectedTags: values.tags,
311
+ labelProps: {
312
+ label: t("neetoTemplate.templateSettings.categoryLabel")
313
+ },
314
+ onCreate: createTemplateTag,
315
+ onUpdate: function onUpdate(tags) {
316
+ return setFieldValue("tags", tags);
317
+ }
318
+ }), /*#__PURE__*/jsx("div", {
319
+ className: "mt-12 flex flex-row items-center justify-start",
320
+ children: /*#__PURE__*/jsx(ActionBlock, {
321
+ isSubmitting: isUpdatingTemplate,
322
+ cancelButtonProps: {
323
+ to: onCancelTemplatePreview,
324
+ "data-cy": "reset-changes-button",
325
+ onClick: noop
326
+ }
327
+ })
328
+ })]
329
+ }), /*#__PURE__*/jsxs("div", {
330
+ children: [/*#__PURE__*/jsx(Typography, {
331
+ className: "mb-3",
332
+ style: "h4",
333
+ weight: "semibold",
334
+ children: t("neetoTemplate.templateSettings.previewLabel")
335
+ }), /*#__PURE__*/jsx(Preview, {
336
+ imageUrl: values.imageUrl,
337
+ template: data
338
+ })]
339
+ })]
340
+ });
341
+ }
342
+ })]
343
+ })
344
+ })]
345
+ });
346
+ };
347
+
348
+ export { TemplateSettings as default };
349
+ //# sourceMappingURL=TemplateSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateSettings.js","sources":["../app/javascript/src/apis/template_tags.js","../app/javascript/src/hooks/reactQuery/useTemplateTagsApi.js","../app/javascript/src/components/TemplateSettings/Common/FormikImageUploader.jsx","../app/javascript/src/components/TemplateSettings/Common/SinglePageLayout.jsx","../app/javascript/src/components/TemplateSettings/Common/Tags.jsx","../app/javascript/src/components/TemplateSettings/Preview.jsx","../app/javascript/src/components/TemplateSettings/utils.js","../app/javascript/src/components/TemplateSettings/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { TEMPLATE_TAGS_URL } from \"src/constants\";\n\nconst create = payload =>\n axios.post(TEMPLATE_TAGS_URL, { tag: payload }, { showToastr: false });\nconst list = () => axios.get(TEMPLATE_TAGS_URL);\n\nconst templateTagsApi = { create, list };\n\nexport default templateTagsApi;\n","import { refetchTags } from \"@bigbinary/neeto-tags-frontend\";\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","import React from \"react\";\n\nimport { ImageUploader } from \"@bigbinary/neeto-image-uploader-frontend\";\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-52 w-full md:h-80\"\n src={field.value}\n uploadConfig={IMAGE_UPLOAD_CONFIG}\n onUploadComplete={handleImageUpload}\n />\n );\n};\n\nexport default FormikImageUploader;\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport Header from \"neetomolecules/Header\";\nimport Scrollable from \"neetomolecules/Scrollable\";\n\nconst PageWrapper = ({ children, className }) => (\n <div className={classnames(\"w-full flex-col\", className)}>{children}</div>\n);\n\nconst PageHeader = ({ title, breadcrumbs }) => (\n <div className=\"w-full px-6\">\n <Header breadcrumbs={breadcrumbs} size=\"small\" {...{ title }} />\n </div>\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 <Scrollable className=\"w-full px-6 pb-6\">\n <div className={classnames([\"mx-auto max-w-7xl\", className])}>\n {children}\n </div>\n </Scrollable>\n);\nexport { PageWrapper, MemoizedPageHeader as PageHeader, PageContent };\n","import React from \"react\";\n\nimport { TagsComponent } from \"@bigbinary/neeto-tags-frontend\";\nimport { removeBy } from \"neetocist\";\nimport { Label } from \"neetoui\";\n\nconst Tags = ({\n allTags,\n selectedTags,\n onUpdate,\n onCreate,\n isLoading,\n className,\n labelProps = {},\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 }}>\n {labelProps.label && <Label {...labelProps}>{labelProps.label}</Label>}\n <div className=\"neeto-ui-border-gray-300 neeto-ui-rounded-lg neeto-ui-bg-white border p-4\">\n <TagsComponent\n {...{ allTags, selectedTags }}\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 </div>\n );\n};\n\nexport default Tags;\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst Preview = ({ template, imageUrl }) => (\n <div\n className=\"neeto-template neeto-ui-bg-white outline-none neeto-ui-shadow-sm hover:neeto-ui-border-gray-400 focus:neeto-ui-border-gray-500 neeto-ui-rounded-lg flex cursor-pointer flex-col overflow-hidden border transition-colors duration-300 ease-in-out\"\n tabIndex={0}\n >\n <div className=\"neeto-template__header\">\n <img\n className=\"neeto-template__image\"\n data-cy=\"template-image-preview\"\n src={\n imageUrl ||\n \"https://d2v7kzglnr2dnh.cloudfront.net/images/neetoForm/default-form-template.svg\"\n }\n />\n </div>\n <div className=\"neeto-ui-bg-white flex items-center justify-between gap-2 rounded-b-lg px-2 py-1.5\">\n <Typography\n className=\"neeto-ui-text-gray-800\"\n data-cy=\"template-title-text\"\n lineHeight=\"normal\"\n style=\"body2\"\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 React from \"react\";\n\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Typography } from \"neetoui\";\nimport { ActionBlock, Form } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useParams } from \"react-router-dom\";\n\nimport {\n useFetchTemplate,\n useUpdateTemplate,\n} from \"hooks/reactQuery/useTemplatesApi\";\nimport {\n useCreateTemplateTag,\n useFetchTemplateTags,\n} from \"hooks/reactQuery/useTemplateTagsApi\";\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}) => {\n const { id: resourceId } = useParams();\n const { t } = useTranslation();\n\n const { data, isLoading: isFetchingTemplate } = useFetchTemplate({\n resourceId,\n });\n\n const { mutate: updateTemplate, isPending: isUpdatingTemplate } =\n useUpdateTemplate({ resourceId });\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 }}>\n <PageHeader\n {...{ breadcrumbs }}\n title={t(\"neetoTemplate.templateSettings.title\")}\n />\n <PageContent\n className={classnames({\n \"min-h-0\": !isLoading,\n \"h-full\": isLoading,\n })}\n >\n {isLoading ? (\n <PageLoader />\n ) : (\n <>\n <Typography\n className=\"mb-1\"\n data-cy=\"thank-you-action-text\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoTemplate.templateSettings.configureTemplates\")}\n </Typography>\n <Typography\n className=\"mb-2\"\n data-cy=\"thank-you-description-label\"\n style=\"body2\"\n >\n {t(\"neetoTemplate.templateSettings.subText\")}\n </Typography>\n <Form\n formikProps={{\n enableReinitialize: true,\n initialValues: resourceInitialValues,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setFieldValue }) => (\n <div className=\"grid grid-cols-2 gap-8 pt-6\">\n <div className=\"space-y-4\">\n <Typography className=\"mb-3\" style=\"h4\" weight=\"semibold\">\n {t(\"neetoTemplate.templateSettings.imageLabel\")}\n </Typography>\n <FormikImageUploader name=\"imageUrl\" />\n <Tags\n allTags={buildSelectOptionsBy(\"name\", templateTags.tags)}\n className=\"space-y-2\"\n isLoading={isCreatingTags}\n selectedTags={values.tags}\n labelProps={{\n label: t(\n \"neetoTemplate.templateSettings.categoryLabel\"\n ),\n }}\n onCreate={createTemplateTag}\n onUpdate={tags => setFieldValue(\"tags\", tags)}\n />\n <div className=\"mt-12 flex flex-row items-center justify-start\">\n <ActionBlock\n isSubmitting={isUpdatingTemplate}\n cancelButtonProps={{\n to: onCancelTemplatePreview,\n \"data-cy\": \"reset-changes-button\",\n onClick: noop,\n }}\n />\n </div>\n </div>\n <div>\n <Typography className=\"mb-3\" style=\"h4\" weight=\"semibold\">\n {t(\"neetoTemplate.templateSettings.previewLabel\")}\n </Typography>\n <Preview imageUrl={values.imageUrl} template={data} />\n </div>\n </div>\n )}\n </Form>\n </>\n )}\n </PageContent>\n </PageWrapper>\n );\n};\n\nexport default TemplateSettings;\n"],"names":["create","payload","axios","post","TEMPLATE_TAGS_URL","tag","showToastr","list","get","templateTagsApi","useCreateTemplateTag","options","useMutation","_objectSpread","mutationFn","onSuccess","_options$onSuccess","refetchTags","call","useFetchTemplateTags","useQuery","queryKey","QUERY_KEYS","TEMPLATE_TAGS","queryFn","FormikImageUploader","_ref","name","_useField","useField","_useField2","_slicedToArray","field","_","setValue","_useFormikContext","useFormikContext","setFieldValue","handleImageUpload","file","signedId","url","_jsx","ImageUploader","className","src","value","uploadConfig","IMAGE_UPLOAD_CONFIG","onUploadComplete","PageWrapper","children","classnames","PageHeader","_ref2","title","breadcrumbs","Header","size","customPropEqualityCheck","prevProps","nextProps","MemoizedPageHeader","memo","PageContent","_ref3","_ref3$className","Scrollable","Tags","allTags","selectedTags","onUpdate","onCreate","isLoading","_ref$labelProps","labelProps","handleTagSelect","newTag","concat","_toConsumableArray","handleTagRemove","removedTag","updatedTags","removeBy","handleTagCreate","tagName","id","label","_jsxs","Label","TagsComponent","buttonProps","loading","disabled","iconPosition","onTagCreate","onTagDelete","onTagSelect","Preview","template","imageUrl","tabIndex","Typography","lineHeight","style","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","_useParams","useParams","resourceId","_useTranslation","useTranslation","t","_useFetchTemplate","useFetchTemplate","data","isFetchingTemplate","_useUpdateTemplate","useUpdateTemplate","updateTemplate","mutate","isUpdatingTemplate","isPending","_useCreateTemplateTag","createTemplateTag","isCreatingTags","_useFetchTemplateTags","_useFetchTemplateTags2","templateTags","isTagsLoading","handleSubmit","resourceInitialValues","PageLoader","_Fragment","weight","Form","formikProps","enableReinitialize","initialValues","onSubmit","ActionBlock","isSubmitting","cancelButtonProps","to","onClick","noop"],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ import { N as NEETO_TEMPLATES_URL, _ as _defineProperty, Q as QUERY_KEYS } from './query-ddc455b2.js';
2
+ import 'react';
3
+ import { NeetoTags } from '@bigbinary/neeto-tags-frontend';
4
+ import { useQueryClient } from '@tanstack/react-query';
5
+ import { noop } from '@bigbinary/neeto-cist';
6
+ import { t } from 'i18next';
7
+ import Typography from '@bigbinary/neetoui/Typography';
8
+ import { jsxs, jsx } from 'react/jsx-runtime';
9
+
10
+ function _objectWithoutPropertiesLoose(source, excluded) {
11
+ if (source == null) return {};
12
+ var target = {};
13
+ var sourceKeys = Object.keys(source);
14
+ var key, i;
15
+ for (i = 0; i < sourceKeys.length; i++) {
16
+ key = sourceKeys[i];
17
+ if (excluded.indexOf(key) >= 0) continue;
18
+ target[key] = source[key];
19
+ }
20
+ return target;
21
+ }
22
+
23
+ function _objectWithoutProperties(source, excluded) {
24
+ if (source == null) return {};
25
+ var target = _objectWithoutPropertiesLoose(source, excluded);
26
+ var key, i;
27
+ if (Object.getOwnPropertySymbols) {
28
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
29
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
30
+ key = sourceSymbolKeys[i];
31
+ if (excluded.indexOf(key) >= 0) continue;
32
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
33
+ target[key] = source[key];
34
+ }
35
+ }
36
+ return target;
37
+ }
38
+
39
+ var TAG_TYPES = [{
40
+ id: 1,
41
+ label: t("neetoTemplate.templatesTags.template"),
42
+ url: "".concat(NEETO_TEMPLATES_URL, "/tags/template_tags"),
43
+ columns: [{
44
+ title: t("neetoTemplate.templatesTags.numberOfActiveTemplates"),
45
+ key: "templates_count",
46
+ dataIndex: "templatesCount",
47
+ align: "center",
48
+ width: 300,
49
+ sorter: true,
50
+ render: function render(templatesCount) {
51
+ return templatesCount !== 0 ? /*#__PURE__*/jsxs(Typography, {
52
+ style: "body1",
53
+ children: [" ", templatesCount, " "]
54
+ }) : "-";
55
+ }
56
+ }]
57
+ }];
58
+
59
+ var _excluded = ["breadcrumbs", "tagsPath"];
60
+ 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; }
61
+ 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; }
62
+ var TemplateTags = function TemplateTags(_ref) {
63
+ var breadcrumbs = _ref.breadcrumbs,
64
+ tagsPath = _ref.tagsPath,
65
+ otherProps = _objectWithoutProperties(_ref, _excluded);
66
+ var queryClient = useQueryClient();
67
+ var invalidateTags = function invalidateTags() {
68
+ queryClient.invalidateQueries({
69
+ queryKey: [QUERY_KEYS.TEMPLATE_TAGS]
70
+ });
71
+ };
72
+ var invalidateTagsAndTemplates = function invalidateTagsAndTemplates() {
73
+ invalidateTags();
74
+ queryClient.invalidateQueries({
75
+ queryKey: [QUERY_KEYS.TEMPLATES_LIST]
76
+ });
77
+ queryClient.invalidateQueries({
78
+ queryKey: [QUERY_KEYS.TEMPLATE]
79
+ });
80
+ };
81
+ var config = _objectSpread({
82
+ tagTypes: TAG_TYPES,
83
+ tagsMergable: true,
84
+ breadcrumbs: breadcrumbs,
85
+ displayMenu: false,
86
+ tagsPath: tagsPath,
87
+ onTagRowClick: noop,
88
+ createTags: {
89
+ onSuccess: {
90
+ callback: invalidateTags
91
+ }
92
+ },
93
+ updateTags: {
94
+ onSuccess: {
95
+ callback: invalidateTagsAndTemplates
96
+ }
97
+ },
98
+ deleteTags: {
99
+ onSuccess: {
100
+ callback: invalidateTagsAndTemplates
101
+ }
102
+ },
103
+ mergeTags: {
104
+ onSuccess: {
105
+ callback: invalidateTagsAndTemplates
106
+ }
107
+ }
108
+ }, otherProps);
109
+ return /*#__PURE__*/jsx(NeetoTags, {
110
+ config: config
111
+ });
112
+ };
113
+
114
+ export { TemplateTags as default };
115
+ //# sourceMappingURL=TemplateTags.js.map