@bigbinary/neeto-templates-frontend 3.0.0 → 3.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import { useState, useRef, useCallback, useEffect, createElement } from 'react';
4
4
  import { noop, capitalize, isPresent } from '@bigbinary/neeto-cist';
5
5
  import Modal from '@bigbinary/neetoui/Modal';
6
- import { b as useFetchTemplates, c as useCreateTemplate } from './useTemplatesApi-C7bSONBh.js';
6
+ import { b as useFetchTemplates, c as useCreateTemplate } from './useTemplatesApi-Cg_SmcAl.js';
7
7
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
8
8
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
9
9
  import { globalProps } from '@bigbinary/neeto-commons-frontend/initializers';
@@ -423,7 +423,7 @@ var List = function List(_ref) {
423
423
  return /*#__PURE__*/jsxs("div", {
424
424
  className: "neeto-ui-bg-gray-50 relative flex flex-col items-start md:min-h-full md:flex-row",
425
425
  children: [/*#__PURE__*/jsxs("div", {
426
- className: "w-full flex-shrink-0 space-y-6 p-6 xl:p-10 md:sticky md:left-0 md:top-0 md:h-screen md:w-72 md:space-y-10 md:overflow-y-auto lg:w-80",
426
+ className: "w-full shrink-0 space-y-6 p-6 xl:p-10 md:sticky md:left-0 md:top-0 md:h-screen md:w-72 md:space-y-10 md:overflow-y-auto lg:w-80",
427
427
  children: [/*#__PURE__*/jsx(ProductTypefaceLogo, {
428
428
  className: "h-9 w-auto max-w-full"
429
429
  }), /*#__PURE__*/jsx(Accordion, {
@@ -510,7 +510,7 @@ var List = function List(_ref) {
510
510
  }
511
511
  })]
512
512
  }), /*#__PURE__*/jsxs("div", {
513
- className: "flex-grow space-y-6",
513
+ className: "grow space-y-6",
514
514
  children: [/*#__PURE__*/jsxs("div", {
515
515
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 lg:gap-5 xl:gap-6 2xl:grid-cols-4",
516
516
  children: [/*#__PURE__*/jsx(BlankCard, {
@@ -584,7 +584,7 @@ var Preview = function Preview(_ref) {
584
584
  children: title
585
585
  })
586
586
  }), /*#__PURE__*/jsx("div", {
587
- className: "hidden flex-shrink-0 lg:flex",
587
+ className: "hidden shrink-0 lg:flex",
588
588
  children: /*#__PURE__*/jsx(ResponsiveDevicePicker, {
589
589
  selectedDevice: selectedDevice,
590
590
  onDeviceChange: setSelectedDevice
@@ -592,7 +592,7 @@ var Preview = function Preview(_ref) {
592
592
  }), /*#__PURE__*/jsxs("div", {
593
593
  className: "flex w-1/3 items-center justify-end gap-2",
594
594
  children: [/*#__PURE__*/jsx(Button, {
595
- className: "flex-shrink-0",
595
+ className: "shrink-0",
596
596
  "data-cy": "preview-template-back-button",
597
597
  style: "secondary",
598
598
  label: isSize("mobile") ? t("neetoTemplate.templates.back") : t("neetoTemplate.templates.backToTemplates"),
@@ -600,7 +600,7 @@ var Preview = function Preview(_ref) {
600
600
  return setCurrentScreen(TEMPLATE_SCREENS.LIST);
601
601
  }
602
602
  }), /*#__PURE__*/jsx(Button, {
603
- className: "flex-shrink-0",
603
+ className: "shrink-0",
604
604
  "data-cy": "preview-use-template-button",
605
605
  disabled: isCreating,
606
606
  label: t("neetoTemplate.templates.editTemplate"),
@@ -610,7 +610,7 @@ var Preview = function Preview(_ref) {
610
610
  })]
611
611
  })
612
612
  }), /*#__PURE__*/jsx("div", {
613
- className: "neeto-ui-bg-gray-200 neeto-templates-full-page-preview__holder-wrapper min-h-0 flex-grow",
613
+ className: "neeto-ui-bg-gray-200 neeto-templates-full-page-preview__holder-wrapper min-h-0 grow",
614
614
  children: /*#__PURE__*/jsx("div", {
615
615
  className: classnames("neeto-templates-full-page-preview__holder m-auto", {
616
616
  "neeto-templates-full-page-preview__holder--desktop": selectedDevice === RESPONSIVE_DEVICES.DESKTOP,
@@ -1 +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 width=\"53\" height=\"52\" viewBox=\"0 0 53 52\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"26.6031\" cy=\"25.9571\" r=\"25.9571\" fill=\"rgb(var(--neeto-ui-black))\" />\n <path\n d=\"M18.0526 26.4227V24.447H25.4138V16.8467H27.3896V24.447H34.7508V26.4227H27.3896V34.0071H25.4138V26.4227H18.0526Z\"\n fill=\"rgb(var(--neeto-ui-white))\" />\n</svg>\n","import { 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-black 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 { CLOUDFRONT_BASE_URL } from \"neetocommons/constants\";\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ template, onClick }) => (\n <div\n {...{ onClick }}\n className=\"neeto-template neeto-template-thumbnail neeto-ui-bg-white 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 neeto-ui-border-gray-300\"\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 `${CLOUDFRONT_BASE_URL}/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 weight=\"medium\"\n >\n {template.title}\n </Typography>\n </div>\n </div>\n);\n\nexport default Card;\n","import 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 className=\"text-left\">{label}</span>\n <span>{count}</span>\n </button>\n);\n\nexport default CategoryItem;\n","import { useState } from \"react\";\n\nimport { isPresent, capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography, Accordion } 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 titleHelpPopoverProps,\n title,\n description,\n}) => {\n const { t } = useTranslation();\n\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\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 (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\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-50 relative flex flex-col items-start md:min-h-full md:flex-row\">\n <div className=\"w-full flex-shrink-0 space-y-6 p-6 xl:p-10 md:sticky md:left-0 md:top-0 md:h-screen md:w-72 md:space-y-10 md:overflow-y-auto lg:w-80\">\n <ProductTypefaceLogo className=\"h-9 w-auto max-w-full\" />\n <Accordion className=\"md:hidden\">\n <Accordion.Item title={t(\"neetoTemplate.templates.categories\")}>\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 </Accordion.Item>\n </Accordion>\n <div className=\"hidden md:flex md:flex-col\">\n <Typography\n className=\"mb-4\"\n data-cy=\"template-categories-label\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {t(\"neetoTemplate.templates.categories\")}\n </Typography>\n <div className=\"flex flex-col gap-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=\"md:h-screen w-full p-6 md:overflow-y-auto xl:p-10\"\n ref={rootRef}\n >\n <div className=\"flex flex-col mb-10\">\n <div className=\"flex gap-1.5 items-center\">\n <Typography\n className=\"mb-2\"\n data-cy=\"create-new-form-title\"\n style=\"h1\"\n >\n {title || t(\"neetoTemplate.templates.createNewEntity\")}\n </Typography>\n {isPresent(titleHelpPopoverProps) && (\n <HelpPopover\n {...titleHelpPopoverProps}\n popoverProps={{ position: \"top\" }}\n />\n )}\n </div>\n <Typography className=\"mb-6\" lineHeight=\"normal\" style=\"body1\">\n {description || t(\"neetoTemplate.templates.description\")}\n </Typography>\n <Search\n autoFocus\n disableTrimOnBlur\n data-cy=\"template-search-input\"\n placeholder={t(\"neetoTemplate.templates.search\")}\n size=\"large\"\n onSearch={value => setSearchTerm(value)}\n />\n </div>\n <div className=\"flex-grow space-y-6\">\n <div className=\"grid grid-cols-1 gap-4 sm: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 { 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 { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Modal } from \"neetoui\";\n\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/application.scss\";\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 titleHelpPopoverProps = {},\n title,\n description,\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 description,\n isCreating,\n onCreate,\n refetchResource,\n setCurrentScreen,\n setSelectedTemplate,\n title,\n titleHelpPopoverProps,\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","concat","CLOUDFRONT_BASE_URL","CategoryItem","label","count","isActive","setCurrentCategory","joinHyphenCase","classnames","List","_ProductTypefaceLogos","setCurrentScreen","setSelectedTemplate","onCreate","isCreating","afterCreate","refetchResource","titleHelpPopoverProps","_useTranslation","useTranslation","t","productName","globalProps","appName","substr","logoName","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","_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","Spinner","_data$tags","tags","_data$templates","templates","_data$templatesCount","templatesCount","categories","_objectSpread","_toConsumableArray","Accordion","Item","map","_ref2","_createElement","key","_ref3","ref","isPresent","HelpPopover","popoverProps","position","Search","autoFocus","disableTrimOnBlur","placeholder","onSearch","value","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","_ref$titleHelpPopover","currentScreen","onModalClose","setTimeout","Modal","closeButton"],"mappings":"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","x_google_ignoreList":[1,2]}
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 width=\"53\" height=\"52\" viewBox=\"0 0 53 52\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"26.6031\" cy=\"25.9571\" r=\"25.9571\" fill=\"rgb(var(--neeto-ui-black))\" />\n <path\n d=\"M18.0526 26.4227V24.447H25.4138V16.8467H27.3896V24.447H34.7508V26.4227H27.3896V34.0071H25.4138V26.4227H18.0526Z\"\n fill=\"rgb(var(--neeto-ui-white))\" />\n</svg>\n","import { 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-black 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 { CLOUDFRONT_BASE_URL } from \"neetocommons/constants\";\nimport { Typography } from \"neetoui\";\n\nconst Card = ({ template, onClick }) => (\n <div\n {...{ onClick }}\n className=\"neeto-template neeto-template-thumbnail neeto-ui-bg-white 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 neeto-ui-border-gray-300\"\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 `${CLOUDFRONT_BASE_URL}/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 weight=\"medium\"\n >\n {template.title}\n </Typography>\n </div>\n </div>\n);\n\nexport default Card;\n","import 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 className=\"text-left\">{label}</span>\n <span>{count}</span>\n </button>\n);\n\nexport default CategoryItem;\n","import { useState } from \"react\";\n\nimport { isPresent, capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport Search from \"neetomolecules/Search\";\nimport { Spinner, Typography, Accordion } 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 titleHelpPopoverProps,\n title,\n description,\n}) => {\n const { t } = useTranslation();\n\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\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 (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\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-50 relative flex flex-col items-start md:min-h-full md:flex-row\">\n <div className=\"w-full shrink-0 space-y-6 p-6 xl:p-10 md:sticky md:left-0 md:top-0 md:h-screen md:w-72 md:space-y-10 md:overflow-y-auto lg:w-80\">\n <ProductTypefaceLogo className=\"h-9 w-auto max-w-full\" />\n <Accordion className=\"md:hidden\">\n <Accordion.Item title={t(\"neetoTemplate.templates.categories\")}>\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 </Accordion.Item>\n </Accordion>\n <div className=\"hidden md:flex md:flex-col\">\n <Typography\n className=\"mb-4\"\n data-cy=\"template-categories-label\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {t(\"neetoTemplate.templates.categories\")}\n </Typography>\n <div className=\"flex flex-col gap-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=\"md:h-screen w-full p-6 md:overflow-y-auto xl:p-10\"\n ref={rootRef}\n >\n <div className=\"flex flex-col mb-10\">\n <div className=\"flex gap-1.5 items-center\">\n <Typography\n className=\"mb-2\"\n data-cy=\"create-new-form-title\"\n style=\"h1\"\n >\n {title || t(\"neetoTemplate.templates.createNewEntity\")}\n </Typography>\n {isPresent(titleHelpPopoverProps) && (\n <HelpPopover\n {...titleHelpPopoverProps}\n popoverProps={{ position: \"top\" }}\n />\n )}\n </div>\n <Typography className=\"mb-6\" lineHeight=\"normal\" style=\"body1\">\n {description || t(\"neetoTemplate.templates.description\")}\n </Typography>\n <Search\n autoFocus\n disableTrimOnBlur\n data-cy=\"template-search-input\"\n placeholder={t(\"neetoTemplate.templates.search\")}\n size=\"large\"\n onSearch={value => setSearchTerm(value)}\n />\n </div>\n <div className=\"grow space-y-6\">\n <div className=\"grid grid-cols-1 gap-4 sm: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 { 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 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=\"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=\"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 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 { useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Modal } from \"neetoui\";\n\n// eslint-disable-next-line import/extensions\nimport \"stylesheets/application.css\";\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 titleHelpPopoverProps = {},\n title,\n description,\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 description,\n isCreating,\n onCreate,\n refetchResource,\n setCurrentScreen,\n setSelectedTemplate,\n title,\n titleHelpPopoverProps,\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","concat","CLOUDFRONT_BASE_URL","CategoryItem","label","count","isActive","setCurrentCategory","joinHyphenCase","classnames","List","_ProductTypefaceLogos","setCurrentScreen","setSelectedTemplate","onCreate","isCreating","afterCreate","refetchResource","titleHelpPopoverProps","_useTranslation","useTranslation","t","productName","globalProps","appName","substr","logoName","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","_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","Spinner","_data$tags","tags","_data$templates","templates","_data$templatesCount","templatesCount","categories","_objectSpread","_toConsumableArray","Accordion","Item","map","_ref2","_createElement","key","_ref3","ref","isPresent","HelpPopover","popoverProps","position","Search","autoFocus","disableTrimOnBlur","placeholder","onSearch","value","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","_ref$titleHelpPopover","currentScreen","onModalClose","setTimeout","Modal","closeButton"],"mappings":"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","x_google_ignoreList":[1,2]}
@@ -8,7 +8,7 @@ import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
8
8
  import Form from '@bigbinary/neetoui/formik/Form';
9
9
  import { useTranslation } from 'react-i18next';
10
10
  import { useParams } from 'react-router-dom';
11
- import { u as useFetchTemplate, a as useUpdateTemplate } from './useTemplatesApi-C7bSONBh.js';
11
+ import { u as useFetchTemplate, a as useUpdateTemplate } from './useTemplatesApi-Cg_SmcAl.js';
12
12
  import { refetchTags } from '@bigbinary/neeto-tags-frontend/utils';
13
13
  import { useMutation, useQuery } from '@tanstack/react-query';
14
14
  import axios from 'axios';
@@ -1 +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","// eslint-disable-next-line @bigbinary/neeto/use-webpack-alias\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-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/Container\";\nimport Header from \"neetomolecules/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\";\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 { CLOUDFRONT_BASE_URL } from \"neetocommons/constants\";\nimport { Typography } from \"neetoui\";\n\nconst Preview = ({ template, imageUrl }) => (\n <div\n className=\"neeto-template neeto-ui-bg-white neeto-ui-shadow-xs neeto-ui-rounded flex flex-col overflow-hidden\"\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 `${CLOUDFRONT_BASE_URL}/images/neetoForm/default-form-template.svg`\n }\n />\n </div>\n <div className=\"neeto-ui-bg-white p-3 lg:p-5 flex items-center justify-between gap-2\">\n <Typography\n className=\"neeto-ui-text-gray-800\"\n data-cy=\"template-title-text\"\n lineHeight=\"normal\"\n style=\"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 classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport MobilePreviewHeader from \"neetomolecules/MobilePreviewHeader\";\nimport { Spinner, Label } 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// eslint-disable-next-line import/extensions\nimport \"stylesheets/application.scss\";\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=\"neeto-ui-bg-white sticky bottom-0 py-6 md:px-10 px-5\">\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 <MobilePreviewHeader className=\"w-full md:hidden\" />\n <div className=\"neeto-ui-bg-gray-50 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":["create","payload","axios","post","TEMPLATE_TAGS_URL","tag","showToastr","list","get","templateTagsApi","useCreateTemplateTag","options","useMutation","_objectSpread","mutationFn","onSuccess","refetchTags","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","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","id","label","TagsComponent","bodyProps","titleProps","weight","style","buttonProps","loading","disabled","iconPosition","onTagCreate","onTagDelete","onTagSelect","Preview","template","imageUrl","_jsxs","tabIndex","CLOUDFRONT_BASE_URL","Typography","lineHeight","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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"}
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","// eslint-disable-next-line @bigbinary/neeto/use-webpack-alias\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-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/Container\";\nimport Header from \"neetomolecules/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\";\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 { CLOUDFRONT_BASE_URL } from \"neetocommons/constants\";\nimport { Typography } from \"neetoui\";\n\nconst Preview = ({ template, imageUrl }) => (\n <div\n className=\"neeto-template neeto-ui-bg-white neeto-ui-shadow-xs neeto-ui-rounded flex flex-col overflow-hidden\"\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 `${CLOUDFRONT_BASE_URL}/images/neetoForm/default-form-template.svg`\n }\n />\n </div>\n <div className=\"neeto-ui-bg-white p-3 lg:p-5 flex items-center justify-between gap-2\">\n <Typography\n className=\"neeto-ui-text-gray-800\"\n data-cy=\"template-title-text\"\n lineHeight=\"normal\"\n style=\"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 classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport MobilePreviewHeader from \"neetomolecules/MobilePreviewHeader\";\nimport { Spinner, Label } 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// 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=\"neeto-ui-bg-white sticky bottom-0 py-6 md:px-10 px-5\">\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 <MobilePreviewHeader className=\"w-full md:hidden\" />\n <div className=\"neeto-ui-bg-gray-50 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":["create","payload","axios","post","TEMPLATE_TAGS_URL","tag","showToastr","list","get","templateTagsApi","useCreateTemplateTag","options","useMutation","_objectSpread","mutationFn","onSuccess","refetchTags","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","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","id","label","TagsComponent","bodyProps","titleProps","weight","style","buttonProps","loading","disabled","iconPosition","onTagCreate","onTagDelete","onTagSelect","Preview","template","imageUrl","_jsxs","tabIndex","CLOUDFRONT_BASE_URL","Typography","lineHeight","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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"}
@@ -4,7 +4,7 @@ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
4
4
  var React = require('react');
5
5
  var neetoCist = require('@bigbinary/neeto-cist');
6
6
  var Modal = require('@bigbinary/neetoui/Modal');
7
- var useTemplatesApi = require('../useTemplatesApi-B1wRUwHQ.js');
7
+ var useTemplatesApi = require('../useTemplatesApi-AX5fydv5.js');
8
8
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
9
9
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
10
10
  var initializers = require('@bigbinary/neeto-commons-frontend/initializers');
@@ -444,7 +444,7 @@ var List = function List(_ref) {
444
444
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
445
445
  className: "neeto-ui-bg-gray-50 relative flex flex-col items-start md:min-h-full md:flex-row",
446
446
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
447
- className: "w-full flex-shrink-0 space-y-6 p-6 xl:p-10 md:sticky md:left-0 md:top-0 md:h-screen md:w-72 md:space-y-10 md:overflow-y-auto lg:w-80",
447
+ className: "w-full shrink-0 space-y-6 p-6 xl:p-10 md:sticky md:left-0 md:top-0 md:h-screen md:w-72 md:space-y-10 md:overflow-y-auto lg:w-80",
448
448
  children: [/*#__PURE__*/jsxRuntime.jsx(ProductTypefaceLogo, {
449
449
  className: "h-9 w-auto max-w-full"
450
450
  }), /*#__PURE__*/jsxRuntime.jsx(Accordion, {
@@ -531,7 +531,7 @@ var List = function List(_ref) {
531
531
  }
532
532
  })]
533
533
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
534
- className: "flex-grow space-y-6",
534
+ className: "grow space-y-6",
535
535
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
536
536
  className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 lg:gap-5 xl:gap-6 2xl:grid-cols-4",
537
537
  children: [/*#__PURE__*/jsxRuntime.jsx(BlankCard, {
@@ -605,7 +605,7 @@ var Preview = function Preview(_ref) {
605
605
  children: title
606
606
  })
607
607
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
608
- className: "hidden flex-shrink-0 lg:flex",
608
+ className: "hidden shrink-0 lg:flex",
609
609
  children: /*#__PURE__*/jsxRuntime.jsx(ResponsiveDevicePicker, {
610
610
  selectedDevice: selectedDevice,
611
611
  onDeviceChange: setSelectedDevice
@@ -613,7 +613,7 @@ var Preview = function Preview(_ref) {
613
613
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
614
614
  className: "flex w-1/3 items-center justify-end gap-2",
615
615
  children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
616
- className: "flex-shrink-0",
616
+ className: "shrink-0",
617
617
  "data-cy": "preview-template-back-button",
618
618
  style: "secondary",
619
619
  label: isSize("mobile") ? t("neetoTemplate.templates.back") : t("neetoTemplate.templates.backToTemplates"),
@@ -621,7 +621,7 @@ var Preview = function Preview(_ref) {
621
621
  return setCurrentScreen(TEMPLATE_SCREENS.LIST);
622
622
  }
623
623
  }), /*#__PURE__*/jsxRuntime.jsx(Button, {
624
- className: "flex-shrink-0",
624
+ className: "shrink-0",
625
625
  "data-cy": "preview-use-template-button",
626
626
  disabled: isCreating,
627
627
  label: t("neetoTemplate.templates.editTemplate"),
@@ -631,7 +631,7 @@ var Preview = function Preview(_ref) {
631
631
  })]
632
632
  })
633
633
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
634
- className: "neeto-ui-bg-gray-200 neeto-templates-full-page-preview__holder-wrapper min-h-0 flex-grow",
634
+ className: "neeto-ui-bg-gray-200 neeto-templates-full-page-preview__holder-wrapper min-h-0 grow",
635
635
  children: /*#__PURE__*/jsxRuntime.jsx("div", {
636
636
  className: classnames("neeto-templates-full-page-preview__holder m-auto", {
637
637
  "neeto-templates-full-page-preview__holder--desktop": selectedDevice === RESPONSIVE_DEVICES.DESKTOP,