droplinked-editor-configs 1.9.12 → 1.9.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "droplinked-editor-configs",
3
3
  "private": false,
4
- "version": "1.9.12",
4
+ "version": "1.9.14",
5
5
  "type": "module",
6
6
  "main": "dist/droplinked-editor.umd.js",
7
7
  "module": "dist/droplinked-editor.es.js",
@@ -11,7 +11,8 @@
11
11
  "build": "tsc -b && vite build",
12
12
  "lint": "eslint .",
13
13
  "preview": "vite preview",
14
- "findDeadCodes": "ts-prune --ignore src/assets/icon"
14
+ "findDeadCodes": "ts-prune --ignore src/assets/icon",
15
+ "publish": "npm run build && npm publish --access public"
15
16
  },
16
17
  "dependencies": {
17
18
  "@chakra-ui/icons": "^2.0.19",
package/src/App.tsx CHANGED
@@ -131,6 +131,7 @@ const initialData: Data = {
131
131
  }
132
132
  };
133
133
 
134
+ const data = "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"
134
135
 
135
136
  // Save the data to your database
136
137
  const save = (data) => {
@@ -143,8 +144,8 @@ const save = (data) => {
143
144
  export default function App() {
144
145
  return (
145
146
  <Editor
146
- shopName="yas"
147
- initialData={initialData}
147
+ shopName="mey"
148
+ initialData={JSON.parse(LZString.decompressFromBase64(data))}
148
149
  onPublish={save}
149
150
  onUpdate={save}
150
151
  />
@@ -36,14 +36,14 @@ const SocialMediaBar: React.FC<SocialMediaBarProps> = React.memo(({ socialChanne
36
36
  return (
37
37
  <div className="flex flex-wrap gap-2">
38
38
  {(socialChannels ?? [])
39
- .filter((item) => !!item.links?.url && !!item.links?.channel)
39
+ .filter((item) => !!item.links?.channel)
40
40
  .map((item, idx) => {
41
41
  const { channel, url } = item.links!;
42
42
  const socialItem = getSocialLinkItem(channel!);
43
43
  if (!socialItem) return null;
44
44
 
45
45
  const Icon = socialItem.icon;
46
- let href = url!;
46
+ let href = url || '';
47
47
 
48
48
  if (isExternalUrl(href)) {
49
49
  href = normalizeUrl(href);
@@ -3,6 +3,7 @@ import BlogContent from './BlogContent'
3
3
  import BlogImage from './BlogImage'
4
4
  import useResponsiveTags from 'components/blog-posts/hooks/useResponsiveTags'
5
5
  import { BlogDisplayProps } from 'components/blog-posts/utils/types'
6
+ import { useCustomNavigate } from 'hooks/useCustomNavigate'
6
7
 
7
8
  /**
8
9
  * BlogCard - Displays a single blog post card with image, title, summary and tags
@@ -10,6 +11,7 @@ import { BlogDisplayProps } from 'components/blog-posts/utils/types'
10
11
  */
11
12
  export default function BlogCard(props: BlogDisplayProps) {
12
13
  const { shopDesign: { foreground }, isDarkTheme } = useThemeInfo()
14
+ const { navigate } = useCustomNavigate()
13
15
 
14
16
  // Using our custom hook for responsive tag handling
15
17
  const visibleTagsCount = useResponsiveTags()
@@ -25,11 +27,12 @@ export default function BlogCard(props: BlogDisplayProps) {
25
27
 
26
28
  return (
27
29
  <div
28
- className={`overflow-hidden rounded-lg ${cardHeight}`}
30
+ className={`overflow-hidden cursor-pointer rounded-lg ${cardHeight}`}
29
31
  style={{
30
32
  backgroundColor: (direction === "row" || isFeatured) ? foreground : "transparent",
31
33
  border: (direction === "row" || isFeatured) ? "unset" : `1px solid ${foreground}`,
32
34
  }}
35
+ onClick={() => navigate(`blogs/${slug}`)}
33
36
  >
34
37
  <div className={`flex h-full flex-col ${direction === 'row' && 'md:flex-row h-auto md:h-[186px] lg:h-[226px]'}`}>
35
38
  <BlogImage
@@ -8,7 +8,7 @@ import { useFilterData } from "components/productGrid/context/ProductFiltersCont
8
8
 
9
9
  function CollectionFilter() {
10
10
  const { isLoading, data, updateFilter } = useFilterData()
11
- const shopCollections = data?.collections ?? []
11
+ const shopCollections = (data?.collections ?? []).filter(c => c.count > 0)
12
12
  const [showAll, setShowAll] = useState(false)
13
13
  const itemsToShow = showAll ? shopCollections : shopCollections.slice(0, 3)
14
14
  const stagedCollections = useProductQueryStore((state) => state.stagedProductQuery.collectionId)
@@ -24,6 +24,7 @@ export default function useProducts(customLimit?: number) {
24
24
  ...(convertedMinPrice && { minPrice: convertedMinPrice }),
25
25
  ...(convertedMaxPrice && { maxPrice: convertedMaxPrice })
26
26
  }),
27
+ staleTime: 0,
27
28
  getNextPageParam: (lastPage) => lastPage.data.nextPage,
28
29
  refetchOnWindowFocus: false
29
30
  })